(self.webpackChunkapp=self.webpackChunkapp||[]).push([[4602],{74602:(yt,we,L)=>{L.r(we),L.d(we,{FirebasePerformanceWeb:()=>Xn});var pe,_e,R=L(15861),w=L(47423),ie=L(69991),F=L(87916),Q=function(){var e=self.performance&&performance.getEntriesByType&&performance.getEntriesByType("navigation")[0];if(e&&e.responseStart>0&&e.responseStart(t||100)-1)return r||c;if(r=r?c+">"+r:c,a.id)break;e=a.parentNode}}catch{}return r},_=-1,M=function(e){addEventListener("pageshow",function(t){t.persisted&&(_=t.timeStamp,e(t))},!0)},U=function(){var e=Q();return e&&e.activationStart||0},V=function(e,t){var r=Q(),a="navigate";return _>=0?a="back-forward-cache":r&&(document.prerendering||U()>0?a="prerender":document.wasDiscarded?a="restore":r.type&&(a=r.type.replace(/_/g,"-"))),{name:e,value:void 0===t?-1:t,rating:"good",delta:0,entries:[],id:"v4-".concat(Date.now(),"-").concat(Math.floor(8999999999999*Math.random())+1e12),navigationType:a}},z=function(e,t,r){try{if(PerformanceObserver.supportedEntryTypes.includes(e)){var a=new PerformanceObserver(function(c){Promise.resolve().then(function(){t(c.getEntries())})});return a.observe(Object.assign({type:e,buffered:!0},r||{})),a}}catch{}},J=function(e,t,r,a){var c,v;return function(b){var E,D;t.value>=0&&(b||a)&&((v=t.value-(c||0))||void 0===c)&&(c=t.value,t.delta=v,t.rating=(E=t.value)>(D=r)[1]?"poor":E>D[0]?"needs-improvement":"good",e(t))}},$=function(e){requestAnimationFrame(function(){return requestAnimationFrame(function(){return e()})})},se=function(e){document.addEventListener("visibilitychange",function(){"hidden"===document.visibilityState&&e()})},Ie=function(e){var t=!1;return function(){t||(e(),t=!0)}},Se=-1,Ue=function(){return"hidden"!==document.visibilityState||document.prerendering?1/0:0},Re=function(e){"hidden"===document.visibilityState&&Se>-1&&(Se="visibilitychange"===e.type?e.timeStamp:0,Ne())},be=function(){addEventListener("visibilitychange",Re,!0),addEventListener("prerenderingchange",Re,!0)},Ne=function(){removeEventListener("visibilitychange",Re,!0),removeEventListener("prerenderingchange",Re,!0)},T=function(){return Se<0&&(Se=Ue(),be(),M(function(){setTimeout(function(){Se=Ue(),be()},0)})),{get firstHiddenTime(){return Se}}},S=function(e){document.prerendering?addEventListener("prerenderingchange",function(){return e()},!0):e()},P=[1800,3e3],ne=[.1,.25],oe=function(e,t){var r,a;r=function(r){var a=function(c){var v,b={};if(c.entries.length){var E=c.entries.reduce(function(H,X){return H&&H.value>X.value?H:X});if(E&&E.sources&&E.sources.length){var D=(v=E.sources).find(function(H){return H.node&&1===H.node.nodeType})||v[0];D&&(b={largestShiftTarget:p(D.node),largestShiftTime:E.startTime,largestShiftValue:E.value,largestShiftSource:D,largestShiftEntry:E,loadState:ee(E.startTime)})}}return Object.assign(c,{attribution:b})}(r);e(a)},a=(a=t)||{},function(e,t){t=t||{},S(function(){var r,a=T(),c=V("FCP"),v=z("paint",function(b){b.forEach(function(E){"first-contentful-paint"===E.name&&(v.disconnect(),E.startTimev.value&&(v.value=b,v.entries=E,c())},H=z("layout-shift",D);H&&(c=J(r,v,ne,a.reportAllChanges),se(function(){D(H.takeRecords()),c(!0)}),M(function(){b=0,v=V("CLS",0),c=J(r,v,ne,a.reportAllChanges),$(function(){return c()})}),setTimeout(c,0))}))},ve=0,q=1/0,me=0,fe=function(e){e.forEach(function(t){t.interactionId&&(q=Math.min(q,t.interactionId),me=Math.max(me,t.interactionId),ve=me?(me-q)/7+1:0)})},$e=function(){return pe?ve:performance.interactionCount||0},ge=[],de=new Map,Me=0,Ae=[],Et=function(e){if(Ae.forEach(function(c){return c(e)}),e.interactionId||"first-input"===e.entryType){var t=ge[ge.length-1],r=de.get(e.interactionId);if(r||ge.length<10||e.duration>t.latency){if(r)e.duration>r.latency?(r.entries=[e],r.latency=e.duration):e.duration===r.latency&&e.startTime===r.entries[0].startTime&&r.entries.push(e);else{var a={id:e.interactionId,latency:e.duration,entries:[e]};de.set(a.id,a),ge.push(a)}ge.sort(function(c,v){return v.latency-c.latency}),ge.length>10&&ge.splice(10).forEach(function(c){return de.delete(c.id)})}}},Pe=function(e){var t=self.requestIdleCallback||self.setTimeout,r=-1;return e=Ie(e),"hidden"===document.visibilityState?e():(r=t(e),se(e)),r},at=[200,500],ce=[],ye=[],qe=0,ke=new WeakMap,W=new Map,xe=-1,Ge=function(e){ce=ce.concat(e),Le()},Le=function(){xe<0&&(xe=Pe(Qe))},Qe=function(){W.size>10&&W.forEach(function(b,E){de.has(E)||W.delete(E)});var e=ge.map(function(b){return ke.get(b.entries[0])}),t=ye.length-50;ye=ye.filter(function(b,E){return E>=t||e.includes(b)});for(var r=new Set,a=0;aqe&&E>v||r.has(b)}),xe=-1};Ae.push(function(e){e.interactionId&&e.target&&!W.has(e.interactionId)&&W.set(e.interactionId,e.target)},function(e){var t,r=e.startTime+e.duration;qe=Math.max(qe,e.processingEnd);for(var a=ye.length-1;a>=0;a--){var c=ye[a];if(Math.abs(r-c.renderTime)<=8){(t=c).startTime=Math.min(e.startTime,t.startTime),t.processingStart=Math.min(e.processingStart,t.processingStart),t.processingEnd=Math.max(e.processingEnd,t.processingEnd),t.entries.push(e);break}}t||ye.push(t={startTime:e.startTime,processingStart:e.processingStart,processingEnd:e.processingEnd,renderTime:r,entries:[e]}),(e.interactionId||"first-input"===e.entryType)&&ke.set(e,t),Le()});var _t=function(e,t){for(var r,a=[],c=0;r=ce[c];c++)if(!(r.startTime+r.durationt)break;a.push(r)}return a},Xe=function(e,t){_e||(_e=z("long-animation-frame",Ge)),function(e,t){"PerformanceEventTiming"in self&&"interactionId"in PerformanceEventTiming.prototype&&(t=t||{},S(function(){var r;"interactionCount"in performance||pe||(pe=z("event",fe,{type:"event",buffered:!0,durationThreshold:0}));var a,c=V("INP"),v=function(E){Pe(function(){E.forEach(Et);var D=function(){var e=Math.min(ge.length-1,Math.floor(($e()-Me)/50));return ge[e]}();D&&D.latency!==c.value&&(c.value=D.latency,c.entries=D.entries,a())})},b=z("event",v,{durationThreshold:null!==(r=t.durationThreshold)&&void 0!==r?r:40});a=J(e,c,at,t.reportAllChanges),b&&(b.observe({type:"first-input",buffered:!0}),se(function(){v(b.takeRecords()),a(!0)}),M(function(){Me=$e(),ge.length=0,de.clear(),c=V("INP"),a=J(e,c,at,t.reportAllChanges)}))}))}(function(r){var c,v,b,E,D,H,X,G,Fe,ot,kt,Jn,a=(b=ke.get(v=(c=r).entries[0]),E=v.processingStart,D=b.processingEnd,H=b.entries.sort(function(At,Yn){return At.processingStart-Yn.processingStart}),X=_t(v.startTime,D),Fe=(G=c.entries.find(function(At){return At.target}))&&G.target||W.get(v.interactionId),ot=[v.startTime+v.duration,D].concat(X.map(function(At){return At.startTime+At.duration})),kt=Math.max.apply(Math,ot),Jn={interactionTarget:p(Fe),interactionTargetElement:Fe,interactionType:v.name.startsWith("key")?"keyboard":"pointer",interactionTime:v.startTime,nextPaintTime:kt,processedEventEntries:H,longAnimationFrameEntries:X,inputDelay:E-v.startTime,processingDuration:D-E,presentationDelay:Math.max(kt-D,0),loadState:ee(v.startTime)},Object.assign(c,{attribution:Jn}));e(a)},t)},He=[2500,4e3],et={},Tt=function(e,t){var r,a;r=function(r){var a=function(c){var v={timeToFirstByte:0,resourceLoadDelay:0,resourceLoadDuration:0,elementRenderDelay:c.value};if(c.entries.length){var b=Q();if(b){var E=b.activationStart||0,D=c.entries[c.entries.length-1],H=D.url&&performance.getEntriesByType("resource").filter(function(kt){return kt.name===D.url})[0],X=Math.max(0,b.responseStart-E),G=Math.max(X,H?(H.requestStart||H.startTime)-E:0),Fe=Math.max(G,H?H.responseEnd-E:0),ot=Math.max(Fe,D.startTime-E);v={element:p(D.element),timeToFirstByte:X,resourceLoadDelay:G-X,resourceLoadDuration:Fe-G,elementRenderDelay:ot-Fe,navigationEntry:b,lcpEntry:D},D.url&&(v.url=D.url),H&&(v.lcpResourceEntry=H)}}return Object.assign(c,{attribution:v})}(r);e(a)},a=(a=t)||{},S(function(){var c,v=T(),b=V("LCP"),E=function(X){a.reportAllChanges||(X=X.slice(-1)),X.forEach(function(G){G.startTime{for(const v of c.getEntries())r(v)}).observe({entryTypes:[t]})}static getInstance(){return void 0===d&&(d=new C(m)),d}}function Ce(){return ae}function mt(e,t){const r=e.length-t.length;if(r<0||r>1)throw s.create("invalid String merger input");const a=[];for(let c=0;cc&&a.push(t.charAt(c));return a.join("")}class De{constructor(){this.instrumentationEnabled=!0,this.dataCollectionEnabled=!0,this.loggingEnabled=!1,this.tracesSamplingRate=1,this.networkRequestsSamplingRate=1,this.logEndPointUrl="https://firebaselogging.googleapis.com/v0cc/log?format=json_proto",this.flTransportEndpointUrl=mt("hts/frbslgigp.ogepscmv/ieo/eaylg","tp:/ieaeogn-agolai.o/1frlglgc/o"),this.transportKey=mt("AzSC8r6ReiGqFMyfvgow","Iayx0u-XT3vksVM-pIV"),this.logSource=462,this.logTraceAfterSampling=!1,this.logNetworkAfterSampling=!1,this.configTimeToLive=12}getFlTransportFullUrl(){return this.flTransportEndpointUrl.concat("?key=",this.transportKey)}static getInstance(){return void 0===Ot&&(Ot=new De),Ot}}var It=(()=>{return(e=It||(It={}))[e.UNKNOWN=0]="UNKNOWN",e[e.VISIBLE=1]="VISIBLE",e[e.HIDDEN=2]="HIDDEN",It;var e})();const rn=["firebase_","google_","ga_"],sn=new RegExp("^[a-zA-Z]\\w*$");function cn(){const e=C.getInstance().navigator;return e?.serviceWorker?e.serviceWorker.controller?2:3:1}function un(){switch(C.getInstance().document.visibilityState){case"visible":return It.VISIBLE;case"hidden":return It.HIDDEN;default:return It.UNKNOWN}}function ln(){const t=C.getInstance().navigator.connection;switch(t&&t.effectiveType){case"slow-2g":return 1;case"2g":return 2;case"3g":return 3;case"4g":return 4;default:return 0}}function $t(e){var t;const r=null===(t=e.options)||void 0===t?void 0:t.appId;if(!r)throw s.create("no app id");return r}const Ke={loggingEnabled:!0};const yn="Could not fetch config, will use default configs";function jt(e){if(!e)return e;const t=De.getInstance(),r=e.entries||{};return t.loggingEnabled=void 0!==r.fpr_enabled?"true"===String(r.fpr_enabled):Ke.loggingEnabled,r.fpr_log_source?t.logSource=Number(r.fpr_log_source):Ke.logSource&&(t.logSource=Ke.logSource),r.fpr_log_endpoint_url?t.logEndPointUrl=r.fpr_log_endpoint_url:Ke.logEndPointUrl&&(t.logEndPointUrl=Ke.logEndPointUrl),r.fpr_log_transport_key?t.transportKey=r.fpr_log_transport_key:Ke.transportKey&&(t.transportKey=Ke.transportKey),void 0!==r.fpr_vc_network_request_sampling_rate?t.networkRequestsSamplingRate=Number(r.fpr_vc_network_request_sampling_rate):void 0!==Ke.networkRequestsSamplingRate&&(t.networkRequestsSamplingRate=Ke.networkRequestsSamplingRate),void 0!==r.fpr_vc_trace_sampling_rate?t.tracesSamplingRate=Number(r.fpr_vc_trace_sampling_rate):void 0!==Ke.tracesSamplingRate&&(t.tracesSamplingRate=Ke.tracesSamplingRate),t.logTraceAfterSampling=Ht(t.tracesSamplingRate),t.logNetworkAfterSampling=Ht(t.networkRequestsSamplingRate),e}function Ht(e){return Math.random()<=e}let Lt,xt=1;function Vt(e){return xt=2,Lt=Lt||function Sn(e){return function An(){const e=C.getInstance().document;return new Promise(t=>{if(e&&"complete"!==e.readyState){const r=()=>{"complete"===e.readyState&&(e.removeEventListener("readystatechange",r),t())};e.addEventListener("readystatechange",r)}else t()})}().then(()=>function ue(e){const t=e.getId();return t.then(r=>{ae=r}),t}(e.installations)).then(t=>function _n(e,t){const r=function bn(){const e=C.getInstance().localStorage;if(!e)return;const t=e.getItem(A);if(!t||!function Tn(e){return Number(e)>Date.now()}(t))return;const r=e.getItem(u);if(r)try{return JSON.parse(r)}catch{return}}();return r?(jt(r),Promise.resolve()):function En(e,t){return function le(e){const t=e.getToken();return t.then(r=>{}),t}(e.installations).then(r=>{const a=function hn(e){var t;const r=null===(t=e.options)||void 0===t?void 0:t.projectId;if(!r)throw s.create("no project id");return r}(e.app),c=function pn(e){var t;const r=null===(t=e.options)||void 0===t?void 0:t.apiKey;if(!r)throw s.create("no api key");return r}(e.app),b=new Request(`https://firebaseremoteconfig.googleapis.com/v1/projects/${a}/namespaces/fireperf:fetch?key=${c}`,{method:"POST",headers:{Authorization:`FIREBASE_INSTALLATIONS_AUTH ${r}`},body:JSON.stringify({app_instance_id:t,app_instance_id_token:r,app_id:$t(e.app),app_version:"0.7.7",sdk_version:"0.0.1"})});return fetch(b).then(E=>{if(E.ok)return E.json();throw s.create("RC response not ok")})}).catch(()=>{l.info(yn)})}(e,t).then(jt).then(a=>function vn(e){const t=C.getInstance().localStorage;!e||!t||(t.setItem(u,JSON.stringify(e)),t.setItem(A,String(Date.now()+60*De.getInstance().configTimeToLive*60*1e3)))}(a),()=>{})}(e,t)).then(()=>zt(),()=>zt())}(e),Lt}function zt(){xt=3}let Dt,Rt=3,vt=[],Zt=!1;function Bt(e){setTimeout(()=>{Rt<=0||(vt.length>0&&qt(),Bt(1e4))},e)}function qt(){const e=vt.splice(0,1e3),t=e.map(a=>({source_extension_json_proto3:a.message,event_time_ms:String(a.eventTime)}));(function Dn(e){const t=De.getInstance().getFlTransportFullUrl(),r=JSON.stringify(e);return navigator.sendBeacon&&navigator.sendBeacon(t,r)?Promise.resolve():fetch(t,{method:"POST",body:r,keepalive:!0}).then()})({request_time_ms:String(Date.now()),client_info:{client_type:1,js_client_info:{}},log_source:De.getInstance().logSource,log_event:t}).then(()=>{Rt=3}).catch(()=>{vt=[...e,...vt],Rt--,l.info(`Tries left: ${Rt}.`),Bt(1e4)})}function Nn(e){return(...t)=>{!function Rn(e){if(!e.eventTime||!e.message)throw s.create("invalid cc log");vt=[...vt,e]}({message:e(...t),eventTime:Date.now()})}}function Mn(){for(;vt.length>0;)qt()}function Gt(e,t){Dt||(Dt={send:Nn(xn),flush:Mn}),Dt.send(e,t)}function Nt(e){const t=De.getInstance();!t.instrumentationEnabled&&e.isAuto||!t.dataCollectionEnabled&&!e.isAuto||!C.getInstance().requiredApisAvailable()||(function In(){return 3===xt}()?Ft(e):Vt(e.performanceController).then(()=>Ft(e),()=>Ft(e)))}function Ft(e){if(!Ce())return;const t=De.getInstance();!t.loggingEnabled||!t.logTraceAfterSampling||Gt(e,1)}function xn(e,t){return 0===t?function Ln(e){const t={url:e.url,http_method:e.httpMethod||0,http_response_code:200,response_payload_bytes:e.responsePayloadBytes,client_start_time_us:e.startTimeUs,time_to_response_initiated_us:e.timeToResponseInitiatedUs,time_to_response_completed_us:e.timeToResponseCompletedUs},r={application_info:Xt(e.performanceController.app),network_request_metric:t};return JSON.stringify(r)}(e):function Bn(e){const t={name:e.name,is_auto:e.isAuto,client_start_time_us:e.startTimeUs,duration_us:e.durationUs};0!==Object.keys(e.counters).length&&(t.counters=e.counters);const r=e.getAttributes();0!==Object.keys(r).length&&(t.custom_attributes=r);const a={application_info:Xt(e.performanceController.app),trace_metric:t};return JSON.stringify(a)}(e)}function Xt(e){return{google_app_id:$t(e),app_instance_id:Ce(),web_app_info:{sdk_version:"0.7.7",page_url:C.getInstance().getUrl(),service_worker_status:cn(),visibility_state:un(),effective_connection_type:ln()},application_process_state:0}}function Jt(e,t){const r=t;if(!r||void 0===r.responseStart)return;const a=C.getInstance().getTimeOrigin(),c=Math.floor(1e3*(r.startTime+a)),v=r.responseStart?Math.floor(1e3*(r.responseStart-r.startTime)):void 0,b=Math.floor(1e3*(r.responseEnd-r.startTime));!function kn(e){const t=De.getInstance();if(!t.instrumentationEnabled)return;const r=e.url,a=t.logEndPointUrl.split("?")[0],c=t.flTransportEndpointUrl.split("?")[0];r===a||r===c||!t.loggingEnabled||!t.logNetworkAfterSampling||Gt(e,0)}({performanceController:e,url:r.name&&r.name.split("?")[0],responsePayloadBytes:r.transferSize,startTimeUs:c,timeToResponseInitiatedUs:v,timeToResponseCompletedUs:b})}const $n=["_fp",x,K,"_lcp",o,i];class St{constructor(t,r,a=!1,c){this.performanceController=t,this.name=r,this.isAuto=a,this.state=1,this.customAttributes={},this.counters={},this.api=C.getInstance(),this.randomId=Math.floor(1e6*Math.random()),this.isAuto||(this.traceStartMark=`FB-PERF-TRACE-START-${this.randomId}-${this.name}`,this.traceStopMark=`FB-PERF-TRACE-STOP-${this.randomId}-${this.name}`,this.traceMeasure=c||`${g}-${this.randomId}-${this.name}`,c&&this.calculateTraceMetrics())}start(){if(1!==this.state)throw s.create("trace started",{traceName:this.name});this.api.mark(this.traceStartMark),this.state=2}stop(){if(2!==this.state)throw s.create("trace stopped",{traceName:this.name});this.state=3,this.api.mark(this.traceStopMark),this.api.measure(this.traceMeasure,this.traceStartMark,this.traceStopMark),this.calculateTraceMetrics(),Nt(this)}record(t,r,a){if(t<=0)throw s.create("nonpositive trace startTime",{traceName:this.name});if(r<=0)throw s.create("nonpositive trace duration",{traceName:this.name});if(this.durationUs=Math.floor(1e3*r),this.startTimeUs=Math.floor(1e3*t),a&&a.attributes&&(this.customAttributes=Object.assign({},a.attributes)),a&&a.metrics)for(const c of Object.keys(a.metrics))isNaN(Number(a.metrics[c]))||(this.counters[c]=Math.floor(Number(a.metrics[c])));Nt(this)}incrementMetric(t,r=1){this.putMetric(t,void 0===this.counters[t]?r:this.counters[t]+r)}putMetric(t,r){if(!function jn(e,t){return!(0===e.length||e.length>100)&&(t&&t.startsWith(I)&&$n.indexOf(e)>-1||!e.startsWith("_"))}(t,this.name))throw s.create("invalid custom metric name",{customMetricName:t});this.counters[t]=function Hn(e){const t=Math.floor(e);return t40||rn.some(r=>e.startsWith(r))||!e.match(sn))}(t),c=function dn(e){return 0!==e.length&&e.length<=100}(r);if(a&&c)this.customAttributes[t]=r;else{if(!a)throw s.create("invalid attribute name",{attributeName:t});if(!c)throw s.create("invalid attribute value",{attributeValue:r})}}getAttribute(t){return this.customAttributes[t]}removeAttribute(t){void 0!==this.customAttributes[t]&&delete this.customAttributes[t]}getAttributes(){return Object.assign({},this.customAttributes)}setStartTime(t){this.startTimeUs=t}setDuration(t){this.durationUs=t}calculateTraceMetrics(){const t=this.api.getEntriesByName(this.traceMeasure),r=t&&t[0];r&&(this.durationUs=Math.floor(1e3*r.duration),this.startTimeUs=Math.floor(1e3*(r.startTime+this.api.getTimeOrigin())))}static createOobTrace(t,r,a,c,v){const b=C.getInstance().getUrl();if(!b)return;const E=new St(t,I+b,!0),D=Math.floor(1e3*C.getInstance().getTimeOrigin());if(E.setStartTime(D),r&&r[0]&&(E.setDuration(Math.floor(1e3*r[0].duration)),E.putMetric("domInteractive",Math.floor(1e3*r[0].domInteractive)),E.putMetric("domContentLoadedEventEnd",Math.floor(1e3*r[0].domContentLoadedEventEnd)),E.putMetric("loadEventEnd",Math.floor(1e3*r[0].loadEventEnd))),a){const G=a.find(ot=>"first-paint"===ot.name);G&&G.startTime&&E.putMetric("_fp",Math.floor(1e3*G.startTime));const Fe=a.find(ot=>"first-contentful-paint"===ot.name);Fe&&Fe.startTime&&E.putMetric(x,Math.floor(1e3*Fe.startTime)),v&&E.putMetric(K,Math.floor(1e3*v))}this.addWebVitalMetric(E,"_lcp","lcp_element",c.lcp),this.addWebVitalMetric(E,o,"cls_largestShiftTarget",c.cls),this.addWebVitalMetric(E,i,"inp_interactionTarget",c.inp),Nt(E),function Pn(){Dt&&Dt.flush()}()}static addWebVitalMetric(t,r,a,c){c&&(t.putMetric(r,Math.floor(1e3*c.value)),c.elementAttribution&&t.putAttribute(a,c.elementAttribution))}static createUserTimingTrace(t,r){Nt(new St(t,r,!1,r))}}let Qt,Mt={},Yt=!1;function en(e){!Ce()||(setTimeout(()=>function zn(e){const t=C.getInstance();"onpagehide"in window?t.document.addEventListener("pagehide",()=>Ut(e)):t.document.addEventListener("unload",()=>Ut(e)),t.document.addEventListener("visibilitychange",()=>{"hidden"===t.document.visibilityState&&Ut(e)}),t.onFirstInputDelay&&t.onFirstInputDelay(r=>{Qt=r}),t.onLCP(r=>{var a;Mt.lcp={value:r.value,elementAttribution:null===(a=r.attribution)||void 0===a?void 0:a.element}}),t.onCLS(r=>{var a;Mt.cls={value:r.value,elementAttribution:null===(a=r.attribution)||void 0===a?void 0:a.largestShiftTarget}}),t.onINP(r=>{var a;Mt.inp={value:r.value,elementAttribution:null===(a=r.attribution)||void 0===a?void 0:a.interactionTarget}})}(e),0),setTimeout(()=>function Vn(e){const t=C.getInstance(),r=t.getEntriesByType("resource");for(const a of r)Jt(e,a);t.setupObserver("resource",a=>Jt(e,a))}(e),0),setTimeout(()=>function Wn(e){const t=C.getInstance(),r=t.getEntriesByType("measure");for(const a of r)tn(e,a);t.setupObserver("measure",a=>tn(e,a))}(e),0))}function tn(e,t){const r=t.name;r.substring(0,g.length)!==g&&St.createUserTimingTrace(e,r)}function Ut(e){if(!Yt){Yt=!0;const t=C.getInstance(),r=t.getEntriesByType("navigation"),a=t.getEntriesByType("paint");setTimeout(()=>{St.createOobTrace(e,r,a,Mt,Qt)},0)}}class Kn{constructor(t,r){this.app=t,this.installations=r,this.initialized=!1}_init(t){this.initialized||(void 0!==t?.dataCollectionEnabled&&(this.dataCollectionEnabled=t.dataCollectionEnabled),void 0!==t?.instrumentationEnabled&&(this.instrumentationEnabled=t.instrumentationEnabled),C.getInstance().requiredApisAvailable()?(0,ie.eu)().then(r=>{r&&(function On(){Zt||(Bt(5500),Zt=!0)}(),Vt(this).then(()=>en(this),()=>en(this)),this.initialized=!0)}).catch(r=>{l.info(`Environment doesn't support IndexedDB: ${r}`)}):l.info('Firebase Performance cannot start if the browser does not support "Fetch" and "Promise", or cookies are disabled.'))}set instrumentationEnabled(t){De.getInstance().instrumentationEnabled=t}get instrumentationEnabled(){return De.getInstance().instrumentationEnabled}set dataCollectionEnabled(t){De.getInstance().dataCollectionEnabled=t}get dataCollectionEnabled(){return De.getInstance().dataCollectionEnabled}}function Pt(e=(0,We.Mq)()){return e=(0,ie.m9)(e),(0,We.qX)(e,"performance").getImmediate()}function nn(e,t){return e=(0,ie.m9)(e),new St(e,t)}const qn=(e,{options:t})=>{const r=e.getProvider("app").getImmediate(),a=e.getProvider("installations-internal").getImmediate();if("[DEFAULT]"!==r.name)throw s.create("FB not default");if(typeof window>"u")throw s.create("no window");!function B(e){m=e}(window);const c=new Kn(r,a);return c._init(t),c};!function Gn(){(0,We.Xd)(new it.wA("performance",qn,"PUBLIC")),(0,We.KN)(ht,pt),(0,We.KN)(ht,pt,"esm2017")}();let Xn=(()=>{class e extends w.Uw{constructor(){super(...arguments),this.traces={}}startTrace(r){var a=this;return(0,R.Z)(function*(){const v=nn(Pt(),r.traceName);v.start(),a.traces[r.traceName]=v})()}stopTrace(r){var a=this;return(0,R.Z)(function*(){const c=a.traces[r.traceName];if(!c)throw new Error(e.ERROR_TRACE_NOT_FOUND);c.stop(),delete a.traces[r.traceName]})()}incrementMetric(r){var a=this;return(0,R.Z)(function*(){const c=a.traces[r.traceName];if(!c)throw new Error(e.ERROR_TRACE_NOT_FOUND);c.incrementMetric(r.metricName,r.incrementBy)})()}setEnabled(r){return(0,R.Z)(function*(){const a=Pt();a.instrumentationEnabled=r.enabled,a.dataCollectionEnabled=r.enabled})()}isEnabled(){return(0,R.Z)(function*(){const r=Pt();return{enabled:r.instrumentationEnabled||r.dataCollectionEnabled}})()}putAttribute(r){var a=this;return(0,R.Z)(function*({traceName:c,attribute:v,value:b}){const E=a.traces[c];if(!E)throw new Error(e.ERROR_TRACE_NOT_FOUND);E.putAttribute(v,b)}).apply(this,arguments)}getAttribute(r){var a=this;return(0,R.Z)(function*({traceName:c,attribute:v}){var b;const E=a.traces[c];if(!E)throw new Error(e.ERROR_TRACE_NOT_FOUND);return{value:null!==(b=E.getAttribute(v))&&void 0!==b?b:null}}).apply(this,arguments)}getAttributes(r){var a=this;return(0,R.Z)(function*({traceName:c}){const v=a.traces[c];if(!v)throw new Error(e.ERROR_TRACE_NOT_FOUND);return{attributes:v.getAttributes()}}).apply(this,arguments)}removeAttribute(r){var a=this;return(0,R.Z)(function*({traceName:c,attribute:v}){const b=a.traces[c];if(!b)throw new Error(e.ERROR_TRACE_NOT_FOUND);b.removeAttribute(v)}).apply(this,arguments)}putMetric(r){var a=this;return(0,R.Z)(function*({traceName:c,metricName:v,num:b}){const E=a.traces[c];if(!E)throw new Error(e.ERROR_TRACE_NOT_FOUND);E.putMetric(v,b)}).apply(this,arguments)}getMetric(r){var a=this;return(0,R.Z)(function*({traceName:c,metricName:v}){const b=a.traces[c];if(!b)throw new Error(e.ERROR_TRACE_NOT_FOUND);return{value:b.getMetric(v)}}).apply(this,arguments)}record(r){return(0,R.Z)(function*({traceName:a,startTime:c,duration:v,options:b}){nn(Pt(),a).record(c,v,b)}).apply(this,arguments)}}return e.ERROR_TRACE_NOT_FOUND="No trace was found with the provided traceName.",e})()},69991:(yt,we,L)=>{L.d(we,{BH:()=>be,LL:()=>xe,ZR:()=>W,zI:()=>qe,L:()=>p,$s:()=>x,vZ:()=>lt,aH:()=>Ue,m9:()=>Oe,ru:()=>de,hl:()=>ce,eu:()=>ye});const pe=function(i){const n=[];let o=0;for(let h=0;h>6|192,n[o++]=63&u|128):55296==(64512&u)&&h+1>18|240,n[o++]=u>>12&63|128,n[o++]=u>>6&63|128,n[o++]=63&u|128):(n[o++]=u>>12|224,n[o++]=u>>6&63|128,n[o++]=63&u|128)}return n},Q={byteToCharMap_:null,charToByteMap_:null,byteToCharMapWebSafe_:null,charToByteMapWebSafe_:null,ENCODED_VALS_BASE:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789",get ENCODED_VALS(){return this.ENCODED_VALS_BASE+"+/="},get ENCODED_VALS_WEBSAFE(){return this.ENCODED_VALS_BASE+"-_."},HAS_NATIVE_SUPPORT:"function"==typeof atob,encodeByteArray(i,n){if(!Array.isArray(i))throw Error("encodeByteArray takes an array as a parameter");this.init_();const o=n?this.byteToCharMapWebSafe_:this.byteToCharMap_,h=[];for(let u=0;u>6,C=63&s;he||(C=64,N||(m=64)),h.push(o[A>>2],o[(3&A)<<4|Z>>4],o[m],o[C])}return h.join("")},encodeString(i,n){return this.HAS_NATIVE_SUPPORT&&!n?btoa(i):this.encodeByteArray(pe(i),n)},decodeString(i,n){return this.HAS_NATIVE_SUPPORT&&!n?atob(i):function(i){const n=[];let o=0,h=0;for(;o191&&u<224){const A=i[o++];n[h++]=String.fromCharCode((31&u)<<6|63&A)}else if(u>239&&u<365){const he=((7&u)<<18|(63&i[o++])<<12|(63&i[o++])<<6|63&i[o++])-65536;n[h++]=String.fromCharCode(55296+(he>>10)),n[h++]=String.fromCharCode(56320+(1023&he))}else{const A=i[o++],N=i[o++];n[h++]=String.fromCharCode((15&u)<<12|(63&A)<<6|63&N)}}return n.join("")}(this.decodeStringToByteArray(i,n))},decodeStringToByteArray(i,n){this.init_();const o=n?this.charToByteMapWebSafe_:this.charToByteMap_,h=[];for(let u=0;u>4),64!==s&&(h.push(Z<<4&240|s>>2),64!==d&&h.push(s<<6&192|d))}return h},init_(){if(!this.byteToCharMap_){this.byteToCharMap_={},this.charToByteMap_={},this.byteToCharMapWebSafe_={},this.charToByteMapWebSafe_={};for(let i=0;i=this.ENCODED_VALS_BASE.length&&(this.charToByteMap_[this.ENCODED_VALS_WEBSAFE.charAt(i)]=i,this.charToByteMapWebSafe_[this.ENCODED_VALS.charAt(i)]=i)}}};class ee extends Error{constructor(){super(...arguments),this.name="DecodeBase64StringError"}}const p=function(i){return function(i){const n=pe(i);return Q.encodeByteArray(n,!0)}(i).replace(/\./g,"")},se=()=>{try{return function V(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("Unable to locate global object.")}().__FIREBASE_DEFAULTS__||(()=>{if(typeof process>"u"||typeof process.env>"u")return;const i=process.env.__FIREBASE_DEFAULTS__;return i?JSON.parse(i):void 0})()||(()=>{if(typeof document>"u")return;let i;try{i=document.cookie.match(/__FIREBASE_DEFAULTS__=([^;]+)/)}catch{return}const n=i&&function(i){try{return Q.decodeString(i,!0)}catch(n){console.error("base64Decode failed: ",n)}return null}(i[1]);return n&&JSON.parse(n)})()}catch(i){return void console.info(`Unable to get __FIREBASE_DEFAULTS__ due to: ${i}`)}},Ue=()=>{var i;return null===(i=se())||void 0===i?void 0:i.config};class be{constructor(){this.reject=()=>{},this.resolve=()=>{},this.promise=new Promise((n,o)=>{this.resolve=n,this.reject=o})}wrapCallback(n){return(o,h)=>{o?this.reject(o):this.resolve(h),"function"==typeof n&&(this.promise.catch(()=>{}),1===n.length?n(o):n(o,h))}}}function de(){const i="object"==typeof chrome?chrome.runtime:"object"==typeof browser?browser.runtime:void 0;return"object"==typeof i&&void 0!==i.id}function ce(){try{return"object"==typeof indexedDB}catch{return!1}}function ye(){return new Promise((i,n)=>{try{let o=!0;const h="validate-browser-context-for-indexeddb-analytics-module",u=self.indexedDB.open(h);u.onsuccess=()=>{u.result.close(),o||self.indexedDB.deleteDatabase(h),i(!0)},u.onupgradeneeded=()=>{o=!1},u.onerror=()=>{var A;n((null===(A=u.error)||void 0===A?void 0:A.message)||"")}}catch(o){n(o)}})}function qe(){return!(typeof navigator>"u"||!navigator.cookieEnabled)}class W extends Error{constructor(n,o,h){super(o),this.code=n,this.customData=h,this.name="FirebaseError",Object.setPrototypeOf(this,W.prototype),Error.captureStackTrace&&Error.captureStackTrace(this,xe.prototype.create)}}class xe{constructor(n,o,h){this.service=n,this.serviceName=o,this.errors=h}create(n,...o){const h=o[0]||{},u=`${this.service}/${n}`,A=this.errors[n],N=A?function Ge(i,n){return i.replace(Le,(o,h)=>{const u=n[h];return null!=u?String(u):`<${h}?>`})}(A,h):"Error";return new W(u,`${this.serviceName}: ${N} (${u}).`,h)}}const Le=/\{\$([^}]+)}/g;function lt(i,n){if(i===n)return!0;const o=Object.keys(i),h=Object.keys(n);for(const u of o){if(!h.includes(u))return!1;const A=i[u],N=n[u];if(Be(A)&&Be(N)){if(!lt(A,N))return!1}else if(A!==N)return!1}for(const u of h)if(!o.includes(u))return!1;return!0}function Be(i){return null!==i&&"object"==typeof i}function x(i,n=1e3,o=2){const h=n*Math.pow(o,i),u=Math.round(.5*h*(Math.random()-.5)*2);return Math.min(144e5,h+u)}function Oe(i){return i&&i._delegate?i._delegate:i}},13847:(yt,we,L)=>{L.d(we,{KN:()=>He,Mq:()=>gt,Xd:()=>Pe,qX:()=>at});var R=L(15861),w=L(63272),ie=L(87916),F=L(69991),pe=L(98766);class _e{constructor(f){this.container=f}getPlatformInfoString(){return this.container.getProviders().map(g=>{if(function Q(y){return"VERSION"===y.getComponent()?.type}(g)){const I=g.getImmediate();return`${I.library}/${I.version}`}return null}).filter(g=>g).join(" ")}}const ee="@firebase/app",p=new ie.Yd("@firebase/app"),je="[DEFAULT]",ge={[ee]:"fire-core","@firebase/app-compat":"fire-core-compat","@firebase/analytics":"fire-analytics","@firebase/analytics-compat":"fire-analytics-compat","@firebase/app-check":"fire-app-check","@firebase/app-check-compat":"fire-app-check-compat","@firebase/auth":"fire-auth","@firebase/auth-compat":"fire-auth-compat","@firebase/database":"fire-rtdb","@firebase/data-connect":"fire-data-connect","@firebase/database-compat":"fire-rtdb-compat","@firebase/functions":"fire-fn","@firebase/functions-compat":"fire-fn-compat","@firebase/installations":"fire-iid","@firebase/installations-compat":"fire-iid-compat","@firebase/messaging":"fire-fcm","@firebase/messaging-compat":"fire-fcm-compat","@firebase/performance":"fire-perf","@firebase/performance-compat":"fire-perf-compat","@firebase/remote-config":"fire-rc","@firebase/remote-config-compat":"fire-rc-compat","@firebase/storage":"fire-gcs","@firebase/storage-compat":"fire-gcs-compat","@firebase/firestore":"fire-fst","@firebase/firestore-compat":"fire-fst-compat","@firebase/ai":"fire-vertex","fire-js":"fire-js",firebase:"fire-js-all"},de=new Map,Me=new Map,Ze=new Map;function Ae(y,f){try{y.container.addComponent(f)}catch(g){p.debug(`Component ${f.name} failed to register with FirebaseApp ${y.name}`,g)}}function Pe(y){const f=y.name;if(Ze.has(f))return p.debug(`There were multiple attempts to register component ${f}.`),!1;Ze.set(f,y);for(const g of de.values())Ae(g,y);for(const g of Me.values())Ae(g,y);return!0}function at(y,f){const g=y.container.getProvider("heartbeat").getImmediate({optional:!0});return g&&g.triggerHeartbeat(),y.container.getProvider(f)}const W=new F.LL("app","Firebase",{"no-app":"No Firebase App '{$appName}' has been created - call initializeApp() first","bad-app-name":"Illegal App name: '{$appName}'","duplicate-app":"Firebase App named '{$appName}' already exists with different options or config","app-deleted":"Firebase App named '{$appName}' already deleted","server-app-deleted":"Firebase Server App has been deleted","no-options":"Need to provide options, when not being deployed to hosting via source.","invalid-app-argument":"firebase.{$appName}() takes either no argument or a Firebase App instance.","invalid-log-argument":"First argument to `onLog` must be null or a function.","idb-open":"Error thrown when opening IndexedDB. Original error: {$originalErrorMessage}.","idb-get":"Error thrown when reading from IndexedDB. Original error: {$originalErrorMessage}.","idb-set":"Error thrown when writing to IndexedDB. Original error: {$originalErrorMessage}.","idb-delete":"Error thrown when deleting from IndexedDB. Original error: {$originalErrorMessage}.","finalization-registry-not-supported":"FirebaseServerApp deleteOnDeref field defined but the JS runtime does not support FinalizationRegistry.","invalid-server-app-environment":"FirebaseServerApp is not for use in browser environments."});class xe{constructor(f,g,I){this._isDeleted=!1,this._options=Object.assign({},f),this._config=Object.assign({},g),this._name=g.name,this._automaticDataCollectionEnabled=g.automaticDataCollectionEnabled,this._container=I,this.container.addComponent(new w.wA("app",()=>this,"PUBLIC"))}get automaticDataCollectionEnabled(){return this.checkDestroyed(),this._automaticDataCollectionEnabled}set automaticDataCollectionEnabled(f){this.checkDestroyed(),this._automaticDataCollectionEnabled=f}get name(){return this.checkDestroyed(),this._name}get options(){return this.checkDestroyed(),this._options}get config(){return this.checkDestroyed(),this._config}get container(){return this._container}get isDeleted(){return this._isDeleted}set isDeleted(f){this._isDeleted=f}checkDestroyed(){if(this.isDeleted)throw W.create("app-deleted",{appName:this._name})}}function gt(y=je){const f=de.get(y);if(!f&&y===je&&(0,F.aH)())return function Ee(y,f={}){let g=y;"object"!=typeof f&&(f={name:f});const I=Object.assign({name:je,automaticDataCollectionEnabled:!0},f),k=I.name;if("string"!=typeof k||!k)throw W.create("bad-app-name",{appName:String(k)});if(g||(g=(0,F.aH)()),!g)throw W.create("no-options");const x=de.get(k);if(x){if((0,F.vZ)(g,x.options)&&(0,F.vZ)(I,x.config))return x;throw W.create("duplicate-app",{appName:k})}const K=new w.H0(k);for(const Oe of Ze.values())K.addComponent(Oe);const re=new xe(g,I,K);return de.set(k,re),re}();if(!f)throw W.create("no-app",{appName:y});return f}function He(y,f,g){var I;let k=null!==(I=ge[y])&&void 0!==I?I:y;g&&(k+=`-${g}`);const x=k.match(/\s|\//),K=f.match(/\s|\//);if(x||K){const re=[`Unable to register library "${k}" with version "${f}":`];return x&&re.push(`library name "${k}" contains illegal characters (whitespace or "/")`),x&&K&&re.push("and"),K&&re.push(`version name "${f}" contains illegal characters (whitespace or "/")`),void p.warn(re.join(" "))}Pe(new w.wA(`${k}-version`,()=>({library:k,version:f}),"VERSION"))}const Be="firebase-heartbeat-store";let tt=null;function Ve(){return tt||(tt=(0,pe.X3)("firebase-heartbeat-database",1,{upgrade:(y,f)=>{if(0===f)try{y.createObjectStore(Be)}catch(g){console.warn(g)}}}).catch(y=>{throw W.create("idb-open",{originalErrorMessage:y.message})})),tt}function ze(){return(ze=(0,R.Z)(function*(y){try{const g=(yield Ve()).transaction(Be),I=yield g.objectStore(Be).get(Ye(y));return yield g.done,I}catch(f){if(f instanceof F.ZR)p.warn(f.message);else{const g=W.create("idb-get",{originalErrorMessage:f?.message});p.warn(g.message)}}})).apply(this,arguments)}function dt(y,f){return Je.apply(this,arguments)}function Je(){return(Je=(0,R.Z)(function*(y,f){try{const I=(yield Ve()).transaction(Be,"readwrite");yield I.objectStore(Be).put(f,Ye(y)),yield I.done}catch(g){if(g instanceof F.ZR)p.warn(g.message);else{const I=W.create("idb-set",{originalErrorMessage:g?.message});p.warn(I.message)}}})).apply(this,arguments)}function Ye(y){return`${y.name}!${y.options.appId}`}class rt{constructor(f){this.container=f,this._heartbeatsCache=null;const g=this.container.getProvider("app").getImmediate();this._storage=new wt(g),this._heartbeatsCachePromise=this._storage.read().then(I=>(this._heartbeatsCache=I,I))}triggerHeartbeat(){var f=this;return(0,R.Z)(function*(){var g,I;try{const x=f.container.getProvider("platform-logger").getImmediate().getPlatformInfoString(),K=We();if(null==(null===(g=f._heartbeatsCache)||void 0===g?void 0:g.heartbeats)&&(f._heartbeatsCache=yield f._heartbeatsCachePromise,null==(null===(I=f._heartbeatsCache)||void 0===I?void 0:I.heartbeats))||f._heartbeatsCache.lastSentHeartbeatDate===K||f._heartbeatsCache.heartbeats.some(re=>re.date===K))return;if(f._heartbeatsCache.heartbeats.push({date:K,agent:x}),f._heartbeatsCache.heartbeats.length>30){const re=function pt(y){if(0===y.length)return-1;let f=0,g=y[0].date;for(let I=1;IK.agent===k.agent);if(x){if(x.dates.push(k.date),ht(g)>f){x.dates.pop();break}}else if(g.push({agent:k.agent,dates:[k.date]}),ht(g)>f){g.pop();break}I=I.slice(1)}return{heartbeatsToSend:g,unsentEntries:I}}(f._heartbeatsCache.heartbeats),K=(0,F.L)(JSON.stringify({version:2,heartbeats:k}));return f._heartbeatsCache.lastSentHeartbeatDate=I,x.length>0?(f._heartbeatsCache.heartbeats=x,yield f._storage.overwrite(f._heartbeatsCache)):(f._heartbeatsCache.heartbeats=[],f._storage.overwrite(f._heartbeatsCache)),K}catch(I){return p.warn(I),""}})()}}function We(){return(new Date).toISOString().substring(0,10)}class wt{constructor(f){this.app=f,this._canUseIndexedDBPromise=this.runIndexedDBEnvironmentCheck()}runIndexedDBEnvironmentCheck(){return(0,R.Z)(function*(){return!!(0,F.hl)()&&(0,F.eu)().then(()=>!0).catch(()=>!1)})()}read(){var f=this;return(0,R.Z)(function*(){if(yield f._canUseIndexedDBPromise){const I=yield function ft(y){return ze.apply(this,arguments)}(f.app);return I?.heartbeats?I:{heartbeats:[]}}return{heartbeats:[]}})()}overwrite(f){var g=this;return(0,R.Z)(function*(){var I;if(yield g._canUseIndexedDBPromise){const x=yield g.read();return dt(g.app,{lastSentHeartbeatDate:null!==(I=f.lastSentHeartbeatDate)&&void 0!==I?I:x.lastSentHeartbeatDate,heartbeats:f.heartbeats})}})()}add(f){var g=this;return(0,R.Z)(function*(){var I;if(yield g._canUseIndexedDBPromise){const x=yield g.read();return dt(g.app,{lastSentHeartbeatDate:null!==(I=f.lastSentHeartbeatDate)&&void 0!==I?I:x.lastSentHeartbeatDate,heartbeats:[...x.heartbeats,...f.heartbeats]})}})()}}function ht(y){return(0,F.L)(JSON.stringify({version:2,heartbeats:y})).length}!function st(y){Pe(new w.wA("platform-logger",f=>new _e(f),"PRIVATE")),Pe(new w.wA("heartbeat",f=>new rt(f),"PRIVATE")),He(ee,"0.13.2",y),He(ee,"0.13.2","esm2017"),He("fire-js","")}("")},63272:(yt,we,L)=>{L.d(we,{H0:()=>ee,wA:()=>ie});var R=L(15861),w=L(69991);class ie{constructor(p,_,O){this.name=p,this.instanceFactory=_,this.type=O,this.multipleInstances=!1,this.serviceProps={},this.instantiationMode="LAZY",this.onInstanceCreated=null}setInstantiationMode(p){return this.instantiationMode=p,this}setMultipleInstances(p){return this.multipleInstances=p,this}setServiceProps(p){return this.serviceProps=p,this}setInstanceCreatedCallback(p){return this.onInstanceCreated=p,this}}const F="[DEFAULT]";class pe{constructor(p,_){this.name=p,this.container=_,this.component=null,this.instances=new Map,this.instancesDeferred=new Map,this.instancesOptions=new Map,this.onInitCallbacks=new Map}get(p){const _=this.normalizeInstanceIdentifier(p);if(!this.instancesDeferred.has(_)){const O=new w.BH;if(this.instancesDeferred.set(_,O),this.isInitialized(_)||this.shouldAutoInitialize())try{const M=this.getOrInitializeService({instanceIdentifier:_});M&&O.resolve(M)}catch{}}return this.instancesDeferred.get(_).promise}getImmediate(p){var _;const O=this.normalizeInstanceIdentifier(p?.identifier),M=null!==(_=p?.optional)&&void 0!==_&&_;if(!this.isInitialized(O)&&!this.shouldAutoInitialize()){if(M)return null;throw Error(`Service ${this.name} is not available`)}try{return this.getOrInitializeService({instanceIdentifier:O})}catch(U){if(M)return null;throw U}}getComponent(){return this.component}setComponent(p){if(p.name!==this.name)throw Error(`Mismatching Component ${p.name} for Provider ${this.name}.`);if(this.component)throw Error(`Component for ${this.name} has already been provided`);if(this.component=p,this.shouldAutoInitialize()){if(function Q(te){return"EAGER"===te.instantiationMode}(p))try{this.getOrInitializeService({instanceIdentifier:F})}catch{}for(const[_,O]of this.instancesDeferred.entries()){const M=this.normalizeInstanceIdentifier(_);try{const U=this.getOrInitializeService({instanceIdentifier:M});O.resolve(U)}catch{}}}}clearInstance(p=F){this.instancesDeferred.delete(p),this.instancesOptions.delete(p),this.instances.delete(p)}delete(){var p=this;return(0,R.Z)(function*(){const _=Array.from(p.instances.values());yield Promise.all([..._.filter(O=>"INTERNAL"in O).map(O=>O.INTERNAL.delete()),..._.filter(O=>"_delete"in O).map(O=>O._delete())])})()}isComponentSet(){return null!=this.component}isInitialized(p=F){return this.instances.has(p)}getOptions(p=F){return this.instancesOptions.get(p)||{}}initialize(p={}){const{options:_={}}=p,O=this.normalizeInstanceIdentifier(p.instanceIdentifier);if(this.isInitialized(O))throw Error(`${this.name}(${O}) has already been initialized`);if(!this.isComponentSet())throw Error(`Component ${this.name} has not been registered yet`);const M=this.getOrInitializeService({instanceIdentifier:O,options:_});for(const[U,V]of this.instancesDeferred.entries())O===this.normalizeInstanceIdentifier(U)&&V.resolve(M);return M}onInit(p,_){var O;const M=this.normalizeInstanceIdentifier(_),U=null!==(O=this.onInitCallbacks.get(M))&&void 0!==O?O:new Set;U.add(p),this.onInitCallbacks.set(M,U);const V=this.instances.get(M);return V&&p(V,M),()=>{U.delete(p)}}invokeOnInitCallbacks(p,_){const O=this.onInitCallbacks.get(_);if(O)for(const M of O)try{M(p,_)}catch{}}getOrInitializeService({instanceIdentifier:p,options:_={}}){let O=this.instances.get(p);if(!O&&this.component&&(O=this.component.instanceFactory(this.container,{instanceIdentifier:(te=p,te===F?void 0:te),options:_}),this.instances.set(p,O),this.instancesOptions.set(p,_),this.invokeOnInitCallbacks(O,p),this.component.onInstanceCreated))try{this.component.onInstanceCreated(this.container,p,O)}catch{}var te;return O||null}normalizeInstanceIdentifier(p=F){return this.component?this.component.multipleInstances?p:F:p}shouldAutoInitialize(){return!!this.component&&"EXPLICIT"!==this.component.instantiationMode}}class ee{constructor(p){this.name=p,this.providers=new Map}addComponent(p){const _=this.getProvider(p.name);if(_.isComponentSet())throw new Error(`Component ${p.name} has already been registered with ${this.name}`);_.setComponent(p)}addOrOverwriteComponent(p){this.getProvider(p.name).isComponentSet()&&this.providers.delete(p.name),this.addComponent(p)}getProvider(p){if(this.providers.has(p))return this.providers.get(p);const _=new pe(p,this);return this.providers.set(p,_),_}getProviders(){return Array.from(this.providers.values())}}},9329:(yt,we,L)=>{var R=L(15861),w=L(13847),ie=L(63272),F=L(69991),pe=L(98766);const _e="@firebase/installations",Q="0.6.18",te=`w:${Q}`,p="FIS_v2",z=new F.LL("installations","Installations",{"missing-app-config-values":'Missing App configuration value: "{$valueName}"',"not-registered":"Firebase Installation is not registered.","installation-not-found":"Firebase Installation not found.","request-failed":'{$requestName} request failed with error "{$serverCode} {$serverStatus}: {$serverMessage}"',"app-offline":"Could not process request. Application offline.","delete-pending-registration":"Can't delete installation while there is a pending registration request."});function J(s){return s instanceof F.ZR&&s.code.includes("request-failed")}function $({projectId:s}){return`https://firebaseinstallations.googleapis.com/v1/projects/${s}/installations`}function se(s){return{token:s.token,requestStatus:2,expiresIn:T(s.expiresIn),creationTime:Date.now()}}function Ie(s,l){return Se.apply(this,arguments)}function Se(){return(Se=(0,R.Z)(function*(s,l){const m=(yield l.json()).error;return z.create("request-failed",{requestName:s,serverCode:m.code,serverMessage:m.message,serverStatus:m.status})})).apply(this,arguments)}function Ue({apiKey:s}){return new Headers({"Content-Type":"application/json",Accept:"application/json","x-goog-api-key":s})}function Re(s,{refreshToken:l}){const d=Ue(s);return d.append("Authorization",function S(s){return`${p} ${s}`}(l)),d}function be(s){return Ne.apply(this,arguments)}function Ne(){return(Ne=(0,R.Z)(function*(s){const l=yield s();return l.status>=500&&l.status<600?s():l})).apply(this,arguments)}function T(s){return Number(s.replace("s","000"))}function P(s,l){return j.apply(this,arguments)}function j(){return(j=(0,R.Z)(function*({appConfig:s,heartbeatServiceProvider:l},{fid:d}){const m=$(s),C=Ue(s),B=l.getImmediate({optional:!0});if(B){const le=yield B.getHeartbeatsHeader();le&&C.append("x-firebase-client",le)}const ue={method:"POST",headers:C,body:JSON.stringify({fid:d,authVersion:p,appId:s.appId,sdkVersion:te})},Ce=yield be(()=>fetch(m,ue));if(Ce.ok){const le=yield Ce.json();return{fid:le.fid||d,registrationStatus:2,refreshToken:le.refreshToken,authToken:se(le.authToken)}}throw yield Ie("Create Installation",Ce)})).apply(this,arguments)}function ne(s){return new Promise(l=>{setTimeout(l,s)})}const Y=/^[cdef][\w-]{21}$/;function q(){try{const s=new Uint8Array(17);(self.crypto||self.msCrypto).getRandomValues(s),s[0]=112+s[0]%16;const d=function me(s){return function oe(s){return btoa(String.fromCharCode(...s)).replace(/\+/g,"-").replace(/\//g,"_")}(s).substr(0,22)}(s);return Y.test(d)?d:""}catch{return""}}function fe(s){return`${s.appName}!${s.appId}`}const $e=new Map;function je(s,l){const d=fe(s);Me(d,l),function Ze(s,l){const d=function Et(){return!Ae&&"BroadcastChannel"in self&&(Ae=new BroadcastChannel("[Firebase] FID Change"),Ae.onmessage=s=>{Me(s.data.key,s.data.fid)}),Ae}();d&&d.postMessage({key:s,fid:l}),function Pe(){0===$e.size&&Ae&&(Ae.close(),Ae=null)}()}(d,l)}function Me(s,l){const d=$e.get(s);if(d)for(const m of d)m(l)}let Ae=null;const ce="firebase-installations-store";let ye=null;function qe(){return ye||(ye=(0,pe.X3)("firebase-installations-database",1,{upgrade:(s,l)=>{0===l&&s.createObjectStore(ce)}})),ye}function ke(s,l){return W.apply(this,arguments)}function W(){return(W=(0,R.Z)(function*(s,l){const d=fe(s),C=(yield qe()).transaction(ce,"readwrite"),B=C.objectStore(ce),ae=yield B.get(d);return yield B.put(l,d),yield C.done,(!ae||ae.fid!==l.fid)&&je(s,l.fid),l})).apply(this,arguments)}function xe(s){return Ge.apply(this,arguments)}function Ge(){return(Ge=(0,R.Z)(function*(s){const l=fe(s),m=(yield qe()).transaction(ce,"readwrite");yield m.objectStore(ce).delete(l),yield m.done})).apply(this,arguments)}function Le(s,l){return Qe.apply(this,arguments)}function Qe(){return(Qe=(0,R.Z)(function*(s,l){const d=fe(s),C=(yield qe()).transaction(ce,"readwrite"),B=C.objectStore(ce),ae=yield B.get(d),ue=l(ae);return void 0===ue?yield B.delete(d):yield B.put(ue,d),yield C.done,ue&&(!ae||ae.fid!==ue.fid)&&je(s,ue.fid),ue})).apply(this,arguments)}function Ee(s){return Te.apply(this,arguments)}function Te(){return(Te=(0,R.Z)(function*(s){let l;const d=yield Le(s.appConfig,m=>{const C=gt(m),B=ct(s,C);return l=B.registrationPromise,B.installationEntry});return""===d.fid?{installationEntry:yield l}:{installationEntry:d,registrationPromise:l}})).apply(this,arguments)}function gt(s){return ut(s||{fid:q(),registrationStatus:0})}function ct(s,l){if(0===l.registrationStatus){if(!navigator.onLine)return{installationEntry:l,registrationPromise:Promise.reject(z.create("app-offline"))};const d={fid:l.fid,registrationStatus:1,registrationTime:Date.now()},m=function _t(s,l){return Xe.apply(this,arguments)}(s,d);return{installationEntry:d,registrationPromise:m}}return 1===l.registrationStatus?{installationEntry:l,registrationPromise:He(s)}:{installationEntry:l}}function Xe(){return(Xe=(0,R.Z)(function*(s,l){try{const d=yield P(s,l);return ke(s.appConfig,d)}catch(d){throw J(d)&&409===d.customData.serverCode?yield xe(s.appConfig):yield ke(s.appConfig,{fid:l.fid,registrationStatus:0}),d}})).apply(this,arguments)}function He(s){return et.apply(this,arguments)}function et(){return(et=(0,R.Z)(function*(s){let l=yield Tt(s.appConfig);for(;1===l.registrationStatus;)yield ne(100),l=yield Tt(s.appConfig);if(0===l.registrationStatus){const{installationEntry:d,registrationPromise:m}=yield Ee(s);return m||d}return l})).apply(this,arguments)}function Tt(s){return Le(s,l=>{if(!l)throw z.create("installation-not-found");return ut(l)})}function ut(s){return function lt(s){return 1===s.registrationStatus&&s.registrationTime+1e4fetch(m,ue));if(Ce.ok)return se(yield Ce.json());throw yield Ie("Generate Auth Token",Ce)})).apply(this,arguments)}function Ve(s,{fid:l}){return`${$(s)}/${l}/authTokens:generate`}function ft(s){return ze.apply(this,arguments)}function ze(){return(ze=(0,R.Z)(function*(s,l=!1){let d;const m=yield Le(s.appConfig,B=>{if(!rt(B))throw z.create("not-registered");const ae=B.authToken;if(!l&&We(ae))return B;if(1===ae.requestStatus)return d=dt(s,l),B;{if(!navigator.onLine)throw z.create("app-offline");const ue=wt(B);return d=bt(s,ue),ue}});return d?yield d:m.authToken})).apply(this,arguments)}function dt(s,l){return Je.apply(this,arguments)}function Je(){return(Je=(0,R.Z)(function*(s,l){let d=yield Ye(s.appConfig);for(;1===d.authToken.requestStatus;)yield ne(100),d=yield Ye(s.appConfig);const m=d.authToken;return 0===m.requestStatus?ft(s,l):m})).apply(this,arguments)}function Ye(s){return Le(s,l=>{if(!rt(l))throw z.create("not-registered");return function ht(s){return 1===s.requestStatus&&s.requestTime+1e4{const l=s.getProvider("app").getImmediate(),d=function o(s){if(!s||!s.options)throw h("App Configuration");if(!s.name)throw h("App Name");const l=["projectId","apiKey","appId"];for(const d of l)if(!s.options[d])throw h(d);return{appName:s.name,projectId:s.options.projectId,apiKey:s.options.apiKey,appId:s.options.appId}}(l);return{app:l,appConfig:d,heartbeatServiceProvider:(0,w.qX)(l,"heartbeat"),_delete:()=>Promise.resolve()}},Z=s=>{const l=s.getProvider("app").getImmediate(),d=(0,w.qX)(l,u).getImmediate();return{getId:()=>function pt(s){return st.apply(this,arguments)}(d),getToken:C=>function y(s){return f.apply(this,arguments)}(d,C)}};(function he(){(0,w.Xd)(new ie.wA(u,N,"PUBLIC")),(0,w.Xd)(new ie.wA("installations-internal",Z,"PRIVATE"))})(),(0,w.KN)(_e,Q),(0,w.KN)(_e,Q,"esm2017")},87916:(yt,we,L)=>{L.d(we,{Yd:()=>Q,in:()=>w});const R=[];var w=(()=>{return(p=w||(w={}))[p.DEBUG=0]="DEBUG",p[p.VERBOSE=1]="VERBOSE",p[p.INFO=2]="INFO",p[p.WARN=3]="WARN",p[p.ERROR=4]="ERROR",p[p.SILENT=5]="SILENT",w;var p})();const ie={debug:w.DEBUG,verbose:w.VERBOSE,info:w.INFO,warn:w.WARN,error:w.ERROR,silent:w.SILENT},F=w.INFO,pe={[w.DEBUG]:"log",[w.VERBOSE]:"log",[w.INFO]:"info",[w.WARN]:"warn",[w.ERROR]:"error"},_e=(p,_,...O)=>{if(_{L.d(we,{X3:()=>Ie});var R=L(15861);let ie,F;const Q=new WeakMap,ee=new WeakMap,te=new WeakMap,p=new WeakMap,_=new WeakMap;let U={get(T,S,P){if(T instanceof IDBTransaction){if("done"===S)return ee.get(T);if("objectStoreNames"===S)return T.objectStoreNames||te.get(T);if("store"===S)return P.objectStoreNames[1]?void 0:P.objectStore(P.objectStoreNames[0])}return $(T[S])},set:(T,S,P)=>(T[S]=P,!0),has:(T,S)=>T instanceof IDBTransaction&&("done"===S||"store"===S)||S in T};function J(T){return"function"==typeof T?function z(T){return T!==IDBDatabase.prototype.transaction||"objectStoreNames"in IDBTransaction.prototype?function _e(){return F||(F=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}().includes(T)?function(...S){return T.apply(se(this),S),$(Q.get(this))}:function(...S){return $(T.apply(se(this),S))}:function(S,...P){const j=T.call(se(this),S,...P);return te.set(j,S.sort?S.sort():[S]),$(j)}}(T):(T instanceof IDBTransaction&&function M(T){if(ee.has(T))return;const S=new Promise((P,j)=>{const ne=()=>{T.removeEventListener("complete",oe),T.removeEventListener("error",Y),T.removeEventListener("abort",Y)},oe=()=>{P(),ne()},Y=()=>{j(T.error||new DOMException("AbortError","AbortError")),ne()};T.addEventListener("complete",oe),T.addEventListener("error",Y),T.addEventListener("abort",Y)});ee.set(T,S)}(T),((T,S)=>S.some(P=>T instanceof P))(T,function pe(){return ie||(ie=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}())?new Proxy(T,U):T)}function $(T){if(T instanceof IDBRequest)return function O(T){const S=new Promise((P,j)=>{const ne=()=>{T.removeEventListener("success",oe),T.removeEventListener("error",Y)},oe=()=>{P($(T.result)),ne()},Y=()=>{j(T.error),ne()};T.addEventListener("success",oe),T.addEventListener("error",Y)});return S.then(P=>{P instanceof IDBCursor&&Q.set(P,T)}).catch(()=>{}),_.set(S,T),S}(T);if(p.has(T))return p.get(T);const S=J(T);return S!==T&&(p.set(T,S),_.set(S,T)),S}const se=T=>_.get(T);function Ie(T,S,{blocked:P,upgrade:j,blocking:ne,terminated:oe}={}){const Y=indexedDB.open(T,S),ve=$(Y);return j&&Y.addEventListener("upgradeneeded",q=>{j($(Y.result),q.oldVersion,q.newVersion,$(Y.transaction),q)}),P&&Y.addEventListener("blocked",q=>P(q.oldVersion,q.newVersion,q)),ve.then(q=>{oe&&q.addEventListener("close",()=>oe()),ne&&q.addEventListener("versionchange",me=>ne(me.oldVersion,me.newVersion,me))}).catch(()=>{}),ve}const Ue=["get","getKey","getAll","getAllKeys","count"],Re=["put","add","delete","clear"],be=new Map;function Ne(T,S){if(!(T instanceof IDBDatabase)||S in T||"string"!=typeof S)return;if(be.get(S))return be.get(S);const P=S.replace(/FromIndex$/,""),j=S!==P,ne=Re.includes(P);if(!(P in(j?IDBIndex:IDBObjectStore).prototype)||!ne&&!Ue.includes(P))return;const oe=function(){var Y=(0,R.Z)(function*(ve,...q){const me=this.transaction(ve,ne?"readwrite":"readonly");let fe=me.store;return j&&(fe=fe.index(q.shift())),(yield Promise.all([fe[P](...q),ne&&me.done]))[0]});return function(q){return Y.apply(this,arguments)}}();return be.set(S,oe),oe}!function V(T){U=T(U)}(T=>({...T,get:(S,P,j)=>Ne(S,P)||T.get(S,P,j),has:(S,P)=>!!Ne(S,P)||T.has(S,P)}))}}]);