var Sp=Object.defineProperty,Tp=Object.defineProperties;var Ap=Object.getOwnPropertyDescriptors;var fl=Object.getOwnPropertySymbols;var Op=Object.prototype.hasOwnProperty,Np=Object.prototype.propertyIsEnumerable;var hl=(e,t,n)=>t in e?Sp(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,_=(e,t)=>{for(var n in t||={})Op.call(t,n)&&hl(e,n,t[n]);if(fl)for(var n of fl(t))Np.call(t,n)&&hl(e,n,t[n]);return e},Q=(e,t)=>Tp(e,Ap(t));var pl=null;var Pi=1,gl=Symbol("SIGNAL");function R(e){let t=pl;return pl=e,t}var ml={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 Rp(e){if(!(Li(e)&&!e.dirty)&&!(!e.dirty&&e.lastCleanEpoch===Pi)){if(!e.producerMustRecompute(e)&&!ki(e)){e.dirty=!1,e.lastCleanEpoch=Pi;return}e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=Pi}}function vl(e){return e&&(e.nextProducerIndex=0),R(e)}function yl(e,t){if(R(t),!(!e||e.producerNode===void 0||e.producerIndexOfThis===void 0||e.producerLastReadVersion===void 0)){if(Li(e))for(let n=e.nextProducerIndex;ne.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}function ki(e){jr(e);for(let t=0;t0}function jr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}function Pp(e){e.liveConsumerNode??=[],e.liveConsumerIndexOfThis??=[]}function kp(){throw new Error}var Fp=kp;function _l(e){Fp=e}function I(e){return typeof e=="function"}function Xt(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 Vr=Xt(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 Bn(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(I(r))try{r()}catch(i){t=i instanceof Vr?i.errors:[i]}let{_finalizers:o}=this;if(o){this._finalizers=null;for(let i of o)try{Cl(i)}catch(s){t=t??[],s instanceof Vr?t=[...t,...s.errors]:t.push(s)}}if(t)throw new Vr(t)}}add(t){var n;if(t&&t!==this)if(this.closed)Cl(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)&&Bn(n,t)}remove(t){let{_finalizers:n}=this;n&&Bn(n,t),t instanceof e&&t._removeParent(this)}};J.EMPTY=(()=>{let e=new J;return e.closed=!0,e})();var ji=J.EMPTY;function $r(e){return e instanceof J||e&&"closed"in e&&I(e.remove)&&I(e.add)&&I(e.unsubscribe)}function Cl(e){I(e)?e():e.unsubscribe()}var ke={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var en={setTimeout(e,t,...n){let{delegate:r}=en;return r?.setTimeout?r.setTimeout(e,t,...n):setTimeout(e,t,...n)},clearTimeout(e){let{delegate:t}=en;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Br(e){en.setTimeout(()=>{let{onUnhandledError:t}=ke;if(t)t(e);else throw e})}function Un(){}var Dl=Vi("C",void 0,void 0);function bl(e){return Vi("E",void 0,e)}function xl(e){return Vi("N",e,void 0)}function Vi(e,t,n){return{kind:e,value:t,error:n}}var Mt=null;function tn(e){if(ke.useDeprecatedSynchronousErrorHandling){let t=!Mt;if(t&&(Mt={errorThrown:!1,error:null}),e(),t){let{errorThrown:n,error:r}=Mt;if(Mt=null,n)throw r}}else e()}function Il(e){ke.useDeprecatedSynchronousErrorHandling&&Mt&&(Mt.errorThrown=!0,Mt.error=e)}var St=class extends J{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,$r(t)&&t.add(this)):this.destination=Vp}static create(t,n,r){return new nn(t,n,r)}next(t){this.isStopped?Bi(xl(t),this):this._next(t)}error(t){this.isStopped?Bi(bl(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?Bi(Dl,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()}}},Lp=Function.prototype.bind;function $i(e,t){return Lp.call(e,t)}var Ui=class{constructor(t){this.partialObserver=t}next(t){let{partialObserver:n}=this;if(n.next)try{n.next(t)}catch(r){Ur(r)}}error(t){let{partialObserver:n}=this;if(n.error)try{n.error(t)}catch(r){Ur(r)}else Ur(t)}complete(){let{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(n){Ur(n)}}},nn=class extends St{constructor(t,n,r){super();let o;if(I(t)||!t)o={next:t??void 0,error:n??void 0,complete:r??void 0};else{let i;this&&ke.useDeprecatedNextContext?(i=Object.create(t),i.unsubscribe=()=>this.unsubscribe(),o={next:t.next&&$i(t.next,i),error:t.error&&$i(t.error,i),complete:t.complete&&$i(t.complete,i)}):o=t}this.destination=new Ui(o)}};function Ur(e){ke.useDeprecatedSynchronousErrorHandling?Il(e):Br(e)}function jp(e){throw e}function Bi(e,t){let{onStoppedNotification:n}=ke;n&&en.setTimeout(()=>n(e,t))}var Vp={closed:!0,next:Un,error:jp,complete:Un};var rn=typeof Symbol=="function"&&Symbol.observable||"@@observable";function we(e){return e}function Hi(...e){return zi(e)}function zi(e){return e.length===0?we:e.length===1?e[0]:function(n){return e.reduce((r,o)=>o(r),n)}}var H=(()=>{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=Bp(n)?n:new nn(n,r,o);return tn(()=>{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=El(r),new r((o,i)=>{let s=new nn({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)}[rn](){return this}pipe(...n){return zi(n)(this)}toPromise(n){return n=El(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 El(e){var t;return(t=e??ke.Promise)!==null&&t!==void 0?t:Promise}function $p(e){return e&&I(e.next)&&I(e.error)&&I(e.complete)}function Bp(e){return e&&e instanceof St||$p(e)&&$r(e)}function qi(e){return I(e?.lift)}function k(e){return t=>{if(qi(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 F(e,t,n,r,o){return new Gi(e,t,n,r,o)}var Gi=class extends St{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 on(){return k((e,t)=>{let n=null;e._refCount++;let r=F(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 sn=class extends H{constructor(t,n){super(),this.source=t,this.subjectFactory=n,this._subject=null,this._refCount=0,this._connection=null,qi(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(F(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 on()(this)}};var Ml=Xt(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var he=(()=>{class e extends H{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(n){let r=new Hr(this,this);return r.operator=n,r}_throwIfClosed(){if(this.closed)throw new Ml}next(n){tn(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let r of this.currentObservers)r.next(n)}})}error(n){tn(()=>{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(){tn(()=>{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?ji:(this.currentObservers=null,i.push(n),new J(()=>{this.currentObservers=null,Bn(i,n)}))}_checkFinalizedStatuses(n){let{hasError:r,thrownError:o,isStopped:i}=this;r?n.error(o):i&&n.complete()}asObservable(){let n=new H;return n.source=this,n}}return e.create=(t,n)=>new Hr(t,n),e})(),Hr=class extends he{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:ji}};var X=class extends he{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 _e=new H(e=>e.complete());function Sl(e){return e&&I(e.schedule)}function Tl(e){return e[e.length-1]}function Al(e){return I(Tl(e))?e.pop():void 0}function gt(e){return Sl(Tl(e))?e.pop():void 0}function Nl(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(u){try{l(r.next(u))}catch(d){s(d)}}function c(u){try{l(r.throw(u))}catch(d){s(d)}}function l(u){u.done?i(u.value):o(u.value).then(a,c)}l((r=r.apply(e,t||[])).next())})}function Ol(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 Tt(e){return this instanceof Tt?(this.v=e,this):new Tt(e)}function Rl(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(m){return function(v){return Promise.resolve(v).then(m,d)}}function a(m,v){r[m]&&(o[m]=function(D){return new Promise(function(G,B){i.push([m,D,G,B])>1||c(m,D)})},v&&(o[m]=v(o[m])))}function c(m,v){try{l(r[m](v))}catch(D){g(i[0][3],D)}}function l(m){m.value instanceof Tt?Promise.resolve(m.value.v).then(u,d):g(i[0][2],m)}function u(m){c("next",m)}function d(m){c("throw",m)}function g(m,v){m(v),i.shift(),i.length&&c(i[0][0],i[0][1])}}function Pl(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 Ol=="function"?Ol(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(l){i({value:l,done:a})},s)}}var zr=e=>e&&typeof e.length=="number"&&typeof e!="function";function qr(e){return I(e?.then)}function Gr(e){return I(e[rn])}function Wr(e){return Symbol.asyncIterator&&I(e?.[Symbol.asyncIterator])}function Yr(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 Up(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Zr=Up();function Qr(e){return I(e?.[Zr])}function Kr(e){return Rl(this,arguments,function*(){let n=e.getReader();try{for(;;){let{value:r,done:o}=yield Tt(n.read());if(o)return yield Tt(void 0);yield yield Tt(r)}}finally{n.releaseLock()}})}function Jr(e){return I(e?.getReader)}function ne(e){if(e instanceof H)return e;if(e!=null){if(Gr(e))return Hp(e);if(zr(e))return zp(e);if(qr(e))return qp(e);if(Wr(e))return kl(e);if(Qr(e))return Gp(e);if(Jr(e))return Wp(e)}throw Yr(e)}function Hp(e){return new H(t=>{let n=e[rn]();if(I(n.subscribe))return n.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function zp(e){return new H(t=>{for(let n=0;n{e.then(n=>{t.closed||(t.next(n),t.complete())},n=>t.error(n)).then(null,Br)})}function Gp(e){return new H(t=>{for(let n of e)if(t.next(n),t.closed)return;t.complete()})}function kl(e){return new H(t=>{Yp(e,t).catch(n=>t.error(n))})}function Wp(e){return kl(Kr(e))}function Yp(e,t){var n,r,o,i;return Nl(this,void 0,void 0,function*(){try{for(n=Pl(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 ve(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 Xr(e,t=0){return k((n,r)=>{n.subscribe(F(r,o=>ve(r,e,()=>r.next(o),t),()=>ve(r,e,()=>r.complete(),t),o=>ve(r,e,()=>r.error(o),t)))})}function eo(e,t=0){return k((n,r)=>{r.add(e.schedule(()=>n.subscribe(r),t))})}function Fl(e,t){return ne(e).pipe(eo(t),Xr(t))}function Ll(e,t){return ne(e).pipe(eo(t),Xr(t))}function jl(e,t){return new H(n=>{let r=0;return t.schedule(function(){r===e.length?n.complete():(n.next(e[r++]),n.closed||this.schedule())})})}function Vl(e,t){return new H(n=>{let r;return ve(n,t,()=>{r=e[Zr](),ve(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)}),()=>I(r?.return)&&r.return()})}function to(e,t){if(!e)throw new Error("Iterable cannot be null");return new H(n=>{ve(n,t,()=>{let r=e[Symbol.asyncIterator]();ve(n,t,()=>{r.next().then(o=>{o.done?n.complete():n.next(o.value)})},0,!0)})})}function $l(e,t){return to(Kr(e),t)}function Bl(e,t){if(e!=null){if(Gr(e))return Fl(e,t);if(zr(e))return jl(e,t);if(qr(e))return Ll(e,t);if(Wr(e))return to(e,t);if(Qr(e))return Vl(e,t);if(Jr(e))return $l(e,t)}throw Yr(e)}function ee(e,t){return t?Bl(e,t):ne(e)}function E(...e){let t=gt(e);return ee(e,t)}function an(e,t){let n=I(e)?e:()=>e,r=o=>o.error(n());return new H(t?o=>t.schedule(r,0,o):r)}function Wi(e){return!!e&&(e instanceof H||I(e.lift)&&I(e.subscribe))}var tt=Xt(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function L(e,t){return k((n,r)=>{let o=0;n.subscribe(F(r,i=>{r.next(e.call(t,i,o++))}))})}var{isArray:Zp}=Array;function Qp(e,t){return Zp(t)?e(...t):e(t)}function Ul(e){return L(t=>Qp(e,t))}var{isArray:Kp}=Array,{getPrototypeOf:Jp,prototype:Xp,keys:eg}=Object;function Hl(e){if(e.length===1){let t=e[0];if(Kp(t))return{args:t,keys:null};if(tg(t)){let n=eg(t);return{args:n.map(r=>t[r]),keys:n}}}return{args:e,keys:null}}function tg(e){return e&&typeof e=="object"&&Jp(e)===Xp}function zl(e,t){return e.reduce((n,r,o)=>(n[r]=t[o],n),{})}function no(...e){let t=gt(e),n=Al(e),{args:r,keys:o}=Hl(e);if(r.length===0)return ee([],t);let i=new H(ng(r,t,o?s=>zl(o,s):we));return n?i.pipe(Ul(n)):i}function ng(e,t,n=we){return r=>{ql(t,()=>{let{length:o}=e,i=new Array(o),s=o,a=o;for(let c=0;c{let l=ee(e[c],t),u=!1;l.subscribe(F(r,d=>{i[c]=d,u||(u=!0,a--),a||r.next(n(i.slice()))},()=>{--s||r.complete()}))},r)},r)}}function ql(e,t,n){e?ve(n,e,t):t()}function Gl(e,t,n,r,o,i,s,a){let c=[],l=0,u=0,d=!1,g=()=>{d&&!c.length&&!l&&t.complete()},m=D=>l{i&&t.next(D),l++;let G=!1;ne(n(D,u++)).subscribe(F(t,B=>{o?.(B),i?m(B):t.next(B)},()=>{G=!0},void 0,()=>{if(G)try{for(l--;c.length&&lv(B)):v(B)}g()}catch(B){t.error(B)}}))};return e.subscribe(F(t,m,()=>{d=!0,g()})),()=>{a?.()}}function te(e,t,n=1/0){return I(t)?te((r,o)=>L((i,s)=>t(r,i,o,s))(ne(e(r,o))),n):(typeof t=="number"&&(n=t),k((r,o)=>Gl(r,o,e,n)))}function Yi(e=1/0){return te(we,e)}function Wl(){return Yi(1)}function cn(...e){return Wl()(ee(e,gt(e)))}function ro(e){return new H(t=>{ne(e()).subscribe(t)})}function Fe(e,t){return k((n,r)=>{let o=0;n.subscribe(F(r,i=>e.call(t,i,o++)&&r.next(i)))})}function mt(e){return k((t,n)=>{let r=null,o=!1,i;r=t.subscribe(F(n,void 0,void 0,s=>{i=ne(e(s,mt(e)(t))),r?(r.unsubscribe(),r=null,i.subscribe(n)):o=!0})),o&&(r.unsubscribe(),r=null,i.subscribe(n))})}function Yl(e,t,n,r,o){return(i,s)=>{let a=n,c=t,l=0;i.subscribe(F(s,u=>{let d=l++;c=a?e(c,u,d):(a=!0,u),r&&s.next(c)},o&&(()=>{a&&s.next(c),s.complete()})))}}function ln(e,t){return I(t)?te(e,t,1):te(e,1)}function vt(e){return k((t,n)=>{let r=!1;t.subscribe(F(n,o=>{r=!0,n.next(o)},()=>{r||n.next(e),n.complete()}))})}function nt(e){return e<=0?()=>_e:k((t,n)=>{let r=0;t.subscribe(F(n,o=>{++r<=e&&(n.next(o),e<=r&&n.complete())}))})}function Zi(e){return L(()=>e)}function oo(e=rg){return k((t,n)=>{let r=!1;t.subscribe(F(n,o=>{r=!0,n.next(o)},()=>r?n.complete():n.error(e())))})}function rg(){return new tt}function Hn(e){return k((t,n)=>{try{t.subscribe(n)}finally{n.add(e)}})}function Ge(e,t){let n=arguments.length>=2;return r=>r.pipe(e?Fe((o,i)=>e(o,i,r)):we,nt(1),n?vt(t):oo(()=>new tt))}function un(e){return e<=0?()=>_e:k((t,n)=>{let r=[];t.subscribe(F(n,o=>{r.push(o),e{for(let o of r)n.next(o);n.complete()},void 0,()=>{r=null}))})}function Qi(e,t){let n=arguments.length>=2;return r=>r.pipe(e?Fe((o,i)=>e(o,i,r)):we,un(1),n?vt(t):oo(()=>new tt))}function Ki(e,t){return k(Yl(e,t,arguments.length>=2,!0))}function Ji(...e){let t=gt(e);return k((n,r)=>{(t?cn(e,n,t):cn(e,n)).subscribe(r)})}function Le(e,t){return k((n,r)=>{let o=null,i=0,s=!1,a=()=>s&&!o&&r.complete();n.subscribe(F(r,c=>{o?.unsubscribe();let l=0,u=i++;ne(e(c,u)).subscribe(o=F(r,d=>r.next(t?t(c,d,u,l++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function Xi(e){return k((t,n)=>{ne(e).subscribe(F(n,()=>n.complete(),Un)),!n.closed&&t.subscribe(n)})}function ae(e,t,n){let r=I(e)||t||n?{next:e,error:t,complete:n}:e;return r?k((o,i)=>{var s;(s=r.subscribe)===null||s===void 0||s.call(r);let a=!0;o.subscribe(F(i,c=>{var l;(l=r.next)===null||l===void 0||l.call(r,c),i.next(c)},()=>{var c;a=!1,(c=r.complete)===null||c===void 0||c.call(r),i.complete()},c=>{var l;a=!1,(l=r.error)===null||l===void 0||l.call(r,c),i.error(c)},()=>{var c,l;a&&((c=r.unsubscribe)===null||c===void 0||c.call(r)),(l=r.finalize)===null||l===void 0||l.call(r)}))}):we}var ku="https://g.co/ng/security#xss",b=class extends Error{constructor(t,n){super(ma(t,n)),this.code=t}};function ma(e,t){return`${`NG0${Math.abs(e)}`}${t?": "+t:""}`}function ar(e){return{toString:e}.toString()}var io="__parameters__";function ig(e){return function(...n){if(e){let r=e(...n);for(let o in r)this[o]=r[o]}}}function Fu(e,t,n){return ar(()=>{let r=ig(t);function o(...i){if(this instanceof o)return r.apply(this,i),this;let s=new o(...i);return a.annotation=s,a;function a(c,l,u){let d=c.hasOwnProperty(io)?c[io]:Object.defineProperty(c,io,{value:[]})[io];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),c}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}var rt=globalThis;function q(e){for(let t in e)if(e[t]===q)return t;throw Error("Could not find renamed property on target object.")}function pe(e){if(typeof e=="string")return e;if(Array.isArray(e))return"["+e.map(pe).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 ps(e,t){return e==null||e===""?t===null?"":t:t==null||t===""?e:e+" "+t}var sg=q({__forward_ref__:q});function Lu(e){return e.__forward_ref__=Lu,e.toString=function(){return pe(this())},e}function Se(e){return ju(e)?e():e}function ju(e){return typeof e=="function"&&e.hasOwnProperty(sg)&&e.__forward_ref__===Lu}function x(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function ko(e){return{providers:e.providers||[],imports:e.imports||[]}}function Fo(e){return Zl(e,$u)||Zl(e,Bu)}function Vu(e){return Fo(e)!==null}function Zl(e,t){return e.hasOwnProperty(t)?e[t]:null}function ag(e){let t=e&&(e[$u]||e[Bu]);return t||null}function Ql(e){return e&&(e.hasOwnProperty(Kl)||e.hasOwnProperty(cg))?e[Kl]:null}var $u=q({\u0275prov:q}),Kl=q({\u0275inj:q}),Bu=q({ngInjectableDef:q}),cg=q({ngInjectorDef:q}),j=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=x({token:this,providedIn:n.providedIn||"root",factory:n.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function Uu(e){return e&&!!e.\u0275providers}var lg=q({\u0275cmp:q}),ug=q({\u0275dir:q}),dg=q({\u0275pipe:q}),fg=q({\u0275mod:q}),vo=q({\u0275fac:q}),zn=q({__NG_ELEMENT_ID__:q}),Jl=q({__NG_ENV_ID__:q});function mn(e){return typeof e=="string"?e:e==null?"":String(e)}function hg(e){return typeof e=="function"?e.name||e.toString():typeof e=="object"&&e!=null&&typeof e.type=="function"?e.type.name||e.type.toString():mn(e)}function pg(e,t){let n=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new b(-200,e)}function va(e,t){throw new b(-201,!1)}var N=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}(N||{}),gs;function Hu(){return gs}function Me(e){let t=gs;return gs=e,t}function zu(e,t,n){let r=Fo(e);if(r&&r.providedIn=="root")return r.value===void 0?r.value=r.factory():r.value;if(n&N.Optional)return null;if(t!==void 0)return t;va(e,"Injector")}var gg={},qn=gg,ms="__NG_DI_FLAG__",yo="ngTempTokenPath",mg="ngTokenPath",vg=/\n/gm,yg="\u0275",Xl="__source",pn;function wg(){return pn}function yt(e){let t=pn;return pn=e,t}function _g(e,t=N.Default){if(pn===void 0)throw new b(-203,!1);return pn===null?zu(e,void 0,t):pn.get(e,t&N.Optional?null:void 0,t)}function V(e,t=N.Default){return(Hu()||_g)(Se(e),t)}function y(e,t=N.Default){return V(e,Lo(t))}function Lo(e){return typeof e>"u"||typeof e=="number"?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function vs(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):pe(a)))}o=`{${i.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(vg,` `)}`}var ya=qu(Fu("Optional"),8);var Gu=qu(Fu("SkipSelf"),4);function vn(e,t){let n=e.hasOwnProperty(vo);return n?e[vo]:null}function xg(e,t,n){if(e.length!==t.length)return!1;for(let r=0;rArray.isArray(n)?wa(n,t):t(n))}function Wu(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function wo(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function Eg(e,t,n,r){let o=e.length;if(o==t)e.push(n,r);else if(o===1)e.push(r,e[0]),e[0]=n;else{for(o--,e.push(e[o-1],e[o]);o>t;){let i=o-2;e[o]=e[i],o--}e[t]=n,e[t+1]=r}}function _a(e,t,n){let r=cr(e,t);return r>=0?e[r|1]=n:(r=~r,Eg(e,r,t,n)),r}function es(e,t){let n=cr(e,t);if(n>=0)return e[n|1]}function cr(e,t){return Mg(e,t,1)}function Mg(e,t,n){let r=0,o=e.length>>n;for(;o!==r;){let i=r+(o-r>>1),s=e[i<t?o=i:r=i+1}return~(o<t){s=i-1;break}}}for(;i-1){let i;for(;++oi?d="":d=o[u+1].toLowerCase(),r&2&&l!==d){if(je(r))return!1;s=!0}}}}return je(r)||s}function je(e){return(e&1)===0}function Pg(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!==""&&!je(s)&&(t+=tu(i,o),o=""),r=s,i=i||!je(r);n++}return o!==""&&(t+=tu(i,o)),t}function Vg(e){return e.map(jg).join(",")}function $g(e){let t=[],n=[],r=1,o=2;for(;r{let t=nd(e),n=Q(_({},t),{decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===Qu.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Ze.Emulated,styles:e.styles||Ce,_:null,schemas:e.schemas||null,tView:null,id:""});rd(n);let r=e.dependencies;return n.directiveDefs=ru(r,!1),n.pipeDefs=ru(r,!0),n.id=Hg(n),n})}function Bg(e){return Nt(e)||Ju(e)}function Ug(e){return e!==null}function jo(e){return ar(()=>({type:e.type,bootstrap:e.bootstrap||Ce,declarations:e.declarations||Ce,imports:e.imports||Ce,exports:e.exports||Ce,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function nu(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=ot.None;Array.isArray(o)?(a=o[0],i=o[1],s=o[2]??i):(i=o,s=o),t?(n[i]=a!==ot.None?[r,a]:r,t[i]=s):n[i]=r}return n}function Vt(e){return ar(()=>{let t=nd(e);return rd(t),t})}function Nt(e){return e[lg]||null}function Ju(e){return e[ug]||null}function Xu(e){return e[dg]||null}function ed(e){let t=Nt(e)||Ju(e)||Xu(e);return t!==null?t.standalone:!1}function td(e,t){let n=e[fg]||null;if(!n&&t===!0)throw new Error(`Type ${pe(e)} does not have '\u0275mod' property.`);return n}function nd(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||Ce,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:nu(e.inputs,t),outputs:nu(e.outputs),debugInfo:null}}function rd(e){e.features?.forEach(t=>t(e))}function ru(e,t){if(!e)return null;let n=t?Xu:Bg;return()=>(typeof e=="function"?e():e).map(r=>n(r)).filter(Ug)}function Hg(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 Vo(e){return{\u0275providers:e}}function zg(...e){return{\u0275providers:od(!0,e),\u0275fromNgModule:!0}}function od(e,...t){let n=[],r=new Set,o,i=s=>{n.push(s)};return wa(t,s=>{let a=s;ws(a,i,[],r)&&(o||=[],o.push(a))}),o!==void 0&&id(o,i),n}function id(e,t){for(let n=0;n{t(i,r)})}}function ws(e,t,n,r){if(e=Se(e),!e)return!1;let o=null,i=Ql(e),s=!i&&Nt(e);if(!i&&!s){let c=e.ngModule;if(i=Ql(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 l of c)ws(l,t,n,r)}}else if(i){if(i.imports!=null&&!a){r.add(o);let l;try{wa(i.imports,u=>{ws(u,t,n,r)&&(l||=[],l.push(u))})}finally{}l!==void 0&&id(l,t)}if(!a){let l=vn(o)||(()=>new o);t({provide:o,useFactory:l,deps:Ce},o),t({provide:Zu,useValue:o,multi:!0},o),t({provide:yn,useValue:()=>V(o),multi:!0},o)}let c=i.providers;if(c!=null&&!a){let l=e;ba(c,u=>{t(u,l)})}}else return!1;return o!==e&&e.providers!==void 0}function ba(e,t){for(let n of e)Uu(n)&&(n=n.\u0275providers),Array.isArray(n)?ba(n,t):t(n)}var qg=q({provide:String,useValue:q});function sd(e){return e!==null&&typeof e=="object"&&qg in e}function Gg(e){return!!(e&&e.useExisting)}function Wg(e){return!!(e&&e.useFactory)}function _s(e){return typeof e=="function"}var $o=new j(""),uo={},Yg={},ts;function xa(){return ts===void 0&&(ts=new _o),ts}var Te=class{},Wn=class extends Te{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,Ds(t,s=>this.processProvider(s)),this.records.set(Yu,dn(void 0,this)),o.has("environment")&&this.records.set(Te,dn(void 0,this));let i=this.records.get($o);i!=null&&typeof i.value=="string"&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(Zu,Ce,N.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;let t=R(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(),R(t)}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();let n=yt(this),r=Me(void 0),o;try{return t()}finally{yt(n),Me(r)}}get(t,n=qn,r=N.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(Jl))return t[Jl](this);r=Lo(r);let o,i=yt(this),s=Me(void 0);try{if(!(r&N.SkipSelf)){let c=this.records.get(t);if(c===void 0){let l=em(t)&&Fo(t);l&&this.injectableDefInScope(l)?c=dn(Cs(t),uo):c=null,this.records.set(t,c)}if(c!=null)return this.hydrate(t,c)}let a=r&N.Self?xa():this.parent;return n=r&N.Optional&&n===qn?null:n,a.get(t,n)}catch(a){if(a.name==="NullInjectorError"){if((a[yo]=a[yo]||[]).unshift(pe(t)),i)throw a;return Dg(a,t,"R3InjectorError",this.source)}else throw a}finally{Me(s),yt(i)}}resolveInjectorInitializers(){let t=R(null),n=yt(this),r=Me(void 0),o;try{let i=this.get(yn,Ce,N.Self);for(let s of i)s()}finally{yt(n),Me(r),R(t)}}toString(){let t=[],n=this.records;for(let r of n.keys())t.push(pe(r));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new b(205,!1)}processProvider(t){t=Se(t);let n=_s(t)?t:Se(t&&t.provide),r=Qg(t);if(!_s(t)&&t.multi===!0){let o=this.records.get(n);o||(o=dn(void 0,uo,!0),o.factory=()=>vs(o.multi),this.records.set(n,o)),n=t,o.multi.push(t)}this.records.set(n,r)}hydrate(t,n){let r=R(null);try{return n.value===uo&&(n.value=Yg,n.value=n.factory()),typeof n.value=="object"&&n.value&&Xg(n.value)&&this._ngOnDestroyHooks.add(n.value),n.value}finally{R(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 Cs(e){let t=Fo(e),n=t!==null?t.factory:vn(e);if(n!==null)return n;if(e instanceof j)throw new b(204,!1);if(e instanceof Function)return Zg(e);throw new b(204,!1)}function Zg(e){if(e.length>0)throw new b(204,!1);let n=ag(e);return n!==null?()=>n.factory(e):()=>new e}function Qg(e){if(sd(e))return dn(void 0,e.useValue);{let t=Kg(e);return dn(t,uo)}}function Kg(e,t,n){let r;if(_s(e)){let o=Se(e);return vn(o)||Cs(o)}else if(sd(e))r=()=>Se(e.useValue);else if(Wg(e))r=()=>e.useFactory(...vs(e.deps||[]));else if(Gg(e))r=()=>V(Se(e.useExisting));else{let o=Se(e&&(e.useClass||e.provide));if(Jg(e))r=()=>new o(...vs(e.deps));else return vn(o)||Cs(o)}return r}function dn(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Jg(e){return!!e.deps}function Xg(e){return e!==null&&typeof e=="object"&&typeof e.ngOnDestroy=="function"}function em(e){return typeof e=="function"||typeof e=="object"&&e instanceof j}function Ds(e,t){for(let n of e)Array.isArray(n)?Ds(n,t):n&&Uu(n)?Ds(n.\u0275providers,t):t(n)}function $t(e,t){e instanceof Wn&&e.assertNotDestroyed();let n,r=yt(e),o=Me(void 0);try{return t()}finally{yt(r),Me(o)}}function tm(){return Hu()!==void 0||wg()!=null}function nm(e){return typeof e=="function"}var lt=0,M=1,C=2,ce=3,$e=4,He=5,Yn=6,Zn=7,de=8,wn=9,Be=10,re=11,Qn=12,ou=13,xn=14,Ue=15,lr=16,fn=17,it=18,Bo=19,ad=20,wt=21,ns=22,Rt=23,De=25,cd=1;var Pt=7,Co=8,_n=9,fe=10,Ia=function(e){return e[e.None=0]="None",e[e.HasTransplantedViews=2]="HasTransplantedViews",e}(Ia||{});function At(e){return Array.isArray(e)&&typeof e[cd]=="object"}function ut(e){return Array.isArray(e)&&e[cd]===!0}function Ea(e){return(e.flags&4)!==0}function Uo(e){return e.componentOffset>-1}function Ho(e){return(e.flags&1)===1}function ur(e){return!!e.template}function rm(e){return(e[C]&512)!==0}var bs=class{constructor(t,n,r){this.previousValue=t,this.currentValue=n,this.firstChange=r}isFirstChange(){return this.firstChange}};function ld(e,t,n,r){t!==null?t.applyValueToInputSignal(t,r):e[n]=r}function Bt(){return ud}function ud(e){return e.type.prototype.ngOnChanges&&(e.setInput=im),om}Bt.ngInherit=!0;function om(){let e=fd(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 im(e,t,n,r,o){let i=this.declaredInputs[r],s=fd(e)||sm(e,{previous:Gn,current:null}),a=s.current||(s.current={}),c=s.previous,l=c[i];a[i]=new bs(l&&l.currentValue,n,c===Gn),ld(e,t,o,n)}var dd="__ngSimpleChanges__";function fd(e){return e[dd]||null}function sm(e,t){return e[dd]=t}var iu=null;var We=function(e,t,n){iu?.(e,t,n)},am="svg",cm="math",lm=!1;function um(){return lm}function Qe(e){for(;Array.isArray(e);)e=e[lt];return e}function hd(e,t){return Qe(t[e])}function ze(e,t){return Qe(t[e.index])}function Ma(e,t){return e.data[t]}function dm(e,t){return e[t]}function Dt(e,t){let n=t[e];return At(n)?n:n[lt]}function fm(e){return(e[C]&4)===4}function Sa(e){return(e[C]&128)===128}function hm(e){return ut(e[ce])}function Cn(e,t){return t==null?null:e[t]}function pd(e){e[fn]=0}function pm(e){e[C]&1024||(e[C]|=1024,Sa(e)&&Kn(e))}function gm(e,t){for(;e>0;)t=t[xn],e--;return t}function Ta(e){return!!(e[C]&9216||e[Rt]?.dirty)}function xs(e){e[Be].changeDetectionScheduler?.notify(1),Ta(e)?Kn(e):e[C]&64&&(um()?(e[C]|=1024,Kn(e)):e[Be].changeDetectionScheduler?.notify())}function Kn(e){e[Be].changeDetectionScheduler?.notify();let t=Jn(e);for(;t!==null&&!(t[C]&8192||(t[C]|=8192,!Sa(t)));)t=Jn(t)}function gd(e,t){if((e[C]&256)===256)throw new b(911,!1);e[wt]===null&&(e[wt]=[]),e[wt].push(t)}function mm(e,t){if(e[wt]===null)return;let n=e[wt].indexOf(t);n!==-1&&e[wt].splice(n,1)}function Jn(e){let t=e[ce];return ut(t)?t[ce]:t}var A={lFrame:Dd(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function vm(){return A.lFrame.elementDepthCount}function ym(){A.lFrame.elementDepthCount++}function wm(){A.lFrame.elementDepthCount--}function md(){return A.bindingsEnabled}function _m(){return A.skipHydrationRootTNode!==null}function Cm(e){return A.skipHydrationRootTNode===e}function Dm(){A.skipHydrationRootTNode=null}function $(){return A.lFrame.lView}function be(){return A.lFrame.tView}function oe(e){return A.lFrame.contextLView=e,e[de]}function ie(e){return A.lFrame.contextLView=null,e}function Ae(){let e=vd();for(;e!==null&&e.type===64;)e=e.parent;return e}function vd(){return A.lFrame.currentTNode}function bm(){let e=A.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}function Ut(e,t){let n=A.lFrame;n.currentTNode=e,n.isParent=t}function Aa(){return A.lFrame.isParent}function yd(){A.lFrame.isParent=!1}function xm(){return A.lFrame.contextLView}function Oa(){let e=A.lFrame,t=e.bindingRootIndex;return t===-1&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function Im(){return A.lFrame.bindingIndex}function Em(e){return A.lFrame.bindingIndex=e}function zo(){return A.lFrame.bindingIndex++}function Na(e){let t=A.lFrame,n=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,n}function Mm(){return A.lFrame.inI18n}function Sm(e,t){let n=A.lFrame;n.bindingIndex=n.bindingRootIndex=e,Is(t)}function Tm(){return A.lFrame.currentDirectiveIndex}function Is(e){A.lFrame.currentDirectiveIndex=e}function Am(e){let t=A.lFrame.currentDirectiveIndex;return t===-1?null:e[t]}function wd(){return A.lFrame.currentQueryIndex}function Ra(e){A.lFrame.currentQueryIndex=e}function Om(e){let t=e[M];return t.type===2?t.declTNode:t.type===1?e[He]:null}function _d(e,t,n){if(n&N.SkipSelf){let o=t,i=e;for(;o=o.parent,o===null&&!(n&N.Host);)if(o=Om(i),o===null||(i=i[xn],o.type&10))break;if(o===null)return!1;t=o,e=i}let r=A.lFrame=Cd();return r.currentTNode=t,r.lView=e,!0}function Pa(e){let t=Cd(),n=e[M];A.lFrame=t,t.currentTNode=n.firstChild,t.lView=e,t.tView=n,t.contextLView=e,t.bindingIndex=n.bindingStartIndex,t.inI18n=!1}function Cd(){let e=A.lFrame,t=e===null?null:e.child;return t===null?Dd(e):t}function Dd(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 bd(){let e=A.lFrame;return A.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}var xd=bd;function ka(){let e=bd();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 Nm(e){return(A.lFrame.contextLView=gm(e,A.lFrame.contextLView))[de]}function dt(){return A.lFrame.selectedIndex}function kt(e){A.lFrame.selectedIndex=e}function Rm(){let e=A.lFrame;return Ma(e.tView,e.selectedIndex)}function Pm(){return A.lFrame.currentNamespace}var Id=!0;function qo(){return Id}function Go(e){Id=e}function km(e,t,n){let{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=t.type.prototype;if(r){let s=ud(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 Wo(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[c]<0&&(e[fn]+=65536),(a>14>16&&(e[C]&3)===t&&(e[C]+=16384,su(a,i)):su(a,i)}var gn=-1,Xn=class{constructor(t,n,r){this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r}};function Lm(e){return e instanceof Xn}function jm(e){return(e.flags&8)!==0}function Vm(e){return(e.flags&16)!==0}function Md(e){return e!==gn}function Do(e){return e&32767}function $m(e){return e>>16}function bo(e,t){let n=$m(e),r=t;for(;n>0;)r=r[xn],n--;return r}var Es=!0;function au(e){let t=Es;return Es=e,t}var Bm=256,Sd=Bm-1,Td=5,Um=0,Ye={};function Hm(e,t,n){let r;typeof n=="string"?r=n.charCodeAt(0)||0:n.hasOwnProperty(zn)&&(r=n[zn]),r==null&&(r=n[zn]=Um++);let o=r&Sd,i=1<>Td)]|=i}function Ad(e,t){let n=Od(e,t);if(n!==-1)return n;let r=t[M];r.firstCreatePass&&(e.injectorIndex=t.length,os(r.data,e),os(t,null),os(r.blueprint,null));let o=Fa(e,t),i=e.injectorIndex;if(Md(o)){let s=Do(o),a=bo(o,t),c=a[M].data;for(let l=0;l<8;l++)t[i+l]=a[s+l]|c[s+l]}return t[i+8]=o,i}function os(e,t){e.push(0,0,0,0,0,0,0,0,t)}function Od(e,t){return e.injectorIndex===-1||e.parent&&e.parent.injectorIndex===e.injectorIndex||t[e.injectorIndex+8]===null?-1:e.injectorIndex}function Fa(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=Fd(o),r===null)return gn;if(n++,o=o[xn],r.injectorIndex!==-1)return r.injectorIndex|n<<16}return gn}function zm(e,t,n){Hm(e,t,n)}function Nd(e,t,n){if(n&N.Optional||e!==void 0)return e;va(t,"NodeInjector")}function Rd(e,t,n,r){if(n&N.Optional&&r===void 0&&(r=null),!(n&(N.Self|N.Host))){let o=e[wn],i=Me(void 0);try{return o?o.get(t,r,n&N.Optional):zu(t,r,n&N.Optional)}finally{Me(i)}}return Nd(r,t,n)}function Pd(e,t,n,r=N.Default,o){if(e!==null){if(t[C]&2048&&!(r&N.Self)){let s=Ym(e,t,n,r,Ye);if(s!==Ye)return s}let i=kd(e,t,n,r,Ye);if(i!==Ye)return i}return Rd(t,n,r,o)}function kd(e,t,n,r,o){let i=Gm(n);if(typeof i=="function"){if(!_d(t,e,r))return r&N.Host?Nd(o,n,r):Rd(t,n,r,o);try{let s;if(s=i(r),s==null&&!(r&N.Optional))va(n);else return s}finally{xd()}}else if(typeof i=="number"){let s=null,a=Od(e,t),c=gn,l=r&N.Host?t[Ue][He]:null;for((a===-1||r&N.SkipSelf)&&(c=a===-1?Fa(e,t):t[a+8],c===gn||!lu(r,!1)?a=-1:(s=t[M],a=Do(c),t=bo(c,t)));a!==-1;){let u=t[M];if(cu(i,a,u.data)){let d=qm(a,t,n,s,r,l);if(d!==Ye)return d}c=t[a+8],c!==gn&&lu(r,t[M].data[a+8]===l)&&cu(i,a,t)?(s=u,a=Do(c),t=bo(c,t)):a=-1}}return o}function qm(e,t,n,r,o,i){let s=t[M],a=s.data[e+8],c=r==null?Uo(a)&&Es:r!=s&&(a.type&3)!==0,l=o&N.Host&&i===a,u=po(a,s,n,c,l);return u!==null?Dn(t,s,u,a):Ye}function po(e,t,n,r,o){let i=e.providerIndexes,s=t.data,a=i&1048575,c=e.directiveStart,l=e.directiveEnd,u=i>>20,d=r?a:a+u,g=o?a+u:l;for(let m=d;m=c&&v.type===n)return m}if(o){let m=s[c];if(m&&ur(m)&&m.type===n)return c}return null}function Dn(e,t,n,r){let o=e[n],i=t.data;if(Lm(o)){let s=o;s.resolving&&pg(hg(i[n]));let a=au(s.canSeeViewProviders);s.resolving=!0;let c,l=s.injectImpl?Me(s.injectImpl):null,u=_d(e,r,N.Default);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&km(n,i[n],t)}finally{l!==null&&Me(l),au(a),s.resolving=!1,xd()}}return o}function Gm(e){if(typeof e=="string")return e.charCodeAt(0)||0;let t=e.hasOwnProperty(zn)?e[zn]:void 0;return typeof t=="number"?t>=0?t&Sd:Wm:t}function cu(e,t,n){let r=1<>Td)]&r)}function lu(e,t){return!(e&N.Self)&&!(e&N.Host&&t)}var Ot=class{constructor(t,n){this._tNode=t,this._lView=n}get(t,n,r){return Pd(this._tNode,this._lView,t,Lo(r),n)}};function Wm(){return new Ot(Ae(),$())}function La(e){return ar(()=>{let t=e.prototype.constructor,n=t[vo]||Ms(t),r=Object.prototype,o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){let i=o[vo]||Ms(o);if(i&&i!==n)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function Ms(e){return ju(e)?()=>{let t=Ms(Se(e));return t&&t()}:vn(e)}function Ym(e,t,n,r,o){let i=e,s=t;for(;i!==null&&s!==null&&s[C]&2048&&!(s[C]&512);){let a=kd(i,s,n,r|N.Self,Ye);if(a!==Ye)return a;let c=i.parent;if(!c){let l=s[ad];if(l){let u=l.get(n,Ye,r);if(u!==Ye)return u}c=Fd(s),s=s[xn]}i=c}return o}function Fd(e){let t=e[M],n=t.type;return n===2?t.declTNode:n===1?e[He]:null}function uu(e,t=null,n=null,r){let o=Ld(e,t,n,r);return o.resolveInjectorInitializers(),o}function Ld(e,t=null,n=null,r,o=new Set){let i=[n||Ce,zg(e)];return r=r||(typeof e=="object"?void 0:pe(e)),new Wn(i,t||xa(),r||null,o)}var dr=(()=>{class e{static{this.THROW_IF_NOT_FOUND=qn}static{this.NULL=new _o}static create(n,r){if(Array.isArray(n))return uu({name:""},r,n,"");{let o=n.name??"";return uu({name:o},n.parent,n.providers,o)}}static{this.\u0275prov=x({token:e,providedIn:"any",factory:()=>V(Yu)})}static{this.__NG_ELEMENT_ID__=-1}}return e})();var Zm="ngOriginalError";function is(e){return e[Zm]}var st=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&&is(t);for(;n&&is(n);)n=is(n);return n||null}},jd=new j("",{providedIn:"root",factory:()=>y(st).handleError.bind(void 0)}),Vd=(()=>{class e{static{this.__NG_ELEMENT_ID__=Qm}static{this.__NG_ENV_ID__=n=>n}}return e})(),Ss=class extends Vd{constructor(t){super(),this._lView=t}onDestroy(t){return gd(this._lView,t),()=>mm(this._lView,t)}};function Qm(){return new Ss($())}function Km(){return In(Ae(),$())}function In(e,t){return new Ke(ze(e,t))}var Ke=(()=>{class e{constructor(n){this.nativeElement=n}static{this.__NG_ELEMENT_ID__=Km}}return e})();function Jm(e){return e instanceof Ke?e.nativeElement:e}var Ts=class extends he{constructor(t=!1){super(),this.destroyRef=void 0,this.__isAsync=t,tm()&&(this.destroyRef=y(Vd,{optional:!0})??void 0)}emit(t){let n=R(null);try{super.next(t)}finally{R(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=ss(i),o&&(o=ss(o)),s&&(s=ss(s)));let a=super.subscribe({next:o,error:i,complete:s});return t instanceof J&&t.add(a),a}};function ss(e){return t=>{setTimeout(e,void 0,t)}}var ue=Ts;function Xm(){return this._results[Symbol.iterator]()}var As=class e{get changes(){return this._changes??=new ue}constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._onDirty=void 0,this._results=[],this._changesDetected=!1,this._changes=void 0,this.length=0,this.first=void 0,this.last=void 0;let n=e.prototype;n[Symbol.iterator]||(n[Symbol.iterator]=Xm)}get(t){return this._results[t]}map(t){return this._results.map(t)}filter(t){return this._results.filter(t)}find(t){return this._results.find(t)}reduce(t,n){return this._results.reduce(t,n)}forEach(t){this._results.forEach(t)}some(t){return this._results.some(t)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(t,n){this.dirty=!1;let r=Ig(t);(this._changesDetected=!xg(this._results,r,n))&&(this._results=r,this.length=r.length,this.last=r[this.length-1],this.first=r[0])}notifyOnChanges(){this._changes!==void 0&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.emit(this)}onDirty(t){this._onDirty=t}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){this._changes!==void 0&&(this._changes.complete(),this._changes.unsubscribe())}};function $d(e){return(e.flags&128)===128}var Bd=new Map,ev=0;function tv(){return ev++}function nv(e){Bd.set(e[Bo],e)}function rv(e){Bd.delete(e[Bo])}var du="__ngContext__";function _t(e,t){At(t)?(e[du]=t[Bo],nv(t)):e[du]=t}function Ud(e){return zd(e[Qn])}function Hd(e){return zd(e[$e])}function zd(e){for(;e!==null&&!ut(e);)e=e[$e];return e}var Os;function qd(e){Os=e}function Gd(){if(Os!==void 0)return Os;if(typeof document<"u")return document;throw new b(210,!1)}var ja=new j("",{providedIn:"root",factory:()=>ov}),ov="ng",Va=new j(""),En=new j("",{providedIn:"platform",factory:()=>"unknown"});var $a=new j("",{providedIn:"root",factory:()=>Gd().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var iv="h",sv="b";var av=()=>null;function Ba(e,t,n=!1){return av(e,t,n)}var Wd=!1,cv=new j("",{providedIn:"root",factory:()=>Wd});var so;function lv(){if(so===void 0&&(so=null,rt.trustedTypes))try{so=rt.trustedTypes.createPolicy("angular",{createHTML:e=>e,createScript:e=>e,createScriptURL:e=>e})}catch{}return so}function Yo(e){return lv()?.createHTML(e)||e}var ao;function uv(){if(ao===void 0&&(ao=null,rt.trustedTypes))try{ao=rt.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:e=>e,createScript:e=>e,createScriptURL:e=>e})}catch{}return ao}function fu(e){return uv()?.createHTML(e)||e}var xo=class{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${ku})`}};function Mn(e){return e instanceof xo?e.changingThisBreaksApplicationSecurity:e}function Ua(e,t){let n=dv(e);if(n!=null&&n!==t){if(n==="ResourceURL"&&t==="URL")return!0;throw new Error(`Required a safe ${t}, got a ${n} (see ${ku})`)}return n===t}function dv(e){return e instanceof xo&&e.getTypeName()||null}function fv(e){let t=new Rs(e);return hv()?new Ns(t):t}var Ns=class{constructor(t){this.inertDocumentHelper=t}getInertBodyElement(t){t=""+t;try{let n=new window.DOMParser().parseFromString(Yo(t),"text/html").body;return n===null?this.inertDocumentHelper.getInertBodyElement(t):(n.removeChild(n.firstChild),n)}catch{return null}}},Rs=class{constructor(t){this.defaultDoc=t,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(t){let n=this.inertDocument.createElement("template");return n.innerHTML=Yo(t),n}};function hv(){try{return!!new window.DOMParser().parseFromString(Yo(""),"text/html")}catch{return!1}}var pv=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function Ha(e){return e=String(e),e.match(pv)?e:"unsafe:"+e}function ft(e){let t={};for(let n of e.split(","))t[n]=!0;return t}function fr(...e){let t={};for(let n of e)for(let r in n)n.hasOwnProperty(r)&&(t[r]=!0);return t}var Yd=ft("area,br,col,hr,img,wbr"),Zd=ft("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),Qd=ft("rp,rt"),gv=fr(Qd,Zd),mv=fr(Zd,ft("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),vv=fr(Qd,ft("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),hu=fr(Yd,mv,vv,gv),Kd=ft("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),yv=ft("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),wv=ft("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext"),_v=fr(Kd,yv,wv),Cv=ft("script,style,template"),Ps=class{constructor(){this.sanitizedSomething=!1,this.buf=[]}sanitizeChildren(t){let n=t.firstChild,r=!0,o=[];for(;n;){if(n.nodeType===Node.ELEMENT_NODE?r=this.startElement(n):n.nodeType===Node.TEXT_NODE?this.chars(n.nodeValue):this.sanitizedSomething=!0,r&&n.firstChild){o.push(n),n=xv(n);continue}for(;n;){n.nodeType===Node.ELEMENT_NODE&&this.endElement(n);let i=bv(n);if(i){n=i;break}n=o.pop()}}return this.buf.join("")}startElement(t){let n=pu(t).toLowerCase();if(!hu.hasOwnProperty(n))return this.sanitizedSomething=!0,!Cv.hasOwnProperty(n);this.buf.push("<"),this.buf.push(n);let r=t.attributes;for(let o=0;o"),!0}endElement(t){let n=pu(t).toLowerCase();hu.hasOwnProperty(n)&&!Yd.hasOwnProperty(n)&&(this.buf.push(""))}chars(t){this.buf.push(gu(t))}};function Dv(e,t){return(e.compareDocumentPosition(t)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}function bv(e){let t=e.nextSibling;if(t&&e!==t.previousSibling)throw Jd(t);return t}function xv(e){let t=e.firstChild;if(t&&Dv(e,t))throw Jd(t);return t}function pu(e){let t=e.nodeName;return typeof t=="string"?t:"FORM"}function Jd(e){return new Error(`Failed to sanitize html because the element is clobbered: ${e.outerHTML}`)}var Iv=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,Ev=/([^\#-~ |!])/g;function gu(e){return e.replace(/&/g,"&").replace(Iv,function(t){let n=t.charCodeAt(0),r=t.charCodeAt(1);return"&#"+((n-55296)*1024+(r-56320)+65536)+";"}).replace(Ev,function(t){return"&#"+t.charCodeAt(0)+";"}).replace(//g,">")}var co;function Xd(e,t){let n=null;try{co=co||fv(e);let r=t?String(t):"";n=co.getInertBodyElement(r);let o=5,i=r;do{if(o===0)throw new Error("Failed to sanitize html because the input is unstable");o--,r=i,i=n.innerHTML,n=co.getInertBodyElement(r)}while(r!==i);let a=new Ps().sanitizeChildren(mu(n)||n);return Yo(a)}finally{if(n){let r=mu(n)||n;for(;r.firstChild;)r.removeChild(r.firstChild)}}}function mu(e){return"content"in e&&Mv(e)?e.content:null}function Mv(e){return e.nodeType===Node.ELEMENT_NODE&&e.nodeName==="TEMPLATE"}var Zo=function(e){return e[e.NONE=0]="NONE",e[e.HTML=1]="HTML",e[e.STYLE=2]="STYLE",e[e.SCRIPT=3]="SCRIPT",e[e.URL=4]="URL",e[e.RESOURCE_URL=5]="RESOURCE_URL",e}(Zo||{});function ef(e){let t=tf();return t?fu(t.sanitize(Zo.HTML,e)||""):Ua(e,"HTML")?fu(Mn(e)):Xd(Gd(),mn(e))}function qe(e){let t=tf();return t?t.sanitize(Zo.URL,e)||"":Ua(e,"URL")?Mn(e):Ha(mn(e))}function tf(){let e=$();return e&&e[Be].sanitizer}var Sv=/^>|^->||--!>|)/g,Av="\u200B$1\u200B";function Ov(e){return e.replace(Sv,t=>t.replace(Tv,Av))}function nf(e){return e.ownerDocument.defaultView}function rf(e){return e.ownerDocument}function of(e){return e instanceof Function?e():e}var at=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(at||{}),Nv;function za(e,t){return Nv(e,t)}function hn(e,t,n,r,o){if(r!=null){let i,s=!1;ut(r)?i=r:At(r)&&(s=!0,r=r[lt]);let a=Qe(r);e===0&&n!==null?o==null?lf(t,n,a):Io(t,n,a,o||null,!0):e===1&&n!==null?Io(t,n,a,o||null,!0):e===2?Qv(t,a,s):e===3&&t.destroyNode(a),i!=null&&Jv(t,e,i,n,o)}}function Rv(e,t){return e.createText(t)}function Pv(e,t,n){e.setValue(t,n)}function kv(e,t){return e.createComment(Ov(t))}function sf(e,t,n){return e.createElement(t,n)}function Fv(e,t){af(e,t),t[lt]=null,t[He]=null}function Lv(e,t,n,r,o,i){r[lt]=o,r[He]=t,Jo(e,r,n,1,o,i)}function af(e,t){t[Be].changeDetectionScheduler?.notify(1),Jo(e,t,t[re],2,null,null)}function jv(e){let t=e[Qn];if(!t)return as(e[M],e);for(;t;){let n=null;if(At(t))n=t[Qn];else{let r=t[fe];r&&(n=r)}if(!n){for(;t&&!t[$e]&&t!==e;)At(t)&&as(t[M],t),t=t[ce];t===null&&(t=e),At(t)&&as(t[M],t),n=t&&t[$e]}t=n}}function Vv(e,t,n,r){let o=fe+r,i=n.length;r>0&&(n[o-1][$e]=t),r0&&(e[n-1][$e]=r[$e]);let i=wo(e,fe+t);Fv(r[M],r);let s=i[it];s!==null&&s.detachView(i[M]),r[ce]=null,r[$e]=null,r[C]&=-129}return r}function Qo(e,t){if(!(t[C]&256)){let n=t[re];n.destroyNode&&Jo(e,t,n,3,null,null),jv(t)}}function as(e,t){if(t[C]&256)return;let n=R(null);try{t[C]&=-129,t[C]|=256,t[Rt]&&wl(t[Rt]),Uv(e,t),Bv(e,t),t[M].type===1&&t[re].destroy();let r=t[lr];if(r!==null&&ut(t[ce])){r!==t[ce]&&cf(r,t);let o=t[it];o!==null&&o.detachView(e)}rv(t)}finally{R(n)}}function Bv(e,t){let n=e.cleanup,r=t[Zn];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[Zn]=null);let o=t[wt];if(o!==null){t[wt]=null;for(let i=0;i-1){let{encapsulation:i}=e.data[r.directiveStart+o];if(i===Ze.None||i===Ze.Emulated)return null}return ze(r,n)}}function Io(e,t,n,r,o){e.insertBefore(t,n,r,o)}function lf(e,t,n){e.appendChild(t,n)}function vu(e,t,n,r,o){r!==null?Io(e,t,n,r,o):lf(e,t,n)}function qv(e,t,n,r){e.removeChild(t,n,r)}function qa(e,t){return e.parentNode(t)}function Gv(e,t){return e.nextSibling(t)}function Wv(e,t,n){return Zv(e,t,n)}function Yv(e,t,n){return e.type&40?ze(e,n):null}var Zv=Yv,yu;function Ko(e,t,n,r){let o=Hv(e,r,t),i=t[re],s=r.parent||t[He],a=Wv(s,r,t);if(o!=null)if(Array.isArray(n))for(let c=0;cDe&&hf(e,t,De,!1),We(s?2:0,o),n(r,o)}finally{kt(i),We(s?3:1,o)}}function Wa(e,t,n){if(Ea(t)){let r=R(null);try{let o=t.directiveStart,i=t.directiveEnd;for(let s=o;snull;function ay(e,t,n,r){let o=Df(t);o.push(n),e.firstCreatePass&&bf(e).push(r,o.length-1)}function cy(e,t,n,r,o,i){let s=t?t.injectorIndex:-1,a=0;return _m()&&(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 wu(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=ot.None;Array.isArray(s)?(a=s[0],c=s[1]):a=s;let l=i;if(o!==null){if(!o.hasOwnProperty(i))continue;l=o[i]}e===0?_u(r,n,l,a,c):_u(r,n,l,a)}return r}function _u(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 ly(e,t,n){let r=t.directiveStart,o=t.directiveEnd,i=e.data,s=t.attrs,a=[],c=null,l=null;for(let u=r;u0;){let n=e[--t];if(typeof n=="number"&&n<0)return n}return 0}function gy(e,t,n,r){let o=n.directiveStart,i=n.directiveEnd;Uo(n)&&Dy(t,n,e.data[o+n.componentOffset]),e.firstCreatePass||Ad(n,t),_t(r,t);let s=n.initialInputs;for(let a=o;a{Kn(e.lView)},consumerOnSignalRead(){this.lView[Rt]=this}}),Tf=100;function Af(e,t=!0,n=0){let r=e[Be],o=r.rendererFactory,i=!1;i||o.begin?.();try{Ry(e,n)}catch(s){throw t&&xf(e,s),s}finally{i||(o.end?.(),r.inlineEffectRunner?.flush())}}function Ry(e,t){js(e,t);let n=0;for(;Ta(e);){if(n===Tf)throw new b(103,!1);n++,js(e,1)}}function Py(e,t,n,r){let o=t[C];if((o&256)===256)return;let i=!1;!i&&t[Be].inlineEffectRunner?.flush(),Pa(t);let s=null,a=null;!i&&ky(e)&&(a=Ty(t),s=vl(a));try{pd(t),Em(e.bindingStartIndex),n!==null&&mf(e,t,n,2,r);let c=(o&3)===3;if(!i)if(c){let d=e.preOrderCheckHooks;d!==null&&fo(t,d,null)}else{let d=e.preOrderHooks;d!==null&&ho(t,d,0,null),rs(t,0)}if(Fy(t),Of(t,0),e.contentQueries!==null&&Cf(e,t),!i)if(c){let d=e.contentCheckHooks;d!==null&&fo(t,d)}else{let d=e.contentHooks;d!==null&&ho(t,d,1),rs(t,1)}ty(e,t);let l=e.components;l!==null&&Rf(t,l,0);let u=e.viewQuery;if(u!==null&&Ls(2,u,r),!i)if(c){let d=e.viewCheckHooks;d!==null&&fo(t,d)}else{let d=e.viewHooks;d!==null&&ho(t,d,2),rs(t,2)}if(e.firstUpdatePass===!0&&(e.firstUpdatePass=!1),t[ns]){for(let d of t[ns])d();t[ns]=null}i||(t[C]&=-73)}catch(c){throw Kn(t),c}finally{a!==null&&(yl(a,s),Oy(a)),ka()}}function ky(e){return e.type!==2}function Of(e,t){for(let n=Ud(e);n!==null;n=Hd(n))for(let r=fe;r-1&&(er(t,r),wo(n,r))}this._attachedToViewContainer=!1}Qo(this._lView[M],this._lView)}onDestroy(t){gd(this._lView,t)}markForCheck(){ec(this._cdRefInjectingView||this._lView)}detach(){this._lView[C]&=-129}reattach(){xs(this._lView),this._lView[C]|=128}detectChanges(){this._lView[C]|=1024,Af(this._lView,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new b(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,af(this._lView[M],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new b(902,!1);this._appRef=t,xs(this._lView)}},Lt=(()=>{class e{static{this.__NG_ELEMENT_ID__=$y}}return e})(),jy=Lt,Vy=class extends jy{constructor(t,n,r){super(),this._declarationLView=t,this._declarationTContainer=n,this.elementRef=r}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(t,n){return this.createEmbeddedViewImpl(t,n)}createEmbeddedViewImpl(t,n,r){let o=ti(this._declarationLView,this._declarationTContainer,t,{embeddedViewInjector:n,dehydratedView:r});return new Ft(o)}};function $y(){return ri(Ae(),$())}function ri(e,t){return e.type&4?new Vy(t,e,In(e,t)):null}var yS=new RegExp(`^(\\d+)*(${sv}|${iv})*(.*)`);var By=()=>null;function nr(e,t){return By(e,t)}var Vs=class{},$s=class{},Mo=class{};function Uy(e){let t=Error(`No component factory found for ${pe(e)}.`);return t[Hy]=e,t}var Hy="ngComponent";var Bs=class{resolveComponentFactory(t){throw Uy(t)}},oi=(()=>{class e{static{this.NULL=new Bs}}return e})(),rr=class{},ii=(()=>{class e{constructor(){this.destroyNode=null}static{this.__NG_ELEMENT_ID__=()=>zy()}}return e})();function zy(){let e=$(),t=Ae(),n=Dt(t.index,e);return(At(n)?n:e)[re]}var qy=(()=>{class e{static{this.\u0275prov=x({token:e,providedIn:"root",factory:()=>null})}}return e})(),cs={};var Cu=new Set;function si(e){Cu.has(e)||(Cu.add(e),performance?.mark?.("mark_feature_usage",{detail:{feature:e}}))}function Du(...e){}function Gy(){let e=typeof rt.requestAnimationFrame=="function",t=rt[e?"requestAnimationFrame":"setTimeout"],n=rt[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&t&&n){let r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r);let o=n[Zone.__symbol__("OriginalDelegate")];o&&(n=o)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:n}}var K=class e{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:n=!1,shouldCoalesceRunChangeDetection:r=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new ue(!1),this.onMicrotaskEmpty=new ue(!1),this.onStable=new ue(!1),this.onError=new ue(!1),typeof Zone>"u")throw new b(908,!1);Zone.assertZonePatched();let o=this;o._nesting=0,o._outer=o._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(o._inner=o._inner.fork(new Zone.TaskTrackingZoneSpec)),t&&Zone.longStackTraceZoneSpec&&(o._inner=o._inner.fork(Zone.longStackTraceZoneSpec)),o.shouldCoalesceEventChangeDetection=!r&&n,o.shouldCoalesceRunChangeDetection=r,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=Gy().nativeRequestAnimationFrame,Zy(o)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get("isAngularZone")===!0}static assertInAngularZone(){if(!e.isInAngularZone())throw new b(909,!1)}static assertNotInAngularZone(){if(e.isInAngularZone())throw new b(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,Wy,Du,Du);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)}},Wy={};function tc(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 Yy(e){e.isCheckStableRunning||e.lastRequestAnimationFrameId!==-1||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(rt,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,Us(e),e.isCheckStableRunning=!0,tc(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),Us(e))}function Zy(e){let t=()=>{Yy(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(n,r,o,i,s,a)=>{if(Qy(a))return n.invokeTask(o,i,s,a);try{return bu(e),n.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&i.type==="eventTask"||e.shouldCoalesceRunChangeDetection)&&t(),xu(e)}},onInvoke:(n,r,o,i,s,a,c)=>{try{return bu(e),n.invoke(o,i,s,a,c)}finally{e.shouldCoalesceRunChangeDetection&&t(),xu(e)}},onHasTask:(n,r,o,i)=>{n.hasTask(o,i),r===o&&(i.change=="microTask"?(e._hasPendingMicrotasks=i.microTask,Us(e),tc(e)):i.change=="macroTask"&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(n,r,o,i)=>(n.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}function Us(e){e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&e.lastRequestAnimationFrameId!==-1?e.hasPendingMicrotasks=!0:e.hasPendingMicrotasks=!1}function bu(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function xu(e){e._nesting--,tc(e)}function Qy(e){return!Array.isArray(e)||e.length!==1?!1:e[0].data?.__ignore_ng_zone__===!0}var Pf=(()=>{class e{constructor(){this.handler=null,this.internalCallbacks=[]}execute(){this.executeInternalCallbacks(),this.handler?.execute()}executeInternalCallbacks(){let n=[...this.internalCallbacks];this.internalCallbacks.length=0;for(let r of n)r()}ngOnDestroy(){this.handler?.destroy(),this.handler=null,this.internalCallbacks.length=0}static{this.\u0275prov=x({token:e,providedIn:"root",factory:()=>new e})}}return e})();function So(e,t,n){let r=n?e.styles:null,o=n?e.classes:null,i=0;if(t!==null)for(let s=0;s0&&df(e,n,i.join(" "))}}function r0(e,t,n){let r=e.projection=[];for(let o=0;o{class e{static{this.__NG_ELEMENT_ID__=i0}}return e})();function i0(){let e=Ae();return Ff(e,$())}var s0=ht,kf=class extends s0{constructor(t,n,r){super(),this._lContainer=t,this._hostTNode=n,this._hostLView=r}get element(){return In(this._hostTNode,this._hostLView)}get injector(){return new Ot(this._hostTNode,this._hostLView)}get parentInjector(){let t=Fa(this._hostTNode,this._hostLView);if(Md(t)){let n=bo(t,this._hostLView),r=Do(t),o=n[M].data[r+8];return new Ot(o,n)}else return new Ot(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){let n=Eu(this._lContainer);return n!==null&&n[t]||null}get length(){return this._lContainer.length-fe}createEmbeddedView(t,n,r){let o,i;typeof r=="number"?o=r:r!=null&&(o=r.index,i=r.injector);let s=nr(this._lContainer,t.ssrId),a=t.createEmbeddedViewImpl(n||{},i,s);return this.insertImpl(a,o,tr(this._hostTNode,s)),a}createComponent(t,n,r,o,i){let s=t&&!nm(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 or(Nt(t)),l=r||this.parentInjector;if(!i&&c.ngModule==null){let D=(s?l:this.parentInjector).get(Te,null);D&&(i=D)}let u=Nt(c.componentType??{}),d=nr(this._lContainer,u?.id??null),g=d?.firstChild??null,m=c.create(l,o,g,i);return this.insertImpl(m.hostView,a,tr(this._hostTNode,d)),m}insert(t,n){return this.insertImpl(t,n,!0)}insertImpl(t,n,r){let o=t._lView;if(hm(o)){let a=this.indexOf(t);if(a!==-1)this.detach(a);else{let c=o[ce],l=new kf(c,c[He],c[ce]);l.detach(l.indexOf(t))}}let i=this._adjustIndex(n),s=this._lContainer;return ni(s,o,i,r),t.attachToViewContainerRef(),Wu(ls(s),i,t),t}move(t,n){return this.insert(t,n)}indexOf(t){let n=Eu(this._lContainer);return n!==null?n.indexOf(t):-1}remove(t){let n=this._adjustIndex(t,-1),r=er(this._lContainer,n);r&&(wo(ls(this._lContainer),n),Qo(r[M],r))}detach(t){let n=this._adjustIndex(t,-1),r=er(this._lContainer,n);return r&&wo(ls(this._lContainer),n)!=null?new Ft(r):null}_adjustIndex(t,n=0){return t??this.length+n}};function Eu(e){return e[Co]}function ls(e){return e[Co]||(e[Co]=[])}function Ff(e,t){let n,r=t[e.index];return ut(r)?n=r:(n=_f(r,t,null,e),t[e.index]=n,ei(t,n)),c0(n,t,e,r),new kf(n,e,t)}function a0(e,t){let n=e[re],r=n.createComment(""),o=ze(t,e),i=qa(n,o);return Io(n,i,r,Gv(n,o),!1),r}var c0=d0,l0=()=>!1;function u0(e,t,n){return l0(e,t,n)}function d0(e,t,n,r){if(e[Pt])return;let o;n.type&8?o=Qe(r):o=a0(t,n),e[Pt]=o}var qs=class e{constructor(t){this.queryList=t,this.matches=null}clone(){return new e(this.queryList)}setDirty(){this.queryList.setDirty()}},Gs=class e{constructor(t=[]){this.queries=t}createEmbeddedView(t){let n=t.queries;if(n!==null){let r=t.contentQueries!==null?t.contentQueries[0]:n.length,o=[];for(let i=0;i0)r.push(s[a/2]);else{let l=i[a+1],u=t[-c];for(let d=fe;dt.trim())}function _0(e,t,n){e.queries===null&&(e.queries=new Ys),e.queries.track(new Zs(t,n))}function nc(e,t){return e.queries.getByIndex(t)}function C0(e,t){let n=e[M],r=nc(n,t);return r.crossesNgTemplate?Qs(n,e,t,[]):Lf(n,e,r,t)}var Ct=class{},ir=class{};var Ks=class extends Ct{constructor(t,n,r){super(),this._parent=n,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new To(this);let o=td(t);this._bootstrapComponents=of(o.bootstrap),this._r3Injector=Ld(t,n,[{provide:Ct,useValue:this},{provide:oi,useValue:this.componentFactoryResolver},...r],pe(t),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(t)}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)}},Js=class extends ir{constructor(t){super(),this.moduleType=t}create(t){return new Ks(this.moduleType,t,[])}};var Ao=class extends Ct{constructor(t){super(),this.componentFactoryResolver=new To(this),this.instance=null;let n=new Wn([...t.providers,{provide:Ct,useValue:this},{provide:oi,useValue:this.componentFactoryResolver}],t.parent||xa(),t.debugName,new Set(["environment"]));this.injector=n,t.runEnvironmentInitializers&&n.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}};function rc(e,t,n=null){return new Ao({providers:e,parent:t,debugName:n,runEnvironmentInitializers:!0}).injector}var ai=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new X(!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.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function jf(e){return b0(e)?Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e:!1}function D0(e,t){if(Array.isArray(e))for(let n=0;n>17&32767}function N0(e){return(e&2)==2}function R0(e,t){return e&131071|t<<17}function ea(e){return e|2}function bn(e){return(e&131068)>>2}function us(e,t){return e&-131069|t<<2}function P0(e){return(e&1)===1}function ta(e){return e|1}function k0(e,t,n,r,o,i){let s=i?t.classBindings:t.styleBindings,a=jt(s),c=bn(s);e[r]=n;let l=!1,u;if(Array.isArray(n)){let d=n;u=d[1],(u===null||cr(d,u)>0)&&(l=!0)}else u=n;if(o)if(c!==0){let g=jt(e[a+1]);e[r+1]=lo(g,a),g!==0&&(e[g+1]=us(e[g+1],r)),e[a+1]=R0(e[a+1],r)}else e[r+1]=lo(a,0),a!==0&&(e[a+1]=us(e[a+1],r)),a=r;else e[r+1]=lo(c,0),a===0?a=r:e[c+1]=us(e[c+1],r),c=r;l&&(e[r+1]=ea(e[r+1])),Mu(e,u,r,!0),Mu(e,u,r,!1),F0(t,u,e,r,i),s=lo(a,c),i?t.classBindings=s:t.styleBindings=s}function F0(e,t,n,r,o){let i=o?e.residualClasses:e.residualStyles;i!=null&&typeof t=="string"&&cr(i,t)>=0&&(n[r+1]=ta(n[r+1]))}function Mu(e,t,n,r){let o=e[n+1],i=t===null,s=r?jt(o):bn(o),a=!1;for(;s!==0&&(a===!1||i);){let c=e[s],l=e[s+1];L0(c,t)&&(a=!0,e[s+1]=r?ta(l):ea(l)),s=r?jt(l):bn(l)}a&&(e[n+1]=r?ea(o):ta(o))}function L0(e,t){return e===null||t==null||(Array.isArray(e)?e[1]:e)===t?!0:Array.isArray(e)&&typeof t=="string"?cr(e,t)>=0:!1}var Ve={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function j0(e){return e.substring(Ve.key,Ve.keyEnd)}function V0(e){return $0(e),Vf(e,$f(e,0,Ve.textEnd))}function Vf(e,t){let n=Ve.textEnd;return n===t?-1:(t=Ve.keyEnd=B0(e,Ve.key=t,n),$f(e,t,n))}function $0(e){Ve.key=0,Ve.keyEnd=0,Ve.value=0,Ve.valueEnd=0,Ve.textEnd=e.length}function $f(e,t,n){for(;t32;)t++;return t}function S(e,t,n){let r=$(),o=zo();if(ct(r,o,t)){let i=be(),s=Rm();dy(i,s,r,e,t,r[re],n,!1)}return S}function na(e,t,n,r,o){let i=t.inputs,s=o?"class":"style";Ja(e,n,i[s],s,r)}function ci(e,t,n){return Uf(e,t,n,!1),ci}function pt(e,t){return Uf(e,t,null,!0),pt}function Bf(e){H0(Z0,U0,e,!0)}function U0(e,t){for(let n=V0(t);n>=0;n=Vf(t,n))_a(e,j0(t),!0)}function Uf(e,t,n,r){let o=$(),i=be(),s=Na(2);if(i.firstUpdatePass&&zf(i,e,s,r),t!==Oe&&ct(o,s,t)){let a=i.data[dt()];qf(i,a,o,o[re],e,o[s+1]=K0(t,n),r,s)}}function H0(e,t,n,r){let o=be(),i=Na(2);o.firstUpdatePass&&zf(o,null,i,r);let s=$();if(n!==Oe&&ct(s,i,n)){let a=o.data[dt()];if(Gf(a,r)&&!Hf(o,i)){let c=r?a.classesWithoutHost:a.stylesWithoutHost;c!==null&&(n=ps(c,n||"")),na(o,a,s,n,r)}else Q0(o,a,s,s[re],s[i+1],s[i+1]=Y0(e,t,n),r,i)}}function Hf(e,t){return t>=e.expandoStartIndex}function zf(e,t,n,r){let o=e.data;if(o[n+1]===null){let i=o[dt()],s=Hf(e,n);Gf(i,r)&&t===null&&!s&&(t=!1),t=z0(o,i,t,r),k0(o,i,t,n,s,r)}}function z0(e,t,n,r){let o=Am(e),i=r?t.residualClasses:t.residualStyles;if(o===null)(r?t.classBindings:t.styleBindings)===0&&(n=ds(null,e,t,n,r),n=sr(n,t.attrs,r),i=null);else{let s=t.directiveStylingLast;if(s===-1||e[s]!==o)if(n=ds(o,e,t,n,r),i===null){let c=q0(e,t,r);c!==void 0&&Array.isArray(c)&&(c=ds(null,e,t,c[1],r),c=sr(c,t.attrs,r),G0(e,t,r,c))}else i=W0(e,t,r)}return i!==void 0&&(r?t.residualClasses=i:t.residualStyles=i),n}function q0(e,t,n){let r=n?t.classBindings:t.styleBindings;if(bn(r)!==0)return e[jt(r)]}function G0(e,t,n,r){let o=n?t.classBindings:t.styleBindings;e[jt(o)]=r}function W0(e,t,n){let r,o=t.directiveEnd;for(let i=1+t.directiveStylingLast;i0;){let c=e[o],l=Array.isArray(c),u=l?c[1]:c,d=u===null,g=n[o+1];g===Oe&&(g=d?Ce:void 0);let m=d?es(g,r):u===r?g:void 0;if(l&&!Oo(m)&&(m=es(c,r)),Oo(m)&&(a=m,s))return a;let v=e[o+1];o=s?jt(v):bn(v)}if(t!==null){let c=i?t.residualClasses:t.residualStyles;c!=null&&(a=es(c,r))}return a}function Oo(e){return e!==void 0}function K0(e,t){return e==null||e===""||(typeof t=="string"?e=e+t:typeof e=="object"&&(e=pe(Mn(e)))),e}function Gf(e,t){return(e.flags&(t?8:16))!==0}var ra=class{destroy(t){}updateValue(t,n){}swap(t,n){let r=Math.min(t,n),o=Math.max(t,n),i=this.detach(o);if(o-r>1){let s=this.detach(r);this.attach(r,i),this.attach(o,s)}else this.attach(r,i)}move(t,n){this.attach(n,this.detach(t))}};function fs(e,t,n,r,o){return e===n&&Object.is(t,r)?1:Object.is(o(e,t),o(n,r))?-1:0}function J0(e,t,n){let r,o,i=0,s=e.length-1;if(Array.isArray(t)){let a=t.length-1;for(;i<=s&&i<=a;){let c=e.at(i),l=t[i],u=fs(i,c,i,l,n);if(u!==0){u<0&&e.updateValue(i,l),i++;continue}let d=e.at(s),g=t[a],m=fs(s,d,a,g,n);if(m!==0){m<0&&e.updateValue(s,g),s--,a--;continue}let v=n(i,c),D=n(s,d),G=n(i,l);if(Object.is(G,D)){let B=n(a,g);Object.is(B,v)?(e.swap(i,s),e.updateValue(s,g),a--,s--):e.move(s,i),e.updateValue(i,l),i++;continue}if(r??=new No,o??=Au(e,i,s,n),oa(e,r,i,G))e.updateValue(i,l),i++,s++;else if(o.has(G))r.set(v,e.detach(i)),s--;else{let B=e.create(i,t[i]);e.attach(i,B),i++,s++}}for(;i<=a;)Tu(e,r,n,i,t[i]),i++}else if(t!=null){let a=t[Symbol.iterator](),c=a.next();for(;!c.done&&i<=s;){let l=e.at(i),u=c.value,d=fs(i,l,i,u,n);if(d!==0)d<0&&e.updateValue(i,u),i++,c=a.next();else{r??=new No,o??=Au(e,i,s,n);let g=n(i,u);if(oa(e,r,i,g))e.updateValue(i,u),i++,s++,c=a.next();else if(!o.has(g))e.attach(i,e.create(i,u)),i++,s++,c=a.next();else{let m=n(i,l);r.set(m,e.detach(i)),s--}}}for(;!c.done;)Tu(e,r,n,e.length,c.value),c=a.next()}for(;i<=s;)e.destroy(e.detach(s--));r?.forEach(a=>{e.destroy(a)})}function oa(e,t,n,r){return t!==void 0&&t.has(r)?(e.attach(n,t.get(r)),t.delete(r),!0):!1}function Tu(e,t,n,r,o){if(oa(e,t,r,n(r,o)))e.updateValue(r,o);else{let i=e.create(r,o);e.attach(r,i)}}function Au(e,t,n,r){let o=new Set;for(let i=t;i<=n;i++)o.add(r(i,e.at(i)));return o}var No=class{constructor(){this.kvMap=new Map,this._vMap=void 0}has(t){return this.kvMap.has(t)}delete(t){if(!this.has(t))return!1;let n=this.kvMap.get(t);return this._vMap!==void 0&&this._vMap.has(n)?(this.kvMap.set(t,this._vMap.get(n)),this._vMap.delete(n)):this.kvMap.delete(t),!0}get(t){return this.kvMap.get(t)}set(t,n){if(this.kvMap.has(t)){let r=this.kvMap.get(t);this._vMap===void 0&&(this._vMap=new Map);let o=this._vMap;for(;o.has(r);)r=o.get(r);o.set(r,n)}else this.kvMap.set(t,n)}forEach(t){for(let[n,r]of this.kvMap)if(t(r,n),this._vMap!==void 0){let o=this._vMap;for(;o.has(r);)r=o.get(r),t(r,n)}}};function Wf(e,t,n){si("NgControlFlow");let r=$(),o=zo(),i=ca(r,De+e),s=0;if(ct(r,o,t)){let a=R(null);try{if(Mf(i,s),t!==-1){let c=la(r[M],De+t),l=nr(i,c.tView.ssrId),u=ti(r,c,n,{dehydratedView:l});ni(i,u,s,tr(c,l))}}finally{R(a)}}else{let a=Ef(i,s);a!==void 0&&(a[de]=n)}}var ia=class{constructor(t,n,r){this.lContainer=t,this.$implicit=n,this.$index=r}get $count(){return this.lContainer.length-fe}};var sa=class{constructor(t,n,r){this.hasEmptyBlock=t,this.trackByFn=n,this.liveCollection=r}};function Yf(e,t,n,r,o,i,s,a,c,l,u,d,g){si("NgControlFlow");let m=c!==void 0,v=$(),D=a?s.bind(v[Ue][de]):s,G=new sa(m,D);v[De+e]=G,W(e+1,t,n,r,o,i),m&&W(e+2,c,l,u,d,g)}var aa=class extends ra{constructor(t,n,r){super(),this.lContainer=t,this.hostLView=n,this.templateTNode=r,this.needsIndexUpdate=!1}get length(){return this.lContainer.length-fe}at(t){return this.getLView(t)[de].$implicit}attach(t,n){let r=n[Yn];this.needsIndexUpdate||=t!==this.length,ni(this.lContainer,n,t,tr(this.templateTNode,r))}detach(t){return this.needsIndexUpdate||=t!==this.length-1,X0(this.lContainer,t)}create(t,n){let r=nr(this.lContainer,this.templateTNode.tView.ssrId);return ti(this.hostLView,this.templateTNode,new ia(this.lContainer,n,t),{dehydratedView:r})}destroy(t){Qo(t[M],t)}updateValue(t,n){this.getLView(t)[de].$implicit=n}reset(){this.needsIndexUpdate=!1}updateIndexes(){if(this.needsIndexUpdate)for(let t=0;t(Go(!0),sf(r,o,Pm()));function rw(e,t,n,r,o){let i=t.consts,s=Cn(i,r),a=hr(t,e,8,"ng-container",s);s!==null&&So(a,s,!0);let c=Cn(i,o);return Ka(t,n,a,c),t.queries!==null&&t.queries.elementStart(t,a),a}function Sn(e,t,n){let r=$(),o=be(),i=e+De,s=o.firstCreatePass?rw(i,o,r,t,n):o.data[i];Ut(s,!0);let a=ow(o,r,s,e);return r[i]=a,qo()&&Ko(o,r,a,s),_t(a,r),Ho(s)&&(Ya(o,r,s),Wa(o,s,r)),n!=null&&Za(r,s),Sn}function Tn(){let e=Ae(),t=be();return Aa()?yd():(e=e.parent,Ut(e,!1)),t.firstCreatePass&&(Wo(t,e),Ea(e)&&t.queries.elementEnd(e)),Tn}function ic(e,t,n){return Sn(e,t,n),Tn(),ic}var ow=(e,t,n,r)=>(Go(!0),kv(t[re],""));function ye(){return $()}var Ro="en-US";var iw=Ro;function sw(e){typeof e=="string"&&(iw=e.toLowerCase().replace(/_/g,"-"))}function z(e,t,n,r){let o=$(),i=be(),s=Ae();return cw(i,o,o[re],s,e,t,r),z}function aw(e,t,n,r){let o=e.cleanup;if(o!=null)for(let i=0;ic?a[c]:null}typeof s=="string"&&(i+=2)}return null}function cw(e,t,n,r,o,i,s){let a=Ho(r),l=e.firstCreatePass&&bf(e),u=t[de],d=Df(t),g=!0;if(r.type&3||s){let D=ze(r,t),G=s?s(D):D,B=d.length,Et=s?et=>s(Qe(et[r.index])):r.index,me=null;if(!s&&a&&(me=aw(e,t,o,r.index)),me!==null){let et=me.__ngLastListenerFn__||me;et.__ngNextListenerFn__=i,me.__ngLastListenerFn__=i,g=!1}else{i=Nu(r,t,u,i,!1);let et=n.listen(G,o,i);d.push(i,et),l&&l.push(o,Et,B,B+1)}}else i=Nu(r,t,u,i,!1);let m=r.outputs,v;if(g&&m!==null&&(v=m[o])){let D=v.length;if(D)for(let G=0;G-1?Dt(e.index,t):t;ec(a);let c=Ou(t,n,r,s),l=i.__ngNextListenerFn__;for(;l;)c=Ou(t,n,l,s)&&c,l=l.__ngNextListenerFn__;return o&&c===!1&&s.preventDefault(),c}}function P(e=1){return Nm(e)}function Qf(e,t,n){y0(e,t,n)}function sc(e){let t=$(),n=be(),r=wd();Ra(r+1);let o=nc(n,r);if(e.dirty&&fm(t)===((o.metadata.flags&2)===2)){if(o.matches===null)e.reset([]);else{let i=C0(t,r);e.reset(i,Jm),e.notifyOnChanges()}return!0}return!1}function ac(){return m0($(),wd())}function Kf(e){let t=xm();return dm(t,De+e)}function p(e,t=""){let n=$(),r=be(),o=e+De,i=r.firstCreatePass?hr(r,o,1,t,null):r.data[o],s=lw(r,n,i,t,e);n[o]=s,qo()&&Ko(r,n,s,i),Ut(i,!1)}var lw=(e,t,n,r,o)=>(Go(!0),Rv(t[re],r));function xe(e){return Ht("",e,""),xe}function Ht(e,t,n){let r=$(),o=A0(r,e,t,n);return o!==Oe&&If(r,dt(),o),Ht}function cc(e,t,n,r,o){let i=$(),s=O0(i,e,t,n,r,o);return s!==Oe&&If(i,dt(),s),cc}var uw=(()=>{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=od(!1,n.type),o=r.length>0?rc([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=x({token:e,providedIn:"environment",factory:()=>new e(V(Te))})}}return e})();function Z(e){si("NgStandalone"),e.getStandaloneInjector=t=>t.get(uw).getOrCreateStandaloneInjector(e)}function pr(e,t,n){let r=Oa()+e,o=$();return o[r]===Oe?oc(o,r,n?t.call(n):t()):x0(o,r)}function lc(e,t,n,r){return dw($(),Oa(),e,t,n,r)}function Jf(e,t,n,r,o,i,s){return fw($(),Oa(),e,t,n,r,o,i,s)}function Xf(e,t){let n=e[t];return n===Oe?void 0:n}function dw(e,t,n,r,o,i){let s=t+n;return ct(e,s,o)?oc(e,s+1,i?r.call(i,o):r(o)):Xf(e,s+1)}function fw(e,t,n,r,o,i,s,a,c){let l=t+n;return I0(e,l,o,i,s,a)?oc(e,l+4,c?r.call(c,o,i,s,a):r(o,i,s,a)):Xf(e,l+4)}function eh(e,t){return ri(e,t)}var li=(()=>{class e{log(n){console.log(n)}warn(n){console.warn(n)}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"platform"})}}return e})();var th=new j("");function gr(e){return!!e&&typeof e.then=="function"}function nh(e){return!!e&&typeof e.subscribe=="function"}var rh=new j(""),oh=(()=>{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((n,r)=>{this.resolve=n,this.reject=r}),this.appInits=y(rh,{optional:!0})??[]}runInitializers(){if(this.initialized)return;let n=[];for(let o of this.appInits){let i=o();if(gr(i))n.push(i);else if(nh(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=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),uc=new j("");function hw(){_l(()=>{throw new b(600,!1)})}function pw(e){return e.isBoundToModule}function gw(e,t,n){try{let r=n();return gr(r)?r.catch(o=>{throw t.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}var mr=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=y(jd),this.afterRenderEffectManager=y(Pf),this.externalTestViews=new Set,this.beforeRender=new he,this.afterTick=new he,this.componentTypes=[],this.components=[],this.isStable=y(ai).hasPendingTasks.pipe(L(n=>!n)),this._injector=y(Te)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(n,r){let o=n instanceof Mo;if(!this._injector.get(oh).done){let g=!o&&ed(n),m=!1;throw new b(405,m)}let s;o?s=n:s=this._injector.get(oi).resolveComponentFactory(n),this.componentTypes.push(s.componentType);let a=pw(s)?void 0:this._injector.get(Ct),c=r||s.selector,l=s.create(dr.NULL,[],c,a),u=l.location.nativeElement,d=l.injector.get(th,null);return d?.registerApplication(u),l.onDestroy(()=>{this.detachView(l.hostView),hs(this.components,l),d?.unregisterApplication(u)}),this._loadComponent(l),l}tick(){this._tick(!0)}_tick(n){if(this._runningTick)throw new b(101,!1);let r=R(null);try{this._runningTick=!0,this.detectChangesInAttachedViews(n)}catch(o){this.internalErrorHandler(o)}finally{this.afterTick.next(),this._runningTick=!1,R(r)}}detectChangesInAttachedViews(n){let r=0,o=this.afterRenderEffectManager;for(;;){if(r===Tf)throw new b(103,!1);if(n){let i=r===0;this.beforeRender.next(i);for(let{_lView:s,notifyErrorHandler:a}of this._views)mw(s,i,a)}if(r++,o.executeInternalCallbacks(),![...this.externalTestViews.keys(),...this._views].some(({_lView:i})=>ua(i))&&(o.execute(),![...this.externalTestViews.keys(),...this._views].some(({_lView:i})=>ua(i))))break}}attachView(n){let r=n;this._views.push(r),r.attachToAppRef(this)}detachView(n){let r=n;hs(this._views,r),r.detachFromAppRef()}_loadComponent(n){this.attachView(n.hostView),this.tick(),this.components.push(n);let r=this._injector.get(uc,[]);[...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),()=>hs(this._destroyListeners,n)}destroy(){if(this._destroyed)throw new b(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=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function hs(e,t){let n=e.indexOf(t);n>-1&&e.splice(n,1)}function mw(e,t,n){!t&&!ua(e)||vw(e,n,t)}function ua(e){return Ta(e)}function vw(e,t,n){let r;n?(r=0,e[C]|=1024):e[C]&64?r=0:r=1,Af(e,t,r)}var da=class{constructor(t,n){this.ngModuleFactory=t,this.componentFactories=n}},dc=(()=>{class e{compileModuleSync(n){return new Js(n)}compileModuleAsync(n){return Promise.resolve(this.compileModuleSync(n))}compileModuleAndAllComponentsSync(n){let r=this.compileModuleSync(n),o=td(n),i=of(o.declarations).reduce((s,a)=>{let c=Nt(a);return c&&s.push(new or(c)),s},[]);return new da(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=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var yw=(()=>{class e{constructor(){this.zone=y(K),this.applicationRef=y(mr)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function ww(e){return[{provide:K,useFactory:e},{provide:yn,multi:!0,useFactory:()=>{let t=y(yw,{optional:!0});return()=>t.initialize()}},{provide:yn,multi:!0,useFactory:()=>{let t=y(bw);return()=>{t.initialize()}}},{provide:jd,useFactory:_w}]}function _w(){let e=y(K),t=y(st);return n=>e.runOutsideAngular(()=>t.handleError(n))}function Cw(e){let t=ww(()=>new K(Dw(e)));return Vo([[],t])}function Dw(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}var bw=(()=>{class e{constructor(){this.subscription=new J,this.initialized=!1,this.zone=y(K),this.pendingTasks=y(ai)}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(()=>{K.assertNotInAngularZone(),queueMicrotask(()=>{n!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(n),n=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{K.assertInAngularZone(),n??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function xw(){return typeof $localize<"u"&&$localize.locale||Ro}var fc=new j("",{providedIn:"root",factory:()=>y(fc,N.Optional|N.SkipSelf)||xw()});var ih=new j("");var mo=null;function Iw(e=[],t){return dr.create({name:t,providers:[{provide:$o,useValue:"platform"},{provide:ih,useValue:new Set([()=>mo=null])},...e]})}function Ew(e=[]){if(mo)return mo;let t=Iw(e);return mo=t,hw(),Mw(t),t}function Mw(e){e.get(Va,null)?.forEach(n=>n())}var zt=(()=>{class e{static{this.__NG_ELEMENT_ID__=Sw}}return e})();function Sw(e){return Tw(Ae(),$(),(e&16)===16)}function Tw(e,t,n){if(Uo(e)&&!n){let r=Dt(e.index,t);return new Ft(r,r)}else if(e.type&47){let r=t[Ue];return new Ft(r,t)}return null}var fa=class{constructor(){}supports(t){return jf(t)}create(t){return new ha(t)}},Aw=(e,t)=>t,ha=class{constructor(t){this.length=0,this._linkedRecords=null,this._unlinkedRecords=null,this._previousItHead=null,this._itHead=null,this._itTail=null,this._additionsHead=null,this._additionsTail=null,this._movesHead=null,this._movesTail=null,this._removalsHead=null,this._removalsTail=null,this._identityChangesHead=null,this._identityChangesTail=null,this._trackByFn=t||Aw}forEachItem(t){let n;for(n=this._itHead;n!==null;n=n._next)t(n)}forEachOperation(t){let n=this._itHead,r=this._removalsHead,o=0,i=null;for(;n||r;){let s=!r||n&&n.currentIndex{s=this._trackByFn(o,a),n===null||!Object.is(n.trackById,s)?(n=this._mismatch(n,a,s,o),r=!0):(r&&(n=this._verifyReinsertion(n,a,s,o)),Object.is(n.item,a)||this._addIdentityChange(n,a)),n=n._next,o++}),this.length=o;return this._truncate(n),this.collection=t,this.isDirty}get isDirty(){return this._additionsHead!==null||this._movesHead!==null||this._removalsHead!==null||this._identityChangesHead!==null}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;t!==null;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;t!==null;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;t!==null;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,n,r,o){let i;return t===null?i=this._itTail:(i=t._prev,this._remove(t)),t=this._unlinkedRecords===null?null:this._unlinkedRecords.get(r,null),t!==null?(Object.is(t.item,n)||this._addIdentityChange(t,n),this._reinsertAfter(t,i,o)):(t=this._linkedRecords===null?null:this._linkedRecords.get(r,o),t!==null?(Object.is(t.item,n)||this._addIdentityChange(t,n),this._moveAfter(t,i,o)):t=this._addAfter(new pa(n,r),i,o)),t}_verifyReinsertion(t,n,r,o){let i=this._unlinkedRecords===null?null:this._unlinkedRecords.get(r,null);return i!==null?t=this._reinsertAfter(i,t._prev,o):t.currentIndex!=o&&(t.currentIndex=o,this._addToMoves(t,o)),t}_truncate(t){for(;t!==null;){let n=t._next;this._addToRemovals(this._unlink(t)),t=n}this._unlinkedRecords!==null&&this._unlinkedRecords.clear(),this._additionsTail!==null&&(this._additionsTail._nextAdded=null),this._movesTail!==null&&(this._movesTail._nextMoved=null),this._itTail!==null&&(this._itTail._next=null),this._removalsTail!==null&&(this._removalsTail._nextRemoved=null),this._identityChangesTail!==null&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,n,r){this._unlinkedRecords!==null&&this._unlinkedRecords.remove(t);let o=t._prevRemoved,i=t._nextRemoved;return o===null?this._removalsHead=i:o._nextRemoved=i,i===null?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(t,n,r),this._addToMoves(t,r),t}_moveAfter(t,n,r){return this._unlink(t),this._insertAfter(t,n,r),this._addToMoves(t,r),t}_addAfter(t,n,r){return this._insertAfter(t,n,r),this._additionsTail===null?this._additionsTail=this._additionsHead=t:this._additionsTail=this._additionsTail._nextAdded=t,t}_insertAfter(t,n,r){let o=n===null?this._itHead:n._next;return t._next=o,t._prev=n,o===null?this._itTail=t:o._prev=t,n===null?this._itHead=t:n._next=t,this._linkedRecords===null&&(this._linkedRecords=new Po),this._linkedRecords.put(t),t.currentIndex=r,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){this._linkedRecords!==null&&this._linkedRecords.remove(t);let n=t._prev,r=t._next;return n===null?this._itHead=r:n._next=r,r===null?this._itTail=n:r._prev=n,t}_addToMoves(t,n){return t.previousIndex===n||(this._movesTail===null?this._movesTail=this._movesHead=t:this._movesTail=this._movesTail._nextMoved=t),t}_addToRemovals(t){return this._unlinkedRecords===null&&(this._unlinkedRecords=new Po),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,this._removalsTail===null?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,n){return t.item=n,this._identityChangesTail===null?this._identityChangesTail=this._identityChangesHead=t:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=t,t}},pa=class{constructor(t,n){this.item=t,this.trackById=n,this.currentIndex=null,this.previousIndex=null,this._nextPrevious=null,this._prev=null,this._next=null,this._prevDup=null,this._nextDup=null,this._prevRemoved=null,this._nextRemoved=null,this._nextAdded=null,this._nextMoved=null,this._nextIdentityChange=null}},ga=class{constructor(){this._head=null,this._tail=null}add(t){this._head===null?(this._head=this._tail=t,t._nextDup=null,t._prevDup=null):(this._tail._nextDup=t,t._prevDup=this._tail,t._nextDup=null,this._tail=t)}get(t,n){let r;for(r=this._head;r!==null;r=r._nextDup)if((n===null||n<=r.currentIndex)&&Object.is(r.trackById,t))return r;return null}remove(t){let n=t._prevDup,r=t._nextDup;return n===null?this._head=r:n._nextDup=r,r===null?this._tail=n:r._prevDup=n,this._head===null}},Po=class{constructor(){this.map=new Map}put(t){let n=t.trackById,r=this.map.get(n);r||(r=new ga,this.map.set(n,r)),r.add(t)}get(t,n){let r=t,o=this.map.get(r);return o?o.get(t,n):null}remove(t){let n=t.trackById;return this.map.get(n).remove(t)&&this.map.delete(n),t}get isEmpty(){return this.map.size===0}clear(){this.map.clear()}};function Ru(e,t,n){let r=e.previousIndex;if(r===null)return r;let o=0;return n&&r{class e{static{this.\u0275prov=x({token:e,providedIn:"root",factory:Pu})}constructor(n){this.factories=n}static create(n,r){if(r!=null){let o=r.factories.slice();n=n.concat(o)}return new e(n)}static extend(n){return{provide:e,useFactory:r=>e.create(n,r||Pu()),deps:[[e,new Gu,new ya]]}}find(n){let r=this.factories.find(o=>o.supports(n));if(r!=null)return r;throw new b(901,!1)}}return e})();function sh(e){try{let{rootComponent:t,appProviders:n,platformProviders:r}=e,o=Ew(r),i=[Cw(),...n||[]],a=new Ao({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,c=a.get(K);return c.run(()=>{a.resolveInjectorInitializers();let l=a.get(st,null),u;c.runOutsideAngular(()=>{u=c.onError.subscribe({next:m=>{l.handleError(m)}})});let d=()=>a.destroy(),g=o.get(ih);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),gw(l,c,()=>{let m=a.get(oh);return m.runInitializers(),m.donePromise.then(()=>{let v=a.get(fc,Ro);sw(v||Ro);let D=a.get(mr);return t!==void 0&&D.bootstrap(t),D})})})}catch(t){return Promise.reject(t)}}var hh=null;function An(){return hh}function ph(e){hh??=e}var ui=class{};var Ne=new j(""),gh=(()=>{class e{historyGo(n){throw new Error("")}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:()=>y(Pw),providedIn:"platform"})}}return e})();var Pw=(()=>{class e extends gh{constructor(){super(),this._doc=y(Ne),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return An().getBaseHref(this._doc)}onPopState(n){let r=An().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",n,!1),()=>r.removeEventListener("popstate",n)}onHashChange(n){let r=An().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=x({token:e,factory:()=>new e,providedIn:"platform"})}}return e})();function mh(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 ah(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 qt(e){return e&&e[0]!=="?"?"?"+e:e}var fi=(()=>{class e{historyGo(n){throw new Error("")}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:()=>y(vh),providedIn:"root"})}}return e})(),kw=new j(""),vh=(()=>{class e extends fi{constructor(n,r){super(),this._platformLocation=n,this._removeListenerFns=[],this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??y(Ne).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 mh(this._baseHref,n)}path(n=!1){let r=this._platformLocation.pathname+qt(this._platformLocation.search),o=this._platformLocation.hash;return o&&n?`${r}${o}`:r}pushState(n,r,o,i){let s=this.prepareExternalUrl(o+qt(i));this._platformLocation.pushState(n,r,s)}replaceState(n,r,o,i){let s=this.prepareExternalUrl(o+qt(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)(V(gh),V(kw,8))}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var vr=(()=>{class e{constructor(n){this._subject=new ue,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=n;let r=this._locationStrategy.getBaseHref();this._basePath=jw(ah(ch(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+qt(r))}normalize(n){return e.stripTrailingSlash(Lw(this._basePath,ch(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+qt(r)),o)}replaceState(n,r="",o=null){this._locationStrategy.replaceState(o,"",n,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+qt(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=qt}static{this.joinWithSlash=mh}static{this.stripTrailingSlash=ah}static{this.\u0275fac=function(r){return new(r||e)(V(fi))}}static{this.\u0275prov=x({token:e,factory:()=>Fw(),providedIn:"root"})}}return e})();function Fw(){return new vr(V(fi))}function Lw(e,t){if(!e||!t.startsWith(e))return t;let n=t.substring(e.length);return n===""||["/",";","?","#"].includes(n[0])?n:t}function ch(e){return e.replace(/\/index.html$/,"")}function jw(e){if(new RegExp("^(https?:)?//").test(e)){let[,n]=e.split(/\/\/[^\/]+/);return n}return e}function yh(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 pc=/\s+/,lh=[],wh=(()=>{class e{constructor(n,r){this._ngEl=n,this._renderer=r,this.initialClasses=lh,this.stateMap=new Map}set klass(n){this.initialClasses=n!=null?n.trim().split(pc):lh}set ngClass(n){this.rawClass=typeof n=="string"?n.trim().split(pc):n}ngDoCheck(){for(let r of this.initialClasses)this._updateState(r,!0);let n=this.rawClass;if(Array.isArray(n)||n instanceof Set)for(let r of n)this._updateState(r,!0);else if(n!=null)for(let r of Object.keys(n))this._updateState(r,!!n[r]);this._applyStateDiff()}_updateState(n,r){let o=this.stateMap.get(n);o!==void 0?(o.enabled!==r&&(o.changed=!0,o.enabled=r),o.touched=!0):this.stateMap.set(n,{enabled:r,changed:!0,touched:!0})}_applyStateDiff(){for(let n of this.stateMap){let r=n[0],o=n[1];o.changed?(this._toggleClass(r,o.enabled),o.changed=!1):o.touched||(o.enabled&&this._toggleClass(r,!1),this.stateMap.delete(r)),o.touched=!1}}_toggleClass(n,r){n=n.trim(),n.length>0&&n.split(pc).forEach(o=>{r?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}static{this.\u0275fac=function(r){return new(r||e)(se(Ke),se(ii))}}static{this.\u0275dir=Vt({type:e,selectors:[["","ngClass",""]],inputs:{klass:[ot.None,"class","klass"],ngClass:"ngClass"},standalone:!0})}}return e})();var gc=class{constructor(t,n,r,o){this.$implicit=t,this.ngForOf=n,this.index=r,this.count=o}get first(){return this.index===0}get last(){return this.index===this.count-1}get even(){return this.index%2===0}get odd(){return!this.even}},hi=(()=>{class e{set ngForOf(n){this._ngForOf=n,this._ngForOfDirty=!0}set ngForTrackBy(n){this._trackByFn=n}get ngForTrackBy(){return this._trackByFn}constructor(n,r,o){this._viewContainer=n,this._template=r,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(n){n&&(this._template=n)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;let n=this._ngForOf;if(!this._differ&&n)if(0)try{}catch{}else this._differ=this._differs.find(n).create(this.ngForTrackBy)}if(this._differ){let n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}}_applyChanges(n){let r=this._viewContainer;n.forEachOperation((o,i,s)=>{if(o.previousIndex==null)r.createEmbeddedView(this._template,new gc(o.item,this._ngForOf,-1,-1),s===null?void 0:s);else if(s==null)r.remove(i===null?void 0:i);else if(i!==null){let a=r.get(i);r.move(a,s),uh(a,o)}});for(let o=0,i=r.length;o{let i=r.get(o.currentIndex);uh(i,o)})}static ngTemplateContextGuard(n,r){return!0}static{this.\u0275fac=function(r){return new(r||e)(se(ht),se(Lt),se(hc))}}static{this.\u0275dir=Vt({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}}return e})();function uh(e,t){e.context.$implicit=t.item}var On=(()=>{class e{constructor(n,r){this._viewContainer=n,this._context=new mc,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=r}set ngIf(n){this._context.$implicit=this._context.ngIf=n,this._updateView()}set ngIfThen(n){dh("ngIfThen",n),this._thenTemplateRef=n,this._thenViewRef=null,this._updateView()}set ngIfElse(n){dh("ngIfElse",n),this._elseTemplateRef=n,this._elseViewRef=null,this._updateView()}_updateView(){this._context.$implicit?this._thenViewRef||(this._viewContainer.clear(),this._elseViewRef=null,this._thenTemplateRef&&(this._thenViewRef=this._viewContainer.createEmbeddedView(this._thenTemplateRef,this._context))):this._elseViewRef||(this._viewContainer.clear(),this._thenViewRef=null,this._elseTemplateRef&&(this._elseViewRef=this._viewContainer.createEmbeddedView(this._elseTemplateRef,this._context)))}static ngTemplateContextGuard(n,r){return!0}static{this.\u0275fac=function(r){return new(r||e)(se(ht),se(Lt))}}static{this.\u0275dir=Vt({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}}return e})(),mc=class{constructor(){this.$implicit=null,this.ngIf=null}};function dh(e,t){if(!!!(!t||t.createEmbeddedView))throw new Error(`${e} must be a TemplateRef, but received '${pe(t)}'.`)}var _h=(()=>{class e{constructor(n){this._viewContainerRef=n,this._viewRef=null,this.ngTemplateOutletContext=null,this.ngTemplateOutlet=null,this.ngTemplateOutletInjector=null}ngOnChanges(n){if(this._shouldRecreateView(n)){let r=this._viewContainerRef;if(this._viewRef&&r.remove(r.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let o=this._createContextForwardProxy();this._viewRef=r.createEmbeddedView(this.ngTemplateOutlet,o,{injector:this.ngTemplateOutletInjector??void 0})}}_shouldRecreateView(n){return!!n.ngTemplateOutlet||!!n.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(n,r,o)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,r,o):!1,get:(n,r,o)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,r,o)}})}static{this.\u0275fac=function(r){return new(r||e)(se(ht))}}static{this.\u0275dir=Vt({type:e,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},standalone:!0,features:[Bt]})}}return e})();var Gt=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275mod=jo({type:e})}static{this.\u0275inj=ko({})}}return e})(),Ch="browser",Vw="server";function vc(e){return e===Vw}var di=class{};var Cc=class extends ui{constructor(){super(...arguments),this.supportsDOMEvents=!0}},Dc=class e extends Cc{static makeCurrent(){ph(new e)}onAndCancel(t,n,r){return t.addEventListener(n,r),()=>{t.removeEventListener(n,r)}}dispatchEvent(t,n){t.dispatchEvent(n)}remove(t){t.parentNode&&t.parentNode.removeChild(t)}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=$w();return n==null?null:Bw(n)}resetBaseElement(){yr=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return yh(document.cookie,t)}},yr=null;function $w(){return yr=yr||document.querySelector("base"),yr?yr.getAttribute("href"):null}function Bw(e){return new URL(e,document.baseURI).pathname}var Uw=(()=>{class e{build(){return new XMLHttpRequest}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac})}}return e})(),bc=new j(""),Ih=(()=>{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 b(5101,!1);return this._eventNameToPlugin.set(n,r),r}static{this.\u0275fac=function(r){return new(r||e)(V(bc),V(K))}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac})}}return e})(),pi=class{constructor(t){this._doc=t}},wc="ng-app-id",Eh=(()=>{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=vc(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[${wc}="${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(wc),i;{let s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(wc,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)(V(Ne),V(ja),V($a,8),V(En))}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac})}}return e})(),_c={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/MathML/"},Ic=/%COMP%/g,Mh="%COMP%",Hw=`_nghost-${Mh}`,zw=`_ngcontent-${Mh}`,qw=!0,Gw=new j("",{providedIn:"root",factory:()=>qw});function Ww(e){return zw.replace(Ic,e)}function Yw(e){return Hw.replace(Ic,e)}function Sh(e,t){return t.map(n=>n.replace(Ic,e))}var Dh=(()=>{class e{constructor(n,r,o,i,s,a,c,l=null){this.eventManager=n,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=c,this.nonce=l,this.rendererByCompId=new Map,this.platformIsServer=vc(a),this.defaultRenderer=new wr(n,s,c,this.platformIsServer)}createRenderer(n,r){if(!n||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===Ze.ShadowDom&&(r=Q(_({},r),{encapsulation:Ze.Emulated}));let o=this.getOrCreateRenderer(n,r);return o instanceof gi?o.applyToHost(n):o instanceof _r&&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,l=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case Ze.Emulated:i=new gi(c,l,r,this.appId,u,s,a,d);break;case Ze.ShadowDom:return new xc(c,l,n,r,s,a,this.nonce,d);default:i=new _r(c,l,r,u,s,a,d);break}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static{this.\u0275fac=function(r){return new(r||e)(V(Ih),V(Eh),V(ja),V(Gw),V(Ne),V(En),V(K),V($a))}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac})}}return e})(),wr=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(_c[n]||n,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,n){(bh(t)?t.content:t).appendChild(n)}insertBefore(t,n,r){t&&(bh(t)?t.content:t).insertBefore(n,r)}removeChild(t,n){t&&t.removeChild(n)}selectRootElement(t,n){let r=typeof t=="string"?this.doc.querySelector(t):t;if(!r)throw new b(-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=_c[o];i?t.setAttributeNS(i,n,r):t.setAttribute(n,r)}else t.setAttribute(n,r)}removeAttribute(t,n,r){if(r){let o=_c[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&(at.DashCase|at.Important)?t.style.setProperty(n,r,o&at.Important?"important":""):t.style[n]=r}removeStyle(t,n,r){r&at.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=An().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 bh(e){return e.tagName==="TEMPLATE"&&e.content!==void 0}var xc=class extends wr{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 l=Sh(o.id,o.styles);for(let u of l){let d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=u,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(this.nodeOrShadowRoot(t),n)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},_r=class extends wr{constructor(t,n,r,o,i,s,a,c){super(t,i,s,a),this.sharedStylesHost=n,this.removeStylesOnCompDestroy=o,this.styles=c?Sh(c,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}},gi=class extends _r{constructor(t,n,r,o,i,s,a,c){let l=o+"-"+r.id;super(t,n,r,i,s,a,c,l),this.contentAttr=Ww(l),this.hostAttr=Yw(l)}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}},Zw=(()=>{class e extends pi{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)(V(Ne))}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac})}}return e})(),xh=["alt","control","meta","shift"],Qw={"\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"},Kw={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey},Jw=(()=>{class e extends pi{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(()=>An().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."),xh.forEach(l=>{let u=r.indexOf(l);u>-1&&(r.splice(u,1),s+=l+".")}),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=Qw[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"),xh.forEach(s=>{if(s!==o){let a=Kw[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)(V(Ne))}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac})}}return e})();function Th(e,t){return sh(_({rootComponent:e},Xw(t)))}function Xw(e){return{appProviders:[...o_,...e?.providers??[]],platformProviders:r_}}function e_(){Dc.makeCurrent()}function t_(){return new st}function n_(){return qd(document),document}var r_=[{provide:En,useValue:Ch},{provide:Va,useValue:e_,multi:!0},{provide:Ne,useFactory:n_,deps:[]}];var o_=[{provide:$o,useValue:"root"},{provide:st,useFactory:t_,deps:[]},{provide:bc,useClass:Zw,multi:!0,deps:[Ne,K,En]},{provide:bc,useClass:Jw,multi:!0,deps:[Ne]},Dh,Eh,Ih,{provide:rr,useExisting:Dh},{provide:di,useClass:Uw,deps:[]},[]];var Ah=(()=>{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)(V(Ne))}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var T="primary",kr=Symbol("RouteTitle"),Ac=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 Fn(e){return new Ac(e)}function s_(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 Lh(e){return e.length>0?e[e.length-1]:null}function It(e){return Wi(e)?e:gr(e)?ee(Promise.resolve(e)):E(e)}var c_={exact:Vh,subset:$h},jh={exact:l_,subset:u_,ignored:()=>!0};function Oh(e,t,n){return c_[n.paths](e.root,t.root,n.matrixParams)&&jh[n.queryParams](e.queryParams,t.queryParams)&&!(n.fragment==="exact"&&e.fragment!==t.fragment)}function l_(e,t){return Je(e,t)}function Vh(e,t,n){if(!Yt(e.segments,t.segments)||!yi(e.segments,t.segments,n)||e.numberOfChildren!==t.numberOfChildren)return!1;for(let r in t.children)if(!e.children[r]||!Vh(e.children[r],t.children[r],n))return!1;return!0}function u_(e,t){return Object.keys(t).length<=Object.keys(e).length&&Object.keys(t).every(n=>Fh(e[n],t[n]))}function $h(e,t,n){return Bh(e,t,t.segments,n)}function Bh(e,t,n,r){if(e.segments.length>n.length){let o=e.segments.slice(0,n.length);return!(!Yt(o,n)||t.hasChildren()||!yi(o,n,r))}else if(e.segments.length===n.length){if(!Yt(e.segments,n)||!yi(e.segments,n,r))return!1;for(let o in t.children)if(!e.children[o]||!$h(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!Yt(e.segments,o)||!yi(e.segments,o,r)||!e.children[T]?!1:Bh(e.children[T],t,i,r)}}function yi(e,t,n){return t.every((r,o)=>jh[n](e[o].parameters,r.parameters))}var bt=class{constructor(t=new U([],{}),n={},r=null){this.root=t,this.queryParams=n,this.fragment=r}get queryParamMap(){return this._queryParamMap??=Fn(this.queryParams),this._queryParamMap}toString(){return h_.serialize(this)}},U=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 wi(this)}},Wt=class{constructor(t,n){this.path=t,this.parameters=n}get parameterMap(){return this._parameterMap??=Fn(this.parameters),this._parameterMap}toString(){return Hh(this)}};function d_(e,t){return Yt(e,t)&&e.every((n,r)=>Je(n.parameters,t[r].parameters))}function Yt(e,t){return e.length!==t.length?!1:e.every((n,r)=>n.path===t[r].path)}function f_(e,t){let n=[];return Object.entries(e.children).forEach(([r,o])=>{r===T&&(n=n.concat(t(o,r)))}),Object.entries(e.children).forEach(([r,o])=>{r!==T&&(n=n.concat(t(o,r)))}),n}var rl=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:()=>new Ci,providedIn:"root"})}}return e})(),Ci=class{parse(t){let n=new Rc(t);return new bt(n.parseRootSegment(),n.parseQueryParams(),n.parseFragment())}serialize(t){let n=`/${Cr(t.root,!0)}`,r=m_(t.queryParams),o=typeof t.fragment=="string"?`#${p_(t.fragment)}`:"";return`${n}${r}${o}`}},h_=new Ci;function wi(e){return e.segments.map(t=>Hh(t)).join("/")}function Cr(e,t){if(!e.hasChildren())return wi(e);if(t){let n=e.children[T]?Cr(e.children[T],!1):"",r=[];return Object.entries(e.children).forEach(([o,i])=>{o!==T&&r.push(`${o}:${Cr(i,!1)}`)}),r.length>0?`${n}(${r.join("//")})`:n}else{let n=f_(e,(r,o)=>o===T?[Cr(e.children[T],!1)]:[`${o}:${Cr(r,!1)}`]);return Object.keys(e.children).length===1&&e.children[T]!=null?`${wi(e)}/${n[0]}`:`${wi(e)}/(${n.join("//")})`}}function Uh(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function mi(e){return Uh(e).replace(/%3B/gi,";")}function p_(e){return encodeURI(e)}function Nc(e){return Uh(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function _i(e){return decodeURIComponent(e)}function Nh(e){return _i(e.replace(/\+/g,"%20"))}function Hh(e){return`${Nc(e.path)}${g_(e.parameters)}`}function g_(e){return Object.entries(e).map(([t,n])=>`;${Nc(t)}=${Nc(n)}`).join("")}function m_(e){let t=Object.entries(e).map(([n,r])=>Array.isArray(r)?r.map(o=>`${mi(n)}=${mi(o)}`).join("&"):`${mi(n)}=${mi(r)}`).filter(n=>n);return t.length?`?${t.join("&")}`:""}var v_=/^[^\/()?;#]+/;function Ec(e){let t=e.match(v_);return t?t[0]:""}var y_=/^[^\/()?;=#]+/;function w_(e){let t=e.match(y_);return t?t[0]:""}var __=/^[^=?&#]+/;function C_(e){let t=e.match(__);return t?t[0]:""}var D_=/^[^&#]+/;function b_(e){let t=e.match(D_);return t?t[0]:""}var Rc=class{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new U([],{}):new U([],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[T]=new U(t,n)),r}parseSegment(){let t=Ec(this.remaining);if(t===""&&this.peekStartsWith(";"))throw new b(4009,!1);return this.capture(t),new Wt(_i(t),this.parseMatrixParams())}parseMatrixParams(){let t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){let n=w_(this.remaining);if(!n)return;this.capture(n);let r="";if(this.consumeOptional("=")){let o=Ec(this.remaining);o&&(r=o,this.capture(r))}t[_i(n)]=_i(r)}parseQueryParam(t){let n=C_(this.remaining);if(!n)return;this.capture(n);let r="";if(this.consumeOptional("=")){let s=b_(this.remaining);s&&(r=s,this.capture(r))}let o=Nh(n),i=Nh(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=Ec(this.remaining),o=this.remaining[r.length];if(o!=="/"&&o!==")"&&o!==";")throw new b(4010,!1);let i;r.indexOf(":")>-1?(i=r.slice(0,r.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=T);let s=this.parseChildren();n[i]=Object.keys(s).length===1?s[T]:new U([],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 b(4011,!1)}};function zh(e){return e.segments.length>0?new U([],{[T]:e}):e}function qh(e){let t={};for(let[r,o]of Object.entries(e.children)){let i=qh(o);if(r===T&&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 U(e.segments,t);return x_(n)}function x_(e){if(e.numberOfChildren===1&&e.children[T]){let t=e.children[T];return new U(e.segments.concat(t.segments),t.children)}return e}function Ln(e){return e instanceof bt}function I_(e,t,n=null,r=null){let o=Gh(e);return Wh(o,t,n,r)}function Gh(e){let t;function n(i){let s={};for(let c of i.children){let l=n(c);s[c.outlet]=l}let a=new U(i.url,s);return i===e&&(t=a),a}let r=n(e.root),o=zh(r);return t??o}function Wh(e,t,n,r){let o=e;for(;o.parent;)o=o.parent;if(t.length===0)return Mc(o,o,o,n,r);let i=E_(t);if(i.toRoot())return Mc(o,o,new U([],{}),n,r);let s=M_(i,o,e),a=s.processChildren?xr(s.segmentGroup,s.index,i.commands):Zh(s.segmentGroup,s.index,i.commands);return Mc(o,s.segmentGroup,a,n,r)}function Di(e){return typeof e=="object"&&e!=null&&!e.outlets&&!e.segmentPath}function Mr(e){return typeof e=="object"&&e!=null&&e.outlets}function Mc(e,t,n,r,o){let i={};r&&Object.entries(r).forEach(([c,l])=>{i[c]=Array.isArray(l)?l.map(u=>`${u}`):`${l}`});let s;e===t?s=n:s=Yh(e,t,n);let a=zh(qh(s));return new bt(a,i,o)}function Yh(e,t,n){let r={};return Object.entries(e.children).forEach(([o,i])=>{i===t?r[o]=n:r[o]=Yh(i,t,n)}),new U(e.segments,r)}var bi=class{constructor(t,n,r){if(this.isAbsolute=t,this.numberOfDoubleDots=n,this.commands=r,t&&r.length>0&&Di(r[0]))throw new b(4003,!1);let o=r.find(Mr);if(o&&o!==Lh(r))throw new b(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function E_(e){if(typeof e[0]=="string"&&e.length===1&&e[0]==="/")return new bi(!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,l])=>{a[c]=typeof l=="string"?l.split("/"):l}),[...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 bi(n,t,r)}var Pn=class{constructor(t,n,r){this.segmentGroup=t,this.processChildren=n,this.index=r}};function M_(e,t,n){if(e.isAbsolute)return new Pn(t,!0,0);if(!n)return new Pn(t,!1,NaN);if(n.parent===null)return new Pn(n,!0,0);let r=Di(e.commands[0])?0:1,o=n.segments.length-1+r;return S_(n,o,e.numberOfDoubleDots)}function S_(e,t,n){let r=e,o=t,i=n;for(;i>o;){if(i-=o,r=r.parent,!r)throw new b(4005,!1);o=r.segments.length}return new Pn(r,!1,o-i)}function T_(e){return Mr(e[0])?e[0].outlets:{[T]:e}}function Zh(e,t,n){if(e??=new U([],{}),e.segments.length===0&&e.hasChildren())return xr(e,t,n);let r=A_(e,t,n),o=n.slice(r.commandIndex);if(r.match&&r.pathIndexi!==T)&&e.children[T]&&e.numberOfChildren===1&&e.children[T].segments.length===0){let i=xr(e.children[T],t,n);return new U(e.segments,i.children)}return Object.entries(r).forEach(([i,s])=>{typeof s=="string"&&(s=[s]),s!==null&&(o[i]=Zh(e.children[i],t,s))}),Object.entries(e.children).forEach(([i,s])=>{r[i]===void 0&&(o[i]=s)}),new U(e.segments,o)}}function A_(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(Mr(a))break;let c=`${a}`,l=r0&&c===void 0)break;if(c&&l&&typeof l=="object"&&l.outlets===void 0){if(!Ph(c,l,s))return i;r+=2}else{if(!Ph(c,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}function Pc(e,t,n){let r=e.segments.slice(0,t),o=0;for(;o{typeof r=="string"&&(r=[r]),r!==null&&(t[n]=Pc(new U([],{}),0,r))}),t}function Rh(e){let t={};return Object.entries(e).forEach(([n,r])=>t[n]=`${r}`),t}function Ph(e,t,n){return e==n.path&&Je(t,n.parameters)}var Ir="imperative",le=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}(le||{}),Re=class{constructor(t,n){this.id=t,this.url=n}},Sr=class extends Re{constructor(t,n,r="imperative",o=null){super(t,n),this.type=le.NavigationStart,this.navigationTrigger=r,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},Zt=class extends Re{constructor(t,n,r){super(t,n),this.urlAfterRedirects=r,this.type=le.NavigationEnd}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},Ee=function(e){return e[e.Redirect=0]="Redirect",e[e.SupersededByNewNavigation=1]="SupersededByNewNavigation",e[e.NoDataFromResolver=2]="NoDataFromResolver",e[e.GuardRejected=3]="GuardRejected",e}(Ee||{}),kc=function(e){return e[e.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",e[e.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",e}(kc||{}),xt=class extends Re{constructor(t,n,r,o){super(t,n),this.reason=r,this.code=o,this.type=le.NavigationCancel}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},Qt=class extends Re{constructor(t,n,r,o){super(t,n),this.reason=r,this.code=o,this.type=le.NavigationSkipped}},Tr=class extends Re{constructor(t,n,r,o){super(t,n),this.error=r,this.target=o,this.type=le.NavigationError}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},xi=class extends Re{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=le.RoutesRecognized}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Fc=class extends Re{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=le.GuardsCheckStart}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Lc=class extends Re{constructor(t,n,r,o,i){super(t,n),this.urlAfterRedirects=r,this.state=o,this.shouldActivate=i,this.type=le.GuardsCheckEnd}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},jc=class extends Re{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=le.ResolveStart}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Vc=class extends Re{constructor(t,n,r,o){super(t,n),this.urlAfterRedirects=r,this.state=o,this.type=le.ResolveEnd}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},$c=class{constructor(t){this.route=t,this.type=le.RouteConfigLoadStart}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},Bc=class{constructor(t){this.route=t,this.type=le.RouteConfigLoadEnd}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},Uc=class{constructor(t){this.snapshot=t,this.type=le.ChildActivationStart}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Hc=class{constructor(t){this.snapshot=t,this.type=le.ChildActivationEnd}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},zc=class{constructor(t){this.snapshot=t,this.type=le.ActivationStart}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},qc=class{constructor(t){this.snapshot=t,this.type=le.ActivationEnd}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Ar=class{},Or=class{constructor(t){this.url=t}};var Gc=class{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new Ai,this.attachRef=null}},Ai=(()=>{class e{constructor(){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 Gc,this.contexts.set(n,r)),r}getContext(n){return this.contexts.get(n)||null}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),Ii=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=Wc(t,this._root);return n?n.children.map(r=>r.value):[]}firstChild(t){let n=Wc(t,this._root);return n&&n.children.length>0?n.children[0].value:null}siblings(t){let n=Yc(t,this._root);return n.length<2?[]:n[n.length-2].children.map(o=>o.value).filter(o=>o!==t)}pathFromRoot(t){return Yc(t,this._root).map(n=>n.value)}};function Wc(e,t){if(e===t.value)return t;for(let n of t.children){let r=Wc(e,n);if(r)return r}return null}function Yc(e,t){if(e===t.value)return[t];for(let n of t.children){let r=Yc(e,n);if(r.length)return r.unshift(t),r}return[]}var Ie=class{constructor(t,n){this.value=t,this.children=n}toString(){return`TreeNode(${this.value})`}};function Rn(e){let t={};return e&&e.children.forEach(n=>t[n.value.outlet]=n),t}var Ei=class extends Ii{constructor(t,n){super(t),this.snapshot=n,il(this,t)}toString(){return this.snapshot.toString()}};function Qh(e){let t=N_(e),n=new X([new Wt("",{})]),r=new X({}),o=new X({}),i=new X({}),s=new X(""),a=new jn(n,r,i,s,o,T,e,t.root);return a.snapshot=t.root,new Ei(new Ie(a,[]),t)}function N_(e){let t={},n={},r={},o="",i=new Nr([],t,r,o,n,T,e,null,{});return new Mi("",new Ie(i,[]))}var jn=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(L(l=>l[kr]))??E(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(L(t=>Fn(t))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(L(t=>Fn(t))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function ol(e,t,n="emptyOnly"){let r,{routeConfig:o}=e;return t!==null&&(n==="always"||o?.path===""||!t.component&&!t.routeConfig?.loadComponent)?r={params:_(_({},t.params),e.params),data:_(_({},t.data),e.data),resolve:_(_(_(_({},e.data),t.data),o?.data),e._resolvedData)}:r={params:_({},e.params),data:_({},e.data),resolve:_(_({},e.data),e._resolvedData??{})},o&&Jh(o)&&(r.resolve[kr]=o.title),r}var Nr=class{get title(){return this.data?.[kr]}constructor(t,n,r,o,i,s,a,c,l){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=l}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??=Fn(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=Fn(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}')`}},Mi=class extends Ii{constructor(t,n){super(n),this.url=t,il(this,n)}toString(){return Kh(this._root)}};function il(e,t){t.value._routerState=e,t.children.forEach(n=>il(e,n))}function Kh(e){let t=e.children.length>0?` { ${e.children.map(Kh).join(", ")} } `:"";return`${e.value}${t}`}function Sc(e){if(e.snapshot){let t=e.snapshot,n=e._futureSnapshot;e.snapshot=n,Je(t.queryParams,n.queryParams)||e.queryParamsSubject.next(n.queryParams),t.fragment!==n.fragment&&e.fragmentSubject.next(n.fragment),Je(t.params,n.params)||e.paramsSubject.next(n.params),a_(t.url,n.url)||e.urlSubject.next(n.url),Je(t.data,n.data)||e.dataSubject.next(n.data)}else e.snapshot=e._futureSnapshot,e.dataSubject.next(e._futureSnapshot.data)}function Zc(e,t){let n=Je(e.params,t.params)&&d_(e.url,t.url),r=!e.parent!=!t.parent;return n&&!r&&(!e.parent||Zc(e.parent,t.parent))}function Jh(e){return typeof e.title=="string"||e.title===null}var R_=(()=>{class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=T,this.activateEvents=new ue,this.deactivateEvents=new ue,this.attachEvents=new ue,this.detachEvents=new ue,this.parentContexts=y(Ai),this.location=y(ht),this.changeDetector=y(zt),this.environmentInjector=y(Te),this.inputBinder=y(sl,{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 b(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new b(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new b(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 b(4013,!1);this._activatedRoute=n;let o=this.location,s=n.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,c=new Qc(n,a,o.injector);this.activated=o.createComponent(s,{index:o.length,injector:c,environmentInjector:r??this.environmentInjector}),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=Vt({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Bt]})}}return e})(),Qc=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===jn?this.route:t===Ai?this.childContexts:this.parent.get(t,n)}},sl=new j("");function P_(e,t,n){let r=Rr(e,t._root,n?n._root:void 0);return new Ei(r,t)}function Rr(e,t,n){if(n&&e.shouldReuseRoute(t.value,n.value.snapshot)){let r=n.value;r._futureSnapshot=t.value;let o=k_(e,t,n);return new Ie(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=>Rr(e,a)),s}}let r=F_(t.value),o=t.children.map(i=>Rr(e,i));return new Ie(r,o)}}function k_(e,t,n){return t.children.map(r=>{for(let o of n.children)if(e.shouldReuseRoute(r.value,o.value.snapshot))return Rr(e,r,o);return Rr(e,r)})}function F_(e){return new jn(new X(e.url),new X(e.params),new X(e.queryParams),new X(e.fragment),new X(e.data),e.outlet,e.component,e)}var Xh="ngNavigationCancelingError";function ep(e,t){let{redirectTo:n,navigationBehaviorOptions:r}=Ln(t)?{redirectTo:t,navigationBehaviorOptions:void 0}:t,o=tp(!1,Ee.Redirect);return o.url=n,o.navigationBehaviorOptions=r,o}function tp(e,t){let n=new Error(`NavigationCancelingError: ${e||""}`);return n[Xh]=!0,n.cancellationCode=t,n}function L_(e){return np(e)&&Ln(e.url)}function np(e){return!!e&&e[Xh]}var j_=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["ng-component"]],standalone:!0,features:[Z],decls:1,vars:0,template:function(r,o){r&1&&O(0,"router-outlet")},dependencies:[R_],encapsulation:2})}}return e})();function V_(e,t){return e.providers&&!e._injector&&(e._injector=rc(e.providers,t,`Route: ${e.path}`)),e._injector??t}function al(e){let t=e.children&&e.children.map(al),n=t?Q(_({},e),{children:t}):_({},e);return!n.component&&!n.loadComponent&&(t||n.loadChildren)&&n.outlet&&n.outlet!==T&&(n.component=j_),n}function Xe(e){return e.outlet||T}function $_(e,t){let n=e.filter(r=>Xe(r)===t);return n.push(...e.filter(r=>Xe(r)!==t)),n}function Fr(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 B_=(e,t,n,r)=>L(o=>(new Kc(t,o.targetRouterState,o.currentRouterState,n,r).activate(e),o)),Kc=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),Sc(this.futureState.root),this.activateChildRoutes(n,r,t)}deactivateChildRoutes(t,n,r){let o=Rn(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=Rn(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=Rn(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=Rn(n);t.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],r),this.forwardEvent(new qc(i.value.snapshot))}),t.children.length&&this.forwardEvent(new Hc(t.value.snapshot))}activateRoutes(t,n,r){let o=t.value,i=n?n.value:null;if(Sc(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),Sc(a.route.value),this.activateChildRoutes(t,null,s.children)}else{let a=Fr(o.snapshot);s.attachRef=null,s.route=o,s.injector=a,s.outlet&&s.outlet.activateWith(o,s.injector),this.activateChildRoutes(t,null,s.children)}}else this.activateChildRoutes(t,null,r)}},Si=class{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}},kn=class{constructor(t,n){this.component=t,this.route=n}};function U_(e,t,n){let r=e._root,o=t?t._root:null;return Dr(r,o,n,[r.value])}function H_(e){let t=e.routeConfig?e.routeConfig.canActivateChild:null;return!t||t.length===0?null:{node:e,guards:t}}function $n(e,t){let n=Symbol(),r=t.get(e,n);return r===n?typeof e=="function"&&!Vu(e)?e:t.get(e):r}function Dr(e,t,n,r,o={canDeactivateChecks:[],canActivateChecks:[]}){let i=Rn(t);return e.children.forEach(s=>{z_(s,i[s.value.outlet],n,r.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>Er(a,n.getContext(s),o)),o}function z_(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=q_(s,i,i.routeConfig.runGuardsAndResolvers);c?o.canActivateChecks.push(new Si(r)):(i.data=s.data,i._resolvedData=s._resolvedData),i.component?Dr(e,t,a?a.children:null,r,o):Dr(e,t,n,r,o),c&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new kn(a.outlet.component,s))}else s&&Er(t,a,o),o.canActivateChecks.push(new Si(r)),i.component?Dr(e,null,a?a.children:null,r,o):Dr(e,null,n,r,o);return o}function q_(e,t,n){if(typeof n=="function")return n(e,t);switch(n){case"pathParamsChange":return!Yt(e.url,t.url);case"pathParamsOrQueryParamsChange":return!Yt(e.url,t.url)||!Je(e.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Zc(e,t)||!Je(e.queryParams,t.queryParams);case"paramsChange":default:return!Zc(e,t)}}function Er(e,t,n){let r=Rn(e),o=e.value;Object.entries(r).forEach(([i,s])=>{o.component?t?Er(s,t.children.getContext(i),n):Er(s,null,n):Er(s,t,n)}),o.component?t&&t.outlet&&t.outlet.isActivated?n.canDeactivateChecks.push(new kn(t.outlet.component,o)):n.canDeactivateChecks.push(new kn(null,o)):n.canDeactivateChecks.push(new kn(null,o))}function Lr(e){return typeof e=="function"}function G_(e){return typeof e=="boolean"}function W_(e){return e&&Lr(e.canLoad)}function Y_(e){return e&&Lr(e.canActivate)}function Z_(e){return e&&Lr(e.canActivateChild)}function Q_(e){return e&&Lr(e.canDeactivate)}function K_(e){return e&&Lr(e.canMatch)}function rp(e){return e instanceof tt||e?.name==="EmptyError"}var vi=Symbol("INITIAL_VALUE");function Vn(){return Le(e=>no(e.map(t=>t.pipe(nt(1),Ji(vi)))).pipe(L(t=>{for(let n of t)if(n!==!0){if(n===vi)return vi;if(n===!1||n instanceof bt)return n}return!0}),Fe(t=>t!==vi),nt(1)))}function J_(e,t){return te(n=>{let{targetSnapshot:r,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=n;return s.length===0&&i.length===0?E(Q(_({},n),{guardsResult:!0})):X_(s,r,o,e).pipe(te(a=>a&&G_(a)?eC(r,i,e,t):E(a)),L(a=>Q(_({},n),{guardsResult:a})))})}function X_(e,t,n,r){return ee(e).pipe(te(o=>iC(o.component,o.route,n,t,r)),Ge(o=>o!==!0,!0))}function eC(e,t,n,r){return ee(t).pipe(ln(o=>cn(nC(o.route.parent,r),tC(o.route,r),oC(e,o.path,n),rC(e,o.route,n))),Ge(o=>o!==!0,!0))}function tC(e,t){return e!==null&&t&&t(new zc(e)),E(!0)}function nC(e,t){return e!==null&&t&&t(new Uc(e)),E(!0)}function rC(e,t,n){let r=t.routeConfig?t.routeConfig.canActivate:null;if(!r||r.length===0)return E(!0);let o=r.map(i=>ro(()=>{let s=Fr(t)??n,a=$n(i,s),c=Y_(a)?a.canActivate(t,e):$t(s,()=>a(t,e));return It(c).pipe(Ge())}));return E(o).pipe(Vn())}function oC(e,t,n){let r=t[t.length-1],i=t.slice(0,t.length-1).reverse().map(s=>H_(s)).filter(s=>s!==null).map(s=>ro(()=>{let a=s.guards.map(c=>{let l=Fr(s.node)??n,u=$n(c,l),d=Z_(u)?u.canActivateChild(r,e):$t(l,()=>u(r,e));return It(d).pipe(Ge())});return E(a).pipe(Vn())}));return E(i).pipe(Vn())}function iC(e,t,n,r,o){let i=t&&t.routeConfig?t.routeConfig.canDeactivate:null;if(!i||i.length===0)return E(!0);let s=i.map(a=>{let c=Fr(t)??o,l=$n(a,c),u=Q_(l)?l.canDeactivate(e,t,n,r):$t(c,()=>l(e,t,n,r));return It(u).pipe(Ge())});return E(s).pipe(Vn())}function sC(e,t,n,r){let o=t.canLoad;if(o===void 0||o.length===0)return E(!0);let i=o.map(s=>{let a=$n(s,e),c=W_(a)?a.canLoad(t,n):$t(e,()=>a(t,n));return It(c)});return E(i).pipe(Vn(),op(r))}function op(e){return Hi(ae(t=>{if(Ln(t))throw ep(e,t)}),L(t=>t===!0))}function aC(e,t,n,r){let o=t.canMatch;if(!o||o.length===0)return E(!0);let i=o.map(s=>{let a=$n(s,e),c=K_(a)?a.canMatch(t,n):$t(e,()=>a(t,n));return It(c)});return E(i).pipe(Vn(),op(r))}var Pr=class{constructor(t){this.segmentGroup=t||null}},Ti=class extends Error{constructor(t){super(),this.urlTree=t}};function Nn(e){return an(new Pr(e))}function cC(e){return an(new b(4e3,!1))}function lC(e){return an(tp(!1,Ee.GuardRejected))}var Jc=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 E(r);if(o.numberOfChildren>1||!o.children[T])return cC(t.redirectTo);o=o.children[T]}}applyRedirectCommands(t,n,r){let o=this.applyRedirectCreateUrlTree(n,this.urlSerializer.parse(n),t,r);if(n.startsWith("/"))throw new Ti(o);return o}applyRedirectCreateUrlTree(t,n,r,o){let i=this.createSegmentGroup(t,n.root,r,o);return new bt(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.startsWith(":")){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 U(i,s)}createSegments(t,n,r,o){return n.map(i=>i.path.startsWith(":")?this.findPosParam(t,i,o):this.findOrReturn(i,r))}findPosParam(t,n,r){let o=r[n.path.substring(1)];if(!o)throw new b(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}},Xc={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function uC(e,t,n,r,o){let i=cl(e,t,n);return i.matched?(r=V_(t,r),aC(r,t,n,o).pipe(L(s=>s===!0?i:_({},Xc)))):E(i)}function cl(e,t,n){if(t.path==="**")return dC(n);if(t.path==="")return t.pathMatch==="full"&&(e.hasChildren()||n.length>0)?_({},Xc):{matched:!0,consumedSegments:[],remainingSegments:n,parameters:{},positionalParamSegments:{}};let o=(t.matcher||s_)(n,e,t);if(!o)return _({},Xc);let i={};Object.entries(o.posParams??{}).forEach(([a,c])=>{i[a]=c.path});let s=o.consumed.length>0?_(_({},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 dC(e){return{matched:!0,parameters:e.length>0?Lh(e).parameters:{},consumedSegments:e,remainingSegments:[],positionalParamSegments:{}}}function kh(e,t,n,r){return n.length>0&&pC(e,n,r)?{segmentGroup:new U(t,hC(r,new U(n,e.children))),slicedSegments:[]}:n.length===0&&gC(e,n,r)?{segmentGroup:new U(e.segments,fC(e,n,r,e.children)),slicedSegments:n}:{segmentGroup:new U(e.segments,e.children),slicedSegments:n}}function fC(e,t,n,r){let o={};for(let i of n)if(Oi(e,t,i)&&!r[Xe(i)]){let s=new U([],{});o[Xe(i)]=s}return _(_({},r),o)}function hC(e,t){let n={};n[T]=t;for(let r of e)if(r.path===""&&Xe(r)!==T){let o=new U([],{});n[Xe(r)]=o}return n}function pC(e,t,n){return n.some(r=>Oi(e,t,r)&&Xe(r)!==T)}function gC(e,t,n){return n.some(r=>Oi(e,t,r))}function Oi(e,t,n){return(e.hasChildren()||t.length>0)&&n.pathMatch==="full"?!1:n.path===""}function mC(e,t,n,r){return Xe(e)!==r&&(r===T||!Oi(t,n,e))?!1:cl(t,e,n).matched}function vC(e,t,n){return t.length===0&&!e.children[n]}var el=class{};function yC(e,t,n,r,o,i,s="emptyOnly"){return new tl(e,t,n,r,o,s,i).recognize()}var wC=31,tl=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 Jc(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(t){return new b(4002,`'${t.segmentGroup}'`)}recognize(){let t=kh(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(t).pipe(L(n=>{let r=new Nr([],Object.freeze({}),Object.freeze(_({},this.urlTree.queryParams)),this.urlTree.fragment,{},T,this.rootComponentType,null,{}),o=new Ie(r,n),i=new Mi("",o),s=I_(r,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,i.url=this.urlSerializer.serialize(s),this.inheritParamsAndData(i._root,null),{state:i,tree:s}}))}match(t){return this.processSegmentGroup(this.injector,this.config,t,T).pipe(mt(r=>{if(r instanceof Ti)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof Pr?this.noMatchError(r):r}))}inheritParamsAndData(t,n){let r=t.value,o=ol(r,n,this.paramsInheritanceStrategy);r.params=Object.freeze(o.params),r.data=Object.freeze(o.data),t.children.forEach(i=>this.inheritParamsAndData(i,r))}processSegmentGroup(t,n,r,o){return r.segments.length===0&&r.hasChildren()?this.processChildren(t,n,r):this.processSegment(t,n,r,r.segments,o,!0).pipe(L(i=>i instanceof Ie?[i]:[]))}processChildren(t,n,r){let o=[];for(let i of Object.keys(r.children))i==="primary"?o.unshift(i):o.push(i);return ee(o).pipe(ln(i=>{let s=r.children[i],a=$_(n,i);return this.processSegmentGroup(t,a,s,i)}),Ki((i,s)=>(i.push(...s),i)),vt(null),Qi(),te(i=>{if(i===null)return Nn(r);let s=ip(i);return _C(s),E(s)}))}processSegment(t,n,r,o,i,s){return ee(n).pipe(ln(a=>this.processSegmentAgainstRoute(a._injector??t,n,a,r,o,i,s).pipe(mt(c=>{if(c instanceof Pr)return E(null);throw c}))),Ge(a=>!!a),mt(a=>{if(rp(a))return vC(r,o,i)?E(new el):Nn(r);throw a}))}processSegmentAgainstRoute(t,n,r,o,i,s,a){return mC(r,o,i,s)?r.redirectTo===void 0?this.matchSegmentAgainstRoute(t,o,r,i,s):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(t,o,n,r,i,s):Nn(o):Nn(o)}expandSegmentAgainstRouteUsingRedirect(t,n,r,o,i,s){let{matched:a,consumedSegments:c,positionalParamSegments:l,remainingSegments:u}=cl(n,o,i);if(!a)return Nn(n);o.redirectTo.startsWith("/")&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>wC&&(this.allowRedirects=!1));let d=this.applyRedirects.applyRedirectCommands(c,o.redirectTo,l);return this.applyRedirects.lineralizeSegments(o,d).pipe(te(g=>this.processSegment(t,r,n,g.concat(u),s,!1)))}matchSegmentAgainstRoute(t,n,r,o,i){let s=uC(n,r,o,t,this.urlSerializer);return r.path==="**"&&(n.children={}),s.pipe(Le(a=>a.matched?(t=r._injector??t,this.getChildConfig(t,r,o).pipe(Le(({routes:c})=>{let l=r._loadedInjector??t,{consumedSegments:u,remainingSegments:d,parameters:g}=a,m=new Nr(u,g,Object.freeze(_({},this.urlTree.queryParams)),this.urlTree.fragment,DC(r),Xe(r),r.component??r._loadedComponent??null,r,bC(r)),{segmentGroup:v,slicedSegments:D}=kh(n,u,d,c);if(D.length===0&&v.hasChildren())return this.processChildren(l,c,v).pipe(L(B=>B===null?null:new Ie(m,B)));if(c.length===0&&D.length===0)return E(new Ie(m,[]));let G=Xe(r)===i;return this.processSegment(l,c,v,D,G?T:i,!0).pipe(L(B=>new Ie(m,B instanceof Ie?[B]:[])))}))):Nn(n)))}getChildConfig(t,n,r){return n.children?E({routes:n.children,injector:t}):n.loadChildren?n._loadedRoutes!==void 0?E({routes:n._loadedRoutes,injector:n._loadedInjector}):sC(t,n,r,this.urlSerializer).pipe(te(o=>o?this.configLoader.loadChildren(t,n).pipe(ae(i=>{n._loadedRoutes=i.routes,n._loadedInjector=i.injector})):lC(n))):E({routes:[],injector:t})}};function _C(e){e.sort((t,n)=>t.value.outlet===T?-1:n.value.outlet===T?1:t.value.outlet.localeCompare(n.value.outlet))}function CC(e){let t=e.value.routeConfig;return t&&t.path===""}function ip(e){let t=[],n=new Set;for(let r of e){if(!CC(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=ip(r.children);t.push(new Ie(r.value,o))}return t.filter(r=>!n.has(r))}function DC(e){return e.data||{}}function bC(e){return e.resolve||{}}function xC(e,t,n,r,o,i){return te(s=>yC(e,t,n,r,s.extractedUrl,o,i).pipe(L(({state:a,tree:c})=>Q(_({},s),{targetSnapshot:a,urlAfterRedirects:c}))))}function IC(e,t){return te(n=>{let{targetSnapshot:r,guards:{canActivateChecks:o}}=n;if(!o.length)return E(n);let i=new Set(o.map(c=>c.route)),s=new Set;for(let c of i)if(!s.has(c))for(let l of sp(c))s.add(l);let a=0;return ee(s).pipe(ln(c=>i.has(c)?EC(c,r,e,t):(c.data=ol(c,c.parent,e).resolve,E(void 0))),ae(()=>a++),un(1),te(c=>a===s.size?E(n):_e))})}function sp(e){let t=e.children.map(n=>sp(n)).flat();return[e,...t]}function EC(e,t,n,r){let o=e.routeConfig,i=e._resolve;return o?.title!==void 0&&!Jh(o)&&(i[kr]=o.title),MC(i,e,t,r).pipe(L(s=>(e._resolvedData=s,e.data=ol(e,e.parent,n).resolve,null)))}function MC(e,t,n,r){let o=Oc(e);if(o.length===0)return E({});let i={};return ee(o).pipe(te(s=>SC(e[s],t,n,r).pipe(Ge(),ae(a=>{i[s]=a}))),un(1),Zi(i),mt(s=>rp(s)?_e:an(s)))}function SC(e,t,n,r){let o=Fr(t)??r,i=$n(e,o),s=i.resolve?i.resolve(t,n):$t(o,()=>i(t,n));return It(s)}function Tc(e){return Le(t=>{let n=e(t);return n?ee(n).pipe(L(()=>t)):E(t)})}var ap=(()=>{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===T);return r}getResolvedTitleForRoute(n){return n.data[kr]}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:()=>y(TC),providedIn:"root"})}}return e})(),TC=(()=>{class e extends ap{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)(V(Ah))}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),ll=new j("",{providedIn:"root",factory:()=>({})}),ul=new j(""),AC=(()=>{class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=y(dc)}loadComponent(n){if(this.componentLoaders.get(n))return this.componentLoaders.get(n);if(n._loadedComponent)return E(n._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(n);let r=It(n.loadComponent()).pipe(L(cp),ae(i=>{this.onLoadEndListener&&this.onLoadEndListener(n),n._loadedComponent=i}),Hn(()=>{this.componentLoaders.delete(n)})),o=new sn(r,()=>new he).pipe(on());return this.componentLoaders.set(n,o),o}loadChildren(n,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return E({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);let i=OC(r,this.compiler,n,this.onLoadEndListener).pipe(Hn(()=>{this.childrenLoaders.delete(r)})),s=new sn(i,()=>new he).pipe(on());return this.childrenLoaders.set(r,s),s}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function OC(e,t,n,r){return It(e.loadChildren()).pipe(L(cp),te(o=>o instanceof ir||Array.isArray(o)?E(o):ee(t.compileModuleAsync(o))),L(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(ul,[],{optional:!0,self:!0}).flat()),{routes:s.map(al),injector:i}}))}function NC(e){return e&&typeof e=="object"&&"default"in e}function cp(e){return NC(e)?e.default:e}var dl=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:()=>y(RC),providedIn:"root"})}}return e})(),RC=(()=>{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=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),PC=new j("");var kC=(()=>{class e{get hasRequestedNavigation(){return this.navigationId!==0}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new he,this.transitionAbortSubject=new he,this.configLoader=y(AC),this.environmentInjector=y(Te),this.urlSerializer=y(rl),this.rootContexts=y(Ai),this.location=y(vr),this.inputBindingEnabled=y(sl,{optional:!0})!==null,this.titleStrategy=y(ap),this.options=y(ll,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=y(dl),this.createViewTransition=y(PC,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>E(void 0),this.rootComponentType=null;let n=o=>this.events.next(new $c(o)),r=o=>this.events.next(new Bc(o));this.configLoader.onLoadEndListener=r,this.configLoader.onLoadStartListener=n}complete(){this.transitions?.complete()}handleNavigationRequest(n){let r=++this.navigationId;this.transitions?.next(Q(_(_({},this.transitions.value),n),{id:r}))}setupNavigations(n,r,o){return this.transitions=new X({id:0,currentUrlTree:r,currentRawUrl:r,extractedUrl:this.urlHandlingStrategy.extract(r),urlAfterRedirects:this.urlHandlingStrategy.extract(r),rawUrl:r,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:Ir,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(Fe(i=>i.id!==0),L(i=>Q(_({},i),{extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl)})),Le(i=>{let s=!1,a=!1;return E(i).pipe(Le(c=>{if(this.navigationId>i.id)return this.cancelNavigationTransition(i,"",Ee.SupersededByNewNavigation),_e;this.currentTransition=i,this.currentNavigation={id:c.id,initialUrl:c.rawUrl,extractedUrl:c.extractedUrl,trigger:c.source,extras:c.extras,previousNavigation:this.lastSuccessfulNavigation?Q(_({},this.lastSuccessfulNavigation),{previousNavigation:null}):null};let l=!n.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),u=c.extras.onSameUrlNavigation??n.onSameUrlNavigation;if(!l&&u!=="reload"){let d="";return this.events.next(new Qt(c.id,this.urlSerializer.serialize(c.rawUrl),d,kc.IgnoredSameUrlNavigation)),c.resolve(null),_e}if(this.urlHandlingStrategy.shouldProcessUrl(c.rawUrl))return E(c).pipe(Le(d=>{let g=this.transitions?.getValue();return this.events.next(new Sr(d.id,this.urlSerializer.serialize(d.extractedUrl),d.source,d.restoredState)),g!==this.transitions?.getValue()?_e:Promise.resolve(d)}),xC(this.environmentInjector,this.configLoader,this.rootComponentType,n.config,this.urlSerializer,this.paramsInheritanceStrategy),ae(d=>{i.targetSnapshot=d.targetSnapshot,i.urlAfterRedirects=d.urlAfterRedirects,this.currentNavigation=Q(_({},this.currentNavigation),{finalUrl:d.urlAfterRedirects});let g=new xi(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(g)}));if(l&&this.urlHandlingStrategy.shouldProcessUrl(c.currentRawUrl)){let{id:d,extractedUrl:g,source:m,restoredState:v,extras:D}=c,G=new Sr(d,this.urlSerializer.serialize(g),m,v);this.events.next(G);let B=Qh(this.rootComponentType).snapshot;return this.currentTransition=i=Q(_({},c),{targetSnapshot:B,urlAfterRedirects:g,extras:Q(_({},D),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=g,E(i)}else{let d="";return this.events.next(new Qt(c.id,this.urlSerializer.serialize(c.extractedUrl),d,kc.IgnoredByUrlHandlingStrategy)),c.resolve(null),_e}}),ae(c=>{let l=new Fc(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(l)}),L(c=>(this.currentTransition=i=Q(_({},c),{guards:U_(c.targetSnapshot,c.currentSnapshot,this.rootContexts)}),i)),J_(this.environmentInjector,c=>this.events.next(c)),ae(c=>{if(i.guardsResult=c.guardsResult,Ln(c.guardsResult))throw ep(this.urlSerializer,c.guardsResult);let l=new Lc(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot,!!c.guardsResult);this.events.next(l)}),Fe(c=>c.guardsResult?!0:(this.cancelNavigationTransition(c,"",Ee.GuardRejected),!1)),Tc(c=>{if(c.guards.canActivateChecks.length)return E(c).pipe(ae(l=>{let u=new jc(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot);this.events.next(u)}),Le(l=>{let u=!1;return E(l).pipe(IC(this.paramsInheritanceStrategy,this.environmentInjector),ae({next:()=>u=!0,complete:()=>{u||this.cancelNavigationTransition(l,"",Ee.NoDataFromResolver)}}))}),ae(l=>{let u=new Vc(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot);this.events.next(u)}))}),Tc(c=>{let l=u=>{let d=[];u.routeConfig?.loadComponent&&!u.routeConfig._loadedComponent&&d.push(this.configLoader.loadComponent(u.routeConfig).pipe(ae(g=>{u.component=g}),L(()=>{})));for(let g of u.children)d.push(...l(g));return d};return no(l(c.targetSnapshot.root)).pipe(vt(null),nt(1))}),Tc(()=>this.afterPreactivation()),Le(()=>{let{currentSnapshot:c,targetSnapshot:l}=i,u=this.createViewTransition?.(this.environmentInjector,c.root,l.root);return u?ee(u).pipe(L(()=>i)):E(i)}),L(c=>{let l=P_(n.routeReuseStrategy,c.targetSnapshot,c.currentRouterState);return this.currentTransition=i=Q(_({},c),{targetRouterState:l}),this.currentNavigation.targetRouterState=l,i}),ae(()=>{this.events.next(new Ar)}),B_(this.rootContexts,n.routeReuseStrategy,c=>this.events.next(c),this.inputBindingEnabled),nt(1),ae({next:c=>{s=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new Zt(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects))),this.titleStrategy?.updateTitle(c.targetRouterState.snapshot),c.resolve(!0)},complete:()=>{s=!0}}),Xi(this.transitionAbortSubject.pipe(ae(c=>{throw c}))),Hn(()=>{!s&&!a&&this.cancelNavigationTransition(i,"",Ee.SupersededByNewNavigation),this.currentTransition?.id===i.id&&(this.currentNavigation=null,this.currentTransition=null)}),mt(c=>{if(a=!0,np(c))this.events.next(new xt(i.id,this.urlSerializer.serialize(i.extractedUrl),c.message,c.cancellationCode)),L_(c)?this.events.next(new Or(c.url)):i.resolve(!1);else{this.events.next(new Tr(i.id,this.urlSerializer.serialize(i.extractedUrl),c,i.targetSnapshot??void 0));try{i.resolve(n.errorHandler(c))}catch(l){this.options.resolveNavigationPromiseOnError?i.resolve(!1):i.reject(l)}}return _e}))}))}cancelNavigationTransition(n,r,o){let i=new xt(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(){return this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))).toString()!==this.currentTransition?.extractedUrl.toString()&&!this.currentTransition?.extras.skipLocationChange}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function FC(e){return e!==Ir}var LC=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:()=>y(jC),providedIn:"root"})}}return e})(),nl=class{shouldDetach(t){return!1}store(t,n){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,n){return t.routeConfig===n.routeConfig}},jC=(()=>{class e extends nl{static{this.\u0275fac=(()=>{let n;return function(o){return(n||(n=La(e)))(o||e)}})()}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),lp=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:()=>y(VC),providedIn:"root"})}}return e})(),VC=(()=>{class e extends lp{constructor(){super(...arguments),this.location=y(vr),this.urlSerializer=y(rl),this.options=y(ll,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=y(dl),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new bt,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=Qh(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 Sr)this.stateMemento=this.createStateMemento();else if(n instanceof Qt)this.rawUrlTree=r.initialUrl;else if(n instanceof xi){if(this.urlUpdateStrategy==="eager"&&!r.extras.skipLocationChange){let o=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl);this.setBrowserUrl(o,r)}}else n instanceof Ar?(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(this.rawUrlTree,r))):n instanceof xt&&(n.code===Ee.GuardRejected||n.code===Ee.NoDataFromResolver)?this.restoreHistory(r):n instanceof Tr?this.restoreHistory(r,!0):n instanceof Zt&&(this.lastSuccessfulId=n.id,this.currentPageId=this.browserPageId)}setBrowserUrl(n,r){let o=this.urlSerializer.serialize(n);if(this.location.isCurrentPathEqualTo(o)||r.extras.replaceUrl){let i=this.browserPageId,s=_(_({},r.extras.state),this.generateNgRouterState(r.id,i));this.location.replaceState(o,"",s)}else{let i=_(_({},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=La(e)))(o||e)}})()}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})(),br=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(br||{});function $C(e,t){e.events.pipe(Fe(n=>n instanceof Zt||n instanceof xt||n instanceof Tr||n instanceof Qt),L(n=>n instanceof Zt||n instanceof Qt?br.COMPLETE:(n instanceof xt?n.code===Ee.Redirect||n.code===Ee.SupersededByNewNavigation:!1)?br.REDIRECTING:br.FAILED),Fe(n=>n!==br.REDIRECTING),nt(1)).subscribe(()=>{t()})}function BC(e){throw e}var UC={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},HC={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},up=(()=>{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.isNgZoneEnabled=!1,this.console=y(li),this.stateManager=y(lp),this.options=y(ll,{optional:!0})||{},this.pendingTasks=y(ai),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=y(kC),this.urlSerializer=y(rl),this.location=y(vr),this.urlHandlingStrategy=y(dl),this._events=new he,this.errorHandler=this.options.errorHandler||BC,this.navigated=!1,this.routeReuseStrategy=y(LC),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=y(ul,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!y(sl,{optional:!0}),this.eventsSubscription=new J,this.isNgZoneEnabled=y(K)instanceof K&&K.isInAngularZone(),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 xt&&r.code!==Ee.Redirect&&r.code!==Ee.SupersededByNewNavigation)this.navigated=!0;else if(r instanceof Zt)this.navigated=!0;else if(r instanceof Or){let s=this.urlHandlingStrategy.merge(r.url,o.currentRawUrl),a={info:o.extras.info,skipLocationChange:o.extras.skipLocationChange,replaceUrl:this.urlUpdateStrategy==="eager"||FC(o.source)};this.scheduleNavigation(s,Ir,null,a,{resolve:o.resolve,reject:o.reject,promise:o.promise})}}qC(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),Ir,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=_({},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(al),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,l=c?this.currentUrlTree.fragment:s,u=null;switch(a){case"merge":u=_(_({},this.currentUrlTree.queryParams),i);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=i||null}u!==null&&(u=this.removeEmptyProps(u));let d;try{let g=o?o.snapshot:this.routerState.snapshot.root;d=Gh(g)}catch{(typeof n[0]!="string"||!n[0].startsWith("/"))&&(n=[]),d=this.currentUrlTree.root}return Wh(d,n,u,l??null)}navigateByUrl(n,r={skipLocationChange:!1}){let o=Ln(n)?n:this.parseUrl(n),i=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(i,Ir,null,r)}navigate(n,r={skipLocationChange:!1}){return zC(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=_({},UC):r===!1?o=_({},HC):o=r,Ln(n))return Oh(this.currentUrlTree,n,o);let i=this.parseUrl(n);return Oh(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,l;s?(a=s.resolve,c=s.reject,l=s.promise):l=new Promise((d,g)=>{a=d,c=g});let u=this.pendingTasks.add();return $C(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(u))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:n,extras:i,resolve:a,reject:c,promise:l,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),l.catch(d=>Promise.reject(d))}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();function zC(e){for(let t=0;tn.\u0275providers)])}function WC(e){return e.routerState.root}function YC(){let e=y(dr);return t=>{let n=e.get(mr);if(t!==n.components[0])return;let r=e.get(up),o=e.get(ZC);e.get(QC)===1&&r.initialNavigation(),e.get(KC,null,N.Optional)?.setUpPreloading(),e.get(GC,null,N.Optional)?.init(),r.resetRootComponentType(n.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}var ZC=new j("",{factory:()=>new he}),QC=new j("",{providedIn:"root",factory:()=>1});var KC=new j("");var fp=[];var hp={providers:[dp(fp)]};var pp=(()=>{class e{constructor(){this.currentYear=new Date().getFullYear()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["app-footer"]],standalone:!0,features:[Z],decls:5,vars:1,consts:[[1,"footer"],[1,"footer__text"],["href","https://github.com/R0rt1z2","target","_blank"]],template:function(r,o){r&1&&(h(0,"footer",0)(1,"span",1),p(2),h(3,"a",2),p(4,"R0rt1z2"),f()()()),r&2&&(w(2),Ht("\xA9 ",o.currentYear," Made with \u2764\uFE0F by "))},styles:[".footer[_ngcontent-%COMP%]{background:linear-gradient(222deg,#020024 13%,#2e0560 72%,#600977 97%) fixed;box-shadow:0 6px 10px 1px #00000073;padding:.8vmax;z-index:3}.footer__text[_ngcontent-%COMP%]{color:#fff;font-size:.9em;letter-spacing:.15em;text-align:center;margin:0;padding:0;display:flex;align-items:center;justify-content:center;gap:.5rem}.footer__text[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{text-decoration:none;color:#c7cdd399;font-weight:500}.footer__text[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#fff}"]})}}return e})();var Ni=(()=>{class e{constructor(){this.activeSection=new X("home")}setActiveSection(n){this.activeSection.next(n)}getActiveSection(){return this.activeSection.asObservable()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275prov=x({token:e,factory:e.\u0275fac,providedIn:"root"})}}return e})();var mp=(()=>{class e{constructor(n){this.scrollService=n,this.isScrolled=!1,this.isMenuOpen=!1,this.activeSection="home",this.subscription=null}onScroll(){this.isScrolled=window.scrollY>50}ngOnInit(){this.subscription=this.scrollService.getActiveSection().subscribe(n=>{this.activeSection=n})}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}toggleMenu(){this.isMenuOpen=!this.isMenuOpen,document.body.style.overflow=this.isMenuOpen?"hidden":""}scrollToSection(n){let r=document.getElementById(n);r&&(r.scrollIntoView({behavior:"smooth"}),this.isMenuOpen=!1,document.body.style.overflow="")}static{this.\u0275fac=function(r){return new(r||e)(se(Ni))}}static{this.\u0275cmp=Y({type:e,selectors:[["app-header"]],hostBindings:function(r,o){r&1&&z("scroll",function(){return o.onScroll()},!1,nf)},standalone:!0,features:[Z],decls:28,vars:10,consts:[[1,"header"],[1,"navbar"],["href","#",1,"navbar__brand",3,"click"],[1,"navbar__logo"],["aria-label","Toggle menu",1,"navbar__toggle",3,"click"],[1,"navbar__toggle-bar"],[1,"navbar__list"],[1,"navbar__item"],[1,"navbar__link",3,"click"],[1,"navbar__social-links"],["href","https://r0rt1z2.t.me","target","_blank"],[1,"fa-brands","fa-telegram"],["href","https://github.com/R0rt1z2","target","_blank"],[1,"fa-brands","fa-github"],["href","https://www.linkedin.com/in/r0rt1z2/","target","_blank"],[1,"fa-brands","fa-linkedin"],["href","mailto:hello@r0rt1z2.com"],[1,"fa-solid","fa-envelope"]],template:function(r,o){r&1&&(h(0,"header",0)(1,"nav",1)(2,"a",2),z("click",function(){return o.scrollToSection("home")}),h(3,"span",3),p(4,""),f()(),h(5,"button",4),z("click",function(){return o.toggleMenu()}),O(6,"span",5)(7,"span",5)(8,"span",5),f(),h(9,"ul",6)(10,"li",7)(11,"a",8),z("click",function(){return o.scrollToSection("about"),o.isMenuOpen=!1}),p(12,"About"),f()(),h(13,"li",7)(14,"a",8),z("click",function(){return o.scrollToSection("projects"),o.isMenuOpen=!1}),p(15,"Projects"),f()(),h(16,"li",7)(17,"a",8),z("click",function(){return o.scrollToSection("contact"),o.isMenuOpen=!1}),p(18,"Contact"),f()(),h(19,"li",9)(20,"a",10),O(21,"i",11),f(),h(22,"a",12),O(23,"i",13),f(),h(24,"a",14),O(25,"i",15),f(),h(26,"a",16),O(27,"i",17),f()()()()()),r&2&&(pt("header--scrolled",o.isScrolled),w(9),pt("navbar__list--open",o.isMenuOpen),w(2),pt("navbar__link--active",o.activeSection==="about"),w(3),pt("navbar__link--active",o.activeSection==="projects"),w(3),pt("navbar__link--active",o.activeSection==="contact"))},styles:[`.header[_ngcontent-%COMP%]{position:fixed;top:0;left:0;z-index:100;width:100%;padding:1rem 2rem;transition:all .3s ease;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:linear-gradient(to bottom,#0000004d,#0000)}.header--scrolled[_ngcontent-%COMP%]{background:#020024cc;box-shadow:0 4px 20px #0000004d}.navbar[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto}.navbar__brand[_ngcontent-%COMP%]{color:#fff;text-decoration:none;z-index:3}.navbar__logo[_ngcontent-%COMP%]{font-family:Fira Mono,monospace;font-size:1.5rem;font-weight:700}.navbar__toggle[_ngcontent-%COMP%]{display:none;flex-direction:column;justify-content:space-between;width:30px;height:21px;background:transparent;border:none;cursor:pointer;z-index:3}@media (max-width: 768px){.navbar__toggle[_ngcontent-%COMP%]{display:flex}}.navbar__toggle-bar[_ngcontent-%COMP%]{width:100%;height:3px;background-color:#fff;border-radius:10px;transition:all .3s ease}.navbar__list[_ngcontent-%COMP%]{display:flex;list-style:none;align-items:center;gap:1rem;margin:0;padding:0;font-family:Fira Mono,monospace;position:relative}.navbar__list[_ngcontent-%COMP%]:before{content:"const char* menu[3] = { ";color:#888;font-size:.875rem;text-shadow:0px 0px 3px rgba(0,0,0,.7)}.navbar__list:after{content:"};";color:#888;font-size:.875rem;text-shadow:0px 0px 3px rgba(0,0,0,.7)}@media (max-width: 768px){.navbar__list[_ngcontent-%COMP%]{position:fixed;top:0;right:-100%;width:70%;height:100vh;flex-direction:column;justify-content:center;background:#020024f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all .4s ease;padding:2rem;gap:2rem}.navbar__list[_ngcontent-%COMP%]:before, .navbar__list[_ngcontent-%COMP%]:after{display:none}.navbar__list--open[_ngcontent-%COMP%]{right:0}}.navbar__item[_ngcontent-%COMP%]{position:relative}.navbar__item[_ngcontent-%COMP%]:not(:last-child):after{content:", ";color:#888;margin-left:.2rem}.navbar__item[_ngcontent-%COMP%]:not(:last-child):after{content:none}@media (max-width: 768px){.navbar__item[_ngcontent-%COMP%]:not(:last-child):after{display:none}}.navbar__social-links[_ngcontent-%COMP%]{display:none}@media (max-width: 768px){.navbar__social-links[_ngcontent-%COMP%]{display:flex;justify-content:center;gap:1.5rem;margin-top:2rem;width:100%}.navbar__social-links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#fff;font-size:1.5rem;text-decoration:none;transition:color .2s ease}.navbar__social-links[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#bda5ea}}.navbar__link[_ngcontent-%COMP%]{color:#fff;text-decoration:none;font-size:1rem;cursor:pointer;transition:all .2s ease;position:relative}.navbar__link[_ngcontent-%COMP%]:before{content:'"';color:#888}.navbar__link[_ngcontent-%COMP%]:after{content:'"';color:#888}.navbar__link[_ngcontent-%COMP%]:hover{color:#bda5ea}.navbar__link--active[_ngcontent-%COMP%]{color:#bda5ea;font-weight:600}@media (max-width: 768px){.navbar__link[_ngcontent-%COMP%]{font-size:1.2rem}.navbar__link[_ngcontent-%COMP%]:before, .navbar__link[_ngcontent-%COMP%]:after{display:none}}`]})}}return e})();var vp=(()=>{class e{constructor(n){this.cdr=n,this.text="",this.fullTexts=['char author[] = "Roger Ortiz";','"Roger Ortiz";'],this.typingSpeed=34,this.deleteSpeed=15,this.currentTextIndex=0,this.isTyping=!0,this.handleResize=()=>{this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.resizeTimeout=setTimeout(()=>{this.updateTextForScreenSize(),this.text.length>0&&(this.typingTimeout&&clearTimeout(this.typingTimeout),this.text="",this.currentTextIndex=0,this.startTypingEffect())},250)}}ngAfterViewInit(){this.updateTextForScreenSize(),this.startTypingEffect(),window.addEventListener("resize",this.handleResize.bind(this))}ngOnDestroy(){window.removeEventListener("resize",this.handleResize.bind(this)),this.resizeTimeout&&clearTimeout(this.resizeTimeout),this.typingTimeout&&clearTimeout(this.typingTimeout)}updateTextForScreenSize(){this.fullTexts[0]=window.innerWidth<768?'char author[] = "R. Ortiz";':'char author[] = "Roger Ortiz";'}startTypingEffect(){let n=0;this.text="";let r=()=>{nthis.deleteText(),1e3))};r()}deleteText(){let n=()=>{this.text.length>0?(this.text=this.text.slice(0,-1),this.cdr.detectChanges(),this.typingTimeout=setTimeout(n,this.deleteSpeed)):(this.currentTextIndex=1,this.typingTimeout=setTimeout(()=>this.startFinalTypingEffect(),1e3))};n()}startFinalTypingEffect(){let n=0;this.text="";let r=()=>{nt.url;function XC(e,t){if(e&1&&(h(0,"aside",0)(1,"p",1)(2,"a",2),p(3),f()()()),e&2){let n=P();w(2),S("href","mailto:"+n.email,qe),w(),xe(n.email)}}function eD(e,t){if(e&1&&(h(0,"a",5),O(1,"i"),f()),e&2){let n=t.$implicit;S("href",n.url,qe),w(),Bf(n.icon)}}function tD(e,t){if(e&1&&(h(0,"aside",3)(1,"div",4),Yf(2,eD,2,3,"a",5,JC),f()()),e&2){let n=P();w(2),Zf(n.socialLinks)}}var yp=(()=>{class e{constructor(){this.email=null,this.socialLinks=[]}get isEmail(){return!!this.email}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["app-sidebar"]],inputs:{email:"email",socialLinks:"socialLinks"},standalone:!0,features:[Z],decls:2,vars:1,consts:[[1,"sidebar","sidebar--right"],[1,"sidebar__email"],[3,"href"],[1,"sidebar","sidebar--left"],[1,"sidebar__social"],["target","_blank",3,"href"]],template:function(r,o){r&1&&W(0,XC,4,2,"aside",0)(1,tD,4,0),r&2&&Wf(0,o.email?0:1)},styles:['.sidebar[_ngcontent-%COMP%]{position:fixed;display:flex;flex-direction:column;justify-content:center;width:22px;z-index:2;bottom:0}.sidebar--left[_ngcontent-%COMP%]{left:42px}.sidebar--right[_ngcontent-%COMP%]{right:42px}.sidebar__email[_ngcontent-%COMP%]{display:flex;writing-mode:vertical-rl;font-size:.9em;letter-spacing:.15em;text-align:center;margin:0;position:fixed;bottom:0;padding:0;font-family:Fira Mono,monospace;align-items:center}.sidebar__email[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{text-decoration:none;color:#c7cdd399;display:block;margin-top:13px}.sidebar__email[_ngcontent-%COMP%]:after{content:"";left:50%;width:1px;height:125px;background:#c7cdd333;margin-top:10px}.sidebar__social[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;position:fixed;bottom:0;gap:8px}.sidebar__social[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{font-size:23px;display:block;margin-top:13px;color:#c7cdd399;text-decoration:none;transition:opacity .2s}.sidebar__social[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{opacity:.7;color:#fff}.sidebar__social[_ngcontent-%COMP%]:after{content:"";left:50%;width:1px;height:125px;background:#c7cdd333;margin-top:10px}@media (max-width: 1024px){.sidebar[_ngcontent-%COMP%]{display:none}}']})}}return e})();var wp=(()=>{class e{static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["app-whoami"]],standalone:!0,features:[Z],decls:152,vars:0,consts:[[1,"whoami"],[1,"whoami__content"],[1,"whoami__header"],[1,"section-title"],[1,"section-title__line"],[1,"section-title__text"],[1,"terminal-window"],[1,"terminal-window__bar"],[1,"terminal-window__buttons"],[1,"terminal-window__button","terminal-window__button--close"],[1,"terminal-window__button","terminal-window__button--minimize"],[1,"terminal-window__button","terminal-window__button--maximize"],[1,"terminal-window__title"],[1,"terminal-window__body"],[1,"terminal-window__content"],[1,"terminal-window__text"],["href","https://bughunters.google.com/"],[1,"skills-grid"],[1,"skill-item"],[1,"terminal-window__footer"],[1,"terminal-window__footer-status"],[1,"invert"],[1,"terminal-window__footer-controls"],[1,"terminal-key"]],template:function(r,o){r&1&&(h(0,"div",0)(1,"div",1)(2,"div",2)(3,"div",3),O(4,"div",4),h(5,"h2",5),p(6,"\u{1F438} Get to know me..."),f(),O(7,"div",4),f()(),h(8,"div",6)(9,"div",7)(10,"div",8),O(11,"span",9)(12,"span",10)(13,"span",11),f(),h(14,"div",12),p(15,"r0rt1z2@10.0.0.2: nano"),f()(),h(16,"div",13)(17,"div",14)(18,"div",15)(19,"p"),p(20,"Hello again! I'm Roger Ortiz, a reverse engineering enthusiast located"),f(),h(21,"p"),p(22,"somewhere in this world, perhaps Spain \u{1F1EA}\u{1F1F8}!"),f(),h(23,"p"),p(24,"\xA0"),f(),h(25,"p"),p(26,"I'm passionate about programming in its various forms and paradigms, as well"),f(),h(27,"p"),p(28,"as Linux system administration and cross-platform information security."),f(),h(29,"p"),p(30,"\xA0"),f(),h(31,"p"),p(32,"What really gets me going though is reverse engineering embedded devices,"),f(),h(33,"p"),p(34,"particularly Android devices and their bootloaders. I spend way too much time"),f(),h(35,"p"),p(36,"digging into the low-level stuff, figuring out how to unlock things that"),f(),h(37,"p"),p(38,"manufacturers definitely don't want you messing with."),f(),h(39,"p"),p(40,"\xA0"),f(),h(41,"p"),p(42,"I've had some success unlocking various Amazon devices - Alexa devices, Fire"),f(),h(43,"p"),p(44,"TV devices, and tablets. Amazon really goes all out locking these things down,"),f(),h(45,"p"),p(46,"but that just makes it more interesting to crack them open and see what's"),f(),h(47,"p"),p(48,"really going on under the hood."),f(),h(49,"p"),p(50,"\xA0"),f(),h(51,"p"),p(52,"In the past and presently, I have built and developed various projects, from"),f(),h(53,"p"),p(54,"simple to complex, utilizing different technologies and programming languages."),f(),h(55,"p"),p(56,"This includes web development work alongside my reverse engineering pursuits."),f(),h(57,"p"),p(58,"\xA0"),f(),h(59,"p"),p(60,"I'm also part of the "),h(61,"a",16),p(62,"Google Bug Hunters"),f(),p(63," community, where I have conducted"),f(),h(64,"p"),p(65,"and benefited from the VRP (Vulnerability Reward Program) thanks to my research"),f(),h(66,"p"),p(67,"and reports on security vulnerabilities."),f(),h(68,"p"),p(69,"\xA0"),f(),h(70,"p"),p(71,"I have experience with various languages, technologies, and systems, such as:"),f(),h(72,"div",17)(73,"div",18),p(74,"\u2022 C"),f(),h(75,"div",18),p(76,"\u2022 Python"),f(),h(77,"div",18),p(78,"\u2022 PHP"),f(),h(79,"div",18),p(80,"\u2022 Java"),f(),h(81,"div",18),p(82,"\u2022 HTML/CSS"),f(),h(83,"div",18),p(84,"\u2022 JavaScript"),f(),h(85,"div",18),p(86,"\u2022 SQL"),f(),h(87,"div",18),p(88,"\u2022 ASM"),f(),h(89,"div",18),p(90,"\u2022 TypeScript"),f(),h(91,"div",18),p(92,"\u2022 Angular"),f(),h(93,"div",18),p(94,"\u2022 Laravel"),f(),h(95,"div",18),p(96,"\u2022 Bash"),f(),h(97,"div",18),p(98,"\u2022 Reverse Engineering"),f(),h(99,"div",18),p(100,"\u2022 Embedded Systems"),f(),h(101,"div",18),p(102,"\u2022 ARM Assembly"),f(),h(103,"div",18),p(104,"\u2022 Web Security"),f()(),h(105,"p"),p(106,"And certainly many more. In any case, I'm always willing to learn new things!"),f(),h(107,"p"),p(108,"\xA0"),f()(),h(109,"div",19)(110,"div",20)(111,"p",21),p(112,"[ Read 27 lines ]"),f()(),h(113,"div",22)(114,"p")(115,"span",23),p(116,"^G"),f(),p(117," Get Help\xA0\xA0\xA0\xA0\xA0"),h(118,"span",23),p(119,"^O"),f(),p(120," Write Out\xA0\xA0\xA0\xA0"),h(121,"span",23),p(122,"^W"),f(),p(123," Where Is\xA0\xA0\xA0\xA0\xA0"),h(124,"span",23),p(125,"^K"),f(),p(126," Cut Text\xA0\xA0\xA0\xA0\xA0"),h(127,"span",23),p(128,"^J"),f(),p(129," Justify\xA0\xA0\xA0\xA0\xA0"),h(130,"span",23),p(131,"^C"),f(),p(132," Cur Pos"),f(),h(133,"p")(134,"span",23),p(135,"^X"),f(),p(136," Exit\xA0\xA0\xA0\xA0\xA0\xA0\xA0\xA0\xA0"),h(137,"span",23),p(138,"^R"),f(),p(139," Read File\xA0\xA0\xA0\xA0"),h(140,"span",23),p(141,"^\\"),f(),p(142," Replace\xA0\xA0\xA0\xA0\xA0\xA0"),h(143,"span",23),p(144,"^U"),f(),p(145," Paste Text\xA0\xA0\xA0"),h(146,"span",23),p(147,"^T"),f(),p(148," To Spell\xA0\xA0\xA0\xA0"),h(149,"span",23),p(150,"^_"),f(),p(151," Go To Line"),f()()()()()()()())},styles:[".whoami[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;min-height:100vh;width:100%}.whoami__content[_ngcontent-%COMP%]{display:flex;flex-direction:column;max-width:1350px;width:100%;padding:0 20px}.whoami__header[_ngcontent-%COMP%]{margin-bottom:2rem}.section-title[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%;margin-bottom:2rem}.section-title__text[_ngcontent-%COMP%]{font-size:1.5rem;margin:0 20px;color:#fff;white-space:nowrap}.section-title__line[_ngcontent-%COMP%]{flex:1;height:1px;background:#c7cdd333;min-width:10px}.terminal-window[_ngcontent-%COMP%]{width:100%;max-width:1000px;margin:0 auto;border-radius:6px;box-shadow:0 5px 15px #00000080;overflow:hidden}.terminal-window__bar[_ngcontent-%COMP%]{background:#565656;padding:8px 12px;display:flex;align-items:center;position:relative}.terminal-window__buttons[_ngcontent-%COMP%]{display:flex;gap:6px}.terminal-window__button[_ngcontent-%COMP%]{width:12px;height:12px;border-radius:50%}.terminal-window__button--close[_ngcontent-%COMP%]{background:#f84a4b}.terminal-window__button--minimize[_ngcontent-%COMP%]{background:#fbaf32}.terminal-window__button--maximize[_ngcontent-%COMP%]{background:#30c13a}.terminal-window__title[_ngcontent-%COMP%]{position:absolute;left:50%;transform:translate(-50%);font-size:.8rem;color:#f0f0f0;font-weight:500}.terminal-window__body[_ngcontent-%COMP%]{background-color:#262626;color:#fff;padding:10px;font-family:Fira Mono,monospace;font-size:.85rem;opacity:1;-webkit-backdrop-filter:opacity(1);backdrop-filter:opacity(1)}.terminal-window__content[_ngcontent-%COMP%]{display:flex;flex-direction:column;min-height:400px}@media (max-width: 480px){.terminal-window__content[_ngcontent-%COMP%]{min-height:300px}}.terminal-window__header[_ngcontent-%COMP%]{text-align:center;margin-bottom:10px}.terminal-window__header-left[_ngcontent-%COMP%]{position:absolute;left:1px}.terminal-window__text[_ngcontent-%COMP%]{flex:1;line-height:1.5}.terminal-window__text[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0}.terminal-window__text[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:#6f42c1;text-decoration:none;transition:color .2s}.terminal-window__text[_ngcontent-%COMP%] a[_ngcontent-%COMP%]:hover{color:#a17fe0;text-decoration:underline}.terminal-window__footer[_ngcontent-%COMP%]{margin-top:auto}.terminal-window__footer-status[_ngcontent-%COMP%]{text-align:center;margin-bottom:10px}.terminal-window__footer-controls[_ngcontent-%COMP%]{font-size:.8rem}.terminal-window__footer-controls[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0}.terminal-key[_ngcontent-%COMP%]{display:inline-block;background-color:#fff;color:#000;padding:0 2px;margin-right:3px}.invert[_ngcontent-%COMP%]{color:#000;background-color:#fff;padding:0 4px;display:inline-block}.skills-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:10px 0;padding-left:20px}.skill-item[_ngcontent-%COMP%]{white-space:nowrap}@media (max-width: 768px){.terminal-window[_ngcontent-%COMP%]{width:95%}.terminal-window__body[_ngcontent-%COMP%]{font-size:.75rem}.skills-grid[_ngcontent-%COMP%]{grid-template-columns:repeat(3,1fr)}}@media (max-width: 480px){.section-title__text[_ngcontent-%COMP%]{font-size:1.2rem}.terminal-window__body[_ngcontent-%COMP%]{padding:6px;font-size:.7rem}.terminal-window__footer-controls[_ngcontent-%COMP%]{display:none}.skills-grid[_ngcontent-%COMP%]{grid-template-columns:repeat(2,1fr);gap:5px}}"]})}}return e})();function nD(e,t){if(e&1){let n=ye();h(0,"button",10),z("click",function(o){oe(n);let i=P(2);return ie(i.prevImage(o))}),O(1,"i",11),f()}}function rD(e,t){if(e&1){let n=ye();h(0,"button",12),z("click",function(o){oe(n);let i=P(2);return ie(i.nextImage(o))}),O(1,"i",13),f()}}function oD(e,t){if(e&1){let n=ye();h(0,"button",16),z("click",function(o){let i=oe(n).index,s=P(3);return ie(s.selectImage(i,o))}),f()}if(e&2){let n=t.index,r=P(3);pt("lightbox__indicator--active",n===r.currentIndex)}}function iD(e,t){if(e&1){let n=ye();h(0,"div",14),z("click",function(o){oe(n);let i=P(2);return ie(i.stopPropagation(o))}),W(1,oD,1,2,"button",15),f()}if(e&2){let n=P(2);w(),S("ngForOf",n.images)}}function sD(e,t){if(e&1&&(h(0,"div",17),p(1),f()),e&2){let n=P(2);w(),cc(" ",n.currentIndex+1," / ",n.images.length," ")}}function aD(e,t){if(e&1){let n=ye();h(0,"div",1),z("click",function(){oe(n);let o=P();return ie(o.closeModal())}),h(1,"div",2)(2,"button",3),z("click",function(){oe(n);let o=P();return ie(o.closeModal())}),p(3,"\xD7"),f(),h(4,"div",4),z("click",function(o){oe(n);let i=P();return ie(i.stopPropagation(o))}),W(5,nD,2,0,"button",5),O(6,"img",6),W(7,rD,2,0,"button",7),f(),W(8,iD,2,1,"div",8)(9,sD,2,2,"div",9),f()()}if(e&2){let n=P();w(5),S("ngIf",n.images.length>1),w(),S("src",n.currentImage,qe)("alt",n.altText),w(),S("ngIf",n.images.length>1),w(),S("ngIf",n.images.length>1),w(),S("ngIf",n.images.length>1)}}var _p=(()=>{class e{constructor(){this.images=[],this.initialIndex=0,this.altText="",this.isOpen=!1,this.close=new ue,this.currentIndex=0}handleKeyboardEvent(n){if(!(!this.isOpen||this.images.length<=1))switch(n.key){case"ArrowRight":this.nextImage(),n.preventDefault();break;case"ArrowLeft":this.prevImage(),n.preventDefault();break;case"Escape":this.closeModal(),n.preventDefault();break}}ngOnChanges(n){n.isOpen&&n.isOpen.currentValue===!0&&(this.currentIndex=this.initialIndex),n.images&&!n.images.firstChange&&(this.currentIndex=this.initialIndex)}closeModal(){this.close.emit()}stopPropagation(n){n.stopPropagation()}nextImage(n){this.currentIndex=(this.currentIndex+1)%this.images.length,n&&this.stopPropagation(n)}prevImage(n){this.currentIndex=(this.currentIndex-1+this.images.length)%this.images.length,n&&this.stopPropagation(n)}selectImage(n,r){this.currentIndex=n,this.stopPropagation(r)}get currentImage(){return this.images[this.currentIndex]||""}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["app-lightbox"]],hostBindings:function(r,o){r&1&&z("keydown",function(s){return o.handleKeyboardEvent(s)},!1,rf)},inputs:{images:"images",initialIndex:"initialIndex",altText:"altText",isOpen:"isOpen"},outputs:{close:"close"},standalone:!0,features:[Bt,Z],decls:1,vars:1,consts:[["class","lightbox",3,"click",4,"ngIf"],[1,"lightbox",3,"click"],[1,"lightbox__content"],[1,"lightbox__close",3,"click"],[1,"lightbox__image-container",3,"click"],["class","lightbox__nav lightbox__nav--prev","aria-label","Previous image",3,"click",4,"ngIf"],[1,"lightbox__image",3,"src","alt"],["class","lightbox__nav lightbox__nav--next","aria-label","Next image",3,"click",4,"ngIf"],["class","lightbox__indicators",3,"click",4,"ngIf"],["class","lightbox__counter",4,"ngIf"],["aria-label","Previous image",1,"lightbox__nav","lightbox__nav--prev",3,"click"],[1,"fas","fa-chevron-left"],["aria-label","Next image",1,"lightbox__nav","lightbox__nav--next",3,"click"],[1,"fas","fa-chevron-right"],[1,"lightbox__indicators",3,"click"],["class","lightbox__indicator",3,"lightbox__indicator--active","click",4,"ngFor","ngForOf"],[1,"lightbox__indicator",3,"click"],[1,"lightbox__counter"]],template:function(r,o){r&1&&W(0,aD,10,6,"div",0),r&2&&S("ngIf",o.isOpen)},dependencies:[Gt,hi,On],styles:[".lightbox[_ngcontent-%COMP%]{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#000000e6;z-index:1000;display:flex;align-items:center;justify-content:center;animation:_ngcontent-%COMP%_fadeIn .3s ease-in-out}.lightbox__content[_ngcontent-%COMP%]{position:relative;max-width:90%;max-height:90%;display:flex;flex-direction:column;align-items:center}.lightbox__close[_ngcontent-%COMP%]{position:absolute;top:-40px;right:-40px;font-size:30px;color:#fff;background:transparent;border:none;cursor:pointer;z-index:1001;width:40px;height:40px;display:flex;align-items:center;justify-content:center}.lightbox__close[_ngcontent-%COMP%]:hover{color:#f84a4b}.lightbox__image-container[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;position:relative;width:100%}.lightbox__image[_ngcontent-%COMP%]{max-width:100%;max-height:80vh;object-fit:contain;border-radius:4px;box-shadow:0 5px 15px #00000080;animation:_ngcontent-%COMP%_zoomIn .3s ease-in-out}.lightbox__nav[_ngcontent-%COMP%]{position:absolute;top:50%;transform:translateY(-50%);background-color:#00000080;color:#fff;border:none;border-radius:50%;width:50px;height:50px;font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color .2s,transform .2s;z-index:1002}.lightbox__nav[_ngcontent-%COMP%]:hover{background-color:#000c}.lightbox__nav[_ngcontent-%COMP%]:active{transform:translateY(-50%) scale(.95)}.lightbox__nav--prev[_ngcontent-%COMP%]{left:-60px}.lightbox__nav--next[_ngcontent-%COMP%]{right:-60px}.lightbox__indicators[_ngcontent-%COMP%]{display:flex;justify-content:center;margin-top:20px;gap:10px}.lightbox__indicator[_ngcontent-%COMP%]{width:12px;height:12px;border-radius:50%;background-color:#fff6;border:none;cursor:pointer;transition:background-color .2s,transform .2s}.lightbox__indicator[_ngcontent-%COMP%]:hover{background-color:#fff9}.lightbox__indicator[_ngcontent-%COMP%]:active{transform:scale(.9)}.lightbox__indicator--active[_ngcontent-%COMP%]{background-color:#fff;width:14px;height:14px}.lightbox__counter[_ngcontent-%COMP%]{position:absolute;bottom:-30px;color:#fff;font-size:14px;font-family:Fira Mono,monospace}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0}to{opacity:1}}@keyframes _ngcontent-%COMP%_zoomIn{0%{transform:scale(.8)}to{transform:scale(1)}}@media (max-width: 992px){.lightbox__nav[_ngcontent-%COMP%]{width:40px;height:40px;font-size:16px}.lightbox__nav--prev[_ngcontent-%COMP%]{left:-50px}.lightbox__nav--next[_ngcontent-%COMP%]{right:-50px}}@media (max-width: 768px){.lightbox__close[_ngcontent-%COMP%]{top:-30px;right:0}.lightbox__nav[_ngcontent-%COMP%]{width:36px;height:36px;font-size:14px;background-color:#000000b3}.lightbox__nav--prev[_ngcontent-%COMP%]{left:10px}.lightbox__nav--next[_ngcontent-%COMP%]{right:10px}.lightbox__indicator[_ngcontent-%COMP%]{width:10px;height:10px}.lightbox__indicator--active[_ngcontent-%COMP%]{width:12px;height:12px}}"]})}}return e})();function cD(e,t){if(e&1&&(h(0,"h2",9),p(1),f()),e&2){let n=P(3);w(),xe(n.title)}}function lD(e,t){if(e&1){let n=ye();h(0,"button",10),z("click",function(){oe(n);let o=P(3);return ie(o.close())}),p(1,"\xD7"),f()}}function uD(e,t){if(e&1&&(h(0,"div",6),W(1,cD,2,1,"h2",7)(2,lD,2,0,"button",8),f()),e&2){let n=P(2);w(),S("ngIf",n.title),w(),S("ngIf",n.showCloseButton)}}function dD(e,t){e&1&&ic(0)}function fD(e,t){if(e&1){let n=ye();h(0,"div",1),z("click",function(){oe(n);let o=P();return ie(o.close())}),h(1,"div",2),z("click",function(o){return oe(n),ie(o.stopPropagation())}),W(2,uD,3,2,"div",3),h(3,"div",4),W(4,dD,1,0,"ng-container",5),f()()()}if(e&2){let n=P();w(),ci("max-width",n.maxWidth),w(),S("ngIf",n.title||n.showCloseButton),w(2),S("ngTemplateOutlet",n.content)}}var Cp=(()=>{class e{constructor(){this.isOpen=!1,this.maxWidth="600px",this.showCloseButton=!0,this.closeModal=new ue}close(){this.closeModal.emit()}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["app-modal"]],inputs:{isOpen:"isOpen",title:"title",maxWidth:"maxWidth",showCloseButton:"showCloseButton",content:"content"},outputs:{closeModal:"closeModal"},standalone:!0,features:[Z],decls:1,vars:1,consts:[["class","modal-backdrop",3,"click",4,"ngIf"],[1,"modal-backdrop",3,"click"],[1,"modal-content",3,"click"],["class","modal-header",4,"ngIf"],[1,"modal-body"],[4,"ngTemplateOutlet"],[1,"modal-header"],["class","modal-title",4,"ngIf"],["class","modal-close",3,"click",4,"ngIf"],[1,"modal-title"],[1,"modal-close",3,"click"]],template:function(r,o){r&1&&W(0,fD,5,4,"div",0),r&2&&S("ngIf",o.isOpen)},dependencies:[Gt,On,_h],styles:[".modal-backdrop[_ngcontent-%COMP%]{position:fixed;top:0;left:0;width:100%;height:100%;background:#1a1a2ed9;display:flex;align-items:center;justify-content:center;z-index:9999;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.modal-content[_ngcontent-%COMP%]{background:#1a1a2e;border-radius:8px;width:90%;max-height:80vh;overflow-y:auto;position:relative}.modal-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #6f42c1}.modal-title[_ngcontent-%COMP%]{margin:0;color:#bda5ea;font-size:1.5rem}.modal-close[_ngcontent-%COMP%]{background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:background-color .2s}.modal-close[_ngcontent-%COMP%]:hover{background-color:#ffffff1a}.modal-body[_ngcontent-%COMP%]{padding:1.5rem;color:#fff}@media (max-width: 768px){.modal-content[_ngcontent-%COMP%]{width:95%;margin:1rem}.modal-header[_ngcontent-%COMP%], .modal-body[_ngcontent-%COMP%]{padding:1rem}}"]})}}return e})();var hD=["alexaContent"],pD=e=>({"project--reverse":e}),gD=e=>({"terminal-window__body--browser":e});function mD(e,t){if(e&1&&(h(0,"div",32),O(1,"i",33),h(2,"span",34),p(3),f()()),e&2){let n=P(3).$implicit;w(3),xe((n.images==null?null:n.images.length)||0)}}function vD(e,t){if(e&1){let n=ye();h(0,"div",29)(1,"img",30),z("click",function(){oe(n);let o=P(2).$implicit,i=P();return ie(i.openLightbox(o.images||[],0))}),f(),W(2,mD,4,1,"div",31),f()}if(e&2){let n=P(2).$implicit;w(),S("src",n.thumbnail||(n.images==null?null:n.images[0])||"assets/default-image.jpg",qe)("alt",n.title),w(),S("ngIf",((n.images==null?null:n.images.length)||0)>1)}}function yD(e,t){if(e&1&&(Sn(0),W(1,vD,3,3,"div",28),Tn()),e&2){let n=P().$implicit;w(),S("ngIf",n.images==null?null:n.images.length)}}function wD(e,t){if(e&1&&(h(0,"div",32),O(1,"i",33),h(2,"span",34),p(3),f()()),e&2){let n=P(2).$implicit;w(3),xe((n.images==null?null:n.images.length)||0)}}function _D(e,t){if(e&1){let n=ye();Sn(0),h(1,"img",35),z("click",function(){oe(n);let o=P().$implicit,i=P();return ie(i.openLightbox(o.images||[],0))}),f(),W(2,wD,4,1,"div",31),Tn()}if(e&2){let n,r=P().$implicit;w(),S("src",r.thumbnail||((n=r.images==null?null:r.images[0])!==null&&n!==void 0?n:"assets/default-image.jpg"),qe)("alt",r.title),w(),S("ngIf",((r.images==null?null:r.images.length)||0)>1)}}function CD(e,t){e&1&&(Sn(0),h(1,"div",36)(2,"p"),p(3," \u2501\u2501\u2501 "),h(4,"span",37),p(5,"Skidbladnir Kirin Research Utility (c) AntiEngineer, R0rt1z2"),f(),p(6," \u2501\u2501\u2501 "),f(),h(7,"p"),p(8," Build Date: Wed Apr 26 02:25:33 CEST 2023 (Apple clang version 14.0.3) "),f(),h(9,"p")(10,"span",38),p(11,"!!!!! READ BEFORE USING THIS TOOL !!!!!"),f()(),h(12,"p"),p(13," #1: This tool is for research purposes only. It is not intended to be used for malicious or illegal purposes. "),f(),h(14,"p"),p(15," #2: The author(s) are not responsible for any damage caused to your, or any other person's device(s) or data. "),f(),h(16,"p"),p(17," By using this tool, you hereby agree to the aforementioned terms. "),f(),h(18,"p")(19,"span",39),p(20,"2023-04-26 02:25:41"),f(),p(21," ["),h(22,"span",40),p(23,"INFO"),f(),p(24,"] "),h(25,"span",41),p(26,"Skidbladnir\\Logger->Init:"),f(),p(27," Initializing core logger... "),f(),h(28,"p")(29,"span",39),p(30,"2023-04-26 02:25:41"),f(),p(31," [DEBUG] "),h(32,"span",41),p(33,"Skidbladnir\\Logger->EnableDebug:"),f(),h(34,"span",38),p(35," Debugging assertions have been enabled. This may cause performance issues."),f()(),h(36,"p")(37,"span",39),p(38,"2023-04-26 02:25:41"),f(),p(39," ["),h(40,"span",40),p(41,"INFO"),f(),p(42,"] "),h(43,"span",41),p(44,"Skidbladnir\\CLI::Init:"),f(),p(45," Initializing IO interfaces... "),f(),h(46,"p")(47,"span",39),p(48,"2023-04-26 02:25:41"),f(),p(49," ["),h(50,"span",40),p(51,"INFO"),f(),p(52,"] "),h(53,"span",41),p(54,"Skidbladnir\\CLI::HandleInput:"),f(),p(55," Warmup completed at 2023-04-26 02:25:41! Entering Application CLI input loop... "),f(),h(56,"p")(57,"span",39),p(58,"2023-04-26 02:25:41"),f(),p(59," ["),h(60,"span",40),p(61,"INFO"),f(),p(62,"] "),h(63,"span",41),p(64,"Skidbladnir\\CLI::HandleInput:"),f(),p(65," To access the UI, please write the 'switch2gui' command. "),f(),h(66,"p"),p(67,"skidbladnir:[0]$ vcom --configure hi3680"),f(),h(68,"p")(69,"span",39),p(70,"2023-04-26 02:26:21"),f(),p(71," ["),h(72,"span",42),p(73,"OKAY"),f(),p(74,"] "),h(75,"span",41),p(76,"Skidbladnir\\Commands\\VCOM::ProvisionCPUConfig:"),f(),p(77," CPU configuration for 'HiSilicon Kirin 980 (Hi3680)' succeeded! You can now send commands. "),f(),h(78,"p"),p(79,"skidbladnir:[0]$"),f()(),Tn())}function DD(e,t){if(e&1&&(h(0,"a",43),p(1),f()),e&2){let n=P().$implicit;S("href",n.url,qe),w(),Ht(" ",n.url," ")}}function bD(e,t){if(e&1){let n=ye();h(0,"a",44),z("click",function(){oe(n);let o=P().$implicit,i=P();return ie(i.handleProjectClick(o))}),p(1),f()}if(e&2){let n=P().$implicit;w(),Ht(" ",n.url," ")}}function xD(e,t){if(e&1&&(h(0,"span",45),p(1),f()),e&2){let n=t.$implicit;w(),xe(n)}}function ID(e,t){if(e&1&&(h(0,"div",10)(1,"div",11)(2,"div",12)(3,"div",13)(4,"div",14),O(5,"span",15)(6,"span",16)(7,"span",17),f(),h(8,"div",18),p(9),f()(),h(10,"div",19),W(11,yD,2,1,"ng-container",20)(12,_D,3,3,"ng-container",20)(13,CD,80,0,"ng-container",20),f()()(),h(14,"div",21)(15,"h2",22),p(16),f(),W(17,DD,2,2,"a",23)(18,bD,2,1,"a",24),O(19,"div",25),h(20,"div",26),W(21,xD,2,1,"span",27),f()()()),e&2){let n=t.$implicit;S("ngClass",lc(11,pD,n.reverse)),w(9),xe(n.windowTitle),w(),S("ngClass",lc(13,gD,n.windowTitle.includes("Browser"))),w(),S("ngIf",!n.terminal&&!n.windowTitle.includes("Browser")),w(),S("ngIf",n.windowTitle.includes("Browser")),w(),S("ngIf",n.terminal),w(3),xe(n.title),w(),S("ngIf",n.title!=="Exploiting Alexa"),w(),S("ngIf",n.title==="Exploiting Alexa"),w(),S("innerHTML",n.description,ef),w(2),S("ngForOf",n.skills)}}function ED(e,t){e&1&&(h(0,"div",46)(1,"div",47)(2,"h3",48),p(3,"Echo Show 5 (1st Gen)"),f(),h(4,"p",49),p(5,"Codename: checkers"),f(),h(6,"a",50),p(7," View Instructions \u2192 "),f()(),h(8,"div",47)(9,"h3",48),p(10,"Echo Dot (2nd Gen)"),f(),h(11,"p",49),p(12,"Codename: biscuit"),f(),h(13,"a",51),p(14," View Instructions \u2192 "),f()(),h(15,"div",47)(16,"h3",48),p(17,"Echo Spot (1st Gen)"),f(),h(18,"p",49),p(19,"Codename: rook"),f(),h(20,"a",52),p(21," View Instructions \u2192 "),f()()(),h(22,"div",53)(23,"h3",54),p(24,"Source Code"),f(),h(25,"p",55)(26,"a",56),p(27," https://github.com/R0rt1z2/amonet "),f()(),h(28,"p",57),p(29,"Check respective branches based on device codename"),f()())}var Dp=(()=>{class e{constructor(){this.selectedImages=[],this.lightboxOpen=!1,this.initialImageIndex=0,this.alexaModalOpen=!1,this.projects=[{title:"Exploiting Alexa",url:"https://github.com/R0rt1z2/amonet",description:"Bootloader unlock and rooting solutions for Amazon Alexa devices including the Echo Show 5, Echo Spot, and Echo Dot. These exploits target vulnerabilities in the MediaTek bootchain using ROP chains to achieve code execution on devices Amazon designed to be permanently locked.

Each device required different exploitation techniques, from software-based approaches for working units to hardware based methods using test points for bricked devices. Once unlocked, you can install TWRP, flash custom ROMs, and basically do whatever you want with the hardware.

Successfully unlocks multiple generations of Alexa hardware, allowing users to install custom launchers, Android apps, LineageOS, and transform these locked-down smart speakers into fully customizable Android devices.",images:["/assets/images/checkers-exploit.jpg","/assets/images/rook-exploit.jpg","/assets/images/checkers-twrp.jpg","/assets/images/biscuit-exploit.jpg","/assets/images/rook-twrp.jpg"],thumbnail:"/assets/images/checkers-exploit.jpg",windowTitle:"Image Viewer: checkers.jpg",skills:["ARM","C","Python","ROP","MediaTek","Electronics","RE"],reverse:!0},{title:"\u304B\u3048\u308B",url:"https://github.com/R0rt1z2/kaeru",description:"ARMv7 payload for MediaTek bootloaders (LK) that enables arbitrary code execution during the boot process. The tool patches bootloader images to inject custom payloads, providing low-level access to device initialization.

Features include bootloader debugging, custom fastboot commands, button remapping, warning removal, and lock state spoofing to pass Play Integrity checks on unlocked devices.

Supports devices from over 20 manufacturers including Huawei, Xiaomi, Realme, Motorola, Oppo, Nokia, and Sony that use MediaTek SoCs.",images:["/assets/images/kaeru.jpg","/assets/images/kaeru-booting.png"],thumbnail:"/assets/images/kaeru.jpg",windowTitle:"Image Viewer: kaeru.jpg",skills:["ARM","C","Electronics","Makefile","Python","RE","Thumb"],reverse:!1},{title:"LK Patcher",url:"https://lkpatcher.r0rt1z2.com",description:"Web-based utility for patching Little Kernel (LK) bootloader images. This tool allows users to easily remove startup warnings, apply custom binary patches, and modify bootloader behaviors without requiring technical knowledge of ARM assembly or hex editing. Features an intuitive interface with drag-and-drop functionality, patch previews, and downloadable patched images.",images:["/assets/images/lkpatcher.png","/assets/images/lkpatcher-editing.png"],thumbnail:"/assets/images/lkpatcher.png",windowTitle:"Browser: LK Patcher",skills:["Angular","TypeScript","RxJS","Binary Analysis","Bootstrap","RE","WebAssembly"],reverse:!0},{title:"Skidbladnir Kirin RA",url:"https://skidbladnir.cat",description:"This is an ongoing, personal project involving multiple skills. Currently on Development since 2021, this is a HiSilicon Kirin mobile servicing tool, supporting most of the devices, which allows you to service, customize, upgrade, recover, and unlock Huawei devices that are supposed to be non-unlockable. WIP is being done for an UI dashboard for the tool.",terminal:!0,windowTitle:"skidbladnir - prod",terminalContent:!0,skills:["ARM Assembly","C","C++","Electronics","RE","Thumb"],reverse:!1}]}openLightbox(n,r=0){this.selectedImages=n,this.initialImageIndex=r,this.lightboxOpen=!0}closeLightbox(){this.lightboxOpen=!1,this.selectedImages=[]}openAlexaModal(){this.alexaModalOpen=!0}closeAlexaModal(){this.alexaModalOpen=!1}handleProjectClick(n){n.title==="Exploiting Alexa"?this.openAlexaModal():window.open(n.url,"_blank")}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["app-projects"]],viewQuery:function(r,o){if(r&1&&Qf(hD,5),r&2){let i;sc(i=ac())&&(o.alexaContent=i.first)}},standalone:!0,features:[Z],decls:13,vars:6,consts:[["alexaContent",""],[1,"projects"],[1,"projects__header"],[1,"section-title"],[1,"section-title__line"],[1,"section-title__text"],[1,"projects__list"],["class","project",3,"ngClass",4,"ngFor","ngForOf"],[3,"close","images","initialIndex","isOpen"],["title","Exploiting Alexa",3,"closeModal","isOpen","content"],[1,"project",3,"ngClass"],[1,"project__window"],[1,"terminal-window"],[1,"terminal-window__bar"],[1,"terminal-window__buttons"],[1,"terminal-window__button","terminal-window__button--close"],[1,"terminal-window__button","terminal-window__button--minimize"],[1,"terminal-window__button","terminal-window__button--maximize"],[1,"terminal-window__title"],[1,"terminal-window__body",3,"ngClass"],[4,"ngIf"],[1,"project__info"],[1,"project__title"],["target","_blank","class","project__link",3,"href",4,"ngIf"],["class","project__link project__link--clickable",3,"click",4,"ngIf"],[1,"project__description",3,"innerHTML"],[1,"project__skills"],["class","project__skill",4,"ngFor","ngForOf"],["class","terminal-window__image-wrapper",4,"ngIf"],[1,"terminal-window__image-wrapper"],[1,"terminal-window__image","clickable-image",3,"click","src","alt"],["class","image-gallery-indicator",4,"ngIf"],[1,"image-gallery-indicator"],[1,"fas","fa-images"],[1,"image-count"],[1,"browser-window__screenshot","clickable-image",3,"click","src","alt"],[1,"terminal-window__content"],[1,"terminal-window__highlight"],[1,"terminal-window__error"],[1,"terminal-window__timestamp"],[1,"terminal-window__info"],[1,"terminal-window__path"],[1,"terminal-window__success"],["target","_blank",1,"project__link",3,"href"],[1,"project__link","project__link--clickable",3,"click"],[1,"project__skill"],[1,"alexa-modal__device-instructions"],[1,"alexa-modal__device-item"],[1,"alexa-modal__device-title"],[1,"alexa-modal__device-codename"],["href","https://xdaforums.com/t/unlock-root-twrp-unbrick-amazon-echo-show-5-1st-gen-2019-checkers.4762900/","target","_blank",1,"alexa-modal__instruction-link"],["href","https://xdaforums.com/t/unlock-root-twrp-unbrick-amazon-echo-dot-2nd-gen-2016-biscuit.4761416/","target","_blank",1,"alexa-modal__instruction-link"],["href","https://xdaforums.com/t/unlock-root-twrp-unbrick-amazon-echo-spot-2017-rook.4754878/","target","_blank",1,"alexa-modal__instruction-link"],[1,"alexa-modal__source-section"],[1,"alexa-modal__source-title"],[1,"alexa-modal__source-text"],["href","https://github.com/R0rt1z2/amonet","target","_blank",1,"alexa-modal__source-link"],[1,"alexa-modal__note"]],template:function(r,o){if(r&1){let i=ye();h(0,"div",1)(1,"div",2)(2,"div",3),O(3,"div",4),h(4,"h2",5),p(5,"\u{1F6E0} Some of my projects..."),f(),O(6,"div",4),f()(),h(7,"div",6),W(8,ID,22,15,"div",7),f()(),h(9,"app-lightbox",8),z("close",function(){return oe(i),ie(o.closeLightbox())}),f(),W(10,ED,30,0,"ng-template",null,0,eh),h(12,"app-modal",9),z("closeModal",function(){return oe(i),ie(o.closeAlexaModal())}),f()}if(r&2){let i=Kf(11);w(8),S("ngForOf",o.projects),w(),S("images",o.selectedImages)("initialIndex",o.initialImageIndex)("isOpen",o.lightboxOpen),w(3),S("isOpen",o.alexaModalOpen)("content",i)}},dependencies:[Gt,wh,hi,On,_p,Cp],styles:['.projects[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;width:100%;padding:2rem 1rem}.projects__header[_ngcontent-%COMP%]{width:100%;max-width:1200px;margin-bottom:3rem}.projects__list[_ngcontent-%COMP%]{width:100%;max-width:1200px;display:flex;flex-direction:column;gap:5rem}.section-title[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%}.section-title__text[_ngcontent-%COMP%]{font-size:1.5rem;margin:0 20px;color:#fff;white-space:nowrap}.section-title__line[_ngcontent-%COMP%]{flex:1;height:1px;background:#c7cdd333;min-width:10px}.project[_ngcontent-%COMP%]{display:flex;gap:2rem;width:100%}.project--reverse[_ngcontent-%COMP%]{flex-direction:row-reverse}.project--reverse[_ngcontent-%COMP%] .project__info[_ngcontent-%COMP%]{align-items:flex-start;text-align:left}.project__window[_ngcontent-%COMP%]{flex:1;min-width:0}.project__info[_ngcontent-%COMP%]{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;text-align:right}.project__title[_ngcontent-%COMP%]{font-size:2rem;margin:0;color:#fff}.project__link[_ngcontent-%COMP%]{color:#c7cdd399;font-size:.9rem;margin-bottom:1rem;text-decoration:none;transition:color .2s}.project__link[_ngcontent-%COMP%]:hover{color:#fff}.project__description[_ngcontent-%COMP%]{background:#2547ae3d;padding:1.5rem;margin-bottom:1.5rem;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;line-height:1.6}.project__skills[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.project--reverse[_ngcontent-%COMP%] .project__skills[_ngcontent-%COMP%]{justify-content:flex-start}.project__skill[_ngcontent-%COMP%]{font-size:.8rem;color:#ffffffe6}.project__skill[_ngcontent-%COMP%]:not(:last-child):after{content:"-";color:#afc2d6;margin-left:.5rem}.terminal-window[_ngcontent-%COMP%]{width:100%;border-radius:6px;overflow:hidden;box-shadow:0 5px 15px #00000080}.terminal-window__bar[_ngcontent-%COMP%]{background:#565656;padding:8px 12px;display:flex;align-items:center;position:relative}.terminal-window__buttons[_ngcontent-%COMP%]{display:flex;gap:6px}.terminal-window__button[_ngcontent-%COMP%]{width:12px;height:12px;border-radius:50%}.terminal-window__button--close[_ngcontent-%COMP%]{background:#f84a4b}.terminal-window__button--minimize[_ngcontent-%COMP%]{background:#fbaf32}.terminal-window__button--maximize[_ngcontent-%COMP%]{background:#30c13a}.terminal-window__title[_ngcontent-%COMP%]{position:absolute;left:50%;transform:translate(-50%);font-size:.8rem;color:#f0f0f0;font-weight:500}.terminal-window__body[_ngcontent-%COMP%]{background-color:#262626;color:#fff;border-radius:0 0 6px 6px;-webkit-backdrop-filter:opacity(1);backdrop-filter:opacity(1)}.terminal-window__body--browser[_ngcontent-%COMP%]{background-color:#f5f5f5;padding:0;overflow:hidden}.terminal-window__body--browser[_ngcontent-%COMP%] .browser-window[_ngcontent-%COMP%], .terminal-window__body--browser[_ngcontent-%COMP%] .browser-window__content[_ngcontent-%COMP%]{width:100%;height:100%}.terminal-window__body--browser[_ngcontent-%COMP%] .terminal-window__image-wrapper[_ngcontent-%COMP%]{padding:0;height:auto}.terminal-window__body--browser[_ngcontent-%COMP%] .terminal-window__image-wrapper[_ngcontent-%COMP%]:before{display:none}.terminal-window__image-wrapper[_ngcontent-%COMP%]{position:relative;overflow:hidden;border-radius:0 0 5px 5px}.terminal-window__image[_ngcontent-%COMP%]{display:block;width:100%;height:auto}.terminal-window[_ngcontent-%COMP%] .clickable-image[_ngcontent-%COMP%]{cursor:pointer;transition:transform .2s ease-in-out,filter .2s ease-in-out}.terminal-window[_ngcontent-%COMP%] .clickable-image[_ngcontent-%COMP%]:hover{filter:brightness(1.05)}.terminal-window[_ngcontent-%COMP%] .image-gallery-indicator[_ngcontent-%COMP%]{position:absolute;top:10px;right:10px;background-color:#000000b3;color:#fff;padding:6px 10px;border-radius:20px;font-size:12px;display:flex;align-items:center;gap:6px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.terminal-window[_ngcontent-%COMP%] .image-gallery-indicator[_ngcontent-%COMP%] .image-count[_ngcontent-%COMP%]{font-family:Fira Mono,monospace}.terminal-window__content[_ngcontent-%COMP%]{font-family:Fira Mono,monospace;font-size:.85rem;padding:1rem;line-height:1.4}.terminal-window__content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0 0 .25rem}.terminal-window__highlight[_ngcontent-%COMP%]{color:#0f0}.terminal-window__error[_ngcontent-%COMP%]{color:red}.terminal-window__timestamp[_ngcontent-%COMP%]{color:#fff}.terminal-window__info[_ngcontent-%COMP%]{color:#00bfff}.terminal-window__path[_ngcontent-%COMP%]{color:gray}.terminal-window__success[_ngcontent-%COMP%]{color:#0f0}.browser-window[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%}.browser-window__content[_ngcontent-%COMP%]{padding:0;margin:0;display:block;background:#fff}.browser-window__screenshot[_ngcontent-%COMP%]{display:block;width:100%;height:auto;margin:0;padding:0;border-radius:0 0 5px 5px}@media (max-width: 768px){.project[_ngcontent-%COMP%], .project--reverse[_ngcontent-%COMP%]{flex-direction:column}.project__info[_ngcontent-%COMP%]{align-items:center;text-align:center}.project__description[_ngcontent-%COMP%]{text-align:left}.project__skills[_ngcontent-%COMP%]{justify-content:center}.terminal-window__content[_ngcontent-%COMP%], .browser-window__address-bar[_ngcontent-%COMP%]{font-size:.75rem}}@media (max-width: 480px){.section-title__text[_ngcontent-%COMP%]{font-size:1.2rem}.project[_ngcontent-%COMP%]{gap:1.5rem}.project__title[_ngcontent-%COMP%]{font-size:1.5rem}.project__description[_ngcontent-%COMP%]{padding:1rem;font-size:.9rem}.terminal-window__content[_ngcontent-%COMP%]{font-size:.7rem;padding:.5rem}.terminal-window__body--browser[_ngcontent-%COMP%], .terminal-window__image-wrapper[_ngcontent-%COMP%], .terminal-window[_ngcontent-%COMP%] .browser-window__content[_ngcontent-%COMP%], .terminal-window[_ngcontent-%COMP%] .browser-window__screenshot[_ngcontent-%COMP%]{border-radius:0 0 5px 5px;overflow:hidden}}@media (max-width: 768px){.terminal-window__body[_ngcontent-%COMP%]{border-radius:0 0 6px 6px;overflow:hidden;padding:0}.terminal-window__body--browser[_ngcontent-%COMP%]{padding:0;margin:0}.terminal-window__body--browser[_ngcontent-%COMP%] .browser-window[_ngcontent-%COMP%], .terminal-window__body--browser[_ngcontent-%COMP%] .browser-window__content[_ngcontent-%COMP%]{padding:0;margin:0;border-radius:0 0 6px 6px}.terminal-window__image-wrapper[_ngcontent-%COMP%], .browser-window__content[_ngcontent-%COMP%]{padding:0;margin:0}.browser-window__screenshot[_ngcontent-%COMP%]{border-radius:0 0 6px 6px;margin:0;padding:0}.terminal-window[_ngcontent-%COMP%], .terminal-window__body[_ngcontent-%COMP%], .terminal-window__body--browser[_ngcontent-%COMP%], .terminal-window__image-wrapper[_ngcontent-%COMP%], .browser-window[_ngcontent-%COMP%], .browser-window__content[_ngcontent-%COMP%], .browser-window__screenshot[_ngcontent-%COMP%]{background-color:#262626}.terminal-window__body--browser[_ngcontent-%COMP%], .terminal-window__body--browser[_ngcontent-%COMP%] .terminal-window__image-wrapper[_ngcontent-%COMP%], .browser-window[_ngcontent-%COMP%], .browser-window__content[_ngcontent-%COMP%]{background-color:#f5f5f5}}.alexa-modal__device-instructions[_ngcontent-%COMP%]{margin-bottom:2rem}.alexa-modal__device-item[_ngcontent-%COMP%]{background:#2547ae3d;padding:1.25rem;margin-bottom:1rem;border-radius:6px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.alexa-modal__device-item[_ngcontent-%COMP%]:last-child{margin-bottom:0}.alexa-modal__device-title[_ngcontent-%COMP%]{margin:0 0 .5rem;color:#fff;font-size:1.2rem}.alexa-modal__device-codename[_ngcontent-%COMP%]{margin:0 0 1rem;color:#ffffffb3;font-family:Fira Mono,monospace;font-size:.9rem}.alexa-modal__instruction-link[_ngcontent-%COMP%]{color:#58a6ff;text-decoration:none;font-weight:500;transition:color .2s}.alexa-modal__instruction-link[_ngcontent-%COMP%]:hover{color:#79c0ff}.alexa-modal__source-section[_ngcontent-%COMP%]{border-top:1px solid rgba(88,166,255,.3);padding-top:1.5rem}.alexa-modal__source-title[_ngcontent-%COMP%]{margin:0 0 1rem;color:#58a6ff;font-size:1.2rem}.alexa-modal__source-text[_ngcontent-%COMP%]{margin:.5rem 0;color:#fff}.alexa-modal__source-link[_ngcontent-%COMP%]{color:#58a6ff;text-decoration:none;font-family:Fira Mono,monospace;transition:color .2s}.alexa-modal__source-link[_ngcontent-%COMP%]:hover{color:#79c0ff}.alexa-modal__note[_ngcontent-%COMP%]{color:#fff9;font-size:.85rem;font-style:italic;margin-top:.5rem}@media (max-width: 480px){.alexa-modal__device-item[_ngcontent-%COMP%]{padding:1rem}}.project__link--clickable[_ngcontent-%COMP%]{cursor:pointer}']})}}return e})();var bp=(()=>{class e{constructor(){this.email="mailto:hello@r0rt1z2.com",this.telegramUrl="https://r0rt1z2.t.me"}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["app-contact"]],standalone:!0,features:[Z],decls:15,vars:1,consts:[[1,"contact"],[1,"contact__header"],[1,"section-title"],[1,"section-title__line"],[1,"section-title__text"],[1,"contact__container"],[1,"contact__box"],[1,"contact__text"],["target","_blank",1,"contact__button",3,"href"]],template:function(r,o){r&1&&(h(0,"div",0)(1,"div",1)(2,"div",2),O(3,"div",3),h(4,"h2",4),p(5,"\u2709\uFE0F Connect with me!"),f(),O(6,"div",3),f()(),h(7,"div",5)(8,"div",6)(9,"p",7),p(10," I'm open to all types of job opportunities and would love to connect with you. If you wish to get in touch, please do not hesitate. "),f(),h(11,"p",7),p(12," I'm always happy to hear from you and look forward to your messages! "),f(),h(13,"a",8),p(14,"Let's talk!"),f()()()()),r&2&&(w(13),S("href",o.email,qe))},styles:[".contact[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;width:100%;padding:2rem 1rem;min-height:auto}.contact__header[_ngcontent-%COMP%]{width:100%;max-width:1200px;margin-bottom:2rem}.contact__container[_ngcontent-%COMP%]{width:100%;display:flex;justify-content:center}.contact__box[_ngcontent-%COMP%]{width:80%;max-width:750px;border:2px dashed rgba(255,255,255,.3);padding:2rem 3rem;text-align:center}@media (max-width: 768px){.contact__box[_ngcontent-%COMP%]{width:90%;padding:1.5rem}}@media (max-width: 480px){.contact__box[_ngcontent-%COMP%]{width:95%;padding:1rem}}.contact__text[_ngcontent-%COMP%]{color:#fff;margin-bottom:1rem;line-height:1.5;font-size:1rem}@media (max-width: 480px){.contact__text[_ngcontent-%COMP%]{font-size:.9rem;margin-bottom:.75rem}}.contact__button[_ngcontent-%COMP%]{display:inline-block;padding:.8rem 1.5rem;background-color:transparent;border:2px solid #6f42c1;border-radius:.25rem;color:#bda5ea;font-size:1rem;text-decoration:none;transition:all .3s ease-in-out}.contact__button[_ngcontent-%COMP%]:hover{background-color:#6f42c1;color:#fff}@media (max-width: 480px){.contact__button[_ngcontent-%COMP%]{padding:.6rem 1.2rem;font-size:.9rem}}.section-title[_ngcontent-%COMP%]{display:flex;align-items:center;width:100%}.section-title__text[_ngcontent-%COMP%]{font-size:1.5rem;margin:0 20px;color:#fff;white-space:nowrap}@media (max-width: 480px){.section-title__text[_ngcontent-%COMP%]{font-size:1.2rem}}.section-title__line[_ngcontent-%COMP%]{flex:1;height:1px;background:#c7cdd333;min-width:10px}"]})}}return e})();var xp=(()=>{class e{constructor(n,r){this.elementRef=n,this.scrollService=r}ngAfterViewInit(){this.setupIntersectionObserver()}setupIntersectionObserver(){let n={root:null,rootMargin:"-80px 0px 0px 0px",threshold:.15},r=new IntersectionObserver(i=>{let s=i.filter(a=>a.isIntersecting);if(s.length>0){let a=s.reduce((c,l)=>c.intersectionRatio>l.intersectionRatio?c:l);this.scrollService.setActiveSection(a.target.id)}},n);this.elementRef.nativeElement.querySelectorAll("section[id]").forEach(i=>{r.observe(i)}),window.addEventListener("scroll",()=>{let i=window.scrollY,s=window.innerHeight;document.body.scrollHeight-(i+s)<150&&this.scrollService.setActiveSection("contact")},{passive:!0})}static{this.\u0275fac=function(r){return new(r||e)(se(Ke),se(Ni))}}static{this.\u0275cmp=Y({type:e,selectors:[["app-main"]],standalone:!0,features:[Z],decls:9,vars:0,consts:[["id","home",1,"landing-section"],["id","about"],["id","projects"],["id","contact",1,"compact-section"]],template:function(r,o){r&1&&(h(0,"main")(1,"section",0),O(2,"app-landing"),f(),h(3,"section",1),O(4,"app-whoami"),f(),h(5,"section",2),O(6,"app-projects"),f(),h(7,"section",3),O(8,"app-contact"),f()())},dependencies:[vp,wp,Dp,bp],styles:["main[_ngcontent-%COMP%]{display:flex;flex-direction:column;width:100%}section[_ngcontent-%COMP%]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:50px 20px;width:100%}section.landing-section[_ngcontent-%COMP%]{min-height:100vh;height:100vh;padding:0}section.compact-section[_ngcontent-%COMP%]{min-height:auto;padding:3rem 20px}@media (max-width: 768px){section[_ngcontent-%COMP%]{padding:30px 20px}section.landing-section[_ngcontent-%COMP%]{height:auto;min-height:100vh}}"]})}}return e})();var MD=()=>({url:"https://r0rt1z2.t.me",icon:"fa-brands fa-telegram"}),SD=()=>({url:"https://github.com/R0rt1z2",icon:"fa-brands fa-github"}),TD=()=>({url:"https://www.linkedin.com/in/r0rt1z2/",icon:"fa-brands fa-linkedin"}),AD=()=>({url:"mailto:hello@r0rt1z2.com",icon:"fa-solid fa-envelope"}),OD=(e,t,n,r)=>[e,t,n,r],Ip=(()=>{class e{constructor(){this.title="portfolio"}static{this.\u0275fac=function(r){return new(r||e)}}static{this.\u0275cmp=Y({type:e,selectors:[["app-root"]],standalone:!0,features:[Z],decls:5,vars:10,consts:[[3,"socialLinks"],["email","hello@r0rt1z2.com"]],template:function(r,o){r&1&&O(0,"app-header")(1,"app-main")(2,"app-sidebar",0)(3,"app-sidebar",1)(4,"app-footer"),r&2&&(w(2),S("socialLinks",Jf(5,OD,pr(1,MD),pr(2,SD),pr(3,TD),pr(4,AD))))},dependencies:[mp,pp,yp,xp]})}}return e})();Th(Ip,hp).catch(e=>console.error(e));