From 9f8368120849bcfe664bae58c91f5261cfb2977b Mon Sep 17 00:00:00 2001 From: danielpalme Date: Tue, 10 Oct 2023 22:08:20 +0200 Subject: [PATCH 1/6] Added support for .NET 8. Dropped support for .NET 3.1 and .NET 5.0 --- .github/workflows/ci.yml | 38 +++++++------------ README.md | 8 ++-- docs/main.752a4eb1bf070a26.js | 2 +- global.json | 2 +- .../ReportGenerator/reportgenerator.ts | 2 +- src/AzureDevopsTask/ReportGenerator/task.json | 4 +- src/AzureDevopsTask/vss-extension.json | 2 +- .../reportgenerator.portable.nuspec | 9 ++--- .../nuget/Readme_ReportGenerator.md | 6 +-- ...eadme_dotnet-reportgenerator-globaltool.md | 6 +-- .../nuget/ReportGenerator.Core.nuspec | 24 ++++-------- src/Deployment/nuget/ReportGenerator.nuspec | 15 +++----- src/Deployment/nuget/ReportGenerator.props | 2 +- .../dotnet-reportgenerator-globaltool.nuspec | 14 +++---- src/Readme.txt | 3 +- .../ReportGenerator.Console.NetCore.csproj | 6 +-- .../ReportGenerator.Console.Net.csproj | 4 +- .../Parser/CoverageReportParserTest.cs | 24 ++++++------ .../Parser/ParserResultTest.cs | 2 +- .../ReportConfigurationTest.cs | 6 +-- .../ReportGenerator.Core.Test.csproj | 4 +- .../ReportGenerator.Core.csproj | 4 +- ...ortGenerator.DotnetCorePluginLoader.csproj | 6 +-- .../ReportGenerator.DotnetGlobalTool.csproj | 6 +-- .../ReportGenerator.MSBuild.csproj | 4 +- src/build.proj | 20 ++++------ 26 files changed, 96 insertions(+), 127 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a2e4867a..c95c4514 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,8 +6,8 @@ env: solution: 'src\ReportGenerator.sln' buildPlatform: Any CPU buildConfiguration: Release - version: 5.1.26 - dotnetSDKVersion: 7.0.401 + version: 5.2.0 + dotnetSDKVersion: 8.0.100-rc.2.23502.2 nodeVersion: 18 jobs: @@ -50,14 +50,6 @@ jobs: - name: 'Compile Solution' run: msbuild '${{ env.solution }}' /p:configuration='${{ env.buildConfiguration }}' /p:platform='${{ env.buildPlatform }}' - - name: dotnet publish Console.NetCore 3.1 - run: dotnet publish -c ${{ env.BuildConfiguration }} -f netcoreapp3.1 ReportGenerator.Console.NetCore.csproj - working-directory: src/ReportGenerator.Console.NetCore - - - name: dotnet publish Console.NetCore 5.0 - run: dotnet publish -c ${{ env.BuildConfiguration }} -f net5.0 ReportGenerator.Console.NetCore.csproj - working-directory: src/ReportGenerator.Console.NetCore - - name: dotnet publish Console.NetCore 6.0 run: dotnet publish -c ${{ env.BuildConfiguration }} -f net6.0 ReportGenerator.Console.NetCore.csproj working-directory: src/ReportGenerator.Console.NetCore @@ -66,13 +58,9 @@ jobs: run: dotnet publish -c ${{ env.BuildConfiguration }} -f net7.0 ReportGenerator.Console.NetCore.csproj working-directory: src/ReportGenerator.Console.NetCore - - name: dotnet publish DotnetGlobalTool 3.1 - run: dotnet publish -c ${{ env.BuildConfiguration }} -f netcoreapp3.1 ReportGenerator.DotnetGlobalTool.csproj - working-directory: src/ReportGenerator.DotnetGlobalTool - - - name: dotnet publish DotnetGlobalTool 5.0 - run: dotnet publish -c ${{ env.BuildConfiguration }} -f net5.0 ReportGenerator.DotnetGlobalTool.csproj - working-directory: src/ReportGenerator.DotnetGlobalTool + - name: dotnet publish Console.NetCore 8.0 + run: dotnet publish -c ${{ env.BuildConfiguration }} -f net8.0 ReportGenerator.Console.NetCore.csproj + working-directory: src/ReportGenerator.Console.NetCore - name: dotnet publish DotnetGlobalTool 6.0 run: dotnet publish -c ${{ env.BuildConfiguration }} -f net6.0 ReportGenerator.DotnetGlobalTool.csproj @@ -82,6 +70,10 @@ jobs: run: dotnet publish -c ${{ env.BuildConfiguration }} -f net7.0 ReportGenerator.DotnetGlobalTool.csproj working-directory: src/ReportGenerator.DotnetGlobalTool + - name: dotnet publish DotnetGlobalTool 8.0 + run: dotnet publish -c ${{ env.BuildConfiguration }} -f net8.0 ReportGenerator.DotnetGlobalTool.csproj + working-directory: src/ReportGenerator.DotnetGlobalTool + - name: Test run: dotnet test src\ReportGenerator.Core.Test\ReportGenerator.Core.Test.csproj --configuration ${{ env.BuildConfiguration }} --no-build /p:CollectCoverage=true /p:DeterministicSourcePaths=true /p:IncludeTestAssembly=true /p:CoverletOutputFormat=opencover%2ccobertura /p:CoverletOutput=../target/reports/coverage/ @@ -106,8 +98,8 @@ jobs: - name: 'Prepare VSIX release: NetCore' run: | - mkdir src/AzureDevopsTask/ReportGenerator/tools/netcoreapp3.1 - xcopy 'src\ReportGenerator.Console.NetCore\bin\Release\netcoreapp3.1\publish' 'src\AzureDevopsTask\ReportGenerator\tools\netcoreapp3.1' /s + mkdir src/AzureDevopsTask/ReportGenerator/tools/net6.0 + xcopy 'src\ReportGenerator.Console.NetCore\bin\Release\net6.0\publish' 'src\AzureDevopsTask\ReportGenerator\tools\net6.0' /s - name: 'Prepare VSIX release: Install TFS Cross Platform Command Line Interface (tfx-cli)' run: npm install -g tfx-cli @@ -128,10 +120,9 @@ jobs: run: | mkdir tmpzip mkdir tmpzip\net47 - mkdir tmpzip\netcoreapp3.1 - mkdir tmpzip\net5.0 mkdir tmpzip\net6.0 mkdir tmpzip\net7.0 + mkdir tmpzip\net8.0 - name: 'Prepare ZIP release' run: | @@ -141,10 +132,9 @@ jobs: xcopy "src\ReportGenerator.Console\bin\Release\*.dll" "tmpzip\net47" xcopy "src\ReportGenerator.Console\bin\Release\ReportGenerator.exe" "tmpzip\net47" xcopy "src\ReportGenerator.Console\bin\Release\ReportGenerator.exe.config" "tmpzip\net47" - xcopy 'src\ReportGenerator.Console.NetCore\bin\Release\netcoreapp3.1\publish\*' 'tmpzip\netcoreapp3.1' /s - xcopy 'src\ReportGenerator.Console.NetCore\bin\Release\net5.0\publish\*' 'tmpzip\net5.0' /s xcopy 'src\ReportGenerator.Console.NetCore\bin\Release\net6.0\publish\*' 'tmpzip\net6.0' /s xcopy 'src\ReportGenerator.Console.NetCore\bin\Release\net7.0\publish\*' 'tmpzip\net7.0' /s + xcopy 'src\ReportGenerator.Console.NetCore\bin\Release\net8.0\publish\*' 'tmpzip\net8.0' /s - name: 'Pack ZIP release' run: Compress-Archive -Path tmpzip/* -DestinationPath src/target/packages/ReportGenerator_${{ env.Version }}.zip @@ -199,7 +189,7 @@ jobs: uses: softprops/action-gh-release@v1 with: name: ReportGenerator_${{ env.Version }} - body: This release requires .NET 4.7 or .NET Core 3.1/5.x/6.x/7.x. + body: This release requires .NET 4.7 or .NET Core 6.x/7.x/8.x. tag_name: v${{ env.Version }} files: ReportGenerator_${{ env.Version }}.zip env: diff --git a/README.md b/README.md index 780ce70e..60b79eda 100644 --- a/README.md +++ b/README.md @@ -42,11 +42,11 @@ Use the online [configuration tool](https://reportgenerator.io/usage) to get sta |**Package**|**Platforms**|**Installation/Usage**| |:----------|:------------|:---------------------| -|[ReportGenerator](https://www.nuget.org/packages/ReportGenerator)

[![Nuget](https://img.shields.io/nuget/v/ReportGenerator.svg?style=for-the-badge)![Nuget](https://img.shields.io/nuget/dt/ReportGenerator.svg?style=for-the-badge)](https://www.nuget.org/packages/ReportGenerator)|.NET Core >=3.1
.NET Framework 4.7|Use this package if your project is based on *.NET Framework* or *.NET Core* and you want to use *ReportGenerator* via the command line or a build script.

**Usage**
```dotnet $(UserProfile).nuget\packages\reportgenerator\x.y.z\tools\net6.0\ReportGenerator.dll [options]```
```$(UserProfile).nuget\packages\reportgenerator\x.y.z\tools\net6.0\ReportGenerator.exe [options]```

```$(UserProfile)\.nuget\packages\reportgenerator\x.y.z\tools\net47\ReportGenerator.exe [options]```| -|[dotnet-reportgenerator-globaltool](https://www.nuget.org/packages/dotnet-reportgenerator-globaltool)

[![Nuget](https://img.shields.io/nuget/v/dotnet-reportgenerator-globaltool.svg?style=for-the-badge)![Nuget](https://img.shields.io/nuget/dt/dotnet-reportgenerator-globaltool.svg?style=for-the-badge)](https://www.nuget.org/packages/dotnet-reportgenerator-globaltool)|.NET Core >=3.1 |Use this package if your project is based on *.NET Core* and you want to use *ReportGenerator* as a (global) 'DotnetTool'.

**Installation**
```dotnet tool install -g dotnet-reportgenerator-globaltool```

```dotnet tool install dotnet-reportgenerator-globaltool --tool-path tools```

```dotnet new tool-manifest```
```dotnet tool install dotnet-reportgenerator-globaltool```

**Usage**
```reportgenerator [options]```
```tools\reportgenerator.exe [options]```
```dotnet reportgenerator [options]```| +|[ReportGenerator](https://www.nuget.org/packages/ReportGenerator)

[![Nuget](https://img.shields.io/nuget/v/ReportGenerator.svg?style=for-the-badge)![Nuget](https://img.shields.io/nuget/dt/ReportGenerator.svg?style=for-the-badge)](https://www.nuget.org/packages/ReportGenerator)|.NET Core >=6.0
.NET Framework 4.7|Use this package if your project is based on *.NET Framework* or *.NET Core* and you want to use *ReportGenerator* via the command line or a build script.

**Usage**
```dotnet $(UserProfile).nuget\packages\reportgenerator\x.y.z\tools\net8.0\ReportGenerator.dll [options]```
```$(UserProfile).nuget\packages\reportgenerator\x.y.z\tools\net8.0\ReportGenerator.exe [options]```

```$(UserProfile)\.nuget\packages\reportgenerator\x.y.z\tools\net47\ReportGenerator.exe [options]```| +|[dotnet-reportgenerator-globaltool](https://www.nuget.org/packages/dotnet-reportgenerator-globaltool)

[![Nuget](https://img.shields.io/nuget/v/dotnet-reportgenerator-globaltool.svg?style=for-the-badge)![Nuget](https://img.shields.io/nuget/dt/dotnet-reportgenerator-globaltool.svg?style=for-the-badge)](https://www.nuget.org/packages/dotnet-reportgenerator-globaltool)|.NET Core >=6.0 |Use this package if your project is based on *.NET Core* and you want to use *ReportGenerator* as a (global) 'DotnetTool'.

**Installation**
```dotnet tool install -g dotnet-reportgenerator-globaltool```

```dotnet tool install dotnet-reportgenerator-globaltool --tool-path tools```

```dotnet new tool-manifest```
```dotnet tool install dotnet-reportgenerator-globaltool```

**Usage**
```reportgenerator [options]```
```tools\reportgenerator.exe [options]```
```dotnet reportgenerator [options]```| |[ReportGenerator.Core](https://www.nuget.org/packages/ReportGenerator.Core)

[![Nuget](https://img.shields.io/nuget/v/ReportGenerator.Core.svg?style=for-the-badge)![Nuget](https://img.shields.io/nuget/dt/ReportGenerator.Core.svg?style=for-the-badge)](https://www.nuget.org/packages/ReportGenerator.Core)|.NET Standard 2.0|Use this package if you want to write a custom **plugin** for *ReportGenerator* or if you want to call/execute *ReportGenerator* within your code base.

**Plugin development**
[Custom reports](https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports)
[Custom history storage](https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage)| -|[Azure DevOps extension](https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator)

[![Visual Studio Marketplace Version](https://img.shields.io/visual-studio-marketplace/v/Palmmedia.reportgenerator.svg?style=for-the-badge)![Visual Studio Marketplace Installs - Azure DevOps Extension](https://img.shields.io/visual-studio-marketplace/azure-devops/installs/total/Palmmedia.reportgenerator.svg?style=for-the-badge)](https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator)|.NET Core >=3.1| Add the Azure DevOps extension to your build pipeline.
[Learn more](https://github.com/danielpalme/ReportGenerator/wiki/Integration#azure-devops-extension)| -|[GitHub Actions](https://github.com/marketplace/actions/reportgenerator)|.NET Core >=3.1| Add the GitHub Action to your build pipeline.
[Learn more](https://github.com/danielpalme/ReportGenerator/wiki/Integration#github-actions)| +|[Azure DevOps extension](https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator)

[![Visual Studio Marketplace Version](https://img.shields.io/visual-studio-marketplace/v/Palmmedia.reportgenerator.svg?style=for-the-badge)![Visual Studio Marketplace Installs - Azure DevOps Extension](https://img.shields.io/visual-studio-marketplace/azure-devops/installs/total/Palmmedia.reportgenerator.svg?style=for-the-badge)](https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator)|.NET Core >=6.0| Add the Azure DevOps extension to your build pipeline.
[Learn more](https://github.com/danielpalme/ReportGenerator/wiki/Integration#azure-devops-extension)| +|[GitHub Actions](https://github.com/marketplace/actions/reportgenerator)|.NET Core >=6.0| Add the GitHub Action to your build pipeline.
[Learn more](https://github.com/danielpalme/ReportGenerator/wiki/Integration#github-actions)| ### Usage / Command line parameters Use the online [configuration tool](https://reportgenerator.io/usage) to get started quickly. diff --git a/docs/main.752a4eb1bf070a26.js b/docs/main.752a4eb1bf070a26.js index b902a135..94a1faaa 100644 --- a/docs/main.752a4eb1bf070a26.js +++ b/docs/main.752a4eb1bf070a26.js @@ -1 +1 @@ -"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[179],{603:()=>{function ue(e){return"function"==typeof e}function Wo(e){const r=e(n=>{Error.call(n),n.stack=(new Error).stack});return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}const Es=Wo(e=>function(r){e(this),this.message=r?`${r.length} errors occurred during unsubscription:\n${r.map((n,o)=>`${o+1}) ${n.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=r});function Zo(e,t){if(e){const r=e.indexOf(t);0<=r&&e.splice(r,1)}}class gt{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;const{_parentage:r}=this;if(r)if(this._parentage=null,Array.isArray(r))for(const i of r)i.remove(this);else r.remove(this);const{initialTeardown:n}=this;if(ue(n))try{n()}catch(i){t=i instanceof Es?i.errors:[i]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const i of o)try{Vh(i)}catch(s){t=t??[],s instanceof Es?t=[...t,...s.errors]:t.push(s)}}if(t)throw new Es(t)}}add(t){var r;if(t&&t!==this)if(this.closed)Vh(t);else{if(t instanceof gt){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(r=this._finalizers)&&void 0!==r?r:[]).push(t)}}_hasParent(t){const{_parentage:r}=this;return r===t||Array.isArray(r)&&r.includes(t)}_addParent(t){const{_parentage:r}=this;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t}_removeParent(t){const{_parentage:r}=this;r===t?this._parentage=null:Array.isArray(r)&&Zo(r,t)}remove(t){const{_finalizers:r}=this;r&&Zo(r,t),t instanceof gt&&t._removeParent(this)}}gt.EMPTY=(()=>{const e=new gt;return e.closed=!0,e})();const Fh=gt.EMPTY;function Lh(e){return e instanceof gt||e&&"closed"in e&&ue(e.remove)&&ue(e.add)&&ue(e.unsubscribe)}function Vh(e){ue(e)?e():e.unsubscribe()}const ir={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Ms={setTimeout(e,t,...r){const{delegate:n}=Ms;return n?.setTimeout?n.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){const{delegate:t}=Ms;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function jh(e){Ms.setTimeout(()=>{const{onUnhandledError:t}=ir;if(!t)throw e;t(e)})}function lc(){}const ME=cc("C",void 0,void 0);function cc(e,t,r){return{kind:e,value:t,error:r}}let sr=null;function Is(e){if(ir.useDeprecatedSynchronousErrorHandling){const t=!sr;if(t&&(sr={errorThrown:!1,error:null}),e(),t){const{errorThrown:r,error:n}=sr;if(sr=null,r)throw n}}else e()}class uc extends gt{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,Lh(t)&&t.add(this)):this.destination=NE}static create(t,r,n){return new Ss(t,r,n)}next(t){this.isStopped?fc(function SE(e){return cc("N",e,void 0)}(t),this):this._next(t)}error(t){this.isStopped?fc(function IE(e){return cc("E",void 0,e)}(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?fc(ME,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()}}}const AE=Function.prototype.bind;function dc(e,t){return AE.call(e,t)}class xE{constructor(t){this.partialObserver=t}next(t){const{partialObserver:r}=this;if(r.next)try{r.next(t)}catch(n){Ts(n)}}error(t){const{partialObserver:r}=this;if(r.error)try{r.error(t)}catch(n){Ts(n)}else Ts(t)}complete(){const{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(r){Ts(r)}}}class Ss extends uc{constructor(t,r,n){let o;if(super(),ue(t)||!t)o={next:t??void 0,error:r??void 0,complete:n??void 0};else{let i;this&&ir.useDeprecatedNextContext?(i=Object.create(t),i.unsubscribe=()=>this.unsubscribe(),o={next:t.next&&dc(t.next,i),error:t.error&&dc(t.error,i),complete:t.complete&&dc(t.complete,i)}):o=t}this.destination=new xE(o)}}function Ts(e){ir.useDeprecatedSynchronousErrorHandling?function TE(e){ir.useDeprecatedSynchronousErrorHandling&&sr&&(sr.errorThrown=!0,sr.error=e)}(e):jh(e)}function fc(e,t){const{onStoppedNotification:r}=ir;r&&Ms.setTimeout(()=>r(e,t))}const NE={closed:!0,next:lc,error:function RE(e){throw e},complete:lc},hc="function"==typeof Symbol&&Symbol.observable||"@@observable";function jn(e){return e}function Hh(e){return 0===e.length?jn:1===e.length?e[0]:function(r){return e.reduce((n,o)=>o(n),r)}}let Ie=(()=>{class e{constructor(r){r&&(this._subscribe=r)}lift(r){const n=new e;return n.source=this,n.operator=r,n}subscribe(r,n,o){const i=function kE(e){return e&&e instanceof uc||function PE(e){return e&&ue(e.next)&&ue(e.error)&&ue(e.complete)}(e)&&Lh(e)}(r)?r:new Ss(r,n,o);return Is(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(r){try{return this._subscribe(r)}catch(n){r.error(n)}}forEach(r,n){return new(n=Uh(n))((o,i)=>{const s=new Ss({next:a=>{try{r(a)}catch(l){i(l),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(r){var n;return null===(n=this.source)||void 0===n?void 0:n.subscribe(r)}[hc](){return this}pipe(...r){return Hh(r)(this)}toPromise(r){return new(r=Uh(r))((n,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>n(i))})}}return e.create=t=>new e(t),e})();function Uh(e){var t;return null!==(t=e??ir.Promise)&&void 0!==t?t:Promise}const FE=Wo(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let Vt=(()=>{class e extends Ie{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(r){const n=new Bh(this,this);return n.operator=r,n}_throwIfClosed(){if(this.closed)throw new FE}next(r){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const n of this.currentObservers)n.next(r)}})}error(r){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=r;const{observers:n}=this;for(;n.length;)n.shift().error(r)}})}complete(){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:r}=this;for(;r.length;)r.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var r;return(null===(r=this.observers)||void 0===r?void 0:r.length)>0}_trySubscribe(r){return this._throwIfClosed(),super._trySubscribe(r)}_subscribe(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)}_innerSubscribe(r){const{hasError:n,isStopped:o,observers:i}=this;return n||o?Fh:(this.currentObservers=null,i.push(r),new gt(()=>{this.currentObservers=null,Zo(i,r)}))}_checkFinalizedStatuses(r){const{hasError:n,thrownError:o,isStopped:i}=this;n?r.error(o):i&&r.complete()}asObservable(){const r=new Ie;return r.source=this,r}}return e.create=(t,r)=>new Bh(t,r),e})();class Bh extends Vt{constructor(t,r){super(),this.destination=t,this.source=r}next(t){var r,n;null===(n=null===(r=this.destination)||void 0===r?void 0:r.next)||void 0===n||n.call(r,t)}error(t){var r,n;null===(n=null===(r=this.destination)||void 0===r?void 0:r.error)||void 0===n||n.call(r,t)}complete(){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.complete)||void 0===r||r.call(t)}_subscribe(t){var r,n;return null!==(n=null===(r=this.source)||void 0===r?void 0:r.subscribe(t))&&void 0!==n?n:Fh}}function $h(e){return ue(e?.lift)}function Pe(e){return t=>{if($h(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}function Re(e,t,r,n,o){return new LE(e,t,r,n,o)}class LE extends uc{constructor(t,r,n,o,i,s){super(t),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=r?function(a){try{r(a)}catch(l){t.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){t.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=n?function(){try{n()}catch(a){t.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:r}=this;super.unsubscribe(),!r&&(null===(t=this.onFinalize)||void 0===t||t.call(this))}}}function ee(e,t){return Pe((r,n)=>{let o=0;r.subscribe(Re(n,i=>{n.next(e.call(t,i,o++))}))})}function Hn(e){return this instanceof Hn?(this.v=e,this):new Hn(e)}function Wh(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,t=e[Symbol.asyncIterator];return t?t.call(e):(e=function vc(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Zh=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function Yh(e){return ue(e?.then)}function Qh(e){return ue(e[hc])}function Xh(e){return Symbol.asyncIterator&&ue(e?.[Symbol.asyncIterator])}function Jh(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Kh=function i1(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function ep(e){return ue(e?.[Kh])}function tp(e){return function qh(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,n=r.apply(e,t||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(g){n[g]&&(o[g]=function(m){return new Promise(function(y,C){i.push([g,m,y,C])>1||a(g,m)})})}function a(g,m){try{!function l(g){g.value instanceof Hn?Promise.resolve(g.value.v).then(c,u):d(i[0][2],g)}(n[g](m))}catch(y){d(i[0][3],y)}}function c(g){a("next",g)}function u(g){a("throw",g)}function d(g,m){g(m),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const r=e.getReader();try{for(;;){const{value:n,done:o}=yield Hn(r.read());if(o)return yield Hn(void 0);yield yield Hn(n)}}finally{r.releaseLock()}})}function np(e){return ue(e?.getReader)}function jt(e){if(e instanceof Ie)return e;if(null!=e){if(Qh(e))return function s1(e){return new Ie(t=>{const r=e[hc]();if(ue(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Zh(e))return function a1(e){return new Ie(t=>{for(let r=0;r{e.then(r=>{t.closed||(t.next(r),t.complete())},r=>t.error(r)).then(null,jh)})}(e);if(Xh(e))return rp(e);if(ep(e))return function c1(e){return new Ie(t=>{for(const r of e)if(t.next(r),t.closed)return;t.complete()})}(e);if(np(e))return function u1(e){return rp(tp(e))}(e)}throw Jh(e)}function rp(e){return new Ie(t=>{(function d1(e,t){var r,n,o,i;return function Gh(e,t,r,n){return new(r||(r=Promise))(function(i,s){function a(u){try{c(n.next(u))}catch(d){s(d)}}function l(u){try{c(n.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof r?i:new r(function(s){s(i)})}(u.value).then(a,l)}c((n=n.apply(e,t||[])).next())})}(this,void 0,void 0,function*(){try{for(r=Wh(e);!(n=yield r.next()).done;)if(t.next(n.value),t.closed)return}catch(s){o={error:s}}finally{try{n&&!n.done&&(i=r.return)&&(yield i.call(r))}finally{if(o)throw o.error}}t.complete()})})(e,t).catch(r=>t.error(r))})}function vn(e,t,r,n=0,o=!1){const i=t.schedule(function(){r(),o?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(i),!o)return i}function Ve(e,t,r=1/0){return ue(t)?Ve((n,o)=>ee((i,s)=>t(n,i,o,s))(jt(e(n,o))),r):("number"==typeof t&&(r=t),Pe((n,o)=>function f1(e,t,r,n,o,i,s,a){const l=[];let c=0,u=0,d=!1;const g=()=>{d&&!l.length&&!c&&t.complete()},m=C=>c{i&&t.next(C),c++;let b=!1;jt(r(C,u++)).subscribe(Re(t,E=>{o?.(E),i?m(E):t.next(E)},()=>{b=!0},void 0,()=>{if(b)try{for(c--;l.length&&cy(E)):y(E)}g()}catch(E){t.error(E)}}))};return e.subscribe(Re(t,m,()=>{d=!0,g()})),()=>{a?.()}}(n,o,e,r)))}function Rr(e=1/0){return Ve(jn,e)}const Kt=new Ie(e=>e.complete());function yc(e){return e[e.length-1]}function op(e){return ue(yc(e))?e.pop():void 0}function Yo(e){return function p1(e){return e&&ue(e.schedule)}(yc(e))?e.pop():void 0}function ip(e,t=0){return Pe((r,n)=>{r.subscribe(Re(n,o=>vn(n,e,()=>n.next(o),t),()=>vn(n,e,()=>n.complete(),t),o=>vn(n,e,()=>n.error(o),t)))})}function sp(e,t=0){return Pe((r,n)=>{n.add(e.schedule(()=>r.subscribe(n),t))})}function ap(e,t){if(!e)throw new Error("Iterable cannot be null");return new Ie(r=>{vn(r,t,()=>{const n=e[Symbol.asyncIterator]();vn(r,t,()=>{n.next().then(o=>{o.done?r.complete():r.next(o.value)})},0,!0)})})}function Ne(e,t){return t?function D1(e,t){if(null!=e){if(Qh(e))return function m1(e,t){return jt(e).pipe(sp(t),ip(t))}(e,t);if(Zh(e))return function y1(e,t){return new Ie(r=>{let n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}(e,t);if(Yh(e))return function v1(e,t){return jt(e).pipe(sp(t),ip(t))}(e,t);if(Xh(e))return ap(e,t);if(ep(e))return function _1(e,t){return new Ie(r=>{let n;return vn(r,t,()=>{n=e[Kh](),vn(r,t,()=>{let o,i;try{({value:o,done:i}=n.next())}catch(s){return void r.error(s)}i?r.complete():r.next(o)},0,!0)}),()=>ue(n?.return)&&n.return()})}(e,t);if(np(e))return function C1(e,t){return ap(tp(e),t)}(e,t)}throw Jh(e)}(e,t):jt(e)}class At extends Vt{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const r=super._subscribe(t);return!r.closed&&t.next(this._value),r}getValue(){const{hasError:t,thrownError:r,_value:n}=this;if(t)throw r;return this._throwIfClosed(),n}next(t){super.next(this._value=t)}}function V(...e){return Ne(e,Yo(e))}function ar(e){return e<=0?()=>Kt:Pe((t,r)=>{let n=0;t.subscribe(Re(r,o=>{++n<=e&&(r.next(o),e<=n&&r.complete())}))})}function lp(e={}){const{connector:t=(()=>new Vt),resetOnError:r=!0,resetOnComplete:n=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const g=()=>{a?.unsubscribe(),a=null},m=()=>{g(),s=l=null,u=d=!1},y=()=>{const C=s;m(),C?.unsubscribe()};return Pe((C,b)=>{c++,!d&&!u&&g();const E=l=l??t();b.add(()=>{c--,0===c&&!d&&!u&&(a=_c(y,o))}),E.subscribe(b),s||(s=new Ss({next:D=>E.next(D),error:D=>{d=!0,g(),a=_c(m,r,D),E.error(D)},complete:()=>{u=!0,g(),a=_c(m,n),E.complete()}}),Ne(C).subscribe(s))})(i)}}function _c(e,t,...r){return!0===t?(e(),null):!1===t?null:t(...r).pipe(ar(1)).subscribe(()=>e())}function Ht(e,t){return Pe((r,n)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&n.complete();r.subscribe(Re(n,l=>{o?.unsubscribe();let c=0;const u=i++;jt(e(l,u)).subscribe(o=Re(n,d=>n.next(t?t(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function E1(e,t){return e===t}function ae(e){for(let t in e)if(e[t]===ae)return t;throw Error("Could not find renamed property on target object.")}function As(e,t){for(const r in t)t.hasOwnProperty(r)&&!e.hasOwnProperty(r)&&(e[r]=t[r])}function ke(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ke).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const r=t.indexOf("\n");return-1===r?t:t.substring(0,r)}function Cc(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const M1=ae({__forward_ref__:ae});function fe(e){return e.__forward_ref__=fe,e.toString=function(){return ke(this())},e}function U(e){return Dc(e)?e():e}function Dc(e){return"function"==typeof e&&e.hasOwnProperty(M1)&&e.__forward_ref__===fe}function bc(e){return e&&!!e.\u0275providers}const cp="https://g.co/ng/security#xss";class S extends Error{constructor(t,r){super(function xs(e,t){return`NG0${Math.abs(e)}${t?": "+t:""}`}(t,r)),this.code=t}}function $(e){return"string"==typeof e?e:null==e?"":String(e)}function wc(e,t){throw new S(-201,!1)}function xt(e,t){null==e&&function j(e,t,r,n){throw new Error(`ASSERTION ERROR: ${e}`+(null==n?"":` [Expected=> ${r} ${n} ${t} <=Actual]`))}(t,e,null,"!=")}function L(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function en(e){return{providers:e.providers||[],imports:e.imports||[]}}function Rs(e){return up(e,Os)||up(e,dp)}function up(e,t){return e.hasOwnProperty(t)?e[t]:null}function Ns(e){return e&&(e.hasOwnProperty(Ec)||e.hasOwnProperty(O1))?e[Ec]:null}const Os=ae({\u0275prov:ae}),Ec=ae({\u0275inj:ae}),dp=ae({ngInjectableDef:ae}),O1=ae({ngInjectorDef:ae});var Y=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}(Y||{});let Mc;function it(e){const t=Mc;return Mc=e,t}function hp(e,t,r){const n=Rs(e);return n&&"root"==n.providedIn?void 0===n.value?n.value=n.factory():n.value:r&Y.Optional?null:void 0!==t?t:void wc(ke(e))}const he=globalThis,Qo={},xc="__NG_DI_FLAG__",Ps="ngTempTokenPath",F1=/\n/gm,gp="__source";let Nr;function Un(e){const t=Nr;return Nr=e,t}function j1(e,t=Y.Default){if(void 0===Nr)throw new S(-203,!1);return null===Nr?hp(e,void 0,t):Nr.get(e,t&Y.Optional?null:void 0,t)}function F(e,t=Y.Default){return(function fp(){return Mc}()||j1)(U(e),t)}function A(e,t=Y.Default){return F(e,ks(t))}function ks(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Rc(e){const t=[];for(let r=0;rt){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const m=8&n?g:null;if(m&&-1!==_p(m,c,0)||2&n&&c!==g){if(Bt(n))return!1;s=!0}}}}else{if(!s&&!Bt(n)&&!Bt(l))return!1;if(s&&Bt(l))continue;s=!1,n=l|1&n}}return Bt(n)||s}function Bt(e){return 0==(1&e)}function q1(e,t,r,n){if(null===t)return-1;let o=0;if(n||!r){let i=!1;for(;o-1)for(r++;r0?'="'+a+'"':"")+"]"}else 8&n?o+="."+s:4&n&&(o+=" "+s);else""!==o&&!Bt(s)&&(t+=Ip(i,o),o=""),n=s,i=i||!Bt(n);r++}return""!==o&&(t+=Ip(i,o)),t}function vt(e){return yn(()=>{const t=Tp(e),r={...t,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===Fs.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Ut.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};Ap(r);const n=e.dependencies;return r.directiveDefs=Vs(n,!1),r.pipeDefs=Vs(n,!0),r.id=function s0(e){let t=0;const r=[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(const o of r)t=Math.imul(31,t)+o.charCodeAt(0)<<0;return t+=2147483648,"c"+t}(r),r})}function t0(e){return X(e)||je(e)}function n0(e){return null!==e}function Cn(e){return yn(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function Sp(e,t){if(null==e)return tn;const r={};for(const n in e)if(e.hasOwnProperty(n)){let o=e[n],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),r[o]=n,t&&(t[o]=i)}return r}function B(e){return yn(()=>{const t=Tp(e);return Ap(t),t})}function X(e){return e[Ls]||null}function je(e){return e[Nc]||null}function Qe(e){return e[Oc]||null}function yt(e,t){const r=e[vp]||null;if(!r&&!0===t)throw new Error(`Type ${ke(e)} does not have '\u0275mod' property.`);return r}function Tp(e){const 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||tn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:Sp(e.inputs,t),outputs:Sp(e.outputs)}}function Ap(e){e.features?.forEach(t=>t(e))}function Vs(e,t){if(!e)return null;const r=t?Qe:t0;return()=>("function"==typeof e?e():e).map(n=>r(n)).filter(n0)}const we=0,T=1,q=2,_e=3,$t=4,ei=5,ze=6,Pr=7,Se=8,Bn=9,kr=10,G=11,ti=12,xp=13,Fr=14,Te=15,ni=16,Lr=17,nn=18,ri=19,Rp=20,$n=21,Dn=22,oi=23,ii=24,Q=25,kc=1,Np=2,rn=7,Vr=9,He=11;function at(e){return Array.isArray(e)&&"object"==typeof e[kc]}function Xe(e){return Array.isArray(e)&&!0===e[kc]}function Fc(e){return 0!=(4&e.flags)}function cr(e){return e.componentOffset>-1}function Hs(e){return 1==(1&e.flags)}function Gt(e){return!!e.template}function Lc(e){return 0!=(512&e[q])}function ur(e,t){return e.hasOwnProperty(_n)?e[_n]:null}let Ue=null,Us=!1;function Rt(e){const t=Ue;return Ue=e,t}const kp={version: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:()=>{}};function Lp(e){if(!ai(e)||e.dirty){if(!e.producerMustRecompute(e)&&!Hp(e))return void(e.dirty=!1);e.producerRecomputeValue(e),e.dirty=!1}}function jp(e){e.dirty=!0,function Vp(e){if(void 0===e.liveConsumerNode)return;const t=Us;Us=!0;try{for(const r of e.liveConsumerNode)r.dirty||jp(r)}finally{Us=t}}(e),e.consumerMarkedDirty?.(e)}function jc(e){return e&&(e.nextProducerIndex=0),Rt(e)}function Hc(e,t){if(Rt(t),e&&void 0!==e.producerNode&&void 0!==e.producerIndexOfThis&&void 0!==e.producerLastReadVersion){if(ai(e))for(let r=e.nextProducerIndex;re.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}function Hp(e){jr(e);for(let t=0;t0}function jr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let Gp=null;const Zp=()=>{},_0=(()=>({...kp,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!1,consumerMarkedDirty:e=>{e.schedule(e.ref)},hasRun:!1,cleanupFn:Zp}))();class C0{constructor(t,r,n){this.previousValue=t,this.currentValue=r,this.firstChange=n}isFirstChange(){return this.firstChange}}function Nt(){return Yp}function Yp(e){return e.type.prototype.ngOnChanges&&(e.setInput=b0),D0}function D0(){const e=Xp(this),t=e?.current;if(t){const r=e.previous;if(r===tn)e.previous=t;else for(let n in t)r[n]=t[n];e.current=null,this.ngOnChanges(t)}}function b0(e,t,r,n){const o=this.declaredInputs[r],i=Xp(e)||function w0(e,t){return e[Qp]=t}(e,{previous:tn,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new C0(l&&l.currentValue,t,a===tn),e[n]=t}Nt.ngInherit=!0;const Qp="__ngSimpleChanges__";function Xp(e){return e[Qp]||null}const on=function(e,t,r){};function pe(e){for(;Array.isArray(e);)e=e[we];return e}function $s(e,t){return pe(t[e])}function lt(e,t){return pe(t[e.index])}function eg(e,t){return e.data[t]}function _t(e,t){const r=t[e];return at(r)?r:r[we]}function zn(e,t){return null==t?null:e[t]}function tg(e){e[Lr]=0}function A0(e){1024&e[q]||(e[q]|=1024,rg(e,1))}function ng(e){1024&e[q]&&(e[q]&=-1025,rg(e,-1))}function rg(e,t){let r=e[_e];if(null===r)return;r[ei]+=t;let n=r;for(r=r[_e];null!==r&&(1===t&&1===n[ei]||-1===t&&0===n[ei]);)r[ei]+=t,n=r,r=r[_e]}const H={lFrame:pg(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function sg(){return H.bindingsEnabled}function M(){return H.lFrame.lView}function J(){return H.lFrame.tView}function ne(e){return H.lFrame.contextLView=e,e[Se]}function re(e){return H.lFrame.contextLView=null,e}function Be(){let e=ag();for(;null!==e&&64===e.type;)e=e.parent;return e}function ag(){return H.lFrame.currentTNode}function sn(e,t){const r=H.lFrame;r.currentTNode=e,r.isParent=t}function zc(){return H.lFrame.isParent}function qc(){H.lFrame.isParent=!1}function Je(){const e=H.lFrame;let t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function Br(){return H.lFrame.bindingIndex++}function U0(e,t){const r=H.lFrame;r.bindingIndex=r.bindingRootIndex=e,Wc(t)}function Wc(e){H.lFrame.currentDirectiveIndex=e}function dg(){return H.lFrame.currentQueryIndex}function Yc(e){H.lFrame.currentQueryIndex=e}function $0(e){const t=e[T];return 2===t.type?t.declTNode:1===t.type?e[ze]:null}function fg(e,t,r){if(r&Y.SkipSelf){let o=t,i=e;for(;!(o=o.parent,null!==o||r&Y.Host||(o=$0(i),null===o||(i=i[Fr],10&o.type))););if(null===o)return!1;t=o,e=i}const n=H.lFrame=hg();return n.currentTNode=t,n.lView=e,!0}function Qc(e){const t=hg(),r=e[T];H.lFrame=t,t.currentTNode=r.firstChild,t.lView=e,t.tView=r,t.contextLView=e,t.bindingIndex=r.bindingStartIndex,t.inI18n=!1}function hg(){const e=H.lFrame,t=null===e?null:e.child;return null===t?pg(e):t}function pg(e){const 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 null!==e&&(e.child=t),t}function gg(){const e=H.lFrame;return H.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const mg=gg;function Xc(){const e=gg();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 Ke(){return H.lFrame.selectedIndex}function dr(e){H.lFrame.selectedIndex=e}function be(){const e=H.lFrame;return eg(e.tView,e.selectedIndex)}let yg=!0;function Gs(){return yg}function qn(e){yg=e}function zs(e,t){for(let r=t.directiveStart,n=t.directiveEnd;r=n)break}else t[l]<0&&(e[Lr]+=65536),(a>13>16&&(3&e[q])===t&&(e[q]+=8192,Cg(a,i)):Cg(a,i)}const $r=-1;class ci{constructor(t,r,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=r,this.injectImpl=n}}function eu(e){return e!==$r}function ui(e){return 32767&e}function di(e,t){let r=function tM(e){return e>>16}(e),n=t;for(;r>0;)n=n[Fr],r--;return n}let tu=!0;function Zs(e){const t=tu;return tu=e,t}const Dg=255,bg=5;let nM=0;const an={};function Ys(e,t){const r=wg(e,t);if(-1!==r)return r;const n=t[T];n.firstCreatePass&&(e.injectorIndex=t.length,nu(n.data,e),nu(t,null),nu(n.blueprint,null));const o=Qs(e,t),i=e.injectorIndex;if(eu(o)){const s=ui(o),a=di(o,t),l=a[T].data;for(let c=0;c<8;c++)t[i+c]=a[s+c]|l[s+c]}return t[i+8]=o,i}function nu(e,t){e.push(0,0,0,0,0,0,0,0,t)}function wg(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function Qs(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let r=0,n=null,o=t;for(;null!==o;){if(n=xg(o),null===n)return $r;if(r++,o=o[Fr],-1!==n.injectorIndex)return n.injectorIndex|r<<16}return $r}function ru(e,t,r){!function rM(e,t,r){let n;"string"==typeof r?n=r.charCodeAt(0)||0:r.hasOwnProperty(Jo)&&(n=r[Jo]),null==n&&(n=r[Jo]=nM++);const o=n&Dg;t.data[e+(o>>bg)]|=1<=0?t&Dg:lM:t}(r);if("function"==typeof i){if(!fg(t,e,n))return n&Y.Host?Eg(o,0,n):Mg(t,r,n,o);try{let s;if(s=i(n),null!=s||n&Y.Optional)return s;wc()}finally{mg()}}else if("number"==typeof i){let s=null,a=wg(e,t),l=$r,c=n&Y.Host?t[Te][ze]:null;for((-1===a||n&Y.SkipSelf)&&(l=-1===a?Qs(e,t):t[a+8],l!==$r&&Ag(n,!1)?(s=t[T],a=ui(l),t=di(l,t)):a=-1);-1!==a;){const u=t[T];if(Tg(i,a,u.data)){const d=iM(a,t,r,s,n,c);if(d!==an)return d}l=t[a+8],l!==$r&&Ag(n,t[T].data[a+8]===c)&&Tg(i,a,t)?(s=u,a=ui(l),t=di(l,t)):a=-1}}return o}function iM(e,t,r,n,o,i){const s=t[T],a=s.data[e+8],u=Xs(a,s,r,null==n?cr(a)&&tu:n!=s&&0!=(3&a.type),o&Y.Host&&i===a);return null!==u?fr(t,s,u,a):an}function Xs(e,t,r,n,o){const i=e.providerIndexes,s=t.data,a=1048575&i,l=e.directiveStart,u=i>>20,g=o?a+u:e.directiveEnd;for(let m=n?a:a+u;m=l&&y.type===r)return m}if(o){const m=s[l];if(m&&Gt(m)&&m.type===r)return l}return null}function fr(e,t,r,n){let o=e[r];const i=t.data;if(function J0(e){return e instanceof ci}(o)){const s=o;s.resolving&&function I1(e,t){const r=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new S(-200,`Circular dependency in DI detected for ${e}${r}`)}(function se(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():$(e)}(i[r]));const a=Zs(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?it(s.injectImpl):null;fg(e,n,Y.Default);try{o=e[r]=s.factory(void 0,i,e,n),t.firstCreatePass&&r>=n.directiveStart&&function Q0(e,t,r){const{ngOnChanges:n,ngOnInit:o,ngDoCheck:i}=t.type.prototype;if(n){const s=Yp(t);(r.preOrderHooks??=[]).push(e,s),(r.preOrderCheckHooks??=[]).push(e,s)}o&&(r.preOrderHooks??=[]).push(0-e,o),i&&((r.preOrderHooks??=[]).push(e,i),(r.preOrderCheckHooks??=[]).push(e,i))}(r,i[r],t)}finally{null!==c&&it(c),Zs(a),s.resolving=!1,mg()}}return o}function Tg(e,t,r){return!!(r[t+(e>>bg)]&1<{const t=e.prototype.constructor,r=t[_n]||ou(t),n=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==n;){const i=o[_n]||ou(o);if(i&&i!==r)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function ou(e){return Dc(e)?()=>{const t=ou(U(e));return t&&t()}:ur(e)}function xg(e){const t=e[T],r=t.type;return 2===r?t.declTNode:1===r?e[ze]:null}const zr="__parameters__";function Wr(e,t,r){return yn(()=>{const n=function iu(e){return function(...r){if(e){const n=e(...r);for(const o in n)this[o]=n[o]}}}(t);function o(...i){if(this instanceof o)return n.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(zr)?l[zr]:Object.defineProperty(l,zr,{value:[]})[zr];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return r&&(o.prototype=Object.create(r.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function Yr(e,t){e.forEach(r=>Array.isArray(r)?Yr(r,t):t(r))}function Ng(e,t,r){t>=e.length?e.push(r):e.splice(t,0,r)}function Ks(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function Ct(e,t,r){let n=Qr(e,t);return n>=0?e[1|n]=r:(n=~n,function mM(e,t,r,n){let o=e.length;if(o==t)e.push(r,n);else if(1===o)e.push(n,e[0]),e[0]=r;else{for(o--,e.push(e[o-1],e[o]);o>t;)e[o]=e[o-2],o--;e[t]=r,e[t+1]=n}}(e,n,t,r)),n}function su(e,t){const r=Qr(e,t);if(r>=0)return e[1|r]}function Qr(e,t){return function Og(e,t,r){let n=0,o=e.length>>r;for(;o!==n;){const i=n+(o-n>>1),s=e[i<t?o=i:n=i+1}return~(o<|^->||--!>|)/g,jM="\u200b$1\u200b";const du=new Map;let HM=0;const hu="__ngContext__";function qe(e,t){at(t)?(e[hu]=t[ri],function BM(e){du.set(e[ri],e)}(t)):e[hu]=t}let pu;function gu(e,t){return pu(e,t)}function vi(e){const t=e[_e];return Xe(t)?t[_e]:t}function Kg(e){return tm(e[ti])}function em(e){return tm(e[$t])}function tm(e){for(;null!==e&&!Xe(e);)e=e[$t];return e}function Kr(e,t,r,n,o){if(null!=n){let i,s=!1;Xe(n)?i=n:at(n)&&(s=!0,n=n[we]);const a=pe(n);0===e&&null!==r?null==o?im(t,r,a):hr(t,r,a,o||null,!0):1===e&&null!==r?hr(t,r,a,o||null,!0):2===e?function pa(e,t,r){const n=fa(e,t);n&&function aI(e,t,r,n){e.removeChild(t,r,n)}(e,n,t,r)}(t,a,s):3===e&&t.destroyNode(a),null!=i&&function uI(e,t,r,n,o){const i=r[rn];i!==pe(r)&&Kr(t,e,n,i,o);for(let a=He;at.replace(VM,jM))}(t))}function ua(e,t,r){return e.createElement(t,r)}function rm(e,t){const r=e[Vr],n=r.indexOf(t);ng(t),r.splice(n,1)}function da(e,t){if(e.length<=He)return;const r=He+t,n=e[r];if(n){const o=n[ni];null!==o&&o!==e&&rm(o,n),t>0&&(e[r-1][$t]=n[$t]);const i=Ks(e,He+t);!function KM(e,t){_i(e,t,t[G],2,null,null),t[we]=null,t[ze]=null}(n[T],n);const s=i[nn];null!==s&&s.detachView(i[T]),n[_e]=null,n[$t]=null,n[q]&=-129}return n}function vu(e,t){if(!(256&t[q])){const r=t[G];t[oi]&&Up(t[oi]),t[ii]&&Up(t[ii]),r.destroyNode&&_i(e,t,r,3,null,null),function nI(e){let t=e[ti];if(!t)return yu(e[T],e);for(;t;){let r=null;if(at(t))r=t[ti];else{const n=t[He];n&&(r=n)}if(!r){for(;t&&!t[$t]&&t!==e;)at(t)&&yu(t[T],t),t=t[_e];null===t&&(t=e),at(t)&&yu(t[T],t),r=t&&t[$t]}t=r}}(t)}}function yu(e,t){if(!(256&t[q])){t[q]&=-129,t[q]|=256,function sI(e,t){let r;if(null!=e&&null!=(r=e.destroyHooks))for(let n=0;n=0?n[s]():n[-s].unsubscribe(),i+=2}else r[i].call(n[r[i+1]]);null!==n&&(t[Pr]=null);const o=t[$n];if(null!==o){t[$n]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[n.directiveStart+o];if(i===Ut.None||i===Ut.Emulated)return null}return lt(n,r)}}(e,t.parent,r)}function hr(e,t,r,n,o){e.insertBefore(t,r,n,o)}function im(e,t,r){e.appendChild(t,r)}function sm(e,t,r,n,o){null!==n?hr(e,t,r,n,o):im(e,t,r)}function fa(e,t){return e.parentNode(t)}let Cu,Eu,ma,cm=function lm(e,t,r){return 40&e.type?lt(e,r):null};function ha(e,t,r,n){const o=_u(e,n,t),i=t[G],a=function am(e,t,r){return cm(e,t,r)}(n.parent||t[ze],n,t);if(null!=o)if(Array.isArray(r))for(let l=0;le,createScript:e=>e,createScriptURL:e=>e})}catch{}return ma}()?.createScriptURL(e)||e}class _m{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${cp})`}}function Zn(e){return e instanceof _m?e.changingThisBreaksApplicationSecurity:e}function Ci(e,t){const r=function bI(e){return e instanceof _m&&e.getTypeName()||null}(e);if(null!=r&&r!==t){if("ResourceURL"===r&&"URL"===t)return!0;throw new Error(`Required a safe ${t}, got a ${r} (see ${cp})`)}return r===t}const II=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;var no=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}(no||{});function ro(e){const t=bi();return t?t.sanitize(no.URL,e)||"":Ci(e,"URL")?Zn(e):function Iu(e){return(e=String(e)).match(II)?e:"unsafe:"+e}($(e))}function Im(e){const t=bi();if(t)return ym(t.sanitize(no.RESOURCE_URL,e)||"");if(Ci(e,"ResourceURL"))return ym(Zn(e));throw new S(904,!1)}function bi(){const e=M();return e&&e[kr].sanitizer}class x{constructor(t,r){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof r?this.__NG_ELEMENT_ID__=r:void 0!==r&&(this.\u0275prov=L({token:this,providedIn:r.providedIn||"root",factory:r.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const wi=new x("ENVIRONMENT_INITIALIZER"),Tm=new x("INJECTOR",-1),Am=new x("INJECTOR_DEF_TYPES");class xu{get(t,r=Qo){if(r===Qo){const n=new Error(`NullInjectorError: No provider for ${ke(t)}!`);throw n.name="NullInjectorError",n}return r}}function Ru(e){return{\u0275providers:e}}function xm(...e){return{\u0275providers:Rm(0,e),\u0275fromNgModule:!0}}function Rm(e,...t){const r=[],n=new Set;let o;const i=s=>{r.push(s)};return Yr(t,s=>{const a=s;ya(a,i,[],n)&&(o||=[],o.push(a))}),void 0!==o&&Nm(o,i),r}function Nm(e,t){for(let r=0;r{t(i,n)})}}function ya(e,t,r,n){if(!(e=U(e)))return!1;let o=null,i=Ns(e);const s=!i&&X(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=Ns(l),!i)return!1;o=l}const a=n.has(o);if(s){if(a)return!1;if(n.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)ya(c,t,r,n)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;n.add(o);try{Yr(i.imports,u=>{ya(u,t,r,n)&&(c||=[],c.push(u))})}finally{}void 0!==c&&Nm(c,t)}if(!a){const c=ur(o)||(()=>new o);t({provide:o,useFactory:c,deps:te},o),t({provide:Am,useValue:o,multi:!0},o),t({provide:wi,useValue:()=>F(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;Nu(l,u=>{t(u,c)})}}}return o!==e&&void 0!==e.providers}function Nu(e,t){for(let r of e)bc(r)&&(r=r.\u0275providers),Array.isArray(r)?Nu(r,t):t(r)}const jI=ae({provide:String,useValue:ae});function Ou(e){return null!==e&&"object"==typeof e&&jI in e}function pr(e){return"function"==typeof e}const Pu=new x("Set Injector scope."),_a={},UI={};let ku;function Ca(){return void 0===ku&&(ku=new xu),ku}class Dt{}class Da extends Dt{get destroyed(){return this._destroyed}constructor(t,r,n,o){super(),this.parent=r,this.source=n,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,Lu(t,s=>this.processProvider(s)),this.records.set(Tm,oo(void 0,this)),o.has("environment")&&this.records.set(Dt,oo(void 0,this));const i=this.records.get(Pu);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(Am.multi,te,Y.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const r of this._ngOnDestroyHooks)r.ngOnDestroy();const t=this._onDestroyHooks;this._onDestroyHooks=[];for(const r of t)r()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();const r=Un(this),n=it(void 0);try{return t()}finally{Un(r),it(n)}}get(t,r=Qo,n=Y.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(yp))return t[yp](this);n=ks(n);const i=Un(this),s=it(void 0);try{if(!(n&Y.SkipSelf)){let l=this.records.get(t);if(void 0===l){const c=function qI(e){return"function"==typeof e||"object"==typeof e&&e instanceof x}(t)&&Rs(t);l=c&&this.injectableDefInScope(c)?oo(Fu(t),_a):null,this.records.set(t,l)}if(null!=l)return this.hydrate(t,l)}return(n&Y.Self?Ca():this.parent).get(t,r=n&Y.Optional&&r===Qo?null:r)}catch(a){if("NullInjectorError"===a.name){if((a[Ps]=a[Ps]||[]).unshift(ke(t)),i)throw a;return function U1(e,t,r,n){const o=e[Ps];throw t[gp]&&o.unshift(t[gp]),e.message=function B1(e,t,r,n=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=ke(t);if(Array.isArray(t))o=t.map(ke).join(" -> ");else if("object"==typeof t){let i=[];for(let s in t)if(t.hasOwnProperty(s)){let a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ke(a)))}o=`{${i.join(", ")}}`}return`${r}${n?"("+n+")":""}[${o}]: ${e.replace(F1,"\n ")}`}("\n"+e.message,o,r,n),e.ngTokenPath=o,e[Ps]=null,e}(a,t,"R3InjectorError",this.source)}throw a}finally{it(s),Un(i)}}resolveInjectorInitializers(){const t=Un(this),r=it(void 0);try{const o=this.get(wi.multi,te,Y.Self);for(const i of o)i()}finally{Un(t),it(r)}}toString(){const t=[],r=this.records;for(const n of r.keys())t.push(ke(n));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new S(205,!1)}processProvider(t){let r=pr(t=U(t))?t:U(t&&t.provide);const n=function $I(e){return Ou(e)?oo(void 0,e.useValue):oo(km(e),_a)}(t);if(pr(t)||!0!==t.multi)this.records.get(r);else{let o=this.records.get(r);o||(o=oo(void 0,_a,!0),o.factory=()=>Rc(o.multi),this.records.set(r,o)),r=t,o.multi.push(t)}this.records.set(r,n)}hydrate(t,r){return r.value===_a&&(r.value=UI,r.value=r.factory()),"object"==typeof r.value&&r.value&&function zI(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(r.value)&&this._ngOnDestroyHooks.add(r.value),r.value}injectableDefInScope(t){if(!t.providedIn)return!1;const r=U(t.providedIn);return"string"==typeof r?"any"===r||this.scopes.has(r):this.injectorDefTypes.has(r)}removeOnDestroy(t){const r=this._onDestroyHooks.indexOf(t);-1!==r&&this._onDestroyHooks.splice(r,1)}}function Fu(e){const t=Rs(e),r=null!==t?t.factory:ur(e);if(null!==r)return r;if(e instanceof x)throw new S(204,!1);if(e instanceof Function)return function BI(e){const t=e.length;if(t>0)throw function pi(e,t){const r=[];for(let n=0;nr.factory(e):()=>new e}(e);throw new S(204,!1)}function km(e,t,r){let n;if(pr(e)){const o=U(e);return ur(o)||Fu(o)}if(Ou(e))n=()=>U(e.useValue);else if(function Pm(e){return!(!e||!e.useFactory)}(e))n=()=>e.useFactory(...Rc(e.deps||[]));else if(function Om(e){return!(!e||!e.useExisting)}(e))n=()=>F(U(e.useExisting));else{const o=U(e&&(e.useClass||e.provide));if(!function GI(e){return!!e.deps}(e))return ur(o)||Fu(o);n=()=>new o(...Rc(e.deps))}return n}function oo(e,t,r=!1){return{factory:e,value:t,multi:r?[]:void 0}}function Lu(e,t){for(const r of e)Array.isArray(r)?Lu(r,t):r&&bc(r)?Lu(r.\u0275providers,t):t(r)}const ba=new x("AppId",{providedIn:"root",factory:()=>WI}),WI="ng",Fm=new x("Platform Initializer"),gr=new x("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),Lm=new x("CSP nonce",{providedIn:"root",factory:()=>function to(){if(void 0!==Eu)return Eu;if(typeof document<"u")return document;throw new S(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});let Vm=(e,t,r)=>null;function zu(e,t,r=!1){return Vm(e,t,r)}class rS{}class Um{}class iS{resolveComponentFactory(t){throw function oS(e){const t=Error(`No component factory found for ${ke(e)}.`);return t.ngComponent=e,t}(t)}}let Ta=(()=>{class t{}return t.NULL=new iS,t})();function sS(){return ao(Be(),M())}function ao(e,t){return new bt(lt(e,t))}let bt=(()=>{class t{constructor(n){this.nativeElement=n}}return t.__NG_ELEMENT_ID__=sS,t})();function aS(e){return e instanceof bt?e.nativeElement:e}class $m{}let Mn=(()=>{class t{constructor(){this.destroyNode=null}}return t.__NG_ELEMENT_ID__=()=>function lS(){const e=M(),r=_t(Be().index,e);return(at(r)?r:e)[G]}(),t})(),cS=(()=>{var e;class t{}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>null}),t})();class Ii{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const uS=new Ii("16.2.8"),Zu={};function Wm(e,t=null,r=null,n){const o=Zm(e,t,r,n);return o.resolveInjectorInitializers(),o}function Zm(e,t=null,r=null,n,o=new Set){const i=[r||te,xm(e)];return n=n||("object"==typeof e?void 0:ke(e)),new Da(i,t||Ca(),n||null,o)}let wt=(()=>{var e;class t{static create(n,o){if(Array.isArray(n))return Wm({name:""},o,n,"");{const i=n.name??"";return Wm({name:i},n.parent,n.providers,i)}}}return(e=t).THROW_IF_NOT_FOUND=Qo,e.NULL=new xu,e.\u0275prov=L({token:e,providedIn:"any",factory:()=>F(Tm)}),e.__NG_ELEMENT_ID__=-1,t})();function Qu(e){return e.ngOriginalError}class In{constructor(){this._console=console}handleError(t){const r=this._findOriginalError(t);this._console.error("ERROR",t),r&&this._console.error("ORIGINAL ERROR",r)}_findOriginalError(t){let r=t&&Qu(t);for(;r&&Qu(r);)r=Qu(r);return r||null}}function Ju(e){return t=>{setTimeout(e,void 0,t)}}const Ee=class vS extends Vt{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,r,n){let o=t,i=r||(()=>null),s=n;if(t&&"object"==typeof t){const l=t;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=Ju(i),o&&(o=Ju(o)),s&&(s=Ju(s)));const a=super.subscribe({next:o,error:i,complete:s});return t instanceof gt&&t.add(a),a}};function Qm(...e){}class ge{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:r=!1,shouldCoalesceRunChangeDetection:n=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Ee(!1),this.onMicrotaskEmpty=new Ee(!1),this.onStable=new Ee(!1),this.onError=new Ee(!1),typeof Zone>"u")throw new S(908,!1);Zone.assertZonePatched();const 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=!n&&r,o.shouldCoalesceRunChangeDetection=n,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function yS(){const e="function"==typeof he.requestAnimationFrame;let t=he[e?"requestAnimationFrame":"setTimeout"],r=he[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&t&&r){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const o=r[Zone.__symbol__("OriginalDelegate")];o&&(r=o)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:r}}().nativeRequestAnimationFrame,function DS(e){const t=()=>{!function CS(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(he,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,ed(e),e.isCheckStableRunning=!0,Ku(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),ed(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(r,n,o,i,s,a)=>{if(function wS(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return r.invokeTask(o,i,s,a);try{return Xm(e),r.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&t(),Jm(e)}},onInvoke:(r,n,o,i,s,a,l)=>{try{return Xm(e),r.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&t(),Jm(e)}},onHasTask:(r,n,o,i)=>{r.hasTask(o,i),n===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,ed(e),Ku(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(r,n,o,i)=>(r.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ge.isInAngularZone())throw new S(909,!1)}static assertNotInAngularZone(){if(ge.isInAngularZone())throw new S(909,!1)}run(t,r,n){return this._inner.run(t,r,n)}runTask(t,r,n,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,t,_S,Qm,Qm);try{return i.runTask(s,r,n)}finally{i.cancelTask(s)}}runGuarded(t,r,n){return this._inner.runGuarded(t,r,n)}runOutsideAngular(t){return this._outer.run(t)}}const _S={};function Ku(e){if(0==e._nesting&&!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 ed(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function Xm(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Jm(e){e._nesting--,Ku(e)}const Km=new x("",{providedIn:"root",factory:ev});function ev(){const e=A(ge);let t=!0;return function b1(...e){const t=Yo(e),r=function g1(e,t){return"number"==typeof yc(e)?e.pop():t}(e,1/0),n=e;return n.length?1===n.length?jt(n[0]):Rr(r)(Ne(n,t)):Kt}(new Ie(o=>{t=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(t),o.complete()})}),new Ie(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ge.assertNotInAngularZone(),queueMicrotask(()=>{!t&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(t=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ge.assertInAngularZone(),t&&(t=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe(lp()))}function Sn(e){return e instanceof Function?e():e}let td=(()=>{var e;class t{constructor(){this.renderDepth=0,this.handler=null}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){this.renderDepth--,0===this.renderDepth&&this.handler?.execute()}ngOnDestroy(){this.handler?.destroy(),this.handler=null}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new e}),t})();function Si(e){for(;e;){e[q]|=64;const t=vi(e);if(Lc(e)&&!t)return e;e=t}return null}const iv=new x("",{providedIn:"root",factory:()=>!1});let xa=null;function cv(e,t){return e[t]??fv()}function uv(e,t){const r=fv();r.producerNode?.length&&(e[t]=xa,r.lView=e,xa=dv())}const OS={...kp,consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{Si(e.lView)},lView:null};function dv(){return Object.create(OS)}function fv(){return xa??=dv(),xa}const z={};function _(e){hv(J(),M(),Ke()+e,!1)}function hv(e,t,r,n){if(!n)if(3==(3&t[q])){const i=e.preOrderCheckHooks;null!==i&&qs(t,i,r)}else{const i=e.preOrderHooks;null!==i&&Ws(t,i,0,r)}dr(r)}function I(e,t=Y.Default){const r=M();return null===r?F(e,t):Ig(Be(),r,U(e),t)}function Ra(e,t,r,n,o,i,s,a,l,c,u){const d=t.blueprint.slice();return d[we]=o,d[q]=140|n,(null!==c||e&&2048&e[q])&&(d[q]|=2048),tg(d),d[_e]=d[Fr]=e,d[Se]=r,d[kr]=s||e&&e[kr],d[G]=a||e&&e[G],d[Bn]=l||e&&e[Bn]||null,d[ze]=i,d[ri]=function UM(){return HM++}(),d[Dn]=u,d[Rp]=c,d[Te]=2==t.type?e[Te]:d,d}function uo(e,t,r,n,o){let i=e.data[t];if(null===i)i=function nd(e,t,r,n,o){const i=ag(),s=zc(),l=e.data[t]=function US(e,t,r,n,o,i){let s=t?t.injectorIndex:-1,a=0;return function Ur(){return null!==H.skipHydrationRootTNode}()&&(a|=128),{type:r,index:n,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}}(0,s?i:i&&i.parent,r,t,n,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,t,r,n,o),function H0(){return H.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=r,i.value=n,i.attrs=o;const s=function li(){const e=H.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return sn(i,!0),i}function Ti(e,t,r,n){if(0===r)return-1;const o=t.length;for(let i=0;iQ&&hv(e,t,Q,!1),on(a?2:0,o);const c=a?i:null,u=jc(c);try{null!==c&&(c.dirty=!1),r(n,o)}finally{Hc(c,u)}}finally{a&&null===t[oi]&&uv(t,oi),dr(s),on(a?3:1,o)}}function rd(e,t,r){if(Fc(t)){const n=Rt(null);try{const i=t.directiveEnd;for(let s=t.directiveStart;snull;function yv(e,t,r,n){for(let o in e)if(e.hasOwnProperty(o)){r=null===r?{}:r;const i=e[o];null===n?_v(r,t,o,i):n.hasOwnProperty(o)&&_v(r,t,n[o],i)}return r}function _v(e,t,r,n){e.hasOwnProperty(r)?e[r].push(t,n):e[r]=[t,n]}function Et(e,t,r,n,o,i,s,a){const l=lt(t,r);let u,c=t.inputs;!a&&null!=c&&(u=c[n])?(dd(e,r,u,n,o),cr(t)&&function GS(e,t){const r=_t(t,e);16&r[q]||(r[q]|=64)}(r,t.index)):3&t.type&&(n=function $S(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(n),o=null!=s?s(o,t.value||"",n):o,i.setProperty(l,n,o))}function ad(e,t,r,n){if(sg()){const o=null===n?null:{"":-1},i=function QS(e,t){const r=e.directiveRegistry;let n=null,o=null;if(r)for(let i=0;i0;){const r=e[--t];if("number"==typeof r&&r<0)return r}return 0})(s)!=a&&s.push(a),s.push(r,n,i)}}(e,t,n,Ti(e,r,o.hostVars,z),o)}function ln(e,t,r,n,o,i){const s=lt(e,t);!function cd(e,t,r,n,o,i,s){if(null==i)e.removeAttribute(t,o,r);else{const a=null==s?$(i):s(i,n||"",o);e.setAttribute(t,o,a,r)}}(t[G],s,i,e.value,r,n,o)}function nT(e,t,r,n,o,i){const s=i[t];if(null!==s)for(let a=0;a{var e;class t{constructor(){this.all=new Set,this.queue=new Map}create(n,o,i){const s=typeof Zone>"u"?null:Zone.current,a=function y0(e,t,r){const n=Object.create(_0);r&&(n.consumerAllowSignalWrites=!0),n.fn=e,n.schedule=t;const o=s=>{n.cleanupFn=s};return n.ref={notify:()=>jp(n),run:()=>{if(n.dirty=!1,n.hasRun&&!Hp(n))return;n.hasRun=!0;const s=jc(n);try{n.cleanupFn(),n.cleanupFn=Zp,n.fn(o)}finally{Hc(n,s)}},cleanup:()=>n.cleanupFn()},n.ref}(n,u=>{this.all.has(u)&&this.queue.set(u,s)},i);let l;this.all.add(a),a.notify();const c=()=>{a.cleanup(),l?.(),this.all.delete(a),this.queue.delete(a)};return l=o?.onDestroy(c),{destroy:c}}flush(){if(0!==this.queue.size)for(const[n,o]of this.queue)this.queue.delete(n),o?o.run(()=>n.run()):n.run()}get isQueueEmpty(){return 0===this.queue.size}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new e}),t})();function Oa(e,t,r){let n=r?e.styles:null,o=r?e.classes:null,i=0;if(null!==t)for(let s=0;s0){Nv(e,1);const o=r.components;null!==o&&Pv(e,o,1)}}function Pv(e,t,r){for(let n=0;n-1&&(da(t,n),Ks(r,n))}this._attachedToViewContainer=!1}vu(this._lView[T],this._lView)}onDestroy(t){!function og(e,t){if(256==(256&e[q]))throw new S(911,!1);null===e[$n]&&(e[$n]=[]),e[$n].push(t)}(this._lView,t)}markForCheck(){Si(this._cdRefInjectingView||this._lView)}detach(){this._lView[q]&=-129}reattach(){this._lView[q]|=128}detectChanges(){Pa(this._lView[T],this._lView,this.context)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new S(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function tI(e,t){_i(e,t,t[G],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new S(902,!1);this._appRef=t}}class dT extends xi{constructor(t){super(t),this._view=t}detectChanges(){const t=this._view;Pa(t[T],t,t[Se],!1)}checkNoChanges(){}get context(){return null}}class kv extends Ta{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const r=X(t);return new Ri(r,this.ngModule)}}function Fv(e){const t=[];for(let r in e)e.hasOwnProperty(r)&&t.push({propName:e[r],templateName:r});return t}class hT{constructor(t,r){this.injector=t,this.parentInjector=r}get(t,r,n){n=ks(n);const o=this.injector.get(t,Zu,n);return o!==Zu||r===Zu?o:this.parentInjector.get(t,r,n)}}class Ri extends Um{get inputs(){const t=this.componentDef,r=t.inputTransforms,n=Fv(t.inputs);if(null!==r)for(const o of n)r.hasOwnProperty(o.propName)&&(o.transform=r[o.propName]);return n}get outputs(){return Fv(this.componentDef.outputs)}constructor(t,r){super(),this.componentDef=t,this.ngModule=r,this.componentType=t.type,this.selector=function J1(e){return e.map(X1).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!r}create(t,r,n,o){let i=(o=o||this.ngModule)instanceof Dt?o:o?.injector;i&&null!==this.componentDef.getStandaloneInjector&&(i=this.componentDef.getStandaloneInjector(i)||i);const s=i?new hT(t,i):t,a=s.get($m,null);if(null===a)throw new S(407,!1);const d={rendererFactory:a,sanitizer:s.get(cS,null),effectManager:s.get(Av,null),afterRenderEventManager:s.get(td,null)},g=a.createRenderer(null,this.componentDef),m=this.componentDef.selectors[0][0]||"div",y=n?function FS(e,t,r,n){const i=n.get(iv,!1)||r===Ut.ShadowDom,s=e.selectRootElement(t,i);return function LS(e){vv(e)}(s),s}(g,n,this.componentDef.encapsulation,s):ua(g,m,function fT(e){const t=e.toLowerCase();return"svg"===t?"svg":"math"===t?"math":null}(m)),E=this.componentDef.signals?4608:this.componentDef.onPush?576:528;let D=null;null!==y&&(D=zu(y,s,!0));const O=sd(0,null,null,1,0,null,null,null,null,null,null),N=Ra(null,O,null,E,null,null,d,g,s,null,D);let Z,Ge;Qc(N);try{const Tt=this.componentDef;let xr,ac=null;Tt.findHostDirectiveDefs?(xr=[],ac=new Map,Tt.findHostDirectiveDefs(Tt,xr,ac),xr.push(Tt)):xr=[Tt];const Ij=function gT(e,t){const r=e[T],n=Q;return e[n]=t,uo(r,n,2,"#host",null)}(N,y),Sj=function mT(e,t,r,n,o,i,s){const a=o[T];!function vT(e,t,r,n){for(const o of e)t.mergedAttrs=Ko(t.mergedAttrs,o.hostAttrs);null!==t.mergedAttrs&&(Oa(t,t.mergedAttrs,!0),null!==r&&gm(n,r,t))}(n,e,t,s);let l=null;null!==t&&(l=zu(t,o[Bn]));const c=i.rendererFactory.createRenderer(t,r);let u=16;r.signals?u=4096:r.onPush&&(u=64);const d=Ra(o,mv(r),null,u,o[e.index],e,i,c,null,null,l);return a.firstCreatePass&&ld(a,e,n.length-1),Na(o,d),o[e.index]=d}(Ij,y,Tt,xr,N,d,g);Ge=eg(O,Q),y&&function _T(e,t,r,n){if(n)Pc(e,r,["ng-version",uS.full]);else{const{attrs:o,classes:i}=function K1(e){const t=[],r=[];let n=1,o=2;for(;n0&&pm(e,r,i.join(" "))}}(g,Tt,y,n),void 0!==r&&function CT(e,t,r){const n=e.projection=[];for(let o=0;o=0;n--){const o=e[n];o.hostVars=t+=o.hostVars,o.hostAttrs=Ko(o.hostAttrs,r=Ko(r,o.hostAttrs))}}(n)}function ka(e){return e===tn?{}:e===te?[]:e}function wT(e,t){const r=e.viewQuery;e.viewQuery=r?(n,o)=>{t(n,o),r(n,o)}:t}function ET(e,t){const r=e.contentQueries;e.contentQueries=r?(n,o,i)=>{t(n,o,i),r(n,o,i)}:t}function MT(e,t){const r=e.hostBindings;e.hostBindings=r?(n,o)=>{t(n,o),r(n,o)}:t}function Uv(e){const t=e.inputConfig,r={};for(const n in t)if(t.hasOwnProperty(n)){const o=t[n];Array.isArray(o)&&o[2]&&(r[n]=o[2])}e.inputTransforms=r}function Fa(e){return!!hd(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function hd(e){return null!==e&&("function"==typeof e||"object"==typeof e)}function cn(e,t,r){return e[t]=r}function We(e,t,r){return!Object.is(e[t],r)&&(e[t]=r,!0)}function zt(e,t,r,n){const o=M();return We(o,Br(),t)&&(J(),ln(be(),o,e,t,r,n)),zt}function ho(e,t,r,n){return We(e,Br(),r)?t+$(r)+n:z}function P(e,t,r,n,o,i,s,a){const l=M(),c=J(),u=e+Q,d=c.firstCreatePass?function QT(e,t,r,n,o,i,s,a,l){const c=t.consts,u=uo(t,e,4,s||null,zn(c,a));ad(t,r,u,zn(c,l)),zs(t,u);const d=u.tView=sd(2,u,n,o,i,t.directiveRegistry,t.pipeRegistry,null,t.schemas,c,null);return null!==t.queries&&(t.queries.template(t,u),d.queries=t.queries.embeddedTView(u)),u}(u,c,l,t,r,n,o,i,s):c.data[u];sn(d,!1);const g=ey(c,l,d,e);Gs()&&ha(c,l,g,d),qe(g,l),Na(l,l[u]=wv(g,l,g,d)),Hs(d)&&od(c,l,d),null!=s&&id(l,d,a)}let ey=function ty(e,t,r,n){return qn(!0),t[G].createComment("")};function _d(e){return function Hr(e,t){return e[t]}(function j0(){return H.lFrame.contextLView}(),Q+e)}function w(e,t,r){const n=M();return We(n,Br(),t)&&Et(J(),be(),n,e,t,n[G],r,!1),w}function Cd(e,t,r,n,o){const s=o?"class":"style";dd(e,r,t.inputs[s],s,n)}function h(e,t,r,n){const o=M(),i=J(),s=Q+e,a=o[G],l=i.firstCreatePass?function eA(e,t,r,n,o,i){const s=t.consts,l=uo(t,e,2,n,zn(s,o));return ad(t,r,l,zn(s,i)),null!==l.attrs&&Oa(l,l.attrs,!1),null!==l.mergedAttrs&&Oa(l,l.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,l),l}(s,i,o,t,r,n):i.data[s],c=ny(i,o,l,a,t,e);o[s]=c;const u=Hs(l);return sn(l,!0),gm(a,c,l),32!=(32&l.flags)&&Gs()&&ha(i,o,c,l),0===function R0(){return H.lFrame.elementDepthCount}()&&qe(c,o),function N0(){H.lFrame.elementDepthCount++}(),u&&(od(i,o,l),rd(i,l,o)),null!==n&&id(o,l),h}function p(){let e=Be();zc()?qc():(e=e.parent,sn(e,!1));const t=e;(function P0(e){return H.skipHydrationRootTNode===e})(t)&&function V0(){H.skipHydrationRootTNode=null}(),function O0(){H.lFrame.elementDepthCount--}();const r=J();return r.firstCreatePass&&(zs(r,e),Fc(e)&&r.queries.elementEnd(e)),null!=t.classesWithoutHost&&function K0(e){return 0!=(8&e.flags)}(t)&&Cd(r,t,M(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function eM(e){return 0!=(16&e.flags)}(t)&&Cd(r,t,M(),t.stylesWithoutHost,!1),p}function v(e,t,r,n){return h(e,t,r,n),p(),v}let ny=(e,t,r,n,o,i)=>(qn(!0),ua(n,o,function vg(){return H.lFrame.currentNamespace}()));function ut(e,t,r){const n=M(),o=J(),i=e+Q,s=o.firstCreatePass?function rA(e,t,r,n,o){const i=t.consts,s=zn(i,n),a=uo(t,e,8,"ng-container",s);return null!==s&&Oa(a,s,!0),ad(t,r,a,zn(i,o)),null!==t.queries&&t.queries.elementStart(t,a),a}(i,o,n,t,r):o.data[i];sn(s,!0);const a=oy(o,n,s,e);return n[i]=a,Gs()&&ha(o,n,a,s),qe(a,n),Hs(s)&&(od(o,n,s),rd(o,s,n)),null!=r&&id(n,s),ut}function dt(){let e=Be();const t=J();return zc()?qc():(e=e.parent,sn(e,!1)),t.firstCreatePass&&(zs(t,e),Fc(e)&&t.queries.elementEnd(e)),dt}let oy=(e,t,r,n)=>(qn(!0),mu(t[G],""));function Ae(){return M()}function Fi(e){return!!e&&"function"==typeof e.then}function iy(e){return!!e&&"function"==typeof e.subscribe}function R(e,t,r,n){const o=M(),i=J(),s=Be();return function ay(e,t,r,n,o,i,s){const a=Hs(n),c=e.firstCreatePass&&Iv(e),u=t[Se],d=Mv(t);let g=!0;if(3&n.type||s){const C=lt(n,t),b=s?s(C):C,E=d.length,D=s?N=>s(pe(N[n.index])):n.index;let O=null;if(!s&&a&&(O=function sA(e,t,r,n){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,t,o,n.index)),null!==O)(O.__ngLastListenerFn__||O).__ngNextListenerFn__=i,O.__ngLastListenerFn__=i,g=!1;else{i=cy(n,t,u,i,!1);const N=r.listen(b,o,i);d.push(i,N),c&&c.push(o,D,E,E+1)}}else i=cy(n,t,u,i,!1);const m=n.outputs;let y;if(g&&null!==m&&(y=m[o])){const C=y.length;if(C)for(let b=0;b-1?_t(e.index,t):t);let l=ly(t,r,n,s),c=i.__ngNextListenerFn__;for(;c;)l=ly(t,r,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function k(e=1){return function G0(e){return(H.lFrame.contextLView=function z0(e,t){for(;e>0;)t=t[Fr],e--;return t}(e,H.lFrame.contextLView))[Se]}(e)}function An(e,t,r,n,o){const i=M(),s=ho(i,t,r,n);return s!==z&&Et(J(),be(),i,e,s,i[G],o,!1),An}function Ua(e,t){return e<<17|t<<2}function Yn(e){return e>>17&32767}function Dd(e){return 2|e}function vr(e){return(131068&e)>>2}function bd(e,t){return-131069&e|t<<2}function wd(e){return 1|e}function _y(e,t,r,n,o){const i=e[r+1],s=null===t;let a=n?Yn(i):vr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];gA(e[a],t)&&(l=!0,e[a+1]=n?wd(u):Dd(u)),a=n?Yn(u):vr(u)}l&&(e[r+1]=n?Dd(i):wd(i))}function gA(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&Qr(e,t)>=0}function Ba(e,t){return function qt(e,t,r,n){const o=M(),i=J(),s=function wn(e){const t=H.lFrame,r=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,r}(2);i.firstUpdatePass&&function Ty(e,t,r,n){const o=e.data;if(null===o[r+1]){const i=o[Ke()],s=function Sy(e,t){return t>=e.expandoStartIndex}(e,r);(function Ny(e,t){return 0!=(e.flags&(t?8:16))})(i,n)&&null===t&&!s&&(t=!1),t=function EA(e,t,r,n){const o=function Zc(e){const t=H.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}(e);let i=n?t.residualClasses:t.residualStyles;if(null===o)0===(n?t.classBindings:t.styleBindings)&&(r=Li(r=Ed(null,e,t,r,n),t.attrs,n),i=null);else{const s=t.directiveStylingLast;if(-1===s||e[s]!==o)if(r=Ed(o,e,t,r,n),null===i){let l=function MA(e,t,r){const n=r?t.classBindings:t.styleBindings;if(0!==vr(n))return e[Yn(n)]}(e,t,n);void 0!==l&&Array.isArray(l)&&(l=Ed(null,e,t,l[1],n),l=Li(l,t.attrs,n),function IA(e,t,r,n){e[Yn(r?t.classBindings:t.styleBindings)]=n}(e,t,n,l))}else i=function SA(e,t,r){let n;const o=t.directiveEnd;for(let i=1+t.directiveStylingLast;i0)&&(c=!0)):u=r,o)if(0!==l){const g=Yn(e[a+1]);e[n+1]=Ua(g,a),0!==g&&(e[g+1]=bd(e[g+1],n)),e[a+1]=function dA(e,t){return 131071&e|t<<17}(e[a+1],n)}else e[n+1]=Ua(a,0),0!==a&&(e[a+1]=bd(e[a+1],n)),a=n;else e[n+1]=Ua(l,0),0===a?a=n:e[l+1]=bd(e[l+1],n),l=n;c&&(e[n+1]=Dd(e[n+1])),_y(e,u,n,!0),_y(e,u,n,!1),function pA(e,t,r,n,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof t&&Qr(i,t)>=0&&(r[n+1]=wd(r[n+1]))}(t,u,e,n,i),s=Ua(a,l),i?t.classBindings=s:t.styleBindings=s}(o,i,t,r,s,n)}}(i,e,s,n),t!==z&&We(o,s,t)&&function xy(e,t,r,n,o,i,s,a){if(!(3&t.type))return;const l=e.data,c=l[a+1],u=function fA(e){return 1==(1&e)}(c)?Ry(l,t,r,o,vr(c),s):void 0;$a(u)||($a(i)||function uA(e){return 2==(2&e)}(c)&&(i=Ry(l,null,r,o,a,s)),function dI(e,t,r,n,o){if(t)o?e.addClass(r,n):e.removeClass(r,n);else{let i=-1===n.indexOf("-")?void 0:Wn.DashCase;null==o?e.removeStyle(r,n,i):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),i|=Wn.Important),e.setStyle(r,n,o,i))}}(n,s,$s(Ke(),r),o,i))}(i,i.data[Ke()],o,o[G],e,o[s+1]=function RA(e,t){return null==e||""===e||("string"==typeof t?e+=t:"object"==typeof e&&(e=ke(Zn(e)))),e}(t,r),n,s)}(e,t,null,!0),Ba}function Ed(e,t,r,n,o){let i=null;const s=r.directiveEnd;let a=r.directiveStylingLast;for(-1===a?a=r.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let g=r[o+1];g===z&&(g=d?te:void 0);let m=d?su(g,n):u===n?g:void 0;if(c&&!$a(m)&&(m=su(l,n)),$a(m)&&(a=m,s))return a;const y=e[o+1];o=s?Yn(y):vr(y)}if(null!==t){let l=i?t.residualClasses:t.residualStyles;null!=l&&(a=su(l,n))}return a}function $a(e){return void 0!==e}function f(e,t=""){const r=M(),n=J(),o=e+Q,i=n.firstCreatePass?uo(n,o,1,t,null):n.data[o],s=Oy(n,r,i,t,e);r[o]=s,Gs()&&ha(n,r,s,i),sn(i,!1)}let Oy=(e,t,r,n,o)=>(qn(!0),function ca(e,t){return e.createText(t)}(t[G],n));function Ce(e){return xn("",e,""),Ce}function xn(e,t,r){const n=M(),o=ho(n,e,t,r);return o!==z&&function Tn(e,t,r){const n=$s(t,e);!function nm(e,t,r){e.setValue(t,r)}(e[G],n,r)}(n,Ke(),o),xn}const wo="en-US";let t_=wo;function Sd(e,t,r,n,o){if(e=U(e),Array.isArray(e))for(let i=0;i>20;if(pr(e)||!e.multi){const m=new ci(c,o,I),y=Ad(l,t,o?u:u+g,d);-1===y?(ru(Ys(a,s),i,l),Td(i,e,t.length),t.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),r.push(m),s.push(m)):(r[y]=m,s[y]=m)}else{const m=Ad(l,t,u+g,d),y=Ad(l,t,u,u+g),b=y>=0&&r[y];if(o&&!b||!o&&!(m>=0&&r[m])){ru(Ys(a,s),i,l);const E=function Jx(e,t,r,n,o){const i=new ci(e,r,I);return i.multi=[],i.index=t,i.componentProviders=0,I_(i,o,n&&!r),i}(o?Xx:Qx,r.length,o,n,c);!o&&b&&(r[y].providerFactory=E),Td(i,e,t.length,0),t.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),r.push(E),s.push(E)}else Td(i,e,m>-1?m:y,I_(r[o?y:m],c,!o&&n));!o&&n&&b&&r[y].componentProviders++}}}function Td(e,t,r,n){const o=pr(t),i=function HI(e){return!!e.useClass}(t);if(o||i){const l=(i?U(t.useClass):t).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&t.multi){const u=c.indexOf(r);-1===u?c.push(r,[n,l]):c[u+1].push(n,l)}else c.push(r,l)}}}function I_(e,t,r){return r&&e.componentProviders++,e.multi.push(t)-1}function Ad(e,t,r,n){for(let o=r;o{r.providersResolver=(n,o)=>function Yx(e,t,r){const n=J();if(n.firstCreatePass){const o=Gt(e);Sd(r,n.data,n.blueprint,o,!0),Sd(t,n.data,n.blueprint,o,!1)}}(n,o?o(e):e,t)}}class _r{}class S_{}class Rd extends _r{constructor(t,r,n){super(),this._parent=r,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new kv(this);const o=yt(t);this._bootstrapComponents=Sn(o.bootstrap),this._r3Injector=Zm(t,r,[{provide:_r,useValue:this},{provide:Ta,useValue:this.componentFactoryResolver},...n],ke(t),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(t)}get injector(){return this._r3Injector}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(r=>r()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Nd extends S_{constructor(t){super(),this.moduleType=t}create(t){return new Rd(this.moduleType,t,[])}}class T_ extends _r{constructor(t){super(),this.componentFactoryResolver=new kv(this),this.instance=null;const r=new Da([...t.providers,{provide:_r,useValue:this},{provide:Ta,useValue:this.componentFactoryResolver}],t.parent||Ca(),t.debugName,new Set(["environment"]));this.injector=r,t.runEnvironmentInitializers&&r.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}}function Od(e,t,r=null){return new T_({providers:e,parent:t,debugName:r,runEnvironmentInitializers:!0}).injector}let tR=(()=>{var e;class t{constructor(n){this._injector=n,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(n){if(!n.standalone)return null;if(!this.cachedInjectors.has(n)){const o=Rm(0,n.type),i=o.length>0?Od([o],this._injector,`Standalone[${n.type.name}]`):null;this.cachedInjectors.set(n,i)}return this.cachedInjectors.get(n)}ngOnDestroy(){try{for(const n of this.cachedInjectors.values())null!==n&&n.destroy()}finally{this.cachedInjectors.clear()}}}return(e=t).\u0275prov=L({token:e,providedIn:"environment",factory:()=>new e(F(Dt))}),t})();function Mt(e){e.getStandaloneInjector=t=>t.get(tR).getOrCreateStandaloneInjector(e)}function K(e,t,r){const n=Je()+e,o=M();return o[n]===z?cn(o,n,r?t.call(r):t()):function Ni(e,t){return e[t]}(o,n)}function $i(e,t,r,n){return function F_(e,t,r,n,o,i){const s=t+r;return We(e,s,o)?cn(e,s+1,i?n.call(i,o):n(o)):Gi(e,s+1)}(M(),Je(),e,t,r,n)}function k_(e,t,r,n,o){return function L_(e,t,r,n,o,i,s){const a=t+r;return function mr(e,t,r,n){const o=We(e,t,r);return We(e,t+1,n)||o}(e,a,o,i)?cn(e,a+2,s?n.call(s,o,i):n(o,i)):Gi(e,a+2)}(M(),Je(),e,t,r,n,o)}function Gi(e,t){const r=e[t];return r===z?void 0:r}function ER(){return this._results[Symbol.iterator]()}class kd{get changes(){return this._changes||(this._changes=new Ee)}constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const r=kd.prototype;r[Symbol.iterator]||(r[Symbol.iterator]=ER)}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,r){return this._results.reduce(t,r)}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,r){const n=this;n.dirty=!1;const o=function Ot(e){return e.flat(Number.POSITIVE_INFINITY)}(t);(this._changesDetected=!function pM(e,t,r){if(e.length!==t.length)return!1;for(let n=0;n0&&(r[o-1][$t]=t),n{class t{}return t.__NG_ELEMENT_ID__=AR,t})();const SR=Rn,TR=class extends SR{constructor(t,r,n){super(),this._declarationLView=t,this._declarationTContainer=r,this.elementRef=n}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(t,r){return this.createEmbeddedViewImpl(t,r)}createEmbeddedViewImpl(t,r,n){const o=function MR(e,t,r,n){const o=t.tView,a=Ra(e,o,r,4096&e[q]?4096:16,null,t,null,null,null,n?.injector??null,n?.hydrationInfo??null);a[ni]=e[t.index];const c=e[nn];return null!==c&&(a[nn]=c.createEmbeddedView(o)),fd(o,a,r),a}(this._declarationLView,this._declarationTContainer,t,{injector:r,hydrationInfo:n});return new xi(o)}};function AR(){return Za(Be(),M())}function Za(e,t){return 4&e.type?new TR(t,e,ao(e,t)):null}let Zt=(()=>{class t{}return t.__NG_ELEMENT_ID__=kR,t})();function kR(){return W_(Be(),M())}const FR=Zt,z_=class extends FR{constructor(t,r,n){super(),this._lContainer=t,this._hostTNode=r,this._hostLView=n}get element(){return ao(this._hostTNode,this._hostLView)}get injector(){return new et(this._hostTNode,this._hostLView)}get parentInjector(){const t=Qs(this._hostTNode,this._hostLView);if(eu(t)){const r=di(t,this._hostLView),n=ui(t);return new et(r[T].data[n+8],r)}return new et(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const r=q_(this._lContainer);return null!==r&&r[t]||null}get length(){return this._lContainer.length-He}createEmbeddedView(t,r,n){let o,i;"number"==typeof n?o=n:null!=n&&(o=n.index,i=n.injector);const a=t.createEmbeddedViewImpl(r||{},i,null);return this.insertImpl(a,o,false),a}createComponent(t,r,n,o,i){const s=t&&!function hi(e){return"function"==typeof e}(t);let a;if(s)a=r;else{const C=r||{};a=C.index,n=C.injector,o=C.projectableNodes,i=C.environmentInjector||C.ngModuleRef}const l=s?t:new Ri(X(t)),c=n||this.parentInjector;if(!i&&null==l.ngModule){const b=(s?c:this.parentInjector).get(Dt,null);b&&(i=b)}X(l.componentType??{});const m=l.create(c,o,null,i);return this.insertImpl(m.hostView,a,false),m}insert(t,r){return this.insertImpl(t,r,!1)}insertImpl(t,r,n){const o=t._lView;if(function T0(e){return Xe(e[_e])}(o)){const l=this.indexOf(t);if(-1!==l)this.detach(l);else{const c=o[_e],u=new z_(c,c[ze],c[_e]);u.detach(u.indexOf(t))}}const s=this._adjustIndex(r),a=this._lContainer;return IR(a,o,s,!n),t.attachToViewContainerRef(),Ng(Fd(a),s,t),t}move(t,r){return this.insert(t,r)}indexOf(t){const r=q_(this._lContainer);return null!==r?r.indexOf(t):-1}remove(t){const r=this._adjustIndex(t,-1),n=da(this._lContainer,r);n&&(Ks(Fd(this._lContainer),r),vu(n[T],n))}detach(t){const r=this._adjustIndex(t,-1),n=da(this._lContainer,r);return n&&null!=Ks(Fd(this._lContainer),r)?new xi(n):null}_adjustIndex(t,r=0){return t??this.length+r}};function q_(e){return e[8]}function Fd(e){return e[8]||(e[8]=[])}function W_(e,t){let r;const n=t[e.index];return Xe(n)?r=n:(r=wv(n,t,null,e),t[e.index]=r,Na(t,r)),Z_(r,t,e,n),new z_(r,e,t)}let Z_=function Y_(e,t,r,n){if(e[rn])return;let o;o=8&r.type?pe(n):function LR(e,t){const r=e[G],n=r.createComment(""),o=lt(t,e);return hr(r,fa(r,o),n,function lI(e,t){return e.nextSibling(t)}(r,o),!1),n}(t,r),e[rn]=o};class Ld{constructor(t){this.queryList=t,this.matches=null}clone(){return new Ld(this.queryList)}setDirty(){this.queryList.setDirty()}}class Vd{constructor(t=[]){this.queries=t}createEmbeddedView(t){const r=t.queries;if(null!==r){const n=null!==t.contentQueries?t.contentQueries[0]:r.length,o=[];for(let i=0;i0)n.push(s[a/2]);else{const c=i[a+1],u=t[-l];for(let d=He;d{var e;class t{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((n,o)=>{this.resolve=n,this.reject=o}),this.appInits=A(Wd,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const n=[];for(const i of this.appInits){const s=i();if(Fi(s))n.push(s);else if(iy(s)){const a=new Promise((l,c)=>{s.subscribe({complete:l,error:c})});n.push(a)}}const o=()=>{this.done=!0,this.resolve()};Promise.all(n).then(()=>{o()}).catch(i=>{this.reject(i)}),0===n.length&&o(),this.initialized=!0}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),CC=(()=>{var e;class t{log(n){console.log(n)}warn(n){console.warn(n)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"platform"}),t})();const Nn=new x("LocaleId",{providedIn:"root",factory:()=>A(Nn,Y.Optional|Y.SkipSelf)||function pN(){return typeof $localize<"u"&&$localize.locale||wo}()});let Xa=(()=>{var e;class t{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new At(!1)}add(){this.hasPendingTasks.next(!0);const n=this.taskId++;return this.pendingTasks.add(n),n}remove(n){this.pendingTasks.delete(n),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();class vN{constructor(t,r){this.ngModuleFactory=t,this.componentFactories=r}}let DC=(()=>{var e;class t{compileModuleSync(n){return new Nd(n)}compileModuleAsync(n){return Promise.resolve(this.compileModuleSync(n))}compileModuleAndAllComponentsSync(n){const o=this.compileModuleSync(n),s=Sn(yt(n).declarations).reduce((a,l)=>{const c=X(l);return c&&a.push(new Ri(c)),a},[]);return new vN(o,s)}compileModuleAndAllComponentsAsync(n){return Promise.resolve(this.compileModuleAndAllComponentsSync(n))}clearCache(){}clearCacheFor(n){}getModuleId(n){}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const MC=new x(""),Ka=new x("");let Kd,Xd=(()=>{var e;class t{constructor(n,o,i){this._ngZone=n,this.registry=o,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,Kd||(function LN(e){Kd=e}(i),i.addToWindow(o)),this._watchAngularEvents(),n.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ge.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let n=this._callbacks.pop();clearTimeout(n.timeoutId),n.doneCb(this._didWork)}this._didWork=!1});else{let n=this.getPendingTasks();this._callbacks=this._callbacks.filter(o=>!o.updateCb||!o.updateCb(n)||(clearTimeout(o.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(n=>({source:n.source,creationLocation:n.creationLocation,data:n.data})):[]}addCallback(n,o,i){let s=-1;o&&o>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(a=>a.timeoutId!==s),n(this._didWork,this.getPendingTasks())},o)),this._callbacks.push({doneCb:n,timeoutId:s,updateCb:i})}whenStable(n,o,i){if(i&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(n,o,i),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(n){this.registry.registerApplication(n,this)}unregisterApplication(n){this.registry.unregisterApplication(n)}findProviders(n,o,i){return[]}}return(e=t).\u0275fac=function(n){return new(n||e)(F(ge),F(Jd),F(Ka))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),Jd=(()=>{var e;class t{constructor(){this._applications=new Map}registerApplication(n,o){this._applications.set(n,o)}unregisterApplication(n){this._applications.delete(n)}unregisterAllApplications(){this._applications.clear()}getTestability(n){return this._applications.get(n)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(n,o=!0){return Kd?.findTestabilityInTree(this,n,o)??null}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"platform"}),t})(),Qn=null;const ef=new x("PlatformDestroyListeners"),tf=new x("appBootstrapListener");class TC{constructor(t,r){this.name=t,this.token=r}}function BN(e){try{const{rootComponent:t,appProviders:r,platformProviders:n}=e,o=function UN(e=[]){if(Qn)return Qn;const t=function xC(e=[],t){return wt.create({name:t,providers:[{provide:Pu,useValue:"platform"},{provide:ef,useValue:new Set([()=>Qn=null])},...e]})}(e);return Qn=t,function SC(){!function h0(e){Gp=e}(()=>{throw new S(600,!1)})}(),function AC(e){e.get(Fm,null)?.forEach(r=>r())}(t),t}(n),i=[WN(),...r||[]],a=new T_({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,l=a.get(ge);return l.run(()=>{a.resolveInjectorInitializers();const c=a.get(In,null);let u;l.runOutsideAngular(()=>{u=l.onError.subscribe({next:m=>{c.handleError(m)}})});const d=()=>a.destroy(),g=o.get(ef);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),function OC(e,t,r){try{const n=r();return Fi(n)?n.catch(o=>{throw t.runOutsideAngular(()=>e.handleError(o)),o}):n}catch(n){throw t.runOutsideAngular(()=>e.handleError(n)),n}}(c,l,()=>{const m=a.get(Zd);return m.runInitializers(),m.donePromise.then(()=>{!function n_(e){xt(e,"Expected localeId to be defined"),"string"==typeof e&&(t_=e.toLowerCase().replace(/_/g,"-"))}(a.get(Nn,wo)||wo);const C=a.get(Io);return void 0!==t&&C.bootstrap(t),C})})})}catch(t){return Promise.reject(t)}}let Io=(()=>{var e;class t{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=A(FC),this.zoneIsStable=A(Km),this.componentTypes=[],this.components=[],this.isStable=A(Xa).hasPendingTasks.pipe(Ht(n=>n?V(!1):this.zoneIsStable),function w1(e,t=jn){return e=e??E1,Pe((r,n)=>{let o,i=!0;r.subscribe(Re(n,s=>{const a=t(s);(i||!e(o,a))&&(i=!1,o=a,n.next(s))}))})}(),lp()),this._injector=A(Dt)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(n,o){const i=n instanceof Um;if(!this._injector.get(Zd).done)throw!i&&function Or(e){const t=X(e)||je(e)||Qe(e);return null!==t&&t.standalone}(n),new S(405,!1);let a;a=i?n:this._injector.get(Ta).resolveComponentFactory(n),this.componentTypes.push(a.componentType);const l=function jN(e){return e.isBoundToModule}(a)?void 0:this._injector.get(_r),u=a.create(wt.NULL,[],o||a.selector,l),d=u.location.nativeElement,g=u.injector.get(MC,null);return g?.registerApplication(d),u.onDestroy(()=>{this.detachView(u.hostView),el(this.components,u),g?.unregisterApplication(d)}),this._loadComponent(u),u}tick(){if(this._runningTick)throw new S(101,!1);try{this._runningTick=!0;for(let n of this._views)n.detectChanges()}catch(n){this.internalErrorHandler(n)}finally{this._runningTick=!1}}attachView(n){const o=n;this._views.push(o),o.attachToAppRef(this)}detachView(n){const o=n;el(this._views,o),o.detachFromAppRef()}_loadComponent(n){this.attachView(n.hostView),this.tick(),this.components.push(n);const o=this._injector.get(tf,[]);o.push(...this._bootstrapListeners),o.forEach(i=>i(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),()=>el(this._destroyListeners,n)}destroy(){if(this._destroyed)throw new S(406,!1);const n=this._injector;n.destroy&&!n.destroyed&&n.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function el(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}const FC=new x("",{providedIn:"root",factory:()=>A(In).handleError.bind(void 0)});function zN(){const e=A(ge),t=A(In);return r=>e.runOutsideAngular(()=>t.handleError(r))}let qN=(()=>{var e;class t{constructor(){this.zone=A(ge),this.applicationRef=A(Io)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function LC(e){return[{provide:ge,useFactory:e},{provide:wi,multi:!0,useFactory:()=>{const t=A(qN,{optional:!0});return()=>t.initialize()}},{provide:FC,useFactory:zN},{provide:Km,useFactory:ev}]}function WN(e){return Ru([[],LC(()=>new ge(function NC(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}(e)))])}let tl=(()=>{class t{}return t.__NG_ELEMENT_ID__=ZN,t})();function ZN(e){return function YN(e,t,r){if(cr(e)&&!r){const n=_t(e.index,t);return new xi(n,n)}return 47&e.type?new xi(t[Te],t):null}(Be(),M(),16==(16&e))}class UC{constructor(){}supports(t){return Fa(t)}create(t){return new tO(t)}}const eO=(e,t)=>t;class tO{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||eO}forEachItem(t){let r;for(r=this._itHead;null!==r;r=r._next)t(r)}forEachOperation(t){let r=this._itHead,n=this._removalsHead,o=0,i=null;for(;r||n;){const s=!n||r&&r.currentIndex<$C(n,o,i)?r:n,a=$C(s,o,i),l=s.currentIndex;if(s===n)o--,n=n._nextRemoved;else if(r=r._next,null==s.previousIndex)o++;else{i||(i=[]);const c=a-o,u=l-o;if(c!=u){for(let g=0;g{s=this._trackByFn(o,a),null!==r&&Object.is(r.trackById,s)?(n&&(r=this._verifyReinsertion(r,a,s,o)),Object.is(r.item,a)||this._addIdentityChange(r,a)):(r=this._mismatch(r,a,s,o),n=!0),r=r._next,o++}),this.length=o;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,r,n,o){let i;return null===t?i=this._itTail:(i=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,r)||this._addIdentityChange(t,r),this._reinsertAfter(t,i,o)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,o))?(Object.is(t.item,r)||this._addIdentityChange(t,r),this._moveAfter(t,i,o)):t=this._addAfter(new nO(r,n),i,o),t}_verifyReinsertion(t,r,n,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==i?t=this._reinsertAfter(i,t._prev,o):t.currentIndex!=o&&(t.currentIndex=o,this._addToMoves(t,o)),t}_truncate(t){for(;null!==t;){const r=t._next;this._addToRemovals(this._unlink(t)),t=r}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,r,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const o=t._prevRemoved,i=t._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(t,r,n),this._addToMoves(t,n),t}_moveAfter(t,r,n){return this._unlink(t),this._insertAfter(t,r,n),this._addToMoves(t,n),t}_addAfter(t,r,n){return this._insertAfter(t,r,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,r,n){const o=null===r?this._itHead:r._next;return t._next=o,t._prev=r,null===o?this._itTail=t:o._prev=t,null===r?this._itHead=t:r._next=t,null===this._linkedRecords&&(this._linkedRecords=new BC),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const r=t._prev,n=t._next;return null===r?this._itHead=n:r._next=n,null===n?this._itTail=r:n._prev=r,t}_addToMoves(t,r){return t.previousIndex===r||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new BC),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,r){return t.item=r,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class nO{constructor(t,r){this.item=t,this.trackById=r,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}}class rO{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(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,r){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===r||r<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const r=t._prevDup,n=t._nextDup;return null===r?this._head=n:r._nextDup=n,null===n?this._tail=r:n._prevDup=r,null===this._head}}class BC{constructor(){this.map=new Map}put(t){const r=t.trackById;let n=this.map.get(r);n||(n=new rO,this.map.set(r,n)),n.add(t)}get(t,r){const o=this.map.get(t);return o?o.get(t,r):null}remove(t){const r=t.trackById;return this.map.get(r).remove(t)&&this.map.delete(r),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function $C(e,t,r){const n=e.previousIndex;if(null===n)return n;let o=0;return r&&n{if(r&&r.key===o)this._maybeAddToChanges(r,n),this._appendAfter=r,r=r._next;else{const i=this._getOrCreateRecordForKey(o,n);r=this._insertBeforeOrAppend(r,i)}}),r){r._prev&&(r._prev._next=null),this._removalsHead=r;for(let n=r;null!==n;n=n._nextRemoved)n===this._mapHead&&(this._mapHead=null),this._records.delete(n.key),n._nextRemoved=n._next,n.previousValue=n.currentValue,n.currentValue=null,n._prev=null,n._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,r){if(t){const n=t._prev;return r._next=t,r._prev=n,t._prev=r,n&&(n._next=r),t===this._mapHead&&(this._mapHead=r),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=r,r._prev=this._appendAfter):this._mapHead=r,this._appendAfter=r,null}_getOrCreateRecordForKey(t,r){if(this._records.has(t)){const o=this._records.get(t);this._maybeAddToChanges(o,r);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const n=new iO(t);return this._records.set(t,n),n.currentValue=r,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,r){Object.is(r,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=r,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,r){t instanceof Map?t.forEach(r):Object.keys(t).forEach(n=>r(t[n],n))}}class iO{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function zC(){return new ol([new UC])}let ol=(()=>{var e;class t{constructor(n){this.factories=n}static create(n,o){if(null!=o){const i=o.factories.slice();n=n.concat(i)}return new t(n)}static extend(n){return{provide:t,useFactory:o=>t.create(n,o||zC()),deps:[[t,new na,new ta]]}}find(n){const o=this.factories.find(i=>i.supports(n));if(null!=o)return o;throw new S(901,!1)}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:zC}),t})();function qC(){return new Zi([new GC])}let Zi=(()=>{var e;class t{constructor(n){this.factories=n}static create(n,o){if(o){const i=o.factories.slice();n=n.concat(i)}return new t(n)}static extend(n){return{provide:t,useFactory:o=>t.create(n,o||qC()),deps:[[t,new na,new ta]]}}find(n){const o=this.factories.find(i=>i.supports(n));if(o)return o;throw new S(901,!1)}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:qC}),t})(),lO=(()=>{var e;class t{constructor(n){}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Io))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function So(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}const ve_apiBaseUrl="https://www.palmmedia.de/api/";let uf=null;function Xn(){return uf}class bO{}const pt=new x("DocumentToken");let df=(()=>{var e;class t{historyGo(n){throw new Error("Not implemented")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(EO)},providedIn:"platform"}),t})();const wO=new x("Location Initialized");let EO=(()=>{var e;class t extends df{constructor(){super(),this._doc=A(pt),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Xn().getBaseHref(this._doc)}onPopState(n){const o=Xn().getGlobalEventTarget(this._doc,"window");return o.addEventListener("popstate",n,!1),()=>o.removeEventListener("popstate",n)}onHashChange(n){const o=Xn().getGlobalEventTarget(this._doc,"window");return o.addEventListener("hashchange",n,!1),()=>o.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,o,i){this._history.pushState(n,o,i)}replaceState(n,o,i){this._history.replaceState(n,o,i)}forward(){this._history.forward()}back(){this._history.back()}historyGo(n=0){this._history.go(n)}getState(){return this._history.state}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return new e},providedIn:"platform"}),t})();function ff(e,t){if(0==e.length)return t;if(0==t.length)return e;let r=0;return e.endsWith("/")&&r++,t.startsWith("/")&&r++,2==r?e+t.substring(1):1==r?e+t:e+"/"+t}function tD(e){const t=e.match(/#|\?|$/),r=t&&t.index||e.length;return e.slice(0,r-("/"===e[r-1]?1:0))+e.slice(r)}function On(e){return e&&"?"!==e[0]?"?"+e:e}let Dr=(()=>{var e;class t{historyGo(n){throw new Error("Not implemented")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(rD)},providedIn:"root"}),t})();const nD=new x("appBaseHref");let rD=(()=>{var e;class t extends Dr{constructor(n,o){super(),this._platformLocation=n,this._removeListenerFns=[],this._baseHref=o??this._platformLocation.getBaseHrefFromDOM()??A(pt).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 ff(this._baseHref,n)}path(n=!1){const o=this._platformLocation.pathname+On(this._platformLocation.search),i=this._platformLocation.hash;return i&&n?`${o}${i}`:o}pushState(n,o,i,s){const a=this.prepareExternalUrl(i+On(s));this._platformLocation.pushState(n,o,a)}replaceState(n,o,i,s){const a=this.prepareExternalUrl(i+On(s));this._platformLocation.replaceState(n,o,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(df),F(nD,8))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),MO=(()=>{var e;class t extends Dr{constructor(n,o){super(),this._platformLocation=n,this._baseHref="",this._removeListenerFns=[],null!=o&&(this._baseHref=o)}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}path(n=!1){let o=this._platformLocation.hash;return null==o&&(o="#"),o.length>0?o.substring(1):o}prepareExternalUrl(n){const o=ff(this._baseHref,n);return o.length>0?"#"+o:o}pushState(n,o,i,s){let a=this.prepareExternalUrl(i+On(s));0==a.length&&(a=this._platformLocation.pathname),this._platformLocation.pushState(n,o,a)}replaceState(n,o,i,s){let a=this.prepareExternalUrl(i+On(s));0==a.length&&(a=this._platformLocation.pathname),this._platformLocation.replaceState(n,o,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(df),F(nD,8))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),hf=(()=>{var e;class t{constructor(n){this._subject=new Ee,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=n;const o=this._locationStrategy.getBaseHref();this._basePath=function TO(e){if(new RegExp("^(https?:)?//").test(e)){const[,r]=e.split(/\/\/[^\/]+/);return r}return e}(tD(oD(o))),this._locationStrategy.onPopState(i=>{this._subject.emit({url:this.path(!0),pop:!0,state:i.state,type:i.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(n=!1){return this.normalize(this._locationStrategy.path(n))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(n,o=""){return this.path()==this.normalize(n+On(o))}normalize(n){return t.stripTrailingSlash(function SO(e,t){if(!e||!t.startsWith(e))return t;const r=t.substring(e.length);return""===r||["/",";","?","#"].includes(r[0])?r:t}(this._basePath,oD(n)))}prepareExternalUrl(n){return n&&"/"!==n[0]&&(n="/"+n),this._locationStrategy.prepareExternalUrl(n)}go(n,o="",i=null){this._locationStrategy.pushState(i,"",n,o),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+On(o)),i)}replaceState(n,o="",i=null){this._locationStrategy.replaceState(i,"",n,o),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+On(o)),i)}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._urlChangeSubscription=this.subscribe(o=>{this._notifyUrlChangeListeners(o.url,o.state)})),()=>{const o=this._urlChangeListeners.indexOf(n);this._urlChangeListeners.splice(o,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(n="",o){this._urlChangeListeners.forEach(i=>i(n,o))}subscribe(n,o,i){return this._subject.subscribe({next:n,error:o,complete:i})}}return(e=t).normalizeQueryParams=On,e.joinWithSlash=ff,e.stripTrailingSlash=tD,e.\u0275fac=function(n){return new(n||e)(F(Dr))},e.\u0275prov=L({token:e,factory:function(){return function IO(){return new hf(F(Dr))}()},providedIn:"root"}),t})();function oD(e){return e.replace(/\/index.html$/,"")}function hD(e,t){t=encodeURIComponent(t);for(const r of e.split(";")){const n=r.indexOf("="),[o,i]=-1==n?[r,""]:[r.slice(0,n),r.slice(n+1)];if(o.trim()===t)return decodeURIComponent(i)}return null}const wf=/\s+/,pD=[];let ml=(()=>{var e;class t{constructor(n,o,i,s){this._iterableDiffers=n,this._keyValueDiffers=o,this._ngEl=i,this._renderer=s,this.initialClasses=pD,this.stateMap=new Map}set klass(n){this.initialClasses=null!=n?n.trim().split(wf):pD}set ngClass(n){this.rawClass="string"==typeof n?n.trim().split(wf):n}ngDoCheck(){for(const o of this.initialClasses)this._updateState(o,!0);const n=this.rawClass;if(Array.isArray(n)||n instanceof Set)for(const o of n)this._updateState(o,!0);else if(null!=n)for(const o of Object.keys(n))this._updateState(o,!!n[o]);this._applyStateDiff()}_updateState(n,o){const i=this.stateMap.get(n);void 0!==i?(i.enabled!==o&&(i.changed=!0,i.enabled=o),i.touched=!0):this.stateMap.set(n,{enabled:o,changed:!0,touched:!0})}_applyStateDiff(){for(const n of this.stateMap){const o=n[0],i=n[1];i.changed?(this._toggleClass(o,i.enabled),i.changed=!1):i.touched||(i.enabled&&this._toggleClass(o,!1),this.stateMap.delete(o)),i.touched=!1}}_toggleClass(n,o){(n=n.trim()).length>0&&n.split(wf).forEach(i=>{o?this._renderer.addClass(this._ngEl.nativeElement,i):this._renderer.removeClass(this._ngEl.nativeElement,i)})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ol),I(Zi),I(bt),I(Mn))},e.\u0275dir=B({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0}),t})();class hP{constructor(t,r,n,o){this.$implicit=t,this.ngForOf=r,this.index=n,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Ef=(()=>{var e;class t{set ngForOf(n){this._ngForOf=n,this._ngForOfDirty=!0}set ngForTrackBy(n){this._trackByFn=n}get ngForTrackBy(){return this._trackByFn}constructor(n,o,i){this._viewContainer=n,this._template=o,this._differs=i,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(n){n&&(this._template=n)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;!this._differ&&n&&(this._differ=this._differs.find(n).create(this.ngForTrackBy))}if(this._differ){const n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}}_applyChanges(n){const o=this._viewContainer;n.forEachOperation((i,s,a)=>{if(null==i.previousIndex)o.createEmbeddedView(this._template,new hP(i.item,this._ngForOf,-1,-1),null===a?void 0:a);else if(null==a)o.remove(null===s?void 0:s);else if(null!==s){const l=o.get(s);o.move(l,a),mD(l,i)}});for(let i=0,s=o.length;i{mD(o.get(i.currentIndex),i)})}static ngTemplateContextGuard(n,o){return!0}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Zt),I(Rn),I(ol))},e.\u0275dir=B({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0}),t})();function mD(e,t){e.context.$implicit=t.item}let vl=(()=>{var e;class t{constructor(n,o){this._viewContainer=n,this._context=new pP,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=o}set ngIf(n){this._context.$implicit=this._context.ngIf=n,this._updateView()}set ngIfThen(n){vD("ngIfThen",n),this._thenTemplateRef=n,this._thenViewRef=null,this._updateView()}set ngIfElse(n){vD("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,o){return!0}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Zt),I(Rn))},e.\u0275dir=B({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0}),t})();class pP{constructor(){this.$implicit=null,this.ngIf=null}}function vD(e,t){if(t&&!t.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${ke(t)}'.`)}let jP=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function DD(e){return"server"===e}let $P=(()=>{var e;class t{}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new GP(F(pt),window)}),t})();class GP{constructor(t,r){this.document=t,this.window=r,this.offset=()=>[0,0]}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(t){this.supportsScrolling()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(!this.supportsScrolling())return;const r=function zP(e,t){const r=e.getElementById(t)||e.getElementsByName(t)[0];if(r)return r;if("function"==typeof e.createTreeWalker&&e.body&&"function"==typeof e.body.attachShadow){const n=e.createTreeWalker(e.body,NodeFilter.SHOW_ELEMENT);let o=n.currentNode;for(;o;){const i=o.shadowRoot;if(i){const s=i.getElementById(t)||i.querySelector(`[name="${t}"]`);if(s)return s}o=n.nextNode()}}return null}(this.document,t);r&&(this.scrollToElement(r),r.focus())}setHistoryScrollRestoration(t){this.supportsScrolling()&&(this.window.history.scrollRestoration=t)}scrollToElement(t){const r=t.getBoundingClientRect(),n=r.left+this.window.pageXOffset,o=r.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(n-i[0],o-i[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class bD{}const{isArray:gk}=Array,{getPrototypeOf:mk,prototype:vk,keys:yk}=Object;function SD(e){if(1===e.length){const t=e[0];if(gk(t))return{args:t,keys:null};if(function _k(e){return e&&"object"==typeof e&&mk(e)===vk}(t)){const r=yk(t);return{args:r.map(n=>t[n]),keys:r}}}return{args:e,keys:null}}const{isArray:Ck}=Array;function TD(e){return ee(t=>function Dk(e,t){return Ck(t)?e(...t):e(t)}(e,t))}function AD(e,t){return e.reduce((r,n,o)=>(r[n]=t[o],r),{})}function Rf(...e){const t=Yo(e),r=op(e),{args:n,keys:o}=SD(e);if(0===n.length)return Ne([],t);const i=new Ie(function bk(e,t,r=jn){return n=>{xD(t,()=>{const{length:o}=e,i=new Array(o);let s=o,a=o;for(let l=0;l{const c=Ne(e[l],t);let u=!1;c.subscribe(Re(n,d=>{i[l]=d,u||(u=!0,a--),a||n.next(r(i.slice()))},()=>{--s||n.complete()}))},n)},n)}}(n,t,o?s=>AD(o,s):jn));return r?i.pipe(TD(r)):i}function xD(e,t,r){e?vn(r,e,t):t()}const Cl=Wo(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function Nf(...e){return function wk(){return Rr(1)}()(Ne(e,Yo(e)))}function RD(e){return new Ie(t=>{jt(e()).subscribe(t)})}function Ji(e,t){const r=ue(e)?e:()=>e,n=o=>o.error(r());return new Ie(t?o=>t.schedule(n,0,o):n)}function Of(){return Pe((e,t)=>{let r=null;e._refCount++;const n=Re(t,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount)return void(r=null);const o=e._connection,i=r;r=null,o&&(!i||o===i)&&o.unsubscribe(),t.unsubscribe()});e.subscribe(n),n.closed||(r=e.connect())})}class ND extends Ie{constructor(t,r){super(),this.source=t,this.subjectFactory=r,this._subject=null,this._refCount=0,this._connection=null,$h(t)&&(this.lift=t.lift)}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return(!t||t.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:t}=this;this._subject=this._connection=null,t?.unsubscribe()}connect(){let t=this._connection;if(!t){t=this._connection=new gt;const r=this.getSubject();t.add(this.source.subscribe(Re(r,void 0,()=>{this._teardown(),r.complete()},n=>{this._teardown(),r.error(n)},()=>this._teardown()))),t.closed&&(this._connection=null,t=gt.EMPTY)}return t}refCount(){return Of()(this)}}function Xt(e,t){return Pe((r,n)=>{let o=0;r.subscribe(Re(n,i=>e.call(t,i,o++)&&n.next(i)))})}function Dl(e){return Pe((t,r)=>{let n=!1;t.subscribe(Re(r,o=>{n=!0,r.next(o)},()=>{n||r.next(e),r.complete()}))})}function OD(e=Mk){return Pe((t,r)=>{let n=!1;t.subscribe(Re(r,o=>{n=!0,r.next(o)},()=>n?r.complete():r.error(e())))})}function Mk(){return new Cl}function br(e,t){const r=arguments.length>=2;return n=>n.pipe(e?Xt((o,i)=>e(o,i,n)):jn,ar(1),r?Dl(t):OD(()=>new Cl))}function Ao(e,t){return ue(t)?Ve(e,t,1):Ve(e,1)}function Ze(e,t,r){const n=ue(e)||t||r?{next:e,error:t,complete:r}:e;return n?Pe((o,i)=>{var s;null===(s=n.subscribe)||void 0===s||s.call(n);let a=!0;o.subscribe(Re(i,l=>{var c;null===(c=n.next)||void 0===c||c.call(n,l),i.next(l)},()=>{var l;a=!1,null===(l=n.complete)||void 0===l||l.call(n),i.complete()},l=>{var c;a=!1,null===(c=n.error)||void 0===c||c.call(n,l),i.error(l)},()=>{var l,c;a&&(null===(l=n.unsubscribe)||void 0===l||l.call(n)),null===(c=n.finalize)||void 0===c||c.call(n)}))}):jn}function wr(e){return Pe((t,r)=>{let i,n=null,o=!1;n=t.subscribe(Re(r,void 0,void 0,s=>{i=jt(e(s,wr(e)(t))),n?(n.unsubscribe(),n=null,i.subscribe(r)):o=!0})),o&&(n.unsubscribe(),n=null,i.subscribe(r))})}function Pf(e){return e<=0?()=>Kt:Pe((t,r)=>{let n=[];t.subscribe(Re(r,o=>{n.push(o),e{for(const o of n)r.next(o);r.complete()},void 0,()=>{n=null}))})}function Ki(e){return Pe((t,r)=>{try{t.subscribe(r)}finally{r.add(e)}})}class Rk extends bO{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class kf extends Rk{static makeCurrent(){!function DO(e){uf||(uf=e)}(new kf)}onAndCancel(t,r,n){return t.addEventListener(r,n),()=>{t.removeEventListener(r,n)}}dispatchEvent(t,r){t.dispatchEvent(r)}remove(t){t.parentNode&&t.parentNode.removeChild(t)}createElement(t,r){return(r=r||this.getDefaultDocument()).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,r){return"window"===r?window:"document"===r?t:"body"===r?t.body:null}getBaseHref(t){const r=function Nk(){return es=es||document.querySelector("base"),es?es.getAttribute("href"):null}();return null==r?null:function Ok(e){bl=bl||document.createElement("a"),bl.setAttribute("href",e);const t=bl.pathname;return"/"===t.charAt(0)?t:`/${t}`}(r)}resetBaseElement(){es=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return hD(document.cookie,t)}}let bl,es=null,kk=(()=>{var e;class t{build(){return new XMLHttpRequest}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Ff=new x("EventManagerPlugins");let PD=(()=>{var e;class t{constructor(n,o){this._zone=o,this._eventNameToPlugin=new Map,n.forEach(i=>{i.manager=this}),this._plugins=n.slice().reverse()}addEventListener(n,o,i){return this._findPluginFor(o).addEventListener(n,o,i)}getZone(){return this._zone}_findPluginFor(n){let o=this._eventNameToPlugin.get(n);if(o)return o;if(o=this._plugins.find(s=>s.supports(n)),!o)throw new S(5101,!1);return this._eventNameToPlugin.set(n,o),o}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Ff),F(ge))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();class kD{constructor(t){this._doc=t}}const Lf="ng-app-id";let FD=(()=>{var e;class t{constructor(n,o,i,s={}){this.doc=n,this.appId=o,this.nonce=i,this.platformId=s,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=DD(s),this.resetHostNodes()}addStyles(n){for(const o of n)1===this.changeUsageCount(o,1)&&this.onStyleAdded(o)}removeStyles(n){for(const o of n)this.changeUsageCount(o,-1)<=0&&this.onStyleRemoved(o)}ngOnDestroy(){const n=this.styleNodesInDOM;n&&(n.forEach(o=>o.remove()),n.clear());for(const o of this.getAllStyles())this.onStyleRemoved(o);this.resetHostNodes()}addHost(n){this.hostNodes.add(n);for(const o of this.getAllStyles())this.addStyleToHost(n,o)}removeHost(n){this.hostNodes.delete(n)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(n){for(const o of this.hostNodes)this.addStyleToHost(o,n)}onStyleRemoved(n){const o=this.styleRef;o.get(n)?.elements?.forEach(i=>i.remove()),o.delete(n)}collectServerRenderedStyles(){const n=this.doc.head?.querySelectorAll(`style[${Lf}="${this.appId}"]`);if(n?.length){const o=new Map;return n.forEach(i=>{null!=i.textContent&&o.set(i.textContent,i)}),o}return null}changeUsageCount(n,o){const i=this.styleRef;if(i.has(n)){const s=i.get(n);return s.usage+=o,s.usage}return i.set(n,{usage:o,elements:[]}),o}getStyleElement(n,o){const i=this.styleNodesInDOM,s=i?.get(o);if(s?.parentNode===n)return i.delete(o),s.removeAttribute(Lf),s;{const a=this.doc.createElement("style");return this.nonce&&a.setAttribute("nonce",this.nonce),a.textContent=o,this.platformIsServer&&a.setAttribute(Lf,this.appId),a}}addStyleToHost(n,o){const i=this.getStyleElement(n,o);n.appendChild(i);const s=this.styleRef,a=s.get(o)?.elements;a?a.push(i):s.set(o,{elements:[i],usage:1})}resetHostNodes(){const n=this.hostNodes;n.clear(),n.add(this.doc.head)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt),F(ba),F(Lm,8),F(gr))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Vf={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/"},jf=/%COMP%/g,jk=new x("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!1});function VD(e,t){return t.map(r=>r.replace(jf,e))}let jD=(()=>{var e;class t{constructor(n,o,i,s,a,l,c,u=null){this.eventManager=n,this.sharedStylesHost=o,this.appId=i,this.removeStylesOnCompDestroy=s,this.doc=a,this.platformId=l,this.ngZone=c,this.nonce=u,this.rendererByCompId=new Map,this.platformIsServer=DD(l),this.defaultRenderer=new Hf(n,a,c,this.platformIsServer)}createRenderer(n,o){if(!n||!o)return this.defaultRenderer;this.platformIsServer&&o.encapsulation===Ut.ShadowDom&&(o={...o,encapsulation:Ut.Emulated});const i=this.getOrCreateRenderer(n,o);return i instanceof UD?i.applyToHost(n):i instanceof Uf&&i.applyStyles(),i}getOrCreateRenderer(n,o){const i=this.rendererByCompId;let s=i.get(o.id);if(!s){const a=this.doc,l=this.ngZone,c=this.eventManager,u=this.sharedStylesHost,d=this.removeStylesOnCompDestroy,g=this.platformIsServer;switch(o.encapsulation){case Ut.Emulated:s=new UD(c,u,o,this.appId,d,a,l,g);break;case Ut.ShadowDom:return new $k(c,u,n,o,a,l,this.nonce,g);default:s=new Uf(c,u,o,d,a,l,g)}i.set(o.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}}return(e=t).\u0275fac=function(n){return new(n||e)(F(PD),F(FD),F(ba),F(jk),F(pt),F(gr),F(ge),F(Lm))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();class Hf{constructor(t,r,n,o){this.eventManager=t,this.doc=r,this.ngZone=n,this.platformIsServer=o,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(t,r){return r?this.doc.createElementNS(Vf[r]||r,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,r){(HD(t)?t.content:t).appendChild(r)}insertBefore(t,r,n){t&&(HD(t)?t.content:t).insertBefore(r,n)}removeChild(t,r){t&&t.removeChild(r)}selectRootElement(t,r){let n="string"==typeof t?this.doc.querySelector(t):t;if(!n)throw new S(-5104,!1);return r||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,r,n,o){if(o){r=o+":"+r;const i=Vf[o];i?t.setAttributeNS(i,r,n):t.setAttribute(r,n)}else t.setAttribute(r,n)}removeAttribute(t,r,n){if(n){const o=Vf[n];o?t.removeAttributeNS(o,r):t.removeAttribute(`${n}:${r}`)}else t.removeAttribute(r)}addClass(t,r){t.classList.add(r)}removeClass(t,r){t.classList.remove(r)}setStyle(t,r,n,o){o&(Wn.DashCase|Wn.Important)?t.style.setProperty(r,n,o&Wn.Important?"important":""):t.style[r]=n}removeStyle(t,r,n){n&Wn.DashCase?t.style.removeProperty(r):t.style[r]=""}setProperty(t,r,n){t[r]=n}setValue(t,r){t.nodeValue=r}listen(t,r,n){if("string"==typeof t&&!(t=Xn().getGlobalEventTarget(this.doc,t)))throw new Error(`Unsupported event target ${t} for event ${r}`);return this.eventManager.addEventListener(t,r,this.decoratePreventDefault(n))}decoratePreventDefault(t){return r=>{if("__ngUnwrap__"===r)return t;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>t(r)):t(r))&&r.preventDefault()}}}function HD(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class $k extends Hf{constructor(t,r,n,o,i,s,a,l){super(t,i,s,l),this.sharedStylesHost=r,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=VD(o.id,o.styles);for(const u of c){const 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,r){return super.appendChild(this.nodeOrShadowRoot(t),r)}insertBefore(t,r,n){return super.insertBefore(this.nodeOrShadowRoot(t),r,n)}removeChild(t,r){return super.removeChild(this.nodeOrShadowRoot(t),r)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class Uf extends Hf{constructor(t,r,n,o,i,s,a,l){super(t,i,s,a),this.sharedStylesHost=r,this.removeStylesOnCompDestroy=o,this.styles=l?VD(l,n.styles):n.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class UD extends Uf{constructor(t,r,n,o,i,s,a,l){const c=o+"-"+n.id;super(t,r,n,i,s,a,l,c),this.contentAttr=function Hk(e){return"_ngcontent-%COMP%".replace(jf,e)}(c),this.hostAttr=function Uk(e){return"_nghost-%COMP%".replace(jf,e)}(c)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,r){const n=super.createElement(t,r);return super.setAttribute(n,this.contentAttr,""),n}}let Gk=(()=>{var e;class t extends kD{constructor(n){super(n)}supports(n){return!0}addEventListener(n,o,i){return n.addEventListener(o,i,!1),()=>this.removeEventListener(n,o,i)}removeEventListener(n,o,i){return n.removeEventListener(o,i)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const BD=["alt","control","meta","shift"],zk={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},qk={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let Wk=(()=>{var e;class t extends kD{constructor(n){super(n)}supports(n){return null!=t.parseEventName(n)}addEventListener(n,o,i){const s=t.parseEventName(o),a=t.eventCallback(s.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Xn().onAndCancel(n,s.domEventName,a))}static parseEventName(n){const o=n.toLowerCase().split("."),i=o.shift();if(0===o.length||"keydown"!==i&&"keyup"!==i)return null;const s=t._normalizeKey(o.pop());let a="",l=o.indexOf("code");if(l>-1&&(o.splice(l,1),a="code."),BD.forEach(u=>{const d=o.indexOf(u);d>-1&&(o.splice(d,1),a+=u+".")}),a+=s,0!=o.length||0===s.length)return null;const c={};return c.domEventName=i,c.fullKey=a,c}static matchEventFullKeyCode(n,o){let i=zk[n.key]||n.key,s="";return o.indexOf("code.")>-1&&(i=n.code,s="code."),!(null==i||!i)&&(i=i.toLowerCase()," "===i?i="space":"."===i&&(i="dot"),BD.forEach(a=>{a!==i&&(0,qk[a])(n)&&(s+=a+".")}),s+=i,s===o)}static eventCallback(n,o,i){return s=>{t.matchEventFullKeyCode(s,n)&&i.runGuarded(()=>o(s))}}static _normalizeKey(n){return"esc"===n?"escape":n}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function $D(e){return{appProviders:[...zD,...e?.providers??[]],platformProviders:Jk}}const Jk=[{provide:gr,useValue:"browser"},{provide:Fm,useValue:function Yk(){kf.makeCurrent()},multi:!0},{provide:pt,useFactory:function Xk(){return function mI(e){Eu=e}(document),document},deps:[]}],Kk=new x(""),GD=[{provide:Ka,useClass:class Pk{addToWindow(t){he.getAngularTestability=(n,o=!0)=>{const i=t.findTestabilityInTree(n,o);if(null==i)throw new S(5103,!1);return i},he.getAllAngularTestabilities=()=>t.getAllTestabilities(),he.getAllAngularRootElements=()=>t.getAllRootElements(),he.frameworkStabilizers||(he.frameworkStabilizers=[]),he.frameworkStabilizers.push(n=>{const o=he.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&n(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(t,r,n){return null==r?null:t.getTestability(r)??(n?Xn().isShadowRoot(r)?this.findTestabilityInTree(t,r.host,!0):this.findTestabilityInTree(t,r.parentElement,!0):null)}},deps:[]},{provide:MC,useClass:Xd,deps:[ge,Jd,Ka]},{provide:Xd,useClass:Xd,deps:[ge,Jd,Ka]}],zD=[{provide:Pu,useValue:"root"},{provide:In,useFactory:function Qk(){return new In},deps:[]},{provide:Ff,useClass:Gk,multi:!0,deps:[pt,ge,gr]},{provide:Ff,useClass:Wk,multi:!0,deps:[pt]},jD,FD,PD,{provide:$m,useExisting:jD},{provide:bD,useClass:kk,deps:[]},[]];let eF=(()=>{var e;class t{constructor(n){}static withServerTransition(n){return{ngModule:t,providers:[{provide:ba,useValue:n.appId}]}}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Kk,12))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({providers:[...zD,...GD],imports:[jP,lO]}),t})(),qD=(()=>{var e;class t{constructor(n){this._doc=n}getTitle(){return this._doc.title}setTitle(n){this._doc.title=n||""}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:function(n){let o=null;return o=n?new n:function nF(){return new qD(F(pt))}(),o},providedIn:"root"}),t})();typeof window<"u"&&window;const W="primary",ts=Symbol("RouteTitle");class aF{constructor(t){this.params=t||{}}has(t){return Object.prototype.hasOwnProperty.call(this.params,t)}get(t){if(this.has(t)){const r=this.params[t];return Array.isArray(r)?r[0]:r}return null}getAll(t){if(this.has(t)){const r=this.params[t];return Array.isArray(r)?r:[r]}return[]}get keys(){return Object.keys(this.params)}}function xo(e){return new aF(e)}function lF(e,t,r){const n=r.path.split("/");if(n.length>e.length||"full"===r.pathMatch&&(t.hasChildren()||n.lengthn[i]===o)}return e===t}function XD(e){return e.length>0?e[e.length-1]:null}function Kn(e){return function pk(e){return!!e&&(e instanceof Ie||ue(e.lift)&&ue(e.subscribe))}(e)?e:Fi(e)?Ne(Promise.resolve(e)):V(e)}const uF={exact:function eb(e,t,r){if(!Er(e.segments,t.segments)||!wl(e.segments,t.segments,r)||e.numberOfChildren!==t.numberOfChildren)return!1;for(const n in t.children)if(!e.children[n]||!eb(e.children[n],t.children[n],r))return!1;return!0},subset:tb},JD={exact:function dF(e,t){return fn(e,t)},subset:function fF(e,t){return Object.keys(t).length<=Object.keys(e).length&&Object.keys(t).every(r=>QD(e[r],t[r]))},ignored:()=>!0};function KD(e,t,r){return uF[r.paths](e.root,t.root,r.matrixParams)&&JD[r.queryParams](e.queryParams,t.queryParams)&&!("exact"===r.fragment&&e.fragment!==t.fragment)}function tb(e,t,r){return nb(e,t,t.segments,r)}function nb(e,t,r,n){if(e.segments.length>r.length){const o=e.segments.slice(0,r.length);return!(!Er(o,r)||t.hasChildren()||!wl(o,r,n))}if(e.segments.length===r.length){if(!Er(e.segments,r)||!wl(e.segments,r,n))return!1;for(const o in t.children)if(!e.children[o]||!tb(e.children[o],t.children[o],n))return!1;return!0}{const o=r.slice(0,e.segments.length),i=r.slice(e.segments.length);return!!(Er(e.segments,o)&&wl(e.segments,o,n)&&e.children[W])&&nb(e.children[W],t,i,n)}}function wl(e,t,r){return t.every((n,o)=>JD[r](e[o].parameters,n.parameters))}class Ro{constructor(t=new ce([],{}),r={},n=null){this.root=t,this.queryParams=r,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=xo(this.queryParams)),this._queryParamMap}toString(){return gF.serialize(this)}}class ce{constructor(t,r){this.segments=t,this.children=r,this.parent=null,Object.values(r).forEach(n=>n.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return El(this)}}class ns{constructor(t,r){this.path=t,this.parameters=r}get parameterMap(){return this._parameterMap||(this._parameterMap=xo(this.parameters)),this._parameterMap}toString(){return ib(this)}}function Er(e,t){return e.length===t.length&&e.every((r,n)=>r.path===t[n].path)}let rs=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return new $f},providedIn:"root"}),t})();class $f{parse(t){const r=new IF(t);return new Ro(r.parseRootSegment(),r.parseQueryParams(),r.parseFragment())}serialize(t){const r=`/${os(t.root,!0)}`,n=function yF(e){const t=Object.keys(e).map(r=>{const n=e[r];return Array.isArray(n)?n.map(o=>`${Ml(r)}=${Ml(o)}`).join("&"):`${Ml(r)}=${Ml(n)}`}).filter(r=>!!r);return t.length?`?${t.join("&")}`:""}(t.queryParams);return`${r}${n}${"string"==typeof t.fragment?`#${function mF(e){return encodeURI(e)}(t.fragment)}`:""}`}}const gF=new $f;function El(e){return e.segments.map(t=>ib(t)).join("/")}function os(e,t){if(!e.hasChildren())return El(e);if(t){const r=e.children[W]?os(e.children[W],!1):"",n=[];return Object.entries(e.children).forEach(([o,i])=>{o!==W&&n.push(`${o}:${os(i,!1)}`)}),n.length>0?`${r}(${n.join("//")})`:r}{const r=function pF(e,t){let r=[];return Object.entries(e.children).forEach(([n,o])=>{n===W&&(r=r.concat(t(o,n)))}),Object.entries(e.children).forEach(([n,o])=>{n!==W&&(r=r.concat(t(o,n)))}),r}(e,(n,o)=>o===W?[os(e.children[W],!1)]:[`${o}:${os(n,!1)}`]);return 1===Object.keys(e.children).length&&null!=e.children[W]?`${El(e)}/${r[0]}`:`${El(e)}/(${r.join("//")})`}}function rb(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Ml(e){return rb(e).replace(/%3B/gi,";")}function Gf(e){return rb(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Il(e){return decodeURIComponent(e)}function ob(e){return Il(e.replace(/\+/g,"%20"))}function ib(e){return`${Gf(e.path)}${function vF(e){return Object.keys(e).map(t=>`;${Gf(t)}=${Gf(e[t])}`).join("")}(e.parameters)}`}const _F=/^[^\/()?;#]+/;function zf(e){const t=e.match(_F);return t?t[0]:""}const CF=/^[^\/()?;=#]+/,bF=/^[^=?&#]+/,EF=/^[^&#]+/;class IF{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new ce([],{}):new ce([],this.parseChildren())}parseQueryParams(){const 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("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let r={};this.peekStartsWith("/(")&&(this.capture("/"),r=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(r).length>0)&&(n[W]=new ce(t,r)),n}parseSegment(){const t=zf(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new S(4009,!1);return this.capture(t),new ns(Il(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const r=function DF(e){const t=e.match(CF);return t?t[0]:""}(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){const o=zf(this.remaining);o&&(n=o,this.capture(n))}t[Il(r)]=Il(n)}parseQueryParam(t){const r=function wF(e){const t=e.match(bF);return t?t[0]:""}(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){const s=function MF(e){const t=e.match(EF);return t?t[0]:""}(this.remaining);s&&(n=s,this.capture(n))}const o=ob(r),i=ob(n);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){const r={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=zf(this.remaining),o=this.remaining[n.length];if("/"!==o&&")"!==o&&";"!==o)throw new S(4010,!1);let i;n.indexOf(":")>-1?(i=n.slice(0,n.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=W);const s=this.parseChildren();r[i]=1===Object.keys(s).length?s[W]:new ce([],s),this.consumeOptional("//")}return r}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new S(4011,!1)}}function sb(e){return e.segments.length>0?new ce([],{[W]:e}):e}function ab(e){const t={};for(const n of Object.keys(e.children)){const i=ab(e.children[n]);if(n===W&&0===i.segments.length&&i.hasChildren())for(const[s,a]of Object.entries(i.children))t[s]=a;else(i.segments.length>0||i.hasChildren())&&(t[n]=i)}return function SF(e){if(1===e.numberOfChildren&&e.children[W]){const t=e.children[W];return new ce(e.segments.concat(t.segments),t.children)}return e}(new ce(e.segments,t))}function Mr(e){return e instanceof Ro}function lb(e){let t;const o=sb(function r(i){const s={};for(const l of i.children){const c=r(l);s[l.outlet]=c}const a=new ce(i.url,s);return i===e&&(t=a),a}(e.root));return t??o}function cb(e,t,r,n){let o=e;for(;o.parent;)o=o.parent;if(0===t.length)return qf(o,o,o,r,n);const i=function AF(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new db(!0,0,e);let t=0,r=!1;const n=e.reduce((o,i,s)=>{if("object"==typeof i&&null!=i){if(i.outlets){const a={};return Object.entries(i.outlets).forEach(([l,c])=>{a[l]="string"==typeof c?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return"string"!=typeof i?[...o,i]:0===s?(i.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?r=!0:".."===a?t++:""!=a&&o.push(a))}),o):[...o,i]},[]);return new db(r,t,n)}(t);if(i.toRoot())return qf(o,o,new ce([],{}),r,n);const s=function xF(e,t,r){if(e.isAbsolute)return new Tl(t,!0,0);if(!r)return new Tl(t,!1,NaN);if(null===r.parent)return new Tl(r,!0,0);const n=Sl(e.commands[0])?0:1;return function RF(e,t,r){let n=e,o=t,i=r;for(;i>o;){if(i-=o,n=n.parent,!n)throw new S(4005,!1);o=n.segments.length}return new Tl(n,!1,o-i)}(r,r.segments.length-1+n,e.numberOfDoubleDots)}(i,o,e),a=s.processChildren?ss(s.segmentGroup,s.index,i.commands):fb(s.segmentGroup,s.index,i.commands);return qf(o,s.segmentGroup,a,r,n)}function Sl(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function is(e){return"object"==typeof e&&null!=e&&e.outlets}function qf(e,t,r,n,o){let s,i={};n&&Object.entries(n).forEach(([l,c])=>{i[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`}),s=e===t?r:ub(e,t,r);const a=sb(ab(s));return new Ro(a,i,o)}function ub(e,t,r){const n={};return Object.entries(e.children).forEach(([o,i])=>{n[o]=i===t?r:ub(i,t,r)}),new ce(e.segments,n)}class db{constructor(t,r,n){if(this.isAbsolute=t,this.numberOfDoubleDots=r,this.commands=n,t&&n.length>0&&Sl(n[0]))throw new S(4003,!1);const o=n.find(is);if(o&&o!==XD(n))throw new S(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class Tl{constructor(t,r,n){this.segmentGroup=t,this.processChildren=r,this.index=n}}function fb(e,t,r){if(e||(e=new ce([],{})),0===e.segments.length&&e.hasChildren())return ss(e,t,r);const n=function OF(e,t,r){let n=0,o=t;const i={match:!1,pathIndex:0,commandIndex:0};for(;o=r.length)return i;const s=e.segments[o],a=r[n];if(is(a))break;const l=`${a}`,c=n0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!pb(l,c,s))return i;n+=2}else{if(!pb(l,{},s))return i;n++}o++}return{match:!0,pathIndex:o,commandIndex:n}}(e,t,r),o=r.slice(n.commandIndex);if(n.match&&n.pathIndexi!==W)&&e.children[W]&&1===e.numberOfChildren&&0===e.children[W].segments.length){const i=ss(e.children[W],t,r);return new ce(e.segments,i.children)}return Object.entries(n).forEach(([i,s])=>{"string"==typeof s&&(s=[s]),null!==s&&(o[i]=fb(e.children[i],t,s))}),Object.entries(e.children).forEach(([i,s])=>{void 0===n[i]&&(o[i]=s)}),new ce(e.segments,o)}}function Wf(e,t,r){const n=e.segments.slice(0,t);let o=0;for(;o{"string"==typeof n&&(n=[n]),null!==n&&(t[r]=Wf(new ce([],{}),0,n))}),t}function hb(e){const t={};return Object.entries(e).forEach(([r,n])=>t[r]=`${n}`),t}function pb(e,t,r){return e==r.path&&fn(t,r.parameters)}const as="imperative";class hn{constructor(t,r){this.id=t,this.url=r}}class Al extends hn{constructor(t,r,n="imperative",o=null){super(t,r),this.type=0,this.navigationTrigger=n,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class Fn extends hn{constructor(t,r,n){super(t,r),this.urlAfterRedirects=n,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ls extends hn{constructor(t,r,n,o){super(t,r),this.reason=n,this.code=o,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class No extends hn{constructor(t,r,n,o){super(t,r),this.reason=n,this.code=o,this.type=16}}class xl extends hn{constructor(t,r,n,o){super(t,r),this.error=n,this.target=o,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class gb extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class kF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class FF extends hn{constructor(t,r,n,o,i){super(t,r),this.urlAfterRedirects=n,this.state=o,this.shouldActivate=i,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class LF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class VF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class jF{constructor(t){this.route=t,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class HF{constructor(t){this.route=t,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class UF{constructor(t){this.snapshot=t,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class BF{constructor(t){this.snapshot=t,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class $F{constructor(t){this.snapshot=t,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class GF{constructor(t){this.snapshot=t,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mb{constructor(t,r,n){this.routerEvent=t,this.position=r,this.anchor=n,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class Zf{}class Yf{constructor(t){this.url=t}}class zF{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new cs,this.attachRef=null}}let cs=(()=>{var e;class t{constructor(){this.contexts=new Map}onChildOutletCreated(n,o){const i=this.getOrCreateContext(n);i.outlet=o,this.contexts.set(n,i)}onChildOutletDestroyed(n){const o=this.getContext(n);o&&(o.outlet=null,o.attachRef=null)}onOutletDeactivated(){const n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let o=this.getContext(n);return o||(o=new zF,this.contexts.set(n,o)),o}getContext(n){return this.contexts.get(n)||null}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();class vb{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const r=this.pathFromRoot(t);return r.length>1?r[r.length-2]:null}children(t){const r=Qf(t,this._root);return r?r.children.map(n=>n.value):[]}firstChild(t){const r=Qf(t,this._root);return r&&r.children.length>0?r.children[0].value:null}siblings(t){const r=Xf(t,this._root);return r.length<2?[]:r[r.length-2].children.map(o=>o.value).filter(o=>o!==t)}pathFromRoot(t){return Xf(t,this._root).map(r=>r.value)}}function Qf(e,t){if(e===t.value)return t;for(const r of t.children){const n=Qf(e,r);if(n)return n}return null}function Xf(e,t){if(e===t.value)return[t];for(const r of t.children){const n=Xf(e,r);if(n.length)return n.unshift(t),n}return[]}class Ln{constructor(t,r){this.value=t,this.children=r}toString(){return`TreeNode(${this.value})`}}function Oo(e){const t={};return e&&e.children.forEach(r=>t[r.value.outlet]=r),t}class yb extends vb{constructor(t,r){super(t),this.snapshot=r,Jf(this,t)}toString(){return this.snapshot.toString()}}function _b(e,t){const r=function qF(e,t){const s=new Rl([],{},{},"",{},W,t,null,{});return new Db("",new Ln(s,[]))}(0,t),n=new At([new ns("",{})]),o=new At({}),i=new At({}),s=new At({}),a=new At(""),l=new Ir(n,o,s,a,i,W,t,r.root);return l.snapshot=r.root,new yb(new Ln(l,[]),r)}class Ir{constructor(t,r,n,o,i,s,a,l){this.urlSubject=t,this.paramsSubject=r,this.queryParamsSubject=n,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(ee(c=>c[ts]))??V(void 0),this.url=t,this.params=r,this.queryParams=n,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._paramMap=this.params.pipe(ee(t=>xo(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(ee(t=>xo(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Cb(e,t="emptyOnly"){const r=e.pathFromRoot;let n=0;if("always"!==t)for(n=r.length-1;n>=1;){const o=r[n],i=r[n-1];if(o.routeConfig&&""===o.routeConfig.path)n--;else{if(i.component)break;n--}}return function WF(e){return e.reduce((t,r)=>({params:{...t.params,...r.params},data:{...t.data,...r.data},resolve:{...r.data,...t.resolve,...r.routeConfig?.data,...r._resolvedData}}),{params:{},data:{},resolve:{}})}(r.slice(n))}class Rl{get title(){return this.data?.[ts]}constructor(t,r,n,o,i,s,a,l,c){this.url=t,this.params=r,this.queryParams=n,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=xo(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=xo(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(n=>n.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class Db extends vb{constructor(t,r){super(r),this.url=t,Jf(this,r)}toString(){return bb(this._root)}}function Jf(e,t){t.value._routerState=e,t.children.forEach(r=>Jf(e,r))}function bb(e){const t=e.children.length>0?` { ${e.children.map(bb).join(", ")} } `:"";return`${e.value}${t}`}function Kf(e){if(e.snapshot){const t=e.snapshot,r=e._futureSnapshot;e.snapshot=r,fn(t.queryParams,r.queryParams)||e.queryParamsSubject.next(r.queryParams),t.fragment!==r.fragment&&e.fragmentSubject.next(r.fragment),fn(t.params,r.params)||e.paramsSubject.next(r.params),function cF(e,t){if(e.length!==t.length)return!1;for(let r=0;rfn(r.parameters,t[n].parameters))}(e.url,t.url);return r&&!(!e.parent!=!t.parent)&&(!e.parent||eh(e.parent,t.parent))}let th=(()=>{var e;class t{constructor(){this.activated=null,this._activatedRoute=null,this.name=W,this.activateEvents=new Ee,this.deactivateEvents=new Ee,this.attachEvents=new Ee,this.detachEvents=new Ee,this.parentContexts=A(cs),this.location=A(Zt),this.changeDetector=A(tl),this.environmentInjector=A(Dt),this.inputBinder=A(Nl,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(n){if(n.name){const{firstChange:o,previousValue:i}=n.name;if(o)return;this.isTrackedInParentContexts(i)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(i)),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;const 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 S(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new S(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new S(4012,!1);this.location.detach();const n=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(n.instance),n}attach(n,o){this.activated=n,this._activatedRoute=o,this.location.insert(n.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(n.instance)}deactivate(){if(this.activated){const n=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(n)}}activateWith(n,o){if(this.isActivated)throw new S(4013,!1);this._activatedRoute=n;const i=this.location,a=n.snapshot.component,l=this.parentContexts.getOrCreateContext(this.name).children,c=new ZF(n,l,i.injector);this.activated=i.createComponent(a,{index:i.length,injector:c,environmentInjector:o??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Nt]}),t})();class ZF{constructor(t,r,n){this.route=t,this.childContexts=r,this.parent=n}get(t,r){return t===Ir?this.route:t===cs?this.childContexts:this.parent.get(t,r)}}const Nl=new x("");let wb=(()=>{var e;class t{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(n){this.unsubscribeFromRouteData(n),this.subscribeToRouteData(n)}unsubscribeFromRouteData(n){this.outletDataSubscriptions.get(n)?.unsubscribe(),this.outletDataSubscriptions.delete(n)}subscribeToRouteData(n){const{activatedRoute:o}=n,i=Rf([o.queryParams,o.params,o.data]).pipe(Ht(([s,a,l],c)=>(l={...s,...a,...l},0===c?V(l):Promise.resolve(l)))).subscribe(s=>{if(!n.isActivated||!n.activatedComponentRef||n.activatedRoute!==o||null===o.component)return void this.unsubscribeFromRouteData(n);const a=function CO(e){const t=X(e);if(!t)return null;const r=new Ri(t);return{get selector(){return r.selector},get type(){return r.componentType},get inputs(){return r.inputs},get outputs(){return r.outputs},get ngContentSelectors(){return r.ngContentSelectors},get isStandalone(){return t.standalone},get isSignal(){return t.signals}}}(o.component);if(a)for(const{templateName:l}of a.inputs)n.activatedComponentRef.setInput(l,s[l]);else this.unsubscribeFromRouteData(n)});this.outletDataSubscriptions.set(n,i)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function us(e,t,r){if(r&&e.shouldReuseRoute(t.value,r.value.snapshot)){const n=r.value;n._futureSnapshot=t.value;const o=function QF(e,t,r){return t.children.map(n=>{for(const o of r.children)if(e.shouldReuseRoute(n.value,o.value.snapshot))return us(e,n,o);return us(e,n)})}(e,t,r);return new Ln(n,o)}{if(e.shouldAttach(t.value)){const i=e.retrieve(t.value);if(null!==i){const s=i.route;return s.value._futureSnapshot=t.value,s.children=t.children.map(a=>us(e,a)),s}}const n=function XF(e){return new Ir(new At(e.url),new At(e.params),new At(e.queryParams),new At(e.fragment),new At(e.data),e.outlet,e.component,e)}(t.value),o=t.children.map(i=>us(e,i));return new Ln(n,o)}}const nh="ngNavigationCancelingError";function Eb(e,t){const{redirectTo:r,navigationBehaviorOptions:n}=Mr(t)?{redirectTo:t,navigationBehaviorOptions:void 0}:t,o=Mb(!1,0,t);return o.url=r,o.navigationBehaviorOptions=n,o}function Mb(e,t,r){const n=new Error("NavigationCancelingError: "+(e||""));return n[nh]=!0,n.cancellationCode=t,r&&(n.url=r),n}function Ib(e){return e&&e[nh]}let Sb=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["ng-component"]],standalone:!0,features:[Mt],decls:1,vars:0,template:function(n,o){1&n&&v(0,"router-outlet")},dependencies:[th],encapsulation:2}),t})();function rh(e){const t=e.children&&e.children.map(rh),r=t?{...e,children:t}:{...e};return!r.component&&!r.loadComponent&&(t||r.loadChildren)&&r.outlet&&r.outlet!==W&&(r.component=Sb),r}function Jt(e){return e.outlet||W}function ds(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let t=e.parent;t;t=t.parent){const r=t.routeConfig;if(r?._loadedInjector)return r._loadedInjector;if(r?._injector)return r._injector}return null}class i2{constructor(t,r,n,o,i){this.routeReuseStrategy=t,this.futureState=r,this.currState=n,this.forwardEvent=o,this.inputBindingEnabled=i}activate(t){const r=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(r,n,t),Kf(this.futureState.root),this.activateChildRoutes(r,n,t)}deactivateChildRoutes(t,r,n){const o=Oo(r);t.children.forEach(i=>{const s=i.value.outlet;this.deactivateRoutes(i,o[s],n),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,n)})}deactivateRoutes(t,r,n){const o=t.value,i=r?r.value:null;if(o===i)if(o.component){const s=n.getContext(o.outlet);s&&this.deactivateChildRoutes(t,r,s.children)}else this.deactivateChildRoutes(t,r,n);else i&&this.deactivateRouteAndItsChildren(r,n)}deactivateRouteAndItsChildren(t,r){t.value.component&&this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,r):this.deactivateRouteAndOutlet(t,r)}detachAndStoreRouteSubtree(t,r){const n=r.getContext(t.value.outlet),o=n&&t.value.component?n.children:r,i=Oo(t);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);if(n&&n.outlet){const s=n.outlet.detach(),a=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:s,route:t,contexts:a})}}deactivateRouteAndOutlet(t,r){const n=r.getContext(t.value.outlet),o=n&&t.value.component?n.children:r,i=Oo(t);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);n&&(n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated()),n.attachRef=null,n.route=null)}activateChildRoutes(t,r,n){const o=Oo(r);t.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],n),this.forwardEvent(new GF(i.value.snapshot))}),t.children.length&&this.forwardEvent(new BF(t.value.snapshot))}activateRoutes(t,r,n){const o=t.value,i=r?r.value:null;if(Kf(o),o===i)if(o.component){const s=n.getOrCreateContext(o.outlet);this.activateChildRoutes(t,r,s.children)}else this.activateChildRoutes(t,r,n);else if(o.component){const s=n.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){const 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),Kf(a.route.value),this.activateChildRoutes(t,null,s.children)}else{const a=ds(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,n)}}class Tb{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Ol{constructor(t,r){this.component=t,this.route=r}}function s2(e,t,r){const n=e._root;return fs(n,t?t._root:null,r,[n.value])}function Po(e,t){const r=Symbol(),n=t.get(e,r);return n===r?"function"!=typeof e||function R1(e){return null!==Rs(e)}(e)?t.get(e):e:n}function fs(e,t,r,n,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=Oo(t);return e.children.forEach(s=>{(function l2(e,t,r,n,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=e.value,s=t?t.value:null,a=r?r.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){const l=function c2(e,t,r){if("function"==typeof r)return r(e,t);switch(r){case"pathParamsChange":return!Er(e.url,t.url);case"pathParamsOrQueryParamsChange":return!Er(e.url,t.url)||!fn(e.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!eh(e,t)||!fn(e.queryParams,t.queryParams);default:return!eh(e,t)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Tb(n)):(i.data=s.data,i._resolvedData=s._resolvedData),fs(e,t,i.component?a?a.children:null:r,n,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Ol(a.outlet.component,s))}else s&&hs(t,a,o),o.canActivateChecks.push(new Tb(n)),fs(e,null,i.component?a?a.children:null:r,n,o)})(s,i[s.value.outlet],r,n.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>hs(a,r.getContext(s),o)),o}function hs(e,t,r){const n=Oo(e),o=e.value;Object.entries(n).forEach(([i,s])=>{hs(s,o.component?t?t.children.getContext(i):null:t,r)}),r.canDeactivateChecks.push(new Ol(o.component&&t&&t.outlet&&t.outlet.isActivated?t.outlet.component:null,o))}function ps(e){return"function"==typeof e}function Ab(e){return e instanceof Cl||"EmptyError"===e?.name}const Pl=Symbol("INITIAL_VALUE");function ko(){return Ht(e=>Rf(e.map(t=>t.pipe(ar(1),function Ek(...e){const t=Yo(e);return Pe((r,n)=>{(t?Nf(e,r,t):Nf(e,r)).subscribe(n)})}(Pl)))).pipe(ee(t=>{for(const r of t)if(!0!==r){if(r===Pl)return Pl;if(!1===r||r instanceof Ro)return r}return!0}),Xt(t=>t!==Pl),ar(1)))}function xb(e){return function OE(...e){return Hh(e)}(Ze(t=>{if(Mr(t))throw Eb(0,t)}),ee(t=>!0===t))}class kl{constructor(t){this.segmentGroup=t||null}}class Rb{constructor(t){this.urlTree=t}}function Fo(e){return Ji(new kl(e))}function Nb(e){return Ji(new Rb(e))}class A2{constructor(t,r){this.urlSerializer=t,this.urlTree=r}noMatchError(t){return new S(4002,!1)}lineralizeSegments(t,r){let n=[],o=r.root;for(;;){if(n=n.concat(o.segments),0===o.numberOfChildren)return V(n);if(o.numberOfChildren>1||!o.children[W])return Ji(new S(4e3,!1));o=o.children[W]}}applyRedirectCommands(t,r,n){return this.applyRedirectCreateUrlTree(r,this.urlSerializer.parse(r),t,n)}applyRedirectCreateUrlTree(t,r,n,o){const i=this.createSegmentGroup(t,r.root,n,o);return new Ro(i,this.createQueryParams(r.queryParams,this.urlTree.queryParams),r.fragment)}createQueryParams(t,r){const n={};return Object.entries(t).forEach(([o,i])=>{if("string"==typeof i&&i.startsWith(":")){const a=i.substring(1);n[o]=r[a]}else n[o]=i}),n}createSegmentGroup(t,r,n,o){const i=this.createSegments(t,r.segments,n,o);let s={};return Object.entries(r.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(t,l,n,o)}),new ce(i,s)}createSegments(t,r,n,o){return r.map(i=>i.path.startsWith(":")?this.findPosParam(t,i,o):this.findOrReturn(i,n))}findPosParam(t,r,n){const o=n[r.path.substring(1)];if(!o)throw new S(4001,!1);return o}findOrReturn(t,r){let n=0;for(const o of r){if(o.path===t.path)return r.splice(n),o;n++}return t}}const oh={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function x2(e,t,r,n,o){const i=ih(e,t,r);return i.matched?(n=function KF(e,t){return e.providers&&!e._injector&&(e._injector=Od(e.providers,t,`Route: ${e.path}`)),e._injector??t}(t,n),function I2(e,t,r,n){const o=t.canMatch;return o&&0!==o.length?V(o.map(s=>{const a=Po(s,e);return Kn(function g2(e){return e&&ps(e.canMatch)}(a)?a.canMatch(t,r):e.runInContext(()=>a(t,r)))})).pipe(ko(),xb()):V(!0)}(n,t,r).pipe(ee(s=>!0===s?i:{...oh}))):V(i)}function ih(e,t,r){if(""===t.path)return"full"===t.pathMatch&&(e.hasChildren()||r.length>0)?{...oh}:{matched:!0,consumedSegments:[],remainingSegments:r,parameters:{},positionalParamSegments:{}};const o=(t.matcher||lF)(r,e,t);if(!o)return{...oh};const i={};Object.entries(o.posParams??{}).forEach(([a,l])=>{i[a]=l.path});const s=o.consumed.length>0?{...i,...o.consumed[o.consumed.length-1].parameters}:i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:r.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function Ob(e,t,r,n){return r.length>0&&function O2(e,t,r){return r.some(n=>Fl(e,t,n)&&Jt(n)!==W)}(e,r,n)?{segmentGroup:new ce(t,N2(n,new ce(r,e.children))),slicedSegments:[]}:0===r.length&&function P2(e,t,r){return r.some(n=>Fl(e,t,n))}(e,r,n)?{segmentGroup:new ce(e.segments,R2(e,0,r,n,e.children)),slicedSegments:r}:{segmentGroup:new ce(e.segments,e.children),slicedSegments:r}}function R2(e,t,r,n,o){const i={};for(const s of n)if(Fl(e,r,s)&&!o[Jt(s)]){const a=new ce([],{});i[Jt(s)]=a}return{...o,...i}}function N2(e,t){const r={};r[W]=t;for(const n of e)if(""===n.path&&Jt(n)!==W){const o=new ce([],{});r[Jt(n)]=o}return r}function Fl(e,t,r){return(!(e.hasChildren()||t.length>0)||"full"!==r.pathMatch)&&""===r.path}class V2{constructor(t,r,n,o,i,s,a){this.injector=t,this.configLoader=r,this.rootComponentType=n,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.allowRedirects=!0,this.applyRedirects=new A2(this.urlSerializer,this.urlTree)}noMatchError(t){return new S(4002,!1)}recognize(){const t=Ob(this.urlTree.root,[],[],this.config).segmentGroup;return this.processSegmentGroup(this.injector,this.config,t,W).pipe(wr(r=>{if(r instanceof Rb)return this.allowRedirects=!1,this.urlTree=r.urlTree,this.match(r.urlTree);throw r instanceof kl?this.noMatchError(r):r}),ee(r=>{const n=new Rl([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},W,this.rootComponentType,null,{}),o=new Ln(n,r),i=new Db("",o),s=function TF(e,t,r=null,n=null){return cb(lb(e),t,r,n)}(n,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,i.url=this.urlSerializer.serialize(s),this.inheritParamsAndData(i._root),{state:i,tree:s}}))}match(t){return this.processSegmentGroup(this.injector,this.config,t.root,W).pipe(wr(n=>{throw n instanceof kl?this.noMatchError(n):n}))}inheritParamsAndData(t){const r=t.value,n=Cb(r,this.paramsInheritanceStrategy);r.params=Object.freeze(n.params),r.data=Object.freeze(n.data),t.children.forEach(o=>this.inheritParamsAndData(o))}processSegmentGroup(t,r,n,o){return 0===n.segments.length&&n.hasChildren()?this.processChildren(t,r,n):this.processSegment(t,r,n,n.segments,o,!0)}processChildren(t,r,n){const o=[];for(const i of Object.keys(n.children))"primary"===i?o.unshift(i):o.push(i);return Ne(o).pipe(Ao(i=>{const s=n.children[i],a=function r2(e,t){const r=e.filter(n=>Jt(n)===t);return r.push(...e.filter(n=>Jt(n)!==t)),r}(r,i);return this.processSegmentGroup(t,a,s,i)}),function Sk(e,t){return Pe(function Ik(e,t,r,n,o){return(i,s)=>{let a=r,l=t,c=0;i.subscribe(Re(s,u=>{const d=c++;l=a?e(l,u,d):(a=!0,u),n&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}(e,t,arguments.length>=2,!0))}((i,s)=>(i.push(...s),i)),Dl(null),function Tk(e,t){const r=arguments.length>=2;return n=>n.pipe(e?Xt((o,i)=>e(o,i,n)):jn,Pf(1),r?Dl(t):OD(()=>new Cl))}(),Ve(i=>{if(null===i)return Fo(n);const s=Pb(i);return function j2(e){e.sort((t,r)=>t.value.outlet===W?-1:r.value.outlet===W?1:t.value.outlet.localeCompare(r.value.outlet))}(s),V(s)}))}processSegment(t,r,n,o,i,s){return Ne(r).pipe(Ao(a=>this.processSegmentAgainstRoute(a._injector??t,r,a,n,o,i,s).pipe(wr(l=>{if(l instanceof kl)return V(null);throw l}))),br(a=>!!a),wr(a=>{if(Ab(a))return function F2(e,t,r){return 0===t.length&&!e.children[r]}(n,o,i)?V([]):Fo(n);throw a}))}processSegmentAgainstRoute(t,r,n,o,i,s,a){return function k2(e,t,r,n){return!!(Jt(e)===n||n!==W&&Fl(t,r,e))&&("**"===e.path||ih(t,e,r).matched)}(n,o,i,s)?void 0===n.redirectTo?this.matchSegmentAgainstRoute(t,o,n,i,s,a):a&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,o,r,n,i,s):Fo(o):Fo(o)}expandSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s){return"**"===o.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,o,s):this.expandRegularSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,r,n,o){const i=this.applyRedirects.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Nb(i):this.applyRedirects.lineralizeSegments(n,i).pipe(Ve(s=>{const a=new ce(s,{});return this.processSegment(t,r,a,s,o,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s){const{matched:a,consumedSegments:l,remainingSegments:c,positionalParamSegments:u}=ih(r,o,i);if(!a)return Fo(r);const d=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,u);return o.redirectTo.startsWith("/")?Nb(d):this.applyRedirects.lineralizeSegments(o,d).pipe(Ve(g=>this.processSegment(t,n,r,g.concat(c),s,!1)))}matchSegmentAgainstRoute(t,r,n,o,i,s){let a;if("**"===n.path){const l=o.length>0?XD(o).parameters:{};a=V({snapshot:new Rl(o,l,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,kb(n),Jt(n),n.component??n._loadedComponent??null,n,Fb(n)),consumedSegments:[],remainingSegments:[]}),r.children={}}else a=x2(r,n,o,t).pipe(ee(({matched:l,consumedSegments:c,remainingSegments:u,parameters:d})=>l?{snapshot:new Rl(c,d,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,kb(n),Jt(n),n.component??n._loadedComponent??null,n,Fb(n)),consumedSegments:c,remainingSegments:u}:null));return a.pipe(Ht(l=>null===l?Fo(r):this.getChildConfig(t=n._injector??t,n,o).pipe(Ht(({routes:c})=>{const u=n._loadedInjector??t,{snapshot:d,consumedSegments:g,remainingSegments:m}=l,{segmentGroup:y,slicedSegments:C}=Ob(r,g,m,c);if(0===C.length&&y.hasChildren())return this.processChildren(u,c,y).pipe(ee(E=>null===E?null:[new Ln(d,E)]));if(0===c.length&&0===C.length)return V([new Ln(d,[])]);const b=Jt(n)===i;return this.processSegment(u,c,y,C,b?W:i,!0).pipe(ee(E=>[new Ln(d,E)]))}))))}getChildConfig(t,r,n){return r.children?V({routes:r.children,injector:t}):r.loadChildren?void 0!==r._loadedRoutes?V({routes:r._loadedRoutes,injector:r._loadedInjector}):function M2(e,t,r,n){const o=t.canLoad;return void 0===o||0===o.length?V(!0):V(o.map(s=>{const a=Po(s,e);return Kn(function d2(e){return e&&ps(e.canLoad)}(a)?a.canLoad(t,r):e.runInContext(()=>a(t,r)))})).pipe(ko(),xb())}(t,r,n).pipe(Ve(o=>o?this.configLoader.loadChildren(t,r).pipe(Ze(i=>{r._loadedRoutes=i.routes,r._loadedInjector=i.injector})):function T2(e){return Ji(Mb(!1,3))}())):V({routes:[],injector:t})}}function H2(e){const t=e.value.routeConfig;return t&&""===t.path}function Pb(e){const t=[],r=new Set;for(const n of e){if(!H2(n)){t.push(n);continue}const o=t.find(i=>n.value.routeConfig===i.value.routeConfig);void 0!==o?(o.children.push(...n.children),r.add(o)):t.push(n)}for(const n of r){const o=Pb(n.children);t.push(new Ln(n.value,o))}return t.filter(n=>!r.has(n))}function kb(e){return e.data||{}}function Fb(e){return e.resolve||{}}function Lb(e){return"string"==typeof e.title||null===e.title}function sh(e){return Ht(t=>{const r=e(t);return r?Ne(r).pipe(ee(()=>t)):V(t)})}const Lo=new x("ROUTES");let ah=(()=>{var e;class t{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=A(DC)}loadComponent(n){if(this.componentLoaders.get(n))return this.componentLoaders.get(n);if(n._loadedComponent)return V(n._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(n);const o=Kn(n.loadComponent()).pipe(ee(Vb),Ze(s=>{this.onLoadEndListener&&this.onLoadEndListener(n),n._loadedComponent=s}),Ki(()=>{this.componentLoaders.delete(n)})),i=new ND(o,()=>new Vt).pipe(Of());return this.componentLoaders.set(n,i),i}loadChildren(n,o){if(this.childrenLoaders.get(o))return this.childrenLoaders.get(o);if(o._loadedRoutes)return V({routes:o._loadedRoutes,injector:o._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(o);const s=function W2(e,t,r,n){return Kn(e.loadChildren()).pipe(ee(Vb),Ve(o=>o instanceof S_||Array.isArray(o)?V(o):Ne(t.compileModuleAsync(o))),ee(o=>{n&&n(e);let i,s,a=!1;return Array.isArray(o)?(s=o,!0):(i=o.create(r).injector,s=i.get(Lo,[],{optional:!0,self:!0}).flat()),{routes:s.map(rh),injector:i}}))}(o,this.compiler,n,this.onLoadEndListener).pipe(Ki(()=>{this.childrenLoaders.delete(o)})),a=new ND(s,()=>new Vt).pipe(Of());return this.childrenLoaders.set(o,a),a}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function Vb(e){return function Z2(e){return e&&"object"==typeof e&&"default"in e}(e)?e.default:e}let Ll=(()=>{var e;class t{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new Vt,this.transitionAbortSubject=new Vt,this.configLoader=A(ah),this.environmentInjector=A(Dt),this.urlSerializer=A(rs),this.rootContexts=A(cs),this.inputBindingEnabled=null!==A(Nl,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>V(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=i=>this.events.next(new HF(i)),this.configLoader.onLoadStartListener=i=>this.events.next(new jF(i))}complete(){this.transitions?.complete()}handleNavigationRequest(n){const o=++this.navigationId;this.transitions?.next({...this.transitions.value,...n,id:o})}setupNavigations(n,o,i){return this.transitions=new At({id:0,currentUrlTree:o,currentRawUrl:o,currentBrowserUrl:o,extractedUrl:n.urlHandlingStrategy.extract(o),urlAfterRedirects:n.urlHandlingStrategy.extract(o),rawUrl:o,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:as,restoredState:null,currentSnapshot:i.snapshot,targetSnapshot:null,currentRouterState:i,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(Xt(s=>0!==s.id),ee(s=>({...s,extractedUrl:n.urlHandlingStrategy.extract(s.rawUrl)})),Ht(s=>{this.currentTransition=s;let a=!1,l=!1;return V(s).pipe(Ze(c=>{this.currentNavigation={id:c.id,initialUrl:c.rawUrl,extractedUrl:c.extractedUrl,trigger:c.source,extras:c.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),Ht(c=>{const u=c.currentBrowserUrl.toString(),d=!n.navigated||c.extractedUrl.toString()!==u||u!==c.currentUrlTree.toString();if(!d&&"reload"!==(c.extras.onSameUrlNavigation??n.onSameUrlNavigation)){const m="";return this.events.next(new No(c.id,this.urlSerializer.serialize(c.rawUrl),m,0)),c.resolve(null),Kt}if(n.urlHandlingStrategy.shouldProcessUrl(c.rawUrl))return V(c).pipe(Ht(m=>{const y=this.transitions?.getValue();return this.events.next(new Al(m.id,this.urlSerializer.serialize(m.extractedUrl),m.source,m.restoredState)),y!==this.transitions?.getValue()?Kt:Promise.resolve(m)}),function U2(e,t,r,n,o,i){return Ve(s=>function L2(e,t,r,n,o,i,s="emptyOnly"){return new V2(e,t,r,n,o,s,i).recognize()}(e,t,r,n,s.extractedUrl,o,i).pipe(ee(({state:a,tree:l})=>({...s,targetSnapshot:a,urlAfterRedirects:l}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,n.config,this.urlSerializer,n.paramsInheritanceStrategy),Ze(m=>{s.targetSnapshot=m.targetSnapshot,s.urlAfterRedirects=m.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:m.urlAfterRedirects};const y=new gb(m.id,this.urlSerializer.serialize(m.extractedUrl),this.urlSerializer.serialize(m.urlAfterRedirects),m.targetSnapshot);this.events.next(y)}));if(d&&n.urlHandlingStrategy.shouldProcessUrl(c.currentRawUrl)){const{id:m,extractedUrl:y,source:C,restoredState:b,extras:E}=c,D=new Al(m,this.urlSerializer.serialize(y),C,b);this.events.next(D);const O=_b(0,this.rootComponentType).snapshot;return this.currentTransition=s={...c,targetSnapshot:O,urlAfterRedirects:y,extras:{...E,skipLocationChange:!1,replaceUrl:!1}},V(s)}{const m="";return this.events.next(new No(c.id,this.urlSerializer.serialize(c.extractedUrl),m,1)),c.resolve(null),Kt}}),Ze(c=>{const u=new kF(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),ee(c=>(this.currentTransition=s={...c,guards:s2(c.targetSnapshot,c.currentSnapshot,this.rootContexts)},s)),function v2(e,t){return Ve(r=>{const{targetSnapshot:n,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=r;return 0===s.length&&0===i.length?V({...r,guardsResult:!0}):function y2(e,t,r,n){return Ne(e).pipe(Ve(o=>function E2(e,t,r,n,o){const i=t&&t.routeConfig?t.routeConfig.canDeactivate:null;return i&&0!==i.length?V(i.map(a=>{const l=ds(t)??o,c=Po(a,l);return Kn(function p2(e){return e&&ps(e.canDeactivate)}(c)?c.canDeactivate(e,t,r,n):l.runInContext(()=>c(e,t,r,n))).pipe(br())})).pipe(ko()):V(!0)}(o.component,o.route,r,t,n)),br(o=>!0!==o,!0))}(s,n,o,e).pipe(Ve(a=>a&&function u2(e){return"boolean"==typeof e}(a)?function _2(e,t,r,n){return Ne(t).pipe(Ao(o=>Nf(function D2(e,t){return null!==e&&t&&t(new UF(e)),V(!0)}(o.route.parent,n),function C2(e,t){return null!==e&&t&&t(new $F(e)),V(!0)}(o.route,n),function w2(e,t,r){const n=t[t.length-1],i=t.slice(0,t.length-1).reverse().map(s=>function a2(e){const t=e.routeConfig?e.routeConfig.canActivateChild:null;return t&&0!==t.length?{node:e,guards:t}:null}(s)).filter(s=>null!==s).map(s=>RD(()=>V(s.guards.map(l=>{const c=ds(s.node)??r,u=Po(l,c);return Kn(function h2(e){return e&&ps(e.canActivateChild)}(u)?u.canActivateChild(n,e):c.runInContext(()=>u(n,e))).pipe(br())})).pipe(ko())));return V(i).pipe(ko())}(e,o.path,r),function b2(e,t,r){const n=t.routeConfig?t.routeConfig.canActivate:null;if(!n||0===n.length)return V(!0);const o=n.map(i=>RD(()=>{const s=ds(t)??r,a=Po(i,s);return Kn(function f2(e){return e&&ps(e.canActivate)}(a)?a.canActivate(t,e):s.runInContext(()=>a(t,e))).pipe(br())}));return V(o).pipe(ko())}(e,o.route,r))),br(o=>!0!==o,!0))}(n,i,e,t):V(a)),ee(a=>({...r,guardsResult:a})))})}(this.environmentInjector,c=>this.events.next(c)),Ze(c=>{if(s.guardsResult=c.guardsResult,Mr(c.guardsResult))throw Eb(0,c.guardsResult);const u=new FF(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot,!!c.guardsResult);this.events.next(u)}),Xt(c=>!!c.guardsResult||(this.cancelNavigationTransition(c,"",3),!1)),sh(c=>{if(c.guards.canActivateChecks.length)return V(c).pipe(Ze(u=>{const d=new LF(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(d)}),Ht(u=>{let d=!1;return V(u).pipe(function B2(e,t){return Ve(r=>{const{targetSnapshot:n,guards:{canActivateChecks:o}}=r;if(!o.length)return V(r);let i=0;return Ne(o).pipe(Ao(s=>function $2(e,t,r,n){const o=e.routeConfig,i=e._resolve;return void 0!==o?.title&&!Lb(o)&&(i[ts]=o.title),function G2(e,t,r,n){const o=function z2(e){return[...Object.keys(e),...Object.getOwnPropertySymbols(e)]}(e);if(0===o.length)return V({});const i={};return Ne(o).pipe(Ve(s=>function q2(e,t,r,n){const o=ds(t)??n,i=Po(e,o);return Kn(i.resolve?i.resolve(t,r):o.runInContext(()=>i(t,r)))}(e[s],t,r,n).pipe(br(),Ze(a=>{i[s]=a}))),Pf(1),function Ak(e){return ee(()=>e)}(i),wr(s=>Ab(s)?Kt:Ji(s)))}(i,e,t,n).pipe(ee(s=>(e._resolvedData=s,e.data=Cb(e,r).resolve,o&&Lb(o)&&(e.data[ts]=o.title),null)))}(s.route,n,e,t)),Ze(()=>i++),Pf(1),Ve(s=>i===o.length?V(r):Kt))})}(n.paramsInheritanceStrategy,this.environmentInjector),Ze({next:()=>d=!0,complete:()=>{d||this.cancelNavigationTransition(u,"",2)}}))}),Ze(u=>{const d=new VF(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(d)}))}),sh(c=>{const u=d=>{const g=[];d.routeConfig?.loadComponent&&!d.routeConfig._loadedComponent&&g.push(this.configLoader.loadComponent(d.routeConfig).pipe(Ze(m=>{d.component=m}),ee(()=>{})));for(const m of d.children)g.push(...u(m));return g};return Rf(u(c.targetSnapshot.root)).pipe(Dl(),ar(1))}),sh(()=>this.afterPreactivation()),ee(c=>{const u=function YF(e,t,r){const n=us(e,t._root,r?r._root:void 0);return new yb(n,t)}(n.routeReuseStrategy,c.targetSnapshot,c.currentRouterState);return this.currentTransition=s={...c,targetRouterState:u},s}),Ze(()=>{this.events.next(new Zf)}),((e,t,r,n)=>ee(o=>(new i2(t,o.targetRouterState,o.currentRouterState,r,n).activate(e),o)))(this.rootContexts,n.routeReuseStrategy,c=>this.events.next(c),this.inputBindingEnabled),ar(1),Ze({next:c=>{a=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new Fn(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects))),n.titleStrategy?.updateTitle(c.targetRouterState.snapshot),c.resolve(!0)},complete:()=>{a=!0}}),function xk(e){return Pe((t,r)=>{jt(e).subscribe(Re(r,()=>r.complete(),lc)),!r.closed&&t.subscribe(r)})}(this.transitionAbortSubject.pipe(Ze(c=>{throw c}))),Ki(()=>{a||l||this.cancelNavigationTransition(s,"",1),this.currentNavigation?.id===s.id&&(this.currentNavigation=null)}),wr(c=>{if(l=!0,Ib(c))this.events.next(new ls(s.id,this.urlSerializer.serialize(s.extractedUrl),c.message,c.cancellationCode)),function JF(e){return Ib(e)&&Mr(e.url)}(c)?this.events.next(new Yf(c.url)):s.resolve(!1);else{this.events.next(new xl(s.id,this.urlSerializer.serialize(s.extractedUrl),c,s.targetSnapshot??void 0));try{s.resolve(n.errorHandler(c))}catch(u){s.reject(u)}}return Kt}))}))}cancelNavigationTransition(n,o,i){const s=new ls(n.id,this.urlSerializer.serialize(n.extractedUrl),o,i);this.events.next(s),n.resolve(!1)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function jb(e){return e!==as}let Hb=(()=>{var e;class t{buildTitle(n){let o,i=n.root;for(;void 0!==i;)o=this.getResolvedTitleForRoute(i)??o,i=i.children.find(s=>s.outlet===W);return o}getResolvedTitleForRoute(n){return n.data[ts]}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(Y2)},providedIn:"root"}),t})(),Y2=(()=>{var e;class t extends Hb{constructor(n){super(),this.title=n}updateTitle(n){const o=this.buildTitle(n);void 0!==o&&this.title.setTitle(o)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(qD))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),Q2=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(J2)},providedIn:"root"}),t})();class X2{shouldDetach(t){return!1}store(t,r){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,r){return t.routeConfig===r.routeConfig}}let J2=(()=>{var e;class t extends X2{}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const Vl=new x("",{providedIn:"root",factory:()=>({})});let K2=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(eL)},providedIn:"root"}),t})(),eL=(()=>{var e;class t{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,o){return n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();var gs=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(gs||{});function Ub(e,t){e.events.pipe(Xt(r=>r instanceof Fn||r instanceof ls||r instanceof xl||r instanceof No),ee(r=>r instanceof Fn||r instanceof No?gs.COMPLETE:r instanceof ls&&(0===r.code||1===r.code)?gs.REDIRECTING:gs.FAILED),Xt(r=>r!==gs.REDIRECTING),ar(1)).subscribe(()=>{t()})}function tL(e){throw e}function nL(e,t,r){return t.parse("/")}const rL={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},oL={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let St=(()=>{var e;class t{get navigationId(){return this.navigationTransitions.navigationId}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.location.getState()?.\u0275routerPageId??this.currentPageId}get events(){return this._events}constructor(){this.disposed=!1,this.currentPageId=0,this.console=A(CC),this.isNgZoneEnabled=!1,this._events=new Vt,this.options=A(Vl,{optional:!0})||{},this.pendingTasks=A(Xa),this.errorHandler=this.options.errorHandler||tL,this.malformedUriErrorHandler=this.options.malformedUriErrorHandler||nL,this.navigated=!1,this.lastSuccessfulId=-1,this.urlHandlingStrategy=A(K2),this.routeReuseStrategy=A(Q2),this.titleStrategy=A(Hb),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.config=A(Lo,{optional:!0})?.flat()??[],this.navigationTransitions=A(Ll),this.urlSerializer=A(rs),this.location=A(hf),this.componentInputBindingEnabled=!!A(Nl,{optional:!0}),this.eventsSubscription=new gt,this.isNgZoneEnabled=A(ge)instanceof ge&&ge.isInAngularZone(),this.resetConfig(this.config),this.currentUrlTree=new Ro,this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.routerState=_b(0,null),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe(n=>{this.lastSuccessfulId=n.id,this.currentPageId=this.browserPageId},n=>{this.console.warn(`Unhandled Navigation Error: ${n}`)}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const n=this.navigationTransitions.events.subscribe(o=>{try{const{currentTransition:i}=this.navigationTransitions;if(null===i)return void(Bb(o)&&this._events.next(o));if(o instanceof Al)jb(i.source)&&(this.browserUrlTree=i.extractedUrl);else if(o instanceof No)this.rawUrlTree=i.rawUrl;else if(o instanceof gb){if("eager"===this.urlUpdateStrategy){if(!i.extras.skipLocationChange){const s=this.urlHandlingStrategy.merge(i.urlAfterRedirects,i.rawUrl);this.setBrowserUrl(s,i)}this.browserUrlTree=i.urlAfterRedirects}}else if(o instanceof Zf)this.currentUrlTree=i.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(i.urlAfterRedirects,i.rawUrl),this.routerState=i.targetRouterState,"deferred"===this.urlUpdateStrategy&&(i.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,i),this.browserUrlTree=i.urlAfterRedirects);else if(o instanceof ls)0!==o.code&&1!==o.code&&(this.navigated=!0),(3===o.code||2===o.code)&&this.restoreHistory(i);else if(o instanceof Yf){const s=this.urlHandlingStrategy.merge(o.url,i.currentRawUrl),a={skipLocationChange:i.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||jb(i.source)};this.scheduleNavigation(s,as,null,a,{resolve:i.resolve,reject:i.reject,promise:i.promise})}o instanceof xl&&this.restoreHistory(i,!0),o instanceof Fn&&(this.navigated=!0),Bb(o)&&this._events.next(o)}catch(i){this.navigationTransitions.transitionAbortSubject.next(i)}});this.eventsSubscription.add(n)}resetRootComponentType(n){this.routerState.root.component=n,this.navigationTransitions.rootComponentType=n}initialNavigation(){if(this.setUpLocationChangeListener(),!this.navigationTransitions.hasRequestedNavigation){const n=this.location.getState();this.navigateToSyncWithBrowser(this.location.path(!0),as,n)}}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(n=>{const o="popstate"===n.type?"popstate":"hashchange";"popstate"===o&&setTimeout(()=>{this.navigateToSyncWithBrowser(n.url,o,n.state)},0)}))}navigateToSyncWithBrowser(n,o,i){const s={replaceUrl:!0},a=i?.navigationId?i:null;if(i){const c={...i};delete c.navigationId,delete c.\u0275routerPageId,0!==Object.keys(c).length&&(s.state=c)}const l=this.parseUrl(n);this.scheduleNavigation(l,o,a,s)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(n){this.config=n.map(rh),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(n,o={}){const{relativeTo:i,queryParams:s,fragment:a,queryParamsHandling:l,preserveFragment:c}=o,u=c?this.currentUrlTree.fragment:a;let g,d=null;switch(l){case"merge":d={...this.currentUrlTree.queryParams,...s};break;case"preserve":d=this.currentUrlTree.queryParams;break;default:d=s||null}null!==d&&(d=this.removeEmptyProps(d));try{g=lb(i?i.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof n[0]||!n[0].startsWith("/"))&&(n=[]),g=this.currentUrlTree.root}return cb(g,n,d,u??null)}navigateByUrl(n,o={skipLocationChange:!1}){const i=Mr(n)?n:this.parseUrl(n),s=this.urlHandlingStrategy.merge(i,this.rawUrlTree);return this.scheduleNavigation(s,as,null,o)}navigate(n,o={skipLocationChange:!1}){return function iL(e){for(let t=0;t{const s=n[i];return null!=s&&(o[i]=s),o},{})}scheduleNavigation(n,o,i,s,a){if(this.disposed)return Promise.resolve(!1);let l,c,u;a?(l=a.resolve,c=a.reject,u=a.promise):u=new Promise((g,m)=>{l=g,c=m});const d=this.pendingTasks.add();return Ub(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(d))}),this.navigationTransitions.handleNavigationRequest({source:o,restoredState:i,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,currentBrowserUrl:this.browserUrlTree,rawUrl:n,extras:s,resolve:l,reject:c,promise:u,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),u.catch(g=>Promise.reject(g))}setBrowserUrl(n,o){const i=this.urlSerializer.serialize(n);if(this.location.isCurrentPathEqualTo(i)||o.extras.replaceUrl){const a={...o.extras.state,...this.generateNgRouterState(o.id,this.browserPageId)};this.location.replaceState(i,"",a)}else{const s={...o.extras.state,...this.generateNgRouterState(o.id,this.browserPageId+1)};this.location.go(i,"",s)}}restoreHistory(n,o=!1){if("computed"===this.canceledNavigationResolution){const s=this.currentPageId-this.browserPageId;0!==s?this.location.historyGo(s):this.currentUrlTree===this.getCurrentNavigation()?.finalUrl&&0===s&&(this.resetState(n),this.browserUrlTree=n.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(o&&this.resetState(n),this.resetUrlToCurrentUrlTree())}resetState(n){this.routerState=n.currentRouterState,this.currentUrlTree=n.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(n,o){return"computed"===this.canceledNavigationResolution?{navigationId:n,\u0275routerPageId:o}:{navigationId:n}}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function Bb(e){return!(e instanceof Zf||e instanceof Yf)}let pn=(()=>{var e;class t{constructor(n,o,i,s,a,l){this.router=n,this.route=o,this.tabIndexAttribute=i,this.renderer=s,this.el=a,this.locationStrategy=l,this.href=null,this.commands=null,this.onChanges=new Vt,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const c=a.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===c||"area"===c,this.isAnchorElement?this.subscription=n.events.subscribe(u=>{u instanceof Fn&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(n){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",n)}ngOnChanges(n){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(n){null!=n?(this.commands=Array.isArray(n)?n:[n],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(n,o,i,s,a){return!!(null===this.urlTree||this.isAnchorElement&&(0!==n||o||i||s||a||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const n=null===this.href?null:function Sm(e,t,r){return function VI(e,t){return"src"===t&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===t&&("base"===e||"link"===e)?Im:ro}(t,r)(e)}(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",n)}applyAttributeValue(n,o){const i=this.renderer,s=this.el.nativeElement;null!==o?i.setAttribute(s,n,o):i.removeAttribute(s,n)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(St),I(Ir),function Js(e){return function oM(e,t){if("class"===t)return e.classes;if("style"===t)return e.styles;const r=e.attrs;if(r){const n=r.length;let o=0;for(;o{var e;class t{get isActive(){return this._isActive}constructor(n,o,i,s,a){this.router=n,this.element=o,this.renderer=i,this.cdr=s,this.link=a,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new Ee,this.routerEventsSubscription=n.events.subscribe(l=>{l instanceof Fn&&this.update()})}ngAfterContentInit(){V(this.links.changes,V(null)).pipe(Rr()).subscribe(n=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const n=[...this.links.toArray(),this.link].filter(o=>!!o).map(o=>o.onChanges);this.linkInputChangesSubscription=Ne(n).pipe(Rr()).subscribe(o=>{this._isActive!==this.isLinkActive(this.router)(o)&&this.update()})}set routerLinkActive(n){const o=Array.isArray(n)?n:n.split(" ");this.classes=o.filter(i=>!!i)}ngOnChanges(n){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const n=this.hasActiveLinks();this._isActive!==n&&(this._isActive=n,this.cdr.markForCheck(),this.classes.forEach(o=>{n?this.renderer.addClass(this.element.nativeElement,o):this.renderer.removeClass(this.element.nativeElement,o)}),n&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(n))})}isLinkActive(n){const o=function sL(e){return!!e.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return i=>!!i.urlTree&&n.isActive(i.urlTree,o)}hasActiveLinks(){const n=this.isLinkActive(this.router);return this.link&&n(this.link)||this.links.some(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(St),I(bt),I(Mn),I(tl),I(pn,8))},e.\u0275dir=B({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(n,o,i){if(1&n&&K_(i,pn,5),2&n){let s;J_(s=function eC(){return function zR(e,t){return e[nn].queries[t].queryList}(M(),dg())}())&&(o.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Nt]}),t})();class Gb{}let aL=(()=>{var e;class t{constructor(n,o,i,s,a){this.router=n,this.injector=i,this.preloadingStrategy=s,this.loader=a}setUpPreloading(){this.subscription=this.router.events.pipe(Xt(n=>n instanceof Fn),Ao(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(n,o){const i=[];for(const s of o){s.providers&&!s._injector&&(s._injector=Od(s.providers,n,`Route: ${s.path}`));const a=s._injector??n,l=s._loadedInjector??a;(s.loadChildren&&!s._loadedRoutes&&void 0===s.canLoad||s.loadComponent&&!s._loadedComponent)&&i.push(this.preloadConfig(a,s)),(s.children||s._loadedRoutes)&&i.push(this.processRoutes(l,s.children??s._loadedRoutes))}return Ne(i).pipe(Rr())}preloadConfig(n,o){return this.preloadingStrategy.preload(o,()=>{let i;i=o.loadChildren&&void 0===o.canLoad?this.loader.loadChildren(n,o):V(null);const s=i.pipe(Ve(a=>null===a?V(void 0):(o._loadedRoutes=a.routes,o._loadedInjector=a.injector,this.processRoutes(a.injector??n,a.routes))));return o.loadComponent&&!o._loadedComponent?Ne([s,this.loader.loadComponent(o)]).pipe(Rr()):s})}}return(e=t).\u0275fac=function(n){return new(n||e)(F(St),F(DC),F(Dt),F(Gb),F(ah))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const lh=new x("");let zb=(()=>{var e;class t{constructor(n,o,i,s,a={}){this.urlSerializer=n,this.transitions=o,this.viewportScroller=i,this.zone=s,this.options=a,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},a.scrollPositionRestoration=a.scrollPositionRestoration||"disabled",a.anchorScrolling=a.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof Al?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=n.navigationTrigger,this.restoredId=n.restoredState?n.restoredState.navigationId:0):n instanceof Fn?(this.lastId=n.id,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.urlAfterRedirects).fragment)):n instanceof No&&0===n.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof mb&&(n.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(n.position):n.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(n.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(n,o){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new mb(n,"popstate"===this.lastSource?this.store[this.restoredId]:null,o))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}}return(e=t).\u0275fac=function(n){!function pv(){throw new Error("invalid")}()},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function Vn(e,t){return{\u0275kind:e,\u0275providers:t}}function Wb(){const e=A(wt);return t=>{const r=e.get(Io);if(t!==r.components[0])return;const n=e.get(St),o=e.get(Zb);1===e.get(ch)&&n.initialNavigation(),e.get(Yb,null,Y.Optional)?.setUpPreloading(),e.get(lh,null,Y.Optional)?.init(),n.resetRootComponentType(r.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}const Zb=new x("",{factory:()=>new Vt}),ch=new x("",{providedIn:"root",factory:()=>1}),Yb=new x("");function dL(e){return Vn(0,[{provide:Yb,useExisting:aL},{provide:Gb,useExisting:e}])}const Qb=new x("ROUTER_FORROOT_GUARD"),hL=[hf,{provide:rs,useClass:$f},St,cs,{provide:Ir,useFactory:function qb(e){return e.routerState.root},deps:[St]},ah,[]];function pL(){return new TC("Router",St)}let Xb=(()=>{var e;class t{constructor(n){}static forRoot(n,o){return{ngModule:t,providers:[hL,[],{provide:Lo,multi:!0,useValue:n},{provide:Qb,useFactory:yL,deps:[[St,new ta,new na]]},{provide:Vl,useValue:o||{}},o?.useHash?{provide:Dr,useClass:MO}:{provide:Dr,useClass:rD},{provide:lh,useFactory:()=>{const e=A($P),t=A(ge),r=A(Vl),n=A(Ll),o=A(rs);return r.scrollOffset&&e.setOffset(r.scrollOffset),new zb(o,n,e,t,r)}},o?.preloadingStrategy?dL(o.preloadingStrategy).\u0275providers:[],{provide:TC,multi:!0,useFactory:pL},o?.initialNavigation?_L(o):[],o?.bindToComponentInputs?Vn(8,[wb,{provide:Nl,useExisting:wb}]).\u0275providers:[],[{provide:Jb,useFactory:Wb},{provide:tf,multi:!0,useExisting:Jb}]]}}static forChild(n){return{ngModule:t,providers:[{provide:Lo,multi:!0,useValue:n}]}}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Qb,8))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function yL(e){return"guarded"}function _L(e){return["disabled"===e.initialNavigation?Vn(3,[{provide:Wd,multi:!0,useFactory:()=>{const t=A(St);return()=>{t.setUpLocationChangeListener()}}},{provide:ch,useValue:2}]).\u0275providers:[],"enabledBlocking"===e.initialNavigation?Vn(2,[{provide:ch,useValue:0},{provide:Wd,multi:!0,deps:[wt],useFactory:t=>{const r=t.get(wO,Promise.resolve());return()=>r.then(()=>new Promise(n=>{const o=t.get(St),i=t.get(Zb);Ub(o,()=>{n(!0)}),t.get(Ll).afterPreactivation=()=>(n(!0),i.closed?V(void 0):i),o.initialNavigation()}))}}]).\u0275providers:[]]}const Jb=new x(""),DL=function(){return["/pro"]};let bL=(()=>{var e;class t{constructor(){this.years=(new Date).getFullYear()-2009}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-footer"]],standalone:!0,features:[Mt],decls:94,vars:3,consts:[[1,"container-fluid","mt-5"],[1,"p-5"],[1,"container"],[1,"row"],[1,"col-xs-12","col-md-4","text-center"],["src","resources/portrait_600.jpg","alt","Portrait",1,"img-fluid","img-thumbnail","mb-5",2,"max-height","300px"],[1,"col-xs-12","col-md-8"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[3,"routerLink"],[1,"col-md-3","offset-md-2"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ","target","_blank"],[1,"col-md-4","mt-4","mt-md-0"],["href","https://www.nuget.org/packages/ReportGenerator","target","_blank"],["href","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool","target","_blank"],["href","https://www.nuget.org/packages/ReportGenerator.Core","target","_blank"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col-md-3","mt-4","mt-md-0"],[1,"fa-brands","fa-github"],["href","https://twitter.com/danielpalme","target","_blank"],[1,"fa-brands","fa-twitter"],["href","https://www.palmmedia.de/Privacy","target","_blank"],["href","https://www.palmmedia.de/Imprint","target","_blank"]],template:function(n,o){1&n&&(h(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),v(5,"img",5),p(),h(6,"div",6)(7,"h2"),f(8,"Who's behind"),p(),h(9,"p"),f(10,"My name is Daniel Palme. I'm a software developer from Germany."),p(),h(11,"p"),f(12," Back in 2009 I wanted to create a code coverage report based on "),h(13,"i"),f(14,"PartCover"),p(),f(15," files."),v(16,"br"),f(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),v(18,"br"),f(19),h(20,"i"),f(21,"ReportGenerator"),p(),f(22,". "),p(),h(23,"p"),f(24," You can support the ongoing maintenance by becoming a "),v(25,"i",7),f(26,"\xa0"),h(27,"a",8),f(28,"GitHub sponsor"),p(),f(29," or by buying a "),h(30,"a",9),f(31,"PRO license"),p(),f(32,". "),p()()()()(),h(33,"div",2)(34,"div",3),v(35,"hr"),p()(),h(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),f(42,"GitHub"),p()(),h(43,"a",11),f(44,"Source code"),p(),v(45,"br"),h(46,"a",12),f(47,"Wiki"),p(),v(48,"br"),h(49,"a",13),f(50,"FAQ"),p()(),h(51,"div",14)(52,"p")(53,"b"),f(54,"Download"),p()(),h(55,"i"),f(56,"NuGet"),p(),v(57,"br"),h(58,"a",15),f(59,"ReportGenerator"),p(),v(60,"br"),h(61,"a",16),f(62,"dotnet-reportgenerator-globaltool"),p(),v(63,"br"),h(64,"a",17),f(65,"ReportGenerator.Core"),p(),v(66,"br")(67,"br"),h(68,"i"),f(69,"Integration"),p(),v(70,"br"),h(71,"a",18),f(72,"GitHub actions"),p(),v(73,"br"),h(74,"a",19),f(75,"Azure DevOps"),p()(),h(76,"div",20)(77,"p")(78,"b"),f(79,"Community"),p()(),h(80,"a",11),v(81,"i",21),f(82," GitHub"),p(),v(83,"br"),h(84,"a",22),v(85,"i",23),f(86," Twitter"),p(),v(87,"br")(88,"br"),h(89,"a",24),f(90,"Privacy"),p(),v(91,"br"),h(92,"a",25),f(93,"Imprint"),p()()()()()()),2&n&&(_(19),xn(" Fast forward ",o.years," years, I'm still maintaining "),_(11),w("routerLink",K(2,DL)))},dependencies:[pn],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}"]}),t})();const Kb=function(){return["/"]},wL=function(e){return{show:e}},Vo=function(){return["link-active"]},ew=function(){return{exact:!0}},EL=function(){return["/features"]},ML=function(){return["/getstarted"]},IL=function(){return["/usage"]},SL=function(){return["/contact"]},TL=function(){return["/pro"]};let AL=(()=>{var e;class t{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[Mt],decls:42,vars:34,consts:[[1,"mb-5"],[1,"navbar","fixed-top","navbar-expand-sm","navbar-toggleable-sm","navbar-light","bg-white","border-bottom","box-shadow","mb-3"],[1,"container-xxl","flex-wrap","flex-md-nowrap"],[1,"navbar-brand",3,"routerLink"],["src","resources/logo.svg","height","40","alt","Icon",1,"me-2"],[1,"d-sm-none","d-md-none","d-lg-inline","ms-2"],["type","button","data-toggle","collapse","data-target",".navbar-collapse","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse","collapse","d-sm-inline-flex",3,"ngClass"],[1,"navbar-nav","flex-grow"],[1,"nav-item",3,"routerLinkActive","routerLinkActiveOptions"],[1,"nav-link","text-dark",3,"routerLink"],[1,"nav-item",3,"routerLinkActive"],[1,"nav-link","text-dark","text-nowrap",3,"routerLink"],[1,"pro-button"],[1,"d-md-none","text-secondary"],[1,"navbar-nav","flex-row","flex-wrap","ms-md-auto","d-sm-none","d-md-flex"],[1,"nav-item","col-6","col-md-auto"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank","title","GitHub",1,"nav-link","text-dark"],[1,"fa-brands","fa-github"],[1,"d-inline","d-sm-none","ms-2"],["href","https://twitter.com/danielpalme","target","_blank","title","Twitter",1,"nav-link","text-dark"],[1,"fa-brands","fa-twitter"]],template:function(n,o){1&n&&(h(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),v(4,"img",4),h(5,"span",5),f(6,"ReportGenerator"),p()(),h(7,"button",6),R("click",function(){return o.toggle()}),v(8,"span",7),p(),h(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),f(13,"Home"),p()(),h(14,"li",10)(15,"a",11),f(16,"Features"),p()(),h(17,"li",12)(18,"a",13),f(19,"Get started"),p()(),h(20,"li",12)(21,"a",11),f(22,"Usage"),p()(),h(23,"li",12)(24,"a",11),f(25,"Contact"),p()(),h(26,"li",12)(27,"a",11)(28,"span",14),f(29,"PRO"),p()()()(),v(30,"hr",15),h(31,"ul",16)(32,"li",17)(33,"a",18),v(34,"i",19),h(35,"span",20),f(36,"GitHub"),p()()(),h(37,"li",17)(38,"a",21),v(39,"i",22),h(40,"span",20),f(41,"Twitter"),p()()()()()()()()),2&n&&(_(3),w("routerLink",K(17,Kb)),_(4),zt("aria-expanded",o.isExpanded),_(2),w("ngClass",$i(18,wL,o.isExpanded)),_(2),w("routerLinkActive",K(20,Vo))("routerLinkActiveOptions",K(21,ew)),_(1),w("routerLink",K(22,Kb)),_(2),w("routerLinkActive",K(23,Vo))("routerLinkActiveOptions",K(24,ew)),_(1),w("routerLink",K(25,EL)),_(2),w("routerLinkActive",K(26,Vo)),_(1),w("routerLink",K(27,ML)),_(2),w("routerLinkActive",K(28,Vo)),_(1),w("routerLink",K(29,IL)),_(2),w("routerLinkActive",K(30,Vo)),_(1),w("routerLink",K(31,SL)),_(2),w("routerLinkActive",K(32,Vo)),_(1),w("routerLink",K(33,TL)))},dependencies:[pn,ml,$b],styles:[".box-shadow[_ngcontent-%COMP%]{box-shadow:0 .25rem .75rem #0000000d}@keyframes _ngcontent-%COMP%_pro-button-animation{0%{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}50%{background-color:vvar(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}to{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}}.pro-button[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_pro-button-animation;animation-duration:2s;animation-iteration-count:2}.pro-button[_ngcontent-%COMP%]:hover, .link-active[_ngcontent-%COMP%] .pro-button[_ngcontent-%COMP%]{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}.nav-link[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500}.nav-link[_ngcontent-%COMP%]:hover{text-decoration:underline;text-underline-offset:2px}.link-active[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--rg-primary-hover-color)!important;font-weight:400}"]}),t})(),xL=(()=>{var e;class t{constructor(n,o,i){this.dom=n,this.router=o,this.activatedRoute=i}ngOnInit(){this.router.events.pipe(Xt(n=>n instanceof Fn),ee(()=>this.activatedRoute),ee(n=>{for(;n.firstChild;)n=n.firstChild;return n}),Xt(n=>"primary"===n.outlet),Ve(n=>n.data)).subscribe(n=>{const o=`${window.location.protocol}//${window.location.hostname}`;this.updateCanonicalUrl(n.canonical?o+n.canonical:o+this.router.url)})}updateCanonicalUrl(n){const o=this.dom.getElementsByTagName("head")[0];var i=this.dom.querySelector("link[rel='canonical']")||null;null==i&&(i=this.dom.createElement("link"),o.appendChild(i)),i.setAttribute("rel","canonical"),i.setAttribute("href",n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(pt),I(St),I(Ir))},e.\u0275cmp=vt({type:e,selectors:[["app-root"]],standalone:!0,features:[Mt],decls:3,vars:0,template:function(n,o){1&n&&v(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[AL,th,bL],encapsulation:2}),t})(),tw=(()=>{var e;class t{constructor(n,o){this._renderer=n,this._elementRef=o,this.onChange=i=>{},this.onTouched=()=>{}}setProperty(n,o){this._renderer.setProperty(this._elementRef.nativeElement,n,o)}registerOnTouched(n){this.onTouched=n}registerOnChange(n){this.onChange=n}setDisabledState(n){this.setProperty("disabled",n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt))},e.\u0275dir=B({type:e}),t})(),Sr=(()=>{var e;class t extends tw{}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,features:[le]}),t})();const gn=new x("NgValueAccessor"),OL={provide:gn,useExisting:fe(()=>jo),multi:!0},kL=new x("CompositionEventMode");let jo=(()=>{var e;class t extends tw{constructor(n,o,i){super(n,o),this._compositionMode=i,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function PL(){const e=Xn()?Xn().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(n){this.setProperty("value",n??"")}_handleInput(n){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(n)}_compositionStart(){this._composing=!0}_compositionEnd(n){this._composing=!1,this._compositionMode&&this.onChange(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt),I(kL,8))},e.\u0275dir=B({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(n,o){1&n&&R("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[De([OL]),le]}),t})();function er(e){return null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}const Ye=new x("NgValidators"),tr=new x("NgAsyncValidators"),FL=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;function sw(e){return er(e.value)?{required:!0}:null}function lw(e){return er(e.value)||FL.test(e.value)?null:{email:!0}}function jl(e){return null}function fw(e){return null!=e}function hw(e){return Fi(e)?Ne(e):e}function pw(e){let t={};return e.forEach(r=>{t=null!=r?{...t,...r}:t}),0===Object.keys(t).length?null:t}function gw(e,t){return t.map(r=>r(e))}function mw(e){return e.map(t=>function LL(e){return!e.validate}(t)?t:r=>t.validate(r))}function uh(e){return null!=e?function vw(e){if(!e)return null;const t=e.filter(fw);return 0==t.length?null:function(r){return pw(gw(r,t))}}(mw(e)):null}function dh(e){return null!=e?function yw(e){if(!e)return null;const t=e.filter(fw);return 0==t.length?null:function(r){return function RL(...e){const t=op(e),{args:r,keys:n}=SD(e),o=new Ie(i=>{const{length:s}=r;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=g},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(n?AD(n,a):a),i.complete())}))}});return t?o.pipe(TD(t)):o}(gw(r,t).map(hw)).pipe(ee(pw))}}(mw(e)):null}function _w(e,t){return null===e?[t]:Array.isArray(e)?[...e,t]:[e,t]}function fh(e){return e?Array.isArray(e)?e:[e]:[]}function Hl(e,t){return Array.isArray(e)?e.includes(t):e===t}function bw(e,t){const r=fh(t);return fh(e).forEach(o=>{Hl(r,o)||r.push(o)}),r}function ww(e,t){return fh(t).filter(r=>!Hl(e,r))}class Ew{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=uh(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=dh(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control&&this.control.reset(t)}hasError(t,r){return!!this.control&&this.control.hasError(t,r)}getError(t,r){return this.control?this.control.getError(t,r):null}}class ot extends Ew{get formDirective(){return null}get path(){return null}}class nr extends Ew{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class Mw{constructor(t){this._cd=t}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Ul=(()=>{var e;class t extends Mw{constructor(n){super(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(nr,2))},e.\u0275dir=B({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(n,o){2&n&&Ba("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[le]}),t})(),Bl=(()=>{var e;class t extends Mw{constructor(n){super(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ot,10))},e.\u0275dir=B({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(n,o){2&n&&Ba("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)("ng-submitted",o.isSubmitted)},features:[le]}),t})();const ms="VALID",Gl="INVALID",Ho="PENDING",vs="DISABLED";function gh(e){return(zl(e)?e.validators:e)||null}function mh(e,t){return(zl(t)?t.asyncValidators:e)||null}function zl(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class Aw{constructor(t,r){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(t),this._assignAsyncValidators(r)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===ms}get invalid(){return this.status===Gl}get pending(){return this.status==Ho}get disabled(){return this.status===vs}get enabled(){return this.status!==vs}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(bw(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(bw(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(ww(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(ww(t,this._rawAsyncValidators))}hasValidator(t){return Hl(this._rawValidators,t)}hasAsyncValidator(t){return Hl(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(r=>{r.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=Ho,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const r=this._parentMarkedDirty(t.onlySelf);this.status=vs,this.errors=null,this._forEachChild(n=>{n.disable({...t,onlySelf:!0})}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...t,skipPristineCheck:r}),this._onDisabledChange.forEach(n=>n(!0))}enable(t={}){const r=this._parentMarkedDirty(t.onlySelf);this.status=ms,this._forEachChild(n=>{n.enable({...t,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors({...t,skipPristineCheck:r}),this._onDisabledChange.forEach(n=>n(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===ms||this.status===Ho)&&this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(r=>r._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?vs:ms}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=Ho,this._hasOwnPendingAsyncValidator=!0;const r=hw(this.asyncValidator(this));this._asyncValidationSubscription=r.subscribe(n=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(n,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,r={}){this.errors=t,this._updateControlsErrors(!1!==r.emitEvent)}get(t){let r=t;return null==r||(Array.isArray(r)||(r=r.split(".")),0===r.length)?null:r.reduce((n,o)=>n&&n._find(o),this)}getError(t,r){const n=r?this.get(r):this;return n&&n.errors?n.errors[t]:null}hasError(t,r){return!!this.getError(t,r)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Ee,this.statusChanges=new Ee}_calculateStatus(){return this._allControlsDisabled()?vs:this.errors?Gl:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Ho)?Ho:this._anyControlsHaveStatus(Gl)?Gl:ms}_anyControlsHaveStatus(t){return this._anyControls(r=>r.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){zl(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=function UL(e){return Array.isArray(e)?uh(e):e||null}(this._rawValidators)}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=function BL(e){return Array.isArray(e)?dh(e):e||null}(this._rawAsyncValidators)}}class vh extends Aw{constructor(t,r,n){super(gh(r),mh(n,r)),this.controls=t,this._initObservables(),this._setUpdateStrategy(r),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(t,r){return this.controls[t]?this.controls[t]:(this.controls[t]=r,r.setParent(this),r._registerOnCollectionChange(this._onCollectionChange),r)}addControl(t,r,n={}){this.registerControl(t,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(t,r={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}setControl(t,r,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],r&&this.registerControl(t,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,r={}){(function Tw(e,t,r){e._forEachChild((n,o)=>{if(void 0===r[o])throw new S(1002,"")})})(this,0,t),Object.keys(t).forEach(n=>{(function Sw(e,t,r){const n=e.controls;if(!(t?Object.keys(n):n).length)throw new S(1e3,"");if(!n[r])throw new S(1001,"")})(this,!0,n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r)}patchValue(t,r={}){null!=t&&(Object.keys(t).forEach(n=>{const o=this.controls[n];o&&o.patchValue(t[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r))}reset(t={},r={}){this._forEachChild((n,o)=>{n.reset(t[o],{onlySelf:!0,emitEvent:r.emitEvent})}),this._updatePristine(r),this._updateTouched(r),this.updateValueAndValidity(r)}getRawValue(){return this._reduceChildren({},(t,r,n)=>(t[n]=r.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(r,n)=>!!n._syncPendingControls()||r);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){Object.keys(this.controls).forEach(r=>{const n=this.controls[r];n&&t(n,r)})}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const[r,n]of Object.entries(this.controls))if(this.contains(r)&&t(n))return!0;return!1}_reduceValue(){return this._reduceChildren({},(r,n,o)=>((n.enabled||this.disabled)&&(r[o]=n.value),r))}_reduceChildren(t,r){let n=t;return this._forEachChild((o,i)=>{n=r(n,o,i)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(t){return this.controls.hasOwnProperty(t)?this.controls[t]:null}}const Uo=new x("CallSetDisabledState",{providedIn:"root",factory:()=>ql}),ql="always";function ys(e,t,r=ql){yh(e,t),t.valueAccessor.writeValue(e.value),(e.disabled||"always"===r)&&t.valueAccessor.setDisabledState?.(e.disabled),function zL(e,t){t.valueAccessor.registerOnChange(r=>{e._pendingValue=r,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&xw(e,t)})}(e,t),function WL(e,t){const r=(n,o)=>{t.valueAccessor.writeValue(n),o&&t.viewToModelUpdate(n)};e.registerOnChange(r),t._registerOnDestroy(()=>{e._unregisterOnChange(r)})}(e,t),function qL(e,t){t.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&xw(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),function GL(e,t){if(t.valueAccessor.setDisabledState){const r=n=>{t.valueAccessor.setDisabledState(n)};e.registerOnDisabledChange(r),t._registerOnDestroy(()=>{e._unregisterOnDisabledChange(r)})}}(e,t)}function Yl(e,t){e.forEach(r=>{r.registerOnValidatorChange&&r.registerOnValidatorChange(t)})}function yh(e,t){const r=function Cw(e){return e._rawValidators}(e);null!==t.validator?e.setValidators(_w(r,t.validator)):"function"==typeof r&&e.setValidators([r]);const n=function Dw(e){return e._rawAsyncValidators}(e);null!==t.asyncValidator?e.setAsyncValidators(_w(n,t.asyncValidator)):"function"==typeof n&&e.setAsyncValidators([n]);const o=()=>e.updateValueAndValidity();Yl(t._rawValidators,o),Yl(t._rawAsyncValidators,o)}function xw(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}const JL={provide:ot,useExisting:fe(()=>Bo)},_s=(()=>Promise.resolve())();let Bo=(()=>{var e;class t extends ot{constructor(n,o,i){super(),this.callSetDisabledState=i,this.submitted=!1,this._directives=new Set,this.ngSubmit=new Ee,this.form=new vh({},uh(n),dh(o))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(n){_s.then(()=>{const o=this._findContainer(n.path);n.control=o.registerControl(n.name,n.control),ys(n.control,n,this.callSetDisabledState),n.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(n)})}getControl(n){return this.form.get(n.path)}removeControl(n){_s.then(()=>{const o=this._findContainer(n.path);o&&o.removeControl(n.name),this._directives.delete(n)})}addFormGroup(n){_s.then(()=>{const o=this._findContainer(n.path),i=new vh({});(function Rw(e,t){yh(e,t)})(i,n),o.registerControl(n.name,i),i.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(n){_s.then(()=>{const o=this._findContainer(n.path);o&&o.removeControl(n.name)})}getFormGroup(n){return this.form.get(n.path)}updateModel(n,o){_s.then(()=>{this.form.get(n.path).setValue(o)})}setValue(n){this.control.setValue(n)}onSubmit(n){return this.submitted=!0,function Nw(e,t){e._syncPendingControls(),t.forEach(r=>{const n=r.control;"submit"===n.updateOn&&n._pendingChange&&(r.viewToModelUpdate(n._pendingValue),n._pendingChange=!1)})}(this.form,this._directives),this.ngSubmit.emit(n),"dialog"===n?.target?.method}onReset(){this.resetForm()}resetForm(n=void 0){this.form.reset(n),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(n){return n.pop(),n.length?this.form.get(n):this.form}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Ye,10),I(tr,10),I(Uo,8))},e.\u0275dir=B({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(n,o){1&n&&R("submit",function(s){return o.onSubmit(s)})("reset",function(){return o.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[De([JL]),le]}),t})();function Ow(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}function Pw(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const kw=class extends Aw{constructor(t=null,r,n){super(gh(r),mh(n,r)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(t),this._setUpdateStrategy(r),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),zl(r)&&(r.nonNullable||r.initialValueIsDefault)&&(this.defaultValue=Pw(t)?t.value:t)}setValue(t,r={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==r.emitModelToViewChange&&this._onChange.forEach(n=>n(this.value,!1!==r.emitViewToModelChange)),this.updateValueAndValidity(r)}patchValue(t,r={}){this.setValue(t,r)}reset(t=this.defaultValue,r={}){this._applyFormState(t),this.markAsPristine(r),this.markAsUntouched(r),this.setValue(this.value,r),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){Ow(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){Ow(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){Pw(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}},tV={provide:nr,useExisting:fe(()=>Cs)},Vw=(()=>Promise.resolve())();let Cs=(()=>{var e;class t extends nr{constructor(n,o,i,s,a,l){super(),this._changeDetectorRef=a,this.callSetDisabledState=l,this.control=new kw,this._registered=!1,this.name="",this.update=new Ee,this._parent=n,this._setValidators(o),this._setAsyncValidators(i),this.valueAccessor=function Dh(e,t){if(!t)return null;let r,n,o;return Array.isArray(t),t.forEach(i=>{i.constructor===jo?r=i:function QL(e){return Object.getPrototypeOf(e.constructor)===Sr}(i)?n=i:o=i}),o||n||r||null}(0,s)}ngOnChanges(n){if(this._checkForErrors(),!this._registered||"name"in n){if(this._registered&&(this._checkName(),this.formDirective)){const o=n.name.previousValue;this.formDirective.removeControl({name:o,path:this._getPath(o)})}this._setUpControl()}"isDisabled"in n&&this._updateDisabled(n),function Ch(e,t){if(!e.hasOwnProperty("model"))return!1;const r=e.model;return!!r.isFirstChange()||!Object.is(t,r.currentValue)}(n,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(n){this.viewModel=n,this.update.emit(n)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){ys(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(n){Vw.then(()=>{this.control.setValue(n,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(n){const o=n.isDisabled.currentValue,i=0!==o&&So(o);Vw.then(()=>{i&&!this.control.disabled?this.control.disable():!i&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(n){return this._parent?function Wl(e,t){return[...t.path,e]}(n,this._parent):[n]}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ot,9),I(Ye,10),I(tr,10),I(gn,10),I(tl,8),I(Uo,8))},e.\u0275dir=B({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[De([tV]),le,Nt]}),t})(),Xl=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})();const rV={provide:gn,useExisting:fe(()=>bh),multi:!0};let Hw=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})(),oV=(()=>{var e;class t{constructor(){this._accessors=[]}add(n,o){this._accessors.push([n,o])}remove(n){for(let o=this._accessors.length-1;o>=0;--o)if(this._accessors[o][1]===n)return void this._accessors.splice(o,1)}select(n){this._accessors.forEach(o=>{this._isSameGroup(o,n)&&o[1]!==n&&o[1].fireUncheck(n.value)})}_isSameGroup(n,o){return!!n[0].control&&n[0]._parent===o._control._parent&&n[1].name===o.name}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:Hw}),t})(),bh=(()=>{var e;class t extends Sr{constructor(n,o,i,s){super(n,o),this._registry=i,this._injector=s,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=A(Uo,{optional:!0})??ql}ngOnInit(){this._control=this._injector.get(nr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(n){this._state=n===this.value,this.setProperty("checked",this._state)}registerOnChange(n){this._fn=n,this.onChange=()=>{n(this.value),this._registry.select(this)}}setDisabledState(n){(this.setDisabledStateFired||n||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",n),this.setDisabledStateFired=!0}fireUncheck(n){this.writeValue(n)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt),I(oV),I(wt))},e.\u0275dir=B({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(n,o){1&n&&R("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[De([rV]),le]}),t})();const dV={provide:gn,useExisting:fe(()=>Jl),multi:!0};function qw(e,t){return null==e?`${t}`:(t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}let Jl=(()=>{var e;class t extends Sr{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){this.value=n;const i=qw(this._getOptionId(n),n);this.setProperty("value",i)}registerOnChange(n){this.onChange=o=>{this.value=this._getOptionValue(o),n(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(n){for(const o of this._optionMap.keys())if(this._compareWith(this._optionMap.get(o),n))return o;return null}_getOptionValue(n){const o=function fV(e){return e.split(":")[0]}(n);return this._optionMap.has(o)?this._optionMap.get(o):n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(n,o){1&n&&R("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[De([dV]),le]}),t})(),Ww=(()=>{var e;class t{constructor(n,o,i){this._element=n,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption())}set ngValue(n){null!=this._select&&(this._select._optionMap.set(this.id,n),this._setElementValue(qw(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._setElementValue(n),this._select&&this._select.writeValue(this._select.value)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bt),I(Mn),I(Jl,9))},e.\u0275dir=B({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();const hV={provide:gn,useExisting:fe(()=>Ih),multi:!0};function Zw(e,t){return null==e?`${t}`:("string"==typeof t&&(t=`'${t}'`),t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}let Ih=(()=>{var e;class t extends Sr{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){let o;if(this.value=n,Array.isArray(n)){const i=n.map(s=>this._getOptionId(s));o=(s,a)=>{s._setSelected(i.indexOf(a.toString())>-1)}}else o=(i,s)=>{i._setSelected(!1)};this._optionMap.forEach(o)}registerOnChange(n){this.onChange=o=>{const i=[],s=o.selectedOptions;if(void 0!==s){const a=s;for(let l=0;l{var e;class t{constructor(n,o,i){this._element=n,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption(this))}set ngValue(n){null!=this._select&&(this._value=n,this._setElementValue(Zw(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._select?(this._value=n,this._setElementValue(Zw(this.id,n)),this._select.writeValue(this._select.value)):this._setElementValue(n)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}_setSelected(n){this._renderer.setProperty(this._element.nativeElement,"selected",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bt),I(Mn),I(Ih,9))},e.\u0275dir=B({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();let Tr=(()=>{var e;class t{constructor(){this._validator=jl}ngOnChanges(n){if(this.inputName in n){const o=this.normalizeInput(n[this.inputName].currentValue);this._enabled=this.enabled(o),this._validator=this._enabled?this.createValidator(o):jl,this._onChange&&this._onChange()}}validate(n){return this._validator(n)}registerOnValidatorChange(n){this._onChange=n}enabled(n){return null!=n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,features:[Nt]}),t})();const vV={provide:Ye,useExisting:fe(()=>$o),multi:!0};let $o=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=So,this.createValidator=n=>sw}enabled(n){return n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(n,o){2&n&&zt("required",o._enabled?"":null)},inputs:{required:"required"},features:[De([vV]),le]}),t})();const _V={provide:Ye,useExisting:fe(()=>Kl),multi:!0};let Kl=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=So,this.createValidator=n=>lw}enabled(n){return n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[De([_V]),le]}),t})();const DV={provide:Ye,useExisting:fe(()=>Sh),multi:!0};let Sh=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=n=>function Qw(e){return"number"==typeof e?e:parseInt(e,10)}(n),this.createValidator=n=>function uw(e){return t=>function rw(e){return null!=e&&"number"==typeof e.length}(t.value)&&t.value.length>e?{maxlength:{requiredLength:e,actualLength:t.value.length}}:null}(n)}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(n,o){2&n&&zt("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[De([DV]),le]}),t})();const bV={provide:Ye,useExisting:fe(()=>Th),multi:!0};let Th=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=n=>n,this.createValidator=n=>function dw(e){if(!e)return jl;let t,r;return"string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),t=new RegExp(r)):(r=e.toString(),t=e),n=>{if(er(n.value))return null;const o=n.value;return t.test(o)?null:{pattern:{requiredPattern:r,actualValue:o}}}}(n)}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(n,o){2&n&&zt("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[De([bV]),le]}),t})(),wV=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[Hw]}),t})(),ec=(()=>{var e;class t{static withConfig(n){return{ngModule:t,providers:[{provide:Uo,useValue:n.callSetDisabledState??ql}]}}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[wV]}),t})();class tc{}class nc{}class mn{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?"string"==typeof t?this.lazyInit=()=>{this.headers=new Map,t.split("\n").forEach(r=>{const n=r.indexOf(":");if(n>0){const o=r.slice(0,n),i=o.toLowerCase(),s=r.slice(n+1).trim();this.maybeSetNormalizedName(o,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:typeof Headers<"u"&&t instanceof Headers?(this.headers=new Map,t.forEach((r,n)=>{this.setHeaderEntries(n,r)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(t).forEach(([r,n])=>{this.setHeaderEntries(r,n)})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const r=this.headers.get(t.toLowerCase());return r&&r.length>0?r[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,r){return this.clone({name:t,value:r,op:"a"})}set(t,r){return this.clone({name:t,value:r,op:"s"})}delete(t,r){return this.clone({name:t,value:r,op:"d"})}maybeSetNormalizedName(t,r){this.normalizedNames.has(r)||this.normalizedNames.set(r,t)}init(){this.lazyInit&&(this.lazyInit instanceof mn?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(r=>{this.headers.set(r,t.headers.get(r)),this.normalizedNames.set(r,t.normalizedNames.get(r))})}clone(t){const r=new mn;return r.lazyInit=this.lazyInit&&this.lazyInit instanceof mn?this.lazyInit:this,r.lazyUpdate=(this.lazyUpdate||[]).concat([t]),r}applyUpdate(t){const r=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,r);const o=("a"===t.op?this.headers.get(r):void 0)||[];o.push(...n),this.headers.set(r,o);break;case"d":const i=t.value;if(i){let s=this.headers.get(r);if(!s)return;s=s.filter(a=>-1===i.indexOf(a)),0===s.length?(this.headers.delete(r),this.normalizedNames.delete(r)):this.headers.set(r,s)}else this.headers.delete(r),this.normalizedNames.delete(r)}}setHeaderEntries(t,r){const n=(Array.isArray(r)?r:[r]).map(i=>i.toString()),o=t.toLowerCase();this.headers.set(o,n),this.maybeSetNormalizedName(t,o)}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(r=>t(this.normalizedNames.get(r),this.headers.get(r)))}}class MV{encodeKey(t){return nE(t)}encodeValue(t){return nE(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const SV=/%(\d[a-f0-9])/gi,TV={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function nE(e){return encodeURIComponent(e).replace(SV,(t,r)=>TV[r]??t)}function rc(e){return`${e}`}class rr{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new MV,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function IV(e,t){const r=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(o=>{const i=o.indexOf("="),[s,a]=-1==i?[t.decodeKey(o),""]:[t.decodeKey(o.slice(0,i)),t.decodeValue(o.slice(i+1))],l=r.get(s)||[];l.push(a),r.set(s,l)}),r}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(r=>{const n=t.fromObject[r],o=Array.isArray(n)?n.map(rc):[rc(n)];this.map.set(r,o)})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const r=this.map.get(t);return r?r[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,r){return this.clone({param:t,value:r,op:"a"})}appendAll(t){const r=[];return Object.keys(t).forEach(n=>{const o=t[n];Array.isArray(o)?o.forEach(i=>{r.push({param:n,value:i,op:"a"})}):r.push({param:n,value:o,op:"a"})}),this.clone(r)}set(t,r){return this.clone({param:t,value:r,op:"s"})}delete(t,r){return this.clone({param:t,value:r,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const r=this.encoder.encodeKey(t);return this.map.get(t).map(n=>r+"="+this.encoder.encodeValue(n)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const r=new rr({encoder:this.encoder});return r.cloneFrom=this.cloneFrom||this,r.updates=(this.updates||[]).concat(t),r}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const r=("a"===t.op?this.map.get(t.param):void 0)||[];r.push(rc(t.value)),this.map.set(t.param,r);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let n=this.map.get(t.param)||[];const o=n.indexOf(rc(t.value));-1!==o&&n.splice(o,1),n.length>0?this.map.set(t.param,n):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}class AV{constructor(){this.map=new Map}set(t,r){return this.map.set(t,r),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}has(t){return this.map.has(t)}keys(){return this.map.keys()}}function rE(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer}function oE(e){return typeof Blob<"u"&&e instanceof Blob}function iE(e){return typeof FormData<"u"&&e instanceof FormData}class Ds{constructor(t,r,n,o){let i;if(this.url=r,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function xV(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==n?n:null,i=o):i=n,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.context&&(this.context=i.context),i.params&&(this.params=i.params)),this.headers||(this.headers=new mn),this.context||(this.context=new AV),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=r;else{const a=r.indexOf("?");this.urlWithParams=r+(-1===a?"?":ad.set(g,t.setHeaders[g]),l)),t.setParams&&(c=Object.keys(t.setParams).reduce((d,g)=>d.set(g,t.setParams[g]),c)),new Ds(r,n,i,{params:c,headers:l,context:u,reportProgress:a,responseType:o,withCredentials:s})}}var Go=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}(Go||{});class Ah{constructor(t,r=200,n="OK"){this.headers=t.headers||new mn,this.status=void 0!==t.status?t.status:r,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class xh extends Ah{constructor(t={}){super(t),this.type=Go.ResponseHeader}clone(t={}){return new xh({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class zo extends Ah{constructor(t={}){super(t),this.type=Go.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new zo({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class sE extends Ah{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function Rh(e,t){return{body:t,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials}}let Nh=(()=>{var e;class t{constructor(n){this.handler=n}request(n,o,i={}){let s;if(n instanceof Ds)s=n;else{let c,u;c=i.headers instanceof mn?i.headers:new mn(i.headers),i.params&&(u=i.params instanceof rr?i.params:new rr({fromObject:i.params})),s=new Ds(n,o,void 0!==i.body?i.body:null,{headers:c,context:i.context,params:u,reportProgress:i.reportProgress,responseType:i.responseType||"json",withCredentials:i.withCredentials})}const a=V(s).pipe(Ao(c=>this.handler.handle(c)));if(n instanceof Ds||"events"===i.observe)return a;const l=a.pipe(Xt(c=>c instanceof zo));switch(i.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return l.pipe(ee(c=>{if(null!==c.body&&!(c.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return c.body}));case"blob":return l.pipe(ee(c=>{if(null!==c.body&&!(c.body instanceof Blob))throw new Error("Response is not a Blob.");return c.body}));case"text":return l.pipe(ee(c=>{if(null!==c.body&&"string"!=typeof c.body)throw new Error("Response is not a string.");return c.body}));default:return l.pipe(ee(c=>c.body))}case"response":return l;default:throw new Error(`Unreachable: unhandled observe type ${i.observe}}`)}}delete(n,o={}){return this.request("DELETE",n,o)}get(n,o={}){return this.request("GET",n,o)}head(n,o={}){return this.request("HEAD",n,o)}jsonp(n,o){return this.request("JSONP",n,{params:(new rr).append(o,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(n,o={}){return this.request("OPTIONS",n,o)}patch(n,o,i={}){return this.request("PATCH",n,Rh(i,o))}post(n,o,i={}){return this.request("POST",n,Rh(i,o))}put(n,o,i={}){return this.request("PUT",n,Rh(i,o))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(tc))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function cE(e,t){return t(e)}function OV(e,t){return(r,n)=>t.intercept(r,{handle:o=>e(o,n)})}const kV=new x(""),bs=new x(""),uE=new x("");function FV(){let e=null;return(t,r)=>{null===e&&(e=(A(kV,{optional:!0})??[]).reduceRight(OV,cE));const n=A(Xa),o=n.add();return e(t,r).pipe(Ki(()=>n.remove(o)))}}let dE=(()=>{var e;class t extends tc{constructor(n,o){super(),this.backend=n,this.injector=o,this.chain=null,this.pendingTasks=A(Xa)}handle(n){if(null===this.chain){const i=Array.from(new Set([...this.injector.get(bs),...this.injector.get(uE,[])]));this.chain=i.reduceRight((s,a)=>function PV(e,t,r){return(n,o)=>r.runInContext(()=>t(n,i=>e(i,o)))}(s,a,this.injector),cE)}const o=this.pendingTasks.add();return this.chain(n,i=>this.backend.handle(i)).pipe(Ki(()=>this.pendingTasks.remove(o)))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(nc),F(Dt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const HV=/^\)\]\}',?\n/;let hE=(()=>{var e;class t{constructor(n){this.xhrFactory=n}handle(n){if("JSONP"===n.method)throw new S(-2800,!1);const o=this.xhrFactory;return(o.\u0275loadImpl?Ne(o.\u0275loadImpl()):V(null)).pipe(Ht(()=>new Ie(s=>{const a=o.build();if(a.open(n.method,n.urlWithParams),n.withCredentials&&(a.withCredentials=!0),n.headers.forEach((b,E)=>a.setRequestHeader(b,E.join(","))),n.headers.has("Accept")||a.setRequestHeader("Accept","application/json, text/plain, */*"),!n.headers.has("Content-Type")){const b=n.detectContentTypeHeader();null!==b&&a.setRequestHeader("Content-Type",b)}if(n.responseType){const b=n.responseType.toLowerCase();a.responseType="json"!==b?b:"text"}const l=n.serializeBody();let c=null;const u=()=>{if(null!==c)return c;const b=a.statusText||"OK",E=new mn(a.getAllResponseHeaders()),D=function UV(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(a)||n.url;return c=new xh({headers:E,status:a.status,statusText:b,url:D}),c},d=()=>{let{headers:b,status:E,statusText:D,url:O}=u(),N=null;204!==E&&(N=typeof a.response>"u"?a.responseText:a.response),0===E&&(E=N?200:0);let Z=E>=200&&E<300;if("json"===n.responseType&&"string"==typeof N){const Ge=N;N=N.replace(HV,"");try{N=""!==N?JSON.parse(N):null}catch(Tt){N=Ge,Z&&(Z=!1,N={error:Tt,text:N})}}Z?(s.next(new zo({body:N,headers:b,status:E,statusText:D,url:O||void 0})),s.complete()):s.error(new sE({error:N,headers:b,status:E,statusText:D,url:O||void 0}))},g=b=>{const{url:E}=u(),D=new sE({error:b,status:a.status||0,statusText:a.statusText||"Unknown Error",url:E||void 0});s.error(D)};let m=!1;const y=b=>{m||(s.next(u()),m=!0);let E={type:Go.DownloadProgress,loaded:b.loaded};b.lengthComputable&&(E.total=b.total),"text"===n.responseType&&a.responseText&&(E.partialText=a.responseText),s.next(E)},C=b=>{let E={type:Go.UploadProgress,loaded:b.loaded};b.lengthComputable&&(E.total=b.total),s.next(E)};return a.addEventListener("load",d),a.addEventListener("error",g),a.addEventListener("timeout",g),a.addEventListener("abort",g),n.reportProgress&&(a.addEventListener("progress",y),null!==l&&a.upload&&a.upload.addEventListener("progress",C)),a.send(l),s.next({type:Go.Sent}),()=>{a.removeEventListener("error",g),a.removeEventListener("abort",g),a.removeEventListener("load",d),a.removeEventListener("timeout",g),n.reportProgress&&(a.removeEventListener("progress",y),null!==l&&a.upload&&a.upload.removeEventListener("progress",C)),a.readyState!==a.DONE&&a.abort()}})))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(bD))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Oh=new x("XSRF_ENABLED"),pE=new x("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),gE=new x("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class mE{}let GV=(()=>{var e;class t{constructor(n,o,i){this.doc=n,this.platform=o,this.cookieName=i,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const n=this.doc.cookie||"";return n!==this.lastCookieString&&(this.parseCount++,this.lastToken=hD(n,this.cookieName),this.lastCookieString=n),this.lastToken}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt),F(gr),F(pE))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function zV(e,t){const r=e.url.toLowerCase();if(!A(Oh)||"GET"===e.method||"HEAD"===e.method||r.startsWith("http://")||r.startsWith("https://"))return t(e);const n=A(mE).getToken(),o=A(gE);return null!=n&&!e.headers.has(o)&&(e=e.clone({headers:e.headers.set(o,n)})),t(e)}var or=function(e){return e[e.Interceptors=0]="Interceptors",e[e.LegacyInterceptors=1]="LegacyInterceptors",e[e.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",e[e.NoXsrfProtection=3]="NoXsrfProtection",e[e.JsonpSupport=4]="JsonpSupport",e[e.RequestsMadeViaParent=5]="RequestsMadeViaParent",e[e.Fetch=6]="Fetch",e}(or||{});const vE=new x("LEGACY_INTERCEPTOR_FN");class KV{constructor(){this.name="",this.email="",this.message=""}}let yE=(()=>{var e;class t{constructor(n){this.httpClient=n}postContactForm(n){return this.httpClient.post(`${ve_apiBaseUrl}contact`,n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Nh))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function e3(e,t){if(1&e){const r=Ae();h(0,"form",5,6),R("ngSubmit",function(){return ne(r),re(k().submit())}),h(2,"div",7)(3,"label",8),f(4,"Name "),h(5,"span",9),f(6,"*"),p()(),h(7,"input",10),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.name=o)}),p()(),h(8,"div",7)(9,"label",11),f(10,"Email address "),h(11,"span",9),f(12,"*"),p()(),h(13,"input",12),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.email=o)}),p()(),h(14,"div",7)(15,"label",13),f(16,"Message "),h(17,"span",9),f(18,"*"),p()(),h(19,"textarea",14),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.message=o)}),p()(),h(20,"button",15),f(21,"Submit"),p()()}if(2&e){const r=_d(1),n=k();_(7),w("ngModel",n.contactViewModel.name),_(6),w("ngModel",n.contactViewModel.email),_(6),w("ngModel",n.contactViewModel.message),_(1),w("disabled",!r.valid||n.enableFormCountDown>0)}}function t3(e,t){1&e&&(h(0,"p"),f(1,"Thanks for your message."),p())}function n3(e,t){1&e&&(h(0,"p",16),f(1,"Something went wrong. Please try again later."),p())}let r3=(()=>{var e;class t{constructor(n){this.contactService=n,this.contactViewModel=new KV,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,0===this.enableFormCountDown&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:n=>{console.log("Submitted form"),this.success=!0},error:n=>{console.error(n),this.error=!0},complete:()=>console.info("complete")})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(yE))},e.\u0275cmp=vt({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[Mt],decls:6,vars:3,consts:[[1,"container"],[1,"mb-4"],["method","post",3,"ngSubmit",4,"ngIf"],[4,"ngIf"],["class","text-danger",4,"ngIf"],["method","post",3,"ngSubmit"],["contactForm","ngForm"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"text-danger"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Contact"),p(),P(3,e3,22,4,"form",2),P(4,t3,2,0,"p",3),P(5,n3,2,0,"p",4),p()),2&n&&(_(3),w("ngIf",!o.success&&!o.error),_(1),w("ngIf",o.success),_(1),w("ngIf",o.error))},dependencies:[vl,ec,Xl,jo,Ul,Bl,$o,Kl,Cs,Bo]}),t})();const _E=function(){return["/pro"]};let o3=(()=>{var e;class t{scrollToAnchor(n){return document.querySelector(n)?.scrollIntoView(!0),!1}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-features-component"]],standalone:!0,features:[Mt],decls:131,vars:4,consts:[[1,"container"],[1,"mb-4"],["id","coveragequota"],[1,"pro-text"],["href","https://en.wikipedia.org/wiki/Code_coverage","target","_blank"],[1,"fa-solid","fa-arrow-up-right-from-square"],[3,"routerLink"],[1,"pro-button","pro-button-tiny"],["loading","lazy","srcset","resources/features/quota@1x.webp 1x, resources/features/quota@2x.webp 2x","src","resources/features/quota1x.webp","alt","Coverage quotas",1,"img-fluid"],["id","coveragehistory",1,"mt-5"],["loading","lazy","srcset","resources/features/history@1x.webp 1x, resources/features/history@2x.webp 2x","src","resources/features/history@1x.webp","alt","Coverage history",1,"img-fluid"],["id","summary",1,"mt-5"],["loading","lazy","srcset","resources/features/summary@1x.webp 1x, resources/features/summary@2x.webp 2x","src","resources/features/summary.webp","alt","Summary table / Overview",1,"img-fluid"],["id","details",1,"mt-5"],["loading","lazy","srcset","resources/features/details@1x.webp 1x, resources/features/details@2x.webp 2x","src","resources/features/details.webp","alt","Details",1,"img-fluid"],["id","metrics",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ#which-coverage-tool-supports-which-features-in-the-html-report","target","_blank"],["href","",3,"click"],["loading","lazy","srcset","resources/features/metrics_details@1x.webp 1x, resources/features/metrics_details@2x.webp 2x","src","resources/features/metrics_details.webp","alt","Metrics - Details",1,"img-fluid"],["loading","lazy","srcset","resources/features/metrics_summary@1x.webp 1x, resources/features/metrics_summary@2x.webp 2x","src","resources/features/metrics_summary.webp","alt","Metrics - Summary",1,"img-fluid"],["id","riskhotspots",1,"mt-5"],["href","https://en.wikipedia.org/wiki/Cyclomatic_complexity","target","_blank"],["href","https://modess.io/npath-complexity-cyclomatic-complexity-explained","target","_blank"],["href","https://testing.googleblog.com/2011/02/this-code-is-crap.html","target","_blank"],["loading","lazy","srcset","resources/features/riskhotspots@1x.webp 1x, resources/features/riskhotspots@2x.webp 2x","src","resources/features/riskhotspots.webp","alt","Risk Hotspots",1,"img-fluid"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Features"),p(),h(3,"h2",2),f(4,"Coverage quotas"),p(),h(5,"p"),f(6," The overiew cards provide a quick "),h(7,"span",3),f(8,"overview"),p(),f(9," of your coverage quotas."),v(10,"br"),f(11," You can use them to get a glimpse into the different "),h(12,"a",4),f(13,"coverage metrics"),p(),f(14,"\xa0"),h(15,"a",4),v(16,"i",5),p(),f(17,": "),p(),h(18,"ul")(19,"li"),f(20,"Line coverage"),p(),h(21,"li"),f(22,"Branch coverage"),p(),h(23,"li"),f(24,"Method coverage "),h(25,"a",6)(26,"span",7),f(27,"PRO"),p()()()(),v(28,"img",8)(29,"br"),h(30,"h2",9),f(31,"Coverage history"),p(),h(32,"p"),f(33," The history chart helps you to understand how your coverage quotas are "),h(34,"span",3),f(35,"evolving over time"),p(),f(36,". "),p(),v(37,"img",10)(38,"br"),h(39,"h2",11),f(40,"Summary table / Overview"),p(),h(41,"p"),f(42," The summary table helps you to identify classes with "),h(43,"span",3),f(44,"low test coverage"),p(),f(45,"."),v(46,"br"),f(47," The table offers various "),h(48,"span",3),f(49,"filter and sorting"),p(),f(50," options for quick navigation. "),p(),v(51,"img",12)(52,"br"),h(53,"h2",13),f(54,"Details page"),p(),h(55,"p"),f(56," The details page visualizes your "),h(57,"span",3),f(58,"line and branch coverage"),p(),f(59,". "),p(),h(60,"ul")(61,"li"),f(62,"Colors indicate the coverage status of each line."),p(),h(63,"li"),f(64,"Branch indicators help you to identity uncovered conditions."),p()(),v(65,"img",14)(66,"br"),h(67,"h2",15),f(68,"Metrics"),p(),h(69,"p"),f(70," Depending on your "),h(71,"a",16),f(72,"coverage tool"),p(),f(73,", metrics are provided to get further insigths in your "),h(74,"span",3),f(75,"code quality"),p(),f(76,". "),p(),h(77,"ul")(78,"li"),f(79,"The "),h(80,"a",17),R("click",function(){return o.scrollToAnchor("#details")}),f(81,"details page"),p(),f(82," contains information about the metrics of all methods of a class."),p(),h(83,"li"),f(84,"The "),h(85,"a",17),R("click",function(){return o.scrollToAnchor("#summary")}),f(86,"summary table"),p(),f(87," shows the lowest metrics of all methods of a class "),h(88,"a",6)(89,"span",7),f(90,"PRO"),p()()()(),h(91,"b"),f(92,"Details page"),p(),v(93,"br")(94,"img",18)(95,"br")(96,"br"),h(97,"b"),f(98,"Summary table"),p(),v(99,"br")(100,"img",19)(101,"br"),h(102,"h2",20),f(103,"Risk Hotspots"),p(),h(104,"p"),f(105," Based on the "),h(106,"a",17),R("click",function(){return o.scrollToAnchor("#metrics")}),f(107,"metrics"),p(),f(108," you get a list of potential risk hotspots."),v(109,"br"),f(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),p(),h(111,"ul")(112,"li")(113,"a",21),f(114,"Cyclomatic complexity"),p(),f(115,"\xa0"),h(116,"a",21),v(117,"i",5),p()(),h(118,"li")(119,"a",22),f(120,"NPath complexity"),p(),f(121,"\xa0"),h(122,"a",22),v(123,"i",5),p()(),h(124,"li")(125,"a",23),f(126,"Crap score"),p(),f(127,"\xa0"),h(128,"a",23),v(129,"i",5),p()()(),v(130,"img",24),p()),2&n&&(_(25),w("routerLink",K(2,_E)),_(63),w("routerLink",K(3,_E)))},dependencies:[pn]}),t})();const Lt={dotnetSDKVersion:"6.x",majorVersion:"5",version:"5.1.26"},i3=function(){return["/usage"]};let s3=(()=>{var e;class t{constructor(){this.versions=Lt}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[Mt],decls:72,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["href","https://github.com/coverlet-coverage/coverlet"],["href","https://github.com/SteveGilham/altcover"],[1,"text-dark","bg-light","p-2","border"],["id","java",1,"mt-5"],["href","https://github.com/jacoco/jacoco"],["id","nodejs",1,"mt-5"],["href","https://github.com/istanbuljs/nyc"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Get started"),p(),h(3,"h2"),f(4,"General"),p(),h(5,"p"),f(6,"In general you need a tool that instruments your test code and collects coverage information."),v(7,"br"),f(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),v(9,"br"),h(10,"em"),f(11,"ReportGenerator"),p(),f(12," uses this file and generates a report in HTML format (other formats are available)."),p(),h(13,"p"),f(14,"Use the online "),h(15,"a",2),f(16,"configuration tool"),p(),f(17," to get started quickly."),p(),h(18,"h2",3),f(19,".NET"),p(),h(20,"p"),f(21,"For .NET you can use "),h(22,"a",4),f(23,"coverlet"),p(),f(24," or "),h(25,"a",5),f(26,"altcover"),p(),f(27," for instrumenting your test code."),p(),h(28,"p"),f(29,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),p(),h(30,"p")(31,"strong"),f(32,"Add dependencies to your "),h(33,"code"),f(34,"*.csproj"),p(),f(35," file:"),p()(),h(36,"pre",6),f(37),p(),h(38,"p")(39,"strong"),f(40,"Execute tests and create coverage report"),p()(),h(41,"pre",6),f(42),p(),h(43,"h2",7),f(44,"Java"),p(),h(45,"p"),f(46,"For Java you can use "),h(47,"a",8),f(48,"JaCoCo"),p(),f(49," for instrumenting your test code.\nAfter adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report."),p(),h(50,"p")(51,"strong"),f(52,"Add dependencies to your "),h(53,"code"),f(54,"pom.xml"),p(),f(55," file:"),p()(),h(56,"pre",6),f(57,"\n \n \n \n org.jacoco\n jacoco-maven-plugin\n 0.8.6\n \n \n \n prepare-agent\n \n \n \n report\n prepare-package\n \n report\n \n \n \n \n \n \n \n \n \n org.jacoco\n jacoco-maven-plugin\n \n \n \n report\n \n \n \n \n \n \n\n"),p(),h(58,"p")(59,"strong"),f(60,"Execute tests and create coverage report"),p()(),h(61,"pre",6),f(62),p(),h(63,"h2",9),f(64,"NodeJS"),p(),h(65,"p"),f(66,"For NodeJS you can use "),h(67,"a",10),f(68,"Istanbul"),p(),f(69," for instrumenting your test code.\nAfter installing Istanbul, you can execute your tests and generate the coverage report."),p(),h(70,"pre",6),f(71),p()()),2&n&&(_(15),w("routerLink",K(5,i3)),_(22),xn('\n \n runtime; build; native; contentfiles; analyzers; buildtransitive\n all\n \n \n \n \n all\n runtime; build; native; contentfiles; analyzers\n \n\n'),_(5),xn('dotnet test --collect:"XPlat Code Coverage"\n"%UserProfile%\\.nuget\\packages\\reportgenerator\\',o.versions.version,'\\tools\\net6.0\\ReportGenerator.exe" -reports:*\\TestResults\\*\\coverage.cobertura.xml -targetdir:coveragereport\n'),_(20),xn("mvn test jacoco:report\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:target\\site\\jacoco\\jacoco.xml -targetdir:coveragereport -sourcedirs:src\\main\\java\n"),_(9),xn("npm i nyc --save-dev\nnyc --reporter=coberatura mocha\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:coverage/cobertura-coverage.xml -targetdir:coveragereport\n"))},dependencies:[pn]}),t})(),CE=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-testimonials"]],standalone:!0,features:[Mt],decls:30,vars:0,consts:[[1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"container"],[1,"text-center"],[1,"row","mt-5"],[1,"col","text-center"],[1,"fa-brands","fa-microsoft","h1","text-secondary"],["href","https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/code-coverage.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-google","h1","text-secondary"],["href","https://github.com/GoogleCloudPlatform/iam-windows-authenticator","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-aws","h1","text-secondary"],["href","https://github.com/aws/aws-encryption-sdk-dafny/blob/mainline/aws-encryption-sdk-net/README.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"col","text-center","d-none","d-lg-block"],[1,"fa-solid","fa-heart","h1","text-secondary"],["href","https://github.com/danielpalme/ReportGenerator/network/dependents","target","_blank",1,"text-dark"],["href","https://www.nuget.org/packages?q=ReportGenerator+danielpalme","target","_blank",1,"btn","btn-outline-secondary"],[1,"fa-solid","fa-download"]],template:function(n,o){1&n&&(h(0,"section",0)(1,"div",1)(2,"h2",2),f(3,"Trusted by"),p(),h(4,"div",3)(5,"div",4),v(6,"i",5)(7,"br"),h(8,"a",6),f(9,".NET Runtime"),p()(),h(10,"div",4),v(11,"i",7)(12,"br"),h(13,"a",8),f(14,"Google Cloud"),p()(),h(15,"div",4),v(16,"i",9)(17,"br"),h(18,"a",10),f(19,"AWS Encryption SDK"),p()(),h(20,"div",11),v(21,"i",12)(22,"br"),h(23,"a",13),f(24,"Many more"),p()()(),h(25,"div",3)(26,"div",4)(27,"a",14),v(28,"i",15),f(29," Over 50 million downloads on Nuget"),p()()()()())},encapsulation:2}),t})();const a3=function(){return["/pro"]},l3=function(){return["/usage"]},c3=function(){return["/getstarted"]},u3=function(){return["/features"]};let d3=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-home"]],standalone:!0,features:[Mt],decls:114,vars:8,consts:[[1,"container"],[1,"row"],[1,"col-4","col-md-3"],["src","resources/logo.svg","alt","Logo ReportGenerator",1,"img-fluid"],[1,"col-xs-12","col-md-9","ps-4"],[1,"mt-5"],[1,"line","btn-primary"],[1,"mt-4","h5"],[1,"pro-text"],["href","resources/reports/Html/index.html","target","_blank",1,"btn","btn-primary","me-2","mb-2"],[1,"fa-solid","fa-eye"],[1,"row","mt-5"],[1,"col-sm-12","col-md-4"],[1,"icon"],[1,"fa-solid","fa-scale-balanced"],[1,"h5","ms-3","mt-3"],[1,"mt-3"],[3,"routerLink"],[1,"col-sm-12","col-md-4","mt-4","mt-md-0"],[1,"fa-solid","fa-lightbulb"],[1,"fa-solid","fa-plug"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col"],[1,"btn","btn-primary","me-2","mb-2",3,"routerLink"],[1,"fa-solid","fa-wrench"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank",1,"btn","btn-outline-dark","mb-2"],[1,"fa-brands","fa-github"],[1,"container-fluid","mt-5","pt-5","pb-5"],["href","resources/reports/Html/index.html","target","_blank"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"col-sm-12","col-md-6","pb-2"],["href","resources/screenshot1@2x.webp"],["loading","lazy","srcset","resources/screenshot1.webp 1x, resources/screenshot1@2x.webp 2x","src","resources/screenshot1.webp","alt","Screenshot",1,"img-fluid"],[1,"col-sm-12","col-md-6"],["href","resources/screenshot2@2x.webp"],["loading","lazy","srcset","resources/screenshot2.webp 1x, resources/screenshot2@2x.webp 2x","src","resources/screenshot2.webp","alt","Screenshot",1,"img-fluid"]],template:function(n,o){1&n&&(h(0,"section",0)(1,"div",1)(2,"div",2),v(3,"img",3),p(),h(4,"div",4)(5,"h1"),f(6,"ReportGenerator"),p(),h(7,"h2",5),f(8,"Powerful code coverage visualization"),p(),h(9,"div",6),f(10,"\xa0"),p(),h(11,"div",7)(12,"p")(13,"i"),f(14,"ReportGenerator"),p(),f(15," converts "),h(16,"span",8),f(17,"coverage reports"),p(),f(18," generated by coverlet, OpenCover, dotCover, Visual Studio, NCover, Cobertura, JaCoCo, Clover, gcov or lcov into "),h(19,"span",8),f(20,"human readable reports in various formats"),p(),f(21,"."),p(),h(22,"p"),f(23,"The reports show the "),h(24,"span",8),f(25,"coverage quotas"),p(),f(26," and also visualize which lines of your source code have been covered."),p(),h(27,"p")(28,"a",9),v(29,"i",10),f(30," Browse example report"),p()()()()(),h(31,"div",11)(32,"div",12)(33,"div",13),v(34,"i",14),p(),h(35,"span",15),f(36,"Open source"),p(),h(37,"p",16)(38,"i"),f(39,"ReportGenerator"),p(),f(40," is open source under the permissive Apache License."),p(),h(41,"p"),f(42,"It's free to use."),v(43,"br"),f(44,"The "),h(45,"a",17),f(46,"PRO"),p(),f(47," version offers additional features."),p()(),h(48,"div",18)(49,"div",13),v(50,"i",19),p(),h(51,"span",15),f(52,"Easy to use"),p(),h(53,"p",16)(54,"i"),f(55,"ReportGenerator"),p(),f(56," is a command line tool which only requires a "),h(57,"a",17),f(58,"few parameters"),p(),f(59,"."),p(),h(60,"p"),f(61,"Integration into your build pipeline will only take a couple of minutes."),p()(),h(62,"div",18)(63,"div",13),v(64,"i",20),p(),h(65,"span",15),f(66,"Integration"),p(),h(67,"p",16)(68,"i"),f(69,"ReportGenerator"),p(),f(70," works on Windows, Linux and macOS."),p(),h(71,"p"),f(72,"Support for "),h(73,"a",21),f(74,"GitHub actions"),p(),f(75," and "),h(76,"a",22),f(77,"Azure DevOps"),p(),f(78," is available."),p()()(),h(79,"div",11)(80,"div",23)(81,"a",24),v(82,"i",25),f(83," Learn how to use"),p(),h(84,"a",26),v(85,"i",27),f(86," GitHub"),p()()()(),v(87,"app-testimonials"),h(88,"section",28)(89,"div",0)(90,"h2"),f(91,"Screenshots"),p(),h(92,"p"),f(93,"The screenshots show two snippets of the generated reports."),p(),h(94,"p"),f(95," Have a look the "),h(96,"a",17),f(97,"features page"),p(),f(98," to explore the elements in a coverage report or "),h(99,"a",29),f(100,"browse the example report"),p(),f(101,". "),v(102,"br"),f(103," You can also download "),h(104,"a",30),f(105,"sample reports"),p(),f(106," of all supported output formats."),p(),h(107,"div",1)(108,"div",31)(109,"a",32),v(110,"img",33),p()(),h(111,"div",34)(112,"a",35),v(113,"img",36),p()()()()()),2&n&&(_(45),w("routerLink",K(4,a3)),_(12),w("routerLink",K(5,l3)),_(24),w("routerLink",K(6,c3)),_(15),w("routerLink",K(7,u3)))},dependencies:[pn,CE],styles:[".h5[_ngcontent-%COMP%]{font-weight:300}section[_ngcontent-%COMP%]:first-of-type{padding-top:120px;min-height:calc(100vh - 171px)}.icon[_ngcontent-%COMP%]{background-color:#2e89df;background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);height:50px;width:50px;border-radius:8px;text-align:center;color:#fff;line-height:50px;font-size:1.5rem;display:inline-block}@media (max-width: 767px){section[_ngcontent-%COMP%]:first-of-type{padding-top:40px}}"]}),t})(),f3=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-not-found"]],standalone:!0,features:[Mt],decls:5,vars:0,consts:[[1,"container"],[1,"mb-4"],[1,"fa-solid","fa-triangle-exclamation","fs-1","me-4"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Not found"),p(),v(3,"i",2),f(4," The requested page does not exist.\n"),p())}}),t})();class DE{constructor(){this.error=null,this.licenses=[]}}class h3{constructor(){this.error=null,this.isSponsor=!1,this.license=null}}let bE=(()=>{var e;class t{initCodeFlow(){const i=`https://github.com/login/oauth/authorize?response_type=code&client_id=ecab9484932b59a12fd4&state=${this.createAndSaveNonce()}&redirect_uri=${window.location.origin}/pro`;console.log("Redirecting to: "+i),location.href=i}validateStateAndExtractCode(){let n=location.href;const o=n.indexOf("?");o>-1&&(n=n.substring(o+1));const i=this.parseQueryString(n);return i.state&&i.code&&this.validateNonce(i.state)?i.code:null}createAndSaveNonce(){const n=this.createNonce();return typeof window.localStorage<"u"&&localStorage.setItem("nonce",n),n}validateNonce(n){let o;return typeof window.localStorage<"u"&&(o=localStorage.getItem("nonce"),localStorage.removeItem("nonce")),o&&0!==o.length?o===n||(console.error("Validating nonce failed. Values do not match.",o,n),!1):(console.error("Validating nonce failed. No saved nonce available.",o,n),!1)}createNonce(){const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let o=45,i="";const s=typeof self>"u"?null:self.crypto||self.msCrypto;if(s){let l=new Uint8Array(o);s.getRandomValues(l),l.map||(l.map=Array.prototype.map);const c=[];for(var a=0;a0&&(u=decodeURIComponent(l),d=decodeURIComponent(c),"/"===u.substring(0,1)&&(u=u.substring(1)),o[u]=d);return o}base64UrlEncode(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),wE=(()=>{var e;class t{constructor(n){this.httpClient=n}getLicense(n){return this.httpClient.get(`${ve_apiBaseUrl}reportgenerator/license?code=${encodeURIComponent(n)}`)}getTrialLicense(n){return this.httpClient.post(`${ve_apiBaseUrl}reportgenerator/triallicense`,n)}getPaddleLicense(n){return this.httpClient.post(`${ve_apiBaseUrl}reportgenerator/paddlelicense`,n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Nh))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),p3=(()=>{var e;class t{constructor(){this.isActive=!1,this.isActive=new Date-1)}}function G3(e,t){if(1&e&&(h(0,"div")(1,"label",110),f(2,"Thank you! Please save your license key persistently:"),p(),P(3,$3,6,3,"div",111),p()),2&e){const r=k(3);_(3),w("ngForOf",r.paddleLicense.licenses)}}function z3(e,t){if(1&e&&(h(0,"div",109),P(1,H3,8,3,"div",34),P(2,G3,4,1,"div",34),p()),2&e){const r=k(2);_(1),w("ngIf",r.paddleLicense.error),_(1),w("ngIf",!r.paddleLicense.error)}}function q3(e,t){if(1&e&&(h(0,"div",2),P(1,j3,6,0,"ng-container",34),P(2,z3,3,2,"div",107),p()),2&e){const r=k();_(1),w("ngIf",r.paddleLicenseRequested&&!r.paddleLicense),_(1),w("ngIf",r.paddleLicense)}}function W3(e,t){1&e&&(h(0,"p")(1,"i"),f(2,"ReportGenerator"),p(),f(3," subscription based licences are provided with a 30 day money back guarantee."),p())}const qo=function(){return["/features"]};let Z3=(()=>{var e;class t{get lifetimeLicense(){return this._lifetimeLicense}set lifetimeLicense(n){this._lifetimeLicense=n,this.lifetimeLicenseChangeTracked||(this.lifetimeLicenseChangeTracked=!0,this.trackingService.track("Licensetype changed"))}constructor(n,o,i){this.oauthService=n,this.licenseService=o,this.trackingService=i,this.paddleIndividualLicensePrice="US$49",this.paddleTeamLicensePrice="US$149",this.paddleEnterpriseLicensePrice="US$299",this.paddleIndividualLifetimeLicensePrice="US$79",this.paddleTeamLifetimeLicensePrice="US$249",this.paddleEnterpriseLifetimeLicensePrice="US$449",this.licenseRequested=!1,this.licenseCopied=!1,this.license=null,this.enablePaddle=!0,this.trialDisabled=!1,this.requestTrialData={name:"",email:""},this.paddleLicenseRequested=!1,this.paddleLicense=null,this.copiedPaddledLicenses=[],this.self=this,this.lifetimeLicenseChangeTracked=!1,this._lifetimeLicense=!1,window.paddleCheckoutComplete=s=>{this.paddleCheckoutComplete(s)},window.Paddle.Setup({vendor:144162}),window.Paddle.Product.Prices(762579,s=>{this.paddleIndividualLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(762580,s=>{this.paddleTeamLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(762581,s=>{this.paddleEnterpriseLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(833943,s=>{this.paddleIndividualLifetimeLicensePrice=s.price.gross}),window.Paddle.Product.Prices(833944,s=>{this.paddleTeamLifetimeLicensePrice=s.price.gross}),window.Paddle.Product.Prices(833945,s=>{this.paddleEnterpriseLifetimeLicensePrice=s.price.gross})}ngOnInit(){const n=this.oauthService.validateStateAndExtractCode();null!==n?(console.log("Code received",n),this.licenseRequested=!0,this.licenseService.getLicense(n).subscribe({next:o=>{console.log("Received license response"),this.license=o,this.scrollToGithub()},error:o=>{console.error(o),this.license=new h3,this.license.error="Unable to generate license."},complete:()=>console.info("complete")})):console.log("No code available"),location.href.indexOf("?source=trial")>-1&&this.trackingService.track("Trial2Pro"),this.requestTrialModal=new window.bootstrap.Modal("#requestTrialModal");try{this.trialDisabled=null!==window.localStorage.getItem("trialRequested")}catch{}}requestLicense(){this.licenseRequested=!0,this.oauthService.initCodeFlow()}copy(){try{navigator.clipboard.writeText(this.license.license),this.licenseCopied=!0}catch(n){console.error("Failed to copy license",n)}}copyPaddle(n){try{navigator.clipboard.writeText(n),this.copiedPaddledLicenses.push(n)}catch(o){console.error("Failed to copy paddle license",o)}}scrollToGithub(){return document.querySelector("#github").scrollIntoView(!0),!1}scrollToPaddle(){return document.querySelector("#paddle").scrollIntoView(!0),!1}requestTrial(){this.requestTrialModal.show(),this.trackingService.track("Trial-Started")}completeTrial(){console.log("Trial completed"),this.requestTrialModal.hide(),this.paddleLicenseRequested=!0,this.licenseService.getTrialLicense(this.requestTrialData).subscribe({next:n=>{console.log("Received trial license response"),this.paddleLicense=n,this.scrollToPaddle();try{window.localStorage.setItem("trialRequested","true"),this.trialDisabled=!0}catch{}this.trackingService.track("Trial-Completed")},error:n=>{console.error(n),this.paddleLicense=new DE,this.paddleLicense.error="Unable to generate trial license."},complete:()=>{console.info("complete"),this.requestTrialData={name:"",email:""}}})}openPaddleCheckout(n){"enterprise"===n?window.Paddle.Checkout.open({product:this.lifetimeLicense?833945:762581,successCallback:"paddleCheckoutComplete"}):"team"===n?window.Paddle.Checkout.open({product:this.lifetimeLicense?833944:762580,successCallback:"paddleCheckoutComplete"}):window.Paddle.Checkout.open({product:this.lifetimeLicense?833943:762579,successCallback:"paddleCheckoutComplete"}),this.trackingService.track("Paddle-Started",{props:{product:n,lifetimeLicense:this.lifetimeLicense}})}paddleCheckoutComplete(n){console.log("Checkout completed",n),this.paddleLicenseRequested=!0,this.licenseService.getPaddleLicense(n).subscribe({next:o=>{console.log("Received paddle license response"),this.paddleLicense=o,this.scrollToPaddle(),this.trackingService.track("Paddle-Completed",{props:{product:n.product.name,lifetimeLicense:this.lifetimeLicense}})},error:o=>{console.error(o),this.paddleLicense=new DE,this.paddleLicense.error="Unable to generate Paddle license."},complete:()=>console.info("complete")})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bE),I(wE),I(p3))},e.\u0275cmp=vt({type:e,selectors:[["app-pro-component"]],standalone:!0,features:[Mt],decls:229,vars:25,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-xs-12","col-md-6","order-2","order-md-1"],[1,"table"],["scope","col"],["scope","col",1,"text-center"],[1,"pro-button"],["scope","row"],["fragment","metrics","title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-info","text-secondary"],[1,"text-center"],[1,"fa-solid","fa-circle-check","text-secondary"],["fragment","riskhotspots","title","Show feature details",3,"routerLink"],["title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-check","pro-text"],[1,"col-xs-12","col-md-6","order-1","order-md-2"],["href","",3,"click"],[3,"routerLink"],["id","github",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"col-xs-12","col-md-6","pb-3"],[1,"fs-2","me-3","number"],["href","https://github.com/sponsors/danielpalme","target","_blank",1,"btn","btn-outline-dark"],[1,"fa-solid","fa-heart","githubheart"],["type","button",1,"btn","btn-primary","me-3",3,"disabled","click"],[1,"fa-solid","fa-rocket"],["class","spinner-border text-info","role","status",4,"ngIf"],["class","col-md-6 pb-3 d-none d-lg-block","style","position: relative;",4,"ngIf"],["class","col-xs-12 col-md-6 pb-3",4,"ngIf"],["id","paddle",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"text-center","mb-3"],["class","togglecontainer",4,"ngIf"],["class","row",4,"ngIf"],[1,"mt-5"],[4,"ngIf"],[1,"container-fluid","mt-4","pt-5","pb-5","bg-light"],[1,"container","text-center"],[1,"row","mt-5",2,"max-width","550px","margin","auto"],["href","https://twitter.com/fredyfx/status/1642807795828543488","target","_blank"],["loading","lazy","src","resources/twitter_light.webp","alt","Testimonial",1,"img-fluid"],["id","faq",1,"container","mt-5","pt-5","pb-5"],["id","accordionFaq",1,"accordion","accordion-flush"],[1,"accordion-item"],["id","headingOne",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseOne","aria-expanded","true","aria-controls","collapseOne",1,"accordion-button"],["id","collapseOne","aria-labelledby","headingOne","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse","show"],[1,"accordion-body"],["id","headingTwo",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseTwo","aria-expanded","false","aria-controls","collapseTwo",1,"accordion-button","collapsed"],["id","collapseTwo","aria-labelledby","headingTwo","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["id","headingThree",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseThree","aria-expanded","false","aria-controls","collapseThree",1,"accordion-button","collapsed"],["id","collapseThree","aria-labelledby","headingThree","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["tabindex","-1","id","requestTrialModal",1,"modal"],[1,"modal-dialog"],[1,"modal-content"],["method","post",3,"ngSubmit"],["trialForm","ngForm"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal","aria-label","Close",1,"btn-close"],[1,"modal-body"],[1,"form-floating","mb-3"],["type","text","id","name","name","name","required","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],["for","floatingInput"],[1,"required"],["type","email","id","email","name","email","required","","email","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-secondary"],["type","submit",1,"btn","btn-primary",3,"disabled"],["role","status",1,"spinner-border","text-info"],[1,"visually-hidden"],[1,"col-md-6","pb-3","d-none","d-lg-block",2,"position","relative"],[1,"fa-solid","fa-heart","githubheartlarge"],["href","https://github.com/sponsors/danielpalme","target","_blank"],["for","licensetext"],["id","licensetext","rows","5","readonly","",1,"form-control","mt-2"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"],[1,"togglecontainer"],[1,"option",3,"ngClass","click"],[1,"fa-solid","fa-rotate-right"],[1,"fa-solid","fa-infinity"],[1,"col-xs-12","col-md-6","col-lg-3","mt-0","pb-3","text-center","paddle-container"],[1,"paddle","trial"],["src","resources/trial.svg","alt","Trial",1,"img-fluid"],[1,"mt-3"],[1,"fa-solid","fa-magnifying-glass"],[1,"fa-solid","fa-calendar-days"],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],["type","button","class","btn btn-primary","disabled","",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-md-0","pb-3","text-center","paddle-container"],[1,"paddle"],["src","resources/individual.svg","alt","Individual",1,"img-fluid"],[1,"fa-solid","fa-user"],["type","button","class","btn btn-primary",3,"click",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/team.svg","alt","Team",1,"img-fluid"],[1,"fa-solid","fa-users"],[1,"col-xs-6","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/enterprise.svg","alt","Enterprise",1,"img-fluid"],[1,"fa-solid","fa-industry"],["type","button",1,"btn","btn-primary",3,"disabled","click"],["type","button","disabled","",1,"btn","btn-primary"],["type","button",1,"btn","btn-primary",3,"click"],[1,"fa-solid","fa-cart-shopping"],["class","col-xs-12 col-md-6",4,"ngIf"],[2,"position","relative","left","35px","top","-20px"],[1,"col-xs-12","col-md-6"],["for","paddlelicensetext"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-2"],["id","paddlelicensetext","rows","5","readonly","",1,"form-control"]],template:function(n,o){if(1&n&&(h(0,"div",0)(1,"h1",1),f(2,"PRO"),p(),h(3,"div",2)(4,"div",3)(5,"table",4)(6,"thead")(7,"tr"),v(8,"th",5),h(9,"th",6),f(10,"Free"),p(),h(11,"th",6)(12,"span",7),f(13,"PRO"),p()()()(),h(14,"tbody")(15,"tr")(16,"th",8),f(17,"Metrics "),h(18,"a",9),v(19,"i",10),p()(),h(20,"td",11),v(21,"i",12),p(),h(22,"td",11),v(23,"i",12),p()(),h(24,"tr")(25,"th",8),f(26,"Risk Hotspots "),h(27,"a",13),v(28,"i",10),p()(),h(29,"td",11),v(30,"i",12),p(),h(31,"td",11),v(32,"i",12),p()(),h(33,"tr")(34,"th",8),f(35,"Line coverage "),h(36,"a",14),v(37,"i",10),p()(),h(38,"td",11),v(39,"i",12),p(),h(40,"td",11),v(41,"i",12),p()(),h(42,"tr")(43,"th",8),f(44,"Branch coverage "),h(45,"a",14),v(46,"i",10),p()(),h(47,"td",11),v(48,"i",12),p(),h(49,"td",11),v(50,"i",12),p()(),h(51,"tr")(52,"th",8),f(53,"Method coverage "),h(54,"a",14),v(55,"i",10),p()(),v(56,"td",11),h(57,"td",11),v(58,"i",15),p()(),h(59,"tr")(60,"th",8),f(61,"Metrics on summary page "),h(62,"a",9),v(63,"i",10),p()(),v(64,"td",11),h(65,"td",11),v(66,"i",15),p()(),h(67,"tr")(68,"th",8)(69,"i"),f(70,"OpenCover"),p(),f(71," output format"),p(),v(72,"td",11),h(73,"td",11),v(74,"i",15),p()()()()(),h(75,"div",16)(76,"p")(77,"i"),f(78,"ReportGenerator"),p(),f(79," is Open Source and free to use."),v(80,"br"),f(81," Some of the advanced features require a PRO license. "),p(),h(82,"p"),f(83," You can either become a "),h(84,"a",17),R("click",function(){return o.scrollToGithub()}),f(85,"GitHub sponsor"),p(),f(86," or you can "),h(87,"a",17),R("click",function(){return o.scrollToPaddle()}),f(88,"buy a license"),p(),f(89,"."),v(90,"br"),f(91," A "),h(92,"a",17),R("click",function(){return o.scrollToPaddle()}),f(93,"free trial version"),p(),f(94," is available too. "),p(),h(95,"p"),f(96," Get "),h(97,"a",18),f(98,"in touch"),p(),f(99," if you have any issues and we will figure it out. "),p()()()(),h(100,"section",19)(101,"div",0)(102,"h2",1),f(103,"Get your license as a GitHub sponsor"),p(),h(104,"div",2)(105,"div",20)(106,"p"),f(107,"You can obtain your license in two easy steps (no sign up required):"),p(),h(108,"span",21),f(109,"1."),p(),h(110,"a",22),v(111,"i",23),f(112," Become a GitHub sponsor"),p(),v(113,"br"),h(114,"span",21),f(115,"2."),p(),h(116,"button",24),R("click",function(){return o.requestLicense()}),v(117,"i",25),f(118," Get license"),p(),P(119,g3,3,0,"div",26),p(),P(120,m3,2,0,"div",27),P(121,b3,4,3,"div",28),p()()(),h(122,"section",29)(123,"div",0)(124,"h2",1),f(125,"Buy a license"),p(),h(126,"div",30),P(127,w3,7,6,"span",31),p(),P(128,V3,61,17,"div",32),P(129,q3,3,2,"div",32),h(130,"div",33),P(131,W3,4,0,"p",34),h(132,"p"),f(133,"The order process is conducted by Paddle.com. Paddle.com is the Merchant of Record for all orders. Paddle provides all customer service inquiries and handles returns."),p()()()(),v(134,"app-testimonials"),h(135,"section",35)(136,"div",36)(137,"h3"),f(138,"Customers"),p(),h(139,"div",37)(140,"a",38),v(141,"img",39),p()()()(),h(142,"section",40)(143,"h2",1),f(144,"Frequently Asked Questions"),p(),h(145,"div",41)(146,"div",42)(147,"h2",43)(148,"button",44),f(149," How do I use/activate my license? "),p()(),h(150,"div",45)(151,"div",46),f(152," Your license key is passed to "),h(153,"i"),f(154,"ReportGenerator"),p(),f(155," via a command line parameter: "),h(156,"i"),f(157,"-license:YOUR_KEY"),p()()()(),h(158,"div",42)(159,"h2",47)(160,"button",48),f(161," Are there limitations on number of users? "),p()(),h(162,"div",49)(163,"div",46)(164,"b"),f(165,"GitHub sponsors"),p(),v(166,"br"),h(167,"p"),f(168,"There's no enforced limit. Please pick a sponsor level that fits your company size and budget."),p(),h(169,"b"),f(170,"Bought license"),p(),v(171,"br"),h(172,"p"),f(173,"There's no enforced limit. Please choose a plan that matches the number of developers using "),h(174,"i"),f(175,"ReportGenerator"),p(),f(176,"."),p()()()(),h(177,"div",42)(178,"h2",50)(179,"button",51),f(180," Will my license expire? "),p()(),h(181,"div",52)(182,"div",46)(183,"b"),f(184,"GitHub sponsors"),p(),v(185,"br"),h(186,"p"),f(187,"Your license will not expire."),p(),h(188,"b"),f(189,"Bought license"),p(),v(190,"br"),h(191,"p")(192,"b"),f(193,"Annual subscription"),p(),f(194,": Your license may get revoked for new releases of "),h(195,"i"),f(196,"ReportGenerator"),p(),f(197,", if you cancel your subscription."),v(198,"br"),h(199,"b"),f(200,"Lifetime licenses"),p(),f(201,": Lifetime licenses will not expire. "),p()()()()()(),h(202,"div",53)(203,"div",54)(204,"div",55)(205,"form",56,57),R("ngSubmit",function(){return o.completeTrial()}),h(207,"div",58)(208,"h5",59),f(209,"Free Trial"),p(),v(210,"button",60),p(),h(211,"div",61)(212,"div",62)(213,"input",63),R("ngModelChange",function(s){return o.requestTrialData.name=s}),p(),h(214,"label",64),f(215,"Name "),h(216,"span",65),f(217,"*"),p()()(),h(218,"div",62)(219,"input",66),R("ngModelChange",function(s){return o.requestTrialData.email=s}),p(),h(220,"label",64),f(221,"Email address "),h(222,"span",65),f(223,"*"),p()()()(),h(224,"div",67)(225,"button",68),f(226,"Close"),p(),h(227,"button",69),f(228,"Get trial license"),p()()()()()()),2&n){const i=_d(206);_(18),w("routerLink",K(18,qo)),_(9),w("routerLink",K(19,qo)),_(9),w("routerLink",K(20,qo)),_(9),w("routerLink",K(21,qo)),_(9),w("routerLink",K(22,qo)),_(8),w("routerLink",K(23,qo)),_(35),w("routerLink",K(24,Ph)),_(19),w("disabled",o.licenseRequested),_(3),w("ngIf",o.licenseRequested&&!o.license),_(1),w("ngIf",!o.license),_(1),w("ngIf",o.license),_(6),w("ngIf",!o.paddleLicenseRequested),_(1),w("ngIf",!o.paddleLicenseRequested),_(1),w("ngIf",o.paddleLicenseRequested),_(2),w("ngIf",!o.lifetimeLicense),_(82),w("ngModel",o.requestTrialData.name),_(6),w("ngModel",o.requestTrialData.email),_(8),w("disabled",!i.valid)}},dependencies:[pn,Ef,vl,ml,ec,Xl,jo,Ul,Bl,$o,Sh,Kl,Cs,Bo,CE],styles:[".number[_ngcontent-%COMP%]{display:inline-block;position:relative;top:8px}.spinner-border[_ngcontent-%COMP%]{position:relative;top:9px}.paddle-container[_ngcontent-%COMP%]{padding:10px}.paddle[_ngcontent-%COMP%]{border:1px solid #8c8888;border-radius:20px;padding:20px;background-color:#d8e8f0}.trial[_ngcontent-%COMP%]{background-color:#b2cad7}.githubheartlarge[_ngcontent-%COMP%]{position:absolute;top:-120px;left:40%;font-size:20rem;color:#ffd2ed}.togglecontainer[_ngcontent-%COMP%]{background-color:#fff;display:inline-block;border-radius:20px;white-space:nowrap}.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{background-color:#fff;padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-block}.togglecontainer[_ngcontent-%COMP%] .option.active[_ngcontent-%COMP%]{color:#fff;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}@media only screen and (max-width: 400px){.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%] .fa-solid[_ngcontent-%COMP%]{display:none}}"]}),t})();class ic{constructor(t,r,n,o,i,s){this.name=t,this.url=r,this.runtimes=n,this.description=o,this.installOptions=i,this.executables=s}formatExecutable(t){return t.tool}formatArgument(t,r){if(""===(r=r.trim()))return"";const n=r.indexOf(" ")>-1?'"':"";return`\r\n${n}-${t}:${r}${n}`}formatArguments(t,r){return this.formatArgument(t,r.filter(n=>null!=n&&0!==n.length&&0!==n.trim().length).join(";"))}}class Y3 extends ic{formatExecutable(t){let r=`- task: ${t.tool}@${Lt.majorVersion}`;return r+="\r\n displayName: ReportGenerator",r+="\r\n inputs:",console.log("hello",r),r}formatArgument(t,r){if(""===(r=r.trim()))return"";const n=r.indexOf(" ")>-1?"'":"";return`\r\n ${t}: ${n}${r}${n}`}}class Q3{constructor(){this.verbosities=["Verbose","Info","Warning","Error","Off"],this.types=["Html","Coverage tool","Json","Markdown","Xml","Text","Image"],this.reports=["cobertura.xml"],this.targetdir="coveragereport",this.reporttypes=[{name:"Html",types:["Html"],description:"The default output format. Creates a summary overview (index.html) and detailed reports for each class.",requiresHistoryDir:!1,checked:!0,sampleReport:"resources/reports/Html/index.html"},{name:"Html_Light",types:["Html"],description:"Same as Html but with a light theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Light/index.html"},{name:"Html_Dark",types:["Html"],description:"Same as Html but with a dark theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Dark/index.html"},{name:"Html_BlueRed",types:["Html"],description:"Same as Html but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed/index.html"},{name:"HtmlSummary",types:["Html"],description:"Creates a single HTML file (summary.html) without links.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlSummary/summary.html"},{name:"Html_BlueRed_Summary",types:["Html"],description:"Same as HtmlSummary but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed_Summary/summary.html"},{name:"HtmlChart",types:["Html"],description:"Creates a single HTML file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/HtmlChart/CoverageHistory.html"},{name:"HtmlInline",types:["Html"],description:"Same as HTML but CSS and JavaScript is included in every HTML page. This results in larger file sizes, but can be useful for integration into build servers like Azure DevOps (VSTS), since they may block referenced CSS and JavaScript files.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline/index.html"},{name:"HtmlInline_AzurePipelines",types:["Html"],description:"Same as HtmlInline but with an adaptive light/dark theme matching the look and feel of Azure Pipelines",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines/index.html"},{name:"HtmlInline_AzurePipelines_Light",types:["Html"],description:"Same as HtmlInline but with a light theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Light/index.html"},{name:"HtmlInline_AzurePipelines_Dark",types:["Html"],description:"Same as HtmlInline but with a dark theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Dark/index.html"},{name:"MHtml",types:["Html"],description:"Same as HTML but packaged into a single MHTML file.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MHtml/Summary.mht"},{name:"Clover",types:["Coverage tool"],description:"Creates a XML file in Clover format. This format integrates with tools like Atlassian Bamboo.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Clover/Clover.xml"},{name:"Cobertura",types:["Coverage tool"],description:"Creates a XML file in Cobertura format. This format integrates with tools like Azure DevOps (VSTS) or Jenkins.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Cobertura/Cobertura.xml"},{name:"OpenCover",types:["Coverage tool"],description:"Creates a XML file in OpenCover format (PRO version only).",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/OpenCover/OpenCover.xml"},{name:"SonarQube",types:["Coverage tool"],description:"Creates a XML file in SonarQube 'Generic Test Data' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/SonarQube/SonarQube.xml"},{name:"lcov",types:["Coverage tool"],description:"Creates a text file in 'lcov' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/lcov/lcov.info"},{name:"XML",types:["Xml"],description:"Creates a XML file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Xml/Summary.xml"},{name:"XMLSummary",types:["Xml"],description:"Creates a single XML file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/XmlSummary/Summary.xml"},{name:"JsonSummary",types:["Json"],description:"Creates a single JSON file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/JsonSummary/Summary.json"},{name:"Latex",types:["Text"],description:"Creates a single TEX file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Summary/Summary.tex"},{name:"LatexSummary",types:["Text"],description:"Creates a single TEX file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/LatexSummary/Summary.tex"},{name:"TeamCitySummary",types:["Coverage tool"],description:"Command line output interpreted by TeamCity.",requiresHistoryDir:!1,checked:!1,sampleReport:null},{name:"TextSummary",types:["Text"],description:"Creates a single TXT file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/TextSummary/Summary.txt"},{name:"TextDeltaSummary",types:["Text"],description:"Creates a single TXT file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/TextDeltaSummary/DeltaSummary.txt"},{name:"CsvSummary",types:["Text"],description:"Creates a single CSV file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/CsvSummary/Summary.csv"},{name:"MarkdownSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummary/Summary.md"},{name:"MarkdownSummaryGithub",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class. The report is optimized for GitHub.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummaryGithub/SummaryGithub.md"},{name:"MarkdownDeltaSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/MarkdownDeltaSummary/DeltaSummary.md"},{name:"SvgChart",types:["Image"],description:"Creates a single SVG file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/SvgChart/CoverageHistory.svg"},{name:"Badges",types:["Image"],description:"Creates SVG files that show line and/or branch coverage information.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Badges/index.html"}],this.sourcedirectories=[],this.historydir="",this.plugins=[],this.assemblyfilters=[],this.classfilters=[],this.filefilters=[],this.selectedverbosity=this.verbosities[1],this.selectedType=null,this.title="",this.tag="",this.license=""}addSourceDirectory(){return this.sourcedirectories.push(""),!1}removeSourceDirectory(t){return this.sourcedirectories.splice(t,1),!1}addReport(){return this.reports.push(""),!1}removeReport(t){return this.reports.splice(t,1),!1}addPlugin(){return this.plugins.push(""),!1}removePlugin(t){return this.plugins.splice(t,1),!1}addAssemblyFilter(){return this.assemblyfilters.push(""),!1}removeAssemblyFilter(t){return this.assemblyfilters.splice(t,1),!1}addClassFilter(){return this.classfilters.push(""),!1}removeClassFilter(t){return this.classfilters.splice(t,1),!1}addFileFilter(){return this.filefilters.push(""),!1}removeFileFilter(t){return this.filefilters.splice(t,1),!1}getUsage(t,r){const n=t.executables.find(a=>a.runtime==r);let o=void 0!==n?t.formatExecutable(n):"";o+=t.formatArguments("reports",this.reports),o+=t.formatArgument("targetdir",this.targetdir);for(var i="",s=0;s0&&(i+=";"),i+=this.reporttypes[s].name);return i.length>0&&"Html"!==i&&(o+=t.formatArgument("reporttypes",i)),o+=t.formatArguments("sourcedirs",this.sourcedirectories),o+=t.formatArgument("historydir",this.historydir),o+=t.formatArguments("plugins",this.plugins),o+=t.formatArguments("assemblyfilters",this.assemblyfilters),o+=t.formatArguments("classfilters",this.classfilters),o+=t.formatArguments("filefilters",this.filefilters),"Info"!==this.selectedverbosity&&(o+=t.formatArgument("verbosity",this.selectedverbosity)),o+=t.formatArgument("title",this.title),o+=t.formatArgument("tag",this.tag),o+=t.formatArgument("license",this.license),o}historyDirRequired(){for(let t=0;t-1?"'":"";return`\r\n ${t}: ${n}${r}${n}`}}class kh{constructor(t,r){this.tool=t,this.command=r}}function J3(e,t){if(1&e){const r=Ae();h(0,"div",35)(1,"label",36)(2,"input",37),R("ngModelChange",function(o){return ne(r),re(k().selectedEnvironment=o)})("ngModelChange",function(){return ne(r),re(k().selectedEnvironmentChanged())}),p(),h(3,"b"),f(4),p(),v(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const r=t.$implicit,n=k();_(2),w("ngModel",n.selectedEnvironment)("value",r)("checked",n.selectedEnvironment.name===r.name),_(2),Ce(r.name),_(3),Ce(r.description)}}function K3(e,t){if(1&e){const r=Ae();h(0,"div",35)(1,"label",36)(2,"input",41),R("ngModelChange",function(o){return ne(r),re(k(3).selectedPackage=o)}),p(),h(3,"b"),f(4),p(),v(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const r=k().$implicit,n=k(2);_(2),w("ngModel",n.selectedPackage)("value",r),_(2),Ce(r.name),_(3),Ce(r.description)}}function ej(e,t){if(1&e&&(ut(0),P(1,K3,8,4,"div",40),dt()),2&e){const r=t.$implicit,n=k(2);_(1),w("ngIf",r.runtimes.indexOf(n.selectedEnvironment.name)>-1)}}function tj(e,t){if(1&e&&(ut(0),h(1,"h4"),f(2,"NuGet Package"),p(),P(3,ej,2,1,"ng-container",39),dt()),2&e){const r=k();_(3),w("ngForOf",r.packages)}}function nj(e,t){if(1&e){const r=Ae();h(0,"span",45),R("click",function(){ne(r);const o=k().index;return re(k().configuration.removeReport(o))}),h(1,"a",46),v(2,"i",47),p()()}}const rj=function(e){return{"input-group":e}};function oj(e,t){if(1&e){const r=Ae();h(0,"div",38)(1,"div",42)(2,"input",43),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.reports[s]=o)}),p(),P(3,nj,3,0,"span",44),p()()}if(2&e){const r=t.index,n=k();_(1),w("ngClass",$i(4,rj,r>0)),_(1),An("name","report_",r,""),w("ngModel",n.configuration.reports[r]),_(1),w("ngIf",r>0)}}const ij=function(e,t){return{"btn-outline-primary":e,"btn-primary":t}};function sj(e,t){if(1&e){const r=Ae();h(0,"button",48),R("click",function(){const i=ne(r).$implicit,s=k();return re(s.configuration.selectedType=s.configuration.selectedType===i?null:i)}),f(1),p()}if(2&e){const r=t.$implicit,n=k();w("ngClass",k_(2,ij,r!==n.configuration.selectedType,r===n.configuration.selectedType)),_(1),Ce(r)}}function aj(e,t){if(1&e){const r=Ae();h(0,"span",53),v(1,"i",54),f(2," Please specify a "),h(3,"a",9),R("click",function(){return ne(r),re(k(3).scrollToHistoryDir())}),f(4,"history directory"),p()()}}function lj(e,t){if(1&e&&(ut(0),v(1,"br",55),h(2,"a",29),f(3,"Sample report"),p(),f(4,"\xa0"),h(5,"a",29),v(6,"i",56),p(),dt()),2&e){const r=k(2).$implicit;_(2),w("href",r.sampleReport,ro),_(3),w("href",r.sampleReport,ro)}}function cj(e,t){if(1&e){const r=Ae();h(0,"div",50)(1,"label",36)(2,"input",51),R("change",function(){ne(r);const o=k().$implicit;return re(o.checked=!o.checked)}),p(),h(3,"b"),f(4),p(),P(5,aj,5,0,"span",52),v(6,"br"),h(7,"div",38),f(8),P(9,lj,7,2,"ng-container",5),p()()()}if(2&e){const r=k().$implicit,n=k();_(2),w("checked",r.checked),_(2),Ce(r.name),_(1),w("ngIf",r.checked&&r.requiresHistoryDir&&!n.configuration.historydir),_(3),xn("",r.description," "),_(1),w("ngIf",r.sampleReport)}}function uj(e,t){if(1&e&&(ut(0),P(1,cj,10,5,"div",49),dt()),2&e){const r=t.$implicit,n=k();_(1),w("ngIf",!n.configuration.selectedType||r.types.indexOf(n.configuration.selectedType)>-1)}}function dj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",58),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.sourcedirectories[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeSourceDirectory(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","sourcedir_",r,""),w("ngModel",n.configuration.sourcedirectories[r])}}function fj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",59),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.plugins[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removePlugin(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","plugin_",r,""),w("ngModel",n.configuration.plugins[r])}}function hj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",60),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.assemblyfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeAssemblyFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","assemblyfilter_",r,""),w("ngModel",n.configuration.assemblyfilters[r])}}function pj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",61),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.classfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeClassFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","classfilter_",r,""),w("ngModel",n.configuration.classfilters[r])}}function gj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",62),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.filefilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeFileFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","filefilter_",r,""),w("ngModel",n.configuration.filefilters[r])}}function mj(e,t){if(1&e&&(h(0,"option",63),f(1),p()),2&e){const r=t.$implicit;w("value",r),_(1),Ce(r)}}function vj(e,t){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),v(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const r=t.$implicit;_(2),Ce(r.tool),_(3),Ce(r.command)}}function yj(e,t){1&e&&(h(0,"span"),v(1,"i",65),f(2," Copy"),p())}function _j(e,t){1&e&&(h(0,"span"),v(1,"i",66),f(2," Copied"),p())}function Cj(e,t){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),v(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const r=t.$implicit;_(2),Ce(r.tool),_(3),Ce(r.command)}}function Dj(e,t){1&e&&(h(0,"span"),v(1,"i",65),f(2," Copy"),p())}function bj(e,t){1&e&&(h(0,"span"),v(1,"i",66),f(2," Copied"),p())}const wj=function(){return["/pro"]},Ej=[{path:"",component:d3,pathMatch:"full",title:"Home",data:{canonical:"/"}},{path:"features",component:o3,title:"Features",data:{canonical:"/features"}},{path:"features.html",redirectTo:"/features"},{path:"getstarted",component:s3,title:"Get started",data:{canonical:"/getstarted"}},{path:"getstarted.html",redirectTo:"/getstarted"},{path:"usage",component:(()=>{var e;class t{constructor(){this.versions=Lt,this.lastResult="",this.usageCopied=!1,this.configuration=new Q3,this.environments=[new sc(".NET Core",".NET Core"),new sc(".NET Framework","The full .NET framework"),new sc("Azure DevOps",null),new sc("Github Action",null)],this.packages=[new ic("ReportGenerator","https://www.nuget.org/packages/ReportGenerator",[".NET Framework",".NET Core"],"Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script.",[new kh("Package Manager",`Install-Package ReportGenerator -Version ${Lt.version}`),new kh(".NET CLI",`dotnet add package ReportGenerator --version ${Lt.version}`)],[new ws(".NET Framework",`$(UserProfile)\\.nuget\\packages\\reportgenerator\\${Lt.version}\\tools\\net47\\ReportGenerator.exe`),new ws(".NET Core",`dotnet $(UserProfile)\\.nuget\\packages\\reportgenerator\\${Lt.version}\\tools\\net6.0\\ReportGenerator.dll`)]),new ic("dotnet-reportgenerator-globaltool","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool",[".NET Core"],"Use this package if your project is based on .NET Core and you want to use ReportGenerator as a (global) 'DotnetTool'.",[new kh(".NET CLI",`dotnet tool install --global dotnet-reportgenerator-globaltool --version ${Lt.version}\r\n\r\ndotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version ${Lt.version}\r\n\r\ndotnet new tool-manifest\r\ndotnet tool install dotnet-reportgenerator-globaltool --version ${Lt.version}`)],[new ws(".NET Core","reportgenerator")]),new Y3("Azure DevOps","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator",["Azure DevOps"],"Use this package within Azure DevOps",[],[new ws("Azure DevOps","reportgenerator")]),new X3("GitHub Action","https://github.com/marketplace/actions/reportgenerator",["Github Action"],"Use this package within Github Actions",[],[new ws("Github Action","danielpalme/ReportGenerator-GitHub-Action")])],this.selectedEnvironment=this.environments[0],this.selectedPackage=this.packages[0]}selectedEnvironmentChanged(){this.selectedPackage=this.packages.find(n=>n.runtimes.indexOf(this.selectedEnvironment.name)>-1)}severalPackagesAvailable(){return this.packages.filter(n=>n.runtimes.indexOf(this.selectedEnvironment.name)>-1).length>1}getUsage(){const n=this.configuration.getUsage(this.selectedPackage,this.selectedEnvironment.name);return this.lastResult!==n&&(this.lastResult=n,this.usageCopied=!1),n}copy(){try{navigator.clipboard.writeText(this.getUsage()),this.usageCopied=!0}catch(n){console.error("Failed to copy license",n)}}scrollToHistoryDir(){return document.querySelector("#historydir").scrollIntoView(!0),!1}trackByIndex(n,o){return n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-usage-component"]],standalone:!0,features:[Mt],decls:219,vars:41,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-md-7"],["class","form-check",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"alert","alert-info"],["class","mb-3",4,"ngFor","ngForOf","ngForTrackBy"],[1,"input-group","mb-3"],["href","",3,"click"],[1,"fa","fa-plus-circle"],["type","text","name","targetdir","placeholder","The target directory","required","",1,"form-control",3,"ngModel","ngModelChange"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"me-2"],["type","button","class","btn btn-sm me-1 mb-1",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[4,"ngFor","ngForOf","ngForTrackBy"],["class","input-group mb-3",4,"ngFor","ngForOf","ngForTrackBy"],["id","historydir"],["type","text","name","historydir","placeholder","The history directory",1,"form-control",3,"ngModel","required","ngModelChange"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage"],["name","verbosity",1,"form-select",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["type","text","name","title","placeholder","Title",1,"form-control",3,"ngModel","ngModelChange"],["type","text","name","tag","placeholder","Optional tag or build version",1,"form-control",3,"ngModel","ngModelChange"],[3,"routerLink"],["type","text","name","license","placeholder","Optional license for PRO version","rows","4",1,"form-control",3,"ngModel","ngModelChange"],[1,"col-md-5"],[1,"d-md-none","mt-5"],["target","_blank",3,"href"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-4"],[1,"text-dark","bg-light","p-2","border"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"d-none","d-md-block","sticky"],[1,"form-check"],[1,"form-check-label"],["type","radio","name","environment",1,"form-check-input",3,"ngModel","value","checked","ngModelChange"],[1,"mb-3"],[4,"ngFor","ngForOf"],["class","form-check",4,"ngIf"],["type","radio","name","package",1,"form-check-input",3,"ngModel","value","ngModelChange"],[3,"ngClass"],["type","text","placeholder","The path of the coverage file","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["class","input-group-text",3,"click",4,"ngIf"],[1,"input-group-text",3,"click"],["href",""],[1,"fa","fa-trash","text-danger"],["type","button",1,"btn","btn-sm","me-1","mb-1",3,"ngClass","click"],["class","form-check mt-1",4,"ngIf"],[1,"form-check","mt-1"],["type","checkbox","name","reporttype",1,"form-check-input",3,"checked","change"],["class","text-danger ms-2",4,"ngIf"],[1,"text-danger","ms-2"],[1,"fa-solid","fa-triangle-exclamation"],[1,"mt-1"],[1,"fa-solid","fa-arrow-up-right-from-square"],[1,"input-group"],["type","text","placeholder","The source directory","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The path of the plugin","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for assemlies","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for classes","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for files","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],[3,"value"],[1,"mt-2"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Usage"),p(),h(3,"div",2)(4,"div",3)(5,"form")(6,"h3"),f(7,"Environment"),p(),P(8,J3,8,5,"div",4),v(9,"hr"),P(10,tj,4,1,"ng-container",5),v(11,"hr"),h(12,"h3"),f(13,"Reports"),p(),h(14,"div",6),f(15,"Path to the coverage report(s) that should be parsed."),v(16,"br"),f(17,"Globbing is supported."),p(),P(18,oj,4,6,"div",7),h(19,"div",8)(20,"a",9),R("click",function(){return o.configuration.addReport()}),v(21,"i",10),f(22," Add report"),p()(),v(23,"br"),h(24,"h3"),f(25,"Target directory"),p(),h(26,"div",6),f(27,"The directory where the generated report(s) should be saved."),p(),h(28,"div",8)(29,"input",11),R("ngModelChange",function(s){return o.configuration.targetdir=s}),p()(),v(30,"br"),h(31,"h3"),f(32,"Report types"),p(),h(33,"div",6),f(34,"Download "),h(35,"a",12),f(36,"sample reports"),p()(),h(37,"span",13),f(38,"Filter:"),p(),P(39,sj,2,5,"button",14),v(40,"br"),P(41,uj,2,1,"ng-container",15),h(42,"h3"),f(43,"Source directories"),p(),h(44,"div",6),f(45,"Optional directories which contain the corresponding source code."),v(46,"br"),f(47,"The source directories are used if coverage report contains classes without path information."),p(),P(48,dj,6,2,"div",16),h(49,"div",8)(50,"a",9),R("click",function(){return o.configuration.addSourceDirectory()}),v(51,"i",10),f(52," Add source directory"),p()(),v(53,"br"),h(54,"h3",17),f(55,"History directory"),p(),h(56,"div",6),f(57,"Optional directory for storing "),h(58,"b"),f(59,"persistent"),p(),f(60," coverage information. Choose a directory which does not get deleted between builds."),v(61,"br"),f(62,"Required to show the history chart in the HTML reports."),p(),h(63,"div",8)(64,"input",18),R("ngModelChange",function(s){return o.configuration.historydir=s}),p()(),v(65,"br"),h(66,"h3"),f(67,"Plugins"),p(),h(68,"div",6),f(69,"Optional plugin files for "),h(70,"a",19),f(71,"custom reports"),p(),f(72," or "),h(73,"a",20),f(74,"custom history storage"),p(),f(75,"."),p(),P(76,fj,6,2,"div",16),h(77,"div",8)(78,"a",9),R("click",function(){return o.configuration.addPlugin()}),v(79,"i",10),f(80," Add plugin"),p()(),v(81,"br"),h(82,"h3"),f(83,"Assembly filters"),p(),h(84,"div",6),f(85,"Optional list of "),h(86,"b"),f(87,"assemblies"),p(),f(88," that should be included or excluded in the report. "),v(89,"br"),f(90,"Exclusion filters take precedence over inclusion filters. "),v(91,"br"),f(92,"Wildcards are allowed."),v(93,"br"),h(94,"p"),f(95,"Examples:"),v(96,"br"),h(97,"code"),f(98,"+Included"),p(),v(99,"br"),h(100,"code"),f(101,"-Excluded"),p()()(),P(102,hj,6,2,"div",16),h(103,"div",8)(104,"a",9),R("click",function(){return o.configuration.addAssemblyFilter()}),v(105,"i",10),f(106," Add assembly filter"),p()(),v(107,"br"),h(108,"h3"),f(109,"Class filters"),p(),h(110,"div",6),f(111,"Optional list of "),h(112,"b"),f(113,"classes"),p(),f(114," that should be included or excluded in the report. "),v(115,"br"),f(116,"Exclusion filters take precedence over inclusion filters. "),v(117,"br"),f(118,"Wildcards are allowed."),v(119,"br"),h(120,"p"),f(121,"Examples:"),v(122,"br"),h(123,"code"),f(124,"+Included"),p(),v(125,"br"),h(126,"code"),f(127,"-Excluded"),p()()(),P(128,pj,6,2,"div",16),h(129,"div",8)(130,"a",9),R("click",function(){return o.configuration.addClassFilter()}),v(131,"i",10),f(132," Add class filter"),p()(),v(133,"br"),h(134,"h3"),f(135,"File filters"),p(),h(136,"div",6),f(137,"Optional list of "),h(138,"b"),f(139,"files"),p(),f(140," that should be included or excluded in the report. "),v(141,"br"),f(142,"Exclusion filters take precedence over inclusion filters. "),v(143,"br"),f(144,"Wildcards are allowed."),v(145,"br"),h(146,"p"),f(147,"Examples:"),v(148,"br"),h(149,"code"),f(150,"+Included"),p(),v(151,"br"),h(152,"code"),f(153,"-Excluded"),p()()(),P(154,gj,6,2,"div",16),h(155,"div",8)(156,"a",9),R("click",function(){return o.configuration.addFileFilter()}),v(157,"i",10),f(158," Add file filter"),p()(),v(159,"br"),h(160,"h3"),f(161,"Verbosity"),p(),h(162,"div",6),f(163,"The verbosity level of the log messages."),p(),h(164,"div",8)(165,"select",21),R("ngModelChange",function(s){return o.configuration.selectedverbosity=s}),P(166,mj,2,2,"option",22),p()(),v(167,"br"),h(168,"h3"),f(169,"Title"),p(),h(170,"div",6),f(171,"Optional title."),p(),h(172,"div",8)(173,"input",23),R("ngModelChange",function(s){return o.configuration.title=s}),p()(),v(174,"br"),h(175,"h3"),f(176,"Tag"),p(),h(177,"div",6),f(178,"Optional tag or build version."),p(),h(179,"div",8)(180,"input",24),R("ngModelChange",function(s){return o.configuration.tag=s}),p()(),v(181,"br"),h(182,"h3"),f(183,"License"),p(),h(184,"div",6),f(185,"Optional license. Get your license here: "),h(186,"a",25),f(187,"https://reportgenerator.io/pro"),p()(),h(188,"div",8)(189,"textarea",26),R("ngModelChange",function(s){return o.configuration.license=s}),p()()()(),h(190,"div",27)(191,"div",28)(192,"h3"),f(193,"Instructions"),p(),f(194," Install "),h(195,"a",29),f(196),p(),P(197,vj,6,2,"div",30),h(198,"h4",31),f(199,"Usage"),p(),h(200,"pre",32),f(201),p(),h(202,"button",33),R("click",function(){return o.copy()}),P(203,yj,3,0,"span",5),P(204,_j,3,0,"span",5),p()(),h(205,"div",34)(206,"h3"),f(207,"Instructions"),p(),f(208," Install "),h(209,"a",29),f(210),p(),P(211,Cj,6,2,"div",30),h(212,"h4",31),f(213,"Usage"),p(),h(214,"pre",32),f(215),p(),h(216,"button",33),R("click",function(){return o.copy()}),P(217,Dj,3,0,"span",5),P(218,bj,3,0,"span",5),p()()()()()),2&n&&(_(8),w("ngForOf",o.environments),_(2),w("ngIf",o.severalPackagesAvailable()),_(8),w("ngForOf",o.configuration.reports)("ngForTrackBy",o.trackByIndex),_(11),w("ngModel",o.configuration.targetdir),_(10),w("ngForOf",o.configuration.types)("ngForTrackBy",o.trackByIndex),_(2),w("ngForOf",o.configuration.reporttypes)("ngForTrackBy",o.trackByIndex),_(7),w("ngForOf",o.configuration.sourcedirectories)("ngForTrackBy",o.trackByIndex),_(16),w("ngModel",o.configuration.historydir)("required",o.configuration.historyDirRequired()),_(12),w("ngForOf",o.configuration.plugins)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.assemblyfilters)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.classfilters)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.filefilters)("ngForTrackBy",o.trackByIndex),_(11),w("ngModel",o.configuration.selectedverbosity),_(1),w("ngForOf",o.configuration.verbosities)("ngForTrackBy",o.trackByIndex),_(7),w("ngModel",o.configuration.title),_(7),w("ngModel",o.configuration.tag),_(6),w("routerLink",K(40,wj)),_(3),w("ngModel",o.configuration.license),_(6),w("href",o.selectedPackage.url,ro),_(1),Ce(o.selectedPackage.name),_(1),w("ngForOf",o.selectedPackage.installOptions),_(4),Ce(o.getUsage()),_(2),w("ngIf",!o.usageCopied),_(1),w("ngIf",o.usageCopied),_(5),w("href",o.selectedPackage.url,ro),_(1),Ce(o.selectedPackage.name),_(1),w("ngForOf",o.selectedPackage.installOptions),_(4),Ce(o.getUsage()),_(2),w("ngIf",!o.usageCopied),_(1),w("ngIf",o.usageCopied))},dependencies:[ec,Xl,Ww,Yw,jo,Jl,bh,Ul,Bl,$o,Th,Cs,Bo,Ef,vl,ml,pn],styles:[".sticky[_ngcontent-%COMP%]{position:sticky;top:100px}"]}),t})(),title:"Usage",data:{canonical:"/usage"}},{path:"usage.html",redirectTo:"/usage"},{path:"pro",component:Z3,title:"PRO",data:{canonical:"/pro"}},{path:"pro.html",redirectTo:"/pro"},{path:"contact",component:r3,title:"Contact",data:{canonical:"/contact"}},{path:"contact.html",redirectTo:"/contact"},{path:"404",component:f3,title:"404 - Not found"},{path:"**",redirectTo:"/404"}];(function Zk(e,t){return BN({rootComponent:e,...$D(t)})})(xL,{providers:[xm(eF,(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[Xb.forRoot(Ej,{scrollPositionRestoration:"enabled",scrollOffset:[0,0],anchorScrolling:"enabled"}),Xb]}),t})(),ec),bE,wE,yE,function qV(...e){const t=[Nh,hE,dE,{provide:tc,useExisting:dE},{provide:nc,useExisting:hE},{provide:bs,useValue:zV,multi:!0},{provide:Oh,useValue:!0},{provide:mE,useClass:GV}];for(const r of e)t.push(...r.\u0275providers);return Ru(t)}(function WV(){return function Ar(e,t){return{\u0275kind:e,\u0275providers:t}}(or.LegacyInterceptors,[{provide:vE,useFactory:FV},{provide:bs,useExisting:vE,multi:!0}])}())]}).catch(e=>console.error(e))}},ue=>{ue(ue.s=603)}]); \ No newline at end of file +"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[179],{603:()=>{function ue(e){return"function"==typeof e}function Wo(e){const r=e(n=>{Error.call(n),n.stack=(new Error).stack});return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}const Es=Wo(e=>function(r){e(this),this.message=r?`${r.length} errors occurred during unsubscription:\n${r.map((n,o)=>`${o+1}) ${n.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=r});function Zo(e,t){if(e){const r=e.indexOf(t);0<=r&&e.splice(r,1)}}class gt{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;const{_parentage:r}=this;if(r)if(this._parentage=null,Array.isArray(r))for(const i of r)i.remove(this);else r.remove(this);const{initialTeardown:n}=this;if(ue(n))try{n()}catch(i){t=i instanceof Es?i.errors:[i]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const i of o)try{Vh(i)}catch(s){t=t??[],s instanceof Es?t=[...t,...s.errors]:t.push(s)}}if(t)throw new Es(t)}}add(t){var r;if(t&&t!==this)if(this.closed)Vh(t);else{if(t instanceof gt){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(r=this._finalizers)&&void 0!==r?r:[]).push(t)}}_hasParent(t){const{_parentage:r}=this;return r===t||Array.isArray(r)&&r.includes(t)}_addParent(t){const{_parentage:r}=this;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t}_removeParent(t){const{_parentage:r}=this;r===t?this._parentage=null:Array.isArray(r)&&Zo(r,t)}remove(t){const{_finalizers:r}=this;r&&Zo(r,t),t instanceof gt&&t._removeParent(this)}}gt.EMPTY=(()=>{const e=new gt;return e.closed=!0,e})();const Fh=gt.EMPTY;function Lh(e){return e instanceof gt||e&&"closed"in e&&ue(e.remove)&&ue(e.add)&&ue(e.unsubscribe)}function Vh(e){ue(e)?e():e.unsubscribe()}const ir={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Ms={setTimeout(e,t,...r){const{delegate:n}=Ms;return n?.setTimeout?n.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){const{delegate:t}=Ms;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function jh(e){Ms.setTimeout(()=>{const{onUnhandledError:t}=ir;if(!t)throw e;t(e)})}function lc(){}const ME=cc("C",void 0,void 0);function cc(e,t,r){return{kind:e,value:t,error:r}}let sr=null;function Is(e){if(ir.useDeprecatedSynchronousErrorHandling){const t=!sr;if(t&&(sr={errorThrown:!1,error:null}),e(),t){const{errorThrown:r,error:n}=sr;if(sr=null,r)throw n}}else e()}class uc extends gt{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,Lh(t)&&t.add(this)):this.destination=NE}static create(t,r,n){return new Ss(t,r,n)}next(t){this.isStopped?fc(function SE(e){return cc("N",e,void 0)}(t),this):this._next(t)}error(t){this.isStopped?fc(function IE(e){return cc("E",void 0,e)}(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?fc(ME,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()}}}const AE=Function.prototype.bind;function dc(e,t){return AE.call(e,t)}class xE{constructor(t){this.partialObserver=t}next(t){const{partialObserver:r}=this;if(r.next)try{r.next(t)}catch(n){Ts(n)}}error(t){const{partialObserver:r}=this;if(r.error)try{r.error(t)}catch(n){Ts(n)}else Ts(t)}complete(){const{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(r){Ts(r)}}}class Ss extends uc{constructor(t,r,n){let o;if(super(),ue(t)||!t)o={next:t??void 0,error:r??void 0,complete:n??void 0};else{let i;this&&ir.useDeprecatedNextContext?(i=Object.create(t),i.unsubscribe=()=>this.unsubscribe(),o={next:t.next&&dc(t.next,i),error:t.error&&dc(t.error,i),complete:t.complete&&dc(t.complete,i)}):o=t}this.destination=new xE(o)}}function Ts(e){ir.useDeprecatedSynchronousErrorHandling?function TE(e){ir.useDeprecatedSynchronousErrorHandling&&sr&&(sr.errorThrown=!0,sr.error=e)}(e):jh(e)}function fc(e,t){const{onStoppedNotification:r}=ir;r&&Ms.setTimeout(()=>r(e,t))}const NE={closed:!0,next:lc,error:function RE(e){throw e},complete:lc},hc="function"==typeof Symbol&&Symbol.observable||"@@observable";function jn(e){return e}function Hh(e){return 0===e.length?jn:1===e.length?e[0]:function(r){return e.reduce((n,o)=>o(n),r)}}let Ie=(()=>{class e{constructor(r){r&&(this._subscribe=r)}lift(r){const n=new e;return n.source=this,n.operator=r,n}subscribe(r,n,o){const i=function kE(e){return e&&e instanceof uc||function PE(e){return e&&ue(e.next)&&ue(e.error)&&ue(e.complete)}(e)&&Lh(e)}(r)?r:new Ss(r,n,o);return Is(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(r){try{return this._subscribe(r)}catch(n){r.error(n)}}forEach(r,n){return new(n=Uh(n))((o,i)=>{const s=new Ss({next:a=>{try{r(a)}catch(l){i(l),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(r){var n;return null===(n=this.source)||void 0===n?void 0:n.subscribe(r)}[hc](){return this}pipe(...r){return Hh(r)(this)}toPromise(r){return new(r=Uh(r))((n,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>n(i))})}}return e.create=t=>new e(t),e})();function Uh(e){var t;return null!==(t=e??ir.Promise)&&void 0!==t?t:Promise}const FE=Wo(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let Vt=(()=>{class e extends Ie{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(r){const n=new Bh(this,this);return n.operator=r,n}_throwIfClosed(){if(this.closed)throw new FE}next(r){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const n of this.currentObservers)n.next(r)}})}error(r){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=r;const{observers:n}=this;for(;n.length;)n.shift().error(r)}})}complete(){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:r}=this;for(;r.length;)r.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var r;return(null===(r=this.observers)||void 0===r?void 0:r.length)>0}_trySubscribe(r){return this._throwIfClosed(),super._trySubscribe(r)}_subscribe(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)}_innerSubscribe(r){const{hasError:n,isStopped:o,observers:i}=this;return n||o?Fh:(this.currentObservers=null,i.push(r),new gt(()=>{this.currentObservers=null,Zo(i,r)}))}_checkFinalizedStatuses(r){const{hasError:n,thrownError:o,isStopped:i}=this;n?r.error(o):i&&r.complete()}asObservable(){const r=new Ie;return r.source=this,r}}return e.create=(t,r)=>new Bh(t,r),e})();class Bh extends Vt{constructor(t,r){super(),this.destination=t,this.source=r}next(t){var r,n;null===(n=null===(r=this.destination)||void 0===r?void 0:r.next)||void 0===n||n.call(r,t)}error(t){var r,n;null===(n=null===(r=this.destination)||void 0===r?void 0:r.error)||void 0===n||n.call(r,t)}complete(){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.complete)||void 0===r||r.call(t)}_subscribe(t){var r,n;return null!==(n=null===(r=this.source)||void 0===r?void 0:r.subscribe(t))&&void 0!==n?n:Fh}}function $h(e){return ue(e?.lift)}function Pe(e){return t=>{if($h(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}function Re(e,t,r,n,o){return new LE(e,t,r,n,o)}class LE extends uc{constructor(t,r,n,o,i,s){super(t),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=r?function(a){try{r(a)}catch(l){t.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){t.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=n?function(){try{n()}catch(a){t.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:r}=this;super.unsubscribe(),!r&&(null===(t=this.onFinalize)||void 0===t||t.call(this))}}}function ee(e,t){return Pe((r,n)=>{let o=0;r.subscribe(Re(n,i=>{n.next(e.call(t,i,o++))}))})}function Hn(e){return this instanceof Hn?(this.v=e,this):new Hn(e)}function Wh(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,t=e[Symbol.asyncIterator];return t?t.call(e):(e=function vc(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Zh=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function Yh(e){return ue(e?.then)}function Qh(e){return ue(e[hc])}function Xh(e){return Symbol.asyncIterator&&ue(e?.[Symbol.asyncIterator])}function Jh(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Kh=function i1(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function ep(e){return ue(e?.[Kh])}function tp(e){return function qh(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,n=r.apply(e,t||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(g){n[g]&&(o[g]=function(m){return new Promise(function(y,C){i.push([g,m,y,C])>1||a(g,m)})})}function a(g,m){try{!function l(g){g.value instanceof Hn?Promise.resolve(g.value.v).then(c,u):d(i[0][2],g)}(n[g](m))}catch(y){d(i[0][3],y)}}function c(g){a("next",g)}function u(g){a("throw",g)}function d(g,m){g(m),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const r=e.getReader();try{for(;;){const{value:n,done:o}=yield Hn(r.read());if(o)return yield Hn(void 0);yield yield Hn(n)}}finally{r.releaseLock()}})}function np(e){return ue(e?.getReader)}function jt(e){if(e instanceof Ie)return e;if(null!=e){if(Qh(e))return function s1(e){return new Ie(t=>{const r=e[hc]();if(ue(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Zh(e))return function a1(e){return new Ie(t=>{for(let r=0;r{e.then(r=>{t.closed||(t.next(r),t.complete())},r=>t.error(r)).then(null,jh)})}(e);if(Xh(e))return rp(e);if(ep(e))return function c1(e){return new Ie(t=>{for(const r of e)if(t.next(r),t.closed)return;t.complete()})}(e);if(np(e))return function u1(e){return rp(tp(e))}(e)}throw Jh(e)}function rp(e){return new Ie(t=>{(function d1(e,t){var r,n,o,i;return function Gh(e,t,r,n){return new(r||(r=Promise))(function(i,s){function a(u){try{c(n.next(u))}catch(d){s(d)}}function l(u){try{c(n.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof r?i:new r(function(s){s(i)})}(u.value).then(a,l)}c((n=n.apply(e,t||[])).next())})}(this,void 0,void 0,function*(){try{for(r=Wh(e);!(n=yield r.next()).done;)if(t.next(n.value),t.closed)return}catch(s){o={error:s}}finally{try{n&&!n.done&&(i=r.return)&&(yield i.call(r))}finally{if(o)throw o.error}}t.complete()})})(e,t).catch(r=>t.error(r))})}function vn(e,t,r,n=0,o=!1){const i=t.schedule(function(){r(),o?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(i),!o)return i}function Ve(e,t,r=1/0){return ue(t)?Ve((n,o)=>ee((i,s)=>t(n,i,o,s))(jt(e(n,o))),r):("number"==typeof t&&(r=t),Pe((n,o)=>function f1(e,t,r,n,o,i,s,a){const l=[];let c=0,u=0,d=!1;const g=()=>{d&&!l.length&&!c&&t.complete()},m=C=>c{i&&t.next(C),c++;let b=!1;jt(r(C,u++)).subscribe(Re(t,E=>{o?.(E),i?m(E):t.next(E)},()=>{b=!0},void 0,()=>{if(b)try{for(c--;l.length&&cy(E)):y(E)}g()}catch(E){t.error(E)}}))};return e.subscribe(Re(t,m,()=>{d=!0,g()})),()=>{a?.()}}(n,o,e,r)))}function Rr(e=1/0){return Ve(jn,e)}const Kt=new Ie(e=>e.complete());function yc(e){return e[e.length-1]}function op(e){return ue(yc(e))?e.pop():void 0}function Yo(e){return function p1(e){return e&&ue(e.schedule)}(yc(e))?e.pop():void 0}function ip(e,t=0){return Pe((r,n)=>{r.subscribe(Re(n,o=>vn(n,e,()=>n.next(o),t),()=>vn(n,e,()=>n.complete(),t),o=>vn(n,e,()=>n.error(o),t)))})}function sp(e,t=0){return Pe((r,n)=>{n.add(e.schedule(()=>r.subscribe(n),t))})}function ap(e,t){if(!e)throw new Error("Iterable cannot be null");return new Ie(r=>{vn(r,t,()=>{const n=e[Symbol.asyncIterator]();vn(r,t,()=>{n.next().then(o=>{o.done?r.complete():r.next(o.value)})},0,!0)})})}function Ne(e,t){return t?function D1(e,t){if(null!=e){if(Qh(e))return function m1(e,t){return jt(e).pipe(sp(t),ip(t))}(e,t);if(Zh(e))return function y1(e,t){return new Ie(r=>{let n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}(e,t);if(Yh(e))return function v1(e,t){return jt(e).pipe(sp(t),ip(t))}(e,t);if(Xh(e))return ap(e,t);if(ep(e))return function _1(e,t){return new Ie(r=>{let n;return vn(r,t,()=>{n=e[Kh](),vn(r,t,()=>{let o,i;try{({value:o,done:i}=n.next())}catch(s){return void r.error(s)}i?r.complete():r.next(o)},0,!0)}),()=>ue(n?.return)&&n.return()})}(e,t);if(np(e))return function C1(e,t){return ap(tp(e),t)}(e,t)}throw Jh(e)}(e,t):jt(e)}class At extends Vt{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const r=super._subscribe(t);return!r.closed&&t.next(this._value),r}getValue(){const{hasError:t,thrownError:r,_value:n}=this;if(t)throw r;return this._throwIfClosed(),n}next(t){super.next(this._value=t)}}function V(...e){return Ne(e,Yo(e))}function ar(e){return e<=0?()=>Kt:Pe((t,r)=>{let n=0;t.subscribe(Re(r,o=>{++n<=e&&(r.next(o),e<=n&&r.complete())}))})}function lp(e={}){const{connector:t=(()=>new Vt),resetOnError:r=!0,resetOnComplete:n=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const g=()=>{a?.unsubscribe(),a=null},m=()=>{g(),s=l=null,u=d=!1},y=()=>{const C=s;m(),C?.unsubscribe()};return Pe((C,b)=>{c++,!d&&!u&&g();const E=l=l??t();b.add(()=>{c--,0===c&&!d&&!u&&(a=_c(y,o))}),E.subscribe(b),s||(s=new Ss({next:D=>E.next(D),error:D=>{d=!0,g(),a=_c(m,r,D),E.error(D)},complete:()=>{u=!0,g(),a=_c(m,n),E.complete()}}),Ne(C).subscribe(s))})(i)}}function _c(e,t,...r){return!0===t?(e(),null):!1===t?null:t(...r).pipe(ar(1)).subscribe(()=>e())}function Ht(e,t){return Pe((r,n)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&n.complete();r.subscribe(Re(n,l=>{o?.unsubscribe();let c=0;const u=i++;jt(e(l,u)).subscribe(o=Re(n,d=>n.next(t?t(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function E1(e,t){return e===t}function ae(e){for(let t in e)if(e[t]===ae)return t;throw Error("Could not find renamed property on target object.")}function As(e,t){for(const r in t)t.hasOwnProperty(r)&&!e.hasOwnProperty(r)&&(e[r]=t[r])}function ke(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ke).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const r=t.indexOf("\n");return-1===r?t:t.substring(0,r)}function Cc(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const M1=ae({__forward_ref__:ae});function fe(e){return e.__forward_ref__=fe,e.toString=function(){return ke(this())},e}function U(e){return Dc(e)?e():e}function Dc(e){return"function"==typeof e&&e.hasOwnProperty(M1)&&e.__forward_ref__===fe}function bc(e){return e&&!!e.\u0275providers}const cp="https://g.co/ng/security#xss";class S extends Error{constructor(t,r){super(function xs(e,t){return`NG0${Math.abs(e)}${t?": "+t:""}`}(t,r)),this.code=t}}function $(e){return"string"==typeof e?e:null==e?"":String(e)}function wc(e,t){throw new S(-201,!1)}function xt(e,t){null==e&&function j(e,t,r,n){throw new Error(`ASSERTION ERROR: ${e}`+(null==n?"":` [Expected=> ${r} ${n} ${t} <=Actual]`))}(t,e,null,"!=")}function L(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function en(e){return{providers:e.providers||[],imports:e.imports||[]}}function Rs(e){return up(e,Os)||up(e,dp)}function up(e,t){return e.hasOwnProperty(t)?e[t]:null}function Ns(e){return e&&(e.hasOwnProperty(Ec)||e.hasOwnProperty(O1))?e[Ec]:null}const Os=ae({\u0275prov:ae}),Ec=ae({\u0275inj:ae}),dp=ae({ngInjectableDef:ae}),O1=ae({ngInjectorDef:ae});var Y=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}(Y||{});let Mc;function it(e){const t=Mc;return Mc=e,t}function hp(e,t,r){const n=Rs(e);return n&&"root"==n.providedIn?void 0===n.value?n.value=n.factory():n.value:r&Y.Optional?null:void 0!==t?t:void wc(ke(e))}const he=globalThis,Qo={},xc="__NG_DI_FLAG__",Ps="ngTempTokenPath",F1=/\n/gm,gp="__source";let Nr;function Un(e){const t=Nr;return Nr=e,t}function j1(e,t=Y.Default){if(void 0===Nr)throw new S(-203,!1);return null===Nr?hp(e,void 0,t):Nr.get(e,t&Y.Optional?null:void 0,t)}function F(e,t=Y.Default){return(function fp(){return Mc}()||j1)(U(e),t)}function A(e,t=Y.Default){return F(e,ks(t))}function ks(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Rc(e){const t=[];for(let r=0;rt){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const m=8&n?g:null;if(m&&-1!==_p(m,c,0)||2&n&&c!==g){if(Bt(n))return!1;s=!0}}}}else{if(!s&&!Bt(n)&&!Bt(l))return!1;if(s&&Bt(l))continue;s=!1,n=l|1&n}}return Bt(n)||s}function Bt(e){return 0==(1&e)}function q1(e,t,r,n){if(null===t)return-1;let o=0;if(n||!r){let i=!1;for(;o-1)for(r++;r0?'="'+a+'"':"")+"]"}else 8&n?o+="."+s:4&n&&(o+=" "+s);else""!==o&&!Bt(s)&&(t+=Ip(i,o),o=""),n=s,i=i||!Bt(n);r++}return""!==o&&(t+=Ip(i,o)),t}function vt(e){return yn(()=>{const t=Tp(e),r={...t,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===Fs.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Ut.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};Ap(r);const n=e.dependencies;return r.directiveDefs=Vs(n,!1),r.pipeDefs=Vs(n,!0),r.id=function s0(e){let t=0;const r=[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(const o of r)t=Math.imul(31,t)+o.charCodeAt(0)<<0;return t+=2147483648,"c"+t}(r),r})}function t0(e){return X(e)||je(e)}function n0(e){return null!==e}function Cn(e){return yn(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function Sp(e,t){if(null==e)return tn;const r={};for(const n in e)if(e.hasOwnProperty(n)){let o=e[n],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),r[o]=n,t&&(t[o]=i)}return r}function B(e){return yn(()=>{const t=Tp(e);return Ap(t),t})}function X(e){return e[Ls]||null}function je(e){return e[Nc]||null}function Qe(e){return e[Oc]||null}function yt(e,t){const r=e[vp]||null;if(!r&&!0===t)throw new Error(`Type ${ke(e)} does not have '\u0275mod' property.`);return r}function Tp(e){const 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||tn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:Sp(e.inputs,t),outputs:Sp(e.outputs)}}function Ap(e){e.features?.forEach(t=>t(e))}function Vs(e,t){if(!e)return null;const r=t?Qe:t0;return()=>("function"==typeof e?e():e).map(n=>r(n)).filter(n0)}const we=0,T=1,q=2,_e=3,$t=4,ei=5,ze=6,Pr=7,Se=8,Bn=9,kr=10,G=11,ti=12,xp=13,Fr=14,Te=15,ni=16,Lr=17,nn=18,ri=19,Rp=20,$n=21,Dn=22,oi=23,ii=24,Q=25,kc=1,Np=2,rn=7,Vr=9,He=11;function at(e){return Array.isArray(e)&&"object"==typeof e[kc]}function Xe(e){return Array.isArray(e)&&!0===e[kc]}function Fc(e){return 0!=(4&e.flags)}function cr(e){return e.componentOffset>-1}function Hs(e){return 1==(1&e.flags)}function Gt(e){return!!e.template}function Lc(e){return 0!=(512&e[q])}function ur(e,t){return e.hasOwnProperty(_n)?e[_n]:null}let Ue=null,Us=!1;function Rt(e){const t=Ue;return Ue=e,t}const kp={version: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:()=>{}};function Lp(e){if(!ai(e)||e.dirty){if(!e.producerMustRecompute(e)&&!Hp(e))return void(e.dirty=!1);e.producerRecomputeValue(e),e.dirty=!1}}function jp(e){e.dirty=!0,function Vp(e){if(void 0===e.liveConsumerNode)return;const t=Us;Us=!0;try{for(const r of e.liveConsumerNode)r.dirty||jp(r)}finally{Us=t}}(e),e.consumerMarkedDirty?.(e)}function jc(e){return e&&(e.nextProducerIndex=0),Rt(e)}function Hc(e,t){if(Rt(t),e&&void 0!==e.producerNode&&void 0!==e.producerIndexOfThis&&void 0!==e.producerLastReadVersion){if(ai(e))for(let r=e.nextProducerIndex;re.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}function Hp(e){jr(e);for(let t=0;t0}function jr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let Gp=null;const Zp=()=>{},_0=(()=>({...kp,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!1,consumerMarkedDirty:e=>{e.schedule(e.ref)},hasRun:!1,cleanupFn:Zp}))();class C0{constructor(t,r,n){this.previousValue=t,this.currentValue=r,this.firstChange=n}isFirstChange(){return this.firstChange}}function Nt(){return Yp}function Yp(e){return e.type.prototype.ngOnChanges&&(e.setInput=b0),D0}function D0(){const e=Xp(this),t=e?.current;if(t){const r=e.previous;if(r===tn)e.previous=t;else for(let n in t)r[n]=t[n];e.current=null,this.ngOnChanges(t)}}function b0(e,t,r,n){const o=this.declaredInputs[r],i=Xp(e)||function w0(e,t){return e[Qp]=t}(e,{previous:tn,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new C0(l&&l.currentValue,t,a===tn),e[n]=t}Nt.ngInherit=!0;const Qp="__ngSimpleChanges__";function Xp(e){return e[Qp]||null}const on=function(e,t,r){};function pe(e){for(;Array.isArray(e);)e=e[we];return e}function $s(e,t){return pe(t[e])}function lt(e,t){return pe(t[e.index])}function eg(e,t){return e.data[t]}function _t(e,t){const r=t[e];return at(r)?r:r[we]}function zn(e,t){return null==t?null:e[t]}function tg(e){e[Lr]=0}function A0(e){1024&e[q]||(e[q]|=1024,rg(e,1))}function ng(e){1024&e[q]&&(e[q]&=-1025,rg(e,-1))}function rg(e,t){let r=e[_e];if(null===r)return;r[ei]+=t;let n=r;for(r=r[_e];null!==r&&(1===t&&1===n[ei]||-1===t&&0===n[ei]);)r[ei]+=t,n=r,r=r[_e]}const H={lFrame:pg(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function sg(){return H.bindingsEnabled}function M(){return H.lFrame.lView}function J(){return H.lFrame.tView}function ne(e){return H.lFrame.contextLView=e,e[Se]}function re(e){return H.lFrame.contextLView=null,e}function Be(){let e=ag();for(;null!==e&&64===e.type;)e=e.parent;return e}function ag(){return H.lFrame.currentTNode}function sn(e,t){const r=H.lFrame;r.currentTNode=e,r.isParent=t}function zc(){return H.lFrame.isParent}function qc(){H.lFrame.isParent=!1}function Je(){const e=H.lFrame;let t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function Br(){return H.lFrame.bindingIndex++}function U0(e,t){const r=H.lFrame;r.bindingIndex=r.bindingRootIndex=e,Wc(t)}function Wc(e){H.lFrame.currentDirectiveIndex=e}function dg(){return H.lFrame.currentQueryIndex}function Yc(e){H.lFrame.currentQueryIndex=e}function $0(e){const t=e[T];return 2===t.type?t.declTNode:1===t.type?e[ze]:null}function fg(e,t,r){if(r&Y.SkipSelf){let o=t,i=e;for(;!(o=o.parent,null!==o||r&Y.Host||(o=$0(i),null===o||(i=i[Fr],10&o.type))););if(null===o)return!1;t=o,e=i}const n=H.lFrame=hg();return n.currentTNode=t,n.lView=e,!0}function Qc(e){const t=hg(),r=e[T];H.lFrame=t,t.currentTNode=r.firstChild,t.lView=e,t.tView=r,t.contextLView=e,t.bindingIndex=r.bindingStartIndex,t.inI18n=!1}function hg(){const e=H.lFrame,t=null===e?null:e.child;return null===t?pg(e):t}function pg(e){const 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 null!==e&&(e.child=t),t}function gg(){const e=H.lFrame;return H.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const mg=gg;function Xc(){const e=gg();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 Ke(){return H.lFrame.selectedIndex}function dr(e){H.lFrame.selectedIndex=e}function be(){const e=H.lFrame;return eg(e.tView,e.selectedIndex)}let yg=!0;function Gs(){return yg}function qn(e){yg=e}function zs(e,t){for(let r=t.directiveStart,n=t.directiveEnd;r=n)break}else t[l]<0&&(e[Lr]+=65536),(a>13>16&&(3&e[q])===t&&(e[q]+=8192,Cg(a,i)):Cg(a,i)}const $r=-1;class ci{constructor(t,r,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=r,this.injectImpl=n}}function eu(e){return e!==$r}function ui(e){return 32767&e}function di(e,t){let r=function tM(e){return e>>16}(e),n=t;for(;r>0;)n=n[Fr],r--;return n}let tu=!0;function Zs(e){const t=tu;return tu=e,t}const Dg=255,bg=5;let nM=0;const an={};function Ys(e,t){const r=wg(e,t);if(-1!==r)return r;const n=t[T];n.firstCreatePass&&(e.injectorIndex=t.length,nu(n.data,e),nu(t,null),nu(n.blueprint,null));const o=Qs(e,t),i=e.injectorIndex;if(eu(o)){const s=ui(o),a=di(o,t),l=a[T].data;for(let c=0;c<8;c++)t[i+c]=a[s+c]|l[s+c]}return t[i+8]=o,i}function nu(e,t){e.push(0,0,0,0,0,0,0,0,t)}function wg(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function Qs(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let r=0,n=null,o=t;for(;null!==o;){if(n=xg(o),null===n)return $r;if(r++,o=o[Fr],-1!==n.injectorIndex)return n.injectorIndex|r<<16}return $r}function ru(e,t,r){!function rM(e,t,r){let n;"string"==typeof r?n=r.charCodeAt(0)||0:r.hasOwnProperty(Jo)&&(n=r[Jo]),null==n&&(n=r[Jo]=nM++);const o=n&Dg;t.data[e+(o>>bg)]|=1<=0?t&Dg:lM:t}(r);if("function"==typeof i){if(!fg(t,e,n))return n&Y.Host?Eg(o,0,n):Mg(t,r,n,o);try{let s;if(s=i(n),null!=s||n&Y.Optional)return s;wc()}finally{mg()}}else if("number"==typeof i){let s=null,a=wg(e,t),l=$r,c=n&Y.Host?t[Te][ze]:null;for((-1===a||n&Y.SkipSelf)&&(l=-1===a?Qs(e,t):t[a+8],l!==$r&&Ag(n,!1)?(s=t[T],a=ui(l),t=di(l,t)):a=-1);-1!==a;){const u=t[T];if(Tg(i,a,u.data)){const d=iM(a,t,r,s,n,c);if(d!==an)return d}l=t[a+8],l!==$r&&Ag(n,t[T].data[a+8]===c)&&Tg(i,a,t)?(s=u,a=ui(l),t=di(l,t)):a=-1}}return o}function iM(e,t,r,n,o,i){const s=t[T],a=s.data[e+8],u=Xs(a,s,r,null==n?cr(a)&&tu:n!=s&&0!=(3&a.type),o&Y.Host&&i===a);return null!==u?fr(t,s,u,a):an}function Xs(e,t,r,n,o){const i=e.providerIndexes,s=t.data,a=1048575&i,l=e.directiveStart,u=i>>20,g=o?a+u:e.directiveEnd;for(let m=n?a:a+u;m=l&&y.type===r)return m}if(o){const m=s[l];if(m&&Gt(m)&&m.type===r)return l}return null}function fr(e,t,r,n){let o=e[r];const i=t.data;if(function J0(e){return e instanceof ci}(o)){const s=o;s.resolving&&function I1(e,t){const r=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new S(-200,`Circular dependency in DI detected for ${e}${r}`)}(function se(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():$(e)}(i[r]));const a=Zs(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?it(s.injectImpl):null;fg(e,n,Y.Default);try{o=e[r]=s.factory(void 0,i,e,n),t.firstCreatePass&&r>=n.directiveStart&&function Q0(e,t,r){const{ngOnChanges:n,ngOnInit:o,ngDoCheck:i}=t.type.prototype;if(n){const s=Yp(t);(r.preOrderHooks??=[]).push(e,s),(r.preOrderCheckHooks??=[]).push(e,s)}o&&(r.preOrderHooks??=[]).push(0-e,o),i&&((r.preOrderHooks??=[]).push(e,i),(r.preOrderCheckHooks??=[]).push(e,i))}(r,i[r],t)}finally{null!==c&&it(c),Zs(a),s.resolving=!1,mg()}}return o}function Tg(e,t,r){return!!(r[t+(e>>bg)]&1<{const t=e.prototype.constructor,r=t[_n]||ou(t),n=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==n;){const i=o[_n]||ou(o);if(i&&i!==r)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function ou(e){return Dc(e)?()=>{const t=ou(U(e));return t&&t()}:ur(e)}function xg(e){const t=e[T],r=t.type;return 2===r?t.declTNode:1===r?e[ze]:null}const zr="__parameters__";function Wr(e,t,r){return yn(()=>{const n=function iu(e){return function(...r){if(e){const n=e(...r);for(const o in n)this[o]=n[o]}}}(t);function o(...i){if(this instanceof o)return n.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(zr)?l[zr]:Object.defineProperty(l,zr,{value:[]})[zr];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return r&&(o.prototype=Object.create(r.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function Yr(e,t){e.forEach(r=>Array.isArray(r)?Yr(r,t):t(r))}function Ng(e,t,r){t>=e.length?e.push(r):e.splice(t,0,r)}function Ks(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function Ct(e,t,r){let n=Qr(e,t);return n>=0?e[1|n]=r:(n=~n,function mM(e,t,r,n){let o=e.length;if(o==t)e.push(r,n);else if(1===o)e.push(n,e[0]),e[0]=r;else{for(o--,e.push(e[o-1],e[o]);o>t;)e[o]=e[o-2],o--;e[t]=r,e[t+1]=n}}(e,n,t,r)),n}function su(e,t){const r=Qr(e,t);if(r>=0)return e[1|r]}function Qr(e,t){return function Og(e,t,r){let n=0,o=e.length>>r;for(;o!==n;){const i=n+(o-n>>1),s=e[i<t?o=i:n=i+1}return~(o<|^->||--!>|)/g,jM="\u200b$1\u200b";const du=new Map;let HM=0;const hu="__ngContext__";function qe(e,t){at(t)?(e[hu]=t[ri],function BM(e){du.set(e[ri],e)}(t)):e[hu]=t}let pu;function gu(e,t){return pu(e,t)}function vi(e){const t=e[_e];return Xe(t)?t[_e]:t}function Kg(e){return tm(e[ti])}function em(e){return tm(e[$t])}function tm(e){for(;null!==e&&!Xe(e);)e=e[$t];return e}function Kr(e,t,r,n,o){if(null!=n){let i,s=!1;Xe(n)?i=n:at(n)&&(s=!0,n=n[we]);const a=pe(n);0===e&&null!==r?null==o?im(t,r,a):hr(t,r,a,o||null,!0):1===e&&null!==r?hr(t,r,a,o||null,!0):2===e?function pa(e,t,r){const n=fa(e,t);n&&function aI(e,t,r,n){e.removeChild(t,r,n)}(e,n,t,r)}(t,a,s):3===e&&t.destroyNode(a),null!=i&&function uI(e,t,r,n,o){const i=r[rn];i!==pe(r)&&Kr(t,e,n,i,o);for(let a=He;at.replace(VM,jM))}(t))}function ua(e,t,r){return e.createElement(t,r)}function rm(e,t){const r=e[Vr],n=r.indexOf(t);ng(t),r.splice(n,1)}function da(e,t){if(e.length<=He)return;const r=He+t,n=e[r];if(n){const o=n[ni];null!==o&&o!==e&&rm(o,n),t>0&&(e[r-1][$t]=n[$t]);const i=Ks(e,He+t);!function KM(e,t){_i(e,t,t[G],2,null,null),t[we]=null,t[ze]=null}(n[T],n);const s=i[nn];null!==s&&s.detachView(i[T]),n[_e]=null,n[$t]=null,n[q]&=-129}return n}function vu(e,t){if(!(256&t[q])){const r=t[G];t[oi]&&Up(t[oi]),t[ii]&&Up(t[ii]),r.destroyNode&&_i(e,t,r,3,null,null),function nI(e){let t=e[ti];if(!t)return yu(e[T],e);for(;t;){let r=null;if(at(t))r=t[ti];else{const n=t[He];n&&(r=n)}if(!r){for(;t&&!t[$t]&&t!==e;)at(t)&&yu(t[T],t),t=t[_e];null===t&&(t=e),at(t)&&yu(t[T],t),r=t&&t[$t]}t=r}}(t)}}function yu(e,t){if(!(256&t[q])){t[q]&=-129,t[q]|=256,function sI(e,t){let r;if(null!=e&&null!=(r=e.destroyHooks))for(let n=0;n=0?n[s]():n[-s].unsubscribe(),i+=2}else r[i].call(n[r[i+1]]);null!==n&&(t[Pr]=null);const o=t[$n];if(null!==o){t[$n]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[n.directiveStart+o];if(i===Ut.None||i===Ut.Emulated)return null}return lt(n,r)}}(e,t.parent,r)}function hr(e,t,r,n,o){e.insertBefore(t,r,n,o)}function im(e,t,r){e.appendChild(t,r)}function sm(e,t,r,n,o){null!==n?hr(e,t,r,n,o):im(e,t,r)}function fa(e,t){return e.parentNode(t)}let Cu,Eu,ma,cm=function lm(e,t,r){return 40&e.type?lt(e,r):null};function ha(e,t,r,n){const o=_u(e,n,t),i=t[G],a=function am(e,t,r){return cm(e,t,r)}(n.parent||t[ze],n,t);if(null!=o)if(Array.isArray(r))for(let l=0;le,createScript:e=>e,createScriptURL:e=>e})}catch{}return ma}()?.createScriptURL(e)||e}class _m{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${cp})`}}function Zn(e){return e instanceof _m?e.changingThisBreaksApplicationSecurity:e}function Ci(e,t){const r=function bI(e){return e instanceof _m&&e.getTypeName()||null}(e);if(null!=r&&r!==t){if("ResourceURL"===r&&"URL"===t)return!0;throw new Error(`Required a safe ${t}, got a ${r} (see ${cp})`)}return r===t}const II=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;var no=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}(no||{});function ro(e){const t=bi();return t?t.sanitize(no.URL,e)||"":Ci(e,"URL")?Zn(e):function Iu(e){return(e=String(e)).match(II)?e:"unsafe:"+e}($(e))}function Im(e){const t=bi();if(t)return ym(t.sanitize(no.RESOURCE_URL,e)||"");if(Ci(e,"ResourceURL"))return ym(Zn(e));throw new S(904,!1)}function bi(){const e=M();return e&&e[kr].sanitizer}class x{constructor(t,r){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof r?this.__NG_ELEMENT_ID__=r:void 0!==r&&(this.\u0275prov=L({token:this,providedIn:r.providedIn||"root",factory:r.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const wi=new x("ENVIRONMENT_INITIALIZER"),Tm=new x("INJECTOR",-1),Am=new x("INJECTOR_DEF_TYPES");class xu{get(t,r=Qo){if(r===Qo){const n=new Error(`NullInjectorError: No provider for ${ke(t)}!`);throw n.name="NullInjectorError",n}return r}}function Ru(e){return{\u0275providers:e}}function xm(...e){return{\u0275providers:Rm(0,e),\u0275fromNgModule:!0}}function Rm(e,...t){const r=[],n=new Set;let o;const i=s=>{r.push(s)};return Yr(t,s=>{const a=s;ya(a,i,[],n)&&(o||=[],o.push(a))}),void 0!==o&&Nm(o,i),r}function Nm(e,t){for(let r=0;r{t(i,n)})}}function ya(e,t,r,n){if(!(e=U(e)))return!1;let o=null,i=Ns(e);const s=!i&&X(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=Ns(l),!i)return!1;o=l}const a=n.has(o);if(s){if(a)return!1;if(n.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)ya(c,t,r,n)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;n.add(o);try{Yr(i.imports,u=>{ya(u,t,r,n)&&(c||=[],c.push(u))})}finally{}void 0!==c&&Nm(c,t)}if(!a){const c=ur(o)||(()=>new o);t({provide:o,useFactory:c,deps:te},o),t({provide:Am,useValue:o,multi:!0},o),t({provide:wi,useValue:()=>F(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;Nu(l,u=>{t(u,c)})}}}return o!==e&&void 0!==e.providers}function Nu(e,t){for(let r of e)bc(r)&&(r=r.\u0275providers),Array.isArray(r)?Nu(r,t):t(r)}const jI=ae({provide:String,useValue:ae});function Ou(e){return null!==e&&"object"==typeof e&&jI in e}function pr(e){return"function"==typeof e}const Pu=new x("Set Injector scope."),_a={},UI={};let ku;function Ca(){return void 0===ku&&(ku=new xu),ku}class Dt{}class Da extends Dt{get destroyed(){return this._destroyed}constructor(t,r,n,o){super(),this.parent=r,this.source=n,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,Lu(t,s=>this.processProvider(s)),this.records.set(Tm,oo(void 0,this)),o.has("environment")&&this.records.set(Dt,oo(void 0,this));const i=this.records.get(Pu);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(Am.multi,te,Y.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const r of this._ngOnDestroyHooks)r.ngOnDestroy();const t=this._onDestroyHooks;this._onDestroyHooks=[];for(const r of t)r()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();const r=Un(this),n=it(void 0);try{return t()}finally{Un(r),it(n)}}get(t,r=Qo,n=Y.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(yp))return t[yp](this);n=ks(n);const i=Un(this),s=it(void 0);try{if(!(n&Y.SkipSelf)){let l=this.records.get(t);if(void 0===l){const c=function qI(e){return"function"==typeof e||"object"==typeof e&&e instanceof x}(t)&&Rs(t);l=c&&this.injectableDefInScope(c)?oo(Fu(t),_a):null,this.records.set(t,l)}if(null!=l)return this.hydrate(t,l)}return(n&Y.Self?Ca():this.parent).get(t,r=n&Y.Optional&&r===Qo?null:r)}catch(a){if("NullInjectorError"===a.name){if((a[Ps]=a[Ps]||[]).unshift(ke(t)),i)throw a;return function U1(e,t,r,n){const o=e[Ps];throw t[gp]&&o.unshift(t[gp]),e.message=function B1(e,t,r,n=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=ke(t);if(Array.isArray(t))o=t.map(ke).join(" -> ");else if("object"==typeof t){let i=[];for(let s in t)if(t.hasOwnProperty(s)){let a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ke(a)))}o=`{${i.join(", ")}}`}return`${r}${n?"("+n+")":""}[${o}]: ${e.replace(F1,"\n ")}`}("\n"+e.message,o,r,n),e.ngTokenPath=o,e[Ps]=null,e}(a,t,"R3InjectorError",this.source)}throw a}finally{it(s),Un(i)}}resolveInjectorInitializers(){const t=Un(this),r=it(void 0);try{const o=this.get(wi.multi,te,Y.Self);for(const i of o)i()}finally{Un(t),it(r)}}toString(){const t=[],r=this.records;for(const n of r.keys())t.push(ke(n));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new S(205,!1)}processProvider(t){let r=pr(t=U(t))?t:U(t&&t.provide);const n=function $I(e){return Ou(e)?oo(void 0,e.useValue):oo(km(e),_a)}(t);if(pr(t)||!0!==t.multi)this.records.get(r);else{let o=this.records.get(r);o||(o=oo(void 0,_a,!0),o.factory=()=>Rc(o.multi),this.records.set(r,o)),r=t,o.multi.push(t)}this.records.set(r,n)}hydrate(t,r){return r.value===_a&&(r.value=UI,r.value=r.factory()),"object"==typeof r.value&&r.value&&function zI(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(r.value)&&this._ngOnDestroyHooks.add(r.value),r.value}injectableDefInScope(t){if(!t.providedIn)return!1;const r=U(t.providedIn);return"string"==typeof r?"any"===r||this.scopes.has(r):this.injectorDefTypes.has(r)}removeOnDestroy(t){const r=this._onDestroyHooks.indexOf(t);-1!==r&&this._onDestroyHooks.splice(r,1)}}function Fu(e){const t=Rs(e),r=null!==t?t.factory:ur(e);if(null!==r)return r;if(e instanceof x)throw new S(204,!1);if(e instanceof Function)return function BI(e){const t=e.length;if(t>0)throw function pi(e,t){const r=[];for(let n=0;nr.factory(e):()=>new e}(e);throw new S(204,!1)}function km(e,t,r){let n;if(pr(e)){const o=U(e);return ur(o)||Fu(o)}if(Ou(e))n=()=>U(e.useValue);else if(function Pm(e){return!(!e||!e.useFactory)}(e))n=()=>e.useFactory(...Rc(e.deps||[]));else if(function Om(e){return!(!e||!e.useExisting)}(e))n=()=>F(U(e.useExisting));else{const o=U(e&&(e.useClass||e.provide));if(!function GI(e){return!!e.deps}(e))return ur(o)||Fu(o);n=()=>new o(...Rc(e.deps))}return n}function oo(e,t,r=!1){return{factory:e,value:t,multi:r?[]:void 0}}function Lu(e,t){for(const r of e)Array.isArray(r)?Lu(r,t):r&&bc(r)?Lu(r.\u0275providers,t):t(r)}const ba=new x("AppId",{providedIn:"root",factory:()=>WI}),WI="ng",Fm=new x("Platform Initializer"),gr=new x("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),Lm=new x("CSP nonce",{providedIn:"root",factory:()=>function to(){if(void 0!==Eu)return Eu;if(typeof document<"u")return document;throw new S(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});let Vm=(e,t,r)=>null;function zu(e,t,r=!1){return Vm(e,t,r)}class rS{}class Um{}class iS{resolveComponentFactory(t){throw function oS(e){const t=Error(`No component factory found for ${ke(e)}.`);return t.ngComponent=e,t}(t)}}let Ta=(()=>{class t{}return t.NULL=new iS,t})();function sS(){return ao(Be(),M())}function ao(e,t){return new bt(lt(e,t))}let bt=(()=>{class t{constructor(n){this.nativeElement=n}}return t.__NG_ELEMENT_ID__=sS,t})();function aS(e){return e instanceof bt?e.nativeElement:e}class $m{}let Mn=(()=>{class t{constructor(){this.destroyNode=null}}return t.__NG_ELEMENT_ID__=()=>function lS(){const e=M(),r=_t(Be().index,e);return(at(r)?r:e)[G]}(),t})(),cS=(()=>{var e;class t{}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>null}),t})();class Ii{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const uS=new Ii("16.2.8"),Zu={};function Wm(e,t=null,r=null,n){const o=Zm(e,t,r,n);return o.resolveInjectorInitializers(),o}function Zm(e,t=null,r=null,n,o=new Set){const i=[r||te,xm(e)];return n=n||("object"==typeof e?void 0:ke(e)),new Da(i,t||Ca(),n||null,o)}let wt=(()=>{var e;class t{static create(n,o){if(Array.isArray(n))return Wm({name:""},o,n,"");{const i=n.name??"";return Wm({name:i},n.parent,n.providers,i)}}}return(e=t).THROW_IF_NOT_FOUND=Qo,e.NULL=new xu,e.\u0275prov=L({token:e,providedIn:"any",factory:()=>F(Tm)}),e.__NG_ELEMENT_ID__=-1,t})();function Qu(e){return e.ngOriginalError}class In{constructor(){this._console=console}handleError(t){const r=this._findOriginalError(t);this._console.error("ERROR",t),r&&this._console.error("ORIGINAL ERROR",r)}_findOriginalError(t){let r=t&&Qu(t);for(;r&&Qu(r);)r=Qu(r);return r||null}}function Ju(e){return t=>{setTimeout(e,void 0,t)}}const Ee=class vS extends Vt{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,r,n){let o=t,i=r||(()=>null),s=n;if(t&&"object"==typeof t){const l=t;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=Ju(i),o&&(o=Ju(o)),s&&(s=Ju(s)));const a=super.subscribe({next:o,error:i,complete:s});return t instanceof gt&&t.add(a),a}};function Qm(...e){}class ge{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:r=!1,shouldCoalesceRunChangeDetection:n=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Ee(!1),this.onMicrotaskEmpty=new Ee(!1),this.onStable=new Ee(!1),this.onError=new Ee(!1),typeof Zone>"u")throw new S(908,!1);Zone.assertZonePatched();const 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=!n&&r,o.shouldCoalesceRunChangeDetection=n,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function yS(){const e="function"==typeof he.requestAnimationFrame;let t=he[e?"requestAnimationFrame":"setTimeout"],r=he[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&t&&r){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const o=r[Zone.__symbol__("OriginalDelegate")];o&&(r=o)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:r}}().nativeRequestAnimationFrame,function DS(e){const t=()=>{!function CS(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(he,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,ed(e),e.isCheckStableRunning=!0,Ku(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),ed(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(r,n,o,i,s,a)=>{if(function wS(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return r.invokeTask(o,i,s,a);try{return Xm(e),r.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&t(),Jm(e)}},onInvoke:(r,n,o,i,s,a,l)=>{try{return Xm(e),r.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&t(),Jm(e)}},onHasTask:(r,n,o,i)=>{r.hasTask(o,i),n===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,ed(e),Ku(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(r,n,o,i)=>(r.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ge.isInAngularZone())throw new S(909,!1)}static assertNotInAngularZone(){if(ge.isInAngularZone())throw new S(909,!1)}run(t,r,n){return this._inner.run(t,r,n)}runTask(t,r,n,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,t,_S,Qm,Qm);try{return i.runTask(s,r,n)}finally{i.cancelTask(s)}}runGuarded(t,r,n){return this._inner.runGuarded(t,r,n)}runOutsideAngular(t){return this._outer.run(t)}}const _S={};function Ku(e){if(0==e._nesting&&!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 ed(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function Xm(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Jm(e){e._nesting--,Ku(e)}const Km=new x("",{providedIn:"root",factory:ev});function ev(){const e=A(ge);let t=!0;return function b1(...e){const t=Yo(e),r=function g1(e,t){return"number"==typeof yc(e)?e.pop():t}(e,1/0),n=e;return n.length?1===n.length?jt(n[0]):Rr(r)(Ne(n,t)):Kt}(new Ie(o=>{t=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(t),o.complete()})}),new Ie(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ge.assertNotInAngularZone(),queueMicrotask(()=>{!t&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(t=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ge.assertInAngularZone(),t&&(t=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe(lp()))}function Sn(e){return e instanceof Function?e():e}let td=(()=>{var e;class t{constructor(){this.renderDepth=0,this.handler=null}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){this.renderDepth--,0===this.renderDepth&&this.handler?.execute()}ngOnDestroy(){this.handler?.destroy(),this.handler=null}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new e}),t})();function Si(e){for(;e;){e[q]|=64;const t=vi(e);if(Lc(e)&&!t)return e;e=t}return null}const iv=new x("",{providedIn:"root",factory:()=>!1});let xa=null;function cv(e,t){return e[t]??fv()}function uv(e,t){const r=fv();r.producerNode?.length&&(e[t]=xa,r.lView=e,xa=dv())}const OS={...kp,consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{Si(e.lView)},lView:null};function dv(){return Object.create(OS)}function fv(){return xa??=dv(),xa}const z={};function _(e){hv(J(),M(),Ke()+e,!1)}function hv(e,t,r,n){if(!n)if(3==(3&t[q])){const i=e.preOrderCheckHooks;null!==i&&qs(t,i,r)}else{const i=e.preOrderHooks;null!==i&&Ws(t,i,0,r)}dr(r)}function I(e,t=Y.Default){const r=M();return null===r?F(e,t):Ig(Be(),r,U(e),t)}function Ra(e,t,r,n,o,i,s,a,l,c,u){const d=t.blueprint.slice();return d[we]=o,d[q]=140|n,(null!==c||e&&2048&e[q])&&(d[q]|=2048),tg(d),d[_e]=d[Fr]=e,d[Se]=r,d[kr]=s||e&&e[kr],d[G]=a||e&&e[G],d[Bn]=l||e&&e[Bn]||null,d[ze]=i,d[ri]=function UM(){return HM++}(),d[Dn]=u,d[Rp]=c,d[Te]=2==t.type?e[Te]:d,d}function uo(e,t,r,n,o){let i=e.data[t];if(null===i)i=function nd(e,t,r,n,o){const i=ag(),s=zc(),l=e.data[t]=function US(e,t,r,n,o,i){let s=t?t.injectorIndex:-1,a=0;return function Ur(){return null!==H.skipHydrationRootTNode}()&&(a|=128),{type:r,index:n,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}}(0,s?i:i&&i.parent,r,t,n,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,t,r,n,o),function H0(){return H.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=r,i.value=n,i.attrs=o;const s=function li(){const e=H.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return sn(i,!0),i}function Ti(e,t,r,n){if(0===r)return-1;const o=t.length;for(let i=0;iQ&&hv(e,t,Q,!1),on(a?2:0,o);const c=a?i:null,u=jc(c);try{null!==c&&(c.dirty=!1),r(n,o)}finally{Hc(c,u)}}finally{a&&null===t[oi]&&uv(t,oi),dr(s),on(a?3:1,o)}}function rd(e,t,r){if(Fc(t)){const n=Rt(null);try{const i=t.directiveEnd;for(let s=t.directiveStart;snull;function yv(e,t,r,n){for(let o in e)if(e.hasOwnProperty(o)){r=null===r?{}:r;const i=e[o];null===n?_v(r,t,o,i):n.hasOwnProperty(o)&&_v(r,t,n[o],i)}return r}function _v(e,t,r,n){e.hasOwnProperty(r)?e[r].push(t,n):e[r]=[t,n]}function Et(e,t,r,n,o,i,s,a){const l=lt(t,r);let u,c=t.inputs;!a&&null!=c&&(u=c[n])?(dd(e,r,u,n,o),cr(t)&&function GS(e,t){const r=_t(t,e);16&r[q]||(r[q]|=64)}(r,t.index)):3&t.type&&(n=function $S(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(n),o=null!=s?s(o,t.value||"",n):o,i.setProperty(l,n,o))}function ad(e,t,r,n){if(sg()){const o=null===n?null:{"":-1},i=function QS(e,t){const r=e.directiveRegistry;let n=null,o=null;if(r)for(let i=0;i0;){const r=e[--t];if("number"==typeof r&&r<0)return r}return 0})(s)!=a&&s.push(a),s.push(r,n,i)}}(e,t,n,Ti(e,r,o.hostVars,z),o)}function ln(e,t,r,n,o,i){const s=lt(e,t);!function cd(e,t,r,n,o,i,s){if(null==i)e.removeAttribute(t,o,r);else{const a=null==s?$(i):s(i,n||"",o);e.setAttribute(t,o,a,r)}}(t[G],s,i,e.value,r,n,o)}function nT(e,t,r,n,o,i){const s=i[t];if(null!==s)for(let a=0;a{var e;class t{constructor(){this.all=new Set,this.queue=new Map}create(n,o,i){const s=typeof Zone>"u"?null:Zone.current,a=function y0(e,t,r){const n=Object.create(_0);r&&(n.consumerAllowSignalWrites=!0),n.fn=e,n.schedule=t;const o=s=>{n.cleanupFn=s};return n.ref={notify:()=>jp(n),run:()=>{if(n.dirty=!1,n.hasRun&&!Hp(n))return;n.hasRun=!0;const s=jc(n);try{n.cleanupFn(),n.cleanupFn=Zp,n.fn(o)}finally{Hc(n,s)}},cleanup:()=>n.cleanupFn()},n.ref}(n,u=>{this.all.has(u)&&this.queue.set(u,s)},i);let l;this.all.add(a),a.notify();const c=()=>{a.cleanup(),l?.(),this.all.delete(a),this.queue.delete(a)};return l=o?.onDestroy(c),{destroy:c}}flush(){if(0!==this.queue.size)for(const[n,o]of this.queue)this.queue.delete(n),o?o.run(()=>n.run()):n.run()}get isQueueEmpty(){return 0===this.queue.size}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new e}),t})();function Oa(e,t,r){let n=r?e.styles:null,o=r?e.classes:null,i=0;if(null!==t)for(let s=0;s0){Nv(e,1);const o=r.components;null!==o&&Pv(e,o,1)}}function Pv(e,t,r){for(let n=0;n-1&&(da(t,n),Ks(r,n))}this._attachedToViewContainer=!1}vu(this._lView[T],this._lView)}onDestroy(t){!function og(e,t){if(256==(256&e[q]))throw new S(911,!1);null===e[$n]&&(e[$n]=[]),e[$n].push(t)}(this._lView,t)}markForCheck(){Si(this._cdRefInjectingView||this._lView)}detach(){this._lView[q]&=-129}reattach(){this._lView[q]|=128}detectChanges(){Pa(this._lView[T],this._lView,this.context)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new S(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function tI(e,t){_i(e,t,t[G],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new S(902,!1);this._appRef=t}}class dT extends xi{constructor(t){super(t),this._view=t}detectChanges(){const t=this._view;Pa(t[T],t,t[Se],!1)}checkNoChanges(){}get context(){return null}}class kv extends Ta{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const r=X(t);return new Ri(r,this.ngModule)}}function Fv(e){const t=[];for(let r in e)e.hasOwnProperty(r)&&t.push({propName:e[r],templateName:r});return t}class hT{constructor(t,r){this.injector=t,this.parentInjector=r}get(t,r,n){n=ks(n);const o=this.injector.get(t,Zu,n);return o!==Zu||r===Zu?o:this.parentInjector.get(t,r,n)}}class Ri extends Um{get inputs(){const t=this.componentDef,r=t.inputTransforms,n=Fv(t.inputs);if(null!==r)for(const o of n)r.hasOwnProperty(o.propName)&&(o.transform=r[o.propName]);return n}get outputs(){return Fv(this.componentDef.outputs)}constructor(t,r){super(),this.componentDef=t,this.ngModule=r,this.componentType=t.type,this.selector=function J1(e){return e.map(X1).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!r}create(t,r,n,o){let i=(o=o||this.ngModule)instanceof Dt?o:o?.injector;i&&null!==this.componentDef.getStandaloneInjector&&(i=this.componentDef.getStandaloneInjector(i)||i);const s=i?new hT(t,i):t,a=s.get($m,null);if(null===a)throw new S(407,!1);const d={rendererFactory:a,sanitizer:s.get(cS,null),effectManager:s.get(Av,null),afterRenderEventManager:s.get(td,null)},g=a.createRenderer(null,this.componentDef),m=this.componentDef.selectors[0][0]||"div",y=n?function FS(e,t,r,n){const i=n.get(iv,!1)||r===Ut.ShadowDom,s=e.selectRootElement(t,i);return function LS(e){vv(e)}(s),s}(g,n,this.componentDef.encapsulation,s):ua(g,m,function fT(e){const t=e.toLowerCase();return"svg"===t?"svg":"math"===t?"math":null}(m)),E=this.componentDef.signals?4608:this.componentDef.onPush?576:528;let D=null;null!==y&&(D=zu(y,s,!0));const O=sd(0,null,null,1,0,null,null,null,null,null,null),N=Ra(null,O,null,E,null,null,d,g,s,null,D);let Z,Ge;Qc(N);try{const Tt=this.componentDef;let xr,ac=null;Tt.findHostDirectiveDefs?(xr=[],ac=new Map,Tt.findHostDirectiveDefs(Tt,xr,ac),xr.push(Tt)):xr=[Tt];const Ij=function gT(e,t){const r=e[T],n=Q;return e[n]=t,uo(r,n,2,"#host",null)}(N,y),Sj=function mT(e,t,r,n,o,i,s){const a=o[T];!function vT(e,t,r,n){for(const o of e)t.mergedAttrs=Ko(t.mergedAttrs,o.hostAttrs);null!==t.mergedAttrs&&(Oa(t,t.mergedAttrs,!0),null!==r&&gm(n,r,t))}(n,e,t,s);let l=null;null!==t&&(l=zu(t,o[Bn]));const c=i.rendererFactory.createRenderer(t,r);let u=16;r.signals?u=4096:r.onPush&&(u=64);const d=Ra(o,mv(r),null,u,o[e.index],e,i,c,null,null,l);return a.firstCreatePass&&ld(a,e,n.length-1),Na(o,d),o[e.index]=d}(Ij,y,Tt,xr,N,d,g);Ge=eg(O,Q),y&&function _T(e,t,r,n){if(n)Pc(e,r,["ng-version",uS.full]);else{const{attrs:o,classes:i}=function K1(e){const t=[],r=[];let n=1,o=2;for(;n0&&pm(e,r,i.join(" "))}}(g,Tt,y,n),void 0!==r&&function CT(e,t,r){const n=e.projection=[];for(let o=0;o=0;n--){const o=e[n];o.hostVars=t+=o.hostVars,o.hostAttrs=Ko(o.hostAttrs,r=Ko(r,o.hostAttrs))}}(n)}function ka(e){return e===tn?{}:e===te?[]:e}function wT(e,t){const r=e.viewQuery;e.viewQuery=r?(n,o)=>{t(n,o),r(n,o)}:t}function ET(e,t){const r=e.contentQueries;e.contentQueries=r?(n,o,i)=>{t(n,o,i),r(n,o,i)}:t}function MT(e,t){const r=e.hostBindings;e.hostBindings=r?(n,o)=>{t(n,o),r(n,o)}:t}function Uv(e){const t=e.inputConfig,r={};for(const n in t)if(t.hasOwnProperty(n)){const o=t[n];Array.isArray(o)&&o[2]&&(r[n]=o[2])}e.inputTransforms=r}function Fa(e){return!!hd(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function hd(e){return null!==e&&("function"==typeof e||"object"==typeof e)}function cn(e,t,r){return e[t]=r}function We(e,t,r){return!Object.is(e[t],r)&&(e[t]=r,!0)}function zt(e,t,r,n){const o=M();return We(o,Br(),t)&&(J(),ln(be(),o,e,t,r,n)),zt}function ho(e,t,r,n){return We(e,Br(),r)?t+$(r)+n:z}function P(e,t,r,n,o,i,s,a){const l=M(),c=J(),u=e+Q,d=c.firstCreatePass?function QT(e,t,r,n,o,i,s,a,l){const c=t.consts,u=uo(t,e,4,s||null,zn(c,a));ad(t,r,u,zn(c,l)),zs(t,u);const d=u.tView=sd(2,u,n,o,i,t.directiveRegistry,t.pipeRegistry,null,t.schemas,c,null);return null!==t.queries&&(t.queries.template(t,u),d.queries=t.queries.embeddedTView(u)),u}(u,c,l,t,r,n,o,i,s):c.data[u];sn(d,!1);const g=ey(c,l,d,e);Gs()&&ha(c,l,g,d),qe(g,l),Na(l,l[u]=wv(g,l,g,d)),Hs(d)&&od(c,l,d),null!=s&&id(l,d,a)}let ey=function ty(e,t,r,n){return qn(!0),t[G].createComment("")};function _d(e){return function Hr(e,t){return e[t]}(function j0(){return H.lFrame.contextLView}(),Q+e)}function w(e,t,r){const n=M();return We(n,Br(),t)&&Et(J(),be(),n,e,t,n[G],r,!1),w}function Cd(e,t,r,n,o){const s=o?"class":"style";dd(e,r,t.inputs[s],s,n)}function h(e,t,r,n){const o=M(),i=J(),s=Q+e,a=o[G],l=i.firstCreatePass?function eA(e,t,r,n,o,i){const s=t.consts,l=uo(t,e,2,n,zn(s,o));return ad(t,r,l,zn(s,i)),null!==l.attrs&&Oa(l,l.attrs,!1),null!==l.mergedAttrs&&Oa(l,l.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,l),l}(s,i,o,t,r,n):i.data[s],c=ny(i,o,l,a,t,e);o[s]=c;const u=Hs(l);return sn(l,!0),gm(a,c,l),32!=(32&l.flags)&&Gs()&&ha(i,o,c,l),0===function R0(){return H.lFrame.elementDepthCount}()&&qe(c,o),function N0(){H.lFrame.elementDepthCount++}(),u&&(od(i,o,l),rd(i,l,o)),null!==n&&id(o,l),h}function p(){let e=Be();zc()?qc():(e=e.parent,sn(e,!1));const t=e;(function P0(e){return H.skipHydrationRootTNode===e})(t)&&function V0(){H.skipHydrationRootTNode=null}(),function O0(){H.lFrame.elementDepthCount--}();const r=J();return r.firstCreatePass&&(zs(r,e),Fc(e)&&r.queries.elementEnd(e)),null!=t.classesWithoutHost&&function K0(e){return 0!=(8&e.flags)}(t)&&Cd(r,t,M(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function eM(e){return 0!=(16&e.flags)}(t)&&Cd(r,t,M(),t.stylesWithoutHost,!1),p}function v(e,t,r,n){return h(e,t,r,n),p(),v}let ny=(e,t,r,n,o,i)=>(qn(!0),ua(n,o,function vg(){return H.lFrame.currentNamespace}()));function ut(e,t,r){const n=M(),o=J(),i=e+Q,s=o.firstCreatePass?function rA(e,t,r,n,o){const i=t.consts,s=zn(i,n),a=uo(t,e,8,"ng-container",s);return null!==s&&Oa(a,s,!0),ad(t,r,a,zn(i,o)),null!==t.queries&&t.queries.elementStart(t,a),a}(i,o,n,t,r):o.data[i];sn(s,!0);const a=oy(o,n,s,e);return n[i]=a,Gs()&&ha(o,n,a,s),qe(a,n),Hs(s)&&(od(o,n,s),rd(o,s,n)),null!=r&&id(n,s),ut}function dt(){let e=Be();const t=J();return zc()?qc():(e=e.parent,sn(e,!1)),t.firstCreatePass&&(zs(t,e),Fc(e)&&t.queries.elementEnd(e)),dt}let oy=(e,t,r,n)=>(qn(!0),mu(t[G],""));function Ae(){return M()}function Fi(e){return!!e&&"function"==typeof e.then}function iy(e){return!!e&&"function"==typeof e.subscribe}function R(e,t,r,n){const o=M(),i=J(),s=Be();return function ay(e,t,r,n,o,i,s){const a=Hs(n),c=e.firstCreatePass&&Iv(e),u=t[Se],d=Mv(t);let g=!0;if(3&n.type||s){const C=lt(n,t),b=s?s(C):C,E=d.length,D=s?N=>s(pe(N[n.index])):n.index;let O=null;if(!s&&a&&(O=function sA(e,t,r,n){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,t,o,n.index)),null!==O)(O.__ngLastListenerFn__||O).__ngNextListenerFn__=i,O.__ngLastListenerFn__=i,g=!1;else{i=cy(n,t,u,i,!1);const N=r.listen(b,o,i);d.push(i,N),c&&c.push(o,D,E,E+1)}}else i=cy(n,t,u,i,!1);const m=n.outputs;let y;if(g&&null!==m&&(y=m[o])){const C=y.length;if(C)for(let b=0;b-1?_t(e.index,t):t);let l=ly(t,r,n,s),c=i.__ngNextListenerFn__;for(;c;)l=ly(t,r,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function k(e=1){return function G0(e){return(H.lFrame.contextLView=function z0(e,t){for(;e>0;)t=t[Fr],e--;return t}(e,H.lFrame.contextLView))[Se]}(e)}function An(e,t,r,n,o){const i=M(),s=ho(i,t,r,n);return s!==z&&Et(J(),be(),i,e,s,i[G],o,!1),An}function Ua(e,t){return e<<17|t<<2}function Yn(e){return e>>17&32767}function Dd(e){return 2|e}function vr(e){return(131068&e)>>2}function bd(e,t){return-131069&e|t<<2}function wd(e){return 1|e}function _y(e,t,r,n,o){const i=e[r+1],s=null===t;let a=n?Yn(i):vr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];gA(e[a],t)&&(l=!0,e[a+1]=n?wd(u):Dd(u)),a=n?Yn(u):vr(u)}l&&(e[r+1]=n?Dd(i):wd(i))}function gA(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&Qr(e,t)>=0}function Ba(e,t){return function qt(e,t,r,n){const o=M(),i=J(),s=function wn(e){const t=H.lFrame,r=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,r}(2);i.firstUpdatePass&&function Ty(e,t,r,n){const o=e.data;if(null===o[r+1]){const i=o[Ke()],s=function Sy(e,t){return t>=e.expandoStartIndex}(e,r);(function Ny(e,t){return 0!=(e.flags&(t?8:16))})(i,n)&&null===t&&!s&&(t=!1),t=function EA(e,t,r,n){const o=function Zc(e){const t=H.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}(e);let i=n?t.residualClasses:t.residualStyles;if(null===o)0===(n?t.classBindings:t.styleBindings)&&(r=Li(r=Ed(null,e,t,r,n),t.attrs,n),i=null);else{const s=t.directiveStylingLast;if(-1===s||e[s]!==o)if(r=Ed(o,e,t,r,n),null===i){let l=function MA(e,t,r){const n=r?t.classBindings:t.styleBindings;if(0!==vr(n))return e[Yn(n)]}(e,t,n);void 0!==l&&Array.isArray(l)&&(l=Ed(null,e,t,l[1],n),l=Li(l,t.attrs,n),function IA(e,t,r,n){e[Yn(r?t.classBindings:t.styleBindings)]=n}(e,t,n,l))}else i=function SA(e,t,r){let n;const o=t.directiveEnd;for(let i=1+t.directiveStylingLast;i0)&&(c=!0)):u=r,o)if(0!==l){const g=Yn(e[a+1]);e[n+1]=Ua(g,a),0!==g&&(e[g+1]=bd(e[g+1],n)),e[a+1]=function dA(e,t){return 131071&e|t<<17}(e[a+1],n)}else e[n+1]=Ua(a,0),0!==a&&(e[a+1]=bd(e[a+1],n)),a=n;else e[n+1]=Ua(l,0),0===a?a=n:e[l+1]=bd(e[l+1],n),l=n;c&&(e[n+1]=Dd(e[n+1])),_y(e,u,n,!0),_y(e,u,n,!1),function pA(e,t,r,n,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof t&&Qr(i,t)>=0&&(r[n+1]=wd(r[n+1]))}(t,u,e,n,i),s=Ua(a,l),i?t.classBindings=s:t.styleBindings=s}(o,i,t,r,s,n)}}(i,e,s,n),t!==z&&We(o,s,t)&&function xy(e,t,r,n,o,i,s,a){if(!(3&t.type))return;const l=e.data,c=l[a+1],u=function fA(e){return 1==(1&e)}(c)?Ry(l,t,r,o,vr(c),s):void 0;$a(u)||($a(i)||function uA(e){return 2==(2&e)}(c)&&(i=Ry(l,null,r,o,a,s)),function dI(e,t,r,n,o){if(t)o?e.addClass(r,n):e.removeClass(r,n);else{let i=-1===n.indexOf("-")?void 0:Wn.DashCase;null==o?e.removeStyle(r,n,i):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),i|=Wn.Important),e.setStyle(r,n,o,i))}}(n,s,$s(Ke(),r),o,i))}(i,i.data[Ke()],o,o[G],e,o[s+1]=function RA(e,t){return null==e||""===e||("string"==typeof t?e+=t:"object"==typeof e&&(e=ke(Zn(e)))),e}(t,r),n,s)}(e,t,null,!0),Ba}function Ed(e,t,r,n,o){let i=null;const s=r.directiveEnd;let a=r.directiveStylingLast;for(-1===a?a=r.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let g=r[o+1];g===z&&(g=d?te:void 0);let m=d?su(g,n):u===n?g:void 0;if(c&&!$a(m)&&(m=su(l,n)),$a(m)&&(a=m,s))return a;const y=e[o+1];o=s?Yn(y):vr(y)}if(null!==t){let l=i?t.residualClasses:t.residualStyles;null!=l&&(a=su(l,n))}return a}function $a(e){return void 0!==e}function f(e,t=""){const r=M(),n=J(),o=e+Q,i=n.firstCreatePass?uo(n,o,1,t,null):n.data[o],s=Oy(n,r,i,t,e);r[o]=s,Gs()&&ha(n,r,s,i),sn(i,!1)}let Oy=(e,t,r,n,o)=>(qn(!0),function ca(e,t){return e.createText(t)}(t[G],n));function Ce(e){return xn("",e,""),Ce}function xn(e,t,r){const n=M(),o=ho(n,e,t,r);return o!==z&&function Tn(e,t,r){const n=$s(t,e);!function nm(e,t,r){e.setValue(t,r)}(e[G],n,r)}(n,Ke(),o),xn}const wo="en-US";let t_=wo;function Sd(e,t,r,n,o){if(e=U(e),Array.isArray(e))for(let i=0;i>20;if(pr(e)||!e.multi){const m=new ci(c,o,I),y=Ad(l,t,o?u:u+g,d);-1===y?(ru(Ys(a,s),i,l),Td(i,e,t.length),t.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),r.push(m),s.push(m)):(r[y]=m,s[y]=m)}else{const m=Ad(l,t,u+g,d),y=Ad(l,t,u,u+g),b=y>=0&&r[y];if(o&&!b||!o&&!(m>=0&&r[m])){ru(Ys(a,s),i,l);const E=function Jx(e,t,r,n,o){const i=new ci(e,r,I);return i.multi=[],i.index=t,i.componentProviders=0,I_(i,o,n&&!r),i}(o?Xx:Qx,r.length,o,n,c);!o&&b&&(r[y].providerFactory=E),Td(i,e,t.length,0),t.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),r.push(E),s.push(E)}else Td(i,e,m>-1?m:y,I_(r[o?y:m],c,!o&&n));!o&&n&&b&&r[y].componentProviders++}}}function Td(e,t,r,n){const o=pr(t),i=function HI(e){return!!e.useClass}(t);if(o||i){const l=(i?U(t.useClass):t).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&t.multi){const u=c.indexOf(r);-1===u?c.push(r,[n,l]):c[u+1].push(n,l)}else c.push(r,l)}}}function I_(e,t,r){return r&&e.componentProviders++,e.multi.push(t)-1}function Ad(e,t,r,n){for(let o=r;o{r.providersResolver=(n,o)=>function Yx(e,t,r){const n=J();if(n.firstCreatePass){const o=Gt(e);Sd(r,n.data,n.blueprint,o,!0),Sd(t,n.data,n.blueprint,o,!1)}}(n,o?o(e):e,t)}}class _r{}class S_{}class Rd extends _r{constructor(t,r,n){super(),this._parent=r,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new kv(this);const o=yt(t);this._bootstrapComponents=Sn(o.bootstrap),this._r3Injector=Zm(t,r,[{provide:_r,useValue:this},{provide:Ta,useValue:this.componentFactoryResolver},...n],ke(t),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(t)}get injector(){return this._r3Injector}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(r=>r()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Nd extends S_{constructor(t){super(),this.moduleType=t}create(t){return new Rd(this.moduleType,t,[])}}class T_ extends _r{constructor(t){super(),this.componentFactoryResolver=new kv(this),this.instance=null;const r=new Da([...t.providers,{provide:_r,useValue:this},{provide:Ta,useValue:this.componentFactoryResolver}],t.parent||Ca(),t.debugName,new Set(["environment"]));this.injector=r,t.runEnvironmentInitializers&&r.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}}function Od(e,t,r=null){return new T_({providers:e,parent:t,debugName:r,runEnvironmentInitializers:!0}).injector}let tR=(()=>{var e;class t{constructor(n){this._injector=n,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(n){if(!n.standalone)return null;if(!this.cachedInjectors.has(n)){const o=Rm(0,n.type),i=o.length>0?Od([o],this._injector,`Standalone[${n.type.name}]`):null;this.cachedInjectors.set(n,i)}return this.cachedInjectors.get(n)}ngOnDestroy(){try{for(const n of this.cachedInjectors.values())null!==n&&n.destroy()}finally{this.cachedInjectors.clear()}}}return(e=t).\u0275prov=L({token:e,providedIn:"environment",factory:()=>new e(F(Dt))}),t})();function Mt(e){e.getStandaloneInjector=t=>t.get(tR).getOrCreateStandaloneInjector(e)}function K(e,t,r){const n=Je()+e,o=M();return o[n]===z?cn(o,n,r?t.call(r):t()):function Ni(e,t){return e[t]}(o,n)}function $i(e,t,r,n){return function F_(e,t,r,n,o,i){const s=t+r;return We(e,s,o)?cn(e,s+1,i?n.call(i,o):n(o)):Gi(e,s+1)}(M(),Je(),e,t,r,n)}function k_(e,t,r,n,o){return function L_(e,t,r,n,o,i,s){const a=t+r;return function mr(e,t,r,n){const o=We(e,t,r);return We(e,t+1,n)||o}(e,a,o,i)?cn(e,a+2,s?n.call(s,o,i):n(o,i)):Gi(e,a+2)}(M(),Je(),e,t,r,n,o)}function Gi(e,t){const r=e[t];return r===z?void 0:r}function ER(){return this._results[Symbol.iterator]()}class kd{get changes(){return this._changes||(this._changes=new Ee)}constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const r=kd.prototype;r[Symbol.iterator]||(r[Symbol.iterator]=ER)}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,r){return this._results.reduce(t,r)}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,r){const n=this;n.dirty=!1;const o=function Ot(e){return e.flat(Number.POSITIVE_INFINITY)}(t);(this._changesDetected=!function pM(e,t,r){if(e.length!==t.length)return!1;for(let n=0;n0&&(r[o-1][$t]=t),n{class t{}return t.__NG_ELEMENT_ID__=AR,t})();const SR=Rn,TR=class extends SR{constructor(t,r,n){super(),this._declarationLView=t,this._declarationTContainer=r,this.elementRef=n}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(t,r){return this.createEmbeddedViewImpl(t,r)}createEmbeddedViewImpl(t,r,n){const o=function MR(e,t,r,n){const o=t.tView,a=Ra(e,o,r,4096&e[q]?4096:16,null,t,null,null,null,n?.injector??null,n?.hydrationInfo??null);a[ni]=e[t.index];const c=e[nn];return null!==c&&(a[nn]=c.createEmbeddedView(o)),fd(o,a,r),a}(this._declarationLView,this._declarationTContainer,t,{injector:r,hydrationInfo:n});return new xi(o)}};function AR(){return Za(Be(),M())}function Za(e,t){return 4&e.type?new TR(t,e,ao(e,t)):null}let Zt=(()=>{class t{}return t.__NG_ELEMENT_ID__=kR,t})();function kR(){return W_(Be(),M())}const FR=Zt,z_=class extends FR{constructor(t,r,n){super(),this._lContainer=t,this._hostTNode=r,this._hostLView=n}get element(){return ao(this._hostTNode,this._hostLView)}get injector(){return new et(this._hostTNode,this._hostLView)}get parentInjector(){const t=Qs(this._hostTNode,this._hostLView);if(eu(t)){const r=di(t,this._hostLView),n=ui(t);return new et(r[T].data[n+8],r)}return new et(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const r=q_(this._lContainer);return null!==r&&r[t]||null}get length(){return this._lContainer.length-He}createEmbeddedView(t,r,n){let o,i;"number"==typeof n?o=n:null!=n&&(o=n.index,i=n.injector);const a=t.createEmbeddedViewImpl(r||{},i,null);return this.insertImpl(a,o,false),a}createComponent(t,r,n,o,i){const s=t&&!function hi(e){return"function"==typeof e}(t);let a;if(s)a=r;else{const C=r||{};a=C.index,n=C.injector,o=C.projectableNodes,i=C.environmentInjector||C.ngModuleRef}const l=s?t:new Ri(X(t)),c=n||this.parentInjector;if(!i&&null==l.ngModule){const b=(s?c:this.parentInjector).get(Dt,null);b&&(i=b)}X(l.componentType??{});const m=l.create(c,o,null,i);return this.insertImpl(m.hostView,a,false),m}insert(t,r){return this.insertImpl(t,r,!1)}insertImpl(t,r,n){const o=t._lView;if(function T0(e){return Xe(e[_e])}(o)){const l=this.indexOf(t);if(-1!==l)this.detach(l);else{const c=o[_e],u=new z_(c,c[ze],c[_e]);u.detach(u.indexOf(t))}}const s=this._adjustIndex(r),a=this._lContainer;return IR(a,o,s,!n),t.attachToViewContainerRef(),Ng(Fd(a),s,t),t}move(t,r){return this.insert(t,r)}indexOf(t){const r=q_(this._lContainer);return null!==r?r.indexOf(t):-1}remove(t){const r=this._adjustIndex(t,-1),n=da(this._lContainer,r);n&&(Ks(Fd(this._lContainer),r),vu(n[T],n))}detach(t){const r=this._adjustIndex(t,-1),n=da(this._lContainer,r);return n&&null!=Ks(Fd(this._lContainer),r)?new xi(n):null}_adjustIndex(t,r=0){return t??this.length+r}};function q_(e){return e[8]}function Fd(e){return e[8]||(e[8]=[])}function W_(e,t){let r;const n=t[e.index];return Xe(n)?r=n:(r=wv(n,t,null,e),t[e.index]=r,Na(t,r)),Z_(r,t,e,n),new z_(r,e,t)}let Z_=function Y_(e,t,r,n){if(e[rn])return;let o;o=8&r.type?pe(n):function LR(e,t){const r=e[G],n=r.createComment(""),o=lt(t,e);return hr(r,fa(r,o),n,function lI(e,t){return e.nextSibling(t)}(r,o),!1),n}(t,r),e[rn]=o};class Ld{constructor(t){this.queryList=t,this.matches=null}clone(){return new Ld(this.queryList)}setDirty(){this.queryList.setDirty()}}class Vd{constructor(t=[]){this.queries=t}createEmbeddedView(t){const r=t.queries;if(null!==r){const n=null!==t.contentQueries?t.contentQueries[0]:r.length,o=[];for(let i=0;i0)n.push(s[a/2]);else{const c=i[a+1],u=t[-l];for(let d=He;d{var e;class t{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((n,o)=>{this.resolve=n,this.reject=o}),this.appInits=A(Wd,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const n=[];for(const i of this.appInits){const s=i();if(Fi(s))n.push(s);else if(iy(s)){const a=new Promise((l,c)=>{s.subscribe({complete:l,error:c})});n.push(a)}}const o=()=>{this.done=!0,this.resolve()};Promise.all(n).then(()=>{o()}).catch(i=>{this.reject(i)}),0===n.length&&o(),this.initialized=!0}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),CC=(()=>{var e;class t{log(n){console.log(n)}warn(n){console.warn(n)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"platform"}),t})();const Nn=new x("LocaleId",{providedIn:"root",factory:()=>A(Nn,Y.Optional|Y.SkipSelf)||function pN(){return typeof $localize<"u"&&$localize.locale||wo}()});let Xa=(()=>{var e;class t{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new At(!1)}add(){this.hasPendingTasks.next(!0);const n=this.taskId++;return this.pendingTasks.add(n),n}remove(n){this.pendingTasks.delete(n),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();class vN{constructor(t,r){this.ngModuleFactory=t,this.componentFactories=r}}let DC=(()=>{var e;class t{compileModuleSync(n){return new Nd(n)}compileModuleAsync(n){return Promise.resolve(this.compileModuleSync(n))}compileModuleAndAllComponentsSync(n){const o=this.compileModuleSync(n),s=Sn(yt(n).declarations).reduce((a,l)=>{const c=X(l);return c&&a.push(new Ri(c)),a},[]);return new vN(o,s)}compileModuleAndAllComponentsAsync(n){return Promise.resolve(this.compileModuleAndAllComponentsSync(n))}clearCache(){}clearCacheFor(n){}getModuleId(n){}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const MC=new x(""),Ka=new x("");let Kd,Xd=(()=>{var e;class t{constructor(n,o,i){this._ngZone=n,this.registry=o,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,Kd||(function LN(e){Kd=e}(i),i.addToWindow(o)),this._watchAngularEvents(),n.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ge.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let n=this._callbacks.pop();clearTimeout(n.timeoutId),n.doneCb(this._didWork)}this._didWork=!1});else{let n=this.getPendingTasks();this._callbacks=this._callbacks.filter(o=>!o.updateCb||!o.updateCb(n)||(clearTimeout(o.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(n=>({source:n.source,creationLocation:n.creationLocation,data:n.data})):[]}addCallback(n,o,i){let s=-1;o&&o>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(a=>a.timeoutId!==s),n(this._didWork,this.getPendingTasks())},o)),this._callbacks.push({doneCb:n,timeoutId:s,updateCb:i})}whenStable(n,o,i){if(i&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(n,o,i),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(n){this.registry.registerApplication(n,this)}unregisterApplication(n){this.registry.unregisterApplication(n)}findProviders(n,o,i){return[]}}return(e=t).\u0275fac=function(n){return new(n||e)(F(ge),F(Jd),F(Ka))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),Jd=(()=>{var e;class t{constructor(){this._applications=new Map}registerApplication(n,o){this._applications.set(n,o)}unregisterApplication(n){this._applications.delete(n)}unregisterAllApplications(){this._applications.clear()}getTestability(n){return this._applications.get(n)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(n,o=!0){return Kd?.findTestabilityInTree(this,n,o)??null}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"platform"}),t})(),Qn=null;const ef=new x("PlatformDestroyListeners"),tf=new x("appBootstrapListener");class TC{constructor(t,r){this.name=t,this.token=r}}function BN(e){try{const{rootComponent:t,appProviders:r,platformProviders:n}=e,o=function UN(e=[]){if(Qn)return Qn;const t=function xC(e=[],t){return wt.create({name:t,providers:[{provide:Pu,useValue:"platform"},{provide:ef,useValue:new Set([()=>Qn=null])},...e]})}(e);return Qn=t,function SC(){!function h0(e){Gp=e}(()=>{throw new S(600,!1)})}(),function AC(e){e.get(Fm,null)?.forEach(r=>r())}(t),t}(n),i=[WN(),...r||[]],a=new T_({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,l=a.get(ge);return l.run(()=>{a.resolveInjectorInitializers();const c=a.get(In,null);let u;l.runOutsideAngular(()=>{u=l.onError.subscribe({next:m=>{c.handleError(m)}})});const d=()=>a.destroy(),g=o.get(ef);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),function OC(e,t,r){try{const n=r();return Fi(n)?n.catch(o=>{throw t.runOutsideAngular(()=>e.handleError(o)),o}):n}catch(n){throw t.runOutsideAngular(()=>e.handleError(n)),n}}(c,l,()=>{const m=a.get(Zd);return m.runInitializers(),m.donePromise.then(()=>{!function n_(e){xt(e,"Expected localeId to be defined"),"string"==typeof e&&(t_=e.toLowerCase().replace(/_/g,"-"))}(a.get(Nn,wo)||wo);const C=a.get(Io);return void 0!==t&&C.bootstrap(t),C})})})}catch(t){return Promise.reject(t)}}let Io=(()=>{var e;class t{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=A(FC),this.zoneIsStable=A(Km),this.componentTypes=[],this.components=[],this.isStable=A(Xa).hasPendingTasks.pipe(Ht(n=>n?V(!1):this.zoneIsStable),function w1(e,t=jn){return e=e??E1,Pe((r,n)=>{let o,i=!0;r.subscribe(Re(n,s=>{const a=t(s);(i||!e(o,a))&&(i=!1,o=a,n.next(s))}))})}(),lp()),this._injector=A(Dt)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(n,o){const i=n instanceof Um;if(!this._injector.get(Zd).done)throw!i&&function Or(e){const t=X(e)||je(e)||Qe(e);return null!==t&&t.standalone}(n),new S(405,!1);let a;a=i?n:this._injector.get(Ta).resolveComponentFactory(n),this.componentTypes.push(a.componentType);const l=function jN(e){return e.isBoundToModule}(a)?void 0:this._injector.get(_r),u=a.create(wt.NULL,[],o||a.selector,l),d=u.location.nativeElement,g=u.injector.get(MC,null);return g?.registerApplication(d),u.onDestroy(()=>{this.detachView(u.hostView),el(this.components,u),g?.unregisterApplication(d)}),this._loadComponent(u),u}tick(){if(this._runningTick)throw new S(101,!1);try{this._runningTick=!0;for(let n of this._views)n.detectChanges()}catch(n){this.internalErrorHandler(n)}finally{this._runningTick=!1}}attachView(n){const o=n;this._views.push(o),o.attachToAppRef(this)}detachView(n){const o=n;el(this._views,o),o.detachFromAppRef()}_loadComponent(n){this.attachView(n.hostView),this.tick(),this.components.push(n);const o=this._injector.get(tf,[]);o.push(...this._bootstrapListeners),o.forEach(i=>i(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),()=>el(this._destroyListeners,n)}destroy(){if(this._destroyed)throw new S(406,!1);const n=this._injector;n.destroy&&!n.destroyed&&n.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function el(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}const FC=new x("",{providedIn:"root",factory:()=>A(In).handleError.bind(void 0)});function zN(){const e=A(ge),t=A(In);return r=>e.runOutsideAngular(()=>t.handleError(r))}let qN=(()=>{var e;class t{constructor(){this.zone=A(ge),this.applicationRef=A(Io)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function LC(e){return[{provide:ge,useFactory:e},{provide:wi,multi:!0,useFactory:()=>{const t=A(qN,{optional:!0});return()=>t.initialize()}},{provide:FC,useFactory:zN},{provide:Km,useFactory:ev}]}function WN(e){return Ru([[],LC(()=>new ge(function NC(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}(e)))])}let tl=(()=>{class t{}return t.__NG_ELEMENT_ID__=ZN,t})();function ZN(e){return function YN(e,t,r){if(cr(e)&&!r){const n=_t(e.index,t);return new xi(n,n)}return 47&e.type?new xi(t[Te],t):null}(Be(),M(),16==(16&e))}class UC{constructor(){}supports(t){return Fa(t)}create(t){return new tO(t)}}const eO=(e,t)=>t;class tO{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||eO}forEachItem(t){let r;for(r=this._itHead;null!==r;r=r._next)t(r)}forEachOperation(t){let r=this._itHead,n=this._removalsHead,o=0,i=null;for(;r||n;){const s=!n||r&&r.currentIndex<$C(n,o,i)?r:n,a=$C(s,o,i),l=s.currentIndex;if(s===n)o--,n=n._nextRemoved;else if(r=r._next,null==s.previousIndex)o++;else{i||(i=[]);const c=a-o,u=l-o;if(c!=u){for(let g=0;g{s=this._trackByFn(o,a),null!==r&&Object.is(r.trackById,s)?(n&&(r=this._verifyReinsertion(r,a,s,o)),Object.is(r.item,a)||this._addIdentityChange(r,a)):(r=this._mismatch(r,a,s,o),n=!0),r=r._next,o++}),this.length=o;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,r,n,o){let i;return null===t?i=this._itTail:(i=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,r)||this._addIdentityChange(t,r),this._reinsertAfter(t,i,o)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,o))?(Object.is(t.item,r)||this._addIdentityChange(t,r),this._moveAfter(t,i,o)):t=this._addAfter(new nO(r,n),i,o),t}_verifyReinsertion(t,r,n,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==i?t=this._reinsertAfter(i,t._prev,o):t.currentIndex!=o&&(t.currentIndex=o,this._addToMoves(t,o)),t}_truncate(t){for(;null!==t;){const r=t._next;this._addToRemovals(this._unlink(t)),t=r}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,r,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const o=t._prevRemoved,i=t._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(t,r,n),this._addToMoves(t,n),t}_moveAfter(t,r,n){return this._unlink(t),this._insertAfter(t,r,n),this._addToMoves(t,n),t}_addAfter(t,r,n){return this._insertAfter(t,r,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,r,n){const o=null===r?this._itHead:r._next;return t._next=o,t._prev=r,null===o?this._itTail=t:o._prev=t,null===r?this._itHead=t:r._next=t,null===this._linkedRecords&&(this._linkedRecords=new BC),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const r=t._prev,n=t._next;return null===r?this._itHead=n:r._next=n,null===n?this._itTail=r:n._prev=r,t}_addToMoves(t,r){return t.previousIndex===r||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new BC),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,r){return t.item=r,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class nO{constructor(t,r){this.item=t,this.trackById=r,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}}class rO{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(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,r){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===r||r<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const r=t._prevDup,n=t._nextDup;return null===r?this._head=n:r._nextDup=n,null===n?this._tail=r:n._prevDup=r,null===this._head}}class BC{constructor(){this.map=new Map}put(t){const r=t.trackById;let n=this.map.get(r);n||(n=new rO,this.map.set(r,n)),n.add(t)}get(t,r){const o=this.map.get(t);return o?o.get(t,r):null}remove(t){const r=t.trackById;return this.map.get(r).remove(t)&&this.map.delete(r),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function $C(e,t,r){const n=e.previousIndex;if(null===n)return n;let o=0;return r&&n{if(r&&r.key===o)this._maybeAddToChanges(r,n),this._appendAfter=r,r=r._next;else{const i=this._getOrCreateRecordForKey(o,n);r=this._insertBeforeOrAppend(r,i)}}),r){r._prev&&(r._prev._next=null),this._removalsHead=r;for(let n=r;null!==n;n=n._nextRemoved)n===this._mapHead&&(this._mapHead=null),this._records.delete(n.key),n._nextRemoved=n._next,n.previousValue=n.currentValue,n.currentValue=null,n._prev=null,n._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,r){if(t){const n=t._prev;return r._next=t,r._prev=n,t._prev=r,n&&(n._next=r),t===this._mapHead&&(this._mapHead=r),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=r,r._prev=this._appendAfter):this._mapHead=r,this._appendAfter=r,null}_getOrCreateRecordForKey(t,r){if(this._records.has(t)){const o=this._records.get(t);this._maybeAddToChanges(o,r);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const n=new iO(t);return this._records.set(t,n),n.currentValue=r,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,r){Object.is(r,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=r,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,r){t instanceof Map?t.forEach(r):Object.keys(t).forEach(n=>r(t[n],n))}}class iO{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function zC(){return new ol([new UC])}let ol=(()=>{var e;class t{constructor(n){this.factories=n}static create(n,o){if(null!=o){const i=o.factories.slice();n=n.concat(i)}return new t(n)}static extend(n){return{provide:t,useFactory:o=>t.create(n,o||zC()),deps:[[t,new na,new ta]]}}find(n){const o=this.factories.find(i=>i.supports(n));if(null!=o)return o;throw new S(901,!1)}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:zC}),t})();function qC(){return new Zi([new GC])}let Zi=(()=>{var e;class t{constructor(n){this.factories=n}static create(n,o){if(o){const i=o.factories.slice();n=n.concat(i)}return new t(n)}static extend(n){return{provide:t,useFactory:o=>t.create(n,o||qC()),deps:[[t,new na,new ta]]}}find(n){const o=this.factories.find(i=>i.supports(n));if(o)return o;throw new S(901,!1)}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:qC}),t})(),lO=(()=>{var e;class t{constructor(n){}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Io))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function So(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}const ve_apiBaseUrl="https://www.palmmedia.de/api/";let uf=null;function Xn(){return uf}class bO{}const pt=new x("DocumentToken");let df=(()=>{var e;class t{historyGo(n){throw new Error("Not implemented")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(EO)},providedIn:"platform"}),t})();const wO=new x("Location Initialized");let EO=(()=>{var e;class t extends df{constructor(){super(),this._doc=A(pt),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Xn().getBaseHref(this._doc)}onPopState(n){const o=Xn().getGlobalEventTarget(this._doc,"window");return o.addEventListener("popstate",n,!1),()=>o.removeEventListener("popstate",n)}onHashChange(n){const o=Xn().getGlobalEventTarget(this._doc,"window");return o.addEventListener("hashchange",n,!1),()=>o.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,o,i){this._history.pushState(n,o,i)}replaceState(n,o,i){this._history.replaceState(n,o,i)}forward(){this._history.forward()}back(){this._history.back()}historyGo(n=0){this._history.go(n)}getState(){return this._history.state}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return new e},providedIn:"platform"}),t})();function ff(e,t){if(0==e.length)return t;if(0==t.length)return e;let r=0;return e.endsWith("/")&&r++,t.startsWith("/")&&r++,2==r?e+t.substring(1):1==r?e+t:e+"/"+t}function tD(e){const t=e.match(/#|\?|$/),r=t&&t.index||e.length;return e.slice(0,r-("/"===e[r-1]?1:0))+e.slice(r)}function On(e){return e&&"?"!==e[0]?"?"+e:e}let Dr=(()=>{var e;class t{historyGo(n){throw new Error("Not implemented")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(rD)},providedIn:"root"}),t})();const nD=new x("appBaseHref");let rD=(()=>{var e;class t extends Dr{constructor(n,o){super(),this._platformLocation=n,this._removeListenerFns=[],this._baseHref=o??this._platformLocation.getBaseHrefFromDOM()??A(pt).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 ff(this._baseHref,n)}path(n=!1){const o=this._platformLocation.pathname+On(this._platformLocation.search),i=this._platformLocation.hash;return i&&n?`${o}${i}`:o}pushState(n,o,i,s){const a=this.prepareExternalUrl(i+On(s));this._platformLocation.pushState(n,o,a)}replaceState(n,o,i,s){const a=this.prepareExternalUrl(i+On(s));this._platformLocation.replaceState(n,o,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(df),F(nD,8))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),MO=(()=>{var e;class t extends Dr{constructor(n,o){super(),this._platformLocation=n,this._baseHref="",this._removeListenerFns=[],null!=o&&(this._baseHref=o)}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}path(n=!1){let o=this._platformLocation.hash;return null==o&&(o="#"),o.length>0?o.substring(1):o}prepareExternalUrl(n){const o=ff(this._baseHref,n);return o.length>0?"#"+o:o}pushState(n,o,i,s){let a=this.prepareExternalUrl(i+On(s));0==a.length&&(a=this._platformLocation.pathname),this._platformLocation.pushState(n,o,a)}replaceState(n,o,i,s){let a=this.prepareExternalUrl(i+On(s));0==a.length&&(a=this._platformLocation.pathname),this._platformLocation.replaceState(n,o,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(df),F(nD,8))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),hf=(()=>{var e;class t{constructor(n){this._subject=new Ee,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=n;const o=this._locationStrategy.getBaseHref();this._basePath=function TO(e){if(new RegExp("^(https?:)?//").test(e)){const[,r]=e.split(/\/\/[^\/]+/);return r}return e}(tD(oD(o))),this._locationStrategy.onPopState(i=>{this._subject.emit({url:this.path(!0),pop:!0,state:i.state,type:i.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(n=!1){return this.normalize(this._locationStrategy.path(n))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(n,o=""){return this.path()==this.normalize(n+On(o))}normalize(n){return t.stripTrailingSlash(function SO(e,t){if(!e||!t.startsWith(e))return t;const r=t.substring(e.length);return""===r||["/",";","?","#"].includes(r[0])?r:t}(this._basePath,oD(n)))}prepareExternalUrl(n){return n&&"/"!==n[0]&&(n="/"+n),this._locationStrategy.prepareExternalUrl(n)}go(n,o="",i=null){this._locationStrategy.pushState(i,"",n,o),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+On(o)),i)}replaceState(n,o="",i=null){this._locationStrategy.replaceState(i,"",n,o),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+On(o)),i)}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._urlChangeSubscription=this.subscribe(o=>{this._notifyUrlChangeListeners(o.url,o.state)})),()=>{const o=this._urlChangeListeners.indexOf(n);this._urlChangeListeners.splice(o,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(n="",o){this._urlChangeListeners.forEach(i=>i(n,o))}subscribe(n,o,i){return this._subject.subscribe({next:n,error:o,complete:i})}}return(e=t).normalizeQueryParams=On,e.joinWithSlash=ff,e.stripTrailingSlash=tD,e.\u0275fac=function(n){return new(n||e)(F(Dr))},e.\u0275prov=L({token:e,factory:function(){return function IO(){return new hf(F(Dr))}()},providedIn:"root"}),t})();function oD(e){return e.replace(/\/index.html$/,"")}function hD(e,t){t=encodeURIComponent(t);for(const r of e.split(";")){const n=r.indexOf("="),[o,i]=-1==n?[r,""]:[r.slice(0,n),r.slice(n+1)];if(o.trim()===t)return decodeURIComponent(i)}return null}const wf=/\s+/,pD=[];let ml=(()=>{var e;class t{constructor(n,o,i,s){this._iterableDiffers=n,this._keyValueDiffers=o,this._ngEl=i,this._renderer=s,this.initialClasses=pD,this.stateMap=new Map}set klass(n){this.initialClasses=null!=n?n.trim().split(wf):pD}set ngClass(n){this.rawClass="string"==typeof n?n.trim().split(wf):n}ngDoCheck(){for(const o of this.initialClasses)this._updateState(o,!0);const n=this.rawClass;if(Array.isArray(n)||n instanceof Set)for(const o of n)this._updateState(o,!0);else if(null!=n)for(const o of Object.keys(n))this._updateState(o,!!n[o]);this._applyStateDiff()}_updateState(n,o){const i=this.stateMap.get(n);void 0!==i?(i.enabled!==o&&(i.changed=!0,i.enabled=o),i.touched=!0):this.stateMap.set(n,{enabled:o,changed:!0,touched:!0})}_applyStateDiff(){for(const n of this.stateMap){const o=n[0],i=n[1];i.changed?(this._toggleClass(o,i.enabled),i.changed=!1):i.touched||(i.enabled&&this._toggleClass(o,!1),this.stateMap.delete(o)),i.touched=!1}}_toggleClass(n,o){(n=n.trim()).length>0&&n.split(wf).forEach(i=>{o?this._renderer.addClass(this._ngEl.nativeElement,i):this._renderer.removeClass(this._ngEl.nativeElement,i)})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ol),I(Zi),I(bt),I(Mn))},e.\u0275dir=B({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0}),t})();class hP{constructor(t,r,n,o){this.$implicit=t,this.ngForOf=r,this.index=n,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Ef=(()=>{var e;class t{set ngForOf(n){this._ngForOf=n,this._ngForOfDirty=!0}set ngForTrackBy(n){this._trackByFn=n}get ngForTrackBy(){return this._trackByFn}constructor(n,o,i){this._viewContainer=n,this._template=o,this._differs=i,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(n){n&&(this._template=n)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;!this._differ&&n&&(this._differ=this._differs.find(n).create(this.ngForTrackBy))}if(this._differ){const n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}}_applyChanges(n){const o=this._viewContainer;n.forEachOperation((i,s,a)=>{if(null==i.previousIndex)o.createEmbeddedView(this._template,new hP(i.item,this._ngForOf,-1,-1),null===a?void 0:a);else if(null==a)o.remove(null===s?void 0:s);else if(null!==s){const l=o.get(s);o.move(l,a),mD(l,i)}});for(let i=0,s=o.length;i{mD(o.get(i.currentIndex),i)})}static ngTemplateContextGuard(n,o){return!0}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Zt),I(Rn),I(ol))},e.\u0275dir=B({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0}),t})();function mD(e,t){e.context.$implicit=t.item}let vl=(()=>{var e;class t{constructor(n,o){this._viewContainer=n,this._context=new pP,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=o}set ngIf(n){this._context.$implicit=this._context.ngIf=n,this._updateView()}set ngIfThen(n){vD("ngIfThen",n),this._thenTemplateRef=n,this._thenViewRef=null,this._updateView()}set ngIfElse(n){vD("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,o){return!0}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Zt),I(Rn))},e.\u0275dir=B({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0}),t})();class pP{constructor(){this.$implicit=null,this.ngIf=null}}function vD(e,t){if(t&&!t.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${ke(t)}'.`)}let jP=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function DD(e){return"server"===e}let $P=(()=>{var e;class t{}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new GP(F(pt),window)}),t})();class GP{constructor(t,r){this.document=t,this.window=r,this.offset=()=>[0,0]}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(t){this.supportsScrolling()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(!this.supportsScrolling())return;const r=function zP(e,t){const r=e.getElementById(t)||e.getElementsByName(t)[0];if(r)return r;if("function"==typeof e.createTreeWalker&&e.body&&"function"==typeof e.body.attachShadow){const n=e.createTreeWalker(e.body,NodeFilter.SHOW_ELEMENT);let o=n.currentNode;for(;o;){const i=o.shadowRoot;if(i){const s=i.getElementById(t)||i.querySelector(`[name="${t}"]`);if(s)return s}o=n.nextNode()}}return null}(this.document,t);r&&(this.scrollToElement(r),r.focus())}setHistoryScrollRestoration(t){this.supportsScrolling()&&(this.window.history.scrollRestoration=t)}scrollToElement(t){const r=t.getBoundingClientRect(),n=r.left+this.window.pageXOffset,o=r.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(n-i[0],o-i[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class bD{}const{isArray:gk}=Array,{getPrototypeOf:mk,prototype:vk,keys:yk}=Object;function SD(e){if(1===e.length){const t=e[0];if(gk(t))return{args:t,keys:null};if(function _k(e){return e&&"object"==typeof e&&mk(e)===vk}(t)){const r=yk(t);return{args:r.map(n=>t[n]),keys:r}}}return{args:e,keys:null}}const{isArray:Ck}=Array;function TD(e){return ee(t=>function Dk(e,t){return Ck(t)?e(...t):e(t)}(e,t))}function AD(e,t){return e.reduce((r,n,o)=>(r[n]=t[o],r),{})}function Rf(...e){const t=Yo(e),r=op(e),{args:n,keys:o}=SD(e);if(0===n.length)return Ne([],t);const i=new Ie(function bk(e,t,r=jn){return n=>{xD(t,()=>{const{length:o}=e,i=new Array(o);let s=o,a=o;for(let l=0;l{const c=Ne(e[l],t);let u=!1;c.subscribe(Re(n,d=>{i[l]=d,u||(u=!0,a--),a||n.next(r(i.slice()))},()=>{--s||n.complete()}))},n)},n)}}(n,t,o?s=>AD(o,s):jn));return r?i.pipe(TD(r)):i}function xD(e,t,r){e?vn(r,e,t):t()}const Cl=Wo(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function Nf(...e){return function wk(){return Rr(1)}()(Ne(e,Yo(e)))}function RD(e){return new Ie(t=>{jt(e()).subscribe(t)})}function Ji(e,t){const r=ue(e)?e:()=>e,n=o=>o.error(r());return new Ie(t?o=>t.schedule(n,0,o):n)}function Of(){return Pe((e,t)=>{let r=null;e._refCount++;const n=Re(t,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount)return void(r=null);const o=e._connection,i=r;r=null,o&&(!i||o===i)&&o.unsubscribe(),t.unsubscribe()});e.subscribe(n),n.closed||(r=e.connect())})}class ND extends Ie{constructor(t,r){super(),this.source=t,this.subjectFactory=r,this._subject=null,this._refCount=0,this._connection=null,$h(t)&&(this.lift=t.lift)}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return(!t||t.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:t}=this;this._subject=this._connection=null,t?.unsubscribe()}connect(){let t=this._connection;if(!t){t=this._connection=new gt;const r=this.getSubject();t.add(this.source.subscribe(Re(r,void 0,()=>{this._teardown(),r.complete()},n=>{this._teardown(),r.error(n)},()=>this._teardown()))),t.closed&&(this._connection=null,t=gt.EMPTY)}return t}refCount(){return Of()(this)}}function Xt(e,t){return Pe((r,n)=>{let o=0;r.subscribe(Re(n,i=>e.call(t,i,o++)&&n.next(i)))})}function Dl(e){return Pe((t,r)=>{let n=!1;t.subscribe(Re(r,o=>{n=!0,r.next(o)},()=>{n||r.next(e),r.complete()}))})}function OD(e=Mk){return Pe((t,r)=>{let n=!1;t.subscribe(Re(r,o=>{n=!0,r.next(o)},()=>n?r.complete():r.error(e())))})}function Mk(){return new Cl}function br(e,t){const r=arguments.length>=2;return n=>n.pipe(e?Xt((o,i)=>e(o,i,n)):jn,ar(1),r?Dl(t):OD(()=>new Cl))}function Ao(e,t){return ue(t)?Ve(e,t,1):Ve(e,1)}function Ze(e,t,r){const n=ue(e)||t||r?{next:e,error:t,complete:r}:e;return n?Pe((o,i)=>{var s;null===(s=n.subscribe)||void 0===s||s.call(n);let a=!0;o.subscribe(Re(i,l=>{var c;null===(c=n.next)||void 0===c||c.call(n,l),i.next(l)},()=>{var l;a=!1,null===(l=n.complete)||void 0===l||l.call(n),i.complete()},l=>{var c;a=!1,null===(c=n.error)||void 0===c||c.call(n,l),i.error(l)},()=>{var l,c;a&&(null===(l=n.unsubscribe)||void 0===l||l.call(n)),null===(c=n.finalize)||void 0===c||c.call(n)}))}):jn}function wr(e){return Pe((t,r)=>{let i,n=null,o=!1;n=t.subscribe(Re(r,void 0,void 0,s=>{i=jt(e(s,wr(e)(t))),n?(n.unsubscribe(),n=null,i.subscribe(r)):o=!0})),o&&(n.unsubscribe(),n=null,i.subscribe(r))})}function Pf(e){return e<=0?()=>Kt:Pe((t,r)=>{let n=[];t.subscribe(Re(r,o=>{n.push(o),e{for(const o of n)r.next(o);r.complete()},void 0,()=>{n=null}))})}function Ki(e){return Pe((t,r)=>{try{t.subscribe(r)}finally{r.add(e)}})}class Rk extends bO{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class kf extends Rk{static makeCurrent(){!function DO(e){uf||(uf=e)}(new kf)}onAndCancel(t,r,n){return t.addEventListener(r,n),()=>{t.removeEventListener(r,n)}}dispatchEvent(t,r){t.dispatchEvent(r)}remove(t){t.parentNode&&t.parentNode.removeChild(t)}createElement(t,r){return(r=r||this.getDefaultDocument()).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,r){return"window"===r?window:"document"===r?t:"body"===r?t.body:null}getBaseHref(t){const r=function Nk(){return es=es||document.querySelector("base"),es?es.getAttribute("href"):null}();return null==r?null:function Ok(e){bl=bl||document.createElement("a"),bl.setAttribute("href",e);const t=bl.pathname;return"/"===t.charAt(0)?t:`/${t}`}(r)}resetBaseElement(){es=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return hD(document.cookie,t)}}let bl,es=null,kk=(()=>{var e;class t{build(){return new XMLHttpRequest}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Ff=new x("EventManagerPlugins");let PD=(()=>{var e;class t{constructor(n,o){this._zone=o,this._eventNameToPlugin=new Map,n.forEach(i=>{i.manager=this}),this._plugins=n.slice().reverse()}addEventListener(n,o,i){return this._findPluginFor(o).addEventListener(n,o,i)}getZone(){return this._zone}_findPluginFor(n){let o=this._eventNameToPlugin.get(n);if(o)return o;if(o=this._plugins.find(s=>s.supports(n)),!o)throw new S(5101,!1);return this._eventNameToPlugin.set(n,o),o}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Ff),F(ge))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();class kD{constructor(t){this._doc=t}}const Lf="ng-app-id";let FD=(()=>{var e;class t{constructor(n,o,i,s={}){this.doc=n,this.appId=o,this.nonce=i,this.platformId=s,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=DD(s),this.resetHostNodes()}addStyles(n){for(const o of n)1===this.changeUsageCount(o,1)&&this.onStyleAdded(o)}removeStyles(n){for(const o of n)this.changeUsageCount(o,-1)<=0&&this.onStyleRemoved(o)}ngOnDestroy(){const n=this.styleNodesInDOM;n&&(n.forEach(o=>o.remove()),n.clear());for(const o of this.getAllStyles())this.onStyleRemoved(o);this.resetHostNodes()}addHost(n){this.hostNodes.add(n);for(const o of this.getAllStyles())this.addStyleToHost(n,o)}removeHost(n){this.hostNodes.delete(n)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(n){for(const o of this.hostNodes)this.addStyleToHost(o,n)}onStyleRemoved(n){const o=this.styleRef;o.get(n)?.elements?.forEach(i=>i.remove()),o.delete(n)}collectServerRenderedStyles(){const n=this.doc.head?.querySelectorAll(`style[${Lf}="${this.appId}"]`);if(n?.length){const o=new Map;return n.forEach(i=>{null!=i.textContent&&o.set(i.textContent,i)}),o}return null}changeUsageCount(n,o){const i=this.styleRef;if(i.has(n)){const s=i.get(n);return s.usage+=o,s.usage}return i.set(n,{usage:o,elements:[]}),o}getStyleElement(n,o){const i=this.styleNodesInDOM,s=i?.get(o);if(s?.parentNode===n)return i.delete(o),s.removeAttribute(Lf),s;{const a=this.doc.createElement("style");return this.nonce&&a.setAttribute("nonce",this.nonce),a.textContent=o,this.platformIsServer&&a.setAttribute(Lf,this.appId),a}}addStyleToHost(n,o){const i=this.getStyleElement(n,o);n.appendChild(i);const s=this.styleRef,a=s.get(o)?.elements;a?a.push(i):s.set(o,{elements:[i],usage:1})}resetHostNodes(){const n=this.hostNodes;n.clear(),n.add(this.doc.head)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt),F(ba),F(Lm,8),F(gr))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Vf={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/"},jf=/%COMP%/g,jk=new x("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!1});function VD(e,t){return t.map(r=>r.replace(jf,e))}let jD=(()=>{var e;class t{constructor(n,o,i,s,a,l,c,u=null){this.eventManager=n,this.sharedStylesHost=o,this.appId=i,this.removeStylesOnCompDestroy=s,this.doc=a,this.platformId=l,this.ngZone=c,this.nonce=u,this.rendererByCompId=new Map,this.platformIsServer=DD(l),this.defaultRenderer=new Hf(n,a,c,this.platformIsServer)}createRenderer(n,o){if(!n||!o)return this.defaultRenderer;this.platformIsServer&&o.encapsulation===Ut.ShadowDom&&(o={...o,encapsulation:Ut.Emulated});const i=this.getOrCreateRenderer(n,o);return i instanceof UD?i.applyToHost(n):i instanceof Uf&&i.applyStyles(),i}getOrCreateRenderer(n,o){const i=this.rendererByCompId;let s=i.get(o.id);if(!s){const a=this.doc,l=this.ngZone,c=this.eventManager,u=this.sharedStylesHost,d=this.removeStylesOnCompDestroy,g=this.platformIsServer;switch(o.encapsulation){case Ut.Emulated:s=new UD(c,u,o,this.appId,d,a,l,g);break;case Ut.ShadowDom:return new $k(c,u,n,o,a,l,this.nonce,g);default:s=new Uf(c,u,o,d,a,l,g)}i.set(o.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}}return(e=t).\u0275fac=function(n){return new(n||e)(F(PD),F(FD),F(ba),F(jk),F(pt),F(gr),F(ge),F(Lm))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();class Hf{constructor(t,r,n,o){this.eventManager=t,this.doc=r,this.ngZone=n,this.platformIsServer=o,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(t,r){return r?this.doc.createElementNS(Vf[r]||r,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,r){(HD(t)?t.content:t).appendChild(r)}insertBefore(t,r,n){t&&(HD(t)?t.content:t).insertBefore(r,n)}removeChild(t,r){t&&t.removeChild(r)}selectRootElement(t,r){let n="string"==typeof t?this.doc.querySelector(t):t;if(!n)throw new S(-5104,!1);return r||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,r,n,o){if(o){r=o+":"+r;const i=Vf[o];i?t.setAttributeNS(i,r,n):t.setAttribute(r,n)}else t.setAttribute(r,n)}removeAttribute(t,r,n){if(n){const o=Vf[n];o?t.removeAttributeNS(o,r):t.removeAttribute(`${n}:${r}`)}else t.removeAttribute(r)}addClass(t,r){t.classList.add(r)}removeClass(t,r){t.classList.remove(r)}setStyle(t,r,n,o){o&(Wn.DashCase|Wn.Important)?t.style.setProperty(r,n,o&Wn.Important?"important":""):t.style[r]=n}removeStyle(t,r,n){n&Wn.DashCase?t.style.removeProperty(r):t.style[r]=""}setProperty(t,r,n){t[r]=n}setValue(t,r){t.nodeValue=r}listen(t,r,n){if("string"==typeof t&&!(t=Xn().getGlobalEventTarget(this.doc,t)))throw new Error(`Unsupported event target ${t} for event ${r}`);return this.eventManager.addEventListener(t,r,this.decoratePreventDefault(n))}decoratePreventDefault(t){return r=>{if("__ngUnwrap__"===r)return t;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>t(r)):t(r))&&r.preventDefault()}}}function HD(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class $k extends Hf{constructor(t,r,n,o,i,s,a,l){super(t,i,s,l),this.sharedStylesHost=r,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=VD(o.id,o.styles);for(const u of c){const 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,r){return super.appendChild(this.nodeOrShadowRoot(t),r)}insertBefore(t,r,n){return super.insertBefore(this.nodeOrShadowRoot(t),r,n)}removeChild(t,r){return super.removeChild(this.nodeOrShadowRoot(t),r)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class Uf extends Hf{constructor(t,r,n,o,i,s,a,l){super(t,i,s,a),this.sharedStylesHost=r,this.removeStylesOnCompDestroy=o,this.styles=l?VD(l,n.styles):n.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class UD extends Uf{constructor(t,r,n,o,i,s,a,l){const c=o+"-"+n.id;super(t,r,n,i,s,a,l,c),this.contentAttr=function Hk(e){return"_ngcontent-%COMP%".replace(jf,e)}(c),this.hostAttr=function Uk(e){return"_nghost-%COMP%".replace(jf,e)}(c)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,r){const n=super.createElement(t,r);return super.setAttribute(n,this.contentAttr,""),n}}let Gk=(()=>{var e;class t extends kD{constructor(n){super(n)}supports(n){return!0}addEventListener(n,o,i){return n.addEventListener(o,i,!1),()=>this.removeEventListener(n,o,i)}removeEventListener(n,o,i){return n.removeEventListener(o,i)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const BD=["alt","control","meta","shift"],zk={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},qk={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let Wk=(()=>{var e;class t extends kD{constructor(n){super(n)}supports(n){return null!=t.parseEventName(n)}addEventListener(n,o,i){const s=t.parseEventName(o),a=t.eventCallback(s.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Xn().onAndCancel(n,s.domEventName,a))}static parseEventName(n){const o=n.toLowerCase().split("."),i=o.shift();if(0===o.length||"keydown"!==i&&"keyup"!==i)return null;const s=t._normalizeKey(o.pop());let a="",l=o.indexOf("code");if(l>-1&&(o.splice(l,1),a="code."),BD.forEach(u=>{const d=o.indexOf(u);d>-1&&(o.splice(d,1),a+=u+".")}),a+=s,0!=o.length||0===s.length)return null;const c={};return c.domEventName=i,c.fullKey=a,c}static matchEventFullKeyCode(n,o){let i=zk[n.key]||n.key,s="";return o.indexOf("code.")>-1&&(i=n.code,s="code."),!(null==i||!i)&&(i=i.toLowerCase()," "===i?i="space":"."===i&&(i="dot"),BD.forEach(a=>{a!==i&&(0,qk[a])(n)&&(s+=a+".")}),s+=i,s===o)}static eventCallback(n,o,i){return s=>{t.matchEventFullKeyCode(s,n)&&i.runGuarded(()=>o(s))}}static _normalizeKey(n){return"esc"===n?"escape":n}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function $D(e){return{appProviders:[...zD,...e?.providers??[]],platformProviders:Jk}}const Jk=[{provide:gr,useValue:"browser"},{provide:Fm,useValue:function Yk(){kf.makeCurrent()},multi:!0},{provide:pt,useFactory:function Xk(){return function mI(e){Eu=e}(document),document},deps:[]}],Kk=new x(""),GD=[{provide:Ka,useClass:class Pk{addToWindow(t){he.getAngularTestability=(n,o=!0)=>{const i=t.findTestabilityInTree(n,o);if(null==i)throw new S(5103,!1);return i},he.getAllAngularTestabilities=()=>t.getAllTestabilities(),he.getAllAngularRootElements=()=>t.getAllRootElements(),he.frameworkStabilizers||(he.frameworkStabilizers=[]),he.frameworkStabilizers.push(n=>{const o=he.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&n(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(t,r,n){return null==r?null:t.getTestability(r)??(n?Xn().isShadowRoot(r)?this.findTestabilityInTree(t,r.host,!0):this.findTestabilityInTree(t,r.parentElement,!0):null)}},deps:[]},{provide:MC,useClass:Xd,deps:[ge,Jd,Ka]},{provide:Xd,useClass:Xd,deps:[ge,Jd,Ka]}],zD=[{provide:Pu,useValue:"root"},{provide:In,useFactory:function Qk(){return new In},deps:[]},{provide:Ff,useClass:Gk,multi:!0,deps:[pt,ge,gr]},{provide:Ff,useClass:Wk,multi:!0,deps:[pt]},jD,FD,PD,{provide:$m,useExisting:jD},{provide:bD,useClass:kk,deps:[]},[]];let eF=(()=>{var e;class t{constructor(n){}static withServerTransition(n){return{ngModule:t,providers:[{provide:ba,useValue:n.appId}]}}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Kk,12))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({providers:[...zD,...GD],imports:[jP,lO]}),t})(),qD=(()=>{var e;class t{constructor(n){this._doc=n}getTitle(){return this._doc.title}setTitle(n){this._doc.title=n||""}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:function(n){let o=null;return o=n?new n:function nF(){return new qD(F(pt))}(),o},providedIn:"root"}),t})();typeof window<"u"&&window;const W="primary",ts=Symbol("RouteTitle");class aF{constructor(t){this.params=t||{}}has(t){return Object.prototype.hasOwnProperty.call(this.params,t)}get(t){if(this.has(t)){const r=this.params[t];return Array.isArray(r)?r[0]:r}return null}getAll(t){if(this.has(t)){const r=this.params[t];return Array.isArray(r)?r:[r]}return[]}get keys(){return Object.keys(this.params)}}function xo(e){return new aF(e)}function lF(e,t,r){const n=r.path.split("/");if(n.length>e.length||"full"===r.pathMatch&&(t.hasChildren()||n.lengthn[i]===o)}return e===t}function XD(e){return e.length>0?e[e.length-1]:null}function Kn(e){return function pk(e){return!!e&&(e instanceof Ie||ue(e.lift)&&ue(e.subscribe))}(e)?e:Fi(e)?Ne(Promise.resolve(e)):V(e)}const uF={exact:function eb(e,t,r){if(!Er(e.segments,t.segments)||!wl(e.segments,t.segments,r)||e.numberOfChildren!==t.numberOfChildren)return!1;for(const n in t.children)if(!e.children[n]||!eb(e.children[n],t.children[n],r))return!1;return!0},subset:tb},JD={exact:function dF(e,t){return fn(e,t)},subset:function fF(e,t){return Object.keys(t).length<=Object.keys(e).length&&Object.keys(t).every(r=>QD(e[r],t[r]))},ignored:()=>!0};function KD(e,t,r){return uF[r.paths](e.root,t.root,r.matrixParams)&&JD[r.queryParams](e.queryParams,t.queryParams)&&!("exact"===r.fragment&&e.fragment!==t.fragment)}function tb(e,t,r){return nb(e,t,t.segments,r)}function nb(e,t,r,n){if(e.segments.length>r.length){const o=e.segments.slice(0,r.length);return!(!Er(o,r)||t.hasChildren()||!wl(o,r,n))}if(e.segments.length===r.length){if(!Er(e.segments,r)||!wl(e.segments,r,n))return!1;for(const o in t.children)if(!e.children[o]||!tb(e.children[o],t.children[o],n))return!1;return!0}{const o=r.slice(0,e.segments.length),i=r.slice(e.segments.length);return!!(Er(e.segments,o)&&wl(e.segments,o,n)&&e.children[W])&&nb(e.children[W],t,i,n)}}function wl(e,t,r){return t.every((n,o)=>JD[r](e[o].parameters,n.parameters))}class Ro{constructor(t=new ce([],{}),r={},n=null){this.root=t,this.queryParams=r,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=xo(this.queryParams)),this._queryParamMap}toString(){return gF.serialize(this)}}class ce{constructor(t,r){this.segments=t,this.children=r,this.parent=null,Object.values(r).forEach(n=>n.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return El(this)}}class ns{constructor(t,r){this.path=t,this.parameters=r}get parameterMap(){return this._parameterMap||(this._parameterMap=xo(this.parameters)),this._parameterMap}toString(){return ib(this)}}function Er(e,t){return e.length===t.length&&e.every((r,n)=>r.path===t[n].path)}let rs=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return new $f},providedIn:"root"}),t})();class $f{parse(t){const r=new IF(t);return new Ro(r.parseRootSegment(),r.parseQueryParams(),r.parseFragment())}serialize(t){const r=`/${os(t.root,!0)}`,n=function yF(e){const t=Object.keys(e).map(r=>{const n=e[r];return Array.isArray(n)?n.map(o=>`${Ml(r)}=${Ml(o)}`).join("&"):`${Ml(r)}=${Ml(n)}`}).filter(r=>!!r);return t.length?`?${t.join("&")}`:""}(t.queryParams);return`${r}${n}${"string"==typeof t.fragment?`#${function mF(e){return encodeURI(e)}(t.fragment)}`:""}`}}const gF=new $f;function El(e){return e.segments.map(t=>ib(t)).join("/")}function os(e,t){if(!e.hasChildren())return El(e);if(t){const r=e.children[W]?os(e.children[W],!1):"",n=[];return Object.entries(e.children).forEach(([o,i])=>{o!==W&&n.push(`${o}:${os(i,!1)}`)}),n.length>0?`${r}(${n.join("//")})`:r}{const r=function pF(e,t){let r=[];return Object.entries(e.children).forEach(([n,o])=>{n===W&&(r=r.concat(t(o,n)))}),Object.entries(e.children).forEach(([n,o])=>{n!==W&&(r=r.concat(t(o,n)))}),r}(e,(n,o)=>o===W?[os(e.children[W],!1)]:[`${o}:${os(n,!1)}`]);return 1===Object.keys(e.children).length&&null!=e.children[W]?`${El(e)}/${r[0]}`:`${El(e)}/(${r.join("//")})`}}function rb(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Ml(e){return rb(e).replace(/%3B/gi,";")}function Gf(e){return rb(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Il(e){return decodeURIComponent(e)}function ob(e){return Il(e.replace(/\+/g,"%20"))}function ib(e){return`${Gf(e.path)}${function vF(e){return Object.keys(e).map(t=>`;${Gf(t)}=${Gf(e[t])}`).join("")}(e.parameters)}`}const _F=/^[^\/()?;#]+/;function zf(e){const t=e.match(_F);return t?t[0]:""}const CF=/^[^\/()?;=#]+/,bF=/^[^=?&#]+/,EF=/^[^&#]+/;class IF{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new ce([],{}):new ce([],this.parseChildren())}parseQueryParams(){const 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("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let r={};this.peekStartsWith("/(")&&(this.capture("/"),r=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(r).length>0)&&(n[W]=new ce(t,r)),n}parseSegment(){const t=zf(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new S(4009,!1);return this.capture(t),new ns(Il(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const r=function DF(e){const t=e.match(CF);return t?t[0]:""}(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){const o=zf(this.remaining);o&&(n=o,this.capture(n))}t[Il(r)]=Il(n)}parseQueryParam(t){const r=function wF(e){const t=e.match(bF);return t?t[0]:""}(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){const s=function MF(e){const t=e.match(EF);return t?t[0]:""}(this.remaining);s&&(n=s,this.capture(n))}const o=ob(r),i=ob(n);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){const r={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=zf(this.remaining),o=this.remaining[n.length];if("/"!==o&&")"!==o&&";"!==o)throw new S(4010,!1);let i;n.indexOf(":")>-1?(i=n.slice(0,n.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=W);const s=this.parseChildren();r[i]=1===Object.keys(s).length?s[W]:new ce([],s),this.consumeOptional("//")}return r}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new S(4011,!1)}}function sb(e){return e.segments.length>0?new ce([],{[W]:e}):e}function ab(e){const t={};for(const n of Object.keys(e.children)){const i=ab(e.children[n]);if(n===W&&0===i.segments.length&&i.hasChildren())for(const[s,a]of Object.entries(i.children))t[s]=a;else(i.segments.length>0||i.hasChildren())&&(t[n]=i)}return function SF(e){if(1===e.numberOfChildren&&e.children[W]){const t=e.children[W];return new ce(e.segments.concat(t.segments),t.children)}return e}(new ce(e.segments,t))}function Mr(e){return e instanceof Ro}function lb(e){let t;const o=sb(function r(i){const s={};for(const l of i.children){const c=r(l);s[l.outlet]=c}const a=new ce(i.url,s);return i===e&&(t=a),a}(e.root));return t??o}function cb(e,t,r,n){let o=e;for(;o.parent;)o=o.parent;if(0===t.length)return qf(o,o,o,r,n);const i=function AF(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new db(!0,0,e);let t=0,r=!1;const n=e.reduce((o,i,s)=>{if("object"==typeof i&&null!=i){if(i.outlets){const a={};return Object.entries(i.outlets).forEach(([l,c])=>{a[l]="string"==typeof c?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return"string"!=typeof i?[...o,i]:0===s?(i.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?r=!0:".."===a?t++:""!=a&&o.push(a))}),o):[...o,i]},[]);return new db(r,t,n)}(t);if(i.toRoot())return qf(o,o,new ce([],{}),r,n);const s=function xF(e,t,r){if(e.isAbsolute)return new Tl(t,!0,0);if(!r)return new Tl(t,!1,NaN);if(null===r.parent)return new Tl(r,!0,0);const n=Sl(e.commands[0])?0:1;return function RF(e,t,r){let n=e,o=t,i=r;for(;i>o;){if(i-=o,n=n.parent,!n)throw new S(4005,!1);o=n.segments.length}return new Tl(n,!1,o-i)}(r,r.segments.length-1+n,e.numberOfDoubleDots)}(i,o,e),a=s.processChildren?ss(s.segmentGroup,s.index,i.commands):fb(s.segmentGroup,s.index,i.commands);return qf(o,s.segmentGroup,a,r,n)}function Sl(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function is(e){return"object"==typeof e&&null!=e&&e.outlets}function qf(e,t,r,n,o){let s,i={};n&&Object.entries(n).forEach(([l,c])=>{i[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`}),s=e===t?r:ub(e,t,r);const a=sb(ab(s));return new Ro(a,i,o)}function ub(e,t,r){const n={};return Object.entries(e.children).forEach(([o,i])=>{n[o]=i===t?r:ub(i,t,r)}),new ce(e.segments,n)}class db{constructor(t,r,n){if(this.isAbsolute=t,this.numberOfDoubleDots=r,this.commands=n,t&&n.length>0&&Sl(n[0]))throw new S(4003,!1);const o=n.find(is);if(o&&o!==XD(n))throw new S(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class Tl{constructor(t,r,n){this.segmentGroup=t,this.processChildren=r,this.index=n}}function fb(e,t,r){if(e||(e=new ce([],{})),0===e.segments.length&&e.hasChildren())return ss(e,t,r);const n=function OF(e,t,r){let n=0,o=t;const i={match:!1,pathIndex:0,commandIndex:0};for(;o=r.length)return i;const s=e.segments[o],a=r[n];if(is(a))break;const l=`${a}`,c=n0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!pb(l,c,s))return i;n+=2}else{if(!pb(l,{},s))return i;n++}o++}return{match:!0,pathIndex:o,commandIndex:n}}(e,t,r),o=r.slice(n.commandIndex);if(n.match&&n.pathIndexi!==W)&&e.children[W]&&1===e.numberOfChildren&&0===e.children[W].segments.length){const i=ss(e.children[W],t,r);return new ce(e.segments,i.children)}return Object.entries(n).forEach(([i,s])=>{"string"==typeof s&&(s=[s]),null!==s&&(o[i]=fb(e.children[i],t,s))}),Object.entries(e.children).forEach(([i,s])=>{void 0===n[i]&&(o[i]=s)}),new ce(e.segments,o)}}function Wf(e,t,r){const n=e.segments.slice(0,t);let o=0;for(;o{"string"==typeof n&&(n=[n]),null!==n&&(t[r]=Wf(new ce([],{}),0,n))}),t}function hb(e){const t={};return Object.entries(e).forEach(([r,n])=>t[r]=`${n}`),t}function pb(e,t,r){return e==r.path&&fn(t,r.parameters)}const as="imperative";class hn{constructor(t,r){this.id=t,this.url=r}}class Al extends hn{constructor(t,r,n="imperative",o=null){super(t,r),this.type=0,this.navigationTrigger=n,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class Fn extends hn{constructor(t,r,n){super(t,r),this.urlAfterRedirects=n,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ls extends hn{constructor(t,r,n,o){super(t,r),this.reason=n,this.code=o,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class No extends hn{constructor(t,r,n,o){super(t,r),this.reason=n,this.code=o,this.type=16}}class xl extends hn{constructor(t,r,n,o){super(t,r),this.error=n,this.target=o,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class gb extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class kF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class FF extends hn{constructor(t,r,n,o,i){super(t,r),this.urlAfterRedirects=n,this.state=o,this.shouldActivate=i,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class LF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class VF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class jF{constructor(t){this.route=t,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class HF{constructor(t){this.route=t,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class UF{constructor(t){this.snapshot=t,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class BF{constructor(t){this.snapshot=t,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class $F{constructor(t){this.snapshot=t,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class GF{constructor(t){this.snapshot=t,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mb{constructor(t,r,n){this.routerEvent=t,this.position=r,this.anchor=n,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class Zf{}class Yf{constructor(t){this.url=t}}class zF{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new cs,this.attachRef=null}}let cs=(()=>{var e;class t{constructor(){this.contexts=new Map}onChildOutletCreated(n,o){const i=this.getOrCreateContext(n);i.outlet=o,this.contexts.set(n,i)}onChildOutletDestroyed(n){const o=this.getContext(n);o&&(o.outlet=null,o.attachRef=null)}onOutletDeactivated(){const n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let o=this.getContext(n);return o||(o=new zF,this.contexts.set(n,o)),o}getContext(n){return this.contexts.get(n)||null}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();class vb{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const r=this.pathFromRoot(t);return r.length>1?r[r.length-2]:null}children(t){const r=Qf(t,this._root);return r?r.children.map(n=>n.value):[]}firstChild(t){const r=Qf(t,this._root);return r&&r.children.length>0?r.children[0].value:null}siblings(t){const r=Xf(t,this._root);return r.length<2?[]:r[r.length-2].children.map(o=>o.value).filter(o=>o!==t)}pathFromRoot(t){return Xf(t,this._root).map(r=>r.value)}}function Qf(e,t){if(e===t.value)return t;for(const r of t.children){const n=Qf(e,r);if(n)return n}return null}function Xf(e,t){if(e===t.value)return[t];for(const r of t.children){const n=Xf(e,r);if(n.length)return n.unshift(t),n}return[]}class Ln{constructor(t,r){this.value=t,this.children=r}toString(){return`TreeNode(${this.value})`}}function Oo(e){const t={};return e&&e.children.forEach(r=>t[r.value.outlet]=r),t}class yb extends vb{constructor(t,r){super(t),this.snapshot=r,Jf(this,t)}toString(){return this.snapshot.toString()}}function _b(e,t){const r=function qF(e,t){const s=new Rl([],{},{},"",{},W,t,null,{});return new Db("",new Ln(s,[]))}(0,t),n=new At([new ns("",{})]),o=new At({}),i=new At({}),s=new At({}),a=new At(""),l=new Ir(n,o,s,a,i,W,t,r.root);return l.snapshot=r.root,new yb(new Ln(l,[]),r)}class Ir{constructor(t,r,n,o,i,s,a,l){this.urlSubject=t,this.paramsSubject=r,this.queryParamsSubject=n,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(ee(c=>c[ts]))??V(void 0),this.url=t,this.params=r,this.queryParams=n,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._paramMap=this.params.pipe(ee(t=>xo(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(ee(t=>xo(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Cb(e,t="emptyOnly"){const r=e.pathFromRoot;let n=0;if("always"!==t)for(n=r.length-1;n>=1;){const o=r[n],i=r[n-1];if(o.routeConfig&&""===o.routeConfig.path)n--;else{if(i.component)break;n--}}return function WF(e){return e.reduce((t,r)=>({params:{...t.params,...r.params},data:{...t.data,...r.data},resolve:{...r.data,...t.resolve,...r.routeConfig?.data,...r._resolvedData}}),{params:{},data:{},resolve:{}})}(r.slice(n))}class Rl{get title(){return this.data?.[ts]}constructor(t,r,n,o,i,s,a,l,c){this.url=t,this.params=r,this.queryParams=n,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=xo(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=xo(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(n=>n.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class Db extends vb{constructor(t,r){super(r),this.url=t,Jf(this,r)}toString(){return bb(this._root)}}function Jf(e,t){t.value._routerState=e,t.children.forEach(r=>Jf(e,r))}function bb(e){const t=e.children.length>0?` { ${e.children.map(bb).join(", ")} } `:"";return`${e.value}${t}`}function Kf(e){if(e.snapshot){const t=e.snapshot,r=e._futureSnapshot;e.snapshot=r,fn(t.queryParams,r.queryParams)||e.queryParamsSubject.next(r.queryParams),t.fragment!==r.fragment&&e.fragmentSubject.next(r.fragment),fn(t.params,r.params)||e.paramsSubject.next(r.params),function cF(e,t){if(e.length!==t.length)return!1;for(let r=0;rfn(r.parameters,t[n].parameters))}(e.url,t.url);return r&&!(!e.parent!=!t.parent)&&(!e.parent||eh(e.parent,t.parent))}let th=(()=>{var e;class t{constructor(){this.activated=null,this._activatedRoute=null,this.name=W,this.activateEvents=new Ee,this.deactivateEvents=new Ee,this.attachEvents=new Ee,this.detachEvents=new Ee,this.parentContexts=A(cs),this.location=A(Zt),this.changeDetector=A(tl),this.environmentInjector=A(Dt),this.inputBinder=A(Nl,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(n){if(n.name){const{firstChange:o,previousValue:i}=n.name;if(o)return;this.isTrackedInParentContexts(i)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(i)),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;const 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 S(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new S(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new S(4012,!1);this.location.detach();const n=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(n.instance),n}attach(n,o){this.activated=n,this._activatedRoute=o,this.location.insert(n.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(n.instance)}deactivate(){if(this.activated){const n=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(n)}}activateWith(n,o){if(this.isActivated)throw new S(4013,!1);this._activatedRoute=n;const i=this.location,a=n.snapshot.component,l=this.parentContexts.getOrCreateContext(this.name).children,c=new ZF(n,l,i.injector);this.activated=i.createComponent(a,{index:i.length,injector:c,environmentInjector:o??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Nt]}),t})();class ZF{constructor(t,r,n){this.route=t,this.childContexts=r,this.parent=n}get(t,r){return t===Ir?this.route:t===cs?this.childContexts:this.parent.get(t,r)}}const Nl=new x("");let wb=(()=>{var e;class t{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(n){this.unsubscribeFromRouteData(n),this.subscribeToRouteData(n)}unsubscribeFromRouteData(n){this.outletDataSubscriptions.get(n)?.unsubscribe(),this.outletDataSubscriptions.delete(n)}subscribeToRouteData(n){const{activatedRoute:o}=n,i=Rf([o.queryParams,o.params,o.data]).pipe(Ht(([s,a,l],c)=>(l={...s,...a,...l},0===c?V(l):Promise.resolve(l)))).subscribe(s=>{if(!n.isActivated||!n.activatedComponentRef||n.activatedRoute!==o||null===o.component)return void this.unsubscribeFromRouteData(n);const a=function CO(e){const t=X(e);if(!t)return null;const r=new Ri(t);return{get selector(){return r.selector},get type(){return r.componentType},get inputs(){return r.inputs},get outputs(){return r.outputs},get ngContentSelectors(){return r.ngContentSelectors},get isStandalone(){return t.standalone},get isSignal(){return t.signals}}}(o.component);if(a)for(const{templateName:l}of a.inputs)n.activatedComponentRef.setInput(l,s[l]);else this.unsubscribeFromRouteData(n)});this.outletDataSubscriptions.set(n,i)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function us(e,t,r){if(r&&e.shouldReuseRoute(t.value,r.value.snapshot)){const n=r.value;n._futureSnapshot=t.value;const o=function QF(e,t,r){return t.children.map(n=>{for(const o of r.children)if(e.shouldReuseRoute(n.value,o.value.snapshot))return us(e,n,o);return us(e,n)})}(e,t,r);return new Ln(n,o)}{if(e.shouldAttach(t.value)){const i=e.retrieve(t.value);if(null!==i){const s=i.route;return s.value._futureSnapshot=t.value,s.children=t.children.map(a=>us(e,a)),s}}const n=function XF(e){return new Ir(new At(e.url),new At(e.params),new At(e.queryParams),new At(e.fragment),new At(e.data),e.outlet,e.component,e)}(t.value),o=t.children.map(i=>us(e,i));return new Ln(n,o)}}const nh="ngNavigationCancelingError";function Eb(e,t){const{redirectTo:r,navigationBehaviorOptions:n}=Mr(t)?{redirectTo:t,navigationBehaviorOptions:void 0}:t,o=Mb(!1,0,t);return o.url=r,o.navigationBehaviorOptions=n,o}function Mb(e,t,r){const n=new Error("NavigationCancelingError: "+(e||""));return n[nh]=!0,n.cancellationCode=t,r&&(n.url=r),n}function Ib(e){return e&&e[nh]}let Sb=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["ng-component"]],standalone:!0,features:[Mt],decls:1,vars:0,template:function(n,o){1&n&&v(0,"router-outlet")},dependencies:[th],encapsulation:2}),t})();function rh(e){const t=e.children&&e.children.map(rh),r=t?{...e,children:t}:{...e};return!r.component&&!r.loadComponent&&(t||r.loadChildren)&&r.outlet&&r.outlet!==W&&(r.component=Sb),r}function Jt(e){return e.outlet||W}function ds(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let t=e.parent;t;t=t.parent){const r=t.routeConfig;if(r?._loadedInjector)return r._loadedInjector;if(r?._injector)return r._injector}return null}class i2{constructor(t,r,n,o,i){this.routeReuseStrategy=t,this.futureState=r,this.currState=n,this.forwardEvent=o,this.inputBindingEnabled=i}activate(t){const r=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(r,n,t),Kf(this.futureState.root),this.activateChildRoutes(r,n,t)}deactivateChildRoutes(t,r,n){const o=Oo(r);t.children.forEach(i=>{const s=i.value.outlet;this.deactivateRoutes(i,o[s],n),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,n)})}deactivateRoutes(t,r,n){const o=t.value,i=r?r.value:null;if(o===i)if(o.component){const s=n.getContext(o.outlet);s&&this.deactivateChildRoutes(t,r,s.children)}else this.deactivateChildRoutes(t,r,n);else i&&this.deactivateRouteAndItsChildren(r,n)}deactivateRouteAndItsChildren(t,r){t.value.component&&this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,r):this.deactivateRouteAndOutlet(t,r)}detachAndStoreRouteSubtree(t,r){const n=r.getContext(t.value.outlet),o=n&&t.value.component?n.children:r,i=Oo(t);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);if(n&&n.outlet){const s=n.outlet.detach(),a=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:s,route:t,contexts:a})}}deactivateRouteAndOutlet(t,r){const n=r.getContext(t.value.outlet),o=n&&t.value.component?n.children:r,i=Oo(t);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);n&&(n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated()),n.attachRef=null,n.route=null)}activateChildRoutes(t,r,n){const o=Oo(r);t.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],n),this.forwardEvent(new GF(i.value.snapshot))}),t.children.length&&this.forwardEvent(new BF(t.value.snapshot))}activateRoutes(t,r,n){const o=t.value,i=r?r.value:null;if(Kf(o),o===i)if(o.component){const s=n.getOrCreateContext(o.outlet);this.activateChildRoutes(t,r,s.children)}else this.activateChildRoutes(t,r,n);else if(o.component){const s=n.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){const 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),Kf(a.route.value),this.activateChildRoutes(t,null,s.children)}else{const a=ds(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,n)}}class Tb{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Ol{constructor(t,r){this.component=t,this.route=r}}function s2(e,t,r){const n=e._root;return fs(n,t?t._root:null,r,[n.value])}function Po(e,t){const r=Symbol(),n=t.get(e,r);return n===r?"function"!=typeof e||function R1(e){return null!==Rs(e)}(e)?t.get(e):e:n}function fs(e,t,r,n,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=Oo(t);return e.children.forEach(s=>{(function l2(e,t,r,n,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=e.value,s=t?t.value:null,a=r?r.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){const l=function c2(e,t,r){if("function"==typeof r)return r(e,t);switch(r){case"pathParamsChange":return!Er(e.url,t.url);case"pathParamsOrQueryParamsChange":return!Er(e.url,t.url)||!fn(e.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!eh(e,t)||!fn(e.queryParams,t.queryParams);default:return!eh(e,t)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Tb(n)):(i.data=s.data,i._resolvedData=s._resolvedData),fs(e,t,i.component?a?a.children:null:r,n,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Ol(a.outlet.component,s))}else s&&hs(t,a,o),o.canActivateChecks.push(new Tb(n)),fs(e,null,i.component?a?a.children:null:r,n,o)})(s,i[s.value.outlet],r,n.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>hs(a,r.getContext(s),o)),o}function hs(e,t,r){const n=Oo(e),o=e.value;Object.entries(n).forEach(([i,s])=>{hs(s,o.component?t?t.children.getContext(i):null:t,r)}),r.canDeactivateChecks.push(new Ol(o.component&&t&&t.outlet&&t.outlet.isActivated?t.outlet.component:null,o))}function ps(e){return"function"==typeof e}function Ab(e){return e instanceof Cl||"EmptyError"===e?.name}const Pl=Symbol("INITIAL_VALUE");function ko(){return Ht(e=>Rf(e.map(t=>t.pipe(ar(1),function Ek(...e){const t=Yo(e);return Pe((r,n)=>{(t?Nf(e,r,t):Nf(e,r)).subscribe(n)})}(Pl)))).pipe(ee(t=>{for(const r of t)if(!0!==r){if(r===Pl)return Pl;if(!1===r||r instanceof Ro)return r}return!0}),Xt(t=>t!==Pl),ar(1)))}function xb(e){return function OE(...e){return Hh(e)}(Ze(t=>{if(Mr(t))throw Eb(0,t)}),ee(t=>!0===t))}class kl{constructor(t){this.segmentGroup=t||null}}class Rb{constructor(t){this.urlTree=t}}function Fo(e){return Ji(new kl(e))}function Nb(e){return Ji(new Rb(e))}class A2{constructor(t,r){this.urlSerializer=t,this.urlTree=r}noMatchError(t){return new S(4002,!1)}lineralizeSegments(t,r){let n=[],o=r.root;for(;;){if(n=n.concat(o.segments),0===o.numberOfChildren)return V(n);if(o.numberOfChildren>1||!o.children[W])return Ji(new S(4e3,!1));o=o.children[W]}}applyRedirectCommands(t,r,n){return this.applyRedirectCreateUrlTree(r,this.urlSerializer.parse(r),t,n)}applyRedirectCreateUrlTree(t,r,n,o){const i=this.createSegmentGroup(t,r.root,n,o);return new Ro(i,this.createQueryParams(r.queryParams,this.urlTree.queryParams),r.fragment)}createQueryParams(t,r){const n={};return Object.entries(t).forEach(([o,i])=>{if("string"==typeof i&&i.startsWith(":")){const a=i.substring(1);n[o]=r[a]}else n[o]=i}),n}createSegmentGroup(t,r,n,o){const i=this.createSegments(t,r.segments,n,o);let s={};return Object.entries(r.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(t,l,n,o)}),new ce(i,s)}createSegments(t,r,n,o){return r.map(i=>i.path.startsWith(":")?this.findPosParam(t,i,o):this.findOrReturn(i,n))}findPosParam(t,r,n){const o=n[r.path.substring(1)];if(!o)throw new S(4001,!1);return o}findOrReturn(t,r){let n=0;for(const o of r){if(o.path===t.path)return r.splice(n),o;n++}return t}}const oh={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function x2(e,t,r,n,o){const i=ih(e,t,r);return i.matched?(n=function KF(e,t){return e.providers&&!e._injector&&(e._injector=Od(e.providers,t,`Route: ${e.path}`)),e._injector??t}(t,n),function I2(e,t,r,n){const o=t.canMatch;return o&&0!==o.length?V(o.map(s=>{const a=Po(s,e);return Kn(function g2(e){return e&&ps(e.canMatch)}(a)?a.canMatch(t,r):e.runInContext(()=>a(t,r)))})).pipe(ko(),xb()):V(!0)}(n,t,r).pipe(ee(s=>!0===s?i:{...oh}))):V(i)}function ih(e,t,r){if(""===t.path)return"full"===t.pathMatch&&(e.hasChildren()||r.length>0)?{...oh}:{matched:!0,consumedSegments:[],remainingSegments:r,parameters:{},positionalParamSegments:{}};const o=(t.matcher||lF)(r,e,t);if(!o)return{...oh};const i={};Object.entries(o.posParams??{}).forEach(([a,l])=>{i[a]=l.path});const s=o.consumed.length>0?{...i,...o.consumed[o.consumed.length-1].parameters}:i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:r.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function Ob(e,t,r,n){return r.length>0&&function O2(e,t,r){return r.some(n=>Fl(e,t,n)&&Jt(n)!==W)}(e,r,n)?{segmentGroup:new ce(t,N2(n,new ce(r,e.children))),slicedSegments:[]}:0===r.length&&function P2(e,t,r){return r.some(n=>Fl(e,t,n))}(e,r,n)?{segmentGroup:new ce(e.segments,R2(e,0,r,n,e.children)),slicedSegments:r}:{segmentGroup:new ce(e.segments,e.children),slicedSegments:r}}function R2(e,t,r,n,o){const i={};for(const s of n)if(Fl(e,r,s)&&!o[Jt(s)]){const a=new ce([],{});i[Jt(s)]=a}return{...o,...i}}function N2(e,t){const r={};r[W]=t;for(const n of e)if(""===n.path&&Jt(n)!==W){const o=new ce([],{});r[Jt(n)]=o}return r}function Fl(e,t,r){return(!(e.hasChildren()||t.length>0)||"full"!==r.pathMatch)&&""===r.path}class V2{constructor(t,r,n,o,i,s,a){this.injector=t,this.configLoader=r,this.rootComponentType=n,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.allowRedirects=!0,this.applyRedirects=new A2(this.urlSerializer,this.urlTree)}noMatchError(t){return new S(4002,!1)}recognize(){const t=Ob(this.urlTree.root,[],[],this.config).segmentGroup;return this.processSegmentGroup(this.injector,this.config,t,W).pipe(wr(r=>{if(r instanceof Rb)return this.allowRedirects=!1,this.urlTree=r.urlTree,this.match(r.urlTree);throw r instanceof kl?this.noMatchError(r):r}),ee(r=>{const n=new Rl([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},W,this.rootComponentType,null,{}),o=new Ln(n,r),i=new Db("",o),s=function TF(e,t,r=null,n=null){return cb(lb(e),t,r,n)}(n,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,i.url=this.urlSerializer.serialize(s),this.inheritParamsAndData(i._root),{state:i,tree:s}}))}match(t){return this.processSegmentGroup(this.injector,this.config,t.root,W).pipe(wr(n=>{throw n instanceof kl?this.noMatchError(n):n}))}inheritParamsAndData(t){const r=t.value,n=Cb(r,this.paramsInheritanceStrategy);r.params=Object.freeze(n.params),r.data=Object.freeze(n.data),t.children.forEach(o=>this.inheritParamsAndData(o))}processSegmentGroup(t,r,n,o){return 0===n.segments.length&&n.hasChildren()?this.processChildren(t,r,n):this.processSegment(t,r,n,n.segments,o,!0)}processChildren(t,r,n){const o=[];for(const i of Object.keys(n.children))"primary"===i?o.unshift(i):o.push(i);return Ne(o).pipe(Ao(i=>{const s=n.children[i],a=function r2(e,t){const r=e.filter(n=>Jt(n)===t);return r.push(...e.filter(n=>Jt(n)!==t)),r}(r,i);return this.processSegmentGroup(t,a,s,i)}),function Sk(e,t){return Pe(function Ik(e,t,r,n,o){return(i,s)=>{let a=r,l=t,c=0;i.subscribe(Re(s,u=>{const d=c++;l=a?e(l,u,d):(a=!0,u),n&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}(e,t,arguments.length>=2,!0))}((i,s)=>(i.push(...s),i)),Dl(null),function Tk(e,t){const r=arguments.length>=2;return n=>n.pipe(e?Xt((o,i)=>e(o,i,n)):jn,Pf(1),r?Dl(t):OD(()=>new Cl))}(),Ve(i=>{if(null===i)return Fo(n);const s=Pb(i);return function j2(e){e.sort((t,r)=>t.value.outlet===W?-1:r.value.outlet===W?1:t.value.outlet.localeCompare(r.value.outlet))}(s),V(s)}))}processSegment(t,r,n,o,i,s){return Ne(r).pipe(Ao(a=>this.processSegmentAgainstRoute(a._injector??t,r,a,n,o,i,s).pipe(wr(l=>{if(l instanceof kl)return V(null);throw l}))),br(a=>!!a),wr(a=>{if(Ab(a))return function F2(e,t,r){return 0===t.length&&!e.children[r]}(n,o,i)?V([]):Fo(n);throw a}))}processSegmentAgainstRoute(t,r,n,o,i,s,a){return function k2(e,t,r,n){return!!(Jt(e)===n||n!==W&&Fl(t,r,e))&&("**"===e.path||ih(t,e,r).matched)}(n,o,i,s)?void 0===n.redirectTo?this.matchSegmentAgainstRoute(t,o,n,i,s,a):a&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,o,r,n,i,s):Fo(o):Fo(o)}expandSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s){return"**"===o.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,o,s):this.expandRegularSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,r,n,o){const i=this.applyRedirects.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Nb(i):this.applyRedirects.lineralizeSegments(n,i).pipe(Ve(s=>{const a=new ce(s,{});return this.processSegment(t,r,a,s,o,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s){const{matched:a,consumedSegments:l,remainingSegments:c,positionalParamSegments:u}=ih(r,o,i);if(!a)return Fo(r);const d=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,u);return o.redirectTo.startsWith("/")?Nb(d):this.applyRedirects.lineralizeSegments(o,d).pipe(Ve(g=>this.processSegment(t,n,r,g.concat(c),s,!1)))}matchSegmentAgainstRoute(t,r,n,o,i,s){let a;if("**"===n.path){const l=o.length>0?XD(o).parameters:{};a=V({snapshot:new Rl(o,l,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,kb(n),Jt(n),n.component??n._loadedComponent??null,n,Fb(n)),consumedSegments:[],remainingSegments:[]}),r.children={}}else a=x2(r,n,o,t).pipe(ee(({matched:l,consumedSegments:c,remainingSegments:u,parameters:d})=>l?{snapshot:new Rl(c,d,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,kb(n),Jt(n),n.component??n._loadedComponent??null,n,Fb(n)),consumedSegments:c,remainingSegments:u}:null));return a.pipe(Ht(l=>null===l?Fo(r):this.getChildConfig(t=n._injector??t,n,o).pipe(Ht(({routes:c})=>{const u=n._loadedInjector??t,{snapshot:d,consumedSegments:g,remainingSegments:m}=l,{segmentGroup:y,slicedSegments:C}=Ob(r,g,m,c);if(0===C.length&&y.hasChildren())return this.processChildren(u,c,y).pipe(ee(E=>null===E?null:[new Ln(d,E)]));if(0===c.length&&0===C.length)return V([new Ln(d,[])]);const b=Jt(n)===i;return this.processSegment(u,c,y,C,b?W:i,!0).pipe(ee(E=>[new Ln(d,E)]))}))))}getChildConfig(t,r,n){return r.children?V({routes:r.children,injector:t}):r.loadChildren?void 0!==r._loadedRoutes?V({routes:r._loadedRoutes,injector:r._loadedInjector}):function M2(e,t,r,n){const o=t.canLoad;return void 0===o||0===o.length?V(!0):V(o.map(s=>{const a=Po(s,e);return Kn(function d2(e){return e&&ps(e.canLoad)}(a)?a.canLoad(t,r):e.runInContext(()=>a(t,r)))})).pipe(ko(),xb())}(t,r,n).pipe(Ve(o=>o?this.configLoader.loadChildren(t,r).pipe(Ze(i=>{r._loadedRoutes=i.routes,r._loadedInjector=i.injector})):function T2(e){return Ji(Mb(!1,3))}())):V({routes:[],injector:t})}}function H2(e){const t=e.value.routeConfig;return t&&""===t.path}function Pb(e){const t=[],r=new Set;for(const n of e){if(!H2(n)){t.push(n);continue}const o=t.find(i=>n.value.routeConfig===i.value.routeConfig);void 0!==o?(o.children.push(...n.children),r.add(o)):t.push(n)}for(const n of r){const o=Pb(n.children);t.push(new Ln(n.value,o))}return t.filter(n=>!r.has(n))}function kb(e){return e.data||{}}function Fb(e){return e.resolve||{}}function Lb(e){return"string"==typeof e.title||null===e.title}function sh(e){return Ht(t=>{const r=e(t);return r?Ne(r).pipe(ee(()=>t)):V(t)})}const Lo=new x("ROUTES");let ah=(()=>{var e;class t{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=A(DC)}loadComponent(n){if(this.componentLoaders.get(n))return this.componentLoaders.get(n);if(n._loadedComponent)return V(n._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(n);const o=Kn(n.loadComponent()).pipe(ee(Vb),Ze(s=>{this.onLoadEndListener&&this.onLoadEndListener(n),n._loadedComponent=s}),Ki(()=>{this.componentLoaders.delete(n)})),i=new ND(o,()=>new Vt).pipe(Of());return this.componentLoaders.set(n,i),i}loadChildren(n,o){if(this.childrenLoaders.get(o))return this.childrenLoaders.get(o);if(o._loadedRoutes)return V({routes:o._loadedRoutes,injector:o._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(o);const s=function W2(e,t,r,n){return Kn(e.loadChildren()).pipe(ee(Vb),Ve(o=>o instanceof S_||Array.isArray(o)?V(o):Ne(t.compileModuleAsync(o))),ee(o=>{n&&n(e);let i,s,a=!1;return Array.isArray(o)?(s=o,!0):(i=o.create(r).injector,s=i.get(Lo,[],{optional:!0,self:!0}).flat()),{routes:s.map(rh),injector:i}}))}(o,this.compiler,n,this.onLoadEndListener).pipe(Ki(()=>{this.childrenLoaders.delete(o)})),a=new ND(s,()=>new Vt).pipe(Of());return this.childrenLoaders.set(o,a),a}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function Vb(e){return function Z2(e){return e&&"object"==typeof e&&"default"in e}(e)?e.default:e}let Ll=(()=>{var e;class t{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new Vt,this.transitionAbortSubject=new Vt,this.configLoader=A(ah),this.environmentInjector=A(Dt),this.urlSerializer=A(rs),this.rootContexts=A(cs),this.inputBindingEnabled=null!==A(Nl,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>V(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=i=>this.events.next(new HF(i)),this.configLoader.onLoadStartListener=i=>this.events.next(new jF(i))}complete(){this.transitions?.complete()}handleNavigationRequest(n){const o=++this.navigationId;this.transitions?.next({...this.transitions.value,...n,id:o})}setupNavigations(n,o,i){return this.transitions=new At({id:0,currentUrlTree:o,currentRawUrl:o,currentBrowserUrl:o,extractedUrl:n.urlHandlingStrategy.extract(o),urlAfterRedirects:n.urlHandlingStrategy.extract(o),rawUrl:o,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:as,restoredState:null,currentSnapshot:i.snapshot,targetSnapshot:null,currentRouterState:i,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(Xt(s=>0!==s.id),ee(s=>({...s,extractedUrl:n.urlHandlingStrategy.extract(s.rawUrl)})),Ht(s=>{this.currentTransition=s;let a=!1,l=!1;return V(s).pipe(Ze(c=>{this.currentNavigation={id:c.id,initialUrl:c.rawUrl,extractedUrl:c.extractedUrl,trigger:c.source,extras:c.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),Ht(c=>{const u=c.currentBrowserUrl.toString(),d=!n.navigated||c.extractedUrl.toString()!==u||u!==c.currentUrlTree.toString();if(!d&&"reload"!==(c.extras.onSameUrlNavigation??n.onSameUrlNavigation)){const m="";return this.events.next(new No(c.id,this.urlSerializer.serialize(c.rawUrl),m,0)),c.resolve(null),Kt}if(n.urlHandlingStrategy.shouldProcessUrl(c.rawUrl))return V(c).pipe(Ht(m=>{const y=this.transitions?.getValue();return this.events.next(new Al(m.id,this.urlSerializer.serialize(m.extractedUrl),m.source,m.restoredState)),y!==this.transitions?.getValue()?Kt:Promise.resolve(m)}),function U2(e,t,r,n,o,i){return Ve(s=>function L2(e,t,r,n,o,i,s="emptyOnly"){return new V2(e,t,r,n,o,s,i).recognize()}(e,t,r,n,s.extractedUrl,o,i).pipe(ee(({state:a,tree:l})=>({...s,targetSnapshot:a,urlAfterRedirects:l}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,n.config,this.urlSerializer,n.paramsInheritanceStrategy),Ze(m=>{s.targetSnapshot=m.targetSnapshot,s.urlAfterRedirects=m.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:m.urlAfterRedirects};const y=new gb(m.id,this.urlSerializer.serialize(m.extractedUrl),this.urlSerializer.serialize(m.urlAfterRedirects),m.targetSnapshot);this.events.next(y)}));if(d&&n.urlHandlingStrategy.shouldProcessUrl(c.currentRawUrl)){const{id:m,extractedUrl:y,source:C,restoredState:b,extras:E}=c,D=new Al(m,this.urlSerializer.serialize(y),C,b);this.events.next(D);const O=_b(0,this.rootComponentType).snapshot;return this.currentTransition=s={...c,targetSnapshot:O,urlAfterRedirects:y,extras:{...E,skipLocationChange:!1,replaceUrl:!1}},V(s)}{const m="";return this.events.next(new No(c.id,this.urlSerializer.serialize(c.extractedUrl),m,1)),c.resolve(null),Kt}}),Ze(c=>{const u=new kF(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),ee(c=>(this.currentTransition=s={...c,guards:s2(c.targetSnapshot,c.currentSnapshot,this.rootContexts)},s)),function v2(e,t){return Ve(r=>{const{targetSnapshot:n,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=r;return 0===s.length&&0===i.length?V({...r,guardsResult:!0}):function y2(e,t,r,n){return Ne(e).pipe(Ve(o=>function E2(e,t,r,n,o){const i=t&&t.routeConfig?t.routeConfig.canDeactivate:null;return i&&0!==i.length?V(i.map(a=>{const l=ds(t)??o,c=Po(a,l);return Kn(function p2(e){return e&&ps(e.canDeactivate)}(c)?c.canDeactivate(e,t,r,n):l.runInContext(()=>c(e,t,r,n))).pipe(br())})).pipe(ko()):V(!0)}(o.component,o.route,r,t,n)),br(o=>!0!==o,!0))}(s,n,o,e).pipe(Ve(a=>a&&function u2(e){return"boolean"==typeof e}(a)?function _2(e,t,r,n){return Ne(t).pipe(Ao(o=>Nf(function D2(e,t){return null!==e&&t&&t(new UF(e)),V(!0)}(o.route.parent,n),function C2(e,t){return null!==e&&t&&t(new $F(e)),V(!0)}(o.route,n),function w2(e,t,r){const n=t[t.length-1],i=t.slice(0,t.length-1).reverse().map(s=>function a2(e){const t=e.routeConfig?e.routeConfig.canActivateChild:null;return t&&0!==t.length?{node:e,guards:t}:null}(s)).filter(s=>null!==s).map(s=>RD(()=>V(s.guards.map(l=>{const c=ds(s.node)??r,u=Po(l,c);return Kn(function h2(e){return e&&ps(e.canActivateChild)}(u)?u.canActivateChild(n,e):c.runInContext(()=>u(n,e))).pipe(br())})).pipe(ko())));return V(i).pipe(ko())}(e,o.path,r),function b2(e,t,r){const n=t.routeConfig?t.routeConfig.canActivate:null;if(!n||0===n.length)return V(!0);const o=n.map(i=>RD(()=>{const s=ds(t)??r,a=Po(i,s);return Kn(function f2(e){return e&&ps(e.canActivate)}(a)?a.canActivate(t,e):s.runInContext(()=>a(t,e))).pipe(br())}));return V(o).pipe(ko())}(e,o.route,r))),br(o=>!0!==o,!0))}(n,i,e,t):V(a)),ee(a=>({...r,guardsResult:a})))})}(this.environmentInjector,c=>this.events.next(c)),Ze(c=>{if(s.guardsResult=c.guardsResult,Mr(c.guardsResult))throw Eb(0,c.guardsResult);const u=new FF(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot,!!c.guardsResult);this.events.next(u)}),Xt(c=>!!c.guardsResult||(this.cancelNavigationTransition(c,"",3),!1)),sh(c=>{if(c.guards.canActivateChecks.length)return V(c).pipe(Ze(u=>{const d=new LF(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(d)}),Ht(u=>{let d=!1;return V(u).pipe(function B2(e,t){return Ve(r=>{const{targetSnapshot:n,guards:{canActivateChecks:o}}=r;if(!o.length)return V(r);let i=0;return Ne(o).pipe(Ao(s=>function $2(e,t,r,n){const o=e.routeConfig,i=e._resolve;return void 0!==o?.title&&!Lb(o)&&(i[ts]=o.title),function G2(e,t,r,n){const o=function z2(e){return[...Object.keys(e),...Object.getOwnPropertySymbols(e)]}(e);if(0===o.length)return V({});const i={};return Ne(o).pipe(Ve(s=>function q2(e,t,r,n){const o=ds(t)??n,i=Po(e,o);return Kn(i.resolve?i.resolve(t,r):o.runInContext(()=>i(t,r)))}(e[s],t,r,n).pipe(br(),Ze(a=>{i[s]=a}))),Pf(1),function Ak(e){return ee(()=>e)}(i),wr(s=>Ab(s)?Kt:Ji(s)))}(i,e,t,n).pipe(ee(s=>(e._resolvedData=s,e.data=Cb(e,r).resolve,o&&Lb(o)&&(e.data[ts]=o.title),null)))}(s.route,n,e,t)),Ze(()=>i++),Pf(1),Ve(s=>i===o.length?V(r):Kt))})}(n.paramsInheritanceStrategy,this.environmentInjector),Ze({next:()=>d=!0,complete:()=>{d||this.cancelNavigationTransition(u,"",2)}}))}),Ze(u=>{const d=new VF(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(d)}))}),sh(c=>{const u=d=>{const g=[];d.routeConfig?.loadComponent&&!d.routeConfig._loadedComponent&&g.push(this.configLoader.loadComponent(d.routeConfig).pipe(Ze(m=>{d.component=m}),ee(()=>{})));for(const m of d.children)g.push(...u(m));return g};return Rf(u(c.targetSnapshot.root)).pipe(Dl(),ar(1))}),sh(()=>this.afterPreactivation()),ee(c=>{const u=function YF(e,t,r){const n=us(e,t._root,r?r._root:void 0);return new yb(n,t)}(n.routeReuseStrategy,c.targetSnapshot,c.currentRouterState);return this.currentTransition=s={...c,targetRouterState:u},s}),Ze(()=>{this.events.next(new Zf)}),((e,t,r,n)=>ee(o=>(new i2(t,o.targetRouterState,o.currentRouterState,r,n).activate(e),o)))(this.rootContexts,n.routeReuseStrategy,c=>this.events.next(c),this.inputBindingEnabled),ar(1),Ze({next:c=>{a=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new Fn(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects))),n.titleStrategy?.updateTitle(c.targetRouterState.snapshot),c.resolve(!0)},complete:()=>{a=!0}}),function xk(e){return Pe((t,r)=>{jt(e).subscribe(Re(r,()=>r.complete(),lc)),!r.closed&&t.subscribe(r)})}(this.transitionAbortSubject.pipe(Ze(c=>{throw c}))),Ki(()=>{a||l||this.cancelNavigationTransition(s,"",1),this.currentNavigation?.id===s.id&&(this.currentNavigation=null)}),wr(c=>{if(l=!0,Ib(c))this.events.next(new ls(s.id,this.urlSerializer.serialize(s.extractedUrl),c.message,c.cancellationCode)),function JF(e){return Ib(e)&&Mr(e.url)}(c)?this.events.next(new Yf(c.url)):s.resolve(!1);else{this.events.next(new xl(s.id,this.urlSerializer.serialize(s.extractedUrl),c,s.targetSnapshot??void 0));try{s.resolve(n.errorHandler(c))}catch(u){s.reject(u)}}return Kt}))}))}cancelNavigationTransition(n,o,i){const s=new ls(n.id,this.urlSerializer.serialize(n.extractedUrl),o,i);this.events.next(s),n.resolve(!1)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function jb(e){return e!==as}let Hb=(()=>{var e;class t{buildTitle(n){let o,i=n.root;for(;void 0!==i;)o=this.getResolvedTitleForRoute(i)??o,i=i.children.find(s=>s.outlet===W);return o}getResolvedTitleForRoute(n){return n.data[ts]}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(Y2)},providedIn:"root"}),t})(),Y2=(()=>{var e;class t extends Hb{constructor(n){super(),this.title=n}updateTitle(n){const o=this.buildTitle(n);void 0!==o&&this.title.setTitle(o)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(qD))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),Q2=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(J2)},providedIn:"root"}),t})();class X2{shouldDetach(t){return!1}store(t,r){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,r){return t.routeConfig===r.routeConfig}}let J2=(()=>{var e;class t extends X2{}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const Vl=new x("",{providedIn:"root",factory:()=>({})});let K2=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(eL)},providedIn:"root"}),t})(),eL=(()=>{var e;class t{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,o){return n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();var gs=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(gs||{});function Ub(e,t){e.events.pipe(Xt(r=>r instanceof Fn||r instanceof ls||r instanceof xl||r instanceof No),ee(r=>r instanceof Fn||r instanceof No?gs.COMPLETE:r instanceof ls&&(0===r.code||1===r.code)?gs.REDIRECTING:gs.FAILED),Xt(r=>r!==gs.REDIRECTING),ar(1)).subscribe(()=>{t()})}function tL(e){throw e}function nL(e,t,r){return t.parse("/")}const rL={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},oL={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let St=(()=>{var e;class t{get navigationId(){return this.navigationTransitions.navigationId}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.location.getState()?.\u0275routerPageId??this.currentPageId}get events(){return this._events}constructor(){this.disposed=!1,this.currentPageId=0,this.console=A(CC),this.isNgZoneEnabled=!1,this._events=new Vt,this.options=A(Vl,{optional:!0})||{},this.pendingTasks=A(Xa),this.errorHandler=this.options.errorHandler||tL,this.malformedUriErrorHandler=this.options.malformedUriErrorHandler||nL,this.navigated=!1,this.lastSuccessfulId=-1,this.urlHandlingStrategy=A(K2),this.routeReuseStrategy=A(Q2),this.titleStrategy=A(Hb),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.config=A(Lo,{optional:!0})?.flat()??[],this.navigationTransitions=A(Ll),this.urlSerializer=A(rs),this.location=A(hf),this.componentInputBindingEnabled=!!A(Nl,{optional:!0}),this.eventsSubscription=new gt,this.isNgZoneEnabled=A(ge)instanceof ge&&ge.isInAngularZone(),this.resetConfig(this.config),this.currentUrlTree=new Ro,this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.routerState=_b(0,null),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe(n=>{this.lastSuccessfulId=n.id,this.currentPageId=this.browserPageId},n=>{this.console.warn(`Unhandled Navigation Error: ${n}`)}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const n=this.navigationTransitions.events.subscribe(o=>{try{const{currentTransition:i}=this.navigationTransitions;if(null===i)return void(Bb(o)&&this._events.next(o));if(o instanceof Al)jb(i.source)&&(this.browserUrlTree=i.extractedUrl);else if(o instanceof No)this.rawUrlTree=i.rawUrl;else if(o instanceof gb){if("eager"===this.urlUpdateStrategy){if(!i.extras.skipLocationChange){const s=this.urlHandlingStrategy.merge(i.urlAfterRedirects,i.rawUrl);this.setBrowserUrl(s,i)}this.browserUrlTree=i.urlAfterRedirects}}else if(o instanceof Zf)this.currentUrlTree=i.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(i.urlAfterRedirects,i.rawUrl),this.routerState=i.targetRouterState,"deferred"===this.urlUpdateStrategy&&(i.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,i),this.browserUrlTree=i.urlAfterRedirects);else if(o instanceof ls)0!==o.code&&1!==o.code&&(this.navigated=!0),(3===o.code||2===o.code)&&this.restoreHistory(i);else if(o instanceof Yf){const s=this.urlHandlingStrategy.merge(o.url,i.currentRawUrl),a={skipLocationChange:i.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||jb(i.source)};this.scheduleNavigation(s,as,null,a,{resolve:i.resolve,reject:i.reject,promise:i.promise})}o instanceof xl&&this.restoreHistory(i,!0),o instanceof Fn&&(this.navigated=!0),Bb(o)&&this._events.next(o)}catch(i){this.navigationTransitions.transitionAbortSubject.next(i)}});this.eventsSubscription.add(n)}resetRootComponentType(n){this.routerState.root.component=n,this.navigationTransitions.rootComponentType=n}initialNavigation(){if(this.setUpLocationChangeListener(),!this.navigationTransitions.hasRequestedNavigation){const n=this.location.getState();this.navigateToSyncWithBrowser(this.location.path(!0),as,n)}}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(n=>{const o="popstate"===n.type?"popstate":"hashchange";"popstate"===o&&setTimeout(()=>{this.navigateToSyncWithBrowser(n.url,o,n.state)},0)}))}navigateToSyncWithBrowser(n,o,i){const s={replaceUrl:!0},a=i?.navigationId?i:null;if(i){const c={...i};delete c.navigationId,delete c.\u0275routerPageId,0!==Object.keys(c).length&&(s.state=c)}const l=this.parseUrl(n);this.scheduleNavigation(l,o,a,s)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(n){this.config=n.map(rh),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(n,o={}){const{relativeTo:i,queryParams:s,fragment:a,queryParamsHandling:l,preserveFragment:c}=o,u=c?this.currentUrlTree.fragment:a;let g,d=null;switch(l){case"merge":d={...this.currentUrlTree.queryParams,...s};break;case"preserve":d=this.currentUrlTree.queryParams;break;default:d=s||null}null!==d&&(d=this.removeEmptyProps(d));try{g=lb(i?i.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof n[0]||!n[0].startsWith("/"))&&(n=[]),g=this.currentUrlTree.root}return cb(g,n,d,u??null)}navigateByUrl(n,o={skipLocationChange:!1}){const i=Mr(n)?n:this.parseUrl(n),s=this.urlHandlingStrategy.merge(i,this.rawUrlTree);return this.scheduleNavigation(s,as,null,o)}navigate(n,o={skipLocationChange:!1}){return function iL(e){for(let t=0;t{const s=n[i];return null!=s&&(o[i]=s),o},{})}scheduleNavigation(n,o,i,s,a){if(this.disposed)return Promise.resolve(!1);let l,c,u;a?(l=a.resolve,c=a.reject,u=a.promise):u=new Promise((g,m)=>{l=g,c=m});const d=this.pendingTasks.add();return Ub(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(d))}),this.navigationTransitions.handleNavigationRequest({source:o,restoredState:i,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,currentBrowserUrl:this.browserUrlTree,rawUrl:n,extras:s,resolve:l,reject:c,promise:u,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),u.catch(g=>Promise.reject(g))}setBrowserUrl(n,o){const i=this.urlSerializer.serialize(n);if(this.location.isCurrentPathEqualTo(i)||o.extras.replaceUrl){const a={...o.extras.state,...this.generateNgRouterState(o.id,this.browserPageId)};this.location.replaceState(i,"",a)}else{const s={...o.extras.state,...this.generateNgRouterState(o.id,this.browserPageId+1)};this.location.go(i,"",s)}}restoreHistory(n,o=!1){if("computed"===this.canceledNavigationResolution){const s=this.currentPageId-this.browserPageId;0!==s?this.location.historyGo(s):this.currentUrlTree===this.getCurrentNavigation()?.finalUrl&&0===s&&(this.resetState(n),this.browserUrlTree=n.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(o&&this.resetState(n),this.resetUrlToCurrentUrlTree())}resetState(n){this.routerState=n.currentRouterState,this.currentUrlTree=n.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(n,o){return"computed"===this.canceledNavigationResolution?{navigationId:n,\u0275routerPageId:o}:{navigationId:n}}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function Bb(e){return!(e instanceof Zf||e instanceof Yf)}let pn=(()=>{var e;class t{constructor(n,o,i,s,a,l){this.router=n,this.route=o,this.tabIndexAttribute=i,this.renderer=s,this.el=a,this.locationStrategy=l,this.href=null,this.commands=null,this.onChanges=new Vt,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const c=a.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===c||"area"===c,this.isAnchorElement?this.subscription=n.events.subscribe(u=>{u instanceof Fn&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(n){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",n)}ngOnChanges(n){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(n){null!=n?(this.commands=Array.isArray(n)?n:[n],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(n,o,i,s,a){return!!(null===this.urlTree||this.isAnchorElement&&(0!==n||o||i||s||a||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const n=null===this.href?null:function Sm(e,t,r){return function VI(e,t){return"src"===t&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===t&&("base"===e||"link"===e)?Im:ro}(t,r)(e)}(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",n)}applyAttributeValue(n,o){const i=this.renderer,s=this.el.nativeElement;null!==o?i.setAttribute(s,n,o):i.removeAttribute(s,n)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(St),I(Ir),function Js(e){return function oM(e,t){if("class"===t)return e.classes;if("style"===t)return e.styles;const r=e.attrs;if(r){const n=r.length;let o=0;for(;o{var e;class t{get isActive(){return this._isActive}constructor(n,o,i,s,a){this.router=n,this.element=o,this.renderer=i,this.cdr=s,this.link=a,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new Ee,this.routerEventsSubscription=n.events.subscribe(l=>{l instanceof Fn&&this.update()})}ngAfterContentInit(){V(this.links.changes,V(null)).pipe(Rr()).subscribe(n=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const n=[...this.links.toArray(),this.link].filter(o=>!!o).map(o=>o.onChanges);this.linkInputChangesSubscription=Ne(n).pipe(Rr()).subscribe(o=>{this._isActive!==this.isLinkActive(this.router)(o)&&this.update()})}set routerLinkActive(n){const o=Array.isArray(n)?n:n.split(" ");this.classes=o.filter(i=>!!i)}ngOnChanges(n){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const n=this.hasActiveLinks();this._isActive!==n&&(this._isActive=n,this.cdr.markForCheck(),this.classes.forEach(o=>{n?this.renderer.addClass(this.element.nativeElement,o):this.renderer.removeClass(this.element.nativeElement,o)}),n&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(n))})}isLinkActive(n){const o=function sL(e){return!!e.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return i=>!!i.urlTree&&n.isActive(i.urlTree,o)}hasActiveLinks(){const n=this.isLinkActive(this.router);return this.link&&n(this.link)||this.links.some(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(St),I(bt),I(Mn),I(tl),I(pn,8))},e.\u0275dir=B({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(n,o,i){if(1&n&&K_(i,pn,5),2&n){let s;J_(s=function eC(){return function zR(e,t){return e[nn].queries[t].queryList}(M(),dg())}())&&(o.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Nt]}),t})();class Gb{}let aL=(()=>{var e;class t{constructor(n,o,i,s,a){this.router=n,this.injector=i,this.preloadingStrategy=s,this.loader=a}setUpPreloading(){this.subscription=this.router.events.pipe(Xt(n=>n instanceof Fn),Ao(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(n,o){const i=[];for(const s of o){s.providers&&!s._injector&&(s._injector=Od(s.providers,n,`Route: ${s.path}`));const a=s._injector??n,l=s._loadedInjector??a;(s.loadChildren&&!s._loadedRoutes&&void 0===s.canLoad||s.loadComponent&&!s._loadedComponent)&&i.push(this.preloadConfig(a,s)),(s.children||s._loadedRoutes)&&i.push(this.processRoutes(l,s.children??s._loadedRoutes))}return Ne(i).pipe(Rr())}preloadConfig(n,o){return this.preloadingStrategy.preload(o,()=>{let i;i=o.loadChildren&&void 0===o.canLoad?this.loader.loadChildren(n,o):V(null);const s=i.pipe(Ve(a=>null===a?V(void 0):(o._loadedRoutes=a.routes,o._loadedInjector=a.injector,this.processRoutes(a.injector??n,a.routes))));return o.loadComponent&&!o._loadedComponent?Ne([s,this.loader.loadComponent(o)]).pipe(Rr()):s})}}return(e=t).\u0275fac=function(n){return new(n||e)(F(St),F(DC),F(Dt),F(Gb),F(ah))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const lh=new x("");let zb=(()=>{var e;class t{constructor(n,o,i,s,a={}){this.urlSerializer=n,this.transitions=o,this.viewportScroller=i,this.zone=s,this.options=a,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},a.scrollPositionRestoration=a.scrollPositionRestoration||"disabled",a.anchorScrolling=a.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof Al?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=n.navigationTrigger,this.restoredId=n.restoredState?n.restoredState.navigationId:0):n instanceof Fn?(this.lastId=n.id,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.urlAfterRedirects).fragment)):n instanceof No&&0===n.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof mb&&(n.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(n.position):n.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(n.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(n,o){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new mb(n,"popstate"===this.lastSource?this.store[this.restoredId]:null,o))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}}return(e=t).\u0275fac=function(n){!function pv(){throw new Error("invalid")}()},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function Vn(e,t){return{\u0275kind:e,\u0275providers:t}}function Wb(){const e=A(wt);return t=>{const r=e.get(Io);if(t!==r.components[0])return;const n=e.get(St),o=e.get(Zb);1===e.get(ch)&&n.initialNavigation(),e.get(Yb,null,Y.Optional)?.setUpPreloading(),e.get(lh,null,Y.Optional)?.init(),n.resetRootComponentType(r.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}const Zb=new x("",{factory:()=>new Vt}),ch=new x("",{providedIn:"root",factory:()=>1}),Yb=new x("");function dL(e){return Vn(0,[{provide:Yb,useExisting:aL},{provide:Gb,useExisting:e}])}const Qb=new x("ROUTER_FORROOT_GUARD"),hL=[hf,{provide:rs,useClass:$f},St,cs,{provide:Ir,useFactory:function qb(e){return e.routerState.root},deps:[St]},ah,[]];function pL(){return new TC("Router",St)}let Xb=(()=>{var e;class t{constructor(n){}static forRoot(n,o){return{ngModule:t,providers:[hL,[],{provide:Lo,multi:!0,useValue:n},{provide:Qb,useFactory:yL,deps:[[St,new ta,new na]]},{provide:Vl,useValue:o||{}},o?.useHash?{provide:Dr,useClass:MO}:{provide:Dr,useClass:rD},{provide:lh,useFactory:()=>{const e=A($P),t=A(ge),r=A(Vl),n=A(Ll),o=A(rs);return r.scrollOffset&&e.setOffset(r.scrollOffset),new zb(o,n,e,t,r)}},o?.preloadingStrategy?dL(o.preloadingStrategy).\u0275providers:[],{provide:TC,multi:!0,useFactory:pL},o?.initialNavigation?_L(o):[],o?.bindToComponentInputs?Vn(8,[wb,{provide:Nl,useExisting:wb}]).\u0275providers:[],[{provide:Jb,useFactory:Wb},{provide:tf,multi:!0,useExisting:Jb}]]}}static forChild(n){return{ngModule:t,providers:[{provide:Lo,multi:!0,useValue:n}]}}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Qb,8))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function yL(e){return"guarded"}function _L(e){return["disabled"===e.initialNavigation?Vn(3,[{provide:Wd,multi:!0,useFactory:()=>{const t=A(St);return()=>{t.setUpLocationChangeListener()}}},{provide:ch,useValue:2}]).\u0275providers:[],"enabledBlocking"===e.initialNavigation?Vn(2,[{provide:ch,useValue:0},{provide:Wd,multi:!0,deps:[wt],useFactory:t=>{const r=t.get(wO,Promise.resolve());return()=>r.then(()=>new Promise(n=>{const o=t.get(St),i=t.get(Zb);Ub(o,()=>{n(!0)}),t.get(Ll).afterPreactivation=()=>(n(!0),i.closed?V(void 0):i),o.initialNavigation()}))}}]).\u0275providers:[]]}const Jb=new x(""),DL=function(){return["/pro"]};let bL=(()=>{var e;class t{constructor(){this.years=(new Date).getFullYear()-2009}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-footer"]],standalone:!0,features:[Mt],decls:94,vars:3,consts:[[1,"container-fluid","mt-5"],[1,"p-5"],[1,"container"],[1,"row"],[1,"col-xs-12","col-md-4","text-center"],["src","resources/portrait_600.jpg","alt","Portrait",1,"img-fluid","img-thumbnail","mb-5",2,"max-height","300px"],[1,"col-xs-12","col-md-8"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[3,"routerLink"],[1,"col-md-3","offset-md-2"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ","target","_blank"],[1,"col-md-4","mt-4","mt-md-0"],["href","https://www.nuget.org/packages/ReportGenerator","target","_blank"],["href","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool","target","_blank"],["href","https://www.nuget.org/packages/ReportGenerator.Core","target","_blank"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col-md-3","mt-4","mt-md-0"],[1,"fa-brands","fa-github"],["href","https://twitter.com/danielpalme","target","_blank"],[1,"fa-brands","fa-twitter"],["href","https://www.palmmedia.de/Privacy","target","_blank"],["href","https://www.palmmedia.de/Imprint","target","_blank"]],template:function(n,o){1&n&&(h(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),v(5,"img",5),p(),h(6,"div",6)(7,"h2"),f(8,"Who's behind"),p(),h(9,"p"),f(10,"My name is Daniel Palme. I'm a software developer from Germany."),p(),h(11,"p"),f(12," Back in 2009 I wanted to create a code coverage report based on "),h(13,"i"),f(14,"PartCover"),p(),f(15," files."),v(16,"br"),f(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),v(18,"br"),f(19),h(20,"i"),f(21,"ReportGenerator"),p(),f(22,". "),p(),h(23,"p"),f(24," You can support the ongoing maintenance by becoming a "),v(25,"i",7),f(26,"\xa0"),h(27,"a",8),f(28,"GitHub sponsor"),p(),f(29," or by buying a "),h(30,"a",9),f(31,"PRO license"),p(),f(32,". "),p()()()()(),h(33,"div",2)(34,"div",3),v(35,"hr"),p()(),h(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),f(42,"GitHub"),p()(),h(43,"a",11),f(44,"Source code"),p(),v(45,"br"),h(46,"a",12),f(47,"Wiki"),p(),v(48,"br"),h(49,"a",13),f(50,"FAQ"),p()(),h(51,"div",14)(52,"p")(53,"b"),f(54,"Download"),p()(),h(55,"i"),f(56,"NuGet"),p(),v(57,"br"),h(58,"a",15),f(59,"ReportGenerator"),p(),v(60,"br"),h(61,"a",16),f(62,"dotnet-reportgenerator-globaltool"),p(),v(63,"br"),h(64,"a",17),f(65,"ReportGenerator.Core"),p(),v(66,"br")(67,"br"),h(68,"i"),f(69,"Integration"),p(),v(70,"br"),h(71,"a",18),f(72,"GitHub actions"),p(),v(73,"br"),h(74,"a",19),f(75,"Azure DevOps"),p()(),h(76,"div",20)(77,"p")(78,"b"),f(79,"Community"),p()(),h(80,"a",11),v(81,"i",21),f(82," GitHub"),p(),v(83,"br"),h(84,"a",22),v(85,"i",23),f(86," Twitter"),p(),v(87,"br")(88,"br"),h(89,"a",24),f(90,"Privacy"),p(),v(91,"br"),h(92,"a",25),f(93,"Imprint"),p()()()()()()),2&n&&(_(19),xn(" Fast forward ",o.years," years, I'm still maintaining "),_(11),w("routerLink",K(2,DL)))},dependencies:[pn],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}"]}),t})();const Kb=function(){return["/"]},wL=function(e){return{show:e}},Vo=function(){return["link-active"]},ew=function(){return{exact:!0}},EL=function(){return["/features"]},ML=function(){return["/getstarted"]},IL=function(){return["/usage"]},SL=function(){return["/contact"]},TL=function(){return["/pro"]};let AL=(()=>{var e;class t{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[Mt],decls:42,vars:34,consts:[[1,"mb-5"],[1,"navbar","fixed-top","navbar-expand-sm","navbar-toggleable-sm","navbar-light","bg-white","border-bottom","box-shadow","mb-3"],[1,"container-xxl","flex-wrap","flex-md-nowrap"],[1,"navbar-brand",3,"routerLink"],["src","resources/logo.svg","height","40","alt","Icon",1,"me-2"],[1,"d-sm-none","d-md-none","d-lg-inline","ms-2"],["type","button","data-toggle","collapse","data-target",".navbar-collapse","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse","collapse","d-sm-inline-flex",3,"ngClass"],[1,"navbar-nav","flex-grow"],[1,"nav-item",3,"routerLinkActive","routerLinkActiveOptions"],[1,"nav-link","text-dark",3,"routerLink"],[1,"nav-item",3,"routerLinkActive"],[1,"nav-link","text-dark","text-nowrap",3,"routerLink"],[1,"pro-button"],[1,"d-md-none","text-secondary"],[1,"navbar-nav","flex-row","flex-wrap","ms-md-auto","d-sm-none","d-md-flex"],[1,"nav-item","col-6","col-md-auto"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank","title","GitHub",1,"nav-link","text-dark"],[1,"fa-brands","fa-github"],[1,"d-inline","d-sm-none","ms-2"],["href","https://twitter.com/danielpalme","target","_blank","title","Twitter",1,"nav-link","text-dark"],[1,"fa-brands","fa-twitter"]],template:function(n,o){1&n&&(h(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),v(4,"img",4),h(5,"span",5),f(6,"ReportGenerator"),p()(),h(7,"button",6),R("click",function(){return o.toggle()}),v(8,"span",7),p(),h(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),f(13,"Home"),p()(),h(14,"li",10)(15,"a",11),f(16,"Features"),p()(),h(17,"li",12)(18,"a",13),f(19,"Get started"),p()(),h(20,"li",12)(21,"a",11),f(22,"Usage"),p()(),h(23,"li",12)(24,"a",11),f(25,"Contact"),p()(),h(26,"li",12)(27,"a",11)(28,"span",14),f(29,"PRO"),p()()()(),v(30,"hr",15),h(31,"ul",16)(32,"li",17)(33,"a",18),v(34,"i",19),h(35,"span",20),f(36,"GitHub"),p()()(),h(37,"li",17)(38,"a",21),v(39,"i",22),h(40,"span",20),f(41,"Twitter"),p()()()()()()()()),2&n&&(_(3),w("routerLink",K(17,Kb)),_(4),zt("aria-expanded",o.isExpanded),_(2),w("ngClass",$i(18,wL,o.isExpanded)),_(2),w("routerLinkActive",K(20,Vo))("routerLinkActiveOptions",K(21,ew)),_(1),w("routerLink",K(22,Kb)),_(2),w("routerLinkActive",K(23,Vo))("routerLinkActiveOptions",K(24,ew)),_(1),w("routerLink",K(25,EL)),_(2),w("routerLinkActive",K(26,Vo)),_(1),w("routerLink",K(27,ML)),_(2),w("routerLinkActive",K(28,Vo)),_(1),w("routerLink",K(29,IL)),_(2),w("routerLinkActive",K(30,Vo)),_(1),w("routerLink",K(31,SL)),_(2),w("routerLinkActive",K(32,Vo)),_(1),w("routerLink",K(33,TL)))},dependencies:[pn,ml,$b],styles:[".box-shadow[_ngcontent-%COMP%]{box-shadow:0 .25rem .75rem #0000000d}@keyframes _ngcontent-%COMP%_pro-button-animation{0%{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}50%{background-color:vvar(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}to{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}}.pro-button[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_pro-button-animation;animation-duration:2s;animation-iteration-count:2}.pro-button[_ngcontent-%COMP%]:hover, .link-active[_ngcontent-%COMP%] .pro-button[_ngcontent-%COMP%]{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}.nav-link[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500}.nav-link[_ngcontent-%COMP%]:hover{text-decoration:underline;text-underline-offset:2px}.link-active[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--rg-primary-hover-color)!important;font-weight:400}"]}),t})(),xL=(()=>{var e;class t{constructor(n,o,i){this.dom=n,this.router=o,this.activatedRoute=i}ngOnInit(){this.router.events.pipe(Xt(n=>n instanceof Fn),ee(()=>this.activatedRoute),ee(n=>{for(;n.firstChild;)n=n.firstChild;return n}),Xt(n=>"primary"===n.outlet),Ve(n=>n.data)).subscribe(n=>{const o=`${window.location.protocol}//${window.location.hostname}`;this.updateCanonicalUrl(n.canonical?o+n.canonical:o+this.router.url)})}updateCanonicalUrl(n){const o=this.dom.getElementsByTagName("head")[0];var i=this.dom.querySelector("link[rel='canonical']")||null;null==i&&(i=this.dom.createElement("link"),o.appendChild(i)),i.setAttribute("rel","canonical"),i.setAttribute("href",n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(pt),I(St),I(Ir))},e.\u0275cmp=vt({type:e,selectors:[["app-root"]],standalone:!0,features:[Mt],decls:3,vars:0,template:function(n,o){1&n&&v(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[AL,th,bL],encapsulation:2}),t})(),tw=(()=>{var e;class t{constructor(n,o){this._renderer=n,this._elementRef=o,this.onChange=i=>{},this.onTouched=()=>{}}setProperty(n,o){this._renderer.setProperty(this._elementRef.nativeElement,n,o)}registerOnTouched(n){this.onTouched=n}registerOnChange(n){this.onChange=n}setDisabledState(n){this.setProperty("disabled",n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt))},e.\u0275dir=B({type:e}),t})(),Sr=(()=>{var e;class t extends tw{}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,features:[le]}),t})();const gn=new x("NgValueAccessor"),OL={provide:gn,useExisting:fe(()=>jo),multi:!0},kL=new x("CompositionEventMode");let jo=(()=>{var e;class t extends tw{constructor(n,o,i){super(n,o),this._compositionMode=i,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function PL(){const e=Xn()?Xn().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(n){this.setProperty("value",n??"")}_handleInput(n){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(n)}_compositionStart(){this._composing=!0}_compositionEnd(n){this._composing=!1,this._compositionMode&&this.onChange(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt),I(kL,8))},e.\u0275dir=B({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(n,o){1&n&&R("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[De([OL]),le]}),t})();function er(e){return null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}const Ye=new x("NgValidators"),tr=new x("NgAsyncValidators"),FL=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;function sw(e){return er(e.value)?{required:!0}:null}function lw(e){return er(e.value)||FL.test(e.value)?null:{email:!0}}function jl(e){return null}function fw(e){return null!=e}function hw(e){return Fi(e)?Ne(e):e}function pw(e){let t={};return e.forEach(r=>{t=null!=r?{...t,...r}:t}),0===Object.keys(t).length?null:t}function gw(e,t){return t.map(r=>r(e))}function mw(e){return e.map(t=>function LL(e){return!e.validate}(t)?t:r=>t.validate(r))}function uh(e){return null!=e?function vw(e){if(!e)return null;const t=e.filter(fw);return 0==t.length?null:function(r){return pw(gw(r,t))}}(mw(e)):null}function dh(e){return null!=e?function yw(e){if(!e)return null;const t=e.filter(fw);return 0==t.length?null:function(r){return function RL(...e){const t=op(e),{args:r,keys:n}=SD(e),o=new Ie(i=>{const{length:s}=r;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=g},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(n?AD(n,a):a),i.complete())}))}});return t?o.pipe(TD(t)):o}(gw(r,t).map(hw)).pipe(ee(pw))}}(mw(e)):null}function _w(e,t){return null===e?[t]:Array.isArray(e)?[...e,t]:[e,t]}function fh(e){return e?Array.isArray(e)?e:[e]:[]}function Hl(e,t){return Array.isArray(e)?e.includes(t):e===t}function bw(e,t){const r=fh(t);return fh(e).forEach(o=>{Hl(r,o)||r.push(o)}),r}function ww(e,t){return fh(t).filter(r=>!Hl(e,r))}class Ew{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=uh(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=dh(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control&&this.control.reset(t)}hasError(t,r){return!!this.control&&this.control.hasError(t,r)}getError(t,r){return this.control?this.control.getError(t,r):null}}class ot extends Ew{get formDirective(){return null}get path(){return null}}class nr extends Ew{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class Mw{constructor(t){this._cd=t}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Ul=(()=>{var e;class t extends Mw{constructor(n){super(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(nr,2))},e.\u0275dir=B({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(n,o){2&n&&Ba("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[le]}),t})(),Bl=(()=>{var e;class t extends Mw{constructor(n){super(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ot,10))},e.\u0275dir=B({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(n,o){2&n&&Ba("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)("ng-submitted",o.isSubmitted)},features:[le]}),t})();const ms="VALID",Gl="INVALID",Ho="PENDING",vs="DISABLED";function gh(e){return(zl(e)?e.validators:e)||null}function mh(e,t){return(zl(t)?t.asyncValidators:e)||null}function zl(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class Aw{constructor(t,r){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(t),this._assignAsyncValidators(r)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===ms}get invalid(){return this.status===Gl}get pending(){return this.status==Ho}get disabled(){return this.status===vs}get enabled(){return this.status!==vs}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(bw(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(bw(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(ww(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(ww(t,this._rawAsyncValidators))}hasValidator(t){return Hl(this._rawValidators,t)}hasAsyncValidator(t){return Hl(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(r=>{r.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=Ho,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const r=this._parentMarkedDirty(t.onlySelf);this.status=vs,this.errors=null,this._forEachChild(n=>{n.disable({...t,onlySelf:!0})}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...t,skipPristineCheck:r}),this._onDisabledChange.forEach(n=>n(!0))}enable(t={}){const r=this._parentMarkedDirty(t.onlySelf);this.status=ms,this._forEachChild(n=>{n.enable({...t,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors({...t,skipPristineCheck:r}),this._onDisabledChange.forEach(n=>n(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===ms||this.status===Ho)&&this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(r=>r._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?vs:ms}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=Ho,this._hasOwnPendingAsyncValidator=!0;const r=hw(this.asyncValidator(this));this._asyncValidationSubscription=r.subscribe(n=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(n,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,r={}){this.errors=t,this._updateControlsErrors(!1!==r.emitEvent)}get(t){let r=t;return null==r||(Array.isArray(r)||(r=r.split(".")),0===r.length)?null:r.reduce((n,o)=>n&&n._find(o),this)}getError(t,r){const n=r?this.get(r):this;return n&&n.errors?n.errors[t]:null}hasError(t,r){return!!this.getError(t,r)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Ee,this.statusChanges=new Ee}_calculateStatus(){return this._allControlsDisabled()?vs:this.errors?Gl:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Ho)?Ho:this._anyControlsHaveStatus(Gl)?Gl:ms}_anyControlsHaveStatus(t){return this._anyControls(r=>r.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){zl(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=function UL(e){return Array.isArray(e)?uh(e):e||null}(this._rawValidators)}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=function BL(e){return Array.isArray(e)?dh(e):e||null}(this._rawAsyncValidators)}}class vh extends Aw{constructor(t,r,n){super(gh(r),mh(n,r)),this.controls=t,this._initObservables(),this._setUpdateStrategy(r),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(t,r){return this.controls[t]?this.controls[t]:(this.controls[t]=r,r.setParent(this),r._registerOnCollectionChange(this._onCollectionChange),r)}addControl(t,r,n={}){this.registerControl(t,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(t,r={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}setControl(t,r,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],r&&this.registerControl(t,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,r={}){(function Tw(e,t,r){e._forEachChild((n,o)=>{if(void 0===r[o])throw new S(1002,"")})})(this,0,t),Object.keys(t).forEach(n=>{(function Sw(e,t,r){const n=e.controls;if(!(t?Object.keys(n):n).length)throw new S(1e3,"");if(!n[r])throw new S(1001,"")})(this,!0,n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r)}patchValue(t,r={}){null!=t&&(Object.keys(t).forEach(n=>{const o=this.controls[n];o&&o.patchValue(t[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r))}reset(t={},r={}){this._forEachChild((n,o)=>{n.reset(t[o],{onlySelf:!0,emitEvent:r.emitEvent})}),this._updatePristine(r),this._updateTouched(r),this.updateValueAndValidity(r)}getRawValue(){return this._reduceChildren({},(t,r,n)=>(t[n]=r.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(r,n)=>!!n._syncPendingControls()||r);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){Object.keys(this.controls).forEach(r=>{const n=this.controls[r];n&&t(n,r)})}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const[r,n]of Object.entries(this.controls))if(this.contains(r)&&t(n))return!0;return!1}_reduceValue(){return this._reduceChildren({},(r,n,o)=>((n.enabled||this.disabled)&&(r[o]=n.value),r))}_reduceChildren(t,r){let n=t;return this._forEachChild((o,i)=>{n=r(n,o,i)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(t){return this.controls.hasOwnProperty(t)?this.controls[t]:null}}const Uo=new x("CallSetDisabledState",{providedIn:"root",factory:()=>ql}),ql="always";function ys(e,t,r=ql){yh(e,t),t.valueAccessor.writeValue(e.value),(e.disabled||"always"===r)&&t.valueAccessor.setDisabledState?.(e.disabled),function zL(e,t){t.valueAccessor.registerOnChange(r=>{e._pendingValue=r,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&xw(e,t)})}(e,t),function WL(e,t){const r=(n,o)=>{t.valueAccessor.writeValue(n),o&&t.viewToModelUpdate(n)};e.registerOnChange(r),t._registerOnDestroy(()=>{e._unregisterOnChange(r)})}(e,t),function qL(e,t){t.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&xw(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),function GL(e,t){if(t.valueAccessor.setDisabledState){const r=n=>{t.valueAccessor.setDisabledState(n)};e.registerOnDisabledChange(r),t._registerOnDestroy(()=>{e._unregisterOnDisabledChange(r)})}}(e,t)}function Yl(e,t){e.forEach(r=>{r.registerOnValidatorChange&&r.registerOnValidatorChange(t)})}function yh(e,t){const r=function Cw(e){return e._rawValidators}(e);null!==t.validator?e.setValidators(_w(r,t.validator)):"function"==typeof r&&e.setValidators([r]);const n=function Dw(e){return e._rawAsyncValidators}(e);null!==t.asyncValidator?e.setAsyncValidators(_w(n,t.asyncValidator)):"function"==typeof n&&e.setAsyncValidators([n]);const o=()=>e.updateValueAndValidity();Yl(t._rawValidators,o),Yl(t._rawAsyncValidators,o)}function xw(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}const JL={provide:ot,useExisting:fe(()=>Bo)},_s=(()=>Promise.resolve())();let Bo=(()=>{var e;class t extends ot{constructor(n,o,i){super(),this.callSetDisabledState=i,this.submitted=!1,this._directives=new Set,this.ngSubmit=new Ee,this.form=new vh({},uh(n),dh(o))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(n){_s.then(()=>{const o=this._findContainer(n.path);n.control=o.registerControl(n.name,n.control),ys(n.control,n,this.callSetDisabledState),n.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(n)})}getControl(n){return this.form.get(n.path)}removeControl(n){_s.then(()=>{const o=this._findContainer(n.path);o&&o.removeControl(n.name),this._directives.delete(n)})}addFormGroup(n){_s.then(()=>{const o=this._findContainer(n.path),i=new vh({});(function Rw(e,t){yh(e,t)})(i,n),o.registerControl(n.name,i),i.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(n){_s.then(()=>{const o=this._findContainer(n.path);o&&o.removeControl(n.name)})}getFormGroup(n){return this.form.get(n.path)}updateModel(n,o){_s.then(()=>{this.form.get(n.path).setValue(o)})}setValue(n){this.control.setValue(n)}onSubmit(n){return this.submitted=!0,function Nw(e,t){e._syncPendingControls(),t.forEach(r=>{const n=r.control;"submit"===n.updateOn&&n._pendingChange&&(r.viewToModelUpdate(n._pendingValue),n._pendingChange=!1)})}(this.form,this._directives),this.ngSubmit.emit(n),"dialog"===n?.target?.method}onReset(){this.resetForm()}resetForm(n=void 0){this.form.reset(n),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(n){return n.pop(),n.length?this.form.get(n):this.form}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Ye,10),I(tr,10),I(Uo,8))},e.\u0275dir=B({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(n,o){1&n&&R("submit",function(s){return o.onSubmit(s)})("reset",function(){return o.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[De([JL]),le]}),t})();function Ow(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}function Pw(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const kw=class extends Aw{constructor(t=null,r,n){super(gh(r),mh(n,r)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(t),this._setUpdateStrategy(r),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),zl(r)&&(r.nonNullable||r.initialValueIsDefault)&&(this.defaultValue=Pw(t)?t.value:t)}setValue(t,r={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==r.emitModelToViewChange&&this._onChange.forEach(n=>n(this.value,!1!==r.emitViewToModelChange)),this.updateValueAndValidity(r)}patchValue(t,r={}){this.setValue(t,r)}reset(t=this.defaultValue,r={}){this._applyFormState(t),this.markAsPristine(r),this.markAsUntouched(r),this.setValue(this.value,r),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){Ow(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){Ow(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){Pw(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}},tV={provide:nr,useExisting:fe(()=>Cs)},Vw=(()=>Promise.resolve())();let Cs=(()=>{var e;class t extends nr{constructor(n,o,i,s,a,l){super(),this._changeDetectorRef=a,this.callSetDisabledState=l,this.control=new kw,this._registered=!1,this.name="",this.update=new Ee,this._parent=n,this._setValidators(o),this._setAsyncValidators(i),this.valueAccessor=function Dh(e,t){if(!t)return null;let r,n,o;return Array.isArray(t),t.forEach(i=>{i.constructor===jo?r=i:function QL(e){return Object.getPrototypeOf(e.constructor)===Sr}(i)?n=i:o=i}),o||n||r||null}(0,s)}ngOnChanges(n){if(this._checkForErrors(),!this._registered||"name"in n){if(this._registered&&(this._checkName(),this.formDirective)){const o=n.name.previousValue;this.formDirective.removeControl({name:o,path:this._getPath(o)})}this._setUpControl()}"isDisabled"in n&&this._updateDisabled(n),function Ch(e,t){if(!e.hasOwnProperty("model"))return!1;const r=e.model;return!!r.isFirstChange()||!Object.is(t,r.currentValue)}(n,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(n){this.viewModel=n,this.update.emit(n)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){ys(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(n){Vw.then(()=>{this.control.setValue(n,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(n){const o=n.isDisabled.currentValue,i=0!==o&&So(o);Vw.then(()=>{i&&!this.control.disabled?this.control.disable():!i&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(n){return this._parent?function Wl(e,t){return[...t.path,e]}(n,this._parent):[n]}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ot,9),I(Ye,10),I(tr,10),I(gn,10),I(tl,8),I(Uo,8))},e.\u0275dir=B({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[De([tV]),le,Nt]}),t})(),Xl=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})();const rV={provide:gn,useExisting:fe(()=>bh),multi:!0};let Hw=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})(),oV=(()=>{var e;class t{constructor(){this._accessors=[]}add(n,o){this._accessors.push([n,o])}remove(n){for(let o=this._accessors.length-1;o>=0;--o)if(this._accessors[o][1]===n)return void this._accessors.splice(o,1)}select(n){this._accessors.forEach(o=>{this._isSameGroup(o,n)&&o[1]!==n&&o[1].fireUncheck(n.value)})}_isSameGroup(n,o){return!!n[0].control&&n[0]._parent===o._control._parent&&n[1].name===o.name}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:Hw}),t})(),bh=(()=>{var e;class t extends Sr{constructor(n,o,i,s){super(n,o),this._registry=i,this._injector=s,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=A(Uo,{optional:!0})??ql}ngOnInit(){this._control=this._injector.get(nr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(n){this._state=n===this.value,this.setProperty("checked",this._state)}registerOnChange(n){this._fn=n,this.onChange=()=>{n(this.value),this._registry.select(this)}}setDisabledState(n){(this.setDisabledStateFired||n||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",n),this.setDisabledStateFired=!0}fireUncheck(n){this.writeValue(n)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt),I(oV),I(wt))},e.\u0275dir=B({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(n,o){1&n&&R("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[De([rV]),le]}),t})();const dV={provide:gn,useExisting:fe(()=>Jl),multi:!0};function qw(e,t){return null==e?`${t}`:(t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}let Jl=(()=>{var e;class t extends Sr{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){this.value=n;const i=qw(this._getOptionId(n),n);this.setProperty("value",i)}registerOnChange(n){this.onChange=o=>{this.value=this._getOptionValue(o),n(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(n){for(const o of this._optionMap.keys())if(this._compareWith(this._optionMap.get(o),n))return o;return null}_getOptionValue(n){const o=function fV(e){return e.split(":")[0]}(n);return this._optionMap.has(o)?this._optionMap.get(o):n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(n,o){1&n&&R("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[De([dV]),le]}),t})(),Ww=(()=>{var e;class t{constructor(n,o,i){this._element=n,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption())}set ngValue(n){null!=this._select&&(this._select._optionMap.set(this.id,n),this._setElementValue(qw(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._setElementValue(n),this._select&&this._select.writeValue(this._select.value)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bt),I(Mn),I(Jl,9))},e.\u0275dir=B({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();const hV={provide:gn,useExisting:fe(()=>Ih),multi:!0};function Zw(e,t){return null==e?`${t}`:("string"==typeof t&&(t=`'${t}'`),t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}let Ih=(()=>{var e;class t extends Sr{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){let o;if(this.value=n,Array.isArray(n)){const i=n.map(s=>this._getOptionId(s));o=(s,a)=>{s._setSelected(i.indexOf(a.toString())>-1)}}else o=(i,s)=>{i._setSelected(!1)};this._optionMap.forEach(o)}registerOnChange(n){this.onChange=o=>{const i=[],s=o.selectedOptions;if(void 0!==s){const a=s;for(let l=0;l{var e;class t{constructor(n,o,i){this._element=n,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption(this))}set ngValue(n){null!=this._select&&(this._value=n,this._setElementValue(Zw(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._select?(this._value=n,this._setElementValue(Zw(this.id,n)),this._select.writeValue(this._select.value)):this._setElementValue(n)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}_setSelected(n){this._renderer.setProperty(this._element.nativeElement,"selected",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bt),I(Mn),I(Ih,9))},e.\u0275dir=B({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();let Tr=(()=>{var e;class t{constructor(){this._validator=jl}ngOnChanges(n){if(this.inputName in n){const o=this.normalizeInput(n[this.inputName].currentValue);this._enabled=this.enabled(o),this._validator=this._enabled?this.createValidator(o):jl,this._onChange&&this._onChange()}}validate(n){return this._validator(n)}registerOnValidatorChange(n){this._onChange=n}enabled(n){return null!=n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,features:[Nt]}),t})();const vV={provide:Ye,useExisting:fe(()=>$o),multi:!0};let $o=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=So,this.createValidator=n=>sw}enabled(n){return n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(n,o){2&n&&zt("required",o._enabled?"":null)},inputs:{required:"required"},features:[De([vV]),le]}),t})();const _V={provide:Ye,useExisting:fe(()=>Kl),multi:!0};let Kl=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=So,this.createValidator=n=>lw}enabled(n){return n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[De([_V]),le]}),t})();const DV={provide:Ye,useExisting:fe(()=>Sh),multi:!0};let Sh=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=n=>function Qw(e){return"number"==typeof e?e:parseInt(e,10)}(n),this.createValidator=n=>function uw(e){return t=>function rw(e){return null!=e&&"number"==typeof e.length}(t.value)&&t.value.length>e?{maxlength:{requiredLength:e,actualLength:t.value.length}}:null}(n)}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(n,o){2&n&&zt("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[De([DV]),le]}),t})();const bV={provide:Ye,useExisting:fe(()=>Th),multi:!0};let Th=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=n=>n,this.createValidator=n=>function dw(e){if(!e)return jl;let t,r;return"string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),t=new RegExp(r)):(r=e.toString(),t=e),n=>{if(er(n.value))return null;const o=n.value;return t.test(o)?null:{pattern:{requiredPattern:r,actualValue:o}}}}(n)}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(n,o){2&n&&zt("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[De([bV]),le]}),t})(),wV=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[Hw]}),t})(),ec=(()=>{var e;class t{static withConfig(n){return{ngModule:t,providers:[{provide:Uo,useValue:n.callSetDisabledState??ql}]}}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[wV]}),t})();class tc{}class nc{}class mn{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?"string"==typeof t?this.lazyInit=()=>{this.headers=new Map,t.split("\n").forEach(r=>{const n=r.indexOf(":");if(n>0){const o=r.slice(0,n),i=o.toLowerCase(),s=r.slice(n+1).trim();this.maybeSetNormalizedName(o,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:typeof Headers<"u"&&t instanceof Headers?(this.headers=new Map,t.forEach((r,n)=>{this.setHeaderEntries(n,r)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(t).forEach(([r,n])=>{this.setHeaderEntries(r,n)})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const r=this.headers.get(t.toLowerCase());return r&&r.length>0?r[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,r){return this.clone({name:t,value:r,op:"a"})}set(t,r){return this.clone({name:t,value:r,op:"s"})}delete(t,r){return this.clone({name:t,value:r,op:"d"})}maybeSetNormalizedName(t,r){this.normalizedNames.has(r)||this.normalizedNames.set(r,t)}init(){this.lazyInit&&(this.lazyInit instanceof mn?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(r=>{this.headers.set(r,t.headers.get(r)),this.normalizedNames.set(r,t.normalizedNames.get(r))})}clone(t){const r=new mn;return r.lazyInit=this.lazyInit&&this.lazyInit instanceof mn?this.lazyInit:this,r.lazyUpdate=(this.lazyUpdate||[]).concat([t]),r}applyUpdate(t){const r=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,r);const o=("a"===t.op?this.headers.get(r):void 0)||[];o.push(...n),this.headers.set(r,o);break;case"d":const i=t.value;if(i){let s=this.headers.get(r);if(!s)return;s=s.filter(a=>-1===i.indexOf(a)),0===s.length?(this.headers.delete(r),this.normalizedNames.delete(r)):this.headers.set(r,s)}else this.headers.delete(r),this.normalizedNames.delete(r)}}setHeaderEntries(t,r){const n=(Array.isArray(r)?r:[r]).map(i=>i.toString()),o=t.toLowerCase();this.headers.set(o,n),this.maybeSetNormalizedName(t,o)}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(r=>t(this.normalizedNames.get(r),this.headers.get(r)))}}class MV{encodeKey(t){return nE(t)}encodeValue(t){return nE(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const SV=/%(\d[a-f0-9])/gi,TV={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function nE(e){return encodeURIComponent(e).replace(SV,(t,r)=>TV[r]??t)}function rc(e){return`${e}`}class rr{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new MV,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function IV(e,t){const r=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(o=>{const i=o.indexOf("="),[s,a]=-1==i?[t.decodeKey(o),""]:[t.decodeKey(o.slice(0,i)),t.decodeValue(o.slice(i+1))],l=r.get(s)||[];l.push(a),r.set(s,l)}),r}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(r=>{const n=t.fromObject[r],o=Array.isArray(n)?n.map(rc):[rc(n)];this.map.set(r,o)})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const r=this.map.get(t);return r?r[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,r){return this.clone({param:t,value:r,op:"a"})}appendAll(t){const r=[];return Object.keys(t).forEach(n=>{const o=t[n];Array.isArray(o)?o.forEach(i=>{r.push({param:n,value:i,op:"a"})}):r.push({param:n,value:o,op:"a"})}),this.clone(r)}set(t,r){return this.clone({param:t,value:r,op:"s"})}delete(t,r){return this.clone({param:t,value:r,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const r=this.encoder.encodeKey(t);return this.map.get(t).map(n=>r+"="+this.encoder.encodeValue(n)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const r=new rr({encoder:this.encoder});return r.cloneFrom=this.cloneFrom||this,r.updates=(this.updates||[]).concat(t),r}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const r=("a"===t.op?this.map.get(t.param):void 0)||[];r.push(rc(t.value)),this.map.set(t.param,r);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let n=this.map.get(t.param)||[];const o=n.indexOf(rc(t.value));-1!==o&&n.splice(o,1),n.length>0?this.map.set(t.param,n):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}class AV{constructor(){this.map=new Map}set(t,r){return this.map.set(t,r),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}has(t){return this.map.has(t)}keys(){return this.map.keys()}}function rE(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer}function oE(e){return typeof Blob<"u"&&e instanceof Blob}function iE(e){return typeof FormData<"u"&&e instanceof FormData}class Ds{constructor(t,r,n,o){let i;if(this.url=r,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function xV(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==n?n:null,i=o):i=n,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.context&&(this.context=i.context),i.params&&(this.params=i.params)),this.headers||(this.headers=new mn),this.context||(this.context=new AV),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=r;else{const a=r.indexOf("?");this.urlWithParams=r+(-1===a?"?":ad.set(g,t.setHeaders[g]),l)),t.setParams&&(c=Object.keys(t.setParams).reduce((d,g)=>d.set(g,t.setParams[g]),c)),new Ds(r,n,i,{params:c,headers:l,context:u,reportProgress:a,responseType:o,withCredentials:s})}}var Go=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}(Go||{});class Ah{constructor(t,r=200,n="OK"){this.headers=t.headers||new mn,this.status=void 0!==t.status?t.status:r,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class xh extends Ah{constructor(t={}){super(t),this.type=Go.ResponseHeader}clone(t={}){return new xh({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class zo extends Ah{constructor(t={}){super(t),this.type=Go.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new zo({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class sE extends Ah{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function Rh(e,t){return{body:t,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials}}let Nh=(()=>{var e;class t{constructor(n){this.handler=n}request(n,o,i={}){let s;if(n instanceof Ds)s=n;else{let c,u;c=i.headers instanceof mn?i.headers:new mn(i.headers),i.params&&(u=i.params instanceof rr?i.params:new rr({fromObject:i.params})),s=new Ds(n,o,void 0!==i.body?i.body:null,{headers:c,context:i.context,params:u,reportProgress:i.reportProgress,responseType:i.responseType||"json",withCredentials:i.withCredentials})}const a=V(s).pipe(Ao(c=>this.handler.handle(c)));if(n instanceof Ds||"events"===i.observe)return a;const l=a.pipe(Xt(c=>c instanceof zo));switch(i.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return l.pipe(ee(c=>{if(null!==c.body&&!(c.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return c.body}));case"blob":return l.pipe(ee(c=>{if(null!==c.body&&!(c.body instanceof Blob))throw new Error("Response is not a Blob.");return c.body}));case"text":return l.pipe(ee(c=>{if(null!==c.body&&"string"!=typeof c.body)throw new Error("Response is not a string.");return c.body}));default:return l.pipe(ee(c=>c.body))}case"response":return l;default:throw new Error(`Unreachable: unhandled observe type ${i.observe}}`)}}delete(n,o={}){return this.request("DELETE",n,o)}get(n,o={}){return this.request("GET",n,o)}head(n,o={}){return this.request("HEAD",n,o)}jsonp(n,o){return this.request("JSONP",n,{params:(new rr).append(o,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(n,o={}){return this.request("OPTIONS",n,o)}patch(n,o,i={}){return this.request("PATCH",n,Rh(i,o))}post(n,o,i={}){return this.request("POST",n,Rh(i,o))}put(n,o,i={}){return this.request("PUT",n,Rh(i,o))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(tc))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function cE(e,t){return t(e)}function OV(e,t){return(r,n)=>t.intercept(r,{handle:o=>e(o,n)})}const kV=new x(""),bs=new x(""),uE=new x("");function FV(){let e=null;return(t,r)=>{null===e&&(e=(A(kV,{optional:!0})??[]).reduceRight(OV,cE));const n=A(Xa),o=n.add();return e(t,r).pipe(Ki(()=>n.remove(o)))}}let dE=(()=>{var e;class t extends tc{constructor(n,o){super(),this.backend=n,this.injector=o,this.chain=null,this.pendingTasks=A(Xa)}handle(n){if(null===this.chain){const i=Array.from(new Set([...this.injector.get(bs),...this.injector.get(uE,[])]));this.chain=i.reduceRight((s,a)=>function PV(e,t,r){return(n,o)=>r.runInContext(()=>t(n,i=>e(i,o)))}(s,a,this.injector),cE)}const o=this.pendingTasks.add();return this.chain(n,i=>this.backend.handle(i)).pipe(Ki(()=>this.pendingTasks.remove(o)))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(nc),F(Dt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const HV=/^\)\]\}',?\n/;let hE=(()=>{var e;class t{constructor(n){this.xhrFactory=n}handle(n){if("JSONP"===n.method)throw new S(-2800,!1);const o=this.xhrFactory;return(o.\u0275loadImpl?Ne(o.\u0275loadImpl()):V(null)).pipe(Ht(()=>new Ie(s=>{const a=o.build();if(a.open(n.method,n.urlWithParams),n.withCredentials&&(a.withCredentials=!0),n.headers.forEach((b,E)=>a.setRequestHeader(b,E.join(","))),n.headers.has("Accept")||a.setRequestHeader("Accept","application/json, text/plain, */*"),!n.headers.has("Content-Type")){const b=n.detectContentTypeHeader();null!==b&&a.setRequestHeader("Content-Type",b)}if(n.responseType){const b=n.responseType.toLowerCase();a.responseType="json"!==b?b:"text"}const l=n.serializeBody();let c=null;const u=()=>{if(null!==c)return c;const b=a.statusText||"OK",E=new mn(a.getAllResponseHeaders()),D=function UV(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(a)||n.url;return c=new xh({headers:E,status:a.status,statusText:b,url:D}),c},d=()=>{let{headers:b,status:E,statusText:D,url:O}=u(),N=null;204!==E&&(N=typeof a.response>"u"?a.responseText:a.response),0===E&&(E=N?200:0);let Z=E>=200&&E<300;if("json"===n.responseType&&"string"==typeof N){const Ge=N;N=N.replace(HV,"");try{N=""!==N?JSON.parse(N):null}catch(Tt){N=Ge,Z&&(Z=!1,N={error:Tt,text:N})}}Z?(s.next(new zo({body:N,headers:b,status:E,statusText:D,url:O||void 0})),s.complete()):s.error(new sE({error:N,headers:b,status:E,statusText:D,url:O||void 0}))},g=b=>{const{url:E}=u(),D=new sE({error:b,status:a.status||0,statusText:a.statusText||"Unknown Error",url:E||void 0});s.error(D)};let m=!1;const y=b=>{m||(s.next(u()),m=!0);let E={type:Go.DownloadProgress,loaded:b.loaded};b.lengthComputable&&(E.total=b.total),"text"===n.responseType&&a.responseText&&(E.partialText=a.responseText),s.next(E)},C=b=>{let E={type:Go.UploadProgress,loaded:b.loaded};b.lengthComputable&&(E.total=b.total),s.next(E)};return a.addEventListener("load",d),a.addEventListener("error",g),a.addEventListener("timeout",g),a.addEventListener("abort",g),n.reportProgress&&(a.addEventListener("progress",y),null!==l&&a.upload&&a.upload.addEventListener("progress",C)),a.send(l),s.next({type:Go.Sent}),()=>{a.removeEventListener("error",g),a.removeEventListener("abort",g),a.removeEventListener("load",d),a.removeEventListener("timeout",g),n.reportProgress&&(a.removeEventListener("progress",y),null!==l&&a.upload&&a.upload.removeEventListener("progress",C)),a.readyState!==a.DONE&&a.abort()}})))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(bD))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Oh=new x("XSRF_ENABLED"),pE=new x("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),gE=new x("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class mE{}let GV=(()=>{var e;class t{constructor(n,o,i){this.doc=n,this.platform=o,this.cookieName=i,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const n=this.doc.cookie||"";return n!==this.lastCookieString&&(this.parseCount++,this.lastToken=hD(n,this.cookieName),this.lastCookieString=n),this.lastToken}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt),F(gr),F(pE))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function zV(e,t){const r=e.url.toLowerCase();if(!A(Oh)||"GET"===e.method||"HEAD"===e.method||r.startsWith("http://")||r.startsWith("https://"))return t(e);const n=A(mE).getToken(),o=A(gE);return null!=n&&!e.headers.has(o)&&(e=e.clone({headers:e.headers.set(o,n)})),t(e)}var or=function(e){return e[e.Interceptors=0]="Interceptors",e[e.LegacyInterceptors=1]="LegacyInterceptors",e[e.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",e[e.NoXsrfProtection=3]="NoXsrfProtection",e[e.JsonpSupport=4]="JsonpSupport",e[e.RequestsMadeViaParent=5]="RequestsMadeViaParent",e[e.Fetch=6]="Fetch",e}(or||{});const vE=new x("LEGACY_INTERCEPTOR_FN");class KV{constructor(){this.name="",this.email="",this.message=""}}let yE=(()=>{var e;class t{constructor(n){this.httpClient=n}postContactForm(n){return this.httpClient.post(`${ve_apiBaseUrl}contact`,n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Nh))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function e3(e,t){if(1&e){const r=Ae();h(0,"form",5,6),R("ngSubmit",function(){return ne(r),re(k().submit())}),h(2,"div",7)(3,"label",8),f(4,"Name "),h(5,"span",9),f(6,"*"),p()(),h(7,"input",10),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.name=o)}),p()(),h(8,"div",7)(9,"label",11),f(10,"Email address "),h(11,"span",9),f(12,"*"),p()(),h(13,"input",12),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.email=o)}),p()(),h(14,"div",7)(15,"label",13),f(16,"Message "),h(17,"span",9),f(18,"*"),p()(),h(19,"textarea",14),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.message=o)}),p()(),h(20,"button",15),f(21,"Submit"),p()()}if(2&e){const r=_d(1),n=k();_(7),w("ngModel",n.contactViewModel.name),_(6),w("ngModel",n.contactViewModel.email),_(6),w("ngModel",n.contactViewModel.message),_(1),w("disabled",!r.valid||n.enableFormCountDown>0)}}function t3(e,t){1&e&&(h(0,"p"),f(1,"Thanks for your message."),p())}function n3(e,t){1&e&&(h(0,"p",16),f(1,"Something went wrong. Please try again later."),p())}let r3=(()=>{var e;class t{constructor(n){this.contactService=n,this.contactViewModel=new KV,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,0===this.enableFormCountDown&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:n=>{console.log("Submitted form"),this.success=!0},error:n=>{console.error(n),this.error=!0},complete:()=>console.info("complete")})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(yE))},e.\u0275cmp=vt({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[Mt],decls:6,vars:3,consts:[[1,"container"],[1,"mb-4"],["method","post",3,"ngSubmit",4,"ngIf"],[4,"ngIf"],["class","text-danger",4,"ngIf"],["method","post",3,"ngSubmit"],["contactForm","ngForm"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"text-danger"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Contact"),p(),P(3,e3,22,4,"form",2),P(4,t3,2,0,"p",3),P(5,n3,2,0,"p",4),p()),2&n&&(_(3),w("ngIf",!o.success&&!o.error),_(1),w("ngIf",o.success),_(1),w("ngIf",o.error))},dependencies:[vl,ec,Xl,jo,Ul,Bl,$o,Kl,Cs,Bo]}),t})();const _E=function(){return["/pro"]};let o3=(()=>{var e;class t{scrollToAnchor(n){return document.querySelector(n)?.scrollIntoView(!0),!1}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-features-component"]],standalone:!0,features:[Mt],decls:131,vars:4,consts:[[1,"container"],[1,"mb-4"],["id","coveragequota"],[1,"pro-text"],["href","https://en.wikipedia.org/wiki/Code_coverage","target","_blank"],[1,"fa-solid","fa-arrow-up-right-from-square"],[3,"routerLink"],[1,"pro-button","pro-button-tiny"],["loading","lazy","srcset","resources/features/quota@1x.webp 1x, resources/features/quota@2x.webp 2x","src","resources/features/quota1x.webp","alt","Coverage quotas",1,"img-fluid"],["id","coveragehistory",1,"mt-5"],["loading","lazy","srcset","resources/features/history@1x.webp 1x, resources/features/history@2x.webp 2x","src","resources/features/history@1x.webp","alt","Coverage history",1,"img-fluid"],["id","summary",1,"mt-5"],["loading","lazy","srcset","resources/features/summary@1x.webp 1x, resources/features/summary@2x.webp 2x","src","resources/features/summary.webp","alt","Summary table / Overview",1,"img-fluid"],["id","details",1,"mt-5"],["loading","lazy","srcset","resources/features/details@1x.webp 1x, resources/features/details@2x.webp 2x","src","resources/features/details.webp","alt","Details",1,"img-fluid"],["id","metrics",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ#which-coverage-tool-supports-which-features-in-the-html-report","target","_blank"],["href","",3,"click"],["loading","lazy","srcset","resources/features/metrics_details@1x.webp 1x, resources/features/metrics_details@2x.webp 2x","src","resources/features/metrics_details.webp","alt","Metrics - Details",1,"img-fluid"],["loading","lazy","srcset","resources/features/metrics_summary@1x.webp 1x, resources/features/metrics_summary@2x.webp 2x","src","resources/features/metrics_summary.webp","alt","Metrics - Summary",1,"img-fluid"],["id","riskhotspots",1,"mt-5"],["href","https://en.wikipedia.org/wiki/Cyclomatic_complexity","target","_blank"],["href","https://modess.io/npath-complexity-cyclomatic-complexity-explained","target","_blank"],["href","https://testing.googleblog.com/2011/02/this-code-is-crap.html","target","_blank"],["loading","lazy","srcset","resources/features/riskhotspots@1x.webp 1x, resources/features/riskhotspots@2x.webp 2x","src","resources/features/riskhotspots.webp","alt","Risk Hotspots",1,"img-fluid"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Features"),p(),h(3,"h2",2),f(4,"Coverage quotas"),p(),h(5,"p"),f(6," The overiew cards provide a quick "),h(7,"span",3),f(8,"overview"),p(),f(9," of your coverage quotas."),v(10,"br"),f(11," You can use them to get a glimpse into the different "),h(12,"a",4),f(13,"coverage metrics"),p(),f(14,"\xa0"),h(15,"a",4),v(16,"i",5),p(),f(17,": "),p(),h(18,"ul")(19,"li"),f(20,"Line coverage"),p(),h(21,"li"),f(22,"Branch coverage"),p(),h(23,"li"),f(24,"Method coverage "),h(25,"a",6)(26,"span",7),f(27,"PRO"),p()()()(),v(28,"img",8)(29,"br"),h(30,"h2",9),f(31,"Coverage history"),p(),h(32,"p"),f(33," The history chart helps you to understand how your coverage quotas are "),h(34,"span",3),f(35,"evolving over time"),p(),f(36,". "),p(),v(37,"img",10)(38,"br"),h(39,"h2",11),f(40,"Summary table / Overview"),p(),h(41,"p"),f(42," The summary table helps you to identify classes with "),h(43,"span",3),f(44,"low test coverage"),p(),f(45,"."),v(46,"br"),f(47," The table offers various "),h(48,"span",3),f(49,"filter and sorting"),p(),f(50," options for quick navigation. "),p(),v(51,"img",12)(52,"br"),h(53,"h2",13),f(54,"Details page"),p(),h(55,"p"),f(56," The details page visualizes your "),h(57,"span",3),f(58,"line and branch coverage"),p(),f(59,". "),p(),h(60,"ul")(61,"li"),f(62,"Colors indicate the coverage status of each line."),p(),h(63,"li"),f(64,"Branch indicators help you to identity uncovered conditions."),p()(),v(65,"img",14)(66,"br"),h(67,"h2",15),f(68,"Metrics"),p(),h(69,"p"),f(70," Depending on your "),h(71,"a",16),f(72,"coverage tool"),p(),f(73,", metrics are provided to get further insigths in your "),h(74,"span",3),f(75,"code quality"),p(),f(76,". "),p(),h(77,"ul")(78,"li"),f(79,"The "),h(80,"a",17),R("click",function(){return o.scrollToAnchor("#details")}),f(81,"details page"),p(),f(82," contains information about the metrics of all methods of a class."),p(),h(83,"li"),f(84,"The "),h(85,"a",17),R("click",function(){return o.scrollToAnchor("#summary")}),f(86,"summary table"),p(),f(87," shows the lowest metrics of all methods of a class "),h(88,"a",6)(89,"span",7),f(90,"PRO"),p()()()(),h(91,"b"),f(92,"Details page"),p(),v(93,"br")(94,"img",18)(95,"br")(96,"br"),h(97,"b"),f(98,"Summary table"),p(),v(99,"br")(100,"img",19)(101,"br"),h(102,"h2",20),f(103,"Risk Hotspots"),p(),h(104,"p"),f(105," Based on the "),h(106,"a",17),R("click",function(){return o.scrollToAnchor("#metrics")}),f(107,"metrics"),p(),f(108," you get a list of potential risk hotspots."),v(109,"br"),f(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),p(),h(111,"ul")(112,"li")(113,"a",21),f(114,"Cyclomatic complexity"),p(),f(115,"\xa0"),h(116,"a",21),v(117,"i",5),p()(),h(118,"li")(119,"a",22),f(120,"NPath complexity"),p(),f(121,"\xa0"),h(122,"a",22),v(123,"i",5),p()(),h(124,"li")(125,"a",23),f(126,"Crap score"),p(),f(127,"\xa0"),h(128,"a",23),v(129,"i",5),p()()(),v(130,"img",24),p()),2&n&&(_(25),w("routerLink",K(2,_E)),_(63),w("routerLink",K(3,_E)))},dependencies:[pn]}),t})();const Lt={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.2.0"},i3=function(){return["/usage"]};let s3=(()=>{var e;class t{constructor(){this.versions=Lt}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[Mt],decls:72,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["href","https://github.com/coverlet-coverage/coverlet"],["href","https://github.com/SteveGilham/altcover"],[1,"text-dark","bg-light","p-2","border"],["id","java",1,"mt-5"],["href","https://github.com/jacoco/jacoco"],["id","nodejs",1,"mt-5"],["href","https://github.com/istanbuljs/nyc"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Get started"),p(),h(3,"h2"),f(4,"General"),p(),h(5,"p"),f(6,"In general you need a tool that instruments your test code and collects coverage information."),v(7,"br"),f(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),v(9,"br"),h(10,"em"),f(11,"ReportGenerator"),p(),f(12," uses this file and generates a report in HTML format (other formats are available)."),p(),h(13,"p"),f(14,"Use the online "),h(15,"a",2),f(16,"configuration tool"),p(),f(17," to get started quickly."),p(),h(18,"h2",3),f(19,".NET"),p(),h(20,"p"),f(21,"For .NET you can use "),h(22,"a",4),f(23,"coverlet"),p(),f(24," or "),h(25,"a",5),f(26,"altcover"),p(),f(27," for instrumenting your test code."),p(),h(28,"p"),f(29,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),p(),h(30,"p")(31,"strong"),f(32,"Add dependencies to your "),h(33,"code"),f(34,"*.csproj"),p(),f(35," file:"),p()(),h(36,"pre",6),f(37),p(),h(38,"p")(39,"strong"),f(40,"Execute tests and create coverage report"),p()(),h(41,"pre",6),f(42),p(),h(43,"h2",7),f(44,"Java"),p(),h(45,"p"),f(46,"For Java you can use "),h(47,"a",8),f(48,"JaCoCo"),p(),f(49," for instrumenting your test code.\nAfter adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report."),p(),h(50,"p")(51,"strong"),f(52,"Add dependencies to your "),h(53,"code"),f(54,"pom.xml"),p(),f(55," file:"),p()(),h(56,"pre",6),f(57,"\n \n \n \n org.jacoco\n jacoco-maven-plugin\n 0.8.6\n \n \n \n prepare-agent\n \n \n \n report\n prepare-package\n \n report\n \n \n \n \n \n \n \n \n \n org.jacoco\n jacoco-maven-plugin\n \n \n \n report\n \n \n \n \n \n \n\n"),p(),h(58,"p")(59,"strong"),f(60,"Execute tests and create coverage report"),p()(),h(61,"pre",6),f(62),p(),h(63,"h2",9),f(64,"NodeJS"),p(),h(65,"p"),f(66,"For NodeJS you can use "),h(67,"a",10),f(68,"Istanbul"),p(),f(69," for instrumenting your test code.\nAfter installing Istanbul, you can execute your tests and generate the coverage report."),p(),h(70,"pre",6),f(71),p()()),2&n&&(_(15),w("routerLink",K(5,i3)),_(22),xn('\n \n runtime; build; native; contentfiles; analyzers; buildtransitive\n all\n \n \n \n \n all\n runtime; build; native; contentfiles; analyzers\n \n\n'),_(5),xn('dotnet test --collect:"XPlat Code Coverage"\n"%UserProfile%\\.nuget\\packages\\reportgenerator\\',o.versions.version,'\\tools\\net6.0\\ReportGenerator.exe" -reports:*\\TestResults\\*\\coverage.cobertura.xml -targetdir:coveragereport\n'),_(20),xn("mvn test jacoco:report\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:target\\site\\jacoco\\jacoco.xml -targetdir:coveragereport -sourcedirs:src\\main\\java\n"),_(9),xn("npm i nyc --save-dev\nnyc --reporter=coberatura mocha\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:coverage/cobertura-coverage.xml -targetdir:coveragereport\n"))},dependencies:[pn]}),t})(),CE=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-testimonials"]],standalone:!0,features:[Mt],decls:30,vars:0,consts:[[1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"container"],[1,"text-center"],[1,"row","mt-5"],[1,"col","text-center"],[1,"fa-brands","fa-microsoft","h1","text-secondary"],["href","https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/code-coverage.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-google","h1","text-secondary"],["href","https://github.com/GoogleCloudPlatform/iam-windows-authenticator","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-aws","h1","text-secondary"],["href","https://github.com/aws/aws-encryption-sdk-dafny/blob/mainline/aws-encryption-sdk-net/README.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"col","text-center","d-none","d-lg-block"],[1,"fa-solid","fa-heart","h1","text-secondary"],["href","https://github.com/danielpalme/ReportGenerator/network/dependents","target","_blank",1,"text-dark"],["href","https://www.nuget.org/packages?q=ReportGenerator+danielpalme","target","_blank",1,"btn","btn-outline-secondary"],[1,"fa-solid","fa-download"]],template:function(n,o){1&n&&(h(0,"section",0)(1,"div",1)(2,"h2",2),f(3,"Trusted by"),p(),h(4,"div",3)(5,"div",4),v(6,"i",5)(7,"br"),h(8,"a",6),f(9,".NET Runtime"),p()(),h(10,"div",4),v(11,"i",7)(12,"br"),h(13,"a",8),f(14,"Google Cloud"),p()(),h(15,"div",4),v(16,"i",9)(17,"br"),h(18,"a",10),f(19,"AWS Encryption SDK"),p()(),h(20,"div",11),v(21,"i",12)(22,"br"),h(23,"a",13),f(24,"Many more"),p()()(),h(25,"div",3)(26,"div",4)(27,"a",14),v(28,"i",15),f(29," Over 50 million downloads on Nuget"),p()()()()())},encapsulation:2}),t})();const a3=function(){return["/pro"]},l3=function(){return["/usage"]},c3=function(){return["/getstarted"]},u3=function(){return["/features"]};let d3=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-home"]],standalone:!0,features:[Mt],decls:114,vars:8,consts:[[1,"container"],[1,"row"],[1,"col-4","col-md-3"],["src","resources/logo.svg","alt","Logo ReportGenerator",1,"img-fluid"],[1,"col-xs-12","col-md-9","ps-4"],[1,"mt-5"],[1,"line","btn-primary"],[1,"mt-4","h5"],[1,"pro-text"],["href","resources/reports/Html/index.html","target","_blank",1,"btn","btn-primary","me-2","mb-2"],[1,"fa-solid","fa-eye"],[1,"row","mt-5"],[1,"col-sm-12","col-md-4"],[1,"icon"],[1,"fa-solid","fa-scale-balanced"],[1,"h5","ms-3","mt-3"],[1,"mt-3"],[3,"routerLink"],[1,"col-sm-12","col-md-4","mt-4","mt-md-0"],[1,"fa-solid","fa-lightbulb"],[1,"fa-solid","fa-plug"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col"],[1,"btn","btn-primary","me-2","mb-2",3,"routerLink"],[1,"fa-solid","fa-wrench"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank",1,"btn","btn-outline-dark","mb-2"],[1,"fa-brands","fa-github"],[1,"container-fluid","mt-5","pt-5","pb-5"],["href","resources/reports/Html/index.html","target","_blank"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"col-sm-12","col-md-6","pb-2"],["href","resources/screenshot1@2x.webp"],["loading","lazy","srcset","resources/screenshot1.webp 1x, resources/screenshot1@2x.webp 2x","src","resources/screenshot1.webp","alt","Screenshot",1,"img-fluid"],[1,"col-sm-12","col-md-6"],["href","resources/screenshot2@2x.webp"],["loading","lazy","srcset","resources/screenshot2.webp 1x, resources/screenshot2@2x.webp 2x","src","resources/screenshot2.webp","alt","Screenshot",1,"img-fluid"]],template:function(n,o){1&n&&(h(0,"section",0)(1,"div",1)(2,"div",2),v(3,"img",3),p(),h(4,"div",4)(5,"h1"),f(6,"ReportGenerator"),p(),h(7,"h2",5),f(8,"Powerful code coverage visualization"),p(),h(9,"div",6),f(10,"\xa0"),p(),h(11,"div",7)(12,"p")(13,"i"),f(14,"ReportGenerator"),p(),f(15," converts "),h(16,"span",8),f(17,"coverage reports"),p(),f(18," generated by coverlet, OpenCover, dotCover, Visual Studio, NCover, Cobertura, JaCoCo, Clover, gcov or lcov into "),h(19,"span",8),f(20,"human readable reports in various formats"),p(),f(21,"."),p(),h(22,"p"),f(23,"The reports show the "),h(24,"span",8),f(25,"coverage quotas"),p(),f(26," and also visualize which lines of your source code have been covered."),p(),h(27,"p")(28,"a",9),v(29,"i",10),f(30," Browse example report"),p()()()()(),h(31,"div",11)(32,"div",12)(33,"div",13),v(34,"i",14),p(),h(35,"span",15),f(36,"Open source"),p(),h(37,"p",16)(38,"i"),f(39,"ReportGenerator"),p(),f(40," is open source under the permissive Apache License."),p(),h(41,"p"),f(42,"It's free to use."),v(43,"br"),f(44,"The "),h(45,"a",17),f(46,"PRO"),p(),f(47," version offers additional features."),p()(),h(48,"div",18)(49,"div",13),v(50,"i",19),p(),h(51,"span",15),f(52,"Easy to use"),p(),h(53,"p",16)(54,"i"),f(55,"ReportGenerator"),p(),f(56," is a command line tool which only requires a "),h(57,"a",17),f(58,"few parameters"),p(),f(59,"."),p(),h(60,"p"),f(61,"Integration into your build pipeline will only take a couple of minutes."),p()(),h(62,"div",18)(63,"div",13),v(64,"i",20),p(),h(65,"span",15),f(66,"Integration"),p(),h(67,"p",16)(68,"i"),f(69,"ReportGenerator"),p(),f(70," works on Windows, Linux and macOS."),p(),h(71,"p"),f(72,"Support for "),h(73,"a",21),f(74,"GitHub actions"),p(),f(75," and "),h(76,"a",22),f(77,"Azure DevOps"),p(),f(78," is available."),p()()(),h(79,"div",11)(80,"div",23)(81,"a",24),v(82,"i",25),f(83," Learn how to use"),p(),h(84,"a",26),v(85,"i",27),f(86," GitHub"),p()()()(),v(87,"app-testimonials"),h(88,"section",28)(89,"div",0)(90,"h2"),f(91,"Screenshots"),p(),h(92,"p"),f(93,"The screenshots show two snippets of the generated reports."),p(),h(94,"p"),f(95," Have a look the "),h(96,"a",17),f(97,"features page"),p(),f(98," to explore the elements in a coverage report or "),h(99,"a",29),f(100,"browse the example report"),p(),f(101,". "),v(102,"br"),f(103," You can also download "),h(104,"a",30),f(105,"sample reports"),p(),f(106," of all supported output formats."),p(),h(107,"div",1)(108,"div",31)(109,"a",32),v(110,"img",33),p()(),h(111,"div",34)(112,"a",35),v(113,"img",36),p()()()()()),2&n&&(_(45),w("routerLink",K(4,a3)),_(12),w("routerLink",K(5,l3)),_(24),w("routerLink",K(6,c3)),_(15),w("routerLink",K(7,u3)))},dependencies:[pn,CE],styles:[".h5[_ngcontent-%COMP%]{font-weight:300}section[_ngcontent-%COMP%]:first-of-type{padding-top:120px;min-height:calc(100vh - 171px)}.icon[_ngcontent-%COMP%]{background-color:#2e89df;background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);height:50px;width:50px;border-radius:8px;text-align:center;color:#fff;line-height:50px;font-size:1.5rem;display:inline-block}@media (max-width: 767px){section[_ngcontent-%COMP%]:first-of-type{padding-top:40px}}"]}),t})(),f3=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-not-found"]],standalone:!0,features:[Mt],decls:5,vars:0,consts:[[1,"container"],[1,"mb-4"],[1,"fa-solid","fa-triangle-exclamation","fs-1","me-4"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Not found"),p(),v(3,"i",2),f(4," The requested page does not exist.\n"),p())}}),t})();class DE{constructor(){this.error=null,this.licenses=[]}}class h3{constructor(){this.error=null,this.isSponsor=!1,this.license=null}}let bE=(()=>{var e;class t{initCodeFlow(){const i=`https://github.com/login/oauth/authorize?response_type=code&client_id=ecab9484932b59a12fd4&state=${this.createAndSaveNonce()}&redirect_uri=${window.location.origin}/pro`;console.log("Redirecting to: "+i),location.href=i}validateStateAndExtractCode(){let n=location.href;const o=n.indexOf("?");o>-1&&(n=n.substring(o+1));const i=this.parseQueryString(n);return i.state&&i.code&&this.validateNonce(i.state)?i.code:null}createAndSaveNonce(){const n=this.createNonce();return typeof window.localStorage<"u"&&localStorage.setItem("nonce",n),n}validateNonce(n){let o;return typeof window.localStorage<"u"&&(o=localStorage.getItem("nonce"),localStorage.removeItem("nonce")),o&&0!==o.length?o===n||(console.error("Validating nonce failed. Values do not match.",o,n),!1):(console.error("Validating nonce failed. No saved nonce available.",o,n),!1)}createNonce(){const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let o=45,i="";const s=typeof self>"u"?null:self.crypto||self.msCrypto;if(s){let l=new Uint8Array(o);s.getRandomValues(l),l.map||(l.map=Array.prototype.map);const c=[];for(var a=0;a0&&(u=decodeURIComponent(l),d=decodeURIComponent(c),"/"===u.substring(0,1)&&(u=u.substring(1)),o[u]=d);return o}base64UrlEncode(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),wE=(()=>{var e;class t{constructor(n){this.httpClient=n}getLicense(n){return this.httpClient.get(`${ve_apiBaseUrl}reportgenerator/license?code=${encodeURIComponent(n)}`)}getTrialLicense(n){return this.httpClient.post(`${ve_apiBaseUrl}reportgenerator/triallicense`,n)}getPaddleLicense(n){return this.httpClient.post(`${ve_apiBaseUrl}reportgenerator/paddlelicense`,n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Nh))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),p3=(()=>{var e;class t{constructor(){this.isActive=!1,this.isActive=new Date-1)}}function G3(e,t){if(1&e&&(h(0,"div")(1,"label",110),f(2,"Thank you! Please save your license key persistently:"),p(),P(3,$3,6,3,"div",111),p()),2&e){const r=k(3);_(3),w("ngForOf",r.paddleLicense.licenses)}}function z3(e,t){if(1&e&&(h(0,"div",109),P(1,H3,8,3,"div",34),P(2,G3,4,1,"div",34),p()),2&e){const r=k(2);_(1),w("ngIf",r.paddleLicense.error),_(1),w("ngIf",!r.paddleLicense.error)}}function q3(e,t){if(1&e&&(h(0,"div",2),P(1,j3,6,0,"ng-container",34),P(2,z3,3,2,"div",107),p()),2&e){const r=k();_(1),w("ngIf",r.paddleLicenseRequested&&!r.paddleLicense),_(1),w("ngIf",r.paddleLicense)}}function W3(e,t){1&e&&(h(0,"p")(1,"i"),f(2,"ReportGenerator"),p(),f(3," subscription based licences are provided with a 30 day money back guarantee."),p())}const qo=function(){return["/features"]};let Z3=(()=>{var e;class t{get lifetimeLicense(){return this._lifetimeLicense}set lifetimeLicense(n){this._lifetimeLicense=n,this.lifetimeLicenseChangeTracked||(this.lifetimeLicenseChangeTracked=!0,this.trackingService.track("Licensetype changed"))}constructor(n,o,i){this.oauthService=n,this.licenseService=o,this.trackingService=i,this.paddleIndividualLicensePrice="US$49",this.paddleTeamLicensePrice="US$149",this.paddleEnterpriseLicensePrice="US$299",this.paddleIndividualLifetimeLicensePrice="US$79",this.paddleTeamLifetimeLicensePrice="US$249",this.paddleEnterpriseLifetimeLicensePrice="US$449",this.licenseRequested=!1,this.licenseCopied=!1,this.license=null,this.enablePaddle=!0,this.trialDisabled=!1,this.requestTrialData={name:"",email:""},this.paddleLicenseRequested=!1,this.paddleLicense=null,this.copiedPaddledLicenses=[],this.self=this,this.lifetimeLicenseChangeTracked=!1,this._lifetimeLicense=!1,window.paddleCheckoutComplete=s=>{this.paddleCheckoutComplete(s)},window.Paddle.Setup({vendor:144162}),window.Paddle.Product.Prices(762579,s=>{this.paddleIndividualLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(762580,s=>{this.paddleTeamLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(762581,s=>{this.paddleEnterpriseLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(833943,s=>{this.paddleIndividualLifetimeLicensePrice=s.price.gross}),window.Paddle.Product.Prices(833944,s=>{this.paddleTeamLifetimeLicensePrice=s.price.gross}),window.Paddle.Product.Prices(833945,s=>{this.paddleEnterpriseLifetimeLicensePrice=s.price.gross})}ngOnInit(){const n=this.oauthService.validateStateAndExtractCode();null!==n?(console.log("Code received",n),this.licenseRequested=!0,this.licenseService.getLicense(n).subscribe({next:o=>{console.log("Received license response"),this.license=o,this.scrollToGithub()},error:o=>{console.error(o),this.license=new h3,this.license.error="Unable to generate license."},complete:()=>console.info("complete")})):console.log("No code available"),location.href.indexOf("?source=trial")>-1&&this.trackingService.track("Trial2Pro"),this.requestTrialModal=new window.bootstrap.Modal("#requestTrialModal");try{this.trialDisabled=null!==window.localStorage.getItem("trialRequested")}catch{}}requestLicense(){this.licenseRequested=!0,this.oauthService.initCodeFlow()}copy(){try{navigator.clipboard.writeText(this.license.license),this.licenseCopied=!0}catch(n){console.error("Failed to copy license",n)}}copyPaddle(n){try{navigator.clipboard.writeText(n),this.copiedPaddledLicenses.push(n)}catch(o){console.error("Failed to copy paddle license",o)}}scrollToGithub(){return document.querySelector("#github").scrollIntoView(!0),!1}scrollToPaddle(){return document.querySelector("#paddle").scrollIntoView(!0),!1}requestTrial(){this.requestTrialModal.show(),this.trackingService.track("Trial-Started")}completeTrial(){console.log("Trial completed"),this.requestTrialModal.hide(),this.paddleLicenseRequested=!0,this.licenseService.getTrialLicense(this.requestTrialData).subscribe({next:n=>{console.log("Received trial license response"),this.paddleLicense=n,this.scrollToPaddle();try{window.localStorage.setItem("trialRequested","true"),this.trialDisabled=!0}catch{}this.trackingService.track("Trial-Completed")},error:n=>{console.error(n),this.paddleLicense=new DE,this.paddleLicense.error="Unable to generate trial license."},complete:()=>{console.info("complete"),this.requestTrialData={name:"",email:""}}})}openPaddleCheckout(n){"enterprise"===n?window.Paddle.Checkout.open({product:this.lifetimeLicense?833945:762581,successCallback:"paddleCheckoutComplete"}):"team"===n?window.Paddle.Checkout.open({product:this.lifetimeLicense?833944:762580,successCallback:"paddleCheckoutComplete"}):window.Paddle.Checkout.open({product:this.lifetimeLicense?833943:762579,successCallback:"paddleCheckoutComplete"}),this.trackingService.track("Paddle-Started",{props:{product:n,lifetimeLicense:this.lifetimeLicense}})}paddleCheckoutComplete(n){console.log("Checkout completed",n),this.paddleLicenseRequested=!0,this.licenseService.getPaddleLicense(n).subscribe({next:o=>{console.log("Received paddle license response"),this.paddleLicense=o,this.scrollToPaddle(),this.trackingService.track("Paddle-Completed",{props:{product:n.product.name,lifetimeLicense:this.lifetimeLicense}})},error:o=>{console.error(o),this.paddleLicense=new DE,this.paddleLicense.error="Unable to generate Paddle license."},complete:()=>console.info("complete")})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bE),I(wE),I(p3))},e.\u0275cmp=vt({type:e,selectors:[["app-pro-component"]],standalone:!0,features:[Mt],decls:229,vars:25,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-xs-12","col-md-6","order-2","order-md-1"],[1,"table"],["scope","col"],["scope","col",1,"text-center"],[1,"pro-button"],["scope","row"],["fragment","metrics","title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-info","text-secondary"],[1,"text-center"],[1,"fa-solid","fa-circle-check","text-secondary"],["fragment","riskhotspots","title","Show feature details",3,"routerLink"],["title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-check","pro-text"],[1,"col-xs-12","col-md-6","order-1","order-md-2"],["href","",3,"click"],[3,"routerLink"],["id","github",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"col-xs-12","col-md-6","pb-3"],[1,"fs-2","me-3","number"],["href","https://github.com/sponsors/danielpalme","target","_blank",1,"btn","btn-outline-dark"],[1,"fa-solid","fa-heart","githubheart"],["type","button",1,"btn","btn-primary","me-3",3,"disabled","click"],[1,"fa-solid","fa-rocket"],["class","spinner-border text-info","role","status",4,"ngIf"],["class","col-md-6 pb-3 d-none d-lg-block","style","position: relative;",4,"ngIf"],["class","col-xs-12 col-md-6 pb-3",4,"ngIf"],["id","paddle",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"text-center","mb-3"],["class","togglecontainer",4,"ngIf"],["class","row",4,"ngIf"],[1,"mt-5"],[4,"ngIf"],[1,"container-fluid","mt-4","pt-5","pb-5","bg-light"],[1,"container","text-center"],[1,"row","mt-5",2,"max-width","550px","margin","auto"],["href","https://twitter.com/fredyfx/status/1642807795828543488","target","_blank"],["loading","lazy","src","resources/twitter_light.webp","alt","Testimonial",1,"img-fluid"],["id","faq",1,"container","mt-5","pt-5","pb-5"],["id","accordionFaq",1,"accordion","accordion-flush"],[1,"accordion-item"],["id","headingOne",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseOne","aria-expanded","true","aria-controls","collapseOne",1,"accordion-button"],["id","collapseOne","aria-labelledby","headingOne","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse","show"],[1,"accordion-body"],["id","headingTwo",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseTwo","aria-expanded","false","aria-controls","collapseTwo",1,"accordion-button","collapsed"],["id","collapseTwo","aria-labelledby","headingTwo","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["id","headingThree",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseThree","aria-expanded","false","aria-controls","collapseThree",1,"accordion-button","collapsed"],["id","collapseThree","aria-labelledby","headingThree","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["tabindex","-1","id","requestTrialModal",1,"modal"],[1,"modal-dialog"],[1,"modal-content"],["method","post",3,"ngSubmit"],["trialForm","ngForm"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal","aria-label","Close",1,"btn-close"],[1,"modal-body"],[1,"form-floating","mb-3"],["type","text","id","name","name","name","required","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],["for","floatingInput"],[1,"required"],["type","email","id","email","name","email","required","","email","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-secondary"],["type","submit",1,"btn","btn-primary",3,"disabled"],["role","status",1,"spinner-border","text-info"],[1,"visually-hidden"],[1,"col-md-6","pb-3","d-none","d-lg-block",2,"position","relative"],[1,"fa-solid","fa-heart","githubheartlarge"],["href","https://github.com/sponsors/danielpalme","target","_blank"],["for","licensetext"],["id","licensetext","rows","5","readonly","",1,"form-control","mt-2"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"],[1,"togglecontainer"],[1,"option",3,"ngClass","click"],[1,"fa-solid","fa-rotate-right"],[1,"fa-solid","fa-infinity"],[1,"col-xs-12","col-md-6","col-lg-3","mt-0","pb-3","text-center","paddle-container"],[1,"paddle","trial"],["src","resources/trial.svg","alt","Trial",1,"img-fluid"],[1,"mt-3"],[1,"fa-solid","fa-magnifying-glass"],[1,"fa-solid","fa-calendar-days"],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],["type","button","class","btn btn-primary","disabled","",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-md-0","pb-3","text-center","paddle-container"],[1,"paddle"],["src","resources/individual.svg","alt","Individual",1,"img-fluid"],[1,"fa-solid","fa-user"],["type","button","class","btn btn-primary",3,"click",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/team.svg","alt","Team",1,"img-fluid"],[1,"fa-solid","fa-users"],[1,"col-xs-6","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/enterprise.svg","alt","Enterprise",1,"img-fluid"],[1,"fa-solid","fa-industry"],["type","button",1,"btn","btn-primary",3,"disabled","click"],["type","button","disabled","",1,"btn","btn-primary"],["type","button",1,"btn","btn-primary",3,"click"],[1,"fa-solid","fa-cart-shopping"],["class","col-xs-12 col-md-6",4,"ngIf"],[2,"position","relative","left","35px","top","-20px"],[1,"col-xs-12","col-md-6"],["for","paddlelicensetext"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-2"],["id","paddlelicensetext","rows","5","readonly","",1,"form-control"]],template:function(n,o){if(1&n&&(h(0,"div",0)(1,"h1",1),f(2,"PRO"),p(),h(3,"div",2)(4,"div",3)(5,"table",4)(6,"thead")(7,"tr"),v(8,"th",5),h(9,"th",6),f(10,"Free"),p(),h(11,"th",6)(12,"span",7),f(13,"PRO"),p()()()(),h(14,"tbody")(15,"tr")(16,"th",8),f(17,"Metrics "),h(18,"a",9),v(19,"i",10),p()(),h(20,"td",11),v(21,"i",12),p(),h(22,"td",11),v(23,"i",12),p()(),h(24,"tr")(25,"th",8),f(26,"Risk Hotspots "),h(27,"a",13),v(28,"i",10),p()(),h(29,"td",11),v(30,"i",12),p(),h(31,"td",11),v(32,"i",12),p()(),h(33,"tr")(34,"th",8),f(35,"Line coverage "),h(36,"a",14),v(37,"i",10),p()(),h(38,"td",11),v(39,"i",12),p(),h(40,"td",11),v(41,"i",12),p()(),h(42,"tr")(43,"th",8),f(44,"Branch coverage "),h(45,"a",14),v(46,"i",10),p()(),h(47,"td",11),v(48,"i",12),p(),h(49,"td",11),v(50,"i",12),p()(),h(51,"tr")(52,"th",8),f(53,"Method coverage "),h(54,"a",14),v(55,"i",10),p()(),v(56,"td",11),h(57,"td",11),v(58,"i",15),p()(),h(59,"tr")(60,"th",8),f(61,"Metrics on summary page "),h(62,"a",9),v(63,"i",10),p()(),v(64,"td",11),h(65,"td",11),v(66,"i",15),p()(),h(67,"tr")(68,"th",8)(69,"i"),f(70,"OpenCover"),p(),f(71," output format"),p(),v(72,"td",11),h(73,"td",11),v(74,"i",15),p()()()()(),h(75,"div",16)(76,"p")(77,"i"),f(78,"ReportGenerator"),p(),f(79," is Open Source and free to use."),v(80,"br"),f(81," Some of the advanced features require a PRO license. "),p(),h(82,"p"),f(83," You can either become a "),h(84,"a",17),R("click",function(){return o.scrollToGithub()}),f(85,"GitHub sponsor"),p(),f(86," or you can "),h(87,"a",17),R("click",function(){return o.scrollToPaddle()}),f(88,"buy a license"),p(),f(89,"."),v(90,"br"),f(91," A "),h(92,"a",17),R("click",function(){return o.scrollToPaddle()}),f(93,"free trial version"),p(),f(94," is available too. "),p(),h(95,"p"),f(96," Get "),h(97,"a",18),f(98,"in touch"),p(),f(99," if you have any issues and we will figure it out. "),p()()()(),h(100,"section",19)(101,"div",0)(102,"h2",1),f(103,"Get your license as a GitHub sponsor"),p(),h(104,"div",2)(105,"div",20)(106,"p"),f(107,"You can obtain your license in two easy steps (no sign up required):"),p(),h(108,"span",21),f(109,"1."),p(),h(110,"a",22),v(111,"i",23),f(112," Become a GitHub sponsor"),p(),v(113,"br"),h(114,"span",21),f(115,"2."),p(),h(116,"button",24),R("click",function(){return o.requestLicense()}),v(117,"i",25),f(118," Get license"),p(),P(119,g3,3,0,"div",26),p(),P(120,m3,2,0,"div",27),P(121,b3,4,3,"div",28),p()()(),h(122,"section",29)(123,"div",0)(124,"h2",1),f(125,"Buy a license"),p(),h(126,"div",30),P(127,w3,7,6,"span",31),p(),P(128,V3,61,17,"div",32),P(129,q3,3,2,"div",32),h(130,"div",33),P(131,W3,4,0,"p",34),h(132,"p"),f(133,"The order process is conducted by Paddle.com. Paddle.com is the Merchant of Record for all orders. Paddle provides all customer service inquiries and handles returns."),p()()()(),v(134,"app-testimonials"),h(135,"section",35)(136,"div",36)(137,"h3"),f(138,"Customers"),p(),h(139,"div",37)(140,"a",38),v(141,"img",39),p()()()(),h(142,"section",40)(143,"h2",1),f(144,"Frequently Asked Questions"),p(),h(145,"div",41)(146,"div",42)(147,"h2",43)(148,"button",44),f(149," How do I use/activate my license? "),p()(),h(150,"div",45)(151,"div",46),f(152," Your license key is passed to "),h(153,"i"),f(154,"ReportGenerator"),p(),f(155," via a command line parameter: "),h(156,"i"),f(157,"-license:YOUR_KEY"),p()()()(),h(158,"div",42)(159,"h2",47)(160,"button",48),f(161," Are there limitations on number of users? "),p()(),h(162,"div",49)(163,"div",46)(164,"b"),f(165,"GitHub sponsors"),p(),v(166,"br"),h(167,"p"),f(168,"There's no enforced limit. Please pick a sponsor level that fits your company size and budget."),p(),h(169,"b"),f(170,"Bought license"),p(),v(171,"br"),h(172,"p"),f(173,"There's no enforced limit. Please choose a plan that matches the number of developers using "),h(174,"i"),f(175,"ReportGenerator"),p(),f(176,"."),p()()()(),h(177,"div",42)(178,"h2",50)(179,"button",51),f(180," Will my license expire? "),p()(),h(181,"div",52)(182,"div",46)(183,"b"),f(184,"GitHub sponsors"),p(),v(185,"br"),h(186,"p"),f(187,"Your license will not expire."),p(),h(188,"b"),f(189,"Bought license"),p(),v(190,"br"),h(191,"p")(192,"b"),f(193,"Annual subscription"),p(),f(194,": Your license may get revoked for new releases of "),h(195,"i"),f(196,"ReportGenerator"),p(),f(197,", if you cancel your subscription."),v(198,"br"),h(199,"b"),f(200,"Lifetime licenses"),p(),f(201,": Lifetime licenses will not expire. "),p()()()()()(),h(202,"div",53)(203,"div",54)(204,"div",55)(205,"form",56,57),R("ngSubmit",function(){return o.completeTrial()}),h(207,"div",58)(208,"h5",59),f(209,"Free Trial"),p(),v(210,"button",60),p(),h(211,"div",61)(212,"div",62)(213,"input",63),R("ngModelChange",function(s){return o.requestTrialData.name=s}),p(),h(214,"label",64),f(215,"Name "),h(216,"span",65),f(217,"*"),p()()(),h(218,"div",62)(219,"input",66),R("ngModelChange",function(s){return o.requestTrialData.email=s}),p(),h(220,"label",64),f(221,"Email address "),h(222,"span",65),f(223,"*"),p()()()(),h(224,"div",67)(225,"button",68),f(226,"Close"),p(),h(227,"button",69),f(228,"Get trial license"),p()()()()()()),2&n){const i=_d(206);_(18),w("routerLink",K(18,qo)),_(9),w("routerLink",K(19,qo)),_(9),w("routerLink",K(20,qo)),_(9),w("routerLink",K(21,qo)),_(9),w("routerLink",K(22,qo)),_(8),w("routerLink",K(23,qo)),_(35),w("routerLink",K(24,Ph)),_(19),w("disabled",o.licenseRequested),_(3),w("ngIf",o.licenseRequested&&!o.license),_(1),w("ngIf",!o.license),_(1),w("ngIf",o.license),_(6),w("ngIf",!o.paddleLicenseRequested),_(1),w("ngIf",!o.paddleLicenseRequested),_(1),w("ngIf",o.paddleLicenseRequested),_(2),w("ngIf",!o.lifetimeLicense),_(82),w("ngModel",o.requestTrialData.name),_(6),w("ngModel",o.requestTrialData.email),_(8),w("disabled",!i.valid)}},dependencies:[pn,Ef,vl,ml,ec,Xl,jo,Ul,Bl,$o,Sh,Kl,Cs,Bo,CE],styles:[".number[_ngcontent-%COMP%]{display:inline-block;position:relative;top:8px}.spinner-border[_ngcontent-%COMP%]{position:relative;top:9px}.paddle-container[_ngcontent-%COMP%]{padding:10px}.paddle[_ngcontent-%COMP%]{border:1px solid #8c8888;border-radius:20px;padding:20px;background-color:#d8e8f0}.trial[_ngcontent-%COMP%]{background-color:#b2cad7}.githubheartlarge[_ngcontent-%COMP%]{position:absolute;top:-120px;left:40%;font-size:20rem;color:#ffd2ed}.togglecontainer[_ngcontent-%COMP%]{background-color:#fff;display:inline-block;border-radius:20px;white-space:nowrap}.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{background-color:#fff;padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-block}.togglecontainer[_ngcontent-%COMP%] .option.active[_ngcontent-%COMP%]{color:#fff;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}@media only screen and (max-width: 400px){.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%] .fa-solid[_ngcontent-%COMP%]{display:none}}"]}),t})();class ic{constructor(t,r,n,o,i,s){this.name=t,this.url=r,this.runtimes=n,this.description=o,this.installOptions=i,this.executables=s}formatExecutable(t){return t.tool}formatArgument(t,r){if(""===(r=r.trim()))return"";const n=r.indexOf(" ")>-1?'"':"";return`\r\n${n}-${t}:${r}${n}`}formatArguments(t,r){return this.formatArgument(t,r.filter(n=>null!=n&&0!==n.length&&0!==n.trim().length).join(";"))}}class Y3 extends ic{formatExecutable(t){let r=`- task: ${t.tool}@${Lt.majorVersion}`;return r+="\r\n displayName: ReportGenerator",r+="\r\n inputs:",console.log("hello",r),r}formatArgument(t,r){if(""===(r=r.trim()))return"";const n=r.indexOf(" ")>-1?"'":"";return`\r\n ${t}: ${n}${r}${n}`}}class Q3{constructor(){this.verbosities=["Verbose","Info","Warning","Error","Off"],this.types=["Html","Coverage tool","Json","Markdown","Xml","Text","Image"],this.reports=["cobertura.xml"],this.targetdir="coveragereport",this.reporttypes=[{name:"Html",types:["Html"],description:"The default output format. Creates a summary overview (index.html) and detailed reports for each class.",requiresHistoryDir:!1,checked:!0,sampleReport:"resources/reports/Html/index.html"},{name:"Html_Light",types:["Html"],description:"Same as Html but with a light theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Light/index.html"},{name:"Html_Dark",types:["Html"],description:"Same as Html but with a dark theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Dark/index.html"},{name:"Html_BlueRed",types:["Html"],description:"Same as Html but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed/index.html"},{name:"HtmlSummary",types:["Html"],description:"Creates a single HTML file (summary.html) without links.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlSummary/summary.html"},{name:"Html_BlueRed_Summary",types:["Html"],description:"Same as HtmlSummary but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed_Summary/summary.html"},{name:"HtmlChart",types:["Html"],description:"Creates a single HTML file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/HtmlChart/CoverageHistory.html"},{name:"HtmlInline",types:["Html"],description:"Same as HTML but CSS and JavaScript is included in every HTML page. This results in larger file sizes, but can be useful for integration into build servers like Azure DevOps (VSTS), since they may block referenced CSS and JavaScript files.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline/index.html"},{name:"HtmlInline_AzurePipelines",types:["Html"],description:"Same as HtmlInline but with an adaptive light/dark theme matching the look and feel of Azure Pipelines",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines/index.html"},{name:"HtmlInline_AzurePipelines_Light",types:["Html"],description:"Same as HtmlInline but with a light theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Light/index.html"},{name:"HtmlInline_AzurePipelines_Dark",types:["Html"],description:"Same as HtmlInline but with a dark theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Dark/index.html"},{name:"MHtml",types:["Html"],description:"Same as HTML but packaged into a single MHTML file.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MHtml/Summary.mht"},{name:"Clover",types:["Coverage tool"],description:"Creates a XML file in Clover format. This format integrates with tools like Atlassian Bamboo.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Clover/Clover.xml"},{name:"Cobertura",types:["Coverage tool"],description:"Creates a XML file in Cobertura format. This format integrates with tools like Azure DevOps (VSTS) or Jenkins.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Cobertura/Cobertura.xml"},{name:"OpenCover",types:["Coverage tool"],description:"Creates a XML file in OpenCover format (PRO version only).",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/OpenCover/OpenCover.xml"},{name:"SonarQube",types:["Coverage tool"],description:"Creates a XML file in SonarQube 'Generic Test Data' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/SonarQube/SonarQube.xml"},{name:"lcov",types:["Coverage tool"],description:"Creates a text file in 'lcov' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/lcov/lcov.info"},{name:"XML",types:["Xml"],description:"Creates a XML file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Xml/Summary.xml"},{name:"XMLSummary",types:["Xml"],description:"Creates a single XML file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/XmlSummary/Summary.xml"},{name:"JsonSummary",types:["Json"],description:"Creates a single JSON file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/JsonSummary/Summary.json"},{name:"Latex",types:["Text"],description:"Creates a single TEX file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Summary/Summary.tex"},{name:"LatexSummary",types:["Text"],description:"Creates a single TEX file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/LatexSummary/Summary.tex"},{name:"TeamCitySummary",types:["Coverage tool"],description:"Command line output interpreted by TeamCity.",requiresHistoryDir:!1,checked:!1,sampleReport:null},{name:"TextSummary",types:["Text"],description:"Creates a single TXT file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/TextSummary/Summary.txt"},{name:"TextDeltaSummary",types:["Text"],description:"Creates a single TXT file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/TextDeltaSummary/DeltaSummary.txt"},{name:"CsvSummary",types:["Text"],description:"Creates a single CSV file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/CsvSummary/Summary.csv"},{name:"MarkdownSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummary/Summary.md"},{name:"MarkdownSummaryGithub",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class. The report is optimized for GitHub.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummaryGithub/SummaryGithub.md"},{name:"MarkdownDeltaSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/MarkdownDeltaSummary/DeltaSummary.md"},{name:"SvgChart",types:["Image"],description:"Creates a single SVG file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/SvgChart/CoverageHistory.svg"},{name:"Badges",types:["Image"],description:"Creates SVG files that show line and/or branch coverage information.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Badges/index.html"}],this.sourcedirectories=[],this.historydir="",this.plugins=[],this.assemblyfilters=[],this.classfilters=[],this.filefilters=[],this.selectedverbosity=this.verbosities[1],this.selectedType=null,this.title="",this.tag="",this.license=""}addSourceDirectory(){return this.sourcedirectories.push(""),!1}removeSourceDirectory(t){return this.sourcedirectories.splice(t,1),!1}addReport(){return this.reports.push(""),!1}removeReport(t){return this.reports.splice(t,1),!1}addPlugin(){return this.plugins.push(""),!1}removePlugin(t){return this.plugins.splice(t,1),!1}addAssemblyFilter(){return this.assemblyfilters.push(""),!1}removeAssemblyFilter(t){return this.assemblyfilters.splice(t,1),!1}addClassFilter(){return this.classfilters.push(""),!1}removeClassFilter(t){return this.classfilters.splice(t,1),!1}addFileFilter(){return this.filefilters.push(""),!1}removeFileFilter(t){return this.filefilters.splice(t,1),!1}getUsage(t,r){const n=t.executables.find(a=>a.runtime==r);let o=void 0!==n?t.formatExecutable(n):"";o+=t.formatArguments("reports",this.reports),o+=t.formatArgument("targetdir",this.targetdir);for(var i="",s=0;s0&&(i+=";"),i+=this.reporttypes[s].name);return i.length>0&&"Html"!==i&&(o+=t.formatArgument("reporttypes",i)),o+=t.formatArguments("sourcedirs",this.sourcedirectories),o+=t.formatArgument("historydir",this.historydir),o+=t.formatArguments("plugins",this.plugins),o+=t.formatArguments("assemblyfilters",this.assemblyfilters),o+=t.formatArguments("classfilters",this.classfilters),o+=t.formatArguments("filefilters",this.filefilters),"Info"!==this.selectedverbosity&&(o+=t.formatArgument("verbosity",this.selectedverbosity)),o+=t.formatArgument("title",this.title),o+=t.formatArgument("tag",this.tag),o+=t.formatArgument("license",this.license),o}historyDirRequired(){for(let t=0;t-1?"'":"";return`\r\n ${t}: ${n}${r}${n}`}}class kh{constructor(t,r){this.tool=t,this.command=r}}function J3(e,t){if(1&e){const r=Ae();h(0,"div",35)(1,"label",36)(2,"input",37),R("ngModelChange",function(o){return ne(r),re(k().selectedEnvironment=o)})("ngModelChange",function(){return ne(r),re(k().selectedEnvironmentChanged())}),p(),h(3,"b"),f(4),p(),v(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const r=t.$implicit,n=k();_(2),w("ngModel",n.selectedEnvironment)("value",r)("checked",n.selectedEnvironment.name===r.name),_(2),Ce(r.name),_(3),Ce(r.description)}}function K3(e,t){if(1&e){const r=Ae();h(0,"div",35)(1,"label",36)(2,"input",41),R("ngModelChange",function(o){return ne(r),re(k(3).selectedPackage=o)}),p(),h(3,"b"),f(4),p(),v(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const r=k().$implicit,n=k(2);_(2),w("ngModel",n.selectedPackage)("value",r),_(2),Ce(r.name),_(3),Ce(r.description)}}function ej(e,t){if(1&e&&(ut(0),P(1,K3,8,4,"div",40),dt()),2&e){const r=t.$implicit,n=k(2);_(1),w("ngIf",r.runtimes.indexOf(n.selectedEnvironment.name)>-1)}}function tj(e,t){if(1&e&&(ut(0),h(1,"h4"),f(2,"NuGet Package"),p(),P(3,ej,2,1,"ng-container",39),dt()),2&e){const r=k();_(3),w("ngForOf",r.packages)}}function nj(e,t){if(1&e){const r=Ae();h(0,"span",45),R("click",function(){ne(r);const o=k().index;return re(k().configuration.removeReport(o))}),h(1,"a",46),v(2,"i",47),p()()}}const rj=function(e){return{"input-group":e}};function oj(e,t){if(1&e){const r=Ae();h(0,"div",38)(1,"div",42)(2,"input",43),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.reports[s]=o)}),p(),P(3,nj,3,0,"span",44),p()()}if(2&e){const r=t.index,n=k();_(1),w("ngClass",$i(4,rj,r>0)),_(1),An("name","report_",r,""),w("ngModel",n.configuration.reports[r]),_(1),w("ngIf",r>0)}}const ij=function(e,t){return{"btn-outline-primary":e,"btn-primary":t}};function sj(e,t){if(1&e){const r=Ae();h(0,"button",48),R("click",function(){const i=ne(r).$implicit,s=k();return re(s.configuration.selectedType=s.configuration.selectedType===i?null:i)}),f(1),p()}if(2&e){const r=t.$implicit,n=k();w("ngClass",k_(2,ij,r!==n.configuration.selectedType,r===n.configuration.selectedType)),_(1),Ce(r)}}function aj(e,t){if(1&e){const r=Ae();h(0,"span",53),v(1,"i",54),f(2," Please specify a "),h(3,"a",9),R("click",function(){return ne(r),re(k(3).scrollToHistoryDir())}),f(4,"history directory"),p()()}}function lj(e,t){if(1&e&&(ut(0),v(1,"br",55),h(2,"a",29),f(3,"Sample report"),p(),f(4,"\xa0"),h(5,"a",29),v(6,"i",56),p(),dt()),2&e){const r=k(2).$implicit;_(2),w("href",r.sampleReport,ro),_(3),w("href",r.sampleReport,ro)}}function cj(e,t){if(1&e){const r=Ae();h(0,"div",50)(1,"label",36)(2,"input",51),R("change",function(){ne(r);const o=k().$implicit;return re(o.checked=!o.checked)}),p(),h(3,"b"),f(4),p(),P(5,aj,5,0,"span",52),v(6,"br"),h(7,"div",38),f(8),P(9,lj,7,2,"ng-container",5),p()()()}if(2&e){const r=k().$implicit,n=k();_(2),w("checked",r.checked),_(2),Ce(r.name),_(1),w("ngIf",r.checked&&r.requiresHistoryDir&&!n.configuration.historydir),_(3),xn("",r.description," "),_(1),w("ngIf",r.sampleReport)}}function uj(e,t){if(1&e&&(ut(0),P(1,cj,10,5,"div",49),dt()),2&e){const r=t.$implicit,n=k();_(1),w("ngIf",!n.configuration.selectedType||r.types.indexOf(n.configuration.selectedType)>-1)}}function dj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",58),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.sourcedirectories[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeSourceDirectory(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","sourcedir_",r,""),w("ngModel",n.configuration.sourcedirectories[r])}}function fj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",59),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.plugins[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removePlugin(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","plugin_",r,""),w("ngModel",n.configuration.plugins[r])}}function hj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",60),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.assemblyfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeAssemblyFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","assemblyfilter_",r,""),w("ngModel",n.configuration.assemblyfilters[r])}}function pj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",61),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.classfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeClassFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","classfilter_",r,""),w("ngModel",n.configuration.classfilters[r])}}function gj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",62),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.filefilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeFileFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","filefilter_",r,""),w("ngModel",n.configuration.filefilters[r])}}function mj(e,t){if(1&e&&(h(0,"option",63),f(1),p()),2&e){const r=t.$implicit;w("value",r),_(1),Ce(r)}}function vj(e,t){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),v(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const r=t.$implicit;_(2),Ce(r.tool),_(3),Ce(r.command)}}function yj(e,t){1&e&&(h(0,"span"),v(1,"i",65),f(2," Copy"),p())}function _j(e,t){1&e&&(h(0,"span"),v(1,"i",66),f(2," Copied"),p())}function Cj(e,t){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),v(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const r=t.$implicit;_(2),Ce(r.tool),_(3),Ce(r.command)}}function Dj(e,t){1&e&&(h(0,"span"),v(1,"i",65),f(2," Copy"),p())}function bj(e,t){1&e&&(h(0,"span"),v(1,"i",66),f(2," Copied"),p())}const wj=function(){return["/pro"]},Ej=[{path:"",component:d3,pathMatch:"full",title:"Home",data:{canonical:"/"}},{path:"features",component:o3,title:"Features",data:{canonical:"/features"}},{path:"features.html",redirectTo:"/features"},{path:"getstarted",component:s3,title:"Get started",data:{canonical:"/getstarted"}},{path:"getstarted.html",redirectTo:"/getstarted"},{path:"usage",component:(()=>{var e;class t{constructor(){this.versions=Lt,this.lastResult="",this.usageCopied=!1,this.configuration=new Q3,this.environments=[new sc(".NET Core",".NET Core"),new sc(".NET Framework","The full .NET framework"),new sc("Azure DevOps",null),new sc("Github Action",null)],this.packages=[new ic("ReportGenerator","https://www.nuget.org/packages/ReportGenerator",[".NET Framework",".NET Core"],"Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script.",[new kh("Package Manager",`Install-Package ReportGenerator -Version ${Lt.version}`),new kh(".NET CLI",`dotnet add package ReportGenerator --version ${Lt.version}`)],[new ws(".NET Framework",`$(UserProfile)\\.nuget\\packages\\reportgenerator\\${Lt.version}\\tools\\net47\\ReportGenerator.exe`),new ws(".NET Core",`dotnet $(UserProfile)\\.nuget\\packages\\reportgenerator\\${Lt.version}\\tools\\net6.0\\ReportGenerator.dll`)]),new ic("dotnet-reportgenerator-globaltool","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool",[".NET Core"],"Use this package if your project is based on .NET Core and you want to use ReportGenerator as a (global) 'DotnetTool'.",[new kh(".NET CLI",`dotnet tool install --global dotnet-reportgenerator-globaltool --version ${Lt.version}\r\n\r\ndotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version ${Lt.version}\r\n\r\ndotnet new tool-manifest\r\ndotnet tool install dotnet-reportgenerator-globaltool --version ${Lt.version}`)],[new ws(".NET Core","reportgenerator")]),new Y3("Azure DevOps","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator",["Azure DevOps"],"Use this package within Azure DevOps",[],[new ws("Azure DevOps","reportgenerator")]),new X3("GitHub Action","https://github.com/marketplace/actions/reportgenerator",["Github Action"],"Use this package within Github Actions",[],[new ws("Github Action","danielpalme/ReportGenerator-GitHub-Action")])],this.selectedEnvironment=this.environments[0],this.selectedPackage=this.packages[0]}selectedEnvironmentChanged(){this.selectedPackage=this.packages.find(n=>n.runtimes.indexOf(this.selectedEnvironment.name)>-1)}severalPackagesAvailable(){return this.packages.filter(n=>n.runtimes.indexOf(this.selectedEnvironment.name)>-1).length>1}getUsage(){const n=this.configuration.getUsage(this.selectedPackage,this.selectedEnvironment.name);return this.lastResult!==n&&(this.lastResult=n,this.usageCopied=!1),n}copy(){try{navigator.clipboard.writeText(this.getUsage()),this.usageCopied=!0}catch(n){console.error("Failed to copy license",n)}}scrollToHistoryDir(){return document.querySelector("#historydir").scrollIntoView(!0),!1}trackByIndex(n,o){return n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-usage-component"]],standalone:!0,features:[Mt],decls:219,vars:41,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-md-7"],["class","form-check",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"alert","alert-info"],["class","mb-3",4,"ngFor","ngForOf","ngForTrackBy"],[1,"input-group","mb-3"],["href","",3,"click"],[1,"fa","fa-plus-circle"],["type","text","name","targetdir","placeholder","The target directory","required","",1,"form-control",3,"ngModel","ngModelChange"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"me-2"],["type","button","class","btn btn-sm me-1 mb-1",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[4,"ngFor","ngForOf","ngForTrackBy"],["class","input-group mb-3",4,"ngFor","ngForOf","ngForTrackBy"],["id","historydir"],["type","text","name","historydir","placeholder","The history directory",1,"form-control",3,"ngModel","required","ngModelChange"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage"],["name","verbosity",1,"form-select",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["type","text","name","title","placeholder","Title",1,"form-control",3,"ngModel","ngModelChange"],["type","text","name","tag","placeholder","Optional tag or build version",1,"form-control",3,"ngModel","ngModelChange"],[3,"routerLink"],["type","text","name","license","placeholder","Optional license for PRO version","rows","4",1,"form-control",3,"ngModel","ngModelChange"],[1,"col-md-5"],[1,"d-md-none","mt-5"],["target","_blank",3,"href"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-4"],[1,"text-dark","bg-light","p-2","border"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"d-none","d-md-block","sticky"],[1,"form-check"],[1,"form-check-label"],["type","radio","name","environment",1,"form-check-input",3,"ngModel","value","checked","ngModelChange"],[1,"mb-3"],[4,"ngFor","ngForOf"],["class","form-check",4,"ngIf"],["type","radio","name","package",1,"form-check-input",3,"ngModel","value","ngModelChange"],[3,"ngClass"],["type","text","placeholder","The path of the coverage file","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["class","input-group-text",3,"click",4,"ngIf"],[1,"input-group-text",3,"click"],["href",""],[1,"fa","fa-trash","text-danger"],["type","button",1,"btn","btn-sm","me-1","mb-1",3,"ngClass","click"],["class","form-check mt-1",4,"ngIf"],[1,"form-check","mt-1"],["type","checkbox","name","reporttype",1,"form-check-input",3,"checked","change"],["class","text-danger ms-2",4,"ngIf"],[1,"text-danger","ms-2"],[1,"fa-solid","fa-triangle-exclamation"],[1,"mt-1"],[1,"fa-solid","fa-arrow-up-right-from-square"],[1,"input-group"],["type","text","placeholder","The source directory","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The path of the plugin","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for assemlies","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for classes","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for files","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],[3,"value"],[1,"mt-2"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Usage"),p(),h(3,"div",2)(4,"div",3)(5,"form")(6,"h3"),f(7,"Environment"),p(),P(8,J3,8,5,"div",4),v(9,"hr"),P(10,tj,4,1,"ng-container",5),v(11,"hr"),h(12,"h3"),f(13,"Reports"),p(),h(14,"div",6),f(15,"Path to the coverage report(s) that should be parsed."),v(16,"br"),f(17,"Globbing is supported."),p(),P(18,oj,4,6,"div",7),h(19,"div",8)(20,"a",9),R("click",function(){return o.configuration.addReport()}),v(21,"i",10),f(22," Add report"),p()(),v(23,"br"),h(24,"h3"),f(25,"Target directory"),p(),h(26,"div",6),f(27,"The directory where the generated report(s) should be saved."),p(),h(28,"div",8)(29,"input",11),R("ngModelChange",function(s){return o.configuration.targetdir=s}),p()(),v(30,"br"),h(31,"h3"),f(32,"Report types"),p(),h(33,"div",6),f(34,"Download "),h(35,"a",12),f(36,"sample reports"),p()(),h(37,"span",13),f(38,"Filter:"),p(),P(39,sj,2,5,"button",14),v(40,"br"),P(41,uj,2,1,"ng-container",15),h(42,"h3"),f(43,"Source directories"),p(),h(44,"div",6),f(45,"Optional directories which contain the corresponding source code."),v(46,"br"),f(47,"The source directories are used if coverage report contains classes without path information."),p(),P(48,dj,6,2,"div",16),h(49,"div",8)(50,"a",9),R("click",function(){return o.configuration.addSourceDirectory()}),v(51,"i",10),f(52," Add source directory"),p()(),v(53,"br"),h(54,"h3",17),f(55,"History directory"),p(),h(56,"div",6),f(57,"Optional directory for storing "),h(58,"b"),f(59,"persistent"),p(),f(60," coverage information. Choose a directory which does not get deleted between builds."),v(61,"br"),f(62,"Required to show the history chart in the HTML reports."),p(),h(63,"div",8)(64,"input",18),R("ngModelChange",function(s){return o.configuration.historydir=s}),p()(),v(65,"br"),h(66,"h3"),f(67,"Plugins"),p(),h(68,"div",6),f(69,"Optional plugin files for "),h(70,"a",19),f(71,"custom reports"),p(),f(72," or "),h(73,"a",20),f(74,"custom history storage"),p(),f(75,"."),p(),P(76,fj,6,2,"div",16),h(77,"div",8)(78,"a",9),R("click",function(){return o.configuration.addPlugin()}),v(79,"i",10),f(80," Add plugin"),p()(),v(81,"br"),h(82,"h3"),f(83,"Assembly filters"),p(),h(84,"div",6),f(85,"Optional list of "),h(86,"b"),f(87,"assemblies"),p(),f(88," that should be included or excluded in the report. "),v(89,"br"),f(90,"Exclusion filters take precedence over inclusion filters. "),v(91,"br"),f(92,"Wildcards are allowed."),v(93,"br"),h(94,"p"),f(95,"Examples:"),v(96,"br"),h(97,"code"),f(98,"+Included"),p(),v(99,"br"),h(100,"code"),f(101,"-Excluded"),p()()(),P(102,hj,6,2,"div",16),h(103,"div",8)(104,"a",9),R("click",function(){return o.configuration.addAssemblyFilter()}),v(105,"i",10),f(106," Add assembly filter"),p()(),v(107,"br"),h(108,"h3"),f(109,"Class filters"),p(),h(110,"div",6),f(111,"Optional list of "),h(112,"b"),f(113,"classes"),p(),f(114," that should be included or excluded in the report. "),v(115,"br"),f(116,"Exclusion filters take precedence over inclusion filters. "),v(117,"br"),f(118,"Wildcards are allowed."),v(119,"br"),h(120,"p"),f(121,"Examples:"),v(122,"br"),h(123,"code"),f(124,"+Included"),p(),v(125,"br"),h(126,"code"),f(127,"-Excluded"),p()()(),P(128,pj,6,2,"div",16),h(129,"div",8)(130,"a",9),R("click",function(){return o.configuration.addClassFilter()}),v(131,"i",10),f(132," Add class filter"),p()(),v(133,"br"),h(134,"h3"),f(135,"File filters"),p(),h(136,"div",6),f(137,"Optional list of "),h(138,"b"),f(139,"files"),p(),f(140," that should be included or excluded in the report. "),v(141,"br"),f(142,"Exclusion filters take precedence over inclusion filters. "),v(143,"br"),f(144,"Wildcards are allowed."),v(145,"br"),h(146,"p"),f(147,"Examples:"),v(148,"br"),h(149,"code"),f(150,"+Included"),p(),v(151,"br"),h(152,"code"),f(153,"-Excluded"),p()()(),P(154,gj,6,2,"div",16),h(155,"div",8)(156,"a",9),R("click",function(){return o.configuration.addFileFilter()}),v(157,"i",10),f(158," Add file filter"),p()(),v(159,"br"),h(160,"h3"),f(161,"Verbosity"),p(),h(162,"div",6),f(163,"The verbosity level of the log messages."),p(),h(164,"div",8)(165,"select",21),R("ngModelChange",function(s){return o.configuration.selectedverbosity=s}),P(166,mj,2,2,"option",22),p()(),v(167,"br"),h(168,"h3"),f(169,"Title"),p(),h(170,"div",6),f(171,"Optional title."),p(),h(172,"div",8)(173,"input",23),R("ngModelChange",function(s){return o.configuration.title=s}),p()(),v(174,"br"),h(175,"h3"),f(176,"Tag"),p(),h(177,"div",6),f(178,"Optional tag or build version."),p(),h(179,"div",8)(180,"input",24),R("ngModelChange",function(s){return o.configuration.tag=s}),p()(),v(181,"br"),h(182,"h3"),f(183,"License"),p(),h(184,"div",6),f(185,"Optional license. Get your license here: "),h(186,"a",25),f(187,"https://reportgenerator.io/pro"),p()(),h(188,"div",8)(189,"textarea",26),R("ngModelChange",function(s){return o.configuration.license=s}),p()()()(),h(190,"div",27)(191,"div",28)(192,"h3"),f(193,"Instructions"),p(),f(194," Install "),h(195,"a",29),f(196),p(),P(197,vj,6,2,"div",30),h(198,"h4",31),f(199,"Usage"),p(),h(200,"pre",32),f(201),p(),h(202,"button",33),R("click",function(){return o.copy()}),P(203,yj,3,0,"span",5),P(204,_j,3,0,"span",5),p()(),h(205,"div",34)(206,"h3"),f(207,"Instructions"),p(),f(208," Install "),h(209,"a",29),f(210),p(),P(211,Cj,6,2,"div",30),h(212,"h4",31),f(213,"Usage"),p(),h(214,"pre",32),f(215),p(),h(216,"button",33),R("click",function(){return o.copy()}),P(217,Dj,3,0,"span",5),P(218,bj,3,0,"span",5),p()()()()()),2&n&&(_(8),w("ngForOf",o.environments),_(2),w("ngIf",o.severalPackagesAvailable()),_(8),w("ngForOf",o.configuration.reports)("ngForTrackBy",o.trackByIndex),_(11),w("ngModel",o.configuration.targetdir),_(10),w("ngForOf",o.configuration.types)("ngForTrackBy",o.trackByIndex),_(2),w("ngForOf",o.configuration.reporttypes)("ngForTrackBy",o.trackByIndex),_(7),w("ngForOf",o.configuration.sourcedirectories)("ngForTrackBy",o.trackByIndex),_(16),w("ngModel",o.configuration.historydir)("required",o.configuration.historyDirRequired()),_(12),w("ngForOf",o.configuration.plugins)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.assemblyfilters)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.classfilters)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.filefilters)("ngForTrackBy",o.trackByIndex),_(11),w("ngModel",o.configuration.selectedverbosity),_(1),w("ngForOf",o.configuration.verbosities)("ngForTrackBy",o.trackByIndex),_(7),w("ngModel",o.configuration.title),_(7),w("ngModel",o.configuration.tag),_(6),w("routerLink",K(40,wj)),_(3),w("ngModel",o.configuration.license),_(6),w("href",o.selectedPackage.url,ro),_(1),Ce(o.selectedPackage.name),_(1),w("ngForOf",o.selectedPackage.installOptions),_(4),Ce(o.getUsage()),_(2),w("ngIf",!o.usageCopied),_(1),w("ngIf",o.usageCopied),_(5),w("href",o.selectedPackage.url,ro),_(1),Ce(o.selectedPackage.name),_(1),w("ngForOf",o.selectedPackage.installOptions),_(4),Ce(o.getUsage()),_(2),w("ngIf",!o.usageCopied),_(1),w("ngIf",o.usageCopied))},dependencies:[ec,Xl,Ww,Yw,jo,Jl,bh,Ul,Bl,$o,Th,Cs,Bo,Ef,vl,ml,pn],styles:[".sticky[_ngcontent-%COMP%]{position:sticky;top:100px}"]}),t})(),title:"Usage",data:{canonical:"/usage"}},{path:"usage.html",redirectTo:"/usage"},{path:"pro",component:Z3,title:"PRO",data:{canonical:"/pro"}},{path:"pro.html",redirectTo:"/pro"},{path:"contact",component:r3,title:"Contact",data:{canonical:"/contact"}},{path:"contact.html",redirectTo:"/contact"},{path:"404",component:f3,title:"404 - Not found"},{path:"**",redirectTo:"/404"}];(function Zk(e,t){return BN({rootComponent:e,...$D(t)})})(xL,{providers:[xm(eF,(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[Xb.forRoot(Ej,{scrollPositionRestoration:"enabled",scrollOffset:[0,0],anchorScrolling:"enabled"}),Xb]}),t})(),ec),bE,wE,yE,function qV(...e){const t=[Nh,hE,dE,{provide:tc,useExisting:dE},{provide:nc,useExisting:hE},{provide:bs,useValue:zV,multi:!0},{provide:Oh,useValue:!0},{provide:mE,useClass:GV}];for(const r of e)t.push(...r.\u0275providers);return Ru(t)}(function WV(){return function Ar(e,t){return{\u0275kind:e,\u0275providers:t}}(or.LegacyInterceptors,[{provide:vE,useFactory:FV},{provide:bs,useExisting:vE,multi:!0}])}())]}).catch(e=>console.error(e))}},ue=>{ue(ue.s=603)}]); \ No newline at end of file diff --git a/global.json b/global.json index 01bc6de4..4ba42b95 100644 --- a/global.json +++ b/global.json @@ -1,6 +1,6 @@ { "sdk": { - "version": "7.0.401", + "version": "8.0.100-rc.2.23502.2", "rollForward": "latestMajor" } } \ No newline at end of file diff --git a/src/AzureDevopsTask/ReportGenerator/reportgenerator.ts b/src/AzureDevopsTask/ReportGenerator/reportgenerator.ts index efe58fcf..5a12b801 100644 --- a/src/AzureDevopsTask/ReportGenerator/reportgenerator.ts +++ b/src/AzureDevopsTask/ReportGenerator/reportgenerator.ts @@ -3,7 +3,7 @@ import tl = require('azure-pipelines-task-lib/task'); async function executeReportGenerator(): Promise { var tool = tl.tool('dotnet') - .arg(path.join(__dirname, 'tools/netcoreapp3.1/ReportGenerator.dll')) + .arg(path.join(__dirname, 'tools/net6.0/ReportGenerator.dll')) .arg('-reports:' + (tl.getInput('reports') || '')) .arg('-targetdir:' + (tl.getInput('targetdir') || '')) .arg('-reporttypes:' + (tl.getInput('reporttypes') || '')) diff --git a/src/AzureDevopsTask/ReportGenerator/task.json b/src/AzureDevopsTask/ReportGenerator/task.json index cef1813c..0c8e4e19 100644 --- a/src/AzureDevopsTask/ReportGenerator/task.json +++ b/src/AzureDevopsTask/ReportGenerator/task.json @@ -12,8 +12,8 @@ "author": "Palmmedia", "version": { "Major": 5, - "Minor": 1, - "Patch": 26 + "Minor": 2, + "Patch": 0 }, "instanceNameFormat": "ReportGenerator", "groups": [ diff --git a/src/AzureDevopsTask/vss-extension.json b/src/AzureDevopsTask/vss-extension.json index e1032db8..be6429a0 100644 --- a/src/AzureDevopsTask/vss-extension.json +++ b/src/AzureDevopsTask/vss-extension.json @@ -2,7 +2,7 @@ "manifestVersion": 1, "id": "reportgenerator", "name": "ReportGenerator", - "version": "5.1.26", + "version": "5.2.0", "publisher": "Palmmedia", "public": true, "targets": [ diff --git a/src/Deployment/chocolatey/reportgenerator.portable.nuspec b/src/Deployment/chocolatey/reportgenerator.portable.nuspec index 34dba008..f45af775 100644 --- a/src/Deployment/chocolatey/reportgenerator.portable.nuspec +++ b/src/Deployment/chocolatey/reportgenerator.portable.nuspec @@ -24,18 +24,15 @@ - - - - - - + + + diff --git a/src/Deployment/nuget/Readme_ReportGenerator.md b/src/Deployment/nuget/Readme_ReportGenerator.md index b8d12729..0b358b26 100644 --- a/src/Deployment/nuget/Readme_ReportGenerator.md +++ b/src/Deployment/nuget/Readme_ReportGenerator.md @@ -13,13 +13,13 @@ ReportGenerator converts coverage reports generated by coverlet, OpenCover, dotC ### .NET Core ``` -dotnet $(UserProfile)\.nuget\packages\reportgenerator\5.1.26\tools\net6.0\ReportGenerator.dll [options] -$(UserProfile)\.nuget\packages\reportgenerator\5.1.26\tools\net6.0\ReportGenerator.exe [options] +dotnet $(UserProfile)\.nuget\packages\reportgenerator\5.2.0\tools\net8.0\ReportGenerator.dll [options] +$(UserProfile)\.nuget\packages\reportgenerator\5.2.0\tools\net8.0\ReportGenerator.exe [options] ``` ### .NET Framework ``` -$(UserProfile)\.nuget\packages\reportgenerator\5.1.26\tools\net47\ReportGenerator.exe [options] +$(UserProfile)\.nuget\packages\reportgenerator\5.2.0\tools\net47\ReportGenerator.exe [options] ``` ## Additional information diff --git a/src/Deployment/nuget/Readme_dotnet-reportgenerator-globaltool.md b/src/Deployment/nuget/Readme_dotnet-reportgenerator-globaltool.md index d543df81..85727010 100644 --- a/src/Deployment/nuget/Readme_dotnet-reportgenerator-globaltool.md +++ b/src/Deployment/nuget/Readme_dotnet-reportgenerator-globaltool.md @@ -13,12 +13,12 @@ ReportGenerator converts coverage reports generated by coverlet, OpenCover, dotC ### Installation ``` -dotnet tool install --global dotnet-reportgenerator-globaltool --version 5.1.26 +dotnet tool install --global dotnet-reportgenerator-globaltool --version 5.2.0 -dotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version 5.1.26 +dotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version 5.2.0 dotnet new tool-manifest -dotnet tool install dotnet-reportgenerator-globaltool --version 5.1.26 +dotnet tool install dotnet-reportgenerator-globaltool --version 5.2.0 ``` ### Execution diff --git a/src/Deployment/nuget/ReportGenerator.Core.nuspec b/src/Deployment/nuget/ReportGenerator.Core.nuspec index a0b60e09..1b2b886c 100644 --- a/src/Deployment/nuget/ReportGenerator.Core.nuspec +++ b/src/Deployment/nuget/ReportGenerator.Core.nuspec @@ -52,22 +52,6 @@ https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage - - - - - - - - - - - - - - - - @@ -83,6 +67,14 @@ https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage + + + + + + + + diff --git a/src/Deployment/nuget/ReportGenerator.nuspec b/src/Deployment/nuget/ReportGenerator.nuspec index f78c7f97..b0766adc 100644 --- a/src/Deployment/nuget/ReportGenerator.nuspec +++ b/src/Deployment/nuget/ReportGenerator.nuspec @@ -17,8 +17,8 @@ Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script. Usage: -dotnet $(UserProfile)\.nuget\packages\reportgenerator\x.y.z\tools\net6.0\ReportGenerator.dll [options] -$(UserProfile)\.nuget\packages\reportgenerator\x.y.z\tools\net6.0\ReportGenerator.exe [options] +dotnet $(UserProfile)\.nuget\packages\reportgenerator\x.y.z\tools\net8.0\ReportGenerator.dll [options] +$(UserProfile)\.nuget\packages\reportgenerator\x.y.z\tools\net8.0\ReportGenerator.exe [options] $(UserProfile)\.nuget\packages\reportgenerator\x.y.z\tools\net47\ReportGenerator.exe [options] Readme.md en-US @@ -34,17 +34,14 @@ $(UserProfile)\.nuget\packages\reportgenerator\x.y.z\tools\net47\ReportGenerator - - - - - - - + + + + diff --git a/src/Deployment/nuget/ReportGenerator.props b/src/Deployment/nuget/ReportGenerator.props index c6141fc6..21342a1d 100644 --- a/src/Deployment/nuget/ReportGenerator.props +++ b/src/Deployment/nuget/ReportGenerator.props @@ -1,7 +1,7 @@ - $(MSBuildThisFileDirectory)..\..\tools\netcoreapp3.1\ReportGenerator.MSBuild.dll + $(MSBuildThisFileDirectory)..\..\tools\net6.0\ReportGenerator.MSBuild.dll $(MSBuildThisFileDirectory)..\..\tools\net47\ReportGenerator.MSBuild.dll diff --git a/src/Deployment/nuget/dotnet-reportgenerator-globaltool.nuspec b/src/Deployment/nuget/dotnet-reportgenerator-globaltool.nuspec index 37952a58..14b232a9 100644 --- a/src/Deployment/nuget/dotnet-reportgenerator-globaltool.nuspec +++ b/src/Deployment/nuget/dotnet-reportgenerator-globaltool.nuspec @@ -41,15 +41,7 @@ dotnet reportgenerator [options] - - - - - - - - - + @@ -57,5 +49,9 @@ dotnet reportgenerator [options] + + + + diff --git a/src/Readme.txt b/src/Readme.txt index 403a8944..e0fb6e9a 100644 --- a/src/Readme.txt +++ b/src/Readme.txt @@ -67,8 +67,9 @@ For further details take a look at LICENSE.txt. CHANGELOG -5.1.27.0 +5.2.0.0 + * New: Added support for .NET 8. Dropped support for .NET 3.1 and .NET 5.0 * New: #629 Visual Studio Coverage: Added support for partial line coverage 5.1.26.0 diff --git a/src/ReportGenerator.Console.NetCore/ReportGenerator.Console.NetCore.csproj b/src/ReportGenerator.Console.NetCore/ReportGenerator.Console.NetCore.csproj index 7fa9826d..ce464596 100644 --- a/src/ReportGenerator.Console.NetCore/ReportGenerator.Console.NetCore.csproj +++ b/src/ReportGenerator.Console.NetCore/ReportGenerator.Console.NetCore.csproj @@ -2,13 +2,13 @@ Exe - netcoreapp3.1;net5.0;net6.0;net7.0 + net6.0;net7.0;net8.0 ProgramIcon.ico ReportGenerator Palmmedia.ReportGenerator Palmmedia.ReportGenerator.Console.NetCore.Program - 5.1.26.0 - 5.1.26.0 + 5.2.0.0 + 5.2.0.0 diff --git a/src/ReportGenerator.Console/ReportGenerator.Console.Net.csproj b/src/ReportGenerator.Console/ReportGenerator.Console.Net.csproj index c6c3858e..aba5f25f 100644 --- a/src/ReportGenerator.Console/ReportGenerator.Console.Net.csproj +++ b/src/ReportGenerator.Console/ReportGenerator.Console.Net.csproj @@ -8,8 +8,8 @@ ReportGenerator.Console ReportGenerator.Console Copyright © 2022 - 5.1.26.0 - 5.1.26.0 + 5.2.0.0 + 5.2.0.0 bin\$(Configuration)\ false diff --git a/src/ReportGenerator.Core.Test/Parser/CoverageReportParserTest.cs b/src/ReportGenerator.Core.Test/Parser/CoverageReportParserTest.cs index 70126557..b1ff1953 100644 --- a/src/ReportGenerator.Core.Test/Parser/CoverageReportParserTest.cs +++ b/src/ReportGenerator.Core.Test/Parser/CoverageReportParserTest.cs @@ -43,65 +43,65 @@ public void ParseFiles_SingleReportFileWithSingleReport_CorrectParserIsReturned( string filePath = Path.Combine(FileManager.GetCSharpReportDirectory(), "NCover1.5.8.xml"); var parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("NCover", parserResult.ParserName); - Assert.Equal(0, parserResult.SourceDirectories.Count); + Assert.Empty(parserResult.SourceDirectories); filePath = Path.Combine(FileManager.GetCSharpReportDirectory(), "OpenCover.xml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("OpenCover", parserResult.ParserName); - Assert.Equal(0, parserResult.SourceDirectories.Count); + Assert.Empty(parserResult.SourceDirectories); filePath = Path.Combine(FileManager.GetCSharpReportDirectory(), "dotCover.xml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("DotCover", parserResult.ParserName); - Assert.Equal(0, parserResult.SourceDirectories.Count); + Assert.Empty(parserResult.SourceDirectories); filePath = Path.Combine(FileManager.GetCSharpReportDirectory(), "VisualStudio2010.coveragexml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("VisualStudio", parserResult.ParserName); - Assert.Equal(0, parserResult.SourceDirectories.Count); + Assert.Empty(parserResult.SourceDirectories); filePath = Path.Combine(FileManager.GetCSharpReportDirectory(), "DynamicCodeCoverage.xml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("DynamicCodeCoverage", parserResult.ParserName); - Assert.Equal(0, parserResult.SourceDirectories.Count); + Assert.Empty(parserResult.SourceDirectories); filePath = Path.Combine(FileManager.GetCSharpReportDirectory(), "mprof-report.xml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("MProf", parserResult.ParserName); - Assert.Equal(0, parserResult.SourceDirectories.Count); + Assert.Empty(parserResult.SourceDirectories); filePath = Path.Combine(FileManager.GetJavaReportDirectory(), "Cobertura2.1.1.xml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("Cobertura", parserResult.ParserName); - Assert.Equal(1, parserResult.SourceDirectories.Count); + Assert.Single(parserResult.SourceDirectories); Assert.Equal("C:/temp", parserResult.SourceDirectories.First()); filePath = Path.Combine(FileManager.GetCPlusPlusReportDirectory(), "Cobertura_CPPCoverage.xml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("Cobertura", parserResult.ParserName); - Assert.Equal(0, parserResult.SourceDirectories.Count); + Assert.Empty(parserResult.SourceDirectories); filePath = Path.Combine(FileManager.GetJavaReportDirectory(), "JaCoCo0.8.3.xml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("JaCoCo", parserResult.ParserName); - Assert.Equal(1, parserResult.SourceDirectories.Count); + Assert.Single(parserResult.SourceDirectories); Assert.Equal("C:\\somedirectory", parserResult.SourceDirectories.First()); filePath = Path.Combine(FileManager.GetJavaReportDirectory(), "Clover_OpenClover4.3.1.xml"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("Clover", parserResult.ParserName); - Assert.Equal(1, parserResult.SourceDirectories.Count); + Assert.Single(parserResult.SourceDirectories); Assert.Equal("C:\\somedirectory", parserResult.SourceDirectories.First()); filePath = Path.Combine(FileManager.GetCSharpReportDirectory(), "lcov.info"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("LCov", parserResult.ParserName); - Assert.Equal(0, parserResult.SourceDirectories.Count); + Assert.Empty(parserResult.SourceDirectories); filePath = Path.Combine(FileManager.GetCPlusPlusReportDirectory(), "gcov", "basic", "main.cpp.gcov"); parserResult = new CoverageReportParser(1, 1, new string[] { "C:\\somedirectory" }, this.filterMock.Object, this.filterMock.Object, this.filterMock.Object).ParseFiles(new string[] { filePath }); Assert.Equal("GCov", parserResult.ParserName); - Assert.Equal(1, parserResult.SourceDirectories.Count); + Assert.Single(parserResult.SourceDirectories); Assert.Equal("C:\\somedirectory", parserResult.SourceDirectories.First()); } diff --git a/src/ReportGenerator.Core.Test/Parser/ParserResultTest.cs b/src/ReportGenerator.Core.Test/Parser/ParserResultTest.cs index 4ea1507e..c6f93993 100644 --- a/src/ReportGenerator.Core.Test/Parser/ParserResultTest.cs +++ b/src/ReportGenerator.Core.Test/Parser/ParserResultTest.cs @@ -65,7 +65,7 @@ public void SupportsBranchCoverage() public void SourceDirectories() { var parserResult1 = new ParserResult(); - Assert.Equal(0, parserResult1.SourceDirectories.Count); + Assert.Empty(parserResult1.SourceDirectories); parserResult1.AddSourceDirectory("C:\\temp1"); parserResult1.AddSourceDirectory("C:\\temp2"); diff --git a/src/ReportGenerator.Core.Test/ReportConfigurationTest.cs b/src/ReportGenerator.Core.Test/ReportConfigurationTest.cs index 8a017e0d..fb6bfca8 100644 --- a/src/ReportGenerator.Core.Test/ReportConfigurationTest.cs +++ b/src/ReportGenerator.Core.Test/ReportConfigurationTest.cs @@ -41,8 +41,8 @@ public void InitByConstructor_AllDefaultValuesApplied() Assert.NotNull(configuration.ClassFilters); Assert.True(configuration.VerbosityLevelValid); - Assert.Equal(0, configuration.InvalidReportFilePatterns.Count); - Assert.Equal(0, configuration.SourceDirectories.Count); + Assert.Empty(configuration.InvalidReportFilePatterns); + Assert.Empty(configuration.SourceDirectories); } [Fact] @@ -81,7 +81,7 @@ public void InitByConstructor_AllPropertiesApplied() Assert.Equal("CustomTag", configuration.Tag); Assert.True(configuration.VerbosityLevelValid); - Assert.Equal(0, configuration.InvalidReportFilePatterns.Count); + Assert.Empty(configuration.InvalidReportFilePatterns); } [Fact] diff --git a/src/ReportGenerator.Core.Test/ReportGenerator.Core.Test.csproj b/src/ReportGenerator.Core.Test/ReportGenerator.Core.Test.csproj index c0a6a4ab..4c9924ef 100644 --- a/src/ReportGenerator.Core.Test/ReportGenerator.Core.Test.csproj +++ b/src/ReportGenerator.Core.Test/ReportGenerator.Core.Test.csproj @@ -4,8 +4,8 @@ net7.0 false Palmmedia.ReportGenerator.Core.Test - 5.1.26.0 - 5.1.26.0 + 5.2.0.0 + 5.2.0.0 false diff --git a/src/ReportGenerator.Core/ReportGenerator.Core.csproj b/src/ReportGenerator.Core/ReportGenerator.Core.csproj index 04a059b8..d50aa835 100644 --- a/src/ReportGenerator.Core/ReportGenerator.Core.csproj +++ b/src/ReportGenerator.Core/ReportGenerator.Core.csproj @@ -7,8 +7,8 @@ false true ReportGenerator.Core - 5.1.26.0 - 5.1.26.0 + 5.2.0.0 + 5.2.0.0 diff --git a/src/ReportGenerator.DotnetCorePluginLoader/ReportGenerator.DotnetCorePluginLoader.csproj b/src/ReportGenerator.DotnetCorePluginLoader/ReportGenerator.DotnetCorePluginLoader.csproj index 6d05b50e..812d64e7 100644 --- a/src/ReportGenerator.DotnetCorePluginLoader/ReportGenerator.DotnetCorePluginLoader.csproj +++ b/src/ReportGenerator.DotnetCorePluginLoader/ReportGenerator.DotnetCorePluginLoader.csproj @@ -1,9 +1,9 @@  - netcoreapp3.1;net5.0;net6.0;net7.0 + net6.0;net7.0;net8.0 ReportGenerator.DotnetCorePluginLoader - 5.1.26.0 - 5.1.26.0 + 5.2.0.0 + 5.2.0.0 True diff --git a/src/ReportGenerator.DotnetGlobalTool/ReportGenerator.DotnetGlobalTool.csproj b/src/ReportGenerator.DotnetGlobalTool/ReportGenerator.DotnetGlobalTool.csproj index d15a5db8..9a3158df 100644 --- a/src/ReportGenerator.DotnetGlobalTool/ReportGenerator.DotnetGlobalTool.csproj +++ b/src/ReportGenerator.DotnetGlobalTool/ReportGenerator.DotnetGlobalTool.csproj @@ -2,13 +2,13 @@ Exe - netcoreapp3.1;net5.0;net6.0;net7.0 + net6.0;net7.0;net8.0 ProgramIcon.ico ReportGenerator Palmmedia.ReportGenerator Palmmedia.ReportGenerator.DotnetGlobalTool.Program - 5.1.26.0 - 5.1.26.0 + 5.2.0.0 + 5.2.0.0 diff --git a/src/ReportGenerator.MSBuild/ReportGenerator.MSBuild.csproj b/src/ReportGenerator.MSBuild/ReportGenerator.MSBuild.csproj index 31a7fefb..4e36fc2a 100644 --- a/src/ReportGenerator.MSBuild/ReportGenerator.MSBuild.csproj +++ b/src/ReportGenerator.MSBuild/ReportGenerator.MSBuild.csproj @@ -5,8 +5,8 @@ Palmmedia.ReportGenerator.MSBuild false true - 5.1.26.0 - 5.1.26.0 + 5.2.0.0 + 5.2.0.0 diff --git a/src/build.proj b/src/build.proj index 248c1042..24441f3c 100644 --- a/src/build.proj +++ b/src/build.proj @@ -22,7 +22,7 @@ - 5.1.26 + 5.2.0 @@ -52,15 +52,13 @@ - - + - - + @@ -83,10 +81,9 @@ - - + @@ -94,10 +91,9 @@ - - + @@ -105,9 +101,9 @@ - - - + + + From 38a09d4eb109db81ae730521ca5ef13082878e16 Mon Sep 17 00:00:00 2001 From: Daniel Palme Date: Wed, 8 Nov 2023 22:07:09 +0100 Subject: [PATCH 2/6] Update Node version --- .github/workflows/ci.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c95c4514..64fea9ca 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -8,7 +8,7 @@ env: buildConfiguration: Release version: 5.2.0 dotnetSDKVersion: 8.0.100-rc.2.23502.2 - nodeVersion: 18 + nodeVersion: 20 jobs: build: From 11c4d4d7c5530052b5afcbfd69c767604c90eb59 Mon Sep 17 00:00:00 2001 From: Daniel Palme Date: Wed, 8 Nov 2023 22:09:36 +0100 Subject: [PATCH 3/6] Update Angular --- src/AngularComponents/angular.json | 6 +- src/AngularComponents/package-lock.json | 7057 +++++++++-------- src/AngularComponents/package.json | 26 +- .../Builders/Rendering/resources/main.js | 2 +- .../Builders/Rendering/resources/polyfills.js | 2 +- 5 files changed, 3851 insertions(+), 3242 deletions(-) diff --git a/src/AngularComponents/angular.json b/src/AngularComponents/angular.json index b2f398cb..6f668be4 100644 --- a/src/AngularComponents/angular.json +++ b/src/AngularComponents/angular.json @@ -91,10 +91,10 @@ "builder": "@angular-devkit/build-angular:dev-server", "configurations": { "production": { - "browserTarget": "coverage-app:build:production" + "buildTarget": "coverage-app:build:production" }, "development": { - "browserTarget": "coverage-app:build:development" + "buildTarget": "coverage-app:build:development" } }, "defaultConfiguration": "development" @@ -102,7 +102,7 @@ "extract-i18n": { "builder": "@angular-devkit/build-angular:extract-i18n", "options": { - "browserTarget": "coverage-app:build" + "buildTarget": "coverage-app:build" } } } diff --git a/src/AngularComponents/package-lock.json b/src/AngularComponents/package-lock.json index 34e887fe..4c0b7f8a 100644 --- a/src/AngularComponents/package-lock.json +++ b/src/AngularComponents/package-lock.json @@ -8,24 +8,24 @@ "name": "coverage-app", "version": "0.0.0", "dependencies": { - "@angular/animations": "^16.2.10", - "@angular/common": "^16.2.10", - "@angular/compiler": "^16.2.10", - "@angular/core": "^16.2.10", - "@angular/forms": "^16.2.10", - "@angular/platform-browser": "^16.2.10", - "@angular/platform-browser-dynamic": "^16.2.10", - "@angular/router": "^16.2.10", + "@angular/animations": "^17.0.1", + "@angular/common": "^17.0.1", + "@angular/compiler": "^17.0.1", + "@angular/core": "^17.0.1", + "@angular/forms": "^17.0.1", + "@angular/platform-browser": "^17.0.1", + "@angular/platform-browser-dynamic": "^17.0.1", + "@angular/router": "^17.0.1", "rxjs": "~7.4.0", "tslib": "^2.3.0", - "zone.js": "~0.13.0" + "zone.js": "~0.14.2" }, "devDependencies": { - "@angular-devkit/build-angular": "^16.2.7", - "@angular/cli": "^16.2.7", - "@angular/compiler-cli": "^16.2.10", + "@angular-devkit/build-angular": "^17.0.0", + "@angular/cli": "^17.0.0", + "@angular/compiler-cli": "^17.0.1", "@types/node": "^12.11.1", - "typescript": "~5.0.4" + "typescript": "~5.2.2" } }, "node_modules/@ampproject/remapping": { @@ -42,16 +42,16 @@ } }, "node_modules/@angular-devkit/architect": { - "version": "0.1602.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.7.tgz", - "integrity": "sha512-r6+z4jRE+e9VNeTmJCGz5VI5azRagOqE4SIDqaywz75eHOJ9UPSo9MHy8zFw1eLt1WcvCDqk+Pk9+krh2E+B8Q==", + "version": "0.1700.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1700.0.tgz", + "integrity": "sha512-whi7HvOjv1J3He9f+H8xNJWKyjAmWuWNl8gxNW6EZP/XLcrOu+/5QT4bPtXQBRIL/avZuc++5sNQS+kReaNCig==", "dev": true, "dependencies": { - "@angular-devkit/core": "16.2.7", + "@angular-devkit/core": "17.0.0", "rxjs": "7.8.1" }, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" } @@ -66,96 +66,97 @@ } }, "node_modules/@angular-devkit/build-angular": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.7.tgz", - "integrity": "sha512-OTH4qzXmWXifhvH0iXwPUhElWEU9SUcIZyWYbv2NR5ImAw/GE07vDuBljGRJeSEC9MpFbThwEFbHD8oRWiLUag==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-17.0.0.tgz", + "integrity": "sha512-hkV8k4moAnUquac2Dz5XPd5izDDgEF82NeUkSwizcTaqlJqYOdmWASMsXyVBzdrTmDtFKQiphfA96i7eo5MlvA==", "dev": true, "dependencies": { "@ampproject/remapping": "2.2.1", - "@angular-devkit/architect": "0.1602.7", - "@angular-devkit/build-webpack": "0.1602.7", - "@angular-devkit/core": "16.2.7", - "@babel/core": "7.22.9", - "@babel/generator": "7.22.9", + "@angular-devkit/architect": "0.1700.0", + "@angular-devkit/build-webpack": "0.1700.0", + "@angular-devkit/core": "17.0.0", + "@babel/core": "7.23.2", + "@babel/generator": "7.23.0", "@babel/helper-annotate-as-pure": "7.22.5", "@babel/helper-split-export-declaration": "7.22.6", - "@babel/plugin-proposal-async-generator-functions": "7.20.7", + "@babel/plugin-transform-async-generator-functions": "7.23.2", "@babel/plugin-transform-async-to-generator": "7.22.5", - "@babel/plugin-transform-runtime": "7.22.9", - "@babel/preset-env": "7.22.9", - "@babel/runtime": "7.22.6", - "@babel/template": "7.22.5", + "@babel/plugin-transform-runtime": "7.23.2", + "@babel/preset-env": "7.23.2", + "@babel/runtime": "7.23.2", "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "16.2.7", + "@ngtools/webpack": "17.0.0", "@vitejs/plugin-basic-ssl": "1.0.1", "ansi-colors": "4.1.3", - "autoprefixer": "10.4.14", + "autoprefixer": "10.4.16", "babel-loader": "9.1.3", "babel-plugin-istanbul": "6.1.1", + "browser-sync": "2.29.3", "browserslist": "^4.21.5", "chokidar": "3.5.3", "copy-webpack-plugin": "11.0.0", "critters": "0.0.20", "css-loader": "6.8.1", - "esbuild-wasm": "0.18.17", + "esbuild-wasm": "0.19.5", "fast-glob": "3.3.1", - "guess-parser": "0.4.22", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", + "http-proxy-middleware": "2.0.6", + "https-proxy-agent": "7.0.2", + "inquirer": "9.2.11", "jsonc-parser": "3.2.0", "karma-source-map-support": "1.4.0", - "less": "4.1.3", + "less": "4.2.0", "less-loader": "11.1.0", "license-webpack-plugin": "4.0.2", "loader-utils": "3.2.1", - "magic-string": "0.30.1", + "magic-string": "0.30.5", "mini-css-extract-plugin": "2.7.6", "mrmime": "1.0.1", "open": "8.4.2", "ora": "5.4.1", "parse5-html-rewriting-stream": "7.0.0", - "picomatch": "2.3.1", - "piscina": "4.0.0", + "picomatch": "3.0.1", + "piscina": "4.1.0", "postcss": "8.4.31", "postcss-loader": "7.3.3", "resolve-url-loader": "5.0.0", "rxjs": "7.8.1", - "sass": "1.64.1", + "sass": "1.69.5", "sass-loader": "13.3.2", "semver": "7.5.4", "source-map-loader": "4.0.1", "source-map-support": "0.5.21", - "terser": "5.19.2", + "terser": "5.24.0", "text-table": "0.2.0", "tree-kill": "1.2.2", - "tslib": "2.6.1", - "vite": "4.4.7", - "webpack": "5.88.2", + "tslib": "2.6.2", + "undici": "5.27.2", + "vite": "4.5.0", + "webpack": "5.89.0", "webpack-dev-middleware": "6.1.1", "webpack-dev-server": "4.15.1", - "webpack-merge": "5.9.0", + "webpack-merge": "5.10.0", "webpack-subresource-integrity": "5.1.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, "optionalDependencies": { - "esbuild": "0.18.17" + "esbuild": "0.19.5" }, "peerDependencies": { - "@angular/compiler-cli": "^16.0.0", - "@angular/localize": "^16.0.0", - "@angular/platform-server": "^16.0.0", - "@angular/service-worker": "^16.0.0", + "@angular/compiler-cli": "^17.0.0", + "@angular/localize": "^17.0.0", + "@angular/platform-server": "^17.0.0", + "@angular/service-worker": "^17.0.0", "jest": "^29.5.0", "jest-environment-jsdom": "^29.5.0", "karma": "^6.3.0", - "ng-packagr": "^16.0.0", + "ng-packagr": "^17.0.0", "protractor": "^7.0.0", "tailwindcss": "^2.0.0 || ^3.0.0", - "typescript": ">=4.9.3 <5.2" + "typescript": ">=5.2 <5.3" }, "peerDependenciesMeta": { "@angular/localize": { @@ -187,45 +188,6 @@ } } }, - "node_modules/@angular-devkit/build-angular/node_modules/@babel/core": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", - "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.9", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.6", - "@babel/parser": "^7.22.7", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.8", - "@babel/types": "^7.22.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.1" - }, - "engines": { - "node": ">=6.9.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/babel" - } - }, - "node_modules/@angular-devkit/build-angular/node_modules/@babel/core/node_modules/semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true, - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/@angular-devkit/build-angular/node_modules/@esbuild/android-arm": { "version": "0.18.17", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", @@ -635,6 +597,18 @@ "@esbuild/win32-x64": "0.18.17" } }, + "node_modules/@angular-devkit/build-angular/node_modules/picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/@angular-devkit/build-angular/node_modules/rxjs": { "version": "7.8.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", @@ -660,14 +634,14 @@ } }, "node_modules/@angular-devkit/build-angular/node_modules/vite": { - "version": "4.4.7", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz", - "integrity": "sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz", + "integrity": "sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==", "dev": true, "dependencies": { "esbuild": "^0.18.10", - "postcss": "^8.4.26", - "rollup": "^3.25.2" + "postcss": "^8.4.27", + "rollup": "^3.27.1" }, "bin": { "vite": "bin/vite.js" @@ -715,16 +689,16 @@ } }, "node_modules/@angular-devkit/build-webpack": { - "version": "0.1602.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.7.tgz", - "integrity": "sha512-3+MV9ehn65XUUMSBBgfg5K2zZs2jhif75ypI+BBUfZDUWeKR5MeGJy0aDHZ+2H94kPkmSD3PrkOuitWdnDjTgA==", + "version": "0.1700.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1700.0.tgz", + "integrity": "sha512-Hx9JUb32gigsHlbBZJ5sw3q3H7qHeX8HTh4aIq4Glvb/5e+HgPlclVSIA5BY2ZYatHixU+CUAXRmcIKxViS02Q==", "dev": true, "dependencies": { - "@angular-devkit/architect": "0.1602.7", + "@angular-devkit/architect": "0.1700.0", "rxjs": "7.8.1" }, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, @@ -743,20 +717,20 @@ } }, "node_modules/@angular-devkit/core": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.7.tgz", - "integrity": "sha512-XskObYrg7NRdEuHnSVZOM7OeinEL8HzugjmKnawAa+dAbFCCoGsVWjMliA/Q8sb1yfGkyL0WW7DZABZj7EGwWA==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.0.0.tgz", + "integrity": "sha512-QUu3LnEi4A8t733v2+I0sLtyBJx3Q7zdTAhaauCbxbFhDid0cbYm8hYsyG/njor1irTPxSJbn6UoetVkwUQZxg==", "dev": true, "dependencies": { "ajv": "8.12.0", "ajv-formats": "2.1.1", "jsonc-parser": "3.2.0", - "picomatch": "2.3.1", + "picomatch": "3.0.1", "rxjs": "7.8.1", "source-map": "0.7.4" }, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, @@ -769,6 +743,18 @@ } } }, + "node_modules/@angular-devkit/core/node_modules/picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, "node_modules/@angular-devkit/core/node_modules/rxjs": { "version": "7.8.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", @@ -779,19 +765,19 @@ } }, "node_modules/@angular-devkit/schematics": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-16.2.7.tgz", - "integrity": "sha512-zu3xHwA4w+kXHkyyjGl3i7uSU2/kKLPKuyyixw0WLcKUQCYd7TWmu8OC0qCDa42XkxP9gGL091dJFu56exgneA==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.0.0.tgz", + "integrity": "sha512-LD7fjDORuBf139/oJ/gSwbIzQPfsm6Y67s1FD+XLi0QXaRt6dw4r7BMD08l1r//oPQofNgbEH4coGVO4NdCL/A==", "dev": true, "dependencies": { - "@angular-devkit/core": "16.2.7", + "@angular-devkit/core": "17.0.0", "jsonc-parser": "3.2.0", - "magic-string": "0.30.1", + "magic-string": "0.30.5", "ora": "5.4.1", "rxjs": "7.8.1" }, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" } @@ -806,40 +792,40 @@ } }, "node_modules/@angular/animations": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-16.2.10.tgz", - "integrity": "sha512-UudunZoyFWWNpuWkwiBxC3cleLCVJGHIfMgypFwC35YjtiIlRJ0r4nVkc96Rq1xd4mT71Dbk1kQHc8urB8A7aw==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-17.0.1.tgz", + "integrity": "sha512-Uee6E8zyU6XjDfKFozybcf+JZy0nUFQ1bUEmRwFP5HvYJSSJ5YiUDokNiVxyn9znwZ7zKHlM6Bq9ZY9cCmeKKQ==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/core": "16.2.10" + "@angular/core": "17.0.1" } }, "node_modules/@angular/cli": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-16.2.7.tgz", - "integrity": "sha512-30yBAYzbrj/WM4tLiX4IU5byw0b5Y5LEzcpjYZglv/RXPrnevGlRXmgCulpt8wIdkd668N7kXEQ23nipuJDXMg==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-17.0.0.tgz", + "integrity": "sha512-VzKYmN+1wSE2wLBEFu/NHSrRQbeaKkEDO9aZxd7nAnxC5T1Zcva7dfqZIXMHXH2HESYAZCvOS8ikBE/7DCtWWw==", "dev": true, "dependencies": { - "@angular-devkit/architect": "0.1602.7", - "@angular-devkit/core": "16.2.7", - "@angular-devkit/schematics": "16.2.7", - "@schematics/angular": "16.2.7", + "@angular-devkit/architect": "0.1700.0", + "@angular-devkit/core": "17.0.0", + "@angular-devkit/schematics": "17.0.0", + "@schematics/angular": "17.0.0", "@yarnpkg/lockfile": "1.1.0", "ansi-colors": "4.1.3", "ini": "4.1.1", - "inquirer": "8.2.4", + "inquirer": "9.2.11", "jsonc-parser": "3.2.0", - "npm-package-arg": "10.1.0", - "npm-pick-manifest": "8.0.1", + "npm-package-arg": "11.0.1", + "npm-pick-manifest": "9.0.0", "open": "8.4.2", "ora": "5.4.1", - "pacote": "15.2.0", - "resolve": "1.22.2", + "pacote": "17.0.4", + "resolve": "1.22.8", "semver": "7.5.4", "symbol-observable": "4.0.0", "yargs": "17.7.2" @@ -848,7 +834,7 @@ "ng": "bin/ng.js" }, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" } @@ -869,32 +855,32 @@ } }, "node_modules/@angular/common": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-16.2.10.tgz", - "integrity": "sha512-cLth66aboInNcWFjDBRmK30jC5KN10nKDDcv4U/r3TDTBpKOtnmTjNFFr7dmjfUmVhHFy/66piBMfpjZI93Rxg==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-17.0.1.tgz", + "integrity": "sha512-AvvhZc+PhX5lVEW/Vorxe3Zf1rIEJJvfduRuRv+nsjijo3ZGjdgYjTYEx4ighZgH60RLIAuwyBE24gPkT2Pm7g==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/core": "16.2.10", + "@angular/core": "17.0.1", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/compiler": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.10.tgz", - "integrity": "sha512-ty6SfqkZlV2bLU/SSi3wmxrEFgPrK+WVslCNIr3FlTnCBdqpIbadHN2QB3A1d9XaNc7c4Tq5DQKh34cwMwNbuw==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-17.0.1.tgz", + "integrity": "sha512-qlKqCvjoxPHJ1e8+UMaBl/n9zzrmGXI5eWMVhULSvQnQvPWkwNlUh5XFeoSFcTEQxORjaO2/08Z31DmTJAqlPA==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/core": "16.2.10" + "@angular/core": "17.0.1" }, "peerDependenciesMeta": { "@angular/core": { @@ -903,9 +889,9 @@ } }, "node_modules/@angular/compiler-cli": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.10.tgz", - "integrity": "sha512-swgmtm4R23vQV9nJTXdDEFpOyIw3kz80mdT9qo3VId/2rqenOK253JsFypoqEj/fKzjV9gwXtTbmrMlhVyuyxw==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-17.0.1.tgz", + "integrity": "sha512-Rnvh2V2CYhG7NR5VI4cESGKk9jyqLat0HoqXa06v3TtbjkiZyjjwh0SyZ8NYOBMkQeWiQTHGcgxGvjKD3L3qqA==", "dev": true, "dependencies": { "@babel/core": "7.23.2", @@ -923,59 +909,59 @@ "ngcc": "bundles/ngcc/index.js" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/compiler": "16.2.10", - "typescript": ">=4.9.3 <5.2" + "@angular/compiler": "17.0.1", + "typescript": ">=5.2 <5.3" } }, "node_modules/@angular/core": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.10.tgz", - "integrity": "sha512-0XTsPjNflFhOl2CfNEdGeDOklG2t+m/D3g10Y7hg9dBjC1dURUEqTmM4d6J7JNbBURrP+/iP7uLsn3WRSipGUw==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-17.0.1.tgz", + "integrity": "sha512-yVwU+oz0G8g6Q5ORyOCpgqMPdSiCdfW+uQhjI37WROnXHja3jY843AqrYTKE6mMx1r6q9h1wbDy+x2E61OWP7A==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { "rxjs": "^6.5.3 || ^7.4.0", - "zone.js": "~0.13.0" + "zone.js": "~0.14.0" } }, "node_modules/@angular/forms": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-16.2.10.tgz", - "integrity": "sha512-TZliEtSWIL1UzY8kjed4QcMawWS8gk/H60KVgzCh83NGE0wd1OGv20Z5OR7O8j07dxB9vaxY7CQz/8eCz5KaNQ==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-17.0.1.tgz", + "integrity": "sha512-FpmUf2kgzwZXVbFB4VrwbnrO0m88QLUBsDsbLfQVQQwb7KxwSaftUu/aIrjst1gFCdl9k0Vqtrq2gwLZKzdSGQ==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/common": "16.2.10", - "@angular/core": "16.2.10", - "@angular/platform-browser": "16.2.10", + "@angular/common": "17.0.1", + "@angular/core": "17.0.1", + "@angular/platform-browser": "17.0.1", "rxjs": "^6.5.3 || ^7.4.0" } }, "node_modules/@angular/platform-browser": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-16.2.10.tgz", - "integrity": "sha512-TOZiK7ji550F8G39Ri255NnK1+2Xlr74RiElJdQct4TzfN0lqNf2KRDFFNwDohkP/78FUzcP4qBxs+Nf8M7OuQ==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-17.0.1.tgz", + "integrity": "sha512-JpvU0YDEM5KYdHtxC0Kdzk/hdwvZPq5vju5lTmIjTVa2OOabApOrQ6cq1MpKlrvjv1rw8MClHIM0l5Y0g9KH5g==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/animations": "16.2.10", - "@angular/common": "16.2.10", - "@angular/core": "16.2.10" + "@angular/animations": "17.0.1", + "@angular/common": "17.0.1", + "@angular/core": "17.0.1" }, "peerDependenciesMeta": { "@angular/animations": { @@ -984,36 +970,36 @@ } }, "node_modules/@angular/platform-browser-dynamic": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-16.2.10.tgz", - "integrity": "sha512-YVmhAjOmsp2SWRonv6Mr/qXuKroCiew9asd1IlAZ//wqcml9ZrNAcX3WlDa8ZqdmOplQb0LuvvirfNB/6Is/jg==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-17.0.1.tgz", + "integrity": "sha512-xEcbB/ukXc65LaX4JBQYEM7D5Z8LcUIZniSJFneY7deZt3wNiKgmPZrPoXUyDV26QULh7N0IADEzvbcMF60AFQ==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/common": "16.2.10", - "@angular/compiler": "16.2.10", - "@angular/core": "16.2.10", - "@angular/platform-browser": "16.2.10" + "@angular/common": "17.0.1", + "@angular/compiler": "17.0.1", + "@angular/core": "17.0.1", + "@angular/platform-browser": "17.0.1" } }, "node_modules/@angular/router": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-16.2.10.tgz", - "integrity": "sha512-ndiq2NkGZ8hTsyL/KK8qsiR3UA0NjOFIn1jtGXOKtHryXZ6vSTtkhtkE4h4+G6/QNTL1IKtocFhOQt/xsc7DUA==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-17.0.1.tgz", + "integrity": "sha512-73PCDDsRAjemODMRndZhwEN6Tb9rVVbDfMWgLQ4HgfgKnjek8P9BoYf8rOf3qV5fXf3c1Sm9MmKtaPv+l5lU9Q==", "dependencies": { "tslib": "^2.3.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0" + "node": "^18.13.0 || >=20.9.0" }, "peerDependencies": { - "@angular/common": "16.2.10", - "@angular/core": "16.2.10", - "@angular/platform-browser": "16.2.10", + "@angular/common": "17.0.1", + "@angular/core": "17.0.1", + "@angular/platform-browser": "17.0.1", "rxjs": "^6.5.3 || ^7.4.0" } }, @@ -1037,9 +1023,9 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", "dev": true, "engines": { "node": ">=6.9.0" @@ -1075,35 +1061,6 @@ "url": "https://opencollective.com/babel" } }, - "node_modules/@babel/core/node_modules/@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, - "node_modules/@babel/core/node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/core/node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -1120,12 +1077,12 @@ } }, "node_modules/@babel/generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", - "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -1147,12 +1104,12 @@ } }, "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", - "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", "dev": true, "dependencies": { - "@babel/types": "^7.22.10" + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -1199,15 +1156,15 @@ "dev": true }, "node_modules/@babel/helper-create-class-features-plugin": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", - "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz", + "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.15", "@babel/helper-optimise-call-expression": "^7.22.5", "@babel/helper-replace-supers": "^7.22.9", "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", @@ -1231,9 +1188,9 @@ } }, "node_modules/@babel/helper-create-regexp-features-plugin": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", - "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", @@ -1257,9 +1214,9 @@ } }, "node_modules/@babel/helper-define-polyfill-provider": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", - "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz", + "integrity": "sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==", "dev": true, "dependencies": { "@babel/helper-compilation-targets": "^7.22.6", @@ -1294,20 +1251,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helper-function-name/node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/helper-hoist-variables": { "version": "7.22.5", "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz", @@ -1321,12 +1264,12 @@ } }, "node_modules/@babel/helper-member-expression-to-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", - "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", "dev": true, "dependencies": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.23.0" }, "engines": { "node": ">=6.9.0" @@ -1385,14 +1328,14 @@ } }, "node_modules/@babel/helper-remap-async-to-generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", - "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-wrap-function": "^7.22.9" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -1402,13 +1345,13 @@ } }, "node_modules/@babel/helper-replace-supers": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", - "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz", + "integrity": "sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.22.15", "@babel/helper-optimise-call-expression": "^7.22.5" }, "engines": { @@ -1482,14 +1425,14 @@ } }, "node_modules/@babel/helper-wrap-function": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", - "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", "dev": true, "dependencies": { "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.10" + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" }, "engines": { "node": ">=6.9.0" @@ -1509,20 +1452,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/helpers/node_modules/@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "dependencies": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/highlight": { "version": "7.22.20", "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", @@ -1550,9 +1479,9 @@ } }, "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", - "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.15.tgz", + "integrity": "sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -1565,14 +1494,14 @@ } }, "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", - "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.15.tgz", + "integrity": "sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.5" + "@babel/plugin-transform-optional-chaining": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -1581,24 +1510,6 @@ "@babel/core": "^7.13.0" } }, - "node_modules/@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dev": true, - "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" - }, - "engines": { - "node": ">=6.9.0" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-proposal-private-property-in-object": { "version": "7.21.0-placeholder-for-preset-env.2", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz", @@ -1611,22 +1522,6 @@ "@babel/core": "^7.0.0-0" } }, - "node_modules/@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "dependencies": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - }, - "engines": { - "node": ">=4" - }, - "peerDependencies": { - "@babel/core": "^7.0.0-0" - } - }, "node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", @@ -1878,14 +1773,14 @@ } }, "node_modules/@babel/plugin-transform-async-generator-functions": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", - "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.2.tgz", + "integrity": "sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/helper-remap-async-to-generator": "^7.22.20", "@babel/plugin-syntax-async-generators": "^7.8.4" }, "engines": { @@ -1928,9 +1823,9 @@ } }, "node_modules/@babel/plugin-transform-block-scoping": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", - "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.0.tgz", + "integrity": "sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -1959,12 +1854,12 @@ } }, "node_modules/@babel/plugin-transform-class-static-block": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", - "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz", + "integrity": "sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==", "dev": true, "dependencies": { - "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-class-static-block": "^7.14.5" }, @@ -1976,18 +1871,18 @@ } }, "node_modules/@babel/plugin-transform-classes": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", - "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.15.tgz", + "integrity": "sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", "@babel/helper-optimise-call-expression": "^7.22.5", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", "@babel/helper-split-export-declaration": "^7.22.6", "globals": "^11.1.0" }, @@ -2015,9 +1910,9 @@ } }, "node_modules/@babel/plugin-transform-destructuring": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", - "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.0.tgz", + "integrity": "sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -2061,9 +1956,9 @@ } }, "node_modules/@babel/plugin-transform-dynamic-import": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", - "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz", + "integrity": "sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -2093,9 +1988,9 @@ } }, "node_modules/@babel/plugin-transform-export-namespace-from": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", - "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz", + "integrity": "sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -2109,9 +2004,9 @@ } }, "node_modules/@babel/plugin-transform-for-of": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", - "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.15.tgz", + "integrity": "sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -2141,9 +2036,9 @@ } }, "node_modules/@babel/plugin-transform-json-strings": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", - "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz", + "integrity": "sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -2172,9 +2067,9 @@ } }, "node_modules/@babel/plugin-transform-logical-assignment-operators": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", - "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz", + "integrity": "sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -2203,12 +2098,12 @@ } }, "node_modules/@babel/plugin-transform-modules-amd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", - "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.0.tgz", + "integrity": "sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5" }, "engines": { @@ -2219,12 +2114,12 @@ } }, "node_modules/@babel/plugin-transform-modules-commonjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", - "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.0.tgz", + "integrity": "sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==", "dev": true, "dependencies": { - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-simple-access": "^7.22.5" }, @@ -2236,15 +2131,15 @@ } }, "node_modules/@babel/plugin-transform-modules-systemjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", - "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.0.tgz", + "integrity": "sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==", "dev": true, "dependencies": { "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5" + "@babel/helper-validator-identifier": "^7.22.20" }, "engines": { "node": ">=6.9.0" @@ -2301,9 +2196,9 @@ } }, "node_modules/@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", - "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz", + "integrity": "sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -2317,9 +2212,9 @@ } }, "node_modules/@babel/plugin-transform-numeric-separator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", - "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz", + "integrity": "sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -2333,16 +2228,16 @@ } }, "node_modules/@babel/plugin-transform-object-rest-spread": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", - "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.15.tgz", + "integrity": "sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.22.5" + "@babel/plugin-transform-parameters": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -2368,9 +2263,9 @@ } }, "node_modules/@babel/plugin-transform-optional-catch-binding": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", - "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz", + "integrity": "sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -2384,9 +2279,9 @@ } }, "node_modules/@babel/plugin-transform-optional-chaining": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", - "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.0.tgz", + "integrity": "sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5", @@ -2401,9 +2296,9 @@ } }, "node_modules/@babel/plugin-transform-parameters": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", - "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz", + "integrity": "sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.22.5" @@ -2432,13 +2327,13 @@ } }, "node_modules/@babel/plugin-transform-private-property-in-object": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", - "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz", + "integrity": "sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==", "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-private-property-in-object": "^7.14.5" }, @@ -2496,16 +2391,16 @@ } }, "node_modules/@babel/plugin-transform-runtime": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.9.tgz", - "integrity": "sha512-9KjBH61AGJetCPYp/IEyLEp47SyybZb0nDRpBvmtEkm+rUIwxdlKpyNHI1TmsGkeuLclJdleQHRZ8XLBnnh8CQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.2.tgz", + "integrity": "sha512-XOntj6icgzMS58jPVtQpiuF6ZFWxQiJavISGx5KGjRj+3gqZr8+N6Kx+N9BApWzgS+DOjIZfXXj0ZesenOWDyA==", "dev": true, "dependencies": { - "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", - "babel-plugin-polyfill-corejs2": "^0.4.4", - "babel-plugin-polyfill-corejs3": "^0.8.2", - "babel-plugin-polyfill-regenerator": "^0.5.1", + "babel-plugin-polyfill-corejs2": "^0.4.6", + "babel-plugin-polyfill-corejs3": "^0.8.5", + "babel-plugin-polyfill-regenerator": "^0.5.3", "semver": "^6.3.1" }, "engines": { @@ -2664,17 +2559,17 @@ } }, "node_modules/@babel/preset-env": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz", - "integrity": "sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.2.tgz", + "integrity": "sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.9", + "@babel/compat-data": "^7.23.2", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.15", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.15", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", @@ -2695,58 +2590,58 @@ "@babel/plugin-syntax-top-level-await": "^7.14.5", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", "@babel/plugin-transform-arrow-functions": "^7.22.5", - "@babel/plugin-transform-async-generator-functions": "^7.22.7", + "@babel/plugin-transform-async-generator-functions": "^7.23.2", "@babel/plugin-transform-async-to-generator": "^7.22.5", "@babel/plugin-transform-block-scoped-functions": "^7.22.5", - "@babel/plugin-transform-block-scoping": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.23.0", "@babel/plugin-transform-class-properties": "^7.22.5", - "@babel/plugin-transform-class-static-block": "^7.22.5", - "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-class-static-block": "^7.22.11", + "@babel/plugin-transform-classes": "^7.22.15", "@babel/plugin-transform-computed-properties": "^7.22.5", - "@babel/plugin-transform-destructuring": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.23.0", "@babel/plugin-transform-dotall-regex": "^7.22.5", "@babel/plugin-transform-duplicate-keys": "^7.22.5", - "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.11", "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.5", - "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.11", + "@babel/plugin-transform-for-of": "^7.22.15", "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.11", "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.11", "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.23.0", + "@babel/plugin-transform-modules-commonjs": "^7.23.0", + "@babel/plugin-transform-modules-systemjs": "^7.23.0", "@babel/plugin-transform-modules-umd": "^7.22.5", "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", "@babel/plugin-transform-new-target": "^7.22.5", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", - "@babel/plugin-transform-numeric-separator": "^7.22.5", - "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.11", + "@babel/plugin-transform-numeric-separator": "^7.22.11", + "@babel/plugin-transform-object-rest-spread": "^7.22.15", "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.6", - "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.11", + "@babel/plugin-transform-optional-chaining": "^7.23.0", + "@babel/plugin-transform-parameters": "^7.22.15", "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.11", "@babel/plugin-transform-property-literals": "^7.22.5", - "@babel/plugin-transform-regenerator": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.10", "@babel/plugin-transform-reserved-words": "^7.22.5", "@babel/plugin-transform-shorthand-properties": "^7.22.5", "@babel/plugin-transform-spread": "^7.22.5", "@babel/plugin-transform-sticky-regex": "^7.22.5", "@babel/plugin-transform-template-literals": "^7.22.5", "@babel/plugin-transform-typeof-symbol": "^7.22.5", - "@babel/plugin-transform-unicode-escapes": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.10", "@babel/plugin-transform-unicode-property-regex": "^7.22.5", "@babel/plugin-transform-unicode-regex": "^7.22.5", "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.22.5", - "babel-plugin-polyfill-corejs2": "^0.4.4", - "babel-plugin-polyfill-corejs3": "^0.8.2", - "babel-plugin-polyfill-regenerator": "^0.5.1", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "@babel/types": "^7.23.0", + "babel-plugin-polyfill-corejs2": "^0.4.6", + "babel-plugin-polyfill-corejs3": "^0.8.5", + "babel-plugin-polyfill-regenerator": "^0.5.3", "core-js-compat": "^3.31.0", "semver": "^6.3.1" }, @@ -2767,14 +2662,12 @@ } }, "node_modules/@babel/preset-modules": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", - "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", "@babel/types": "^7.4.4", "esutils": "^2.0.2" }, @@ -2789,26 +2682,26 @@ "dev": true }, "node_modules/@babel/runtime": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", - "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.2.tgz", + "integrity": "sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==", "dev": true, "dependencies": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" }, "engines": { "node": ">=6.9.0" @@ -2835,21 +2728,6 @@ "node": ">=6.9.0" } }, - "node_modules/@babel/traverse/node_modules/@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", - "dev": true, - "dependencies": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - }, - "engines": { - "node": ">=6.9.0" - } - }, "node_modules/@babel/types": { "version": "7.23.0", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.23.0.tgz", @@ -2873,6 +2751,15 @@ "node": ">=10.0.0" } }, + "node_modules/@fastify/busboy": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.0.0.tgz", + "integrity": "sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==", + "dev": true, + "engines": { + "node": ">=14" + } + }, "node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -3058,19 +2945,31 @@ "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", "dev": true }, + "node_modules/@ljharb/through": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/@ljharb/through/-/through-2.3.11.tgz", + "integrity": "sha512-ccfcIDlogiXNq5KcbAwbaO7lMh3Tm1i3khMPYpxlK8hH/W53zN81KM9coerRLOnTGu3nfXIniAmQbRI9OxbC0w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/@ngtools/webpack": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.7.tgz", - "integrity": "sha512-QnVoYpMNMuV387VgmP/c/ylD9qUIZpN02LMg3rQqz7NDej0jboBZaxqLJ+7jQaCoEIFVGIgL/RR/X1kponxJZg==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-17.0.0.tgz", + "integrity": "sha512-/Bb5MXlphNp3UDsQDa4EB4AwpF4D/plrCPd5YGfVvD43j5g5Rpen+cqz5jai1zfAkF1dPl2qq0nRp/jwmJO3uA==", "dev": true, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" }, "peerDependencies": { - "@angular/compiler-cli": "^16.0.0", - "typescript": ">=4.9.3 <5.2", + "@angular/compiler-cli": "^17.0.0", + "typescript": ">=5.2 <5.3", "webpack": "^5.54.0" } }, @@ -3109,6 +3008,31 @@ "node": ">= 8" } }, + "node_modules/@npmcli/agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.0.tgz", + "integrity": "sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==", + "dev": true, + "dependencies": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, + "node_modules/@npmcli/agent/node_modules/lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "dev": true, + "engines": { + "node": "14 || >=16.14" + } + }, "node_modules/@npmcli/fs": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", @@ -3122,31 +3046,31 @@ } }, "node_modules/@npmcli/git": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", - "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.3.tgz", + "integrity": "sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==", "dev": true, "dependencies": { - "@npmcli/promise-spawn": "^6.0.0", - "lru-cache": "^7.4.4", - "npm-pick-manifest": "^8.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", "proc-log": "^3.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@npmcli/git/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true, "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/@npmcli/installed-package-contents": { @@ -3175,31 +3099,31 @@ } }, "node_modules/@npmcli/promise-spawn": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", - "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.0.tgz", + "integrity": "sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==", "dev": true, "dependencies": { - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@npmcli/run-script": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", - "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.2.tgz", + "integrity": "sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==", "dev": true, "dependencies": { "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", - "node-gyp": "^9.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "node-gyp": "^10.0.0", "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" + "which": "^4.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@pkgjs/parseargs": { @@ -3213,72 +3137,95 @@ } }, "node_modules/@schematics/angular": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-16.2.7.tgz", - "integrity": "sha512-sL+7vmwYPdo29rp99XYlm8gibqcjjOL5LKEleVQlv63SRES3HLMt7DeYivUfizcMENu/1hDtX41ig4Mu1SpNzg==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-17.0.0.tgz", + "integrity": "sha512-9jKU5x/WzaBsfSkUowK1X74FqtMXa6+A60XgW4ACO8i6fwKfPeS+tIrAieeYOX80/njBh7I5CvcpHmWA2SbcXQ==", "dev": true, "dependencies": { - "@angular-devkit/core": "16.2.7", - "@angular-devkit/schematics": "16.2.7", + "@angular-devkit/core": "17.0.0", + "@angular-devkit/schematics": "17.0.0", "jsonc-parser": "3.2.0" }, "engines": { - "node": "^16.14.0 || >=18.10.0", + "node": "^18.13.0 || >=20.9.0", "npm": "^6.11.0 || ^7.5.6 || >=8.0.0", "yarn": ">= 1.13.0" } }, + "node_modules/@sigstore/bundle": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.0.tgz", + "integrity": "sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==", + "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.1" + }, + "engines": { + "node": "^16.14.0 || >=18.0.0" + } + }, "node_modules/@sigstore/protobuf-specs": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.1.0.tgz", - "integrity": "sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", "dev": true, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@sigstore/tuf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.2.tgz", - "integrity": "sha512-vjwcYePJzM01Ha6oWWZ9gNcdIgnzyFxfqfWzph483DPJTH8Tb7f7bQRRll3CYVkyH56j0AgcPAcl6Vg95DPF+Q==", + "node_modules/@sigstore/sign": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.0.tgz", + "integrity": "sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==", "dev": true, "dependencies": { - "@sigstore/protobuf-specs": "^0.1.0", - "tuf-js": "^1.1.7" + "@sigstore/bundle": "^2.1.0", + "@sigstore/protobuf-specs": "^0.2.1", + "make-fetch-happen": "^13.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, - "node_modules/@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "node_modules/@sigstore/tuf": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", + "integrity": "sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==", "dev": true, + "dependencies": { + "@sigstore/protobuf-specs": "^0.2.1", + "tuf-js": "^2.1.0" + }, "engines": { - "node": ">= 10" + "node": "^16.14.0 || >=18.0.0" } }, + "node_modules/@socket.io/component-emitter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", + "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==", + "dev": true + }, "node_modules/@tufjs/canonical-json": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", - "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "dev": true, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@tufjs/models": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", - "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", + "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", "dev": true, "dependencies": { - "@tufjs/canonical-json": "1.0.0", - "minimatch": "^9.0.0" + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.3" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/@tufjs/models/node_modules/brace-expansion": { @@ -3291,9 +3238,9 @@ } }, "node_modules/@tufjs/models/node_modules/minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -3306,9 +3253,9 @@ } }, "node_modules/@types/body-parser": { - "version": "1.19.4", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.4.tgz", - "integrity": "sha512-N7UDG0/xiPQa2D/XrVJXjkWbpqHCd2sBaB32ggRF2l83RhPfamgKGF8gwwqyksS95qUS5ZYF9aF+lLPRlwI2UA==", + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, "dependencies": { "@types/connect": "*", @@ -3316,33 +3263,48 @@ } }, "node_modules/@types/bonjour": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.12.tgz", - "integrity": "sha512-ky0kWSqXVxSqgqJvPIkgFkcn4C8MnRog308Ou8xBBIVo39OmUFy+jqNe0nPwLCDFxUpmT9EvT91YzOJgkDRcFg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/connect": { - "version": "3.4.37", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.37.tgz", - "integrity": "sha512-zBUSRqkfZ59OcwXon4HVxhx5oWCJmc0OtBTK05M+p0dYjgN6iTwIL2T/WbsQZrEsdnwaF9cWQ+azOnpPvIqY3Q==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/connect-history-api-fallback": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.2.tgz", - "integrity": "sha512-gX2j9x+NzSh4zOhnRPSdPPmTepS4DfxES0AvIFv3jGv5QyeAJf6u6dY5/BAoAJU9Qq1uTvwOku8SSC2GnCRl6Q==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.3.tgz", + "integrity": "sha512-6mfQ6iNvhSKCZJoY6sIG3m0pKkdUcweVNOLuBBKvoWGzl2yRxOJcYOTRyLKt3nxXvBLJWa6QkW//tgbIwJehmA==", "dev": true, "dependencies": { "@types/express-serve-static-core": "*", "@types/node": "*" } }, + "node_modules/@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "node_modules/@types/cors": { + "version": "2.8.16", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.16.tgz", + "integrity": "sha512-Trx5or1Nyg1Fq138PCuWqoApzvoSLWzZ25ORBiHMbbUT42g578lH1GT4TwYDbiUOLFuDsCkfLneT2105fsFWGg==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/eslint": { "version": "8.4.1", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz", @@ -3370,9 +3332,9 @@ "dev": true }, "node_modules/@types/express": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.20.tgz", - "integrity": "sha512-rOaqlkgEvOW495xErXMsmyX3WKBInbhG5eqojXYi3cGUaLoRDlXa5d52fkfWZT963AZ3v2eZ4MbKE6WpDAGVsw==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, "dependencies": { "@types/body-parser": "*", @@ -3382,9 +3344,9 @@ } }, "node_modules/@types/express-serve-static-core": { - "version": "4.17.39", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.39.tgz", - "integrity": "sha512-BiEUfAiGCOllomsRAZOiMFP7LAnrifHpt56pc4Z7l9K6ACyN06Ns1JLMBxwkfLOjJRlSf06NwWsT7yzfpaVpyQ==", + "version": "4.17.41", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.41.tgz", + "integrity": "sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==", "dev": true, "dependencies": { "@types/node": "*", @@ -3394,15 +3356,15 @@ } }, "node_modules/@types/http-errors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.3.tgz", - "integrity": "sha512-pP0P/9BnCj1OVvQR2lF41EkDG/lWWnDyA203b/4Fmi2eTyORnBtcDoKDwjWQthELrBvWkMOrvSOnZ8OVlW6tXA==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", "dev": true }, "node_modules/@types/http-proxy": { - "version": "1.17.13", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.13.tgz", - "integrity": "sha512-GkhdWcMNiR5QSQRYnJ+/oXzu0+7JJEPC8vkWXK351BkhjraZF+1W13CUYARUvX9+NqIU2n6YHA4iwywsc/M6Sw==", + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", "dev": true, "dependencies": { "@types/node": "*" @@ -3415,9 +3377,9 @@ "dev": true }, "node_modules/@types/mime": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.4.tgz", - "integrity": "sha512-1Gjee59G25MrQGk8bsNvC6fxNiRgUlGn2wlhGf95a59DrprnnHk80FIMMFG9XHMdrfsuA119ht06QPDXA1Z7tw==", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", "dev": true }, "node_modules/@types/node": { @@ -3426,16 +3388,25 @@ "integrity": "sha512-i1KGxqcvJaLQali+WuypQnXwcplhtNtjs66eNsZpp2P2FL/trJJxx/VWsM0YCL2iMoIJrbXje48lvIQAQ4p2ZA==", "dev": true }, + "node_modules/@types/node-forge": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.9.tgz", + "integrity": "sha512-meK88cx/sTalPSLSoCzkiUB4VPIFHmxtXm5FaaqRDqBX2i/Sy8bJ4odsan0b20RBjPh06dAQ+OTTdnyQyhJZyQ==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, "node_modules/@types/qs": { - "version": "6.9.9", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.9.tgz", - "integrity": "sha512-wYLxw35euwqGvTDx6zfY1vokBFnsK0HNrzc6xNHchxfO2hpuRg74GbkEW7e3sSmPvj0TjCDT1VCa6OtHXnubsg==", + "version": "6.9.10", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.10.tgz", + "integrity": "sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==", "dev": true }, "node_modules/@types/range-parser": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.6.tgz", - "integrity": "sha512-+0autS93xyXizIYiyL02FCY8N+KkKPhILhcUSA276HxzreZ16kl+cmwvV2qAM/PuCCwPXzOXOWhiPcw20uSFcA==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", "dev": true }, "node_modules/@types/retry": { @@ -3445,9 +3416,9 @@ "dev": true }, "node_modules/@types/send": { - "version": "0.17.3", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.3.tgz", - "integrity": "sha512-/7fKxvKUoETxjFUsuFlPB9YndePpxxRAOfGC/yJdc9kTjTeP5kRCTzfnE8kPUKCeyiyIZu0YQ76s50hCedI1ug==", + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, "dependencies": { "@types/mime": "^1", @@ -3455,18 +3426,18 @@ } }, "node_modules/@types/serve-index": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.3.tgz", - "integrity": "sha512-4KG+yMEuvDPRrYq5fyVm/I2uqAJSAwZK9VSa+Zf+zUq9/oxSSvy3kkIqyL+jjStv6UCVi8/Aho0NHtB1Fwosrg==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, "dependencies": { "@types/express": "*" } }, "node_modules/@types/serve-static": { - "version": "1.15.4", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.4.tgz", - "integrity": "sha512-aqqNfs1XTF0HDrFdlY//+SGUxmdSUbjeRXb5iaZc3x0/vMbYmdw9qvOgHWOyyLFxSSRnUuP5+724zBgfw8/WAw==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz", + "integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==", "dev": true, "dependencies": { "@types/http-errors": "*", @@ -3475,18 +3446,18 @@ } }, "node_modules/@types/sockjs": { - "version": "0.3.35", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.35.tgz", - "integrity": "sha512-tIF57KB+ZvOBpAQwSaACfEu7htponHXaFzP7RfKYgsOS0NoYnn+9+jzp7bbq4fWerizI3dTB4NfAZoyeQKWJLw==", + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, "dependencies": { "@types/node": "*" } }, "node_modules/@types/ws": { - "version": "8.5.8", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.8.tgz", - "integrity": "sha512-flUksGIQCnJd6sZ1l5dqCEG/ksaoAg/eUwiLAGTJQcfgvZJKF++Ta4bJA6A5aPSJmsr+xlseHn4KLgVlNnvPTg==", + "version": "8.5.9", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.9.tgz", + "integrity": "sha512-jbdrY0a8lxfdTp/+r7Z4CkycbOFN8WX+IOchLJr3juT/xzbJ8URyTVSJ/hvNdadTgM1mnedb47n+Y31GsFnQlg==", "dev": true, "dependencies": { "@types/node": "*" @@ -3638,99 +3609,6 @@ "@xtuc/long": "4.2.2" } }, - "node_modules/@wessberg/ts-evaluator": { - "version": "0.0.27", - "resolved": "https://registry.npmjs.org/@wessberg/ts-evaluator/-/ts-evaluator-0.0.27.tgz", - "integrity": "sha512-7gOpVm3yYojUp/Yn7F4ZybJRxyqfMNf0LXK5KJiawbPfL0XTsJV+0mgrEDjOIR6Bi0OYk2Cyg4tjFu1r8MCZaA==", - "deprecated": "this package has been renamed to ts-evaluator. Please install ts-evaluator instead", - "dev": true, - "dependencies": { - "chalk": "^4.1.0", - "jsdom": "^16.4.0", - "object-path": "^0.11.5", - "tslib": "^2.0.3" - }, - "engines": { - "node": ">=10.1.0" - }, - "funding": { - "type": "github", - "url": "https://github.com/wessberg/ts-evaluator?sponsor=1" - }, - "peerDependencies": { - "typescript": ">=3.2.x || >= 4.x" - } - }, - "node_modules/@wessberg/ts-evaluator/node_modules/ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "dependencies": { - "color-convert": "^2.0.1" - }, - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/chalk/ansi-styles?sponsor=1" - } - }, - "node_modules/@wessberg/ts-evaluator/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } - }, - "node_modules/@wessberg/ts-evaluator/node_modules/color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "dependencies": { - "color-name": "~1.1.4" - }, - "engines": { - "node": ">=7.0.0" - } - }, - "node_modules/@wessberg/ts-evaluator/node_modules/color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "node_modules/@wessberg/ts-evaluator/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/@wessberg/ts-evaluator/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "dependencies": { - "has-flag": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", @@ -3756,10 +3634,13 @@ "dev": true }, "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, "node_modules/accepts": { "version": "1.3.8", @@ -3786,28 +3667,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", - "dev": true, - "dependencies": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - } - }, - "node_modules/acorn-globals/node_modules/acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true, - "bin": { - "acorn": "bin/acorn" - }, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/acorn-import-assertions": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", @@ -3817,15 +3676,6 @@ "acorn": "^8" } }, - "node_modules/acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, "node_modules/adjust-sourcemap-loader": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", @@ -3854,29 +3704,15 @@ } }, "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agentkeepalive": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz", - "integrity": "sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", "dev": true, "dependencies": { - "debug": "^4.1.0", - "depd": "^2.0.0", - "humanize-ms": "^1.2.1" + "debug": "^4.3.4" }, "engines": { - "node": ">= 8.0.0" + "node": ">= 14" } }, "node_modules/aggregate-error": { @@ -4007,25 +3843,6 @@ "node": ">= 8" } }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -4041,16 +3858,28 @@ "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", "dev": true }, - "node_modules/asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", - "dev": true + "node_modules/async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/async-each-series": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/async-each-series/-/async-each-series-0.1.1.tgz", + "integrity": "sha512-p4jj6Fws4Iy2m0iCmI2am2ZNZCgbdgE+P8F/8csmn2vx7ixXrO2zGcuNsD46X5uZSVecmkEy/M06X2vG8KD6dQ==", + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, "node_modules/autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "version": "10.4.16", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz", + "integrity": "sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==", "dev": true, "funding": [ { @@ -4060,12 +3889,16 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/autoprefixer" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", + "browserslist": "^4.21.10", + "caniuse-lite": "^1.0.30001538", + "fraction.js": "^4.3.6", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" @@ -4080,6 +3913,15 @@ "postcss": "^8.1.0" } }, + "node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dev": true, + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, "node_modules/babel-loader": { "version": "9.1.3", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", @@ -4114,13 +3956,13 @@ } }, "node_modules/babel-plugin-polyfill-corejs2": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", - "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz", + "integrity": "sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==", "dev": true, "dependencies": { "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.4.2", + "@babel/helper-define-polyfill-provider": "^0.4.3", "semver": "^6.3.1" }, "peerDependencies": { @@ -4137,25 +3979,25 @@ } }, "node_modules/babel-plugin-polyfill-corejs3": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", - "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.6.tgz", + "integrity": "sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==", "dev": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.4.2", - "core-js-compat": "^3.31.0" + "@babel/helper-define-polyfill-provider": "^0.4.3", + "core-js-compat": "^3.33.1" }, "peerDependencies": { "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" } }, "node_modules/babel-plugin-polyfill-regenerator": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", - "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz", + "integrity": "sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==", "dev": true, "dependencies": { - "@babel/helper-define-polyfill-provider": "^0.4.2" + "@babel/helper-define-polyfill-provider": "^0.4.3" }, "peerDependencies": { "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0" @@ -4187,6 +4029,15 @@ } ] }, + "node_modules/base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true, + "engines": { + "node": "^4.5.0 || >= 5.9" + } + }, "node_modules/batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", @@ -4246,15 +4097,6 @@ "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/body-parser/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/body-parser/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -4264,12 +4106,49 @@ "ms": "2.0.0" } }, + "node_modules/body-parser/node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, "node_modules/body-parser/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, + "node_modules/body-parser/node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dev": true, + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/bonjour-service": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.1.tgz", @@ -4310,16 +4189,240 @@ "node": ">=8" } }, - "node_modules/browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", - "dev": true + "node_modules/browser-sync": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.29.3.tgz", + "integrity": "sha512-NiM38O6XU84+MN+gzspVmXV2fTOoe+jBqIBx3IBdhZrdeURr6ZgznJr/p+hQ+KzkKEiGH/GcC4SQFSL0jV49bg==", + "dev": true, + "dependencies": { + "browser-sync-client": "^2.29.3", + "browser-sync-ui": "^2.29.3", + "bs-recipes": "1.3.4", + "chalk": "4.1.2", + "chokidar": "^3.5.1", + "connect": "3.6.6", + "connect-history-api-fallback": "^1", + "dev-ip": "^1.0.1", + "easy-extender": "^2.3.4", + "eazy-logger": "^4.0.1", + "etag": "^1.8.1", + "fresh": "^0.5.2", + "fs-extra": "3.0.1", + "http-proxy": "^1.18.1", + "immutable": "^3", + "localtunnel": "^2.0.1", + "micromatch": "^4.0.2", + "opn": "5.3.0", + "portscanner": "2.2.0", + "raw-body": "^2.3.2", + "resp-modifier": "6.0.2", + "rx": "4.1.0", + "send": "0.16.2", + "serve-index": "1.9.1", + "serve-static": "1.13.2", + "server-destroy": "1.0.1", + "socket.io": "^4.4.1", + "ua-parser-js": "^1.0.33", + "yargs": "^17.3.1" + }, + "bin": { + "browser-sync": "dist/bin.js" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/browser-sync-client": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.29.3.tgz", + "integrity": "sha512-4tK5JKCl7v/3aLbmCBMzpufiYLsB1+UI+7tUXCCp5qF0AllHy/jAqYu6k7hUF3hYtlClKpxExWaR+rH+ny07wQ==", + "dev": true, + "dependencies": { + "etag": "1.8.1", + "fresh": "0.5.2", + "mitt": "^1.1.3" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/browser-sync-ui": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.29.3.tgz", + "integrity": "sha512-kBYOIQjU/D/3kYtUIJtj82e797Egk1FB2broqItkr3i4eF1qiHbFCG6srksu9gWhfmuM/TNG76jMfzAdxEPakg==", + "dev": true, + "dependencies": { + "async-each-series": "0.1.1", + "chalk": "4.1.2", + "connect-history-api-fallback": "^1", + "immutable": "^3", + "server-destroy": "1.0.1", + "socket.io-client": "^4.4.1", + "stream-throttle": "^0.1.3" + } + }, + "node_modules/browser-sync-ui/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/browser-sync-ui/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/browser-sync-ui/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/browser-sync-ui/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/browser-sync-ui/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-sync-ui/node_modules/immutable": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", + "integrity": "sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/browser-sync-ui/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-sync/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/browser-sync/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/browser-sync/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/browser-sync/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/browser-sync/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/browser-sync/node_modules/immutable": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", + "integrity": "sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/browser-sync/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } }, "node_modules/browserslist": { - "version": "4.21.9", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", - "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", "dev": true, "funding": [ { @@ -4336,10 +4439,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001503", - "electron-to-chromium": "^1.4.431", - "node-releases": "^2.0.12", - "update-browserslist-db": "^1.0.11" + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.13" }, "bin": { "browserslist": "cli.js" @@ -4348,6 +4451,12 @@ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" } }, + "node_modules/bs-recipes": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/bs-recipes/-/bs-recipes-1.3.4.tgz", + "integrity": "sha512-BXvDkqhDNxXEjeGM8LFkSbR+jzmP/CYpCiVKYn+soB1dDldeU15EBNDkwVXndKuX35wnNUaPd0qSoQEAkmQtMw==", + "dev": true + }, "node_modules/buffer": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", @@ -4388,25 +4497,25 @@ } }, "node_modules/bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true, "engines": { "node": ">= 0.8" } }, "node_modules/cacache": { - "version": "17.1.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.3.tgz", - "integrity": "sha512-jAdjGxmPxZh0IipMdR7fK/4sDSrHMLUV0+GvVUsjwyGNKHsh79kW/otg+GkbXwl6Uzvy9wsvHOX4nUoWldeZMg==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", + "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", "dev": true, "dependencies": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -4416,7 +4525,7 @@ "unique-filename": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/cacache/node_modules/brace-expansion": { @@ -4429,19 +4538,19 @@ } }, "node_modules/cacache/node_modules/glob": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.1.tgz", - "integrity": "sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", + "jackspeak": "^2.3.5", "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.10.0" + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" }, "bin": { - "glob": "dist/cjs/src/bin.js" + "glob": "dist/esm/bin.mjs" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -4451,18 +4560,18 @@ } }, "node_modules/cacache/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true, "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/cacache/node_modules/minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -4507,9 +4616,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001512", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001512.tgz", - "integrity": "sha512-2S9nK0G/mE+jasCUsMPlARhRCts1ebcp2Ji8Y8PWi4NDE1iRdLCnEPHkEfeBrGC45L4isBx5ur3IQ6yTE2mRZw==", + "version": "1.0.30001561", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001561.tgz", + "integrity": "sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==", "dev": true, "funding": [ { @@ -4625,12 +4734,12 @@ } }, "node_modules/cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", + "integrity": "sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==", "dev": true, "engines": { - "node": ">= 10" + "node": ">= 12" } }, "node_modules/cliui": { @@ -4685,33 +4794,12 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true, - "bin": { - "color-support": "bin.js" - } - }, "node_modules/colorette": { "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", "dev": true }, - "node_modules/combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "dependencies": { - "delayed-stream": "~1.0.0" - }, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", @@ -4754,6 +4842,15 @@ "node": ">= 0.8.0" } }, + "node_modules/compression/node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/compression/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -4775,19 +4872,43 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, + "node_modules/connect": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", + "integrity": "sha512-OO7axMmPpu/2XuX1+2Yrg0ddju31B6xLZMWkJ5rYBu4YRmRVlOjvlY6kw2FJKiAzyxGwnrDUAG4s1Pf0sbBMCQ==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "finalhandler": "1.1.0", + "parseurl": "~1.3.2", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.10.0" + } + }, "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", "dev": true, "engines": { "node": ">=0.8" } }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "node_modules/connect/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/connect/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, "node_modules/content-disposition": { @@ -4841,9 +4962,9 @@ } }, "node_modules/cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", "dev": true, "engines": { "node": ">= 0.6" @@ -4904,12 +5025,12 @@ } }, "node_modules/core-js-compat": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", - "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", + "version": "3.33.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.2.tgz", + "integrity": "sha512-axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw==", "dev": true, "dependencies": { - "browserslist": "^4.21.9" + "browserslist": "^4.22.1" }, "funding": { "type": "opencollective", @@ -4922,6 +5043,19 @@ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, "node_modules/cosmiconfig": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", @@ -5057,6 +5191,12 @@ "node": ">= 8" } }, + "node_modules/cross-spawn/node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, "node_modules/cross-spawn/node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -5138,44 +5278,6 @@ "node": ">=4" } }, - "node_modules/cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "node_modules/cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "dev": true, - "dependencies": { - "cssom": "~0.3.6" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/cssstyle/node_modules/cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - }, - "node_modules/data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", - "dev": true, - "dependencies": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -5193,12 +5295,6 @@ } } }, - "node_modules/decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, "node_modules/default-gateway": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", @@ -5243,39 +5339,20 @@ "node": ">=8" } }, - "node_modules/delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true, - "engines": { - "node": ">=0.4.0" - } - }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", - "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", "dev": true, "engines": { "node": ">= 0.8" } }, "node_modules/destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", - "dev": true, - "engines": { - "node": ">= 0.8", - "npm": "1.2.8000 || >= 1.4.16" - } + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg==", + "dev": true }, "node_modules/detect-node": { "version": "2.1.0", @@ -5283,6 +5360,18 @@ "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", "dev": true }, + "node_modules/dev-ip": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dev-ip/-/dev-ip-1.0.1.tgz", + "integrity": "sha512-LmVkry/oDShEgSZPNgqCIp2/TlqtExeGmymru3uCELnfyjY11IzpAproLYs+1X88fXO6DBoYP3ul2Xo2yz2j6A==", + "dev": true, + "bin": { + "dev-ip": "lib/dev-ip.js" + }, + "engines": { + "node": ">= 0.8.0" + } + }, "node_modules/dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -5339,27 +5428,6 @@ } ] }, - "node_modules/domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", - "dev": true, - "dependencies": { - "webidl-conversions": "^5.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/domexception/node_modules/webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/domhandler": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", @@ -5395,6 +5463,100 @@ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", "dev": true }, + "node_modules/easy-extender": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz", + "integrity": "sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q==", + "dev": true, + "dependencies": { + "lodash": "^4.17.10" + }, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/eazy-logger": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/eazy-logger/-/eazy-logger-4.0.1.tgz", + "integrity": "sha512-2GSFtnnC6U4IEKhEI7+PvdxrmjJ04mdsj3wHZTFiw0tUtG4HCWzTr13ZYTk8XOGnA1xQMaDljoBOYlk3D/MMSw==", + "dev": true, + "dependencies": { + "chalk": "4.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/eazy-logger/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/eazy-logger/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/eazy-logger/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/eazy-logger/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/eazy-logger/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/eazy-logger/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -5402,9 +5564,9 @@ "dev": true }, "node_modules/electron-to-chromium": { - "version": "1.4.450", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.450.tgz", - "integrity": "sha512-BLG5HxSELlrMx7dJ2s+8SFlsCtJp37Zpk2VAxyC6CZtbc+9AJeZHfYHbrlSgdXp6saQ8StMqOTEDaBKgA7u1sw==", + "version": "1.4.578", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.578.tgz", + "integrity": "sha512-V0ZhSu1BQZKfG0yNEL6Dadzik8E1vAzfpVOapdSiT9F6yapEJ3Bk+4tZ4SMPdWiUchCgnM/ByYtBzp5ntzDMIA==", "dev": true }, "node_modules/emoji-regex": { @@ -5454,6 +5616,49 @@ "node": ">=0.10.0" } }, + "node_modules/engine.io": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.3.tgz", + "integrity": "sha512-IML/R4eG/pUS5w7OfcDE0jKrljWS9nwnEfsxWCIJF5eO6AHo6+Hlv+lQbdlAYsiJPHzUthLm1RUjnBzWOs45cw==", + "dev": true, + "dependencies": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/engine.io-client": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.2.tgz", + "integrity": "sha512-CQZqbrpEYnrpGqC07a9dJDz4gePZUgTPMU3NKJPSeQOyw27Tst4Pl3FemKoFGAlHzgZmKjoRmiJvbWfhCXUlIg==", + "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0", + "xmlhttprequest-ssl": "~2.0.0" + } + }, + "node_modules/engine.io-parser": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.1.tgz", + "integrity": "sha512-9JktcM3u18nU9N2Lz3bWeBgxVgOKpw7yhRaoxQA3FUDZzzw+9WlA6p4G4u0RixNkg14fH7EfEc/RhpurtiROTQ==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/enhanced-resolve": { "version": "5.15.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", @@ -5523,9 +5728,9 @@ "dev": true }, "node_modules/esbuild-wasm": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.18.17.tgz", - "integrity": "sha512-9OHGcuRzy+I8ziF9FzjfKLWAPbvi0e/metACVg9k6bK+SI4FFxeV6PcZsz8RIVaMD4YNehw+qj6UMR3+qj/EuQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.19.5.tgz", + "integrity": "sha512-7zmLLn2QCj93XfMmHtzrDJ1UBuOHB2CZz1ghoCEZiRajxjUvHsF40PnbzFIY/pmesqPRaEtEWii0uzsTbnAgrA==", "dev": true, "bin": { "esbuild": "bin/esbuild" @@ -5558,46 +5763,6 @@ "node": ">=0.8.0" } }, - "node_modules/escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "dev": true, - "dependencies": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2" - }, - "bin": { - "escodegen": "bin/escodegen.js", - "esgenerate": "bin/esgenerate.js" - }, - "engines": { - "node": ">=6.0" - }, - "optionalDependencies": { - "source-map": "~0.6.1" - } - }, - "node_modules/escodegen/node_modules/estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/escodegen/node_modules/source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", @@ -5770,6 +5935,15 @@ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "dev": true }, + "node_modules/express/node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/express/node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -5779,12 +5953,52 @@ "ms": "2.0.0" } }, + "node_modules/express/node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/express/node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/express/node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, + "node_modules/express/node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/express/node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -5805,34 +6019,88 @@ } ] }, - "node_modules/external-editor": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", - "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "node_modules/express/node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", "dev": true, "dependencies": { - "chardet": "^0.7.0", - "iconv-lite": "^0.4.24", - "tmp": "^0.0.33" + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" }, "engines": { - "node": ">=4" + "node": ">= 0.8.0" } }, - "node_modules/fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "node_modules/express/node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, - "node_modules/fast-glob": { - "version": "3.3.1", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", - "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "node_modules/express/node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", "dev": true, "dependencies": { - "@nodelib/fs.stat": "^2.0.2", - "@nodelib/fs.walk": "^1.2.3", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/express/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dev": true, + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true + }, + "node_modules/fast-glob": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.1.tgz", + "integrity": "sha512-kNFPyjhh5cKjrUltxs+wFx+ZkbRaxxmZ+X0ZU31SOsxCEtP9VPgtq2teZw1DebupL5GmDaNQ6yKMMVcM41iqDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", "glob-parent": "^5.1.2", "merge2": "^1.3.0", "micromatch": "^4.0.4" @@ -5869,15 +6137,40 @@ } }, "node_modules/figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", "dev": true, "dependencies": { - "escape-string-regexp": "^1.0.5" + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" }, "engines": { - "node": ">=8" + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/figures/node_modules/is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "dev": true, + "engines": { + "node": ">=12" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -5896,17 +6189,17 @@ } }, "node_modules/finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha512-ejnvM9ZXYzp6PUPUyQBMBf0Co5VX2gr5H2VQe2Ui2jWXNlxv+PYZo8wpAymJNJdLsG1R4p+M4aynF8KuoUEwRw==", "dev": true, "dependencies": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~1.0.1", "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.3.1", "unpipe": "~1.0.0" }, "engines": { @@ -5957,6 +6250,15 @@ "node": ">=8" } }, + "node_modules/flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true, + "bin": { + "flat": "cli.js" + } + }, "node_modules/follow-redirects": { "version": "1.15.3", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", @@ -5994,9 +6296,9 @@ } }, "node_modules/foreground-child/node_modules/signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true, "engines": { "node": ">=14" @@ -6005,20 +6307,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dev": true, - "dependencies": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", @@ -6029,16 +6317,16 @@ } }, "node_modules/fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true, "engines": { "node": "*" }, "funding": { "type": "patreon", - "url": "https://www.patreon.com/infusion" + "url": "https://github.com/sponsors/rawify" } }, "node_modules/fresh": { @@ -6050,13 +6338,24 @@ "node": ">= 0.6" } }, + "node_modules/fs-extra": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", + "integrity": "sha512-V3Z3WZWVUYd8hoCL5xfXJCaHWYzmtwW5XWYSlLgERi8PWd8bx1kUHUk8L1BT57e49oKnDDD180mjfrHc1yA9rg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^3.0.0", + "universalify": "^0.1.0" + } + }, "node_modules/fs-minipass": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.2.tgz", - "integrity": "sha512-2GAfyfoaCDRrM6jaOS3UsBts8yJ55VioXdWcOL7dK9zdAuKT71+WBA4ifnNYqVjYv+4SsPxjK0JT4yIIn4cA/g==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", "dev": true, "dependencies": { - "minipass": "^5.0.0" + "minipass": "^7.0.3" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" @@ -6097,25 +6396,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -6135,15 +6415,15 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", "dev": true, "dependencies": { - "function-bind": "^1.1.1", - "has": "^1.0.3", + "function-bind": "^1.1.2", "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6254,36 +6534,12 @@ "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", "dev": true }, - "node_modules/guess-parser": { - "version": "0.4.22", - "resolved": "https://registry.npmjs.org/guess-parser/-/guess-parser-0.4.22.tgz", - "integrity": "sha512-KcUWZ5ACGaBM69SbqwVIuWGoSAgD+9iJnchR9j/IarVI1jHVeXv+bUXBIMeqVMSKt3zrn0Dgf9UpcOEpPBLbSg==", - "dev": true, - "dependencies": { - "@wessberg/ts-evaluator": "0.0.27" - }, - "peerDependencies": { - "typescript": ">=3.7.5" - } - }, "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -6294,12 +6550,12 @@ } }, "node_modules/has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.1" + "get-intrinsic": "^1.2.2" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6329,11 +6585,17 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true + "node_modules/hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } }, "node_modules/hdr-histogram-js": { "version": "2.0.3", @@ -6353,24 +6615,24 @@ "dev": true }, "node_modules/hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dev": true, "dependencies": { - "lru-cache": "^7.5.1" + "lru-cache": "^10.0.1" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/hosted-git-info/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true, "engines": { - "node": ">=12" + "node": "14 || >=16.14" } }, "node_modules/hpack.js": { @@ -6409,18 +6671,6 @@ "safe-buffer": "~5.1.0" } }, - "node_modules/html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", - "dev": true, - "dependencies": { - "whatwg-encoding": "^1.0.5" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/html-entities": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.4.0.tgz", @@ -6484,6 +6734,15 @@ "node": ">= 0.8" } }, + "node_modules/http-errors/node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, "node_modules/http-parser-js": { "version": "0.5.8", "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz", @@ -6505,17 +6764,16 @@ } }, "node_modules/http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dev": true, "dependencies": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" + "agent-base": "^7.1.0", + "debug": "^4.3.4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/http-proxy-middleware": { @@ -6543,16 +6801,16 @@ } }, "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", "dev": true, "dependencies": { - "agent-base": "6", + "agent-base": "^7.0.2", "debug": "4" }, "engines": { - "node": ">= 6" + "node": ">= 14" } }, "node_modules/human-signals": { @@ -6564,15 +6822,6 @@ "node": ">=10.17.0" } }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "dependencies": { - "ms": "^2.0.0" - } - }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -6648,9 +6897,9 @@ } }, "node_modules/ignore-walk/node_modules/minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -6750,29 +6999,29 @@ } }, "node_modules/inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "version": "9.2.11", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.11.tgz", + "integrity": "sha512-B2LafrnnhbRzCWfAdOXisUzL89Kg8cVJlYmhqoi3flSiV/TveO+nsXwgKr9h9PIo+J1hz7nBSk6gegRIMBBf7g==", "dev": true, "dependencies": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", + "@ljharb/through": "^2.3.9", + "ansi-escapes": "^4.3.2", + "chalk": "^5.3.0", "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", + "cli-width": "^4.1.0", + "external-editor": "^3.1.0", + "figures": "^5.0.0", "lodash": "^4.17.21", - "mute-stream": "0.0.8", + "mute-stream": "1.0.0", "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "run-async": "^3.0.0", + "rxjs": "^7.8.1", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^6.2.0" }, "engines": { - "node": ">=12.0.0" + "node": ">=14.18.0" } }, "node_modules/inquirer/node_modules/ansi-styles": { @@ -6791,16 +7040,12 @@ } }, "node_modules/inquirer/node_modules/chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", "dev": true, - "dependencies": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - }, "engines": { - "node": ">=10" + "node": "^12.17.0 || ^14.13 || >=16.0.0" }, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" @@ -6824,31 +7069,24 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "node_modules/inquirer/node_modules/has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/inquirer/node_modules/rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", "dev": true, "dependencies": { "tslib": "^2.1.0" } }, - "node_modules/inquirer/node_modules/supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "node_modules/inquirer/node_modules/wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "dependencies": { - "has-flag": "^4.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" }, "engines": { "node": ">=8" @@ -6888,12 +7126,12 @@ } }, "node_modules/is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -6968,6 +7206,15 @@ "node": ">=0.12.0" } }, + "node_modules/is-number-like": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", + "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", + "dev": true, + "dependencies": { + "lodash.isfinite": "^3.3.2" + } + }, "node_modules/is-plain-obj": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", @@ -6992,12 +7239,6 @@ "node": ">=0.10.0" } }, - "node_modules/is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, "node_modules/is-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", @@ -7047,10 +7288,13 @@ "dev": true }, "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", + "dev": true, + "engines": { + "node": ">=16" + } }, "node_modules/isobject": { "version": "3.0.1", @@ -7096,9 +7340,9 @@ } }, "node_modules/jackspeak": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.1.tgz", - "integrity": "sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", "dev": true, "dependencies": { "@isaacs/cliui": "^8.0.2" @@ -7179,75 +7423,6 @@ "js-yaml": "bin/js-yaml.js" } }, - "node_modules/jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "dev": true, - "dependencies": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "peerDependencies": { - "canvas": "^2.5.0" - }, - "peerDependenciesMeta": { - "canvas": { - "optional": true - } - } - }, - "node_modules/jsdom/node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "dev": true, - "engines": { - "node": ">= 6" - } - }, - "node_modules/jsdom/node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dev": true, - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -7290,6 +7465,15 @@ "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", "dev": true }, + "node_modules/jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha512-oBko6ZHlubVB5mRFkur5vgYR1UyqX+S6Y/oCfLhqNdcc2fYFlDpIoNc7AfKS1KOGcnNAkvsr0grLck9ANM815w==", + "dev": true, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, "node_modules/jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", @@ -7337,9 +7521,9 @@ } }, "node_modules/less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/less/-/less-4.2.0.tgz", + "integrity": "sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==", "dev": true, "dependencies": { "copy-anything": "^2.0.1", @@ -7433,6 +7617,12 @@ } } }, + "node_modules/limiter": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz", + "integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==", + "dev": true + }, "node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -7457,10 +7647,83 @@ "node": ">= 12.13.0" } }, - "node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/localtunnel": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-2.0.2.tgz", + "integrity": "sha512-n418Cn5ynvJd7m/N1d9WVJISLJF/ellZnfsLnx8WBWGzxv/ntNcFkJ1o6se5quUhCplfLGBNL5tYHiq5WF3Nug==", + "dev": true, + "dependencies": { + "axios": "0.21.4", + "debug": "4.3.2", + "openurl": "1.1.1", + "yargs": "17.1.1" + }, + "bin": { + "lt": "bin/lt.js" + }, + "engines": { + "node": ">=8.3.0" + } + }, + "node_modules/localtunnel/node_modules/cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "node_modules/localtunnel/node_modules/debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/localtunnel/node_modules/yargs": { + "version": "17.1.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.1.1.tgz", + "integrity": "sha512-c2k48R0PwKIqKhPMWjeiF6y2xY/gPMUlro0sgxqXpbOIohWiLNXWslsootttv7E1e73QPAMQSg5FeySbVcpsPQ==", + "dev": true, + "dependencies": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/localtunnel/node_modules/yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true, + "engines": { + "node": ">=10" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", "dev": true, "dependencies": { "p-locate": "^4.1.0" @@ -7481,6 +7744,12 @@ "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, + "node_modules/lodash.isfinite": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", + "integrity": "sha512-7FGG40uhC8Mm633uKW1r58aElFlBlxCrg9JfSi3P6aYiWmfiWF0PgMd86ZUsxE5GwWPdHoS2+48bwTh2VPkIQA==", + "dev": true + }, "node_modules/log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -7580,9 +7849,9 @@ } }, "node_modules/magic-string": { - "version": "0.30.1", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", - "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "version": "0.30.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", + "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", "dev": true, "dependencies": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -7598,38 +7867,25 @@ "dev": true }, "node_modules/make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", "dev": true, "dependencies": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", + "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", "ssri": "^10.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/make-fetch-happen/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true, - "engines": { - "node": ">=12" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/media-typer": { @@ -7776,12 +8032,12 @@ } }, "node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "dev": true, "engines": { - "node": ">=8" + "node": ">=16 || 14 >=14.17" } }, "node_modules/minipass-collect": { @@ -7809,12 +8065,12 @@ } }, "node_modules/minipass-fetch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz", - "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", "dev": true, "dependencies": { - "minipass": "^5.0.0", + "minipass": "^7.0.3", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" }, @@ -7944,6 +8200,12 @@ "node": ">=8" } }, + "node_modules/mitt": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", + "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", + "dev": true + }, "node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -7985,10 +8247,13 @@ } }, "node_modules/mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", - "dev": true + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", + "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", + "dev": true, + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } }, "node_modules/nanoid": { "version": "3.3.6", @@ -8096,34 +8361,33 @@ } }, "node_modules/node-gyp": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.0.tgz", - "integrity": "sha512-dMXsYP6gc9rRbejLXmTbVRYjAHw7ppswsKyMxuxJxxOHzluIO1rGp9TOQgjFJ+2MCqcOcQTOPB/8Xwhr+7s4Eg==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", + "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", "dev": true, "dependencies": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", - "glob": "^7.1.4", + "glob": "^10.3.10", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^11.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", "semver": "^7.3.5", "tar": "^6.1.2", - "which": "^2.0.2" + "which": "^4.0.0" }, "bin": { "node-gyp": "bin/node-gyp.js" }, "engines": { - "node": "^12.13 || ^14.13 || >=16" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/node-gyp-build": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", - "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==", + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.1.tgz", + "integrity": "sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==", "dev": true, "optional": true, "bin": { @@ -8132,55 +8396,86 @@ "node-gyp-build-test": "build-test.js" } }, - "node_modules/node-gyp/node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "node_modules/node-gyp/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "balanced-match": "^1.0.0" + } + }, + "node_modules/node-gyp/node_modules/glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" }, "bin": { - "node-which": "bin/node-which" + "glob": "dist/esm/bin.mjs" }, "engines": { - "node": ">= 8" + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/node-gyp/node_modules/minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, "node_modules/node-releases": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", - "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", "dev": true }, "node_modules/nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", + "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", "dev": true, "dependencies": { - "abbrev": "^1.0.0" + "abbrev": "^2.0.0" }, "bin": { "nopt": "bin/nopt.js" }, "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", "dev": true, "dependencies": { - "hosted-git-info": "^6.0.0", + "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/normalize-path": { @@ -8214,9 +8509,9 @@ } }, "node_modules/npm-install-checks": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.1.tgz", - "integrity": "sha512-dH3GmQL4vsPtld59cOn8uY0iOqRmqKvV+DLGwNXV/Q7MDgD2QfOADWd/mFXcIE5LVhYYGjA3baz6W9JneqnuCw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", "dev": true, "dependencies": { "semver": "^7.1.1" @@ -8235,24 +8530,24 @@ } }, "node_modules/npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", + "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", "dev": true, "dependencies": { - "hosted-git-info": "^6.0.0", + "hosted-git-info": "^7.0.0", "proc-log": "^3.0.0", "semver": "^7.3.5", "validate-npm-package-name": "^5.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm-packlist": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", - "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.0.tgz", + "integrity": "sha512-ErAGFB5kJUciPy1mmx/C2YFbvxoJ0QJ9uwkCZOeR6CqLLISPZBOiFModAbSXnjjlwW5lOhuhXva+fURsSGJqyw==", "dev": true, "dependencies": { "ignore-walk": "^6.0.0" @@ -8262,36 +8557,36 @@ } }, "node_modules/npm-pick-manifest": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", - "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", + "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", "dev": true, "dependencies": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^10.0.0", + "npm-package-arg": "^11.0.0", "semver": "^7.3.5" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm-registry-fetch": { - "version": "14.0.5", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", - "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", + "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", "dev": true, "dependencies": { - "make-fetch-happen": "^11.0.0", - "minipass": "^5.0.0", + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", + "npm-package-arg": "^11.0.0", "proc-log": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/npm-run-path": { @@ -8306,21 +8601,6 @@ "node": ">=8" } }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "dev": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/nth-check": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", @@ -8333,11 +8613,14 @@ "url": "https://github.com/fb55/nth-check?sponsor=1" } }, - "node_modules/nwsapi": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", - "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", - "dev": true + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, "node_modules/object-inspect": { "version": "1.13.1", @@ -8348,15 +8631,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/object-path": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz", - "integrity": "sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==", - "dev": true, - "engines": { - "node": ">= 10.12.0" - } - }, "node_modules/obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", @@ -8364,9 +8638,9 @@ "dev": true }, "node_modules/on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", "dev": true, "dependencies": { "ee-first": "1.1.1" @@ -8425,6 +8699,33 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/openurl": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", + "integrity": "sha512-d/gTkTb1i1GKz5k3XE3XFV/PxQ1k45zDqGP2OA7YhgsaLoqm6qRvARAZOFer1fcXritWlGBRCu/UgeS4HAnXAA==", + "dev": true + }, + "node_modules/opn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "dependencies": { + "is-wsl": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/opn/node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/ora": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", @@ -8601,27 +8902,27 @@ } }, "node_modules/pacote": { - "version": "15.2.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", - "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", + "version": "17.0.4", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.4.tgz", + "integrity": "sha512-eGdLHrV/g5b5MtD5cTPyss+JxOlaOloSMG3UwPMAvL8ywaLJ6beONPF40K4KKl/UI6q5hTKCJq5rCu8tkF+7Dg==", "dev": true, "dependencies": { - "@npmcli/git": "^4.0.0", + "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^6.0.1", - "@npmcli/run-script": "^6.0.0", - "cacache": "^17.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/run-script": "^7.0.0", + "cacache": "^18.0.0", "fs-minipass": "^3.0.0", - "minipass": "^5.0.0", - "npm-package-arg": "^10.0.0", - "npm-packlist": "^7.0.0", - "npm-pick-manifest": "^8.0.0", - "npm-registry-fetch": "^14.0.0", + "minipass": "^7.0.2", + "npm-package-arg": "^11.0.0", + "npm-packlist": "^8.0.0", + "npm-pick-manifest": "^9.0.0", + "npm-registry-fetch": "^16.0.0", "proc-log": "^3.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^6.0.0", + "read-package-json": "^7.0.0", "read-package-json-fast": "^3.0.0", - "sigstore": "^1.3.0", + "sigstore": "^2.0.0", "ssri": "^10.0.0", "tar": "^6.1.11" }, @@ -8629,7 +8930,7 @@ "pacote": "lib/bin.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/pako": { @@ -8677,12 +8978,6 @@ "node": ">= 0.10" } }, - "node_modules/parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, "node_modules/parse5-html-rewriting-stream": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-7.0.0.tgz", @@ -8776,13 +9071,13 @@ "dev": true }, "node_modules/path-scurry": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.0.tgz", - "integrity": "sha512-tZFEaRQbMLjwrsmidsGJ6wDMv0iazJWk6SfIKnY4Xru8auXgmJkOBa5DUbYFcFD2Rzk2+KDlIiF0GVXNCbgC7g==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", "dev": true, "dependencies": { "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2" + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -8792,9 +9087,9 @@ } }, "node_modules/path-scurry/node_modules/lru-cache": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", - "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true, "engines": { "node": "14 || >=16.14" @@ -8844,9 +9139,9 @@ } }, "node_modules/piscina": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.0.0.tgz", - "integrity": "sha512-641nAmJS4k4iqpNUqfggqUBUMmlw0ZoM5VZKdQkV2e970Inn3Tk9kroCc1wpsYLD07vCwpys5iY0d3xI/9WkTg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.1.0.tgz", + "integrity": "sha512-sjbLMi3sokkie+qmtZpkfMCUJTpbxJm/wvaPzU28vmYSsTSW8xk9JcFUsbqGJdtPpIQ9tuj+iDcTtgZjwnOSig==", "dev": true, "dependencies": { "eventemitter-asyncresource": "^1.0.0", @@ -8942,6 +9237,20 @@ "node": "^12.20.0 || ^14.13.1 || >=16.0.0" } }, + "node_modules/portscanner": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.2.0.tgz", + "integrity": "sha512-IFroCz/59Lqa2uBvzK3bKDbDDIEaAY8XJ1jFxcLWTqosrsc32//P4VuSB2vZXoHiHqOmx8B5L5hnKOxL/7FlPw==", + "dev": true, + "dependencies": { + "async": "^2.6.0", + "is-number-like": "^1.0.3" + }, + "engines": { + "node": ">=0.4", + "npm": ">=1.0.0" + } + }, "node_modules/postcss": { "version": "8.4.31", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", @@ -9145,12 +9454,6 @@ "dev": true, "optional": true }, - "node_modules/psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, "node_modules/punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -9175,12 +9478,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, "node_modules/queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -9220,9 +9517,9 @@ } }, "node_modules/raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, "dependencies": { "bytes": "3.1.2", @@ -9234,28 +9531,19 @@ "node": ">= 0.8" } }, - "node_modules/raw-body/node_modules/bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true, - "engines": { - "node": ">= 0.8" - } - }, "node_modules/read-package-json": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", - "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", + "integrity": "sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==", "dev": true, "dependencies": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", + "normalize-package-data": "^6.0.0", "npm-normalize-package-bin": "^3.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/read-package-json-fast": { @@ -9290,19 +9578,19 @@ } }, "node_modules/read-package-json/node_modules/glob": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.1.tgz", - "integrity": "sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "dependencies": { "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", + "jackspeak": "^2.3.5", "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.10.0" + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" }, "bin": { - "glob": "dist/cjs/src/bin.js" + "glob": "dist/esm/bin.mjs" }, "engines": { "node": ">=16 || 14 >=14.17" @@ -9321,9 +9609,9 @@ } }, "node_modules/read-package-json/node_modules/minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "dependencies": { "brace-expansion": "^2.0.1" @@ -9374,9 +9662,9 @@ "dev": true }, "node_modules/regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", "dev": true, "dependencies": { "regenerate": "^1.4.2" @@ -9386,9 +9674,9 @@ } }, "node_modules/regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", "dev": true }, "node_modules/regenerator-transform": { @@ -9469,12 +9757,12 @@ "dev": true }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -9533,6 +9821,34 @@ "node": ">=0.10.0" } }, + "node_modules/resp-modifier": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/resp-modifier/-/resp-modifier-6.0.2.tgz", + "integrity": "sha512-U1+0kWC/+4ncRFYqQWTx/3qkfE6a4B/h3XXgmXypfa0SPZ3t7cbbaFk297PjQS/yov24R18h6OZe6iZwj3NSLw==", + "dev": true, + "dependencies": { + "debug": "^2.2.0", + "minimatch": "^3.0.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/resp-modifier/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/resp-modifier/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, "node_modules/restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -9597,9 +9913,9 @@ } }, "node_modules/run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz", + "integrity": "sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==", "dev": true, "engines": { "node": ">=0.12.0" @@ -9628,6 +9944,12 @@ "queue-microtask": "^1.2.2" } }, + "node_modules/rx": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", + "integrity": "sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug==", + "dev": true + }, "node_modules/rxjs": { "version": "7.4.0", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.4.0.tgz", @@ -9654,9 +9976,9 @@ "dev": true }, "node_modules/sass": { - "version": "1.64.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", - "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "version": "1.69.5", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.69.5.tgz", + "integrity": "sha512-qg2+UCJibLr2LCVOt3OlPhr/dqVHWOa9XtZf2OjbLs/T4VPSJ00udtgJxH3neXZm+QqX8B+3cU7RaLqp1iVfcQ==", "dev": true, "dependencies": { "chokidar": ">=3.0.0 <4.0.0", @@ -9714,18 +10036,6 @@ "dev": true, "optional": true }, - "node_modules/saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", - "dev": true, - "dependencies": { - "xmlchars": "^2.2.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/schema-utils": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", @@ -9752,11 +10062,12 @@ "dev": true }, "node_modules/selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dev": true, "dependencies": { + "@types/node-forge": "^1.3.0", "node-forge": "^1" }, "engines": { @@ -9779,24 +10090,24 @@ } }, "node_modules/send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", "dev": true, "dependencies": { "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", + "depd": "~1.1.2", + "destroy": "~1.0.4", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" }, "engines": { "node": ">= 0.8.0" @@ -9811,18 +10122,66 @@ "ms": "2.0.0" } }, - "node_modules/send/node_modules/debug/node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - }, + "node_modules/send/node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/send/node_modules/http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/send/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "node_modules/send/node_modules/mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true, + "bin": { + "mime": "cli.js" + } + }, "node_modules/send/node_modules/ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "node_modules/send/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", "dev": true }, + "node_modules/send/node_modules/statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", + "dev": true, + "engines": { + "node": ">= 0.6" + } + }, "node_modules/serialize-javascript": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.1.tgz", @@ -9911,24 +10270,24 @@ } }, "node_modules/serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", "dev": true, "dependencies": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" + "parseurl": "~1.3.2", + "send": "0.16.2" }, "engines": { "node": ">= 0.8.0" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "node_modules/server-destroy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", + "integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==", "dev": true }, "node_modules/set-function-length": { @@ -10015,20 +10374,18 @@ "dev": true }, "node_modules/sigstore": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.7.0.tgz", - "integrity": "sha512-KP7QULhWdlu3hlp+jw2EvgWKlOGOY9McLj/jrchLjHNlNPK0KWIwF919cbmOp6QiKXLmPijR2qH/5KYWlbtG9Q==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.1.0.tgz", + "integrity": "sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==", "dev": true, "dependencies": { - "@sigstore/protobuf-specs": "^0.1.0", - "@sigstore/tuf": "^1.0.1", - "make-fetch-happen": "^11.0.1" - }, - "bin": { - "sigstore": "bin/sigstore.js" + "@sigstore/bundle": "^2.1.0", + "@sigstore/protobuf-specs": "^0.2.1", + "@sigstore/sign": "^2.1.0", + "@sigstore/tuf": "^2.1.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/slash": { @@ -10053,6 +10410,61 @@ "npm": ">= 3.0.0" } }, + "node_modules/socket.io": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.2.tgz", + "integrity": "sha512-bvKVS29/I5fl2FGLNHuXlQaUH/BlzX1IN6S+NKLNZpBsPZIDH+90eQmCs2Railn4YUiww4SzUedJ6+uzwFnKLw==", + "dev": true, + "dependencies": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.2.0" + } + }, + "node_modules/socket.io-adapter": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz", + "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==", + "dev": true, + "dependencies": { + "ws": "~8.11.0" + } + }, + "node_modules/socket.io-client": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.2.tgz", + "integrity": "sha512-vtA0uD4ibrYD793SOIAwlo8cj6haOeMHrGvwPxJsxH7CeIksqJ+3Zc06RvWTIFgiSqx4A3sOnTXpfAEE2Zyz6w==", + "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.2", + "engine.io-client": "~6.5.2", + "socket.io-parser": "~4.2.4" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dev": true, + "dependencies": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + }, + "engines": { + "node": ">=10.0.0" + } + }, "node_modules/sockjs": { "version": "0.3.24", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", @@ -10079,17 +10491,17 @@ } }, "node_modules/socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", "dev": true, "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" }, "engines": { - "node": ">= 10" + "node": ">= 14" } }, "node_modules/source-map": { @@ -10189,9 +10601,9 @@ } }, "node_modules/spdx-license-ids": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", - "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==", + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", + "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", "dev": true }, "node_modules/spdy": { @@ -10231,24 +10643,40 @@ "dev": true }, "node_modules/ssri": { - "version": "10.0.4", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.4.tgz", - "integrity": "sha512-12+IR2CB2C28MMAw0Ncqwj5QbTcs0nGIhgJzYWzDkb21vWmfNI83KS4f3Ci6GI98WreIfG7o9UXp3C0qbpA8nQ==", + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", "dev": true, "dependencies": { - "minipass": "^5.0.0" + "minipass": "^7.0.3" }, "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, "node_modules/statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha512-wuTCPGlJONk/a1kqZ4fQM2+908lC7fa7nPYpTC1EhnvqLX/IICbeP1OZGDtA374trpSq68YubKUMo8oRhN46yg==", "dev": true, "engines": { - "node": ">= 0.8" + "node": ">= 0.6" + } + }, + "node_modules/stream-throttle": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz", + "integrity": "sha512-889+B9vN9dq7/vLbGyuHeZ6/ctf5sNuGWsDy89uNxkFTAgzy0eK7+w5fL3KLNRTkLle7EgZGvHUphZW0Q26MnQ==", + "dev": true, + "dependencies": { + "commander": "^2.2.0", + "limiter": "^1.0.5" + }, + "bin": { + "throttleproxy": "bin/throttleproxy.js" + }, + "engines": { + "node": ">= 0.10.0" } }, "node_modules/string_decoder": { @@ -10376,12 +10804,6 @@ "node": ">=0.10" } }, - "node_modules/symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, "node_modules/tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -10392,9 +10814,9 @@ } }, "node_modules/tar": { - "version": "6.1.15", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz", - "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", + "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", "dev": true, "dependencies": { "chownr": "^2.0.0", @@ -10432,10 +10854,19 @@ "node": ">=8" } }, + "node_modules/tar/node_modules/minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/terser": { - "version": "5.19.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", - "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "version": "5.24.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz", + "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", "dev": true, "dependencies": { "@jridgewell/source-map": "^0.3.3", @@ -10553,12 +10984,6 @@ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, - "node_modules/through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, "node_modules/thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", @@ -10607,33 +11032,6 @@ "node": ">=0.6" } }, - "node_modules/tough-cookie": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", - "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", - "dev": true, - "dependencies": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "dev": true, - "dependencies": { - "punycode": "^2.1.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", @@ -10644,22 +11042,22 @@ } }, "node_modules/tslib": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", - "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "node_modules/tuf-js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", - "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.1.0.tgz", + "integrity": "sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==", "dev": true, "dependencies": { - "@tufjs/models": "1.0.4", + "@tufjs/models": "2.0.0", "debug": "^4.3.4", - "make-fetch-happen": "^11.1.1" + "make-fetch-happen": "^13.0.0" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + "node": "^16.14.0 || >=18.0.0" } }, "node_modules/type-fest": { @@ -10694,16 +11092,51 @@ "dev": true }, "node_modules/typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", "dev": true, "bin": { "tsc": "bin/tsc", "tsserver": "bin/tsserver" }, "engines": { - "node": ">=12.20" + "node": ">=14.17" + } + }, + "node_modules/ua-parser-js": { + "version": "1.0.37", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.37.tgz", + "integrity": "sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==", + "dev": true, + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/undici": { + "version": "5.27.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.27.2.tgz", + "integrity": "sha512-iS857PdOEy/y3wlM3yRp+6SNQQ6xU0mmZcwRSriqk+et/cwWAtwmIGf6WkoDN2EK/AMdCO/dfXzIwi+rFMrjjQ==", + "dev": true, + "dependencies": { + "@fastify/busboy": "^2.0.0" + }, + "engines": { + "node": ">=14.0" } }, "node_modules/unicode-canonical-property-names-ecmascript": { @@ -10771,9 +11204,9 @@ } }, "node_modules/universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true, "engines": { "node": ">= 4.0.0" @@ -10789,9 +11222,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "funding": [ { @@ -10827,16 +11260,6 @@ "punycode": "^2.1.0" } }, - "node_modules/url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "dependencies": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -10892,28 +11315,6 @@ "node": ">= 0.8" } }, - "node_modules/w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "deprecated": "Use your platform's native performance.now() and performance.timeOrigin.", - "dev": true, - "dependencies": { - "browser-process-hrtime": "^1.0.0" - } - }, - "node_modules/w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", - "dev": true, - "dependencies": { - "xml-name-validator": "^3.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/watchpack": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", @@ -10945,19 +11346,10 @@ "defaults": "^1.0.3" } }, - "node_modules/webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", - "dev": true, - "engines": { - "node": ">=10.4" - } - }, "node_modules/webpack": { - "version": "5.88.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", - "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "version": "5.89.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", + "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", "dev": true, "dependencies": { "@types/eslint-scope": "^3.7.3", @@ -11088,6 +11480,15 @@ } } }, + "node_modules/webpack-dev-server/node_modules/connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true, + "engines": { + "node": ">=0.8" + } + }, "node_modules/webpack-dev-server/node_modules/webpack-dev-middleware": { "version": "5.3.3", "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", @@ -11133,12 +11534,13 @@ } }, "node_modules/webpack-merge": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", - "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", "dev": true, "dependencies": { "clone-deep": "^4.0.1", + "flat": "^5.0.2", "wildcard": "^2.0.0" }, "engines": { @@ -11247,57 +11649,19 @@ "node": ">=0.8.0" } }, - "node_modules/whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", - "dev": true, - "dependencies": { - "iconv-lite": "0.4.24" - } - }, - "node_modules/whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "node_modules/whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", - "dev": true, - "dependencies": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, "dependencies": { - "isexe": "^2.0.0" + "isexe": "^3.1.1" }, "bin": { "node-which": "bin/which.js" }, "engines": { - "node": "^14.17.0 || ^16.13.0 || >=18.0.0" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "dev": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "node": "^16.13.0 || >=18.0.0" } }, "node_modules/wildcard": { @@ -11414,12 +11778,12 @@ "dev": true }, "node_modules/ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", "dev": true, "engines": { - "node": ">=8.3.0" + "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", @@ -11434,17 +11798,14 @@ } } }, - "node_modules/xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "node_modules/xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", - "dev": true + "node_modules/xmlhttprequest-ssl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz", + "integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } }, "node_modules/y18n": { "version": "5.0.8", @@ -11501,9 +11862,9 @@ } }, "node_modules/zone.js": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.0.tgz", - "integrity": "sha512-7m3hNNyswsdoDobCkYNAy5WiUulkMd3+fWaGT9ij6iq3Zr/IwJo4RMCYPSDjT+r7tnPErmY9sZpKhWQ8S5k6XQ==", + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.14.2.tgz", + "integrity": "sha512-X4U7J1isDhoOmHmFWiLhloWc2lzMkdnumtfQ1LXzf/IOZp5NQYuMUTaviVzG/q1ugMBIXzin2AqeVJUoSEkNyQ==", "dependencies": { "tslib": "^2.3.0" } @@ -11521,12 +11882,12 @@ } }, "@angular-devkit/architect": { - "version": "0.1602.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1602.7.tgz", - "integrity": "sha512-r6+z4jRE+e9VNeTmJCGz5VI5azRagOqE4SIDqaywz75eHOJ9UPSo9MHy8zFw1eLt1WcvCDqk+Pk9+krh2E+B8Q==", + "version": "0.1700.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/architect/-/architect-0.1700.0.tgz", + "integrity": "sha512-whi7HvOjv1J3He9f+H8xNJWKyjAmWuWNl8gxNW6EZP/XLcrOu+/5QT4bPtXQBRIL/avZuc++5sNQS+kReaNCig==", "dev": true, "requires": { - "@angular-devkit/core": "16.2.7", + "@angular-devkit/core": "17.0.0", "rxjs": "7.8.1" }, "dependencies": { @@ -11542,109 +11903,79 @@ } }, "@angular-devkit/build-angular": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-16.2.7.tgz", - "integrity": "sha512-OTH4qzXmWXifhvH0iXwPUhElWEU9SUcIZyWYbv2NR5ImAw/GE07vDuBljGRJeSEC9MpFbThwEFbHD8oRWiLUag==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-angular/-/build-angular-17.0.0.tgz", + "integrity": "sha512-hkV8k4moAnUquac2Dz5XPd5izDDgEF82NeUkSwizcTaqlJqYOdmWASMsXyVBzdrTmDtFKQiphfA96i7eo5MlvA==", "dev": true, "requires": { "@ampproject/remapping": "2.2.1", - "@angular-devkit/architect": "0.1602.7", - "@angular-devkit/build-webpack": "0.1602.7", - "@angular-devkit/core": "16.2.7", - "@babel/core": "7.22.9", - "@babel/generator": "7.22.9", + "@angular-devkit/architect": "0.1700.0", + "@angular-devkit/build-webpack": "0.1700.0", + "@angular-devkit/core": "17.0.0", + "@babel/core": "7.23.2", + "@babel/generator": "7.23.0", "@babel/helper-annotate-as-pure": "7.22.5", "@babel/helper-split-export-declaration": "7.22.6", - "@babel/plugin-proposal-async-generator-functions": "7.20.7", + "@babel/plugin-transform-async-generator-functions": "7.23.2", "@babel/plugin-transform-async-to-generator": "7.22.5", - "@babel/plugin-transform-runtime": "7.22.9", - "@babel/preset-env": "7.22.9", - "@babel/runtime": "7.22.6", - "@babel/template": "7.22.5", + "@babel/plugin-transform-runtime": "7.23.2", + "@babel/preset-env": "7.23.2", + "@babel/runtime": "7.23.2", "@discoveryjs/json-ext": "0.5.7", - "@ngtools/webpack": "16.2.7", + "@ngtools/webpack": "17.0.0", "@vitejs/plugin-basic-ssl": "1.0.1", "ansi-colors": "4.1.3", - "autoprefixer": "10.4.14", + "autoprefixer": "10.4.16", "babel-loader": "9.1.3", "babel-plugin-istanbul": "6.1.1", + "browser-sync": "2.29.3", "browserslist": "^4.21.5", "chokidar": "3.5.3", "copy-webpack-plugin": "11.0.0", "critters": "0.0.20", "css-loader": "6.8.1", - "esbuild": "0.18.17", - "esbuild-wasm": "0.18.17", + "esbuild": "0.19.5", + "esbuild-wasm": "0.19.5", "fast-glob": "3.3.1", - "guess-parser": "0.4.22", - "https-proxy-agent": "5.0.1", - "inquirer": "8.2.4", + "http-proxy-middleware": "2.0.6", + "https-proxy-agent": "7.0.2", + "inquirer": "9.2.11", "jsonc-parser": "3.2.0", "karma-source-map-support": "1.4.0", - "less": "4.1.3", + "less": "4.2.0", "less-loader": "11.1.0", "license-webpack-plugin": "4.0.2", "loader-utils": "3.2.1", - "magic-string": "0.30.1", + "magic-string": "0.30.5", "mini-css-extract-plugin": "2.7.6", "mrmime": "1.0.1", "open": "8.4.2", "ora": "5.4.1", "parse5-html-rewriting-stream": "7.0.0", - "picomatch": "2.3.1", - "piscina": "4.0.0", + "picomatch": "3.0.1", + "piscina": "4.1.0", "postcss": "8.4.31", "postcss-loader": "7.3.3", "resolve-url-loader": "5.0.0", "rxjs": "7.8.1", - "sass": "1.64.1", + "sass": "1.69.5", "sass-loader": "13.3.2", "semver": "7.5.4", "source-map-loader": "4.0.1", "source-map-support": "0.5.21", - "terser": "5.19.2", + "terser": "5.24.0", "text-table": "0.2.0", "tree-kill": "1.2.2", - "tslib": "2.6.1", - "vite": "4.4.7", - "webpack": "5.88.2", + "tslib": "2.6.2", + "undici": "5.27.2", + "vite": "4.5.0", + "webpack": "5.89.0", "webpack-dev-middleware": "6.1.1", "webpack-dev-server": "4.15.1", - "webpack-merge": "5.9.0", + "webpack-merge": "5.10.0", "webpack-subresource-integrity": "5.1.0" }, "dependencies": { - "@babel/core": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.9.tgz", - "integrity": "sha512-G2EgeufBcYw27U4hhoIwFcgc1XU7TlXJ3mv04oOv1WCuo900U/anZSPzEqNjwdjgffkk2Gs0AN0dW1CKVLcG7w==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.22.5", - "@babel/generator": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.9", - "@babel/helper-module-transforms": "^7.22.9", - "@babel/helpers": "^7.22.6", - "@babel/parser": "^7.22.7", - "@babel/template": "^7.22.5", - "@babel/traverse": "^7.22.8", - "@babel/types": "^7.22.5", - "convert-source-map": "^1.7.0", - "debug": "^4.1.0", - "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", - "semver": "^6.3.1" - }, - "dependencies": { - "semver": { - "version": "6.3.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - "dev": true - } - } - }, "@esbuild/android-arm": { "version": "0.18.17", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.18.17.tgz", @@ -11844,6 +12175,12 @@ "@esbuild/win32-x64": "0.18.17" } }, + "picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", + "dev": true + }, "rxjs": { "version": "7.8.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", @@ -11863,26 +12200,26 @@ } }, "vite": { - "version": "4.4.7", - "resolved": "https://registry.npmjs.org/vite/-/vite-4.4.7.tgz", - "integrity": "sha512-6pYf9QJ1mHylfVh39HpuSfMPojPSKVxZvnclX1K1FyZ1PXDOcLBibdq5t1qxJSnL63ca8Wf4zts6mD8u8oc9Fw==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz", + "integrity": "sha512-ulr8rNLA6rkyFAlVWw2q5YJ91v098AFQ2R0PRFwPzREXOUJQPtFUG0t+/ZikhaOCDqFoDhN6/v8Sq0o4araFAw==", "dev": true, "requires": { "esbuild": "^0.18.10", "fsevents": "~2.3.2", - "postcss": "^8.4.26", - "rollup": "^3.25.2" + "postcss": "^8.4.27", + "rollup": "^3.27.1" } } } }, "@angular-devkit/build-webpack": { - "version": "0.1602.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1602.7.tgz", - "integrity": "sha512-3+MV9ehn65XUUMSBBgfg5K2zZs2jhif75ypI+BBUfZDUWeKR5MeGJy0aDHZ+2H94kPkmSD3PrkOuitWdnDjTgA==", + "version": "0.1700.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/build-webpack/-/build-webpack-0.1700.0.tgz", + "integrity": "sha512-Hx9JUb32gigsHlbBZJ5sw3q3H7qHeX8HTh4aIq4Glvb/5e+HgPlclVSIA5BY2ZYatHixU+CUAXRmcIKxViS02Q==", "dev": true, "requires": { - "@angular-devkit/architect": "0.1602.7", + "@angular-devkit/architect": "0.1700.0", "rxjs": "7.8.1" }, "dependencies": { @@ -11898,19 +12235,25 @@ } }, "@angular-devkit/core": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-16.2.7.tgz", - "integrity": "sha512-XskObYrg7NRdEuHnSVZOM7OeinEL8HzugjmKnawAa+dAbFCCoGsVWjMliA/Q8sb1yfGkyL0WW7DZABZj7EGwWA==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/core/-/core-17.0.0.tgz", + "integrity": "sha512-QUu3LnEi4A8t733v2+I0sLtyBJx3Q7zdTAhaauCbxbFhDid0cbYm8hYsyG/njor1irTPxSJbn6UoetVkwUQZxg==", "dev": true, "requires": { "ajv": "8.12.0", "ajv-formats": "2.1.1", "jsonc-parser": "3.2.0", - "picomatch": "2.3.1", + "picomatch": "3.0.1", "rxjs": "7.8.1", "source-map": "0.7.4" }, "dependencies": { + "picomatch": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-3.0.1.tgz", + "integrity": "sha512-I3EurrIQMlRc9IaAZnqRR044Phh2DXY+55o7uJ0V+hYZAcQYSuFWsc9q5PvyDHUSCe1Qxn/iBz+78s86zWnGag==", + "dev": true + }, "rxjs": { "version": "7.8.1", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", @@ -11923,14 +12266,14 @@ } }, "@angular-devkit/schematics": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-16.2.7.tgz", - "integrity": "sha512-zu3xHwA4w+kXHkyyjGl3i7uSU2/kKLPKuyyixw0WLcKUQCYd7TWmu8OC0qCDa42XkxP9gGL091dJFu56exgneA==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@angular-devkit/schematics/-/schematics-17.0.0.tgz", + "integrity": "sha512-LD7fjDORuBf139/oJ/gSwbIzQPfsm6Y67s1FD+XLi0QXaRt6dw4r7BMD08l1r//oPQofNgbEH4coGVO4NdCL/A==", "dev": true, "requires": { - "@angular-devkit/core": "16.2.7", + "@angular-devkit/core": "17.0.0", "jsonc-parser": "3.2.0", - "magic-string": "0.30.1", + "magic-string": "0.30.5", "ora": "5.4.1", "rxjs": "7.8.1" }, @@ -11947,34 +12290,34 @@ } }, "@angular/animations": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-16.2.10.tgz", - "integrity": "sha512-UudunZoyFWWNpuWkwiBxC3cleLCVJGHIfMgypFwC35YjtiIlRJ0r4nVkc96Rq1xd4mT71Dbk1kQHc8urB8A7aw==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/animations/-/animations-17.0.1.tgz", + "integrity": "sha512-Uee6E8zyU6XjDfKFozybcf+JZy0nUFQ1bUEmRwFP5HvYJSSJ5YiUDokNiVxyn9znwZ7zKHlM6Bq9ZY9cCmeKKQ==", "requires": { "tslib": "^2.3.0" } }, "@angular/cli": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-16.2.7.tgz", - "integrity": "sha512-30yBAYzbrj/WM4tLiX4IU5byw0b5Y5LEzcpjYZglv/RXPrnevGlRXmgCulpt8wIdkd668N7kXEQ23nipuJDXMg==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@angular/cli/-/cli-17.0.0.tgz", + "integrity": "sha512-VzKYmN+1wSE2wLBEFu/NHSrRQbeaKkEDO9aZxd7nAnxC5T1Zcva7dfqZIXMHXH2HESYAZCvOS8ikBE/7DCtWWw==", "dev": true, "requires": { - "@angular-devkit/architect": "0.1602.7", - "@angular-devkit/core": "16.2.7", - "@angular-devkit/schematics": "16.2.7", - "@schematics/angular": "16.2.7", + "@angular-devkit/architect": "0.1700.0", + "@angular-devkit/core": "17.0.0", + "@angular-devkit/schematics": "17.0.0", + "@schematics/angular": "17.0.0", "@yarnpkg/lockfile": "1.1.0", "ansi-colors": "4.1.3", "ini": "4.1.1", - "inquirer": "8.2.4", + "inquirer": "9.2.11", "jsonc-parser": "3.2.0", - "npm-package-arg": "10.1.0", - "npm-pick-manifest": "8.0.1", + "npm-package-arg": "11.0.1", + "npm-pick-manifest": "9.0.0", "open": "8.4.2", "ora": "5.4.1", - "pacote": "15.2.0", - "resolve": "1.22.2", + "pacote": "17.0.4", + "resolve": "1.22.8", "semver": "7.5.4", "symbol-observable": "4.0.0", "yargs": "17.7.2" @@ -11992,25 +12335,25 @@ } }, "@angular/common": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/common/-/common-16.2.10.tgz", - "integrity": "sha512-cLth66aboInNcWFjDBRmK30jC5KN10nKDDcv4U/r3TDTBpKOtnmTjNFFr7dmjfUmVhHFy/66piBMfpjZI93Rxg==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/common/-/common-17.0.1.tgz", + "integrity": "sha512-AvvhZc+PhX5lVEW/Vorxe3Zf1rIEJJvfduRuRv+nsjijo3ZGjdgYjTYEx4ighZgH60RLIAuwyBE24gPkT2Pm7g==", "requires": { "tslib": "^2.3.0" } }, "@angular/compiler": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-16.2.10.tgz", - "integrity": "sha512-ty6SfqkZlV2bLU/SSi3wmxrEFgPrK+WVslCNIr3FlTnCBdqpIbadHN2QB3A1d9XaNc7c4Tq5DQKh34cwMwNbuw==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/compiler/-/compiler-17.0.1.tgz", + "integrity": "sha512-qlKqCvjoxPHJ1e8+UMaBl/n9zzrmGXI5eWMVhULSvQnQvPWkwNlUh5XFeoSFcTEQxORjaO2/08Z31DmTJAqlPA==", "requires": { "tslib": "^2.3.0" } }, "@angular/compiler-cli": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-16.2.10.tgz", - "integrity": "sha512-swgmtm4R23vQV9nJTXdDEFpOyIw3kz80mdT9qo3VId/2rqenOK253JsFypoqEj/fKzjV9gwXtTbmrMlhVyuyxw==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/compiler-cli/-/compiler-cli-17.0.1.tgz", + "integrity": "sha512-Rnvh2V2CYhG7NR5VI4cESGKk9jyqLat0HoqXa06v3TtbjkiZyjjwh0SyZ8NYOBMkQeWiQTHGcgxGvjKD3L3qqA==", "dev": true, "requires": { "@babel/core": "7.23.2", @@ -12024,41 +12367,41 @@ } }, "@angular/core": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/core/-/core-16.2.10.tgz", - "integrity": "sha512-0XTsPjNflFhOl2CfNEdGeDOklG2t+m/D3g10Y7hg9dBjC1dURUEqTmM4d6J7JNbBURrP+/iP7uLsn3WRSipGUw==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/core/-/core-17.0.1.tgz", + "integrity": "sha512-yVwU+oz0G8g6Q5ORyOCpgqMPdSiCdfW+uQhjI37WROnXHja3jY843AqrYTKE6mMx1r6q9h1wbDy+x2E61OWP7A==", "requires": { "tslib": "^2.3.0" } }, "@angular/forms": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-16.2.10.tgz", - "integrity": "sha512-TZliEtSWIL1UzY8kjed4QcMawWS8gk/H60KVgzCh83NGE0wd1OGv20Z5OR7O8j07dxB9vaxY7CQz/8eCz5KaNQ==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/forms/-/forms-17.0.1.tgz", + "integrity": "sha512-FpmUf2kgzwZXVbFB4VrwbnrO0m88QLUBsDsbLfQVQQwb7KxwSaftUu/aIrjst1gFCdl9k0Vqtrq2gwLZKzdSGQ==", "requires": { "tslib": "^2.3.0" } }, "@angular/platform-browser": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-16.2.10.tgz", - "integrity": "sha512-TOZiK7ji550F8G39Ri255NnK1+2Xlr74RiElJdQct4TzfN0lqNf2KRDFFNwDohkP/78FUzcP4qBxs+Nf8M7OuQ==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/platform-browser/-/platform-browser-17.0.1.tgz", + "integrity": "sha512-JpvU0YDEM5KYdHtxC0Kdzk/hdwvZPq5vju5lTmIjTVa2OOabApOrQ6cq1MpKlrvjv1rw8MClHIM0l5Y0g9KH5g==", "requires": { "tslib": "^2.3.0" } }, "@angular/platform-browser-dynamic": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-16.2.10.tgz", - "integrity": "sha512-YVmhAjOmsp2SWRonv6Mr/qXuKroCiew9asd1IlAZ//wqcml9ZrNAcX3WlDa8ZqdmOplQb0LuvvirfNB/6Is/jg==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/platform-browser-dynamic/-/platform-browser-dynamic-17.0.1.tgz", + "integrity": "sha512-xEcbB/ukXc65LaX4JBQYEM7D5Z8LcUIZniSJFneY7deZt3wNiKgmPZrPoXUyDV26QULh7N0IADEzvbcMF60AFQ==", "requires": { "tslib": "^2.3.0" } }, "@angular/router": { - "version": "16.2.10", - "resolved": "https://registry.npmjs.org/@angular/router/-/router-16.2.10.tgz", - "integrity": "sha512-ndiq2NkGZ8hTsyL/KK8qsiR3UA0NjOFIn1jtGXOKtHryXZ6vSTtkhtkE4h4+G6/QNTL1IKtocFhOQt/xsc7DUA==", + "version": "17.0.1", + "resolved": "https://registry.npmjs.org/@angular/router/-/router-17.0.1.tgz", + "integrity": "sha512-73PCDDsRAjemODMRndZhwEN6Tb9rVVbDfMWgLQ4HgfgKnjek8P9BoYf8rOf3qV5fXf3c1Sm9MmKtaPv+l5lU9Q==", "requires": { "tslib": "^2.3.0" } @@ -12080,9 +12423,9 @@ } }, "@babel/compat-data": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.22.9.tgz", - "integrity": "sha512-5UamI7xkUcJ3i9qVDS+KFDEK8/7oJ55/sJMB1Ge7IEapr7KfdfV/HErR+koZwOfd+SgtFKOKRhRakdg++DcJpQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.23.2.tgz", + "integrity": "sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ==", "dev": true }, "@babel/core": { @@ -12108,29 +12451,6 @@ "semver": "^6.3.1" }, "dependencies": { - "@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", - "dev": true, - "requires": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - } - }, - "@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - } - }, "convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", @@ -12146,12 +12466,12 @@ } }, "@babel/generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.22.9.tgz", - "integrity": "sha512-KtLMbmicyuK2Ak/FTCJVbDnkN1SlT8/kceFTiuDiiRUUSMnHMidxSCdG4ndkTOHHpoomWe/4xkvHkEOncwjYIw==", - "dev": true, + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", + "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", + "dev": true, "requires": { - "@babel/types": "^7.22.5", + "@babel/types": "^7.23.0", "@jridgewell/gen-mapping": "^0.3.2", "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" @@ -12167,12 +12487,12 @@ } }, "@babel/helper-builder-binary-assignment-operator-visitor": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.10.tgz", - "integrity": "sha512-Av0qubwDQxC56DoUReVDeLfMEjYYSN1nZrTUrWkXd7hpU73ymRANkbuDm3yni9npkn+RXy9nNbEJZEzXr7xrfQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.22.15.tgz", + "integrity": "sha512-QkBXwGgaoC2GtGZRoma6kv7Szfv06khvhFav67ZExau2RaXzy8MpHSMO2PNoP2XtmQphJQRHFfg77Bq731Yizw==", "dev": true, "requires": { - "@babel/types": "^7.22.10" + "@babel/types": "^7.22.15" } }, "@babel/helper-compilation-targets": { @@ -12212,15 +12532,15 @@ } }, "@babel/helper-create-class-features-plugin": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.10.tgz", - "integrity": "sha512-5IBb77txKYQPpOEdUdIhBx8VrZyDCQ+H82H0+5dX1TmuscP5vJKEE3cKurjtIw/vFwzbVH48VweE78kVDBrqjA==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.22.15.tgz", + "integrity": "sha512-jKkwA59IXcvSaiK2UN45kKwSC9o+KuoXsBDvHvU/7BecYIp8GQ2UwrVvFgJASUT+hBnwJx6MhvMCuMzwZZ7jlg==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-member-expression-to-functions": "^7.22.15", "@babel/helper-optimise-call-expression": "^7.22.5", "@babel/helper-replace-supers": "^7.22.9", "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", @@ -12237,9 +12557,9 @@ } }, "@babel/helper-create-regexp-features-plugin": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.9.tgz", - "integrity": "sha512-+svjVa/tFwsNSG4NEy1h85+HQ5imbT92Q5/bgtS7P0GTQlP8WuFdqsiABmQouhiFGyV66oGxZFpeYHza1rNsKw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.22.15.tgz", + "integrity": "sha512-29FkPLFjn4TPEa3RE7GpW+qbE8tlsu3jntNYNfcGsc49LphF1PQIiD+vMZ1z1xVOKt+93khA9tc2JBs3kBjA7w==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", @@ -12256,9 +12576,9 @@ } }, "@babel/helper-define-polyfill-provider": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.2.tgz", - "integrity": "sha512-k0qnnOqHn5dK9pZpfD5XXZ9SojAITdCKRn2Lp6rnDGzIbaP0rHyMPk/4wsSxVBVz4RfN0q6VpXWP2pDGIoQ7hw==", + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.4.3.tgz", + "integrity": "sha512-WBrLmuPP47n7PNwsZ57pqam6G/RGo1vw/87b0Blc53tZNGZ4x7YvZ6HgQe2vo1W/FR20OgjeZuGXzudPiXHFug==", "dev": true, "requires": { "@babel/helper-compilation-targets": "^7.22.6", @@ -12282,19 +12602,6 @@ "requires": { "@babel/template": "^7.22.15", "@babel/types": "^7.23.0" - }, - "dependencies": { - "@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - } - } } }, "@babel/helper-hoist-variables": { @@ -12307,12 +12614,12 @@ } }, "@babel/helper-member-expression-to-functions": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.22.5.tgz", - "integrity": "sha512-aBiH1NKMG0H2cGZqspNvsaBe6wNGjbJjuLy29aU+eDZjSbbN53BaxlpB02xm9v34pLTZ1nIQPFYn2qMZoa5BQQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.23.0.tgz", + "integrity": "sha512-6gfrPwh7OuT6gZyJZvd6WbTfrqAo7vm4xCzAXOusKqq/vWdKXphTpj5klHKNmRUU6/QRGlBsyU9mAIPaWHlqJA==", "dev": true, "requires": { - "@babel/types": "^7.22.5" + "@babel/types": "^7.23.0" } }, "@babel/helper-module-imports": { @@ -12353,24 +12660,24 @@ "dev": true }, "@babel/helper-remap-async-to-generator": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.9.tgz", - "integrity": "sha512-8WWC4oR4Px+tr+Fp0X3RHDVfINGpF3ad1HIbrc8A77epiR6eMMc6jsgozkzT2uDiOOdoS9cLIQ+XD2XvI2WSmQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.22.20.tgz", + "integrity": "sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-wrap-function": "^7.22.9" + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-wrap-function": "^7.22.20" } }, "@babel/helper-replace-supers": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.9.tgz", - "integrity": "sha512-LJIKvvpgPOPUThdYqcX6IXRuIcTkcAub0IaDRGCZH0p5GPUp7PhRU9QVgFcDDd51BaPkk77ZjqFwh6DZTAEmGg==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.22.20.tgz", + "integrity": "sha512-qsW0In3dbwQUbK8kejJ4R7IHVGwHJlV6lpG6UA7a9hSa2YEiAib+N1T2kr6PEeUT+Fl7najmSOS6SmAwCHK6Tw==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.22.5", - "@babel/helper-member-expression-to-functions": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", + "@babel/helper-member-expression-to-functions": "^7.22.15", "@babel/helper-optimise-call-expression": "^7.22.5" } }, @@ -12420,14 +12727,14 @@ "dev": true }, "@babel/helper-wrap-function": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.10.tgz", - "integrity": "sha512-OnMhjWjuGYtdoO3FmsEFWvBStBAe2QOgwOLsLNDjN+aaiMD8InJk1/O3HSD8lkqTjCgg5YI34Tz15KNNA3p+nQ==", + "version": "7.22.20", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.22.20.tgz", + "integrity": "sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==", "dev": true, "requires": { "@babel/helper-function-name": "^7.22.5", - "@babel/template": "^7.22.5", - "@babel/types": "^7.22.10" + "@babel/template": "^7.22.15", + "@babel/types": "^7.22.19" } }, "@babel/helpers": { @@ -12439,19 +12746,6 @@ "@babel/template": "^7.22.15", "@babel/traverse": "^7.23.2", "@babel/types": "^7.23.0" - }, - "dependencies": { - "@babel/template": { - "version": "7.22.15", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", - "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.22.13", - "@babel/parser": "^7.22.15", - "@babel/types": "^7.22.15" - } - } } }, "@babel/highlight": { @@ -12472,35 +12766,23 @@ "dev": true }, "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.5.tgz", - "integrity": "sha512-NP1M5Rf+u2Gw9qfSO4ihjcTGW5zXTi36ITLd4/EoAcEhIZ0yjMqmftDNl3QC19CX7olhrjpyU454g/2W7X0jvQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.22.15.tgz", + "integrity": "sha512-FB9iYlz7rURmRJyXRKEnalYPPdn87H5no108cyuQQyMwlpJ2SJtpIUBI27kdTin956pz+LPypkPVPUTlxOmrsg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" } }, "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.5.tgz", - "integrity": "sha512-31Bb65aZaUwqCbWMnZPduIZxCBngHFlzyN6Dq6KAJjtx+lx6ohKHubc61OomYi7XwVD4Ol0XCVz4h+pYFR048g==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.22.15.tgz", + "integrity": "sha512-Hyph9LseGvAeeXzikV88bczhsrLrIZqDPxO+sSmAunMPaGrBGhfMWzCPYTtiW9t+HzSE2wtV8e5cc5P6r1xMDQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.5" - } - }, - "@babel/plugin-proposal-async-generator-functions": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.20.7.tgz", - "integrity": "sha512-xMbiLsn/8RK7Wq7VeVytytS2L6qE69bXPB10YCmMdDZbKF4okCqY74pI/jJQ/8U0b/F6NrT2+14b8/P9/3AMGA==", - "dev": true, - "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-plugin-utils": "^7.20.2", - "@babel/helper-remap-async-to-generator": "^7.18.9", - "@babel/plugin-syntax-async-generators": "^7.8.4" + "@babel/plugin-transform-optional-chaining": "^7.22.15" } }, "@babel/plugin-proposal-private-property-in-object": { @@ -12510,16 +12792,6 @@ "dev": true, "requires": {} }, - "@babel/plugin-proposal-unicode-property-regex": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.18.6.tgz", - "integrity": "sha512-2BShG/d5yoZyXZfVePH91urL5wTG6ASZU9M4o03lKK8u8UW1y08OMttBSOADTcJrnPMpvDXRG3G8fyLh4ovs8w==", - "dev": true, - "requires": { - "@babel/helper-create-regexp-features-plugin": "^7.18.6", - "@babel/helper-plugin-utils": "^7.18.6" - } - }, "@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", @@ -12693,14 +12965,14 @@ } }, "@babel/plugin-transform-async-generator-functions": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.22.10.tgz", - "integrity": "sha512-eueE8lvKVzq5wIObKK/7dvoeKJ+xc6TvRn6aysIjS6pSCeLy7S/eVi7pEQknZqyqvzaNKdDtem8nUNTBgDVR2g==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.23.2.tgz", + "integrity": "sha512-BBYVGxbDVHfoeXbOwcagAkOQAm9NxoTdMGfTqghu1GrvadSaw6iW3Je6IcL5PNOw8VwjxqBECXy50/iCQSY/lQ==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.22.5", + "@babel/helper-environment-visitor": "^7.22.20", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-remap-async-to-generator": "^7.22.9", + "@babel/helper-remap-async-to-generator": "^7.22.20", "@babel/plugin-syntax-async-generators": "^7.8.4" } }, @@ -12725,9 +12997,9 @@ } }, "@babel/plugin-transform-block-scoping": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.22.10.tgz", - "integrity": "sha512-1+kVpGAOOI1Albt6Vse7c8pHzcZQdQKW+wJH+g8mCaszOdDVwRXa/slHPqIw+oJAJANTKDMuM2cBdV0Dg618Vg==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.23.0.tgz", + "integrity": "sha512-cOsrbmIOXmf+5YbL99/S49Y3j46k/T16b9ml8bm9lP6N9US5iQ2yBK7gpui1pg0V/WMcXdkfKbTb7HXq9u+v4g==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" @@ -12744,29 +13016,29 @@ } }, "@babel/plugin-transform-class-static-block": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.5.tgz", - "integrity": "sha512-SPToJ5eYZLxlnp1UzdARpOGeC2GbHvr9d/UV0EukuVx8atktg194oe+C5BqQ8jRTkgLRVOPYeXRSBg1IlMoVRA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.22.11.tgz", + "integrity": "sha512-GMM8gGmqI7guS/llMFk1bJDkKfn3v3C4KHK9Yg1ey5qcHcOlKb0QvcMrgzvxo+T03/4szNh5lghY+fEC98Kq9g==", "dev": true, "requires": { - "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-class-static-block": "^7.14.5" } }, "@babel/plugin-transform-classes": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.6.tgz", - "integrity": "sha512-58EgM6nuPNG6Py4Z3zSuu0xWu2VfodiMi72Jt5Kj2FECmaYk1RrTXA45z6KBFsu9tRgwQDwIiY4FXTt+YsSFAQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.22.15.tgz", + "integrity": "sha512-VbbC3PGjBdE0wAWDdHM9G8Gm977pnYI0XpqMd6LrKISj8/DJXEsWqgRuTYaNE9Bv0JGhTZUzHDlMk18IpOuoqw==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.6", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-environment-visitor": "^7.22.5", "@babel/helper-function-name": "^7.22.5", "@babel/helper-optimise-call-expression": "^7.22.5", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-replace-supers": "^7.22.5", + "@babel/helper-replace-supers": "^7.22.9", "@babel/helper-split-export-declaration": "^7.22.6", "globals": "^11.1.0" } @@ -12782,9 +13054,9 @@ } }, "@babel/plugin-transform-destructuring": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.22.10.tgz", - "integrity": "sha512-dPJrL0VOyxqLM9sritNbMSGx/teueHF/htMKrPT7DNxccXxRDPYqlgPFFdr8u+F+qUZOkZoXue/6rL5O5GduEw==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.23.0.tgz", + "integrity": "sha512-vaMdgNXFkYrB+8lbgniSYWHsgqK5gjaMNcc84bMIOMRLH0L9AqYq3hwMdvnyqj1OPqea8UtjPEuS/DCenah1wg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" @@ -12810,9 +13082,9 @@ } }, "@babel/plugin-transform-dynamic-import": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.5.tgz", - "integrity": "sha512-0MC3ppTB1AMxd8fXjSrbPa7LT9hrImt+/fcj+Pg5YMD7UQyWp/02+JWpdnCymmsXwIx5Z+sYn1bwCn4ZJNvhqQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.22.11.tgz", + "integrity": "sha512-g/21plo58sfteWjaO0ZNVb+uEOkJNjAaHhbejrnBmu011l/eNDScmkbjCC3l4FKb10ViaGU4aOkFznSu2zRHgA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -12830,9 +13102,9 @@ } }, "@babel/plugin-transform-export-namespace-from": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.5.tgz", - "integrity": "sha512-X4hhm7FRnPgd4nDA4b/5V280xCx6oL7Oob5+9qVS5C13Zq4bh1qq7LU0GgRU6b5dBWBvhGaXYVB4AcN6+ol6vg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.22.11.tgz", + "integrity": "sha512-xa7aad7q7OiT8oNZ1mU7NrISjlSkVdMbNxn9IuLZyL9AJEhs1Apba3I+u5riX1dIkdptP5EKDG5XDPByWxtehw==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -12840,9 +13112,9 @@ } }, "@babel/plugin-transform-for-of": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.5.tgz", - "integrity": "sha512-3kxQjX1dU9uudwSshyLeEipvrLjBCVthCgeTp6CzE/9JYrlAIaeekVxRpCWsDDfYTfRZRoCeZatCQvwo+wvK8A==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.22.15.tgz", + "integrity": "sha512-me6VGeHsx30+xh9fbDLLPi0J1HzmeIIyenoOQHuw2D4m2SAU3NrspX5XxJLBpqn5yrLzrlw2Iy3RA//Bx27iOA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" @@ -12860,9 +13132,9 @@ } }, "@babel/plugin-transform-json-strings": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.5.tgz", - "integrity": "sha512-DuCRB7fu8MyTLbEQd1ew3R85nx/88yMoqo2uPSjevMj3yoN7CDM8jkgrY0wmVxfJZyJ/B9fE1iq7EQppWQmR5A==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.22.11.tgz", + "integrity": "sha512-CxT5tCqpA9/jXFlme9xIBCc5RPtdDq3JpkkhgHQqtDdiTnTI0jtZ0QzXhr5DILeYifDPp2wvY2ad+7+hLMW5Pw==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -12879,9 +13151,9 @@ } }, "@babel/plugin-transform-logical-assignment-operators": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.5.tgz", - "integrity": "sha512-MQQOUW1KL8X0cDWfbwYP+TbVbZm16QmQXJQ+vndPtH/BoO0lOKpVoEDMI7+PskYxH+IiE0tS8xZye0qr1lGzSA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.22.11.tgz", + "integrity": "sha512-qQwRTP4+6xFCDV5k7gZBF3C31K34ut0tbEcTKxlX/0KXxm9GLcO14p570aWxFvVzx6QAfPgq7gaeIHXJC8LswQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -12898,36 +13170,36 @@ } }, "@babel/plugin-transform-modules-amd": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.22.5.tgz", - "integrity": "sha512-R+PTfLTcYEmb1+kK7FNkhQ1gP4KgjpSO6HfH9+f8/yfp2Nt3ggBjiVpRwmwTlfqZLafYKJACy36yDXlEmI9HjQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.23.0.tgz", + "integrity": "sha512-xWT5gefv2HGSm4QHtgc1sYPbseOyf+FFDo2JbpE25GWl5BqTGO9IMwTYJRoIdjsF85GE+VegHxSCUt5EvoYTAw==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5" } }, "@babel/plugin-transform-modules-commonjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.22.5.tgz", - "integrity": "sha512-B4pzOXj+ONRmuaQTg05b3y/4DuFz3WcCNAXPLb2Q0GT0TrGKGxNKV4jwsXts+StaM0LQczZbOpj8o1DLPDJIiA==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.23.0.tgz", + "integrity": "sha512-32Xzss14/UVc7k9g775yMIvkVK8xwKE0DPdP5JTapr3+Z9w4tzeOuLNY6BXDQR6BdnzIlXnCGAzsk/ICHBLVWQ==", "dev": true, "requires": { - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5", "@babel/helper-simple-access": "^7.22.5" } }, "@babel/plugin-transform-modules-systemjs": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.22.5.tgz", - "integrity": "sha512-emtEpoaTMsOs6Tzz+nbmcePl6AKVtS1yC4YNAeMun9U8YCsgadPNxnOPQ8GhHFB2qdx+LZu9LgoC0Lthuu05DQ==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.23.0.tgz", + "integrity": "sha512-qBej6ctXZD2f+DhlOC9yO47yEYgUh5CZNz/aBoH4j/3NOlRfJXJbY7xDQCqQVf9KbrqGzIWER1f23doHGrIHFg==", "dev": true, "requires": { "@babel/helper-hoist-variables": "^7.22.5", - "@babel/helper-module-transforms": "^7.22.5", + "@babel/helper-module-transforms": "^7.23.0", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-identifier": "^7.22.5" + "@babel/helper-validator-identifier": "^7.22.20" } }, "@babel/plugin-transform-modules-umd": { @@ -12960,9 +13232,9 @@ } }, "@babel/plugin-transform-nullish-coalescing-operator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.5.tgz", - "integrity": "sha512-6CF8g6z1dNYZ/VXok5uYkkBBICHZPiGEl7oDnAx2Mt1hlHVHOSIKWJaXHjQJA5VB43KZnXZDIexMchY4y2PGdA==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.22.11.tgz", + "integrity": "sha512-YZWOw4HxXrotb5xsjMJUDlLgcDXSfO9eCmdl1bgW4+/lAGdkjaEvOnQ4p5WKKdUgSzO39dgPl0pTnfxm0OAXcg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -12970,9 +13242,9 @@ } }, "@babel/plugin-transform-numeric-separator": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.5.tgz", - "integrity": "sha512-NbslED1/6M+sXiwwtcAB/nieypGw02Ejf4KtDeMkCEpP6gWFMX1wI9WKYua+4oBneCCEmulOkRpwywypVZzs/g==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.22.11.tgz", + "integrity": "sha512-3dzU4QGPsILdJbASKhF/V2TVP+gJya1PsueQCxIPCEcerqF21oEcrob4mzjsp2Py/1nLfF5m+xYNMDpmA8vffg==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -12980,16 +13252,16 @@ } }, "@babel/plugin-transform-object-rest-spread": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.5.tgz", - "integrity": "sha512-Kk3lyDmEslH9DnvCDA1s1kkd3YWQITiBOHngOtDL9Pt6BZjzqb6hiOlb8VfjiiQJ2unmegBqZu0rx5RxJb5vmQ==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.22.15.tgz", + "integrity": "sha512-fEB+I1+gAmfAyxZcX1+ZUwLeAuuf8VIg67CTznZE0MqVFumWkh8xWtn58I4dxdVf080wn7gzWoF8vndOViJe9Q==", "dev": true, "requires": { - "@babel/compat-data": "^7.22.5", - "@babel/helper-compilation-targets": "^7.22.5", + "@babel/compat-data": "^7.22.9", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-object-rest-spread": "^7.8.3", - "@babel/plugin-transform-parameters": "^7.22.5" + "@babel/plugin-transform-parameters": "^7.22.15" } }, "@babel/plugin-transform-object-super": { @@ -13003,9 +13275,9 @@ } }, "@babel/plugin-transform-optional-catch-binding": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.5.tgz", - "integrity": "sha512-pH8orJahy+hzZje5b8e2QIlBWQvGpelS76C63Z+jhZKsmzfNaPQ+LaW6dcJ9bxTpo1mtXbgHwy765Ro3jftmUg==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.22.11.tgz", + "integrity": "sha512-rli0WxesXUeCJnMYhzAglEjLWVDF6ahb45HuprcmQuLidBJFWjNnOzssk2kuc6e33FlLaiZhG/kUIzUMWdBKaQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -13013,9 +13285,9 @@ } }, "@babel/plugin-transform-optional-chaining": { - "version": "7.22.10", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.22.10.tgz", - "integrity": "sha512-MMkQqZAZ+MGj+jGTG3OTuhKeBpNcO+0oCEbrGNEaOmiEn+1MzRyQlYsruGiU8RTK3zV6XwrVJTmwiDOyYK6J9g==", + "version": "7.23.0", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.23.0.tgz", + "integrity": "sha512-sBBGXbLJjxTzLBF5rFWaikMnOGOk/BmK6vVByIdEggZ7Vn6CvWXZyRkkLFK6WE0IF8jSliyOkUN6SScFgzCM0g==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5", @@ -13024,9 +13296,9 @@ } }, "@babel/plugin-transform-parameters": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.5.tgz", - "integrity": "sha512-AVkFUBurORBREOmHRKo06FjHYgjrabpdqRSwq6+C7R5iTCZOsM4QbcB27St0a4U6fffyAOqh3s/qEfybAhfivg==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.22.15.tgz", + "integrity": "sha512-hjk7qKIqhyzhhUvRT683TYQOFa/4cQKwQy7ALvTpODswN40MljzNDa0YldevS6tGbxwaEKVn502JmY0dP7qEtQ==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.22.5" @@ -13043,13 +13315,13 @@ } }, "@babel/plugin-transform-private-property-in-object": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.5.tgz", - "integrity": "sha512-/9xnaTTJcVoBtSSmrVyhtSvO3kbqS2ODoh2juEU72c3aYonNF0OMGiaz2gjukyKM2wBBYJP38S4JiE0Wfb5VMQ==", + "version": "7.22.11", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.22.11.tgz", + "integrity": "sha512-sSCbqZDBKHetvjSwpyWzhuHkmW5RummxJBVbYLkGkaiTOWGxml7SXt0iWa03bzxFIx7wOj3g/ILRd0RcJKBeSQ==", "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.22.5", - "@babel/helper-create-class-features-plugin": "^7.22.5", + "@babel/helper-create-class-features-plugin": "^7.22.11", "@babel/helper-plugin-utils": "^7.22.5", "@babel/plugin-syntax-private-property-in-object": "^7.14.5" } @@ -13083,16 +13355,16 @@ } }, "@babel/plugin-transform-runtime": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.22.9.tgz", - "integrity": "sha512-9KjBH61AGJetCPYp/IEyLEp47SyybZb0nDRpBvmtEkm+rUIwxdlKpyNHI1TmsGkeuLclJdleQHRZ8XLBnnh8CQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.23.2.tgz", + "integrity": "sha512-XOntj6icgzMS58jPVtQpiuF6ZFWxQiJavISGx5KGjRj+3gqZr8+N6Kx+N9BApWzgS+DOjIZfXXj0ZesenOWDyA==", "dev": true, "requires": { - "@babel/helper-module-imports": "^7.22.5", + "@babel/helper-module-imports": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", - "babel-plugin-polyfill-corejs2": "^0.4.4", - "babel-plugin-polyfill-corejs3": "^0.8.2", - "babel-plugin-polyfill-regenerator": "^0.5.1", + "babel-plugin-polyfill-corejs2": "^0.4.6", + "babel-plugin-polyfill-corejs3": "^0.8.5", + "babel-plugin-polyfill-regenerator": "^0.5.3", "semver": "^6.3.1" }, "dependencies": { @@ -13190,17 +13462,17 @@ } }, "@babel/preset-env": { - "version": "7.22.9", - "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.22.9.tgz", - "integrity": "sha512-wNi5H/Emkhll/bqPjsjQorSykrlfY5OWakd6AulLvMEytpKasMVUpVy8RL4qBIBs5Ac6/5i0/Rv0b/Fg6Eag/g==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.23.2.tgz", + "integrity": "sha512-BW3gsuDD+rvHL2VO2SjAUNTBe5YrjsTiDyqamPDWY723na3/yPQ65X5oQkFVJZ0o50/2d+svm1rkPoJeR1KxVQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.22.9", - "@babel/helper-compilation-targets": "^7.22.9", + "@babel/compat-data": "^7.23.2", + "@babel/helper-compilation-targets": "^7.22.15", "@babel/helper-plugin-utils": "^7.22.5", - "@babel/helper-validator-option": "^7.22.5", - "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.5", - "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.5", + "@babel/helper-validator-option": "^7.22.15", + "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.22.15", + "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.22.15", "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "^7.12.13", @@ -13221,58 +13493,58 @@ "@babel/plugin-syntax-top-level-await": "^7.14.5", "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6", "@babel/plugin-transform-arrow-functions": "^7.22.5", - "@babel/plugin-transform-async-generator-functions": "^7.22.7", + "@babel/plugin-transform-async-generator-functions": "^7.23.2", "@babel/plugin-transform-async-to-generator": "^7.22.5", "@babel/plugin-transform-block-scoped-functions": "^7.22.5", - "@babel/plugin-transform-block-scoping": "^7.22.5", + "@babel/plugin-transform-block-scoping": "^7.23.0", "@babel/plugin-transform-class-properties": "^7.22.5", - "@babel/plugin-transform-class-static-block": "^7.22.5", - "@babel/plugin-transform-classes": "^7.22.6", + "@babel/plugin-transform-class-static-block": "^7.22.11", + "@babel/plugin-transform-classes": "^7.22.15", "@babel/plugin-transform-computed-properties": "^7.22.5", - "@babel/plugin-transform-destructuring": "^7.22.5", + "@babel/plugin-transform-destructuring": "^7.23.0", "@babel/plugin-transform-dotall-regex": "^7.22.5", "@babel/plugin-transform-duplicate-keys": "^7.22.5", - "@babel/plugin-transform-dynamic-import": "^7.22.5", + "@babel/plugin-transform-dynamic-import": "^7.22.11", "@babel/plugin-transform-exponentiation-operator": "^7.22.5", - "@babel/plugin-transform-export-namespace-from": "^7.22.5", - "@babel/plugin-transform-for-of": "^7.22.5", + "@babel/plugin-transform-export-namespace-from": "^7.22.11", + "@babel/plugin-transform-for-of": "^7.22.15", "@babel/plugin-transform-function-name": "^7.22.5", - "@babel/plugin-transform-json-strings": "^7.22.5", + "@babel/plugin-transform-json-strings": "^7.22.11", "@babel/plugin-transform-literals": "^7.22.5", - "@babel/plugin-transform-logical-assignment-operators": "^7.22.5", + "@babel/plugin-transform-logical-assignment-operators": "^7.22.11", "@babel/plugin-transform-member-expression-literals": "^7.22.5", - "@babel/plugin-transform-modules-amd": "^7.22.5", - "@babel/plugin-transform-modules-commonjs": "^7.22.5", - "@babel/plugin-transform-modules-systemjs": "^7.22.5", + "@babel/plugin-transform-modules-amd": "^7.23.0", + "@babel/plugin-transform-modules-commonjs": "^7.23.0", + "@babel/plugin-transform-modules-systemjs": "^7.23.0", "@babel/plugin-transform-modules-umd": "^7.22.5", "@babel/plugin-transform-named-capturing-groups-regex": "^7.22.5", "@babel/plugin-transform-new-target": "^7.22.5", - "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.5", - "@babel/plugin-transform-numeric-separator": "^7.22.5", - "@babel/plugin-transform-object-rest-spread": "^7.22.5", + "@babel/plugin-transform-nullish-coalescing-operator": "^7.22.11", + "@babel/plugin-transform-numeric-separator": "^7.22.11", + "@babel/plugin-transform-object-rest-spread": "^7.22.15", "@babel/plugin-transform-object-super": "^7.22.5", - "@babel/plugin-transform-optional-catch-binding": "^7.22.5", - "@babel/plugin-transform-optional-chaining": "^7.22.6", - "@babel/plugin-transform-parameters": "^7.22.5", + "@babel/plugin-transform-optional-catch-binding": "^7.22.11", + "@babel/plugin-transform-optional-chaining": "^7.23.0", + "@babel/plugin-transform-parameters": "^7.22.15", "@babel/plugin-transform-private-methods": "^7.22.5", - "@babel/plugin-transform-private-property-in-object": "^7.22.5", + "@babel/plugin-transform-private-property-in-object": "^7.22.11", "@babel/plugin-transform-property-literals": "^7.22.5", - "@babel/plugin-transform-regenerator": "^7.22.5", + "@babel/plugin-transform-regenerator": "^7.22.10", "@babel/plugin-transform-reserved-words": "^7.22.5", "@babel/plugin-transform-shorthand-properties": "^7.22.5", "@babel/plugin-transform-spread": "^7.22.5", "@babel/plugin-transform-sticky-regex": "^7.22.5", "@babel/plugin-transform-template-literals": "^7.22.5", "@babel/plugin-transform-typeof-symbol": "^7.22.5", - "@babel/plugin-transform-unicode-escapes": "^7.22.5", + "@babel/plugin-transform-unicode-escapes": "^7.22.10", "@babel/plugin-transform-unicode-property-regex": "^7.22.5", "@babel/plugin-transform-unicode-regex": "^7.22.5", "@babel/plugin-transform-unicode-sets-regex": "^7.22.5", - "@babel/preset-modules": "^0.1.5", - "@babel/types": "^7.22.5", - "babel-plugin-polyfill-corejs2": "^0.4.4", - "babel-plugin-polyfill-corejs3": "^0.8.2", - "babel-plugin-polyfill-regenerator": "^0.5.1", + "@babel/preset-modules": "0.1.6-no-external-plugins", + "@babel/types": "^7.23.0", + "babel-plugin-polyfill-corejs2": "^0.4.6", + "babel-plugin-polyfill-corejs3": "^0.8.5", + "babel-plugin-polyfill-regenerator": "^0.5.3", "core-js-compat": "^3.31.0", "semver": "^6.3.1" }, @@ -13286,14 +13558,12 @@ } }, "@babel/preset-modules": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6.tgz", - "integrity": "sha512-ID2yj6K/4lKfhuU3+EX4UvNbIt7eACFbHmNUjzA+ep+B5971CknnA/9DEWKbRokfbbtblxxxXFJJrH47UEAMVg==", + "version": "0.1.6-no-external-plugins", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz", + "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==", "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.0.0", - "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", - "@babel/plugin-transform-dotall-regex": "^7.4.4", "@babel/types": "^7.4.4", "esutils": "^2.0.2" } @@ -13305,23 +13575,23 @@ "dev": true }, "@babel/runtime": { - "version": "7.22.6", - "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.22.6.tgz", - "integrity": "sha512-wDb5pWm4WDdF6LFUde3Jl8WzPA+3ZbxYqkC6xAXuD3irdEHN1k0NfTRrJD8ZD378SJ61miMLCqIOXYhd8x+AJQ==", + "version": "7.23.2", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.2.tgz", + "integrity": "sha512-mM8eg4yl5D6i3lu2QKPuPH4FArvJ8KhTofbE7jwMUv9KX5mBvwPAqnV3MlyBNqdp9RyRKP6Yck8TrfYrPvX3bg==", "dev": true, "requires": { - "regenerator-runtime": "^0.13.11" + "regenerator-runtime": "^0.14.0" } }, "@babel/template": { - "version": "7.22.5", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.5.tgz", - "integrity": "sha512-X7yV7eiwAxdj9k94NEylvbVHLiVG1nvzCV2EAowhxLTwODV1jl9UzZ48leOC0sH7OnuHrIkllaBgneUykIcZaw==", + "version": "7.22.15", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz", + "integrity": "sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w==", "dev": true, "requires": { - "@babel/code-frame": "^7.22.5", - "@babel/parser": "^7.22.5", - "@babel/types": "^7.22.5" + "@babel/code-frame": "^7.22.13", + "@babel/parser": "^7.22.15", + "@babel/types": "^7.22.15" } }, "@babel/traverse": { @@ -13340,20 +13610,6 @@ "@babel/types": "^7.23.0", "debug": "^4.1.0", "globals": "^11.1.0" - }, - "dependencies": { - "@babel/generator": { - "version": "7.23.0", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.23.0.tgz", - "integrity": "sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g==", - "dev": true, - "requires": { - "@babel/types": "^7.23.0", - "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", - "jsesc": "^2.5.1" - } - } } }, "@babel/types": { @@ -13373,6 +13629,12 @@ "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==", "dev": true }, + "@fastify/busboy": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.0.0.tgz", + "integrity": "sha512-JUFJad5lv7jxj926GPgymrWQxxjPYuJNiNjNMzqT+HiuP6Vl3dk5xzG+8sTX96np0ZAluvaMzPsjhHZ5rNuNQQ==", + "dev": true + }, "@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", @@ -13512,10 +13774,19 @@ "integrity": "sha512-Hcv+nVC0kZnQ3tD9GVu5xSMR4VVYOteQIr/hwFPVEvPdlXqgGEuRjiheChHgdM+JyqdgNcmzZOX/tnl0JOiI7A==", "dev": true }, + "@ljharb/through": { + "version": "2.3.11", + "resolved": "https://registry.npmjs.org/@ljharb/through/-/through-2.3.11.tgz", + "integrity": "sha512-ccfcIDlogiXNq5KcbAwbaO7lMh3Tm1i3khMPYpxlK8hH/W53zN81KM9coerRLOnTGu3nfXIniAmQbRI9OxbC0w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, "@ngtools/webpack": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-16.2.7.tgz", - "integrity": "sha512-QnVoYpMNMuV387VgmP/c/ylD9qUIZpN02LMg3rQqz7NDej0jboBZaxqLJ+7jQaCoEIFVGIgL/RR/X1kponxJZg==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@ngtools/webpack/-/webpack-17.0.0.tgz", + "integrity": "sha512-/Bb5MXlphNp3UDsQDa4EB4AwpF4D/plrCPd5YGfVvD43j5g5Rpen+cqz5jai1zfAkF1dPl2qq0nRp/jwmJO3uA==", "dev": true, "requires": {} }, @@ -13545,6 +13816,27 @@ "fastq": "^1.6.0" } }, + "@npmcli/agent": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@npmcli/agent/-/agent-2.2.0.tgz", + "integrity": "sha512-2yThA1Es98orMkpSLVqlDZAMPK3jHJhifP2gnNUdk1754uZ8yI5c+ulCoVG+WlntQA6MzhrURMXjSd9Z7dJ2/Q==", + "dev": true, + "requires": { + "agent-base": "^7.1.0", + "http-proxy-agent": "^7.0.0", + "https-proxy-agent": "^7.0.1", + "lru-cache": "^10.0.1", + "socks-proxy-agent": "^8.0.1" + }, + "dependencies": { + "lru-cache": { + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", + "dev": true + } + } + }, "@npmcli/fs": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz", @@ -13555,25 +13847,25 @@ } }, "@npmcli/git": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz", - "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==", + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-5.0.3.tgz", + "integrity": "sha512-UZp9NwK+AynTrKvHn5k3KviW/hA5eENmFsu3iAPe7sWRt0lFUdsY/wXIYjpDFe7cdSNwOIzbObfwgt6eL5/2zw==", "dev": true, "requires": { - "@npmcli/promise-spawn": "^6.0.0", - "lru-cache": "^7.4.4", - "npm-pick-manifest": "^8.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "lru-cache": "^10.0.1", + "npm-pick-manifest": "^9.0.0", "proc-log": "^3.0.0", "promise-inflight": "^1.0.1", "promise-retry": "^2.0.1", "semver": "^7.3.5", - "which": "^3.0.0" + "which": "^4.0.0" }, "dependencies": { "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true } } @@ -13595,25 +13887,25 @@ "dev": true }, "@npmcli/promise-spawn": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz", - "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-7.0.0.tgz", + "integrity": "sha512-wBqcGsMELZna0jDblGd7UXgOby45TQaMWmbFwWX+SEotk4HV6zG2t6rT9siyLhPk4P6YYqgfL1UO8nMWDBVJXQ==", "dev": true, "requires": { - "which": "^3.0.0" + "which": "^4.0.0" } }, "@npmcli/run-script": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz", - "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-7.0.2.tgz", + "integrity": "sha512-Omu0rpA8WXvcGeY6DDzyRoY1i5DkCBkzyJ+m2u7PD6quzb0TvSqdIPOkTn8ZBOj7LbbcbMfZ3c5skwSu6m8y2w==", "dev": true, "requires": { "@npmcli/node-gyp": "^3.0.0", - "@npmcli/promise-spawn": "^6.0.0", - "node-gyp": "^9.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "node-gyp": "^10.0.0", "read-package-json-fast": "^3.0.0", - "which": "^3.0.0" + "which": "^4.0.0" } }, "@pkgjs/parseargs": { @@ -13624,52 +13916,72 @@ "optional": true }, "@schematics/angular": { - "version": "16.2.7", - "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-16.2.7.tgz", - "integrity": "sha512-sL+7vmwYPdo29rp99XYlm8gibqcjjOL5LKEleVQlv63SRES3HLMt7DeYivUfizcMENu/1hDtX41ig4Mu1SpNzg==", + "version": "17.0.0", + "resolved": "https://registry.npmjs.org/@schematics/angular/-/angular-17.0.0.tgz", + "integrity": "sha512-9jKU5x/WzaBsfSkUowK1X74FqtMXa6+A60XgW4ACO8i6fwKfPeS+tIrAieeYOX80/njBh7I5CvcpHmWA2SbcXQ==", "dev": true, "requires": { - "@angular-devkit/core": "16.2.7", - "@angular-devkit/schematics": "16.2.7", + "@angular-devkit/core": "17.0.0", + "@angular-devkit/schematics": "17.0.0", "jsonc-parser": "3.2.0" } }, + "@sigstore/bundle": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-2.1.0.tgz", + "integrity": "sha512-89uOo6yh/oxaU8AeOUnVrTdVMcGk9Q1hJa7Hkvalc6G3Z3CupWk4Xe9djSgJm9fMkH69s0P0cVHUoKSOemLdng==", + "dev": true, + "requires": { + "@sigstore/protobuf-specs": "^0.2.1" + } + }, "@sigstore/protobuf-specs": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.1.0.tgz", - "integrity": "sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ==", + "version": "0.2.1", + "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz", + "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==", "dev": true }, + "@sigstore/sign": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-2.2.0.tgz", + "integrity": "sha512-AAbmnEHDQv6CSfrWA5wXslGtzLPtAtHZleKOgxdQYvx/s76Fk6T6ZVt7w2IGV9j1UrFeBocTTQxaXG2oRrDhYA==", + "dev": true, + "requires": { + "@sigstore/bundle": "^2.1.0", + "@sigstore/protobuf-specs": "^0.2.1", + "make-fetch-happen": "^13.0.0" + } + }, "@sigstore/tuf": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.2.tgz", - "integrity": "sha512-vjwcYePJzM01Ha6oWWZ9gNcdIgnzyFxfqfWzph483DPJTH8Tb7f7bQRRll3CYVkyH56j0AgcPAcl6Vg95DPF+Q==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-2.2.0.tgz", + "integrity": "sha512-KKATZ5orWfqd9ZG6MN8PtCIx4eevWSuGRKQvofnWXRpyMyUEpmrzg5M5BrCpjM+NfZ0RbNGOh5tCz/P2uoRqOA==", "dev": true, "requires": { - "@sigstore/protobuf-specs": "^0.1.0", - "tuf-js": "^1.1.7" + "@sigstore/protobuf-specs": "^0.2.1", + "tuf-js": "^2.1.0" } }, - "@tootallnate/once": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz", - "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==", + "@socket.io/component-emitter": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz", + "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==", "dev": true }, "@tufjs/canonical-json": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz", - "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-2.0.0.tgz", + "integrity": "sha512-yVtV8zsdo8qFHe+/3kw81dSLyF7D576A5cCFCi4X7B39tWT7SekaEFUnvnWJHz+9qO7qJTah1JbrDjWKqFtdWA==", "dev": true }, "@tufjs/models": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz", - "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-2.0.0.tgz", + "integrity": "sha512-c8nj8BaOExmZKO2DXhDfegyhSGcG9E/mPN3U13L+/PsoWm1uaGiHHjxqSHQiasDBQwDA3aHuw9+9spYAP1qvvg==", "dev": true, "requires": { - "@tufjs/canonical-json": "1.0.0", - "minimatch": "^9.0.0" + "@tufjs/canonical-json": "2.0.0", + "minimatch": "^9.0.3" }, "dependencies": { "brace-expansion": { @@ -13682,9 +13994,9 @@ } }, "minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -13693,9 +14005,9 @@ } }, "@types/body-parser": { - "version": "1.19.4", - "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.4.tgz", - "integrity": "sha512-N7UDG0/xiPQa2D/XrVJXjkWbpqHCd2sBaB32ggRF2l83RhPfamgKGF8gwwqyksS95qUS5ZYF9aF+lLPRlwI2UA==", + "version": "1.19.5", + "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz", + "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==", "dev": true, "requires": { "@types/connect": "*", @@ -13703,33 +14015,48 @@ } }, "@types/bonjour": { - "version": "3.5.12", - "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.12.tgz", - "integrity": "sha512-ky0kWSqXVxSqgqJvPIkgFkcn4C8MnRog308Ou8xBBIVo39OmUFy+jqNe0nPwLCDFxUpmT9EvT91YzOJgkDRcFg==", + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@types/bonjour/-/bonjour-3.5.13.tgz", + "integrity": "sha512-z9fJ5Im06zvUL548KvYNecEVlA7cVDkGUi6kZusb04mpyEFKCIZJvloCcmpmLaIahDpOQGHaHmG6imtPMmPXGQ==", "dev": true, "requires": { "@types/node": "*" } }, "@types/connect": { - "version": "3.4.37", - "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.37.tgz", - "integrity": "sha512-zBUSRqkfZ59OcwXon4HVxhx5oWCJmc0OtBTK05M+p0dYjgN6iTwIL2T/WbsQZrEsdnwaF9cWQ+azOnpPvIqY3Q==", + "version": "3.4.38", + "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz", + "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==", "dev": true, "requires": { "@types/node": "*" } }, "@types/connect-history-api-fallback": { - "version": "1.5.2", - "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.2.tgz", - "integrity": "sha512-gX2j9x+NzSh4zOhnRPSdPPmTepS4DfxES0AvIFv3jGv5QyeAJf6u6dY5/BAoAJU9Qq1uTvwOku8SSC2GnCRl6Q==", + "version": "1.5.3", + "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.5.3.tgz", + "integrity": "sha512-6mfQ6iNvhSKCZJoY6sIG3m0pKkdUcweVNOLuBBKvoWGzl2yRxOJcYOTRyLKt3nxXvBLJWa6QkW//tgbIwJehmA==", "dev": true, "requires": { "@types/express-serve-static-core": "*", "@types/node": "*" } }, + "@types/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==", + "dev": true + }, + "@types/cors": { + "version": "2.8.16", + "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.16.tgz", + "integrity": "sha512-Trx5or1Nyg1Fq138PCuWqoApzvoSLWzZ25ORBiHMbbUT42g578lH1GT4TwYDbiUOLFuDsCkfLneT2105fsFWGg==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/eslint": { "version": "8.4.1", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.4.1.tgz", @@ -13757,9 +14084,9 @@ "dev": true }, "@types/express": { - "version": "4.17.20", - "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.20.tgz", - "integrity": "sha512-rOaqlkgEvOW495xErXMsmyX3WKBInbhG5eqojXYi3cGUaLoRDlXa5d52fkfWZT963AZ3v2eZ4MbKE6WpDAGVsw==", + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz", + "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==", "dev": true, "requires": { "@types/body-parser": "*", @@ -13769,9 +14096,9 @@ } }, "@types/express-serve-static-core": { - "version": "4.17.39", - "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.39.tgz", - "integrity": "sha512-BiEUfAiGCOllomsRAZOiMFP7LAnrifHpt56pc4Z7l9K6ACyN06Ns1JLMBxwkfLOjJRlSf06NwWsT7yzfpaVpyQ==", + "version": "4.17.41", + "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.41.tgz", + "integrity": "sha512-OaJ7XLaelTgrvlZD8/aa0vvvxZdUmlCn6MtWeB7TkiKW70BQLc9XEPpDLPdbo52ZhXUCrznlWdCHWxJWtdyajA==", "dev": true, "requires": { "@types/node": "*", @@ -13781,15 +14108,15 @@ } }, "@types/http-errors": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.3.tgz", - "integrity": "sha512-pP0P/9BnCj1OVvQR2lF41EkDG/lWWnDyA203b/4Fmi2eTyORnBtcDoKDwjWQthELrBvWkMOrvSOnZ8OVlW6tXA==", + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz", + "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==", "dev": true }, "@types/http-proxy": { - "version": "1.17.13", - "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.13.tgz", - "integrity": "sha512-GkhdWcMNiR5QSQRYnJ+/oXzu0+7JJEPC8vkWXK351BkhjraZF+1W13CUYARUvX9+NqIU2n6YHA4iwywsc/M6Sw==", + "version": "1.17.14", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.14.tgz", + "integrity": "sha512-SSrD0c1OQzlFX7pGu1eXxSEjemej64aaNPRhhVYUGqXh0BtldAAx37MG8btcumvpgKyZp1F5Gn3JkktdxiFv6w==", "dev": true, "requires": { "@types/node": "*" @@ -13802,9 +14129,9 @@ "dev": true }, "@types/mime": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.4.tgz", - "integrity": "sha512-1Gjee59G25MrQGk8bsNvC6fxNiRgUlGn2wlhGf95a59DrprnnHk80FIMMFG9XHMdrfsuA119ht06QPDXA1Z7tw==", + "version": "1.3.5", + "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz", + "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==", "dev": true }, "@types/node": { @@ -13813,16 +14140,25 @@ "integrity": "sha512-i1KGxqcvJaLQali+WuypQnXwcplhtNtjs66eNsZpp2P2FL/trJJxx/VWsM0YCL2iMoIJrbXje48lvIQAQ4p2ZA==", "dev": true }, + "@types/node-forge": { + "version": "1.3.9", + "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.9.tgz", + "integrity": "sha512-meK88cx/sTalPSLSoCzkiUB4VPIFHmxtXm5FaaqRDqBX2i/Sy8bJ4odsan0b20RBjPh06dAQ+OTTdnyQyhJZyQ==", + "dev": true, + "requires": { + "@types/node": "*" + } + }, "@types/qs": { - "version": "6.9.9", - "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.9.tgz", - "integrity": "sha512-wYLxw35euwqGvTDx6zfY1vokBFnsK0HNrzc6xNHchxfO2hpuRg74GbkEW7e3sSmPvj0TjCDT1VCa6OtHXnubsg==", + "version": "6.9.10", + "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.10.tgz", + "integrity": "sha512-3Gnx08Ns1sEoCrWssEgTSJs/rsT2vhGP+Ja9cnnk9k4ALxinORlQneLXFeFKOTJMOeZUFD1s7w+w2AphTpvzZw==", "dev": true }, "@types/range-parser": { - "version": "1.2.6", - "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.6.tgz", - "integrity": "sha512-+0autS93xyXizIYiyL02FCY8N+KkKPhILhcUSA276HxzreZ16kl+cmwvV2qAM/PuCCwPXzOXOWhiPcw20uSFcA==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz", + "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==", "dev": true }, "@types/retry": { @@ -13832,9 +14168,9 @@ "dev": true }, "@types/send": { - "version": "0.17.3", - "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.3.tgz", - "integrity": "sha512-/7fKxvKUoETxjFUsuFlPB9YndePpxxRAOfGC/yJdc9kTjTeP5kRCTzfnE8kPUKCeyiyIZu0YQ76s50hCedI1ug==", + "version": "0.17.4", + "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz", + "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==", "dev": true, "requires": { "@types/mime": "^1", @@ -13842,18 +14178,18 @@ } }, "@types/serve-index": { - "version": "1.9.3", - "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.3.tgz", - "integrity": "sha512-4KG+yMEuvDPRrYq5fyVm/I2uqAJSAwZK9VSa+Zf+zUq9/oxSSvy3kkIqyL+jjStv6UCVi8/Aho0NHtB1Fwosrg==", + "version": "1.9.4", + "resolved": "https://registry.npmjs.org/@types/serve-index/-/serve-index-1.9.4.tgz", + "integrity": "sha512-qLpGZ/c2fhSs5gnYsQxtDEq3Oy8SXPClIXkW5ghvAvsNuVSA8k+gCONcUCS/UjLEYvYps+e8uBtfgXgvhwfNug==", "dev": true, "requires": { "@types/express": "*" } }, "@types/serve-static": { - "version": "1.15.4", - "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.4.tgz", - "integrity": "sha512-aqqNfs1XTF0HDrFdlY//+SGUxmdSUbjeRXb5iaZc3x0/vMbYmdw9qvOgHWOyyLFxSSRnUuP5+724zBgfw8/WAw==", + "version": "1.15.5", + "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz", + "integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==", "dev": true, "requires": { "@types/http-errors": "*", @@ -13862,18 +14198,18 @@ } }, "@types/sockjs": { - "version": "0.3.35", - "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.35.tgz", - "integrity": "sha512-tIF57KB+ZvOBpAQwSaACfEu7htponHXaFzP7RfKYgsOS0NoYnn+9+jzp7bbq4fWerizI3dTB4NfAZoyeQKWJLw==", + "version": "0.3.36", + "resolved": "https://registry.npmjs.org/@types/sockjs/-/sockjs-0.3.36.tgz", + "integrity": "sha512-MK9V6NzAS1+Ud7JV9lJLFqW85VbC9dq3LmwZCuBe4wBDgKC0Kj/jd8Xl+nSviU+Qc3+m7umHHyHg//2KSa0a0Q==", "dev": true, "requires": { "@types/node": "*" } }, "@types/ws": { - "version": "8.5.8", - "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.8.tgz", - "integrity": "sha512-flUksGIQCnJd6sZ1l5dqCEG/ksaoAg/eUwiLAGTJQcfgvZJKF++Ta4bJA6A5aPSJmsr+xlseHn4KLgVlNnvPTg==", + "version": "8.5.9", + "resolved": "https://registry.npmjs.org/@types/ws/-/ws-8.5.9.tgz", + "integrity": "sha512-jbdrY0a8lxfdTp/+r7Z4CkycbOFN8WX+IOchLJr3juT/xzbJ8URyTVSJ/hvNdadTgM1mnedb47n+Y31GsFnQlg==", "dev": true, "requires": { "@types/node": "*" @@ -14025,69 +14361,6 @@ "@xtuc/long": "4.2.2" } }, - "@wessberg/ts-evaluator": { - "version": "0.0.27", - "resolved": "https://registry.npmjs.org/@wessberg/ts-evaluator/-/ts-evaluator-0.0.27.tgz", - "integrity": "sha512-7gOpVm3yYojUp/Yn7F4ZybJRxyqfMNf0LXK5KJiawbPfL0XTsJV+0mgrEDjOIR6Bi0OYk2Cyg4tjFu1r8MCZaA==", - "dev": true, - "requires": { - "chalk": "^4.1.0", - "jsdom": "^16.4.0", - "object-path": "^0.11.5", - "tslib": "^2.0.3" - }, - "dependencies": { - "ansi-styles": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - "dev": true, - "requires": { - "color-convert": "^2.0.1" - } - }, - "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } - }, - "color-convert": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - "dev": true, - "requires": { - "color-name": "~1.1.4" - } - }, - "color-name": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - "dev": true - }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, - "requires": { - "has-flag": "^4.0.0" - } - } - } - }, "@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", @@ -14113,9 +14386,9 @@ "dev": true }, "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz", + "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==", "dev": true }, "accepts": { @@ -14134,24 +14407,6 @@ "integrity": "sha512-jaVNAFBHNLXspO543WnNNPZFRtavh3skAkITqD0/2aeMkKZTN+254PyhwxFYrk3vQ1xfY+2wbesJMs/JC8/PwQ==", "dev": true }, - "acorn-globals": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/acorn-globals/-/acorn-globals-6.0.0.tgz", - "integrity": "sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg==", - "dev": true, - "requires": { - "acorn": "^7.1.1", - "acorn-walk": "^7.1.1" - }, - "dependencies": { - "acorn": { - "version": "7.4.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", - "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", - "dev": true - } - } - }, "acorn-import-assertions": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz", @@ -14159,12 +14414,6 @@ "dev": true, "requires": {} }, - "acorn-walk": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz", - "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==", - "dev": true - }, "adjust-sourcemap-loader": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/adjust-sourcemap-loader/-/adjust-sourcemap-loader-4.0.0.tgz", @@ -14189,23 +14438,12 @@ } }, "agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "dev": true, - "requires": { - "debug": "4" - } - }, - "agentkeepalive": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz", - "integrity": "sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==", + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz", + "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==", "dev": true, "requires": { - "debug": "^4.1.0", - "depd": "^2.0.0", - "humanize-ms": "^1.2.1" + "debug": "^4.3.4" } }, "aggregate-error": { @@ -14294,22 +14532,6 @@ "picomatch": "^2.0.4" } }, - "aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "dev": true - }, - "are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - } - }, "argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", @@ -14325,26 +14547,44 @@ "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", "dev": true }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "async": { + "version": "2.6.4", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", + "integrity": "sha512-mzo5dfJYwAn29PeiJ0zvwTo04zj8HDJj0Mn8TD7sno7q12prdbnasKJHhkm2c1LgrhlJ0teaea8860oxi51mGA==", + "dev": true, + "requires": { + "lodash": "^4.17.14" + } + }, + "async-each-series": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/async-each-series/-/async-each-series-0.1.1.tgz", + "integrity": "sha512-p4jj6Fws4Iy2m0iCmI2am2ZNZCgbdgE+P8F/8csmn2vx7ixXrO2zGcuNsD46X5uZSVecmkEy/M06X2vG8KD6dQ==", "dev": true }, "autoprefixer": { - "version": "10.4.14", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.14.tgz", - "integrity": "sha512-FQzyfOsTlwVzjHxKEqRIAdJx9niO6VCBCoEwax/VLSoQF29ggECcPuBqUMZ+u8jCZOPSy8b8/8KnuFbp0SaFZQ==", + "version": "10.4.16", + "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.16.tgz", + "integrity": "sha512-7vd3UC6xKp0HLfua5IjZlcXvGAGy7cBAXTg2lyQ/8WpNhd6SiZ8Be+xm3FyBSYJx5GKcpRCzBh7RH4/0dnY+uQ==", "dev": true, "requires": { - "browserslist": "^4.21.5", - "caniuse-lite": "^1.0.30001464", - "fraction.js": "^4.2.0", + "browserslist": "^4.21.10", + "caniuse-lite": "^1.0.30001538", + "fraction.js": "^4.3.6", "normalize-range": "^0.1.2", "picocolors": "^1.0.0", "postcss-value-parser": "^4.2.0" } }, + "axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dev": true, + "requires": { + "follow-redirects": "^1.14.0" + } + }, "babel-loader": { "version": "9.1.3", "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-9.1.3.tgz", @@ -14369,13 +14609,13 @@ } }, "babel-plugin-polyfill-corejs2": { - "version": "0.4.5", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.5.tgz", - "integrity": "sha512-19hwUH5FKl49JEsvyTcoHakh6BE0wgXLLptIyKZ3PijHc/Ci521wygORCUCCred+E/twuqRyAkE02BAWPmsHOg==", + "version": "0.4.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.6.tgz", + "integrity": "sha512-jhHiWVZIlnPbEUKSSNb9YoWcQGdlTLq7z1GHL4AjFxaoOUMuuEVJ+Y4pAaQUGOGk93YsVCKPbqbfw3m0SM6H8Q==", "dev": true, "requires": { "@babel/compat-data": "^7.22.6", - "@babel/helper-define-polyfill-provider": "^0.4.2", + "@babel/helper-define-polyfill-provider": "^0.4.3", "semver": "^6.3.1" }, "dependencies": { @@ -14388,22 +14628,22 @@ } }, "babel-plugin-polyfill-corejs3": { - "version": "0.8.3", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.3.tgz", - "integrity": "sha512-z41XaniZL26WLrvjy7soabMXrfPWARN25PZoriDEiLMxAp50AUW3t35BGQUMg5xK3UrpVTtagIDklxYa+MhiNA==", + "version": "0.8.6", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.8.6.tgz", + "integrity": "sha512-leDIc4l4tUgU7str5BWLS2h8q2N4Nf6lGZP6UrNDxdtfF2g69eJ5L0H7S8A5Ln/arfFAfHor5InAdZuIOwZdgQ==", "dev": true, "requires": { - "@babel/helper-define-polyfill-provider": "^0.4.2", - "core-js-compat": "^3.31.0" + "@babel/helper-define-polyfill-provider": "^0.4.3", + "core-js-compat": "^3.33.1" } }, "babel-plugin-polyfill-regenerator": { - "version": "0.5.2", - "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.2.tgz", - "integrity": "sha512-tAlOptU0Xj34V1Y2PNTL4Y0FOJMDB6bZmoW39FeCQIhigGLkqu3Fj6uiXpxIf6Ij274ENdYx64y6Au+ZKlb1IA==", + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.5.3.tgz", + "integrity": "sha512-8sHeDOmXC8csczMrYEOf0UTNa4yE2SxV5JGeT/LP1n0OYVDUUFPxG9vdk2AlDlIit4t+Kf0xCtpgXPBwnn/9pw==", "dev": true, "requires": { - "@babel/helper-define-polyfill-provider": "^0.4.2" + "@babel/helper-define-polyfill-provider": "^0.4.3" } }, "balanced-match": { @@ -14418,6 +14658,12 @@ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", "dev": true }, + "base64id": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/base64id/-/base64id-2.0.0.tgz", + "integrity": "sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==", + "dev": true + }, "batch": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", @@ -14467,84 +14713,282 @@ "unpipe": "1.0.0" }, "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, + "raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dev": true, + "requires": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + } + } + } + }, + "bonjour-service": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.1.tgz", + "integrity": "sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==", + "dev": true, + "requires": { + "array-flatten": "^2.1.2", + "dns-equal": "^1.0.0", + "fast-deep-equal": "^3.1.3", + "multicast-dns": "^7.2.5" + } + }, + "boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "dev": true + }, + "brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "requires": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "requires": { + "fill-range": "^7.0.1" + } + }, + "browser-sync": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/browser-sync/-/browser-sync-2.29.3.tgz", + "integrity": "sha512-NiM38O6XU84+MN+gzspVmXV2fTOoe+jBqIBx3IBdhZrdeURr6ZgznJr/p+hQ+KzkKEiGH/GcC4SQFSL0jV49bg==", + "dev": true, + "requires": { + "browser-sync-client": "^2.29.3", + "browser-sync-ui": "^2.29.3", + "bs-recipes": "1.3.4", + "chalk": "4.1.2", + "chokidar": "^3.5.1", + "connect": "3.6.6", + "connect-history-api-fallback": "^1", + "dev-ip": "^1.0.1", + "easy-extender": "^2.3.4", + "eazy-logger": "^4.0.1", + "etag": "^1.8.1", + "fresh": "^0.5.2", + "fs-extra": "3.0.1", + "http-proxy": "^1.18.1", + "immutable": "^3", + "localtunnel": "^2.0.1", + "micromatch": "^4.0.2", + "opn": "5.3.0", + "portscanner": "2.2.0", + "raw-body": "^2.3.2", + "resp-modifier": "6.0.2", + "rx": "4.1.0", + "send": "0.16.2", + "serve-index": "1.9.1", + "serve-static": "1.13.2", + "server-destroy": "1.0.1", + "socket.io": "^4.4.1", + "ua-parser-js": "^1.0.33", + "yargs": "^17.3.1" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "immutable": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", + "integrity": "sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, + "browser-sync-client": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/browser-sync-client/-/browser-sync-client-2.29.3.tgz", + "integrity": "sha512-4tK5JKCl7v/3aLbmCBMzpufiYLsB1+UI+7tUXCCp5qF0AllHy/jAqYu6k7hUF3hYtlClKpxExWaR+rH+ny07wQ==", + "dev": true, + "requires": { + "etag": "1.8.1", + "fresh": "0.5.2", + "mitt": "^1.1.3" + } + }, + "browser-sync-ui": { + "version": "2.29.3", + "resolved": "https://registry.npmjs.org/browser-sync-ui/-/browser-sync-ui-2.29.3.tgz", + "integrity": "sha512-kBYOIQjU/D/3kYtUIJtj82e797Egk1FB2broqItkr3i4eF1qiHbFCG6srksu9gWhfmuM/TNG76jMfzAdxEPakg==", + "dev": true, + "requires": { + "async-each-series": "0.1.1", + "chalk": "4.1.2", + "connect-history-api-fallback": "^1", + "immutable": "^3", + "server-destroy": "1.0.1", + "socket.io-client": "^4.4.1", + "stream-throttle": "^0.1.3" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "immutable": { + "version": "3.8.2", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-3.8.2.tgz", + "integrity": "sha512-15gZoQ38eYjEjxkorfbcgBKBL6R7T459OuK+CpcWt7O3KF4uPCx2tD0uFETlUDIyo+1789crbMhTvQBSR5yBMg==", "dev": true }, - "debug": { - "version": "2.6.9", - "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", - "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", "dev": true, "requires": { - "ms": "2.0.0" + "has-flag": "^4.0.0" } - }, - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true } } }, - "bonjour-service": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/bonjour-service/-/bonjour-service-1.1.1.tgz", - "integrity": "sha512-Z/5lQRMOG9k7W+FkeGTNjh7htqn/2LMnfOvBZ8pynNZCM9MwkQkI3zeI4oz09uWdcgmgHugVvBqxGg4VQJ5PCg==", - "dev": true, - "requires": { - "array-flatten": "^2.1.2", - "dns-equal": "^1.0.0", - "fast-deep-equal": "^3.1.3", - "multicast-dns": "^7.2.5" - } - }, - "boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", - "dev": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "braces": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", - "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "browserslist": { + "version": "4.22.1", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.1.tgz", + "integrity": "sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ==", "dev": true, "requires": { - "fill-range": "^7.0.1" + "caniuse-lite": "^1.0.30001541", + "electron-to-chromium": "^1.4.535", + "node-releases": "^2.0.13", + "update-browserslist-db": "^1.0.13" } }, - "browser-process-hrtime": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz", - "integrity": "sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow==", + "bs-recipes": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/bs-recipes/-/bs-recipes-1.3.4.tgz", + "integrity": "sha512-BXvDkqhDNxXEjeGM8LFkSbR+jzmP/CYpCiVKYn+soB1dDldeU15EBNDkwVXndKuX35wnNUaPd0qSoQEAkmQtMw==", "dev": true }, - "browserslist": { - "version": "4.21.9", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.9.tgz", - "integrity": "sha512-M0MFoZzbUrRU4KNfCrDLnvyE7gub+peetoTid3TBIqtunaDJyXlwhakT+/VkvSXcfIzFfK/nkCs4nmyTmxdNSg==", - "dev": true, - "requires": { - "caniuse-lite": "^1.0.30001503", - "electron-to-chromium": "^1.4.431", - "node-releases": "^2.0.12", - "update-browserslist-db": "^1.0.11" - } - }, "buffer": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", @@ -14571,22 +15015,22 @@ } }, "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", "dev": true }, "cacache": { - "version": "17.1.3", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.3.tgz", - "integrity": "sha512-jAdjGxmPxZh0IipMdR7fK/4sDSrHMLUV0+GvVUsjwyGNKHsh79kW/otg+GkbXwl6Uzvy9wsvHOX4nUoWldeZMg==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-18.0.0.tgz", + "integrity": "sha512-I7mVOPl3PUCeRub1U8YoGz2Lqv9WOBpobZ8RyWFXmReuILz+3OAyTa5oH3QPdtKZD7N0Yk00aLfzn0qvp8dZ1w==", "dev": true, "requires": { "@npmcli/fs": "^3.1.0", "fs-minipass": "^3.0.0", "glob": "^10.2.2", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", + "lru-cache": "^10.0.1", + "minipass": "^7.0.3", "minipass-collect": "^1.0.2", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", @@ -14606,28 +15050,28 @@ } }, "glob": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.1.tgz", - "integrity": "sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "requires": { "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", + "jackspeak": "^2.3.5", "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.10.0" + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" } }, "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true }, "minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -14659,9 +15103,9 @@ "dev": true }, "caniuse-lite": { - "version": "1.0.30001512", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001512.tgz", - "integrity": "sha512-2S9nK0G/mE+jasCUsMPlARhRCts1ebcp2Ji8Y8PWi4NDE1iRdLCnEPHkEfeBrGC45L4isBx5ur3IQ6yTE2mRZw==", + "version": "1.0.30001561", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001561.tgz", + "integrity": "sha512-NTt0DNoKe958Q0BE0j0c1V9jbUzhBxHIEJy7asmGrpE0yG63KTV7PLHPnK2E1O9RsQrQ081I3NLuXGS6zht3cw==", "dev": true }, "chalk": { @@ -14731,9 +15175,9 @@ "dev": true }, "cli-width": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", - "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-4.1.0.tgz", + "integrity": "sha512-ouuZd4/dm2Sw5Gmqy6bGyNNNe1qt9RpmxveLSO7KcgsTnU7RXfsw+/bukWGo1abgBiMAic068rclZsO4IWmmxQ==", "dev": true }, "cliui": { @@ -14779,27 +15223,12 @@ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==", "dev": true }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "dev": true - }, "colorette": { "version": "2.0.20", "resolved": "https://registry.npmjs.org/colorette/-/colorette-2.0.20.tgz", "integrity": "sha512-IfEDxwoWIjkeXL1eXcDiow4UbKjhLdq6/EuSVR9GMN7KVH3r9gQ83e73hsz1Nd1T3ijd5xv1wcWRYO+D6kCI2w==", "dev": true }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, "commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", @@ -14836,6 +15265,12 @@ "vary": "~1.1.2" }, "dependencies": { + "bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==", + "dev": true + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -14859,16 +15294,39 @@ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", "dev": true }, - "connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true + "connect": { + "version": "3.6.6", + "resolved": "https://registry.npmjs.org/connect/-/connect-3.6.6.tgz", + "integrity": "sha512-OO7axMmPpu/2XuX1+2Yrg0ddju31B6xLZMWkJ5rYBu4YRmRVlOjvlY6kw2FJKiAzyxGwnrDUAG4s1Pf0sbBMCQ==", + "dev": true, + "requires": { + "debug": "2.6.9", + "finalhandler": "1.1.0", + "parseurl": "~1.3.2", + "utils-merge": "1.0.1" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } }, - "console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", + "connect-history-api-fallback": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz", + "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==", "dev": true }, "content-disposition": { @@ -14904,9 +15362,9 @@ } }, "cookie": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", - "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", "dev": true }, "cookie-signature": { @@ -14950,12 +15408,12 @@ } }, "core-js-compat": { - "version": "3.32.0", - "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.32.0.tgz", - "integrity": "sha512-7a9a3D1k4UCVKnLhrgALyFcP7YCsLOQIxPd0dKjf/6GuPcgyiGP70ewWdCGrSK7evyhymi0qO4EqCmSJofDeYw==", + "version": "3.33.2", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.33.2.tgz", + "integrity": "sha512-axfo+wxFVxnqf8RvxTzoAlzW4gRoacrHeoFlc9n0x50+7BEyZL/Rt3hicaED1/CEd7I6tPCPVUYcJwCMO5XUYw==", "dev": true, "requires": { - "browserslist": "^4.21.9" + "browserslist": "^4.22.1" } }, "core-util-is": { @@ -14964,6 +15422,16 @@ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==", "dev": true }, + "cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dev": true, + "requires": { + "object-assign": "^4", + "vary": "^1" + } + }, "cosmiconfig": { "version": "8.2.0", "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.2.0.tgz", @@ -15070,6 +15538,12 @@ "which": "^2.0.1" }, "dependencies": { + "isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "dev": true + }, "which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -15122,40 +15596,6 @@ "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", "dev": true }, - "cssom": { - "version": "0.4.4", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz", - "integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw==", - "dev": true - }, - "cssstyle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-2.3.0.tgz", - "integrity": "sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==", - "dev": true, - "requires": { - "cssom": "~0.3.6" - }, - "dependencies": { - "cssom": { - "version": "0.3.8", - "resolved": "https://registry.npmjs.org/cssom/-/cssom-0.3.8.tgz", - "integrity": "sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg==", - "dev": true - } - } - }, - "data-urls": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-2.0.0.tgz", - "integrity": "sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ==", - "dev": true, - "requires": { - "abab": "^2.0.3", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.0.0" - } - }, "debug": { "version": "4.3.4", "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", @@ -15165,12 +15605,6 @@ "ms": "2.1.2" } }, - "decimal.js": { - "version": "10.4.3", - "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.4.3.tgz", - "integrity": "sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==", - "dev": true - }, "default-gateway": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", @@ -15206,18 +15640,6 @@ "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", "dev": true }, - "delayed-stream": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", - "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", - "dev": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "dev": true - }, "depd": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", @@ -15225,9 +15647,9 @@ "dev": true }, "destroy": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", - "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg==", "dev": true }, "detect-node": { @@ -15236,6 +15658,12 @@ "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==", "dev": true }, + "dev-ip": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/dev-ip/-/dev-ip-1.0.1.tgz", + "integrity": "sha512-LmVkry/oDShEgSZPNgqCIp2/TlqtExeGmymru3uCELnfyjY11IzpAproLYs+1X88fXO6DBoYP3ul2Xo2yz2j6A==", + "dev": true + }, "dir-glob": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", @@ -15277,23 +15705,6 @@ "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", "dev": true }, - "domexception": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/domexception/-/domexception-2.0.1.tgz", - "integrity": "sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg==", - "dev": true, - "requires": { - "webidl-conversions": "^5.0.0" - }, - "dependencies": { - "webidl-conversions": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-5.0.0.tgz", - "integrity": "sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA==", - "dev": true - } - } - }, "domhandler": { "version": "5.0.3", "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", @@ -15320,6 +15731,75 @@ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", "dev": true }, + "easy-extender": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/easy-extender/-/easy-extender-2.3.4.tgz", + "integrity": "sha512-8cAwm6md1YTiPpOvDULYJL4ZS6WfM5/cTeVVh4JsvyYZAoqlRVUpHL9Gr5Fy7HA6xcSZicUia3DeAgO3Us8E+Q==", + "dev": true, + "requires": { + "lodash": "^4.17.10" + } + }, + "eazy-logger": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/eazy-logger/-/eazy-logger-4.0.1.tgz", + "integrity": "sha512-2GSFtnnC6U4IEKhEI7+PvdxrmjJ04mdsj3wHZTFiw0tUtG4HCWzTr13ZYTk8XOGnA1xQMaDljoBOYlk3D/MMSw==", + "dev": true, + "requires": { + "chalk": "4.1.2" + }, + "dependencies": { + "ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "requires": { + "color-convert": "^2.0.1" + } + }, + "chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "requires": { + "color-name": "~1.1.4" + } + }, + "color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true + }, + "supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "requires": { + "has-flag": "^4.0.0" + } + } + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", @@ -15327,9 +15807,9 @@ "dev": true }, "electron-to-chromium": { - "version": "1.4.450", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.450.tgz", - "integrity": "sha512-BLG5HxSELlrMx7dJ2s+8SFlsCtJp37Zpk2VAxyC6CZtbc+9AJeZHfYHbrlSgdXp6saQ8StMqOTEDaBKgA7u1sw==", + "version": "1.4.578", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.578.tgz", + "integrity": "sha512-V0ZhSu1BQZKfG0yNEL6Dadzik8E1vAzfpVOapdSiT9F6yapEJ3Bk+4tZ4SMPdWiUchCgnM/ByYtBzp5ntzDMIA==", "dev": true }, "emoji-regex": { @@ -15372,6 +15852,43 @@ } } }, + "engine.io": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/engine.io/-/engine.io-6.5.3.tgz", + "integrity": "sha512-IML/R4eG/pUS5w7OfcDE0jKrljWS9nwnEfsxWCIJF5eO6AHo6+Hlv+lQbdlAYsiJPHzUthLm1RUjnBzWOs45cw==", + "dev": true, + "requires": { + "@types/cookie": "^0.4.1", + "@types/cors": "^2.8.12", + "@types/node": ">=10.0.0", + "accepts": "~1.3.4", + "base64id": "2.0.0", + "cookie": "~0.4.1", + "cors": "~2.8.5", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0" + } + }, + "engine.io-client": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/engine.io-client/-/engine.io-client-6.5.2.tgz", + "integrity": "sha512-CQZqbrpEYnrpGqC07a9dJDz4gePZUgTPMU3NKJPSeQOyw27Tst4Pl3FemKoFGAlHzgZmKjoRmiJvbWfhCXUlIg==", + "dev": true, + "requires": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1", + "engine.io-parser": "~5.2.1", + "ws": "~8.11.0", + "xmlhttprequest-ssl": "~2.0.0" + } + }, + "engine.io-parser": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/engine.io-parser/-/engine.io-parser-5.2.1.tgz", + "integrity": "sha512-9JktcM3u18nU9N2Lz3bWeBgxVgOKpw7yhRaoxQA3FUDZzzw+9WlA6p4G4u0RixNkg14fH7EfEc/RhpurtiROTQ==", + "dev": true + }, "enhanced-resolve": { "version": "5.15.0", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.15.0.tgz", @@ -15426,9 +15943,9 @@ "dev": true }, "esbuild-wasm": { - "version": "0.18.17", - "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.18.17.tgz", - "integrity": "sha512-9OHGcuRzy+I8ziF9FzjfKLWAPbvi0e/metACVg9k6bK+SI4FFxeV6PcZsz8RIVaMD4YNehw+qj6UMR3+qj/EuQ==", + "version": "0.19.5", + "resolved": "https://registry.npmjs.org/esbuild-wasm/-/esbuild-wasm-0.19.5.tgz", + "integrity": "sha512-7zmLLn2QCj93XfMmHtzrDJ1UBuOHB2CZz1ghoCEZiRajxjUvHsF40PnbzFIY/pmesqPRaEtEWii0uzsTbnAgrA==", "dev": true }, "escalade": { @@ -15449,33 +15966,6 @@ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", "dev": true }, - "escodegen": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/escodegen/-/escodegen-2.1.0.tgz", - "integrity": "sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w==", - "dev": true, - "requires": { - "esprima": "^4.0.1", - "estraverse": "^5.2.0", - "esutils": "^2.0.2", - "source-map": "~0.6.1" - }, - "dependencies": { - "estraverse": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", - "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", - "dev": true - }, - "source-map": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, - "optional": true - } - } - }, "eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", @@ -15613,6 +16103,12 @@ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==", "dev": true }, + "cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "dev": true + }, "debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", @@ -15622,17 +16118,94 @@ "ms": "2.0.0" } }, + "destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "dev": true + }, + "finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + } + }, "ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", "dev": true }, + "on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dev": true, + "requires": { + "ee-first": "1.1.1" + } + }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", "dev": true + }, + "send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dev": true, + "requires": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "dependencies": { + "ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + } + } + }, + "serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dev": true, + "requires": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + } + }, + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true } } }, @@ -15691,12 +16264,27 @@ } }, "figures": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", - "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-5.0.0.tgz", + "integrity": "sha512-ej8ksPF4x6e5wvK9yevct0UCXh8TTFlWGVLlgjZuoBH1HwjIfKE/IdL5mq89sFA7zELi1VhKpmtDnrs7zWyeyg==", "dev": true, "requires": { - "escape-string-regexp": "^1.0.5" + "escape-string-regexp": "^5.0.0", + "is-unicode-supported": "^1.2.0" + }, + "dependencies": { + "escape-string-regexp": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-5.0.0.tgz", + "integrity": "sha512-/veY75JbMK4j1yjvuUxuVsiS/hr/4iHs9FTT6cgTexxdE0Ly/glccBAkloH/DofkjRbZU3bnoj38mOmhkZ0lHw==", + "dev": true + }, + "is-unicode-supported": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", + "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", + "dev": true + } } }, "fill-range": { @@ -15709,17 +16297,17 @@ } }, "finalhandler": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", - "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.0.tgz", + "integrity": "sha512-ejnvM9ZXYzp6PUPUyQBMBf0Co5VX2gr5H2VQe2Ui2jWXNlxv+PYZo8wpAymJNJdLsG1R4p+M4aynF8KuoUEwRw==", "dev": true, "requires": { "debug": "2.6.9", - "encodeurl": "~1.0.2", + "encodeurl": "~1.0.1", "escape-html": "~1.0.3", - "on-finished": "2.4.1", - "parseurl": "~1.3.3", - "statuses": "2.0.1", + "on-finished": "~2.3.0", + "parseurl": "~1.3.2", + "statuses": "~1.3.1", "unpipe": "~1.0.0" }, "dependencies": { @@ -15760,6 +16348,12 @@ "path-exists": "^4.0.0" } }, + "flat": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", + "integrity": "sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==", + "dev": true + }, "follow-redirects": { "version": "1.15.3", "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.3.tgz", @@ -15777,24 +16371,13 @@ }, "dependencies": { "signal-exit": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz", - "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", + "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", "dev": true } } }, - "form-data": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", - "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", - "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.8", - "mime-types": "^2.1.12" - } - }, "forwarded": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", @@ -15802,9 +16385,9 @@ "dev": true }, "fraction.js": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.2.0.tgz", - "integrity": "sha512-MhLuK+2gUcnZe8ZHlaaINnQLl0xRIGRfcGk2yl8xoQAfHrSsL3rYu6FCmBdkdbhc9EPlwyGHewaRsvwRMJtAlA==", + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", + "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", "dev": true }, "fresh": { @@ -15813,13 +16396,24 @@ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", "dev": true }, + "fs-extra": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-3.0.1.tgz", + "integrity": "sha512-V3Z3WZWVUYd8hoCL5xfXJCaHWYzmtwW5XWYSlLgERi8PWd8bx1kUHUk8L1BT57e49oKnDDD180mjfrHc1yA9rg==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.2", + "jsonfile": "^3.0.0", + "universalify": "^0.1.0" + } + }, "fs-minipass": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.2.tgz", - "integrity": "sha512-2GAfyfoaCDRrM6jaOS3UsBts8yJ55VioXdWcOL7dK9zdAuKT71+WBA4ifnNYqVjYv+4SsPxjK0JT4yIIn4cA/g==", + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.3.tgz", + "integrity": "sha512-XUBA9XClHbnJWSfBzjkm6RvPsyg3sryZt06BEQoXcF7EK/xpGaQYJgQKDJSUH5SGZ76Y7pFx1QBnXz09rU5Fbw==", "dev": true, "requires": { - "minipass": "^5.0.0" + "minipass": "^7.0.3" } }, "fs-monkey": { @@ -15847,22 +16441,6 @@ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", "dev": true }, - "gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "dev": true, - "requires": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - } - }, "gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", @@ -15876,15 +16454,15 @@ "dev": true }, "get-intrinsic": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.1.tgz", - "integrity": "sha512-2DcsyfABl+gVHEfCOaTrWgyt+tb6MSEGmKq+kI5HwLbIYgjgmMcV8KQ41uaKz1xxUcn9tJtgFbQUEVcEbd0FYw==", + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", + "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", "dev": true, "requires": { - "function-bind": "^1.1.1", - "has": "^1.0.3", + "function-bind": "^1.1.2", "has-proto": "^1.0.1", - "has-symbols": "^1.0.3" + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" } }, "get-package-type": { @@ -15962,30 +16540,12 @@ "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==", "dev": true }, - "guess-parser": { - "version": "0.4.22", - "resolved": "https://registry.npmjs.org/guess-parser/-/guess-parser-0.4.22.tgz", - "integrity": "sha512-KcUWZ5ACGaBM69SbqwVIuWGoSAgD+9iJnchR9j/IarVI1jHVeXv+bUXBIMeqVMSKt3zrn0Dgf9UpcOEpPBLbSg==", - "dev": true, - "requires": { - "@wessberg/ts-evaluator": "0.0.27" - } - }, "handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, "has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", @@ -15993,12 +16553,12 @@ "dev": true }, "has-property-descriptors": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.0.tgz", - "integrity": "sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==", + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", + "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", "dev": true, "requires": { - "get-intrinsic": "^1.1.1" + "get-intrinsic": "^1.2.2" } }, "has-proto": { @@ -16013,11 +16573,14 @@ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", "dev": true }, - "has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "dev": true + "hasown": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", + "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", + "dev": true, + "requires": { + "function-bind": "^1.1.2" + } }, "hdr-histogram-js": { "version": "2.0.3", @@ -16037,18 +16600,18 @@ "dev": true }, "hosted-git-info": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz", - "integrity": "sha512-r0EI+HBMcXadMrugk0GCQ+6BQV39PiWAZVfq7oIckeGiN7sjRGyQxPdft3nQekFTCQbYxLBH+/axZMeH8UX6+w==", + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-7.0.1.tgz", + "integrity": "sha512-+K84LB1DYwMHoHSgaOY/Jfhw3ucPmSET5v98Ke/HdNSw4a0UktWzyW1mjhjpuxxTqOOsfWT/7iVshHmVZ4IpOA==", "dev": true, "requires": { - "lru-cache": "^7.5.1" + "lru-cache": "^10.0.1" }, "dependencies": { "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true } } @@ -16091,15 +16654,6 @@ } } }, - "html-encoding-sniffer": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz", - "integrity": "sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ==", - "dev": true, - "requires": { - "whatwg-encoding": "^1.0.5" - } - }, "html-entities": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-2.4.0.tgz", @@ -16141,6 +16695,14 @@ "setprototypeof": "1.2.0", "statuses": "2.0.1", "toidentifier": "1.0.1" + }, + "dependencies": { + "statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "dev": true + } } }, "http-parser-js": { @@ -16161,14 +16723,13 @@ } }, "http-proxy-agent": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz", - "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.0.tgz", + "integrity": "sha512-+ZT+iBxVUQ1asugqnD6oWoRiS25AkjNfG085dKJGtGxkdwLQrMKU5wJr2bOOFAXzKcTuqq+7fZlTMgG3SRfIYQ==", "dev": true, "requires": { - "@tootallnate/once": "2", - "agent-base": "6", - "debug": "4" + "agent-base": "^7.1.0", + "debug": "^4.3.4" } }, "http-proxy-middleware": { @@ -16185,12 +16746,12 @@ } }, "https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.2.tgz", + "integrity": "sha512-NmLNjm6ucYwtcUmL7JQC1ZQ57LmHP4lT15FQ8D61nak1rO6DH+fz5qNK2Ap5UN4ZapYICE3/0KodcLYSPsPbaA==", "dev": true, "requires": { - "agent-base": "6", + "agent-base": "^7.0.2", "debug": "4" } }, @@ -16200,15 +16761,6 @@ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", "dev": true }, - "humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "dev": true, - "requires": { - "ms": "^2.0.0" - } - }, "iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -16256,9 +16808,9 @@ } }, "minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -16332,26 +16884,26 @@ "dev": true }, "inquirer": { - "version": "8.2.4", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz", - "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==", + "version": "9.2.11", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-9.2.11.tgz", + "integrity": "sha512-B2LafrnnhbRzCWfAdOXisUzL89Kg8cVJlYmhqoi3flSiV/TveO+nsXwgKr9h9PIo+J1hz7nBSk6gegRIMBBf7g==", "dev": true, "requires": { - "ansi-escapes": "^4.2.1", - "chalk": "^4.1.1", + "@ljharb/through": "^2.3.9", + "ansi-escapes": "^4.3.2", + "chalk": "^5.3.0", "cli-cursor": "^3.1.0", - "cli-width": "^3.0.0", - "external-editor": "^3.0.3", - "figures": "^3.0.0", + "cli-width": "^4.1.0", + "external-editor": "^3.1.0", + "figures": "^5.0.0", "lodash": "^4.17.21", - "mute-stream": "0.0.8", + "mute-stream": "1.0.0", "ora": "^5.4.1", - "run-async": "^2.4.0", - "rxjs": "^7.5.5", - "string-width": "^4.1.0", - "strip-ansi": "^6.0.0", - "through": "^2.3.6", - "wrap-ansi": "^7.0.0" + "run-async": "^3.0.0", + "rxjs": "^7.8.1", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^6.2.0" }, "dependencies": { "ansi-styles": { @@ -16364,14 +16916,10 @@ } }, "chalk": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, - "requires": { - "ansi-styles": "^4.1.0", - "supports-color": "^7.1.0" - } + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", + "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", + "dev": true }, "color-convert": { "version": "2.0.1", @@ -16388,28 +16936,24 @@ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", "dev": true }, - "has-flag": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true - }, "rxjs": { - "version": "7.5.5", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.5.5.tgz", - "integrity": "sha512-sy+H0pQofO95VDmFLzyaw9xNJU4KTRSwQIGM6+iG3SypAtCiLDzpeG8sJrNCWn2Up9km+KhkvTdbkrdy+yzZdw==", + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz", + "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==", "dev": true, "requires": { "tslib": "^2.1.0" } }, - "supports-color": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "wrap-ansi": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz", + "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==", "dev": true, "requires": { - "has-flag": "^4.0.0" + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" } } } @@ -16442,12 +16986,12 @@ } }, "is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "requires": { - "has": "^1.0.3" + "hasown": "^2.0.0" } }, "is-docker": { @@ -16495,6 +17039,15 @@ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", "dev": true }, + "is-number-like": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/is-number-like/-/is-number-like-1.0.8.tgz", + "integrity": "sha512-6rZi3ezCyFcn5L71ywzz2bS5b2Igl1En3eTlZlvKjpz1n3IZLAYMbKYAIQgFmEu0GENg92ziU/faEOA/aixjbA==", + "dev": true, + "requires": { + "lodash.isfinite": "^3.3.2" + } + }, "is-plain-obj": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz", @@ -16510,12 +17063,6 @@ "isobject": "^3.0.1" } }, - "is-potential-custom-element-name": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", - "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", - "dev": true - }, "is-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", @@ -16550,9 +17097,9 @@ "dev": true }, "isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-3.1.1.tgz", + "integrity": "sha512-LpB/54B+/2J5hqQ7imZHfdU31OlgQqx7ZicVlkm9kzg9/w8GKLEcFfJl/t7DCEDueOyBAD6zCCwTO6Fzs0NoEQ==", "dev": true }, "isobject": { @@ -16589,9 +17136,9 @@ } }, "jackspeak": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.1.tgz", - "integrity": "sha512-MXbxovZ/Pm42f6cDIDkl3xpwv1AGwObKwfmjs2nQePiy85tP3fatofl3FC1aBsOtP/6fq5SbtgHwWcMsLP+bDw==", + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", + "integrity": "sha512-N3yCS/NegsOBokc8GAdM8UcmfsKiSS8cipheD/nivzr700H+nsMOxJjQnvwOcRYVuFkdH0wGUvW2WbXGmrZGbQ==", "dev": true, "requires": { "@isaacs/cliui": "^8.0.2", @@ -16648,60 +17195,6 @@ "esprima": "^4.0.0" } }, - "jsdom": { - "version": "16.7.0", - "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-16.7.0.tgz", - "integrity": "sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw==", - "dev": true, - "requires": { - "abab": "^2.0.5", - "acorn": "^8.2.4", - "acorn-globals": "^6.0.0", - "cssom": "^0.4.4", - "cssstyle": "^2.3.0", - "data-urls": "^2.0.0", - "decimal.js": "^10.2.1", - "domexception": "^2.0.1", - "escodegen": "^2.0.0", - "form-data": "^3.0.0", - "html-encoding-sniffer": "^2.0.1", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-potential-custom-element-name": "^1.0.1", - "nwsapi": "^2.2.0", - "parse5": "6.0.1", - "saxes": "^5.0.1", - "symbol-tree": "^3.2.4", - "tough-cookie": "^4.0.0", - "w3c-hr-time": "^1.0.2", - "w3c-xmlserializer": "^2.0.0", - "webidl-conversions": "^6.1.0", - "whatwg-encoding": "^1.0.5", - "whatwg-mimetype": "^2.3.0", - "whatwg-url": "^8.5.0", - "ws": "^7.4.6", - "xml-name-validator": "^3.0.0" - }, - "dependencies": { - "@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "dev": true - }, - "http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "dev": true, - "requires": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - } - } - } - }, "jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -16732,6 +17225,15 @@ "integrity": "sha512-gfFQZrcTc8CnKXp6Y4/CBT3fTc0OVuDofpre4aEeEpSBPV5X5v4+Vmx+8snU7RLPrNHPKSgLxGo9YuQzz20o+w==", "dev": true }, + "jsonfile": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz", + "integrity": "sha512-oBko6ZHlubVB5mRFkur5vgYR1UyqX+S6Y/oCfLhqNdcc2fYFlDpIoNc7AfKS1KOGcnNAkvsr0grLck9ANM815w==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.6" + } + }, "jsonparse": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", @@ -16770,9 +17272,9 @@ } }, "less": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/less/-/less-4.1.3.tgz", - "integrity": "sha512-w16Xk/Ta9Hhyei0Gpz9m7VS8F28nieJaL/VyShID7cYvP6IL5oHeL6p4TXSDJqZE/lNv0oJ2pGVjJsRkfwm5FA==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/less/-/less-4.2.0.tgz", + "integrity": "sha512-P3b3HJDBtSzsXUl0im2L7gTO5Ubg8mEN6G8qoTS77iXxXX4Hvu4Qj540PZDvQ8V6DmX6iXo98k7Md0Cm1PrLaA==", "dev": true, "requires": { "copy-anything": "^2.0.1", @@ -16832,6 +17334,12 @@ "webpack-sources": "^3.0.0" } }, + "limiter": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/limiter/-/limiter-1.1.5.tgz", + "integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==", + "dev": true + }, "lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", @@ -16850,6 +17358,61 @@ "integrity": "sha512-ZvFw1KWS3GVyYBYb7qkmRM/WwL2TQQBxgCK62rlvm4WpVQ23Nb4tYjApUlfjrEGvOs7KHEsmyUn75OHZrJMWPw==", "dev": true }, + "localtunnel": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/localtunnel/-/localtunnel-2.0.2.tgz", + "integrity": "sha512-n418Cn5ynvJd7m/N1d9WVJISLJF/ellZnfsLnx8WBWGzxv/ntNcFkJ1o6se5quUhCplfLGBNL5tYHiq5WF3Nug==", + "dev": true, + "requires": { + "axios": "0.21.4", + "debug": "4.3.2", + "openurl": "1.1.1", + "yargs": "17.1.1" + }, + "dependencies": { + "cliui": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "dev": true, + "requires": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.0", + "wrap-ansi": "^7.0.0" + } + }, + "debug": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz", + "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==", + "dev": true, + "requires": { + "ms": "2.1.2" + } + }, + "yargs": { + "version": "17.1.1", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.1.1.tgz", + "integrity": "sha512-c2k48R0PwKIqKhPMWjeiF6y2xY/gPMUlro0sgxqXpbOIohWiLNXWslsootttv7E1e73QPAMQSg5FeySbVcpsPQ==", + "dev": true, + "requires": { + "cliui": "^7.0.2", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.0", + "y18n": "^5.0.5", + "yargs-parser": "^20.2.2" + } + }, + "yargs-parser": { + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "dev": true + } + } + }, "locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", @@ -16871,6 +17434,12 @@ "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==", "dev": true }, + "lodash.isfinite": { + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz", + "integrity": "sha512-7FGG40uhC8Mm633uKW1r58aElFlBlxCrg9JfSi3P6aYiWmfiWF0PgMd86ZUsxE5GwWPdHoS2+48bwTh2VPkIQA==", + "dev": true + }, "log-symbols": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", @@ -16942,9 +17511,9 @@ } }, "magic-string": { - "version": "0.30.1", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.1.tgz", - "integrity": "sha512-mbVKXPmS0z0G4XqFDCTllmDQ6coZzn94aMlb0o/A4HEHJCKcanlDZwYJgwnkmgD3jyWhUgj9VsPrfd972yPffA==", + "version": "0.30.5", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.5.tgz", + "integrity": "sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA==", "dev": true, "requires": { "@jridgewell/sourcemap-codec": "^1.4.15" @@ -16959,34 +17528,22 @@ } }, "make-fetch-happen": { - "version": "11.1.1", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz", - "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==", + "version": "13.0.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-13.0.0.tgz", + "integrity": "sha512-7ThobcL8brtGo9CavByQrQi+23aIfgYU++wg4B87AIS8Rb2ZBt/MEaDqzA00Xwv/jUjAjYkLHjVolYuTLKda2A==", "dev": true, "requires": { - "agentkeepalive": "^4.2.1", - "cacache": "^17.0.0", + "@npmcli/agent": "^2.0.0", + "cacache": "^18.0.0", "http-cache-semantics": "^4.1.1", - "http-proxy-agent": "^5.0.0", - "https-proxy-agent": "^5.0.0", "is-lambda": "^1.0.1", - "lru-cache": "^7.7.1", - "minipass": "^5.0.0", + "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", "minipass-flush": "^1.0.5", "minipass-pipeline": "^1.2.4", "negotiator": "^0.6.3", "promise-retry": "^2.0.1", - "socks-proxy-agent": "^7.0.0", "ssri": "^10.0.0" - }, - "dependencies": { - "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "dev": true - } } }, "media-typer": { @@ -17090,9 +17647,9 @@ } }, "minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz", + "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==", "dev": true }, "minipass-collect": { @@ -17116,13 +17673,13 @@ } }, "minipass-fetch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz", - "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==", + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz", + "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==", "dev": true, "requires": { "encoding": "^0.1.13", - "minipass": "^5.0.0", + "minipass": "^7.0.3", "minipass-sized": "^1.0.3", "minizlib": "^2.1.2" } @@ -17229,6 +17786,12 @@ } } }, + "mitt": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-1.2.0.tgz", + "integrity": "sha512-r6lj77KlwqLhIUku9UWYes7KJtsczvolZkzp8hbaDPPaE24OmWl5s539Mytlj22siEQKosZ26qCBgda2PKwoJw==", + "dev": true + }, "mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", @@ -17258,9 +17821,9 @@ } }, "mute-stream": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", - "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-1.0.0.tgz", + "integrity": "sha512-avsJQhyd+680gKXyG/sQc0nXaC6rBkPOfyHYcFb9+hdkqQkR9bdnkJ0AMZhke0oesPqIO+mFFJ+IdBc7mst4IA==", "dev": true }, "nanoid": { @@ -17340,64 +17903,85 @@ "dev": true }, "node-gyp": { - "version": "9.4.0", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-9.4.0.tgz", - "integrity": "sha512-dMXsYP6gc9rRbejLXmTbVRYjAHw7ppswsKyMxuxJxxOHzluIO1rGp9TOQgjFJ+2MCqcOcQTOPB/8Xwhr+7s4Eg==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-10.0.1.tgz", + "integrity": "sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==", "dev": true, "requires": { "env-paths": "^2.2.0", "exponential-backoff": "^3.1.1", - "glob": "^7.1.4", + "glob": "^10.3.10", "graceful-fs": "^4.2.6", - "make-fetch-happen": "^11.0.3", - "nopt": "^6.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", + "make-fetch-happen": "^13.0.0", + "nopt": "^7.0.0", + "proc-log": "^3.0.0", "semver": "^7.3.5", "tar": "^6.1.2", - "which": "^2.0.2" + "which": "^4.0.0" }, "dependencies": { - "which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", "dev": true, "requires": { - "isexe": "^2.0.0" + "balanced-match": "^1.0.0" + } + }, + "glob": { + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", + "dev": true, + "requires": { + "foreground-child": "^3.1.0", + "jackspeak": "^2.3.5", + "minimatch": "^9.0.1", + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" + } + }, + "minimatch": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", + "dev": true, + "requires": { + "brace-expansion": "^2.0.1" } } } }, "node-gyp-build": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", - "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==", + "version": "4.6.1", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.1.tgz", + "integrity": "sha512-24vnklJmyRS8ViBNI8KbtK/r/DmXQMRiOMXTNz2nrTnAYUwjmEEbnnpB/+kt+yWRv73bPsSPRFddrcIbAxSiMQ==", "dev": true, "optional": true }, "node-releases": { - "version": "2.0.12", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.12.tgz", - "integrity": "sha512-QzsYKWhXTWx8h1kIvqfnC++o0pEmpRQA/aenALsL2F4pqNVr7YzcdMlDij5WBnwftRbJCNJL/O7zdKaxKPHqgQ==", + "version": "2.0.13", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", + "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", "dev": true }, "nopt": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-6.0.0.tgz", - "integrity": "sha512-ZwLpbTgdhuZUnZzjd7nb1ZV+4DoiC6/sfiVKok72ym/4Tlf+DFdlHYmT2JPmcNNWV6Pi3SDf1kT+A4r9RTuT9g==", + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-7.2.0.tgz", + "integrity": "sha512-CVDtwCdhYIvnAzFoJ6NJ6dX3oga9/HyciQDnG1vQDjSLMeKLJ4A93ZqYKDrgYSr1FBY5/hMYC+2VCi24pgpkGA==", "dev": true, "requires": { - "abbrev": "^1.0.0" + "abbrev": "^2.0.0" } }, "normalize-package-data": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-5.0.0.tgz", - "integrity": "sha512-h9iPVIfrVZ9wVYQnxFgtw1ugSvGEMOlyPWWtm8BMJhnwyEL/FLbYbTY3V3PpjI/BUK67n9PEWDu6eHzu1fB15Q==", + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-6.0.0.tgz", + "integrity": "sha512-UL7ELRVxYBHBgYEtZCXjxuD5vPxnmvMGq0jp/dGPKKrN7tfsBh2IY7TlJ15WWwdjRWD3RJbnsygUurTK3xkPkg==", "dev": true, "requires": { - "hosted-git-info": "^6.0.0", + "hosted-git-info": "^7.0.0", "is-core-module": "^2.8.1", "semver": "^7.3.5", "validate-npm-package-license": "^3.0.4" @@ -17425,9 +18009,9 @@ } }, "npm-install-checks": { - "version": "6.1.1", - "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.1.tgz", - "integrity": "sha512-dH3GmQL4vsPtld59cOn8uY0iOqRmqKvV+DLGwNXV/Q7MDgD2QfOADWd/mFXcIE5LVhYYGjA3baz6W9JneqnuCw==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.3.0.tgz", + "integrity": "sha512-W29RiK/xtpCGqn6f3ixfRYGk+zRyr+Ew9F2E20BfXxT5/euLdA/Nm7fO7OeTGuAmTs30cpgInyJ0cYe708YTZw==", "dev": true, "requires": { "semver": "^7.1.1" @@ -17440,72 +18024,60 @@ "dev": true }, "npm-package-arg": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz", - "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==", + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-11.0.1.tgz", + "integrity": "sha512-M7s1BD4NxdAvBKUPqqRW957Xwcl/4Zvo8Aj+ANrzvIPzGJZElrH7Z//rSaec2ORcND6FHHLnZeY8qgTpXDMFQQ==", "dev": true, "requires": { - "hosted-git-info": "^6.0.0", + "hosted-git-info": "^7.0.0", "proc-log": "^3.0.0", "semver": "^7.3.5", "validate-npm-package-name": "^5.0.0" } }, "npm-packlist": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-7.0.4.tgz", - "integrity": "sha512-d6RGEuRrNS5/N84iglPivjaJPxhDbZmlbTwTDX2IbcRHG5bZCdtysYMhwiPvcF4GisXHGn7xsxv+GQ7T/02M5Q==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-8.0.0.tgz", + "integrity": "sha512-ErAGFB5kJUciPy1mmx/C2YFbvxoJ0QJ9uwkCZOeR6CqLLISPZBOiFModAbSXnjjlwW5lOhuhXva+fURsSGJqyw==", "dev": true, "requires": { "ignore-walk": "^6.0.0" } }, "npm-pick-manifest": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-8.0.1.tgz", - "integrity": "sha512-mRtvlBjTsJvfCCdmPtiu2bdlx8d/KXtF7yNXNWe7G0Z36qWA9Ny5zXsI2PfBZEv7SXgoxTmNaTzGSbbzDZChoA==", + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/npm-pick-manifest/-/npm-pick-manifest-9.0.0.tgz", + "integrity": "sha512-VfvRSs/b6n9ol4Qb+bDwNGUXutpy76x6MARw/XssevE0TnctIKcmklJZM5Z7nqs5z5aW+0S63pgCNbpkUNNXBg==", "dev": true, "requires": { "npm-install-checks": "^6.0.0", "npm-normalize-package-bin": "^3.0.0", - "npm-package-arg": "^10.0.0", + "npm-package-arg": "^11.0.0", "semver": "^7.3.5" } }, "npm-registry-fetch": { - "version": "14.0.5", - "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz", - "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==", + "version": "16.1.0", + "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-16.1.0.tgz", + "integrity": "sha512-PQCELXKt8Azvxnt5Y85GseQDJJlglTFM9L9U9gkv2y4e9s0k3GVDdOx3YoB6gm2Do0hlkzC39iCGXby+Wve1Bw==", "dev": true, "requires": { - "make-fetch-happen": "^11.0.0", - "minipass": "^5.0.0", + "make-fetch-happen": "^13.0.0", + "minipass": "^7.0.2", "minipass-fetch": "^3.0.0", "minipass-json-stream": "^1.0.1", "minizlib": "^2.1.2", - "npm-package-arg": "^10.0.0", + "npm-package-arg": "^11.0.0", "proc-log": "^3.0.0" } }, "npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - "dev": true, - "requires": { - "path-key": "^3.0.0" - } - }, - "npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", "dev": true, "requires": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" + "path-key": "^3.0.0" } }, "nth-check": { @@ -17517,10 +18089,10 @@ "boolbase": "^1.0.0" } }, - "nwsapi": { - "version": "2.2.7", - "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.7.tgz", - "integrity": "sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ==", + "object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", "dev": true }, "object-inspect": { @@ -17529,12 +18101,6 @@ "integrity": "sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==", "dev": true }, - "object-path": { - "version": "0.11.8", - "resolved": "https://registry.npmjs.org/object-path/-/object-path-0.11.8.tgz", - "integrity": "sha512-YJjNZrlXJFM42wTBn6zgOJVar9KFJvzx6sTWDte8sWZF//cnjl0BxHNpfZx+ZffXX63A9q0b1zsFiBX4g4X5KA==", - "dev": true - }, "obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", @@ -17542,9 +18108,9 @@ "dev": true }, "on-finished": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", - "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==", "dev": true, "requires": { "ee-first": "1.1.1" @@ -17585,6 +18151,29 @@ "is-wsl": "^2.2.0" } }, + "openurl": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz", + "integrity": "sha512-d/gTkTb1i1GKz5k3XE3XFV/PxQ1k45zDqGP2OA7YhgsaLoqm6qRvARAZOFer1fcXritWlGBRCu/UgeS4HAnXAA==", + "dev": true + }, + "opn": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.3.0.tgz", + "integrity": "sha512-bYJHo/LOmoTd+pfiYhfZDnf9zekVJrY+cnS2a5F2x+w5ppvTqObojTP7WiFG+kVZs9Inw+qQ/lw7TroWwhdd2g==", + "dev": true, + "requires": { + "is-wsl": "^1.1.0" + }, + "dependencies": { + "is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha512-gfygJYZ2gLTDlmbWMI0CE2MwnFzSN/2SZfkMlItC4K/JBlsWVDB0bO6XhqcY13YXE7iMcAJnzTCJjPiTeJJ0Mw==", + "dev": true + } + } + }, "ora": { "version": "5.4.1", "resolved": "https://registry.npmjs.org/ora/-/ora-5.4.1.tgz", @@ -17711,27 +18300,27 @@ "dev": true }, "pacote": { - "version": "15.2.0", - "resolved": "https://registry.npmjs.org/pacote/-/pacote-15.2.0.tgz", - "integrity": "sha512-rJVZeIwHTUta23sIZgEIM62WYwbmGbThdbnkt81ravBplQv+HjyroqnLRNH2+sLJHcGZmLRmhPwACqhfTcOmnA==", + "version": "17.0.4", + "resolved": "https://registry.npmjs.org/pacote/-/pacote-17.0.4.tgz", + "integrity": "sha512-eGdLHrV/g5b5MtD5cTPyss+JxOlaOloSMG3UwPMAvL8ywaLJ6beONPF40K4KKl/UI6q5hTKCJq5rCu8tkF+7Dg==", "dev": true, "requires": { - "@npmcli/git": "^4.0.0", + "@npmcli/git": "^5.0.0", "@npmcli/installed-package-contents": "^2.0.1", - "@npmcli/promise-spawn": "^6.0.1", - "@npmcli/run-script": "^6.0.0", - "cacache": "^17.0.0", + "@npmcli/promise-spawn": "^7.0.0", + "@npmcli/run-script": "^7.0.0", + "cacache": "^18.0.0", "fs-minipass": "^3.0.0", - "minipass": "^5.0.0", - "npm-package-arg": "^10.0.0", - "npm-packlist": "^7.0.0", - "npm-pick-manifest": "^8.0.0", - "npm-registry-fetch": "^14.0.0", + "minipass": "^7.0.2", + "npm-package-arg": "^11.0.0", + "npm-packlist": "^8.0.0", + "npm-pick-manifest": "^9.0.0", + "npm-registry-fetch": "^16.0.0", "proc-log": "^3.0.0", "promise-retry": "^2.0.1", - "read-package-json": "^6.0.0", + "read-package-json": "^7.0.0", "read-package-json-fast": "^3.0.0", - "sigstore": "^1.3.0", + "sigstore": "^2.0.0", "ssri": "^10.0.0", "tar": "^6.1.11" } @@ -17769,12 +18358,6 @@ "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", "dev": true }, - "parse5": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz", - "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==", - "dev": true - }, "parse5-html-rewriting-stream": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/parse5-html-rewriting-stream/-/parse5-html-rewriting-stream-7.0.0.tgz", @@ -17848,19 +18431,19 @@ "dev": true }, "path-scurry": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.0.tgz", - "integrity": "sha512-tZFEaRQbMLjwrsmidsGJ6wDMv0iazJWk6SfIKnY4Xru8auXgmJkOBa5DUbYFcFD2Rzk2+KDlIiF0GVXNCbgC7g==", + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.10.1.tgz", + "integrity": "sha512-MkhCqzzBEpPvxxQ71Md0b1Kk51W01lrYvlMzSUaIzNsODdd7mqhiimSZlr+VegAz5Z6Vzt9Xg2ttE//XBhH3EQ==", "dev": true, "requires": { "lru-cache": "^9.1.1 || ^10.0.0", - "minipass": "^5.0.0 || ^6.0.2" + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "dependencies": { "lru-cache": { - "version": "10.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.0.tgz", - "integrity": "sha512-svTf/fzsKHffP42sujkO/Rjs37BCIsQVRCeNYIm9WN8rgT7ffoUnRtZCqU+6BqcSBdv8gwJeTz8knJpgACeQMw==", + "version": "10.0.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.0.1.tgz", + "integrity": "sha512-IJ4uwUTi2qCccrioU6g9g/5rvvVl13bsdczUUcqbciD9iLr095yj8DQKdObriEvuNSx325N1rV1O0sJFszx75g==", "dev": true } } @@ -17897,9 +18480,9 @@ "optional": true }, "piscina": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.0.0.tgz", - "integrity": "sha512-641nAmJS4k4iqpNUqfggqUBUMmlw0ZoM5VZKdQkV2e970Inn3Tk9kroCc1wpsYLD07vCwpys5iY0d3xI/9WkTg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/piscina/-/piscina-4.1.0.tgz", + "integrity": "sha512-sjbLMi3sokkie+qmtZpkfMCUJTpbxJm/wvaPzU28vmYSsTSW8xk9JcFUsbqGJdtPpIQ9tuj+iDcTtgZjwnOSig==", "dev": true, "requires": { "eventemitter-asyncresource": "^1.0.0", @@ -17962,6 +18545,16 @@ } } }, + "portscanner": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/portscanner/-/portscanner-2.2.0.tgz", + "integrity": "sha512-IFroCz/59Lqa2uBvzK3bKDbDDIEaAY8XJ1jFxcLWTqosrsc32//P4VuSB2vZXoHiHqOmx8B5L5hnKOxL/7FlPw==", + "dev": true, + "requires": { + "async": "^2.6.0", + "is-number-like": "^1.0.3" + } + }, "postcss": { "version": "8.4.31", "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.31.tgz", @@ -18095,12 +18688,6 @@ "dev": true, "optional": true }, - "psl": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", - "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==", - "dev": true - }, "punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -18116,12 +18703,6 @@ "side-channel": "^1.0.4" } }, - "querystringify": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", - "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", - "dev": true - }, "queue-microtask": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", @@ -18144,34 +18725,26 @@ "dev": true }, "raw-body": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", - "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz", + "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==", "dev": true, "requires": { "bytes": "3.1.2", "http-errors": "2.0.0", "iconv-lite": "0.4.24", "unpipe": "1.0.0" - }, - "dependencies": { - "bytes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", - "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", - "dev": true - } } }, "read-package-json": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.4.tgz", - "integrity": "sha512-AEtWXYfopBj2z5N5PbkAOeNHRPUg5q+Nen7QLxV8M2zJq1ym6/lCz3fYNTCXe19puu2d06jfHhrP7v/S2PtMMw==", + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-7.0.0.tgz", + "integrity": "sha512-uL4Z10OKV4p6vbdvIXB+OzhInYtIozl/VxUBPgNkBuUi2DeRonnuspmaVAMcrkmfjKGNmRndyQAbE7/AmzGwFg==", "dev": true, "requires": { "glob": "^10.2.2", "json-parse-even-better-errors": "^3.0.0", - "normalize-package-data": "^5.0.0", + "normalize-package-data": "^6.0.0", "npm-normalize-package-bin": "^3.0.0" }, "dependencies": { @@ -18185,16 +18758,16 @@ } }, "glob": { - "version": "10.3.1", - "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.1.tgz", - "integrity": "sha512-9BKYcEeIs7QwlCYs+Y3GBvqAMISufUS0i2ELd11zpZjxI5V9iyRj0HgzB5/cLf2NY4vcYBTYzJ7GIui7j/4DOw==", + "version": "10.3.10", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.3.10.tgz", + "integrity": "sha512-fa46+tv1Ak0UPK1TOy/pZrIybNNt4HCv7SDzwyfiOZkvZLEbjsZkJBPtDHVshZjbecAoAGSC20MjLDG/qr679g==", "dev": true, "requires": { "foreground-child": "^3.1.0", - "jackspeak": "^2.0.3", + "jackspeak": "^2.3.5", "minimatch": "^9.0.1", - "minipass": "^5.0.0 || ^6.0.2", - "path-scurry": "^1.10.0" + "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0", + "path-scurry": "^1.10.1" } }, "json-parse-even-better-errors": { @@ -18204,9 +18777,9 @@ "dev": true }, "minimatch": { - "version": "9.0.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.2.tgz", - "integrity": "sha512-PZOT9g5v2ojiTL7r1xF6plNHLtOeTpSlDI007As2NlA2aYBMfVom17yqa6QzhmDP8QOhn7LjHTg7DFCVSSa6yg==", + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.3.tgz", + "integrity": "sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==", "dev": true, "requires": { "brace-expansion": "^2.0.1" @@ -18265,18 +18838,18 @@ "dev": true }, "regenerate-unicode-properties": { - "version": "10.1.0", - "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.0.tgz", - "integrity": "sha512-d1VudCLoIGitcU/hEg2QqvyGZQmdC0Lf8BqdOMXGFSvJP4bNV1+XqbPQeHHLD51Jh4QJJ225dlIFvY4Ly6MXmQ==", + "version": "10.1.1", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.1.1.tgz", + "integrity": "sha512-X007RyZLsCJVVrjgEFVpLUTZwyOZk3oiL75ZcuYjlIWd6rNJtOjkBwQc5AsRrpbKVkxN6sklw/k/9m2jJYOf8Q==", "dev": true, "requires": { "regenerate": "^1.4.2" } }, "regenerator-runtime": { - "version": "0.13.11", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.11.tgz", - "integrity": "sha512-kY1AZVr2Ra+t+piVaJ4gxaFaReZVH40AKNo7UCX6W+dEwBo/2oZJzqfuN1qLq1oL45o56cPaTXELwrTh8Fpggg==", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz", + "integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA==", "dev": true }, "regenerator-transform": { @@ -18344,12 +18917,12 @@ "dev": true }, "resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", "dev": true, "requires": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.13.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } @@ -18392,6 +18965,33 @@ } } }, + "resp-modifier": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/resp-modifier/-/resp-modifier-6.0.2.tgz", + "integrity": "sha512-U1+0kWC/+4ncRFYqQWTx/3qkfE6a4B/h3XXgmXypfa0SPZ3t7cbbaFk297PjQS/yov24R18h6OZe6iZwj3NSLw==", + "dev": true, + "requires": { + "debug": "^2.2.0", + "minimatch": "^3.0.2" + }, + "dependencies": { + "debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dev": true, + "requires": { + "ms": "2.0.0" + } + }, + "ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + } + } + }, "restore-cursor": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", @@ -18433,9 +19033,9 @@ } }, "run-async": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", - "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-3.0.0.tgz", + "integrity": "sha512-540WwVDOMxA6dN6We19EcT9sc3hkXPw5mzRNGM3FkdN/vtE9NFvj5lFAPNwUDmJjXidm3v7TC1cTE7t17Ulm1Q==", "dev": true }, "run-parallel": { @@ -18447,6 +19047,12 @@ "queue-microtask": "^1.2.2" } }, + "rx": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/rx/-/rx-4.1.0.tgz", + "integrity": "sha512-CiaiuN6gapkdl+cZUr67W6I8jquN4lkak3vtIsIWCl4XIPP8ffsoyN6/+PuGXnQy8Cu8W2y9Xxh31Rq4M6wUug==", + "dev": true + }, "rxjs": { "version": "7.4.0", "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.4.0.tgz", @@ -18475,9 +19081,9 @@ "dev": true }, "sass": { - "version": "1.64.1", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.64.1.tgz", - "integrity": "sha512-16rRACSOFEE8VN7SCgBu1MpYCyN7urj9At898tyzdXFhC+a+yOX5dXwAR7L8/IdPJ1NB8OYoXmD55DM30B2kEQ==", + "version": "1.69.5", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.69.5.tgz", + "integrity": "sha512-qg2+UCJibLr2LCVOt3OlPhr/dqVHWOa9XtZf2OjbLs/T4VPSJ00udtgJxH3neXZm+QqX8B+3cU7RaLqp1iVfcQ==", "dev": true, "requires": { "chokidar": ">=3.0.0 <4.0.0", @@ -18501,15 +19107,6 @@ "dev": true, "optional": true }, - "saxes": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/saxes/-/saxes-5.0.1.tgz", - "integrity": "sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw==", - "dev": true, - "requires": { - "xmlchars": "^2.2.0" - } - }, "schema-utils": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-4.0.0.tgz", @@ -18529,11 +19126,12 @@ "dev": true }, "selfsigned": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.1.1.tgz", - "integrity": "sha512-GSL3aowiF7wa/WtSFwnUrludWFoNhftq8bUkH9pkzjpN2XSPOAYEgg6e0sS9s0rZwgJzJiQRPU18A6clnoW5wQ==", + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", "dev": true, "requires": { + "@types/node-forge": "^1.3.0", "node-forge": "^1" } }, @@ -18547,24 +19145,24 @@ } }, "send": { - "version": "0.18.0", - "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", - "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz", + "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==", "dev": true, "requires": { "debug": "2.6.9", - "depd": "2.0.0", - "destroy": "1.2.0", + "depd": "~1.1.2", + "destroy": "~1.0.4", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "etag": "~1.8.1", "fresh": "0.5.2", - "http-errors": "2.0.0", - "mime": "1.6.0", - "ms": "2.1.3", - "on-finished": "2.4.1", - "range-parser": "~1.2.1", - "statuses": "2.0.1" + "http-errors": "~1.6.2", + "mime": "1.4.1", + "ms": "2.0.0", + "on-finished": "~2.3.0", + "range-parser": "~1.2.0", + "statuses": "~1.4.0" }, "dependencies": { "debug": { @@ -18574,20 +19172,54 @@ "dev": true, "requires": { "ms": "2.0.0" - }, - "dependencies": { - "ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", - "dev": true - } } }, + "depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==", + "dev": true + }, + "http-errors": { + "version": "1.6.3", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz", + "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==", + "dev": true, + "requires": { + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + } + }, + "inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==", + "dev": true + }, + "mime": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz", + "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==", + "dev": true + }, "ms": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "dev": true + }, + "setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "statuses": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz", + "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==", "dev": true } } @@ -18670,21 +19302,21 @@ } }, "serve-static": { - "version": "1.15.0", - "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", - "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.13.2.tgz", + "integrity": "sha512-p/tdJrO4U387R9oMjb1oj7qSMaMfmOyd4j9hOFoxZe2baQszgHcSWjuya/CiT5kgZZKRudHNOA0pYXOl8rQ5nw==", "dev": true, "requires": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", - "parseurl": "~1.3.3", - "send": "0.18.0" + "parseurl": "~1.3.2", + "send": "0.16.2" } }, - "set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", + "server-destroy": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz", + "integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==", "dev": true }, "set-function-length": { @@ -18753,14 +19385,15 @@ "dev": true }, "sigstore": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.7.0.tgz", - "integrity": "sha512-KP7QULhWdlu3hlp+jw2EvgWKlOGOY9McLj/jrchLjHNlNPK0KWIwF919cbmOp6QiKXLmPijR2qH/5KYWlbtG9Q==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-2.1.0.tgz", + "integrity": "sha512-kPIj+ZLkyI3QaM0qX8V/nSsweYND3W448pwkDgS6CQ74MfhEkIR8ToK5Iyx46KJYRjseVcD3Rp9zAmUAj6ZjPw==", "dev": true, "requires": { - "@sigstore/protobuf-specs": "^0.1.0", - "@sigstore/tuf": "^1.0.1", - "make-fetch-happen": "^11.0.1" + "@sigstore/bundle": "^2.1.0", + "@sigstore/protobuf-specs": "^0.2.1", + "@sigstore/sign": "^2.1.0", + "@sigstore/tuf": "^2.1.0" } }, "slash": { @@ -18775,6 +19408,52 @@ "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", "dev": true }, + "socket.io": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.2.tgz", + "integrity": "sha512-bvKVS29/I5fl2FGLNHuXlQaUH/BlzX1IN6S+NKLNZpBsPZIDH+90eQmCs2Railn4YUiww4SzUedJ6+uzwFnKLw==", + "dev": true, + "requires": { + "accepts": "~1.3.4", + "base64id": "~2.0.0", + "cors": "~2.8.5", + "debug": "~4.3.2", + "engine.io": "~6.5.2", + "socket.io-adapter": "~2.5.2", + "socket.io-parser": "~4.2.4" + } + }, + "socket.io-adapter": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/socket.io-adapter/-/socket.io-adapter-2.5.2.tgz", + "integrity": "sha512-87C3LO/NOMc+eMcpcxUBebGjkpMDkNBS9tf7KJqcDsmL936EChtVva71Dw2q4tQcuVC+hAUy4an2NO/sYXmwRA==", + "dev": true, + "requires": { + "ws": "~8.11.0" + } + }, + "socket.io-client": { + "version": "4.7.2", + "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.2.tgz", + "integrity": "sha512-vtA0uD4ibrYD793SOIAwlo8cj6haOeMHrGvwPxJsxH7CeIksqJ+3Zc06RvWTIFgiSqx4A3sOnTXpfAEE2Zyz6w==", + "dev": true, + "requires": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.2", + "engine.io-client": "~6.5.2", + "socket.io-parser": "~4.2.4" + } + }, + "socket.io-parser": { + "version": "4.2.4", + "resolved": "https://registry.npmjs.org/socket.io-parser/-/socket.io-parser-4.2.4.tgz", + "integrity": "sha512-/GbIKmo8ioc+NIWIhwdecY0ge+qVBSMdgxGygevmdHj24bsfgtCmcUUcQ5ZzcylGFHsN3k4HB4Cgkl96KVnuew==", + "dev": true, + "requires": { + "@socket.io/component-emitter": "~3.1.0", + "debug": "~4.3.1" + } + }, "sockjs": { "version": "0.3.24", "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz", @@ -18797,14 +19476,14 @@ } }, "socks-proxy-agent": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz", - "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==", + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-8.0.2.tgz", + "integrity": "sha512-8zuqoLv1aP/66PHF5TqwJ7Czm3Yv32urJQHrVyhD7mmA6d61Zv8cIXQYPTWwmg6qlupnPvs/QKDmfa4P/qct2g==", "dev": true, "requires": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" + "agent-base": "^7.0.2", + "debug": "^4.3.4", + "socks": "^2.7.1" } }, "source-map": { @@ -18886,9 +19565,9 @@ } }, "spdx-license-ids": { - "version": "3.0.13", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.13.tgz", - "integrity": "sha512-XkD+zwiqXHikFZm4AX/7JSCXA98U5Db4AFd5XUg/+9UNtnH75+Z9KxtpYiJZx36mUDVOwH83pl7yvCer6ewM3w==", + "version": "3.0.16", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", + "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", "dev": true }, "spdy": { @@ -18925,20 +19604,30 @@ "dev": true }, "ssri": { - "version": "10.0.4", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.4.tgz", - "integrity": "sha512-12+IR2CB2C28MMAw0Ncqwj5QbTcs0nGIhgJzYWzDkb21vWmfNI83KS4f3Ci6GI98WreIfG7o9UXp3C0qbpA8nQ==", + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz", + "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==", "dev": true, "requires": { - "minipass": "^5.0.0" + "minipass": "^7.0.3" } }, "statuses": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", - "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.3.1.tgz", + "integrity": "sha512-wuTCPGlJONk/a1kqZ4fQM2+908lC7fa7nPYpTC1EhnvqLX/IICbeP1OZGDtA374trpSq68YubKUMo8oRhN46yg==", "dev": true }, + "stream-throttle": { + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/stream-throttle/-/stream-throttle-0.1.3.tgz", + "integrity": "sha512-889+B9vN9dq7/vLbGyuHeZ6/ctf5sNuGWsDy89uNxkFTAgzy0eK7+w5fL3KLNRTkLle7EgZGvHUphZW0Q26MnQ==", + "dev": true, + "requires": { + "commander": "^2.2.0", + "limiter": "^1.0.5" + } + }, "string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", @@ -19023,12 +19712,6 @@ "integrity": "sha512-b19dMThMV4HVFynSAM1++gBHAbk2Tc/osgLIBZMKsyqh34jb2e8Os7T6ZW/Bt3pJFdBTd2JwAnAAEQV7rSNvcQ==", "dev": true }, - "symbol-tree": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", - "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", - "dev": true - }, "tapable": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz", @@ -19036,9 +19719,9 @@ "dev": true }, "tar": { - "version": "6.1.15", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.15.tgz", - "integrity": "sha512-/zKt9UyngnxIT/EAGYuxaMYgOIJiP81ab9ZfkILq4oNLPFX50qyYmu7jRj9qeXoxmJHjGlbH0+cm2uy1WCs10A==", + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", + "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", "dev": true, "requires": { "chownr": "^2.0.0", @@ -19068,13 +19751,19 @@ } } } + }, + "minipass": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", + "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", + "dev": true } } }, "terser": { - "version": "5.19.2", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.19.2.tgz", - "integrity": "sha512-qC5+dmecKJA4cpYxRa5aVkKehYsQKc+AHeKl0Oe62aYjBL8ZA33tTljktDHJSaxxMnbI5ZYw+o/S2DxxLu8OfA==", + "version": "5.24.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz", + "integrity": "sha512-ZpGR4Hy3+wBEzVEnHvstMvqpD/nABNelQn/z2r0fjVWGQsN3bpOLzQlqDxmb4CDZnXq5lpjnQ+mHQLAOpfM5iw==", "dev": true, "requires": { "@jridgewell/source-map": "^0.3.3", @@ -19151,12 +19840,6 @@ "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", "dev": true }, - "through": { - "version": "2.3.8", - "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", - "dev": true - }, "thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", @@ -19193,27 +19876,6 @@ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", "dev": true }, - "tough-cookie": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.1.3.tgz", - "integrity": "sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw==", - "dev": true, - "requires": { - "psl": "^1.1.33", - "punycode": "^2.1.1", - "universalify": "^0.2.0", - "url-parse": "^1.5.3" - } - }, - "tr46": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/tr46/-/tr46-2.1.0.tgz", - "integrity": "sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw==", - "dev": true, - "requires": { - "punycode": "^2.1.1" - } - }, "tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", @@ -19221,19 +19883,19 @@ "dev": true }, "tslib": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.1.tgz", - "integrity": "sha512-t0hLfiEKfMUoqhG+U1oid7Pva4bbDPHYfJNiB7BiIjRkj1pyC++4N3huJfqY6aRH6VTB0rvtzQwjM4K6qpfOig==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" }, "tuf-js": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.7.tgz", - "integrity": "sha512-i3P9Kgw3ytjELUfpuKVDNBJvk4u5bXL6gskv572mcevPbSKCV3zt3djhmlEQ65yERjIbOSncy7U4cQJaB1CBCg==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-2.1.0.tgz", + "integrity": "sha512-eD7YPPjVlMzdggrOeE8zwoegUaG/rt6Bt3jwoQPunRiNVzgcCE009UDFJKJjG+Gk9wFu6W/Vi+P5d/5QpdD9jA==", "dev": true, "requires": { - "@tufjs/models": "1.0.4", + "@tufjs/models": "2.0.0", "debug": "^4.3.4", - "make-fetch-happen": "^11.1.1" + "make-fetch-happen": "^13.0.0" } }, "type-fest": { @@ -19259,11 +19921,26 @@ "dev": true }, "typescript": { - "version": "5.0.4", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.0.4.tgz", - "integrity": "sha512-cW9T5W9xY37cc+jfEnaUvX91foxtHkza3Nw3wkoF4sSlKn0MONdkdEndig/qPBWXNkmplh3NzayQzCiHM4/hqw==", + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", + "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", + "dev": true + }, + "ua-parser-js": { + "version": "1.0.37", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.37.tgz", + "integrity": "sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==", "dev": true }, + "undici": { + "version": "5.27.2", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.27.2.tgz", + "integrity": "sha512-iS857PdOEy/y3wlM3yRp+6SNQQ6xU0mmZcwRSriqk+et/cwWAtwmIGf6WkoDN2EK/AMdCO/dfXzIwi+rFMrjjQ==", + "dev": true, + "requires": { + "@fastify/busboy": "^2.0.0" + } + }, "unicode-canonical-property-names-ecmascript": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz", @@ -19311,9 +19988,9 @@ } }, "universalify": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.2.0.tgz", - "integrity": "sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg==", + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", "dev": true }, "unpipe": { @@ -19323,9 +20000,9 @@ "dev": true }, "update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "requires": { "escalade": "^3.1.1", @@ -19341,16 +20018,6 @@ "punycode": "^2.1.0" } }, - "url-parse": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.10.tgz", - "integrity": "sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==", - "dev": true, - "requires": { - "querystringify": "^2.1.1", - "requires-port": "^1.0.0" - } - }, "util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", @@ -19394,24 +20061,6 @@ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", "dev": true }, - "w3c-hr-time": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz", - "integrity": "sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ==", - "dev": true, - "requires": { - "browser-process-hrtime": "^1.0.0" - } - }, - "w3c-xmlserializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz", - "integrity": "sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA==", - "dev": true, - "requires": { - "xml-name-validator": "^3.0.0" - } - }, "watchpack": { "version": "2.4.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.0.tgz", @@ -19440,16 +20089,10 @@ "defaults": "^1.0.3" } }, - "webidl-conversions": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-6.1.0.tgz", - "integrity": "sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==", - "dev": true - }, "webpack": { - "version": "5.88.2", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.88.2.tgz", - "integrity": "sha512-JmcgNZ1iKj+aiR0OvTYtWQqJwq37Pf683dY9bVORwVbUrDhLhdn/PlO2sHsFHPkj7sHNQF3JwaAkp49V+Sq1tQ==", + "version": "5.89.0", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz", + "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==", "dev": true, "requires": { "@types/eslint-scope": "^3.7.3", @@ -19567,6 +20210,12 @@ "ws": "^8.13.0" }, "dependencies": { + "connect-history-api-fallback": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", + "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", + "dev": true + }, "webpack-dev-middleware": { "version": "5.3.3", "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-5.3.3.tgz", @@ -19590,12 +20239,13 @@ } }, "webpack-merge": { - "version": "5.9.0", - "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.9.0.tgz", - "integrity": "sha512-6NbRQw4+Sy50vYNTw7EyOn41OZItPiXB8GNv3INSoe3PSFaHJEz3SHTrYVaRm2LilNGnFUzh0FAwqPEmU/CwDg==", + "version": "5.10.0", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.10.0.tgz", + "integrity": "sha512-+4zXKdx7UnO+1jaN4l2lHVD+mFvnlZQP/6ljaJVb4SZiwIKeUnrT5l0gkT8z+n4hKpC+jpOv6O9R+gLtag7pSA==", "dev": true, "requires": { "clone-deep": "^4.0.1", + "flat": "^5.0.2", "wildcard": "^2.0.0" } }, @@ -19631,48 +20281,13 @@ "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", "dev": true }, - "whatwg-encoding": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz", - "integrity": "sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw==", - "dev": true, - "requires": { - "iconv-lite": "0.4.24" - } - }, - "whatwg-mimetype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz", - "integrity": "sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g==", - "dev": true - }, - "whatwg-url": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-8.7.0.tgz", - "integrity": "sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg==", - "dev": true, - "requires": { - "lodash": "^4.7.0", - "tr46": "^2.1.0", - "webidl-conversions": "^6.1.0" - } - }, "which": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz", - "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==", - "dev": true, - "requires": { - "isexe": "^2.0.0" - } - }, - "wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/which/-/which-4.0.0.tgz", + "integrity": "sha512-GlaYyEb07DPxYCKhKzplCWBJtvxZcZMrL+4UkrTSJHHPyZU4mYYTv3qaOe77H7EODLSSopAUFAc6W8U4yqvscg==", "dev": true, "requires": { - "string-width": "^1.0.2 || 2 || 3 || 4" + "isexe": "^3.1.1" } }, "wildcard": { @@ -19762,22 +20377,16 @@ "dev": true }, "ws": { - "version": "7.5.9", - "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz", - "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", "dev": true, "requires": {} }, - "xml-name-validator": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", - "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", - "dev": true - }, - "xmlchars": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", - "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "xmlhttprequest-ssl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/xmlhttprequest-ssl/-/xmlhttprequest-ssl-2.0.0.tgz", + "integrity": "sha512-QKxVRxiRACQcVuQEYFsI1hhkrMlrXHPegbbd1yn9UHOmRxY+si12nQYzri3vbzt8VdTTRviqcKxcyllFas5z2A==", "dev": true }, "y18n": { @@ -19820,9 +20429,9 @@ "dev": true }, "zone.js": { - "version": "0.13.0", - "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.13.0.tgz", - "integrity": "sha512-7m3hNNyswsdoDobCkYNAy5WiUulkMd3+fWaGT9ij6iq3Zr/IwJo4RMCYPSDjT+r7tnPErmY9sZpKhWQ8S5k6XQ==", + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/zone.js/-/zone.js-0.14.2.tgz", + "integrity": "sha512-X4U7J1isDhoOmHmFWiLhloWc2lzMkdnumtfQ1LXzf/IOZp5NQYuMUTaviVzG/q1ugMBIXzin2AqeVJUoSEkNyQ==", "requires": { "tslib": "^2.3.0" } diff --git a/src/AngularComponents/package.json b/src/AngularComponents/package.json index f30e3bf5..a77be25d 100644 --- a/src/AngularComponents/package.json +++ b/src/AngularComponents/package.json @@ -9,23 +9,23 @@ }, "private": true, "dependencies": { - "@angular/animations": "^16.2.10", - "@angular/common": "^16.2.10", - "@angular/compiler": "^16.2.10", - "@angular/core": "^16.2.10", - "@angular/forms": "^16.2.10", - "@angular/platform-browser": "^16.2.10", - "@angular/platform-browser-dynamic": "^16.2.10", - "@angular/router": "^16.2.10", + "@angular/animations": "^17.0.1", + "@angular/common": "^17.0.1", + "@angular/compiler": "^17.0.1", + "@angular/core": "^17.0.1", + "@angular/forms": "^17.0.1", + "@angular/platform-browser": "^17.0.1", + "@angular/platform-browser-dynamic": "^17.0.1", + "@angular/router": "^17.0.1", "rxjs": "~7.4.0", "tslib": "^2.3.0", - "zone.js": "~0.13.0" + "zone.js": "~0.14.2" }, "devDependencies": { - "@angular-devkit/build-angular": "^16.2.7", - "@angular/cli": "^16.2.7", - "@angular/compiler-cli": "^16.2.10", + "@angular-devkit/build-angular": "^17.0.0", + "@angular/cli": "^17.0.0", + "@angular/compiler-cli": "^17.0.1", "@types/node": "^12.11.1", - "typescript": "~5.0.4" + "typescript": "~5.2.2" } } \ No newline at end of file diff --git a/src/ReportGenerator.Core/Reporting/Builders/Rendering/resources/main.js b/src/ReportGenerator.Core/Reporting/Builders/Rendering/resources/main.js index fa92b620..f37883c0 100644 --- a/src/ReportGenerator.Core/Reporting/Builders/Rendering/resources/main.js +++ b/src/ReportGenerator.Core/Reporting/Builders/Rendering/resources/main.js @@ -1 +1 @@ -"use strict";(self.webpackChunkcoverage_app=self.webpackChunkcoverage_app||[]).push([[179],{538:()=>{function _e(e){return"function"==typeof e}function si(e){const n=e(r=>{Error.call(r),r.stack=(new Error).stack});return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}const ai=si(e=>function(n){e(this),this.message=n?`${n.length} errors occurred during unsubscription:\n${n.map((r,o)=>`${o+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=n});function Zr(e,t){if(e){const n=e.indexOf(t);0<=n&&e.splice(n,1)}}class Nt{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._teardowns=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;const{_parentage:n}=this;if(n)if(this._parentage=null,Array.isArray(n))for(const i of n)i.remove(this);else n.remove(this);const{initialTeardown:r}=this;if(_e(r))try{r()}catch(i){t=i instanceof ai?i.errors:[i]}const{_teardowns:o}=this;if(o){this._teardowns=null;for(const i of o)try{pd(i)}catch(s){t=t??[],s instanceof ai?t=[...t,...s.errors]:t.push(s)}}if(t)throw new ai(t)}}add(t){var n;if(t&&t!==this)if(this.closed)pd(t);else{if(t instanceof Nt){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._teardowns=null!==(n=this._teardowns)&&void 0!==n?n:[]).push(t)}}_hasParent(t){const{_parentage:n}=this;return n===t||Array.isArray(n)&&n.includes(t)}_addParent(t){const{_parentage:n}=this;this._parentage=Array.isArray(n)?(n.push(t),n):n?[n,t]:t}_removeParent(t){const{_parentage:n}=this;n===t?this._parentage=null:Array.isArray(n)&&Zr(n,t)}remove(t){const{_teardowns:n}=this;n&&Zr(n,t),t instanceof Nt&&t._removeParent(this)}}Nt.EMPTY=(()=>{const e=new Nt;return e.closed=!0,e})();const fd=Nt.EMPTY;function hd(e){return e instanceof Nt||e&&"closed"in e&&_e(e.remove)&&_e(e.add)&&_e(e.unsubscribe)}function pd(e){_e(e)?e():e.unsubscribe()}const xn={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},li={setTimeout(...e){const{delegate:t}=li;return(t?.setTimeout||setTimeout)(...e)},clearTimeout(e){const{delegate:t}=li;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function gd(e){li.setTimeout(()=>{const{onUnhandledError:t}=xn;if(!t)throw e;t(e)})}function ci(){}const pC=pa("C",void 0,void 0);function pa(e,t,n){return{kind:e,value:t,error:n}}let On=null;function ui(e){if(xn.useDeprecatedSynchronousErrorHandling){const t=!On;if(t&&(On={errorThrown:!1,error:null}),e(),t){const{errorThrown:n,error:r}=On;if(On=null,n)throw r}}else e()}class ga extends Nt{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,hd(t)&&t.add(this)):this.destination=vC}static create(t,n,r){return new ma(t,n,r)}next(t){this.isStopped?va(function mC(e){return pa("N",e,void 0)}(t),this):this._next(t)}error(t){this.isStopped?va(function gC(e){return pa("E",void 0,e)}(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?va(pC,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()}}}class ma extends ga{constructor(t,n,r){let o;if(super(),_e(t))o=t;else if(t){let i;({next:o,error:n,complete:r}=t),this&&xn.useDeprecatedNextContext?(i=Object.create(t),i.unsubscribe=()=>this.unsubscribe()):i=t,o=o?.bind(i),n=n?.bind(i),r=r?.bind(i)}this.destination={next:o?_a(o):ci,error:_a(n??md),complete:r?_a(r):ci}}}function _a(e,t){return(...n)=>{try{e(...n)}catch(r){xn.useDeprecatedSynchronousErrorHandling?function _C(e){xn.useDeprecatedSynchronousErrorHandling&&On&&(On.errorThrown=!0,On.error=e)}(r):gd(r)}}}function md(e){throw e}function va(e,t){const{onStoppedNotification:n}=xn;n&&li.setTimeout(()=>n(e,t))}const vC={closed:!0,next:ci,error:md,complete:ci},ya="function"==typeof Symbol&&Symbol.observable||"@@observable";function Ca(e){return e}let je=(()=>{class e{constructor(n){n&&(this._subscribe=n)}lift(n){const r=new e;return r.source=this,r.operator=n,r}subscribe(n,r,o){const i=function CC(e){return e&&e instanceof ga||function yC(e){return e&&_e(e.next)&&_e(e.error)&&_e(e.complete)}(e)&&hd(e)}(n)?n:new ma(n,r,o);return ui(()=>{const{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 new(r=vd(r))((o,i)=>{let s;s=this.subscribe(a=>{try{n(a)}catch(l){i(l),s?.unsubscribe()}},i,o)})}_subscribe(n){var r;return null===(r=this.source)||void 0===r?void 0:r.subscribe(n)}[ya](){return this}pipe(...n){return function _d(e){return 0===e.length?Ca:1===e.length?e[0]:function(n){return e.reduce((r,o)=>o(r),n)}}(n)(this)}toPromise(n){return new(n=vd(n))((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=t=>new e(t),e})();function vd(e){var t;return null!==(t=e??xn.Promise)&&void 0!==t?t:Promise}const DC=si(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let di=(()=>{class e extends je{constructor(){super(),this.closed=!1,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(n){const r=new yd(this,this);return r.operator=n,r}_throwIfClosed(){if(this.closed)throw new DC}next(n){ui(()=>{if(this._throwIfClosed(),!this.isStopped){const r=this.observers.slice();for(const o of r)o.next(n)}})}error(n){ui(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=n;const{observers:r}=this;for(;r.length;)r.shift().error(n)}})}complete(){ui(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:n}=this;for(;n.length;)n.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=null}get observed(){var n;return(null===(n=this.observers)||void 0===n?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){const{hasError:r,isStopped:o,observers:i}=this;return r||o?fd:(i.push(n),new Nt(()=>Zr(i,n)))}_checkFinalizedStatuses(n){const{hasError:r,thrownError:o,isStopped:i}=this;r?n.error(o):i&&n.complete()}asObservable(){const n=new je;return n.source=this,n}}return e.create=(t,n)=>new yd(t,n),e})();class yd extends di{constructor(t,n){super(),this.destination=t,this.source=n}next(t){var n,r;null===(r=null===(n=this.destination)||void 0===n?void 0:n.next)||void 0===r||r.call(n,t)}error(t){var n,r;null===(r=null===(n=this.destination)||void 0===n?void 0:n.error)||void 0===r||r.call(n,t)}complete(){var t,n;null===(n=null===(t=this.destination)||void 0===t?void 0:t.complete)||void 0===n||n.call(t)}_subscribe(t){var n,r;return null!==(r=null===(n=this.source)||void 0===n?void 0:n.subscribe(t))&&void 0!==r?r:fd}}function un(e){return t=>{if(function wC(e){return _e(e?.lift)}(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")}}class zt extends ga{constructor(t,n,r,o,i){super(t),this.onFinalize=i,this._next=n?function(s){try{n(s)}catch(a){t.error(a)}}:super._next,this._error=o?function(s){try{o(s)}catch(a){t.error(a)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(s){t.error(s)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var t;const{closed:n}=this;super.unsubscribe(),!n&&(null===(t=this.onFinalize)||void 0===t||t.call(this))}}function Da(e,t){return un((n,r)=>{let o=0;n.subscribe(new zt(r,i=>{r.next(e.call(t,i,o++))}))})}function Rn(e){return this instanceof Rn?(this.v=e,this):new Rn(e)}function MC(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,t=e[Symbol.asyncIterator];return t?t.call(e):(e=function wd(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)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.")}(e),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,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}const bd=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function Ed(e){return _e(e?.then)}function Id(e){return _e(e[ya])}function Md(e){return Symbol.asyncIterator&&_e(e?.[Symbol.asyncIterator])}function Sd(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Ad=function AC(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function Td(e){return _e(e?.[Ad])}function Nd(e){return function IC(e,t,n){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,r=n.apply(e,t||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(h){r[h]&&(o[h]=function(p){return new Promise(function(m,w){i.push([h,p,m,w])>1||a(h,p)})})}function a(h,p){try{!function l(h){h.value instanceof Rn?Promise.resolve(h.value.v).then(c,u):d(i[0][2],h)}(r[h](p))}catch(m){d(i[0][3],m)}}function c(h){a("next",h)}function u(h){a("throw",h)}function d(h,p){h(p),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const n=e.getReader();try{for(;;){const{value:r,done:o}=yield Rn(n.read());if(o)return yield Rn(void 0);yield yield Rn(r)}}finally{n.releaseLock()}})}function xd(e){return _e(e?.getReader)}function dn(e){if(e instanceof je)return e;if(null!=e){if(Id(e))return function TC(e){return new je(t=>{const n=e[ya]();if(_e(n.subscribe))return n.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(bd(e))return function NC(e){return new je(t=>{for(let n=0;n{e.then(n=>{t.closed||(t.next(n),t.complete())},n=>t.error(n)).then(null,gd)})}(e);if(Md(e))return Od(e);if(Td(e))return function OC(e){return new je(t=>{for(const n of e)if(t.next(n),t.closed)return;t.complete()})}(e);if(xd(e))return function RC(e){return Od(Nd(e))}(e)}throw Sd(e)}function Od(e){return new je(t=>{(function FC(e,t){var n,r,o,i;return function bC(e,t,n,r){return new(n||(n=Promise))(function(i,s){function a(u){try{c(r.next(u))}catch(d){s(d)}}function l(u){try{c(r.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof n?i:new n(function(s){s(i)})}(u.value).then(a,l)}c((r=r.apply(e,t||[])).next())})}(this,void 0,void 0,function*(){try{for(n=MC(e);!(r=yield n.next()).done;)if(t.next(r.value),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()})})(e,t).catch(n=>t.error(n))})}function fn(e,t,n,r=0,o=!1){const i=t.schedule(function(){n(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function Rd(e,t,n=1/0){return _e(t)?Rd((r,o)=>Da((i,s)=>t(r,i,o,s))(dn(e(r,o))),n):("number"==typeof t&&(n=t),un((r,o)=>function PC(e,t,n,r,o,i,s,a){const l=[];let c=0,u=0,d=!1;const h=()=>{d&&!l.length&&!c&&t.complete()},p=w=>c{i&&t.next(w),c++;let I=!1;dn(n(w,u++)).subscribe(new zt(t,A=>{o?.(A),i?p(A):t.next(A)},()=>{I=!0},void 0,()=>{if(I)try{for(c--;l.length&&cm(A)):m(A)}h()}catch(A){t.error(A)}}))};return e.subscribe(new zt(t,p,()=>{d=!0,h()})),()=>{a?.()}}(r,o,e,n)))}const ba=new je(e=>e.complete());function Ea(e){return e[e.length-1]}function Fd(e){return function VC(e){return e&&_e(e.schedule)}(Ea(e))?e.pop():void 0}function Pd(e,t=0){return un((n,r)=>{n.subscribe(new zt(r,o=>fn(r,e,()=>r.next(o),t),()=>fn(r,e,()=>r.complete(),t),o=>fn(r,e,()=>r.error(o),t)))})}function kd(e,t=0){return un((n,r)=>{r.add(e.schedule(()=>n.subscribe(r),t))})}function Ld(e,t){if(!e)throw new Error("Iterable cannot be null");return new je(n=>{fn(n,t,()=>{const r=e[Symbol.asyncIterator]();fn(n,t,()=>{r.next().then(o=>{o.done?n.complete():n.next(o.value)})},0,!0)})})}function fi(e,t){return t?function qC(e,t){if(null!=e){if(Id(e))return function jC(e,t){return dn(e).pipe(kd(t),Pd(t))}(e,t);if(bd(e))return function UC(e,t){return new je(n=>{let r=0;return t.schedule(function(){r===e.length?n.complete():(n.next(e[r++]),n.closed||this.schedule())})})}(e,t);if(Ed(e))return function $C(e,t){return dn(e).pipe(kd(t),Pd(t))}(e,t);if(Md(e))return Ld(e,t);if(Td(e))return function zC(e,t){return new je(n=>{let r;return fn(n,t,()=>{r=e[Ad](),fn(n,t,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){return void n.error(s)}i?n.complete():n.next(o)},0,!0)}),()=>_e(r?.return)&&r.return()})}(e,t);if(xd(e))return function GC(e,t){return Ld(Nd(e),t)}(e,t)}throw Sd(e)}(e,t):dn(e)}function WC(...e){const t=Fd(e),n=function BC(e,t){return"number"==typeof Ea(e)?e.pop():t}(e,1/0),r=e;return r.length?1===r.length?dn(r[0]):function kC(e=1/0){return Rd(Ca,e)}(n)(fi(r,t)):ba}class ZC extends di{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const n=super._subscribe(t);return!n.closed&&t.next(this._value),n}getValue(){const{hasError:t,thrownError:n,_value:r}=this;if(t)throw n;return this._throwIfClosed(),r}next(t){super.next(this._value=t)}}function Vd(e={}){const{connector:t=(()=>new di),resetOnError:n=!0,resetOnComplete:r=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const h=()=>{a?.unsubscribe(),a=null},p=()=>{h(),s=l=null,u=d=!1},m=()=>{const w=s;p(),w?.unsubscribe()};return un((w,I)=>{c++,!d&&!u&&h();const A=l=l??t();I.add(()=>{c--,0===c&&!d&&!u&&(a=Ia(m,o))}),A.subscribe(I),s||(s=new ma({next:D=>A.next(D),error:D=>{d=!0,h(),a=Ia(p,n,D),A.error(D)},complete:()=>{u=!0,h(),a=Ia(p,r),A.complete()}}),fi(w).subscribe(s))})(i)}}function Ia(e,t,...n){return!0===t?(e(),null):!1===t?null:t(...n).pipe(function YC(e){return e<=0?()=>ba:un((t,n)=>{let r=0;t.subscribe(new zt(n,o=>{++r<=e&&(n.next(o),e<=r&&n.complete())}))})}(1)).subscribe(()=>e())}function XC(e,t){return e===t}function ie(e){for(let t in e)if(e[t]===ie)return t;throw Error("Could not find renamed property on target object.")}function hi(e,t){for(const n in t)t.hasOwnProperty(n)&&!e.hasOwnProperty(n)&&(e[n]=t[n])}function Ae(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(Ae).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const n=t.indexOf("\n");return-1===n?t:t.substring(0,n)}function Ma(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const eD=ie({__forward_ref__:ie});function ue(e){return e.__forward_ref__=ue,e.toString=function(){return Ae(this())},e}function V(e){return Sa(e)?e():e}function Sa(e){return"function"==typeof e&&e.hasOwnProperty(eD)&&e.__forward_ref__===ue}function Aa(e){return e&&!!e.\u0275providers}const Hd="https://g.co/ng/security#xss";class S extends Error{constructor(t,n){super(function pi(e,t){return`NG0${Math.abs(e)}${t?": "+t:""}`}(t,n)),this.code=t}}function H(e){return"string"==typeof e?e:null==e?"":String(e)}function Ta(e,t){throw new S(-201,!1)}function ft(e,t){null==e&&function P(e,t,n,r){throw new Error(`ASSERTION ERROR: ${e}`+(null==r?"":` [Expected=> ${n} ${r} ${t} <=Actual]`))}(t,e,null,"!=")}function se(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function Gt(e){return{providers:e.providers||[],imports:e.imports||[]}}function gi(e){return Bd(e,_i)||Bd(e,jd)}function Bd(e,t){return e.hasOwnProperty(t)?e[t]:null}function mi(e){return e&&(e.hasOwnProperty(Na)||e.hasOwnProperty(aD))?e[Na]:null}const _i=ie({\u0275prov:ie}),Na=ie({\u0275inj:ie}),jd=ie({ngInjectableDef:ie}),aD=ie({ngInjectorDef:ie});var K=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}(K||{});let xa;function Ke(e){const t=xa;return xa=e,t}function Ud(e,t,n){const r=gi(e);return r&&"root"==r.providedIn?void 0===r.value?r.value=r.factory():r.value:n&K.Optional?null:void 0!==t?t:void Ta(Ae(e))}const de=globalThis,Qr={},ka="__NG_DI_FLAG__",vi="ngTempTokenPath",uD=/\n/gm,Gd="__source";let Kn;function hn(e){const t=Kn;return Kn=e,t}function hD(e,t=K.Default){if(void 0===Kn)throw new S(-203,!1);return null===Kn?Ud(e,void 0,t):Kn.get(e,t&K.Optional?null:void 0,t)}function J(e,t=K.Default){return(function $d(){return xa}()||hD)(V(e),t)}function le(e,t=K.Default){return J(e,yi(t))}function yi(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function La(e){const t=[];for(let n=0;nt){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const p=8&r?h:null;if(p&&-1!==Qd(p,c,0)||2&r&&c!==h){if(Ct(r))return!1;s=!0}}}}else{if(!s&&!Ct(r)&&!Ct(l))return!1;if(s&&Ct(l))continue;s=!1,r=l|1&r}}return Ct(r)||s}function Ct(e){return 0==(1&e)}function CD(e,t,n,r){if(null===t)return-1;let o=0;if(r||!n){let i=!1;for(;o-1)for(n++;n0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""!==o&&!Ct(s)&&(t+=nf(i,o),o=""),r=s,i=i||!Ct(r);n++}return""!==o&&(t+=nf(i,o)),t}function Zt(e){return qt(()=>{const t=of(e),n={...t,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===Ci.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||yt.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};sf(n);const r=e.dependencies;return n.directiveDefs=wi(r,!1),n.pipeDefs=wi(r,!0),n.id=function RD(e){let t=0;const 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(const o of n)t=Math.imul(31,t)+o.charCodeAt(0)<<0;return t+=2147483648,"c"+t}(n),n})}function TD(e){return X(e)||Oe(e)}function ND(e){return null!==e}function pn(e){return qt(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function rf(e,t){if(null==e)return xt;const n={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),n[o]=r,t&&(t[o]=i)}return n}function j(e){return qt(()=>{const t=of(e);return sf(t),t})}function Je(e){return{type:e.type,name:e.name,factory:null,pure:!1!==e.pure,standalone:!0===e.standalone,onDestroy:e.type.prototype.ngOnDestroy||null}}function X(e){return e[Di]||null}function Oe(e){return e[Va]||null}function $e(e){return e[Ha]||null}function of(e){const 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||xt,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:rf(e.inputs,t),outputs:rf(e.outputs)}}function sf(e){e.features?.forEach(t=>t(e))}function wi(e,t){if(!e)return null;const n=t?$e:TD;return()=>("function"==typeof e?e():e).map(r=>n(r)).filter(ND)}const ye=0,T=1,U=2,ge=3,Dt=4,eo=5,ke=6,Jn=7,be=8,gn=9,Xn=10,B=11,to=12,af=13,er=14,Ee=15,no=16,tr=17,Ot=18,ro=19,lf=20,mn=21,Qt=22,oo=23,io=24,W=25,ja=1,cf=2,Rt=7,nr=9,Re=11;function Xe(e){return Array.isArray(e)&&"object"==typeof e[ja]}function Ue(e){return Array.isArray(e)&&!0===e[ja]}function $a(e){return 0!=(4&e.flags)}function Pn(e){return e.componentOffset>-1}function Ei(e){return 1==(1&e.flags)}function wt(e){return!!e.template}function Ua(e){return 0!=(512&e[U])}function kn(e,t){return e.hasOwnProperty(Wt)?e[Wt]:null}let Fe=null,Ii=!1;function ht(e){const t=Fe;return Fe=e,t}const ff={version: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:()=>{}};function pf(e){if(!ao(e)||e.dirty){if(!e.producerMustRecompute(e)&&!_f(e))return void(e.dirty=!1);e.producerRecomputeValue(e),e.dirty=!1}}function mf(e){e.dirty=!0,function gf(e){if(void 0===e.liveConsumerNode)return;const t=Ii;Ii=!0;try{for(const n of e.liveConsumerNode)n.dirty||mf(n)}finally{Ii=t}}(e),e.consumerMarkedDirty?.(e)}function Ga(e){return e&&(e.nextProducerIndex=0),ht(e)}function qa(e,t){if(ht(t),e&&void 0!==e.producerNode&&void 0!==e.producerIndexOfThis&&void 0!==e.producerLastReadVersion){if(ao(e))for(let n=e.nextProducerIndex;ne.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}function _f(e){rr(e);for(let t=0;t0}function rr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let Df=null;const If=()=>{},qD=(()=>({...ff,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!1,consumerMarkedDirty:e=>{e.schedule(e.ref)},hasRun:!1,cleanupFn:If}))();class WD{constructor(t,n,r){this.previousValue=t,this.currentValue=n,this.firstChange=r}isFirstChange(){return this.firstChange}}function Yt(){return Mf}function Mf(e){return e.type.prototype.ngOnChanges&&(e.setInput=QD),ZD}function ZD(){const e=Af(this),t=e?.current;if(t){const n=e.previous;if(n===xt)e.previous=t;else for(let r in t)n[r]=t[r];e.current=null,this.ngOnChanges(t)}}function QD(e,t,n,r){const o=this.declaredInputs[n],i=Af(e)||function YD(e,t){return e[Sf]=t}(e,{previous:xt,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new WD(l&&l.currentValue,t,a===xt),e[r]=t}Yt.ngInherit=!0;const Sf="__ngSimpleChanges__";function Af(e){return e[Sf]||null}const Ft=function(e,t,n){};function fe(e){for(;Array.isArray(e);)e=e[ye];return e}function Si(e,t){return fe(t[e])}function et(e,t){return fe(t[e.index])}function xf(e,t){return e.data[t]}function at(e,t){const n=t[e];return Xe(n)?n:n[ye]}function vn(e,t){return null==t?null:e[t]}function Of(e){e[tr]=0}function nw(e){1024&e[U]||(e[U]|=1024,Ff(e,1))}function Rf(e){1024&e[U]&&(e[U]&=-1025,Ff(e,-1))}function Ff(e,t){let n=e[ge];if(null===n)return;n[eo]+=t;let r=n;for(n=n[ge];null!==n&&(1===t&&1===r[eo]||-1===t&&0===r[eo]);)n[eo]+=t,r=n,n=n[ge]}const k={lFrame:Gf(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function Lf(){return k.bindingsEnabled}function E(){return k.lFrame.lView}function ee(){return k.lFrame.tView}function G(e){return k.lFrame.contextLView=e,e[be]}function q(e){return k.lFrame.contextLView=null,e}function Pe(){let e=Vf();for(;null!==e&&64===e.type;)e=e.parent;return e}function Vf(){return k.lFrame.currentTNode}function Pt(e,t){const n=k.lFrame;n.currentTNode=e,n.isParent=t}function Ka(){return k.lFrame.isParent}function Ja(){k.lFrame.isParent=!1}function ze(){const e=k.lFrame;let t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function sr(){return k.lFrame.bindingIndex++}function Jt(e){const t=k.lFrame,n=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,n}function pw(e,t){const n=k.lFrame;n.bindingIndex=n.bindingRootIndex=e,Xa(t)}function Xa(e){k.lFrame.currentDirectiveIndex=e}function tl(e){k.lFrame.currentQueryIndex=e}function mw(e){const t=e[T];return 2===t.type?t.declTNode:1===t.type?e[ke]:null}function Uf(e,t,n){if(n&K.SkipSelf){let o=t,i=e;for(;!(o=o.parent,null!==o||n&K.Host||(o=mw(i),null===o||(i=i[er],10&o.type))););if(null===o)return!1;t=o,e=i}const r=k.lFrame=zf();return r.currentTNode=t,r.lView=e,!0}function nl(e){const t=zf(),n=e[T];k.lFrame=t,t.currentTNode=n.firstChild,t.lView=e,t.tView=n,t.contextLView=e,t.bindingIndex=n.bindingStartIndex,t.inI18n=!1}function zf(){const e=k.lFrame,t=null===e?null:e.child;return null===t?Gf(e):t}function Gf(e){const 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 null!==e&&(e.child=t),t}function qf(){const e=k.lFrame;return k.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const Wf=qf;function rl(){const e=qf();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 Ge(){return k.lFrame.selectedIndex}function Ln(e){k.lFrame.selectedIndex=e}function ve(){const e=k.lFrame;return xf(e.tView,e.selectedIndex)}let Yf=!0;function Ai(){return Yf}function yn(e){Yf=e}function Ti(e,t){for(let n=t.directiveStart,r=t.directiveEnd;n=r)break}else t[l]<0&&(e[tr]+=65536),(a>13>16&&(3&e[U])===t&&(e[U]+=8192,Jf(a,i)):Jf(a,i)}const ar=-1;class co{constructor(t,n,r){this.factory=t,this.resolving=!1,this.canSeeViewProviders=n,this.injectImpl=r}}function sl(e){return e!==ar}function uo(e){return 32767&e}function fo(e,t){let n=function Sw(e){return e>>16}(e),r=t;for(;n>0;)r=r[er],n--;return r}let al=!0;function Oi(e){const t=al;return al=e,t}const Xf=255,eh=5;let Aw=0;const kt={};function Ri(e,t){const n=th(e,t);if(-1!==n)return n;const r=t[T];r.firstCreatePass&&(e.injectorIndex=t.length,ll(r.data,e),ll(t,null),ll(r.blueprint,null));const o=Fi(e,t),i=e.injectorIndex;if(sl(o)){const s=uo(o),a=fo(o,t),l=a[T].data;for(let c=0;c<8;c++)t[i+c]=a[s+c]|l[s+c]}return t[i+8]=o,i}function ll(e,t){e.push(0,0,0,0,0,0,0,0,t)}function th(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function Fi(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let n=0,r=null,o=t;for(;null!==o;){if(r=lh(o),null===r)return ar;if(n++,o=o[er],-1!==r.injectorIndex)return r.injectorIndex|n<<16}return ar}function cl(e,t,n){!function Tw(e,t,n){let r;"string"==typeof n?r=n.charCodeAt(0)||0:n.hasOwnProperty(Kr)&&(r=n[Kr]),null==r&&(r=n[Kr]=Aw++);const o=r&Xf;t.data[e+(o>>eh)]|=1<=0?t&Xf:Fw:t}(n);if("function"==typeof i){if(!Uf(t,e,r))return r&K.Host?nh(o,0,r):rh(t,n,r,o);try{let s;if(s=i(r),null!=s||r&K.Optional)return s;Ta()}finally{Wf()}}else if("number"==typeof i){let s=null,a=th(e,t),l=ar,c=r&K.Host?t[Ee][ke]:null;for((-1===a||r&K.SkipSelf)&&(l=-1===a?Fi(e,t):t[a+8],l!==ar&&ah(r,!1)?(s=t[T],a=uo(l),t=fo(l,t)):a=-1);-1!==a;){const u=t[T];if(sh(i,a,u.data)){const d=xw(a,t,n,s,r,c);if(d!==kt)return d}l=t[a+8],l!==ar&&ah(r,t[T].data[a+8]===c)&&sh(i,a,t)?(s=u,a=uo(l),t=fo(l,t)):a=-1}}return o}function xw(e,t,n,r,o,i){const s=t[T],a=s.data[e+8],u=function Pi(e,t,n,r,o){const i=e.providerIndexes,s=t.data,a=1048575&i,l=e.directiveStart,u=i>>20,h=o?a+u:e.directiveEnd;for(let p=r?a:a+u;p=l&&m.type===n)return p}if(o){const p=s[l];if(p&&wt(p)&&p.type===n)return l}return null}(a,s,n,null==r?Pn(a)&&al:r!=s&&0!=(3&a.type),o&K.Host&&i===a);return null!==u?Vn(t,s,u,a):kt}function Vn(e,t,n,r){let o=e[n];const i=t.data;if(function Ew(e){return e instanceof co}(o)){const s=o;s.resolving&&function tD(e,t){const n=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new S(-200,`Circular dependency in DI detected for ${e}${n}`)}(function oe(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():H(e)}(i[n]));const a=Oi(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?Ke(s.injectImpl):null;Uf(e,r,K.Default);try{o=e[n]=s.factory(void 0,i,e,r),t.firstCreatePass&&n>=r.directiveStart&&function ww(e,t,n){const{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=t.type.prototype;if(r){const s=Mf(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))}(n,i[n],t)}finally{null!==c&&Ke(c),Oi(a),s.resolving=!1,Wf()}}return o}function sh(e,t,n){return!!(n[t+(e>>eh)]&1<{const t=e.prototype.constructor,n=t[Wt]||ul(t),r=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){const i=o[Wt]||ul(o);if(i&&i!==n)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function ul(e){return Sa(e)?()=>{const t=ul(V(e));return t&&t()}:kn(e)}function lh(e){const t=e[T],n=t.type;return 2===n?t.declTNode:1===n?e[ke]:null}const cr="__parameters__";function dr(e,t,n){return qt(()=>{const r=function fl(e){return function(...n){if(e){const r=e(...n);for(const o in r)this[o]=r[o]}}}(t);function o(...i){if(this instanceof o)return r.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(cr)?l[cr]:Object.defineProperty(l,cr,{value:[]})[cr];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return n&&(o.prototype=Object.create(n.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function hr(e,t){e.forEach(n=>Array.isArray(n)?hr(n,t):t(n))}function uh(e,t,n){t>=e.length?e.push(n):e.splice(t,0,n)}function ki(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function lt(e,t,n){let r=pr(e,t);return r>=0?e[1|r]=n:(r=~r,function $w(e,t,n,r){let o=e.length;if(o==t)e.push(n,r);else if(1===o)e.push(r,e[0]),e[0]=n;else{for(o--,e.push(e[o-1],e[o]);o>t;)e[o]=e[o-2],o--;e[t]=n,e[t+1]=r}}(e,r,t,n)),r}function hl(e,t){const n=pr(e,t);if(n>=0)return e[1|n]}function pr(e,t){return function dh(e,t,n){let r=0,o=e.length>>n;for(;o!==r;){const i=r+(o-r>>1),s=e[i<t?o=i:r=i+1}return~(o<|^->||--!>|)/g,db="\u200b$1\u200b";const Cl=new Map;let fb=0;const wl="__ngContext__";function Ve(e,t){Xe(t)?(e[wl]=t[ro],function pb(e){Cl.set(e[ro],e)}(t)):e[wl]=t}let bl;function El(e,t){return bl(e,t)}function vo(e){const t=e[ge];return Ue(t)?t[ge]:t}function xh(e){return Rh(e[to])}function Oh(e){return Rh(e[Dt])}function Rh(e){for(;null!==e&&!Ue(e);)e=e[Dt];return e}function _r(e,t,n,r,o){if(null!=r){let i,s=!1;Ue(r)?i=r:Xe(r)&&(s=!0,r=r[ye]);const a=fe(r);0===e&&null!==n?null==o?Lh(t,n,a):Hn(t,n,a,o||null,!0):1===e&&null!==n?Hn(t,n,a,o||null,!0):2===e?function Qi(e,t,n){const r=Wi(e,t);r&&function Rb(e,t,n,r){e.removeChild(t,n,r)}(e,r,t,n)}(t,a,s):3===e&&t.destroyNode(a),null!=i&&function kb(e,t,n,r,o){const i=n[Rt];i!==fe(n)&&_r(t,e,r,i,o);for(let a=Re;at.replace(ub,db))}(t))}function Gi(e,t,n){return e.createElement(t,n)}function Ph(e,t){const n=e[nr],r=n.indexOf(t);Rf(t),n.splice(r,1)}function qi(e,t){if(e.length<=Re)return;const n=Re+t,r=e[n];if(r){const o=r[no];null!==o&&o!==e&&Ph(o,r),t>0&&(e[n-1][Dt]=r[Dt]);const i=ki(e,Re+t);!function Ib(e,t){Co(e,t,t[B],2,null,null),t[ye]=null,t[ke]=null}(r[T],r);const s=i[Ot];null!==s&&s.detachView(i[T]),r[ge]=null,r[Dt]=null,r[U]&=-129}return r}function Ml(e,t){if(!(256&t[U])){const n=t[B];t[oo]&&vf(t[oo]),t[io]&&vf(t[io]),n.destroyNode&&Co(e,t,n,3,null,null),function Ab(e){let t=e[to];if(!t)return Sl(e[T],e);for(;t;){let n=null;if(Xe(t))n=t[to];else{const r=t[Re];r&&(n=r)}if(!n){for(;t&&!t[Dt]&&t!==e;)Xe(t)&&Sl(t[T],t),t=t[ge];null===t&&(t=e),Xe(t)&&Sl(t[T],t),n=t&&t[Dt]}t=n}}(t)}}function Sl(e,t){if(!(256&t[U])){t[U]&=-129,t[U]|=256,function Ob(e,t){let n;if(null!=e&&null!=(n=e.destroyHooks))for(let r=0;r=0?r[s]():r[-s].unsubscribe(),i+=2}else n[i].call(r[n[i+1]]);null!==r&&(t[Jn]=null);const o=t[mn];if(null!==o){t[mn]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[r.directiveStart+o];if(i===yt.None||i===yt.Emulated)return null}return et(r,n)}}(e,t.parent,n)}function Hn(e,t,n,r,o){e.insertBefore(t,n,r,o)}function Lh(e,t,n){e.appendChild(t,n)}function Vh(e,t,n,r,o){null!==r?Hn(e,t,n,r,o):Lh(e,t,n)}function Wi(e,t){return e.parentNode(t)}let Tl,Rl,jh=function Bh(e,t,n){return 40&e.type?et(e,n):null};function Zi(e,t,n,r){const o=Al(e,r,t),i=t[B],a=function Hh(e,t,n){return jh(e,t,n)}(r.parent||t[ke],r,t);if(null!=o)if(Array.isArray(n))for(let l=0;l{n.push(s)};return hr(t,s=>{const a=s;es(a,i,[],r)&&(o||=[],o.push(a))}),void 0!==o&&cp(o,i),n}function cp(e,t){for(let n=0;n{t(i,r)})}}function es(e,t,n,r){if(!(e=V(e)))return!1;let o=null,i=mi(e);const s=!i&&X(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=mi(l),!i)return!1;o=l}const a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)es(c,t,n,r)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;r.add(o);try{hr(i.imports,u=>{es(u,t,n,r)&&(c||=[],c.push(u))})}finally{}void 0!==c&&cp(c,t)}if(!a){const c=kn(o)||(()=>new o);t({provide:o,useFactory:c,deps:te},o),t({provide:sp,useValue:o,multi:!0},o),t({provide:Xi,useValue:()=>J(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;Bl(l,u=>{t(u,c)})}}}return o!==e&&void 0!==e.providers}function Bl(e,t){for(let n of e)Aa(n)&&(n=n.\u0275providers),Array.isArray(n)?Bl(n,t):t(n)}const hE=ie({provide:String,useValue:ie});function jl(e){return null!==e&&"object"==typeof e&&hE in e}function Bn(e){return"function"==typeof e}const $l=new R("Set Injector scope."),ts={},gE={};let Ul;function ns(){return void 0===Ul&&(Ul=new Hl),Ul}class en{}class rs extends en{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,Gl(t,s=>this.processProvider(s)),this.records.set(ip,Dr(void 0,this)),o.has("environment")&&this.records.set(en,Dr(void 0,this));const i=this.records.get($l);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(sp.multi,te,K.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const n of this._ngOnDestroyHooks)n.ngOnDestroy();const t=this._onDestroyHooks;this._onDestroyHooks=[];for(const n of t)n()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();const n=hn(this),r=Ke(void 0);try{return t()}finally{hn(n),Ke(r)}}get(t,n=Qr,r=K.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(Zd))return t[Zd](this);r=yi(r);const i=hn(this),s=Ke(void 0);try{if(!(r&K.SkipSelf)){let l=this.records.get(t);if(void 0===l){const c=function CE(e){return"function"==typeof e||"object"==typeof e&&e instanceof R}(t)&&gi(t);l=c&&this.injectableDefInScope(c)?Dr(zl(t),ts):null,this.records.set(t,l)}if(null!=l)return this.hydrate(t,l)}return(r&K.Self?ns():this.parent).get(t,n=r&K.Optional&&n===Qr?null:n)}catch(a){if("NullInjectorError"===a.name){if((a[vi]=a[vi]||[]).unshift(Ae(t)),i)throw a;return function gD(e,t,n,r){const o=e[vi];throw t[Gd]&&o.unshift(t[Gd]),e.message=function mD(e,t,n,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=Ae(t);if(Array.isArray(t))o=t.map(Ae).join(" -> ");else if("object"==typeof t){let i=[];for(let s in t)if(t.hasOwnProperty(s)){let a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Ae(a)))}o=`{${i.join(", ")}}`}return`${n}${r?"("+r+")":""}[${o}]: ${e.replace(uD,"\n ")}`}("\n"+e.message,o,n,r),e.ngTokenPath=o,e[vi]=null,e}(a,t,"R3InjectorError",this.source)}throw a}finally{Ke(s),hn(i)}}resolveInjectorInitializers(){const t=hn(this),n=Ke(void 0);try{const o=this.get(Xi.multi,te,K.Self);for(const i of o)i()}finally{hn(t),Ke(n)}}toString(){const t=[],n=this.records;for(const r of n.keys())t.push(Ae(r));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new S(205,!1)}processProvider(t){let n=Bn(t=V(t))?t:V(t&&t.provide);const r=function _E(e){return jl(e)?Dr(void 0,e.useValue):Dr(fp(e),ts)}(t);if(Bn(t)||!0!==t.multi)this.records.get(n);else{let o=this.records.get(n);o||(o=Dr(void 0,ts,!0),o.factory=()=>La(o.multi),this.records.set(n,o)),n=t,o.multi.push(t)}this.records.set(n,r)}hydrate(t,n){return n.value===ts&&(n.value=gE,n.value=n.factory()),"object"==typeof n.value&&n.value&&function yE(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(n.value)&&this._ngOnDestroyHooks.add(n.value),n.value}injectableDefInScope(t){if(!t.providedIn)return!1;const n=V(t.providedIn);return"string"==typeof n?"any"===n||this.scopes.has(n):this.injectorDefTypes.has(n)}removeOnDestroy(t){const n=this._onDestroyHooks.indexOf(t);-1!==n&&this._onDestroyHooks.splice(n,1)}}function zl(e){const t=gi(e),n=null!==t?t.factory:kn(e);if(null!==n)return n;if(e instanceof R)throw new S(204,!1);if(e instanceof Function)return function mE(e){const t=e.length;if(t>0)throw function go(e,t){const n=[];for(let r=0;rn.factory(e):()=>new e}(e);throw new S(204,!1)}function fp(e,t,n){let r;if(Bn(e)){const o=V(e);return kn(o)||zl(o)}if(jl(e))r=()=>V(e.useValue);else if(function dp(e){return!(!e||!e.useFactory)}(e))r=()=>e.useFactory(...La(e.deps||[]));else if(function up(e){return!(!e||!e.useExisting)}(e))r=()=>J(V(e.useExisting));else{const o=V(e&&(e.useClass||e.provide));if(!function vE(e){return!!e.deps}(e))return kn(o)||zl(o);r=()=>new o(...La(e.deps))}return r}function Dr(e,t,n=!1){return{factory:e,value:t,multi:n?[]:void 0}}function Gl(e,t){for(const n of e)Array.isArray(n)?Gl(n,t):n&&Aa(n)?Gl(n.\u0275providers,t):t(n)}const os=new R("AppId",{providedIn:"root",factory:()=>DE}),DE="ng",hp=new R("Platform Initializer"),wr=new R("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),pp=new R("CSP nonce",{providedIn:"root",factory:()=>function yr(){if(void 0!==Rl)return Rl;if(typeof document<"u")return document;throw new S(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});let gp=(e,t,n)=>null;function Xl(e,t,n=!1){return gp(e,t,n)}class xE{}class vp{}class RE{resolveComponentFactory(t){throw function OE(e){const t=Error(`No component factory found for ${Ae(e)}.`);return t.ngComponent=e,t}(t)}}let us=(()=>{class t{}return t.NULL=new RE,t})();function FE(){return Ir(Pe(),E())}function Ir(e,t){return new bt(et(e,t))}let bt=(()=>{class t{constructor(r){this.nativeElement=r}}return t.__NG_ELEMENT_ID__=FE,t})();class Cp{}let jn=(()=>{class t{constructor(){this.destroyNode=null}}return t.__NG_ELEMENT_ID__=()=>function kE(){const e=E(),n=at(Pe().index,e);return(Xe(n)?n:e)[B]}(),t})(),LE=(()=>{var e;class t{}return(e=t).\u0275prov=se({token:e,providedIn:"root",factory:()=>null}),t})();class ds{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const VE=new ds("16.2.10"),nc={};function Ep(e,t=null,n=null,r){const o=Ip(e,t,n,r);return o.resolveInjectorInitializers(),o}function Ip(e,t=null,n=null,r,o=new Set){const i=[n||te,fE(e)];return r=r||("object"==typeof e?void 0:Ae(e)),new rs(i,t||ns(),r||null,o)}let Et=(()=>{var e;class t{static create(r,o){if(Array.isArray(r))return Ep({name:""},o,r,"");{const i=r.name??"";return Ep({name:i},r.parent,r.providers,i)}}}return(e=t).THROW_IF_NOT_FOUND=Qr,e.NULL=new Hl,e.\u0275prov=se({token:e,providedIn:"any",factory:()=>J(ip)}),e.__NG_ELEMENT_ID__=-1,t})();function oc(e){return e.ngOriginalError}class tn{constructor(){this._console=console}handleError(t){const n=this._findOriginalError(t);this._console.error("ERROR",t),n&&this._console.error("ORIGINAL ERROR",n)}_findOriginalError(t){let n=t&&oc(t);for(;n&&oc(n);)n=oc(n);return n||null}}function sc(e){return t=>{setTimeout(e,void 0,t)}}const Ie=class GE extends di{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,n,r){let o=t,i=n||(()=>null),s=r;if(t&&"object"==typeof t){const l=t;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=sc(i),o&&(o=sc(o)),s&&(s=sc(s)));const a=super.subscribe({next:o,error:i,complete:s});return t instanceof Nt&&t.add(a),a}};function Sp(...e){}class Ce{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:n=!1,shouldCoalesceRunChangeDetection:r=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Ie(!1),this.onMicrotaskEmpty=new Ie(!1),this.onStable=new Ie(!1),this.onError=new Ie(!1),typeof Zone>"u")throw new S(908,!1);Zone.assertZonePatched();const 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=function qE(){const e="function"==typeof de.requestAnimationFrame;let t=de[e?"requestAnimationFrame":"setTimeout"],n=de[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&t&&n){const r=t[Zone.__symbol__("OriginalDelegate")];r&&(t=r);const o=n[Zone.__symbol__("OriginalDelegate")];o&&(n=o)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:n}}().nativeRequestAnimationFrame,function QE(e){const t=()=>{!function ZE(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(de,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,lc(e),e.isCheckStableRunning=!0,ac(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),lc(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(n,r,o,i,s,a)=>{if(function KE(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return n.invokeTask(o,i,s,a);try{return Ap(e),n.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&t(),Tp(e)}},onInvoke:(n,r,o,i,s,a,l)=>{try{return Ap(e),n.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&t(),Tp(e)}},onHasTask:(n,r,o,i)=>{n.hasTask(o,i),r===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,lc(e),ac(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(n,r,o,i)=>(n.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!Ce.isInAngularZone())throw new S(909,!1)}static assertNotInAngularZone(){if(Ce.isInAngularZone())throw new S(909,!1)}run(t,n,r){return this._inner.run(t,n,r)}runTask(t,n,r,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,t,WE,Sp,Sp);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)}}const WE={};function ac(e){if(0==e._nesting&&!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 lc(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function Ap(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Tp(e){e._nesting--,ac(e)}class YE{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Ie,this.onMicrotaskEmpty=new Ie,this.onStable=new Ie,this.onError=new Ie}run(t,n,r){return t.apply(n,r)}runGuarded(t,n,r){return t.apply(n,r)}runOutsideAngular(t){return t()}runTask(t,n,r,o){return t.apply(n,r)}}const Np=new R("",{providedIn:"root",factory:xp});function xp(){const e=le(Ce);let t=!0;return WC(new je(o=>{t=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(t),o.complete()})}),new je(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{Ce.assertNotInAngularZone(),queueMicrotask(()=>{!t&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(t=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{Ce.assertInAngularZone(),t&&(t=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe(Vd()))}function cc(e){return e.ownerDocument.defaultView}let uc=(()=>{var e;class t{constructor(){this.renderDepth=0,this.handler=null}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){this.renderDepth--,0===this.renderDepth&&this.handler?.execute()}ngOnDestroy(){this.handler?.destroy(),this.handler=null}}return(e=t).\u0275prov=se({token:e,providedIn:"root",factory:()=>new e}),t})();function Mo(e){for(;e;){e[U]|=64;const t=vo(e);if(Ua(e)&&!t)return e;e=t}return null}const kp=new R("",{providedIn:"root",factory:()=>!1});let hs=null;function Bp(e,t){return e[t]??Up()}function jp(e,t){const n=Up();n.producerNode?.length&&(e[t]=hs,n.lView=e,hs=$p())}const sI={...ff,consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{Mo(e.lView)},lView:null};function $p(){return Object.create(sI)}function Up(){return hs??=$p(),hs}const $={};function f(e){zp(ee(),E(),Ge()+e,!1)}function zp(e,t,n,r){if(!r)if(3==(3&t[U])){const i=e.preOrderCheckHooks;null!==i&&Ni(t,i,n)}else{const i=e.preOrderHooks;null!==i&&xi(t,i,0,n)}Ln(n)}function M(e,t=K.Default){const n=E();return null===n?J(e,t):oh(Pe(),n,V(e),t)}function ps(e,t,n,r,o,i,s,a,l,c,u){const d=t.blueprint.slice();return d[ye]=o,d[U]=140|r,(null!==c||e&&2048&e[U])&&(d[U]|=2048),Of(d),d[ge]=d[er]=e,d[be]=n,d[Xn]=s||e&&e[Xn],d[B]=a||e&&e[B],d[gn]=l||e&&e[gn]||null,d[ke]=i,d[ro]=function hb(){return fb++}(),d[Qt]=u,d[lf]=c,d[Ee]=2==t.type?e[Ee]:d,d}function Ar(e,t,n,r,o){let i=e.data[t];if(null===i)i=function dc(e,t,n,r,o){const i=Vf(),s=Ka(),l=e.data[t]=function gI(e,t,n,r,o,i){let s=t?t.injectorIndex:-1,a=0;return function ir(){return null!==k.skipHydrationRootTNode}()&&(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}}(0,s?i:i&&i.parent,n,t,r,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,t,n,r,o),function hw(){return k.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=n,i.value=r,i.attrs=o;const s=function lo(){const e=k.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return Pt(i,!0),i}function So(e,t,n,r){if(0===n)return-1;const o=t.length;for(let i=0;iW&&zp(e,t,W,!1),Ft(a?2:0,o);const c=a?i:null,u=Ga(c);try{null!==c&&(c.dirty=!1),n(r,o)}finally{qa(c,u)}}finally{a&&null===t[oo]&&jp(t,oo),Ln(s),Ft(a?3:1,o)}}function fc(e,t,n){if($a(t)){const r=ht(null);try{const i=t.directiveEnd;for(let s=t.directiveStart;snull;function Zp(e,t,n,r){for(let o in e)if(e.hasOwnProperty(o)){n=null===n?{}:n;const i=e[o];null===r?Qp(n,t,o,i):r.hasOwnProperty(o)&&Qp(n,t,r[o],i)}return n}function Qp(e,t,n,r){e.hasOwnProperty(n)?e[n].push(t,r):e[n]=[t,r]}function ct(e,t,n,r,o,i,s,a){const l=et(t,n);let u,c=t.inputs;!a&&null!=c&&(u=c[r])?(Cc(e,n,u,r,o),Pn(t)&&function vI(e,t){const n=at(t,e);16&n[U]||(n[U]|=64)}(n,t.index)):3&t.type&&(r=function _I(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(r),o=null!=s?s(o,t.value||"",r):o,i.setProperty(l,r,o))}function mc(e,t,n,r){if(Lf()){const o=null===r?null:{"":-1},i=function EI(e,t){const n=e.directiveRegistry;let r=null,o=null;if(n)for(let i=0;i0;){const n=e[--t];if("number"==typeof n&&n<0)return n}return 0})(s)!=a&&s.push(a),s.push(n,r,i)}}(e,t,r,So(e,n,o.hostVars,$),o)}function Lt(e,t,n,r,o,i){const s=et(e,t);!function vc(e,t,n,r,o,i,s){if(null==i)e.removeAttribute(t,o,n);else{const a=null==s?H(i):s(i,r||"",o);e.setAttribute(t,o,a,n)}}(t[B],s,i,e.value,n,r,o)}function NI(e,t,n,r,o,i){const s=i[t];if(null!==s)for(let a=0;a{var e;class t{constructor(){this.all=new Set,this.queue=new Map}create(r,o,i){const s=typeof Zone>"u"?null:Zone.current,a=function GD(e,t,n){const r=Object.create(qD);n&&(r.consumerAllowSignalWrites=!0),r.fn=e,r.schedule=t;const o=s=>{r.cleanupFn=s};return r.ref={notify:()=>mf(r),run:()=>{if(r.dirty=!1,r.hasRun&&!_f(r))return;r.hasRun=!0;const s=Ga(r);try{r.cleanupFn(),r.cleanupFn=If,r.fn(o)}finally{qa(r,s)}},cleanup:()=>r.cleanupFn()},r.ref}(r,u=>{this.all.has(u)&&this.queue.set(u,s)},i);let l;this.all.add(a),a.notify();const c=()=>{a.cleanup(),l?.(),this.all.delete(a),this.queue.delete(a)};return l=o?.onDestroy(c),{destroy:c}}flush(){if(0!==this.queue.size)for(const[r,o]of this.queue)this.queue.delete(r),o?o.run(()=>r.run()):r.run()}get isQueueEmpty(){return 0===this.queue.size}}return(e=t).\u0275prov=se({token:e,providedIn:"root",factory:()=>new e}),t})();function ms(e,t,n){let r=n?e.styles:null,o=n?e.classes:null,i=0;if(null!==t)for(let s=0;s0){lg(e,1);const o=n.components;null!==o&&ug(e,o,1)}}function ug(e,t,n){for(let r=0;r-1&&(qi(t,r),ki(n,r))}this._attachedToViewContainer=!1}Ml(this._lView[T],this._lView)}onDestroy(t){!function Pf(e,t){if(256==(256&e[U]))throw new S(911,!1);null===e[mn]&&(e[mn]=[]),e[mn].push(t)}(this._lView,t)}markForCheck(){Mo(this._cdRefInjectingView||this._lView)}detach(){this._lView[U]&=-129}reattach(){this._lView[U]|=128}detectChanges(){_s(this._lView[T],this._lView,this.context)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new S(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function Sb(e,t){Co(e,t,t[B],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new S(902,!1);this._appRef=t}}class HI extends To{constructor(t){super(t),this._view=t}detectChanges(){const t=this._view;_s(t[T],t,t[be],!1)}checkNoChanges(){}get context(){return null}}class dg extends us{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const n=X(t);return new No(n,this.ngModule)}}function fg(e){const t=[];for(let n in e)e.hasOwnProperty(n)&&t.push({propName:e[n],templateName:n});return t}class jI{constructor(t,n){this.injector=t,this.parentInjector=n}get(t,n,r){r=yi(r);const o=this.injector.get(t,nc,r);return o!==nc||n===nc?o:this.parentInjector.get(t,n,r)}}class No extends vp{get inputs(){const t=this.componentDef,n=t.inputTransforms,r=fg(t.inputs);if(null!==n)for(const o of r)n.hasOwnProperty(o.propName)&&(o.transform=n[o.propName]);return r}get outputs(){return fg(this.componentDef.outputs)}constructor(t,n){super(),this.componentDef=t,this.ngModule=n,this.componentType=t.type,this.selector=function MD(e){return e.map(ID).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!n}create(t,n,r,o){let i=(o=o||this.ngModule)instanceof en?o:o?.injector;i&&null!==this.componentDef.getStandaloneInjector&&(i=this.componentDef.getStandaloneInjector(i)||i);const s=i?new jI(t,i):t,a=s.get(Cp,null);if(null===a)throw new S(407,!1);const d={rendererFactory:a,sanitizer:s.get(LE,null),effectManager:s.get(ig,null),afterRenderEventManager:s.get(uc,null)},h=a.createRenderer(null,this.componentDef),p=this.componentDef.selectors[0][0]||"div",m=r?function uI(e,t,n,r){const i=r.get(kp,!1)||n===yt.ShadowDom,s=e.selectRootElement(t,i);return function dI(e){Wp(e)}(s),s}(h,r,this.componentDef.encapsulation,s):Gi(h,p,function BI(e){const t=e.toLowerCase();return"svg"===t?"svg":"math"===t?"math":null}(p)),A=this.componentDef.signals?4608:this.componentDef.onPush?576:528;let D=null;null!==m&&(D=Xl(m,s,!0));const O=gc(0,null,null,1,0,null,null,null,null,null,null),L=ps(null,O,null,A,null,null,d,h,s,null,D);let Y,ot;nl(L);try{const cn=this.componentDef;let Wr,dd=null;cn.findHostDirectiveDefs?(Wr=[],dd=new Map,cn.findHostDirectiveDefs(cn,Wr,dd),Wr.push(cn)):Wr=[cn];const hP=function UI(e,t){const n=e[T],r=W;return e[r]=t,Ar(n,r,2,"#host",null)}(L,m),pP=function zI(e,t,n,r,o,i,s){const a=o[T];!function GI(e,t,n,r){for(const o of e)t.mergedAttrs=Jr(t.mergedAttrs,o.hostAttrs);null!==t.mergedAttrs&&(ms(t,t.mergedAttrs,!0),null!==n&&Wh(r,n,t))}(r,e,t,s);let l=null;null!==t&&(l=Xl(t,o[gn]));const c=i.rendererFactory.createRenderer(t,n);let u=16;n.signals?u=4096:n.onPush&&(u=64);const d=ps(o,qp(n),null,u,o[e.index],e,i,c,null,null,l);return a.firstCreatePass&&_c(a,e,r.length-1),gs(o,d),o[e.index]=d}(hP,m,cn,Wr,L,d,h);ot=xf(O,W),m&&function WI(e,t,n,r){if(r)Ba(e,n,["ng-version",VE.full]);else{const{attrs:o,classes:i}=function SD(e){const t=[],n=[];let r=1,o=2;for(;r0&&qh(e,n,i.join(" "))}}(h,cn,m,r),void 0!==n&&function ZI(e,t,n){const r=e.projection=[];for(let o=0;o=0;r--){const o=e[r];o.hostVars=t+=o.hostVars,o.hostAttrs=Jr(o.hostAttrs,n=Jr(n,o.hostAttrs))}}(r)}function vs(e){return e===xt?{}:e===te?[]:e}function KI(e,t){const n=e.viewQuery;e.viewQuery=n?(r,o)=>{t(r,o),n(r,o)}:t}function JI(e,t){const n=e.contentQueries;e.contentQueries=n?(r,o,i)=>{t(r,o,i),n(r,o,i)}:t}function XI(e,t){const n=e.hostBindings;e.hostBindings=n?(r,o)=>{t(r,o),n(r,o)}:t}function ys(e){return!!wc(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function wc(e){return null!==e&&("function"==typeof e||"object"==typeof e)}function Vt(e,t,n){return e[t]=n}function He(e,t,n){return!Object.is(e[t],n)&&(e[t]=n,!0)}function $n(e,t,n,r){const o=He(e,t,n);return He(e,t+1,r)||o}function It(e,t,n,r){const o=E();return He(o,sr(),t)&&(ee(),Lt(ve(),o,e,t,n,r)),It}function Nr(e,t,n,r){return He(e,sr(),n)?t+H(n)+r:$}function C(e,t,n,r,o,i,s,a){const l=E(),c=ee(),u=e+W,d=c.firstCreatePass?function M0(e,t,n,r,o,i,s,a,l){const c=t.consts,u=Ar(t,e,4,s||null,vn(c,a));mc(t,n,u,vn(c,l)),Ti(t,u);const d=u.tView=gc(2,u,r,o,i,t.directiveRegistry,t.pipeRegistry,null,t.schemas,c,null);return null!==t.queries&&(t.queries.template(t,u),d.queries=t.queries.embeddedTView(u)),u}(u,c,l,t,n,r,o,i,s):c.data[u];Pt(d,!1);const h=Tg(c,l,d,e);Ai()&&Zi(c,l,h,d),Ve(h,l),gs(l,l[u]=Xp(h,l,h,d)),Ei(d)&&hc(c,l,d),null!=s&&pc(l,d,a)}let Tg=function Ng(e,t,n,r){return yn(!0),t[B].createComment("")};function g(e,t,n){const r=E();return He(r,sr(),t)&&ct(ee(),ve(),r,e,t,r[B],n,!1),g}function Ac(e,t,n,r,o){const s=o?"class":"style";Cc(e,n,t.inputs[s],s,r)}function y(e,t,n,r){const o=E(),i=ee(),s=W+e,a=o[B],l=i.firstCreatePass?function x0(e,t,n,r,o,i){const s=t.consts,l=Ar(t,e,2,r,vn(s,o));return mc(t,n,l,vn(s,i)),null!==l.attrs&&ms(l,l.attrs,!1),null!==l.mergedAttrs&&ms(l,l.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,l),l}(s,i,o,t,n,r):i.data[s],c=xg(i,o,l,a,t,e);o[s]=c;const u=Ei(l);return Pt(l,!0),Wh(a,c,l),32!=(32&l.flags)&&Ai()&&Zi(i,o,c,l),0===function ow(){return k.lFrame.elementDepthCount}()&&Ve(c,o),function iw(){k.lFrame.elementDepthCount++}(),u&&(hc(i,o,l),fc(i,l,o)),null!==r&&pc(o,l),y}function v(){let e=Pe();Ka()?Ja():(e=e.parent,Pt(e,!1));const t=e;(function aw(e){return k.skipHydrationRootTNode===e})(t)&&function dw(){k.skipHydrationRootTNode=null}(),function sw(){k.lFrame.elementDepthCount--}();const n=ee();return n.firstCreatePass&&(Ti(n,e),$a(e)&&n.queries.elementEnd(e)),null!=t.classesWithoutHost&&function Iw(e){return 0!=(8&e.flags)}(t)&&Ac(n,t,E(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function Mw(e){return 0!=(16&e.flags)}(t)&&Ac(n,t,E(),t.stylesWithoutHost,!1),v}function N(e,t,n,r){return y(e,t,n,r),v(),N}let xg=(e,t,n,r,o,i)=>(yn(!0),Gi(r,o,function Qf(){return k.lFrame.currentNamespace}()));function Z(e,t,n){const r=E(),o=ee(),i=e+W,s=o.firstCreatePass?function F0(e,t,n,r,o){const i=t.consts,s=vn(i,r),a=Ar(t,e,8,"ng-container",s);return null!==s&&ms(a,s,!0),mc(t,n,a,vn(i,o)),null!==t.queries&&t.queries.elementStart(t,a),a}(i,o,r,t,n):o.data[i];Pt(s,!0);const a=Rg(o,r,s,e);return r[i]=a,Ai()&&Zi(o,r,a,s),Ve(a,r),Ei(s)&&(hc(o,r,s),fc(o,s,r)),null!=n&&pc(r,s),Z}function Q(){let e=Pe();const t=ee();return Ka()?Ja():(e=e.parent,Pt(e,!1)),t.firstCreatePass&&(Ti(t,e),$a(e)&&t.queries.elementEnd(e)),Q}let Rg=(e,t,n,r)=>(yn(!0),Il(t[B],""));function De(){return E()}function Es(e){return!!e&&"function"==typeof e.then}function Fg(e){return!!e&&"function"==typeof e.subscribe}function F(e,t,n,r){const o=E(),i=ee(),s=Pe();return function kg(e,t,n,r,o,i,s){const a=Ei(r),c=e.firstCreatePass&&function ng(e){return e.cleanup||(e.cleanup=[])}(e),u=t[be],d=function tg(e){return e[Jn]||(e[Jn]=[])}(t);let h=!0;if(3&r.type||s){const w=et(r,t),I=s?s(w):w,A=d.length,D=s?L=>s(fe(L[r.index])):r.index;let O=null;if(!s&&a&&(O=function L0(e,t,n,r){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,t,o,r.index)),null!==O)(O.__ngLastListenerFn__||O).__ngNextListenerFn__=i,O.__ngLastListenerFn__=i,h=!1;else{i=Vg(r,t,u,i,!1);const L=n.listen(I,o,i);d.push(i,L),c&&c.push(o,D,A,A+1)}}else i=Vg(r,t,u,i,!1);const p=r.outputs;let m;if(h&&null!==p&&(m=p[o])){const w=m.length;if(w)for(let I=0;I-1?at(e.index,t):t);let l=Lg(t,n,r,s),c=i.__ngNextListenerFn__;for(;c;)l=Lg(t,n,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function _(e=1){return function _w(e){return(k.lFrame.contextLView=function vw(e,t){for(;e>0;)t=t[er],e--;return t}(e,k.lFrame.contextLView))[be]}(e)}function bn(e,t,n){return Tc(e,"",t,"",n),bn}function Tc(e,t,n,r,o){const i=E(),s=Nr(i,t,n,r);return s!==$&&ct(ee(),ve(),i,e,s,i[B],o,!1),Tc}function Is(e,t){return e<<17|t<<2}function En(e){return e>>17&32767}function Nc(e){return 2|e}function Un(e){return(131068&e)>>2}function xc(e,t){return-131069&e|t<<2}function Oc(e){return 1|e}function Wg(e,t,n,r,o){const i=e[n+1],s=null===t;let a=r?En(i):Un(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];q0(e[a],t)&&(l=!0,e[a+1]=r?Oc(u):Nc(u)),a=r?En(u):Un(u)}l&&(e[n+1]=r?Nc(i):Oc(i))}function q0(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&pr(e,t)>=0}const Ne={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Zg(e){return e.substring(Ne.key,Ne.keyEnd)}function Qg(e,t){const n=Ne.textEnd;return n===t?-1:(t=Ne.keyEnd=function Y0(e,t,n){for(;t32;)t++;return t}(e,Ne.key=t,n),Vr(e,t,n))}function Vr(e,t,n){for(;t=0;n=Qg(t,n))lt(e,Zg(t),!0)}function tm(e,t){return t>=e.expandoStartIndex}function nm(e,t,n,r){const o=e.data;if(null===o[n+1]){const i=o[Ge()],s=tm(e,n);sm(i,r)&&null===t&&!s&&(t=!1),t=function t1(e,t,n,r){const o=function el(e){const t=k.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}(e);let i=r?t.residualClasses:t.residualStyles;if(null===o)0===(r?t.classBindings:t.styleBindings)&&(n=Po(n=Rc(null,e,t,n,r),t.attrs,r),i=null);else{const s=t.directiveStylingLast;if(-1===s||e[s]!==o)if(n=Rc(o,e,t,n,r),null===i){let l=function n1(e,t,n){const r=n?t.classBindings:t.styleBindings;if(0!==Un(r))return e[En(r)]}(e,t,r);void 0!==l&&Array.isArray(l)&&(l=Rc(null,e,t,l[1],r),l=Po(l,t.attrs,r),function r1(e,t,n,r){e[En(n?t.classBindings:t.styleBindings)]=r}(e,t,r,l))}else i=function o1(e,t,n){let r;const o=t.directiveEnd;for(let i=1+t.directiveStylingLast;i0)&&(c=!0)):u=n,o)if(0!==l){const h=En(e[a+1]);e[r+1]=Is(h,a),0!==h&&(e[h+1]=xc(e[h+1],r)),e[a+1]=function $0(e,t){return 131071&e|t<<17}(e[a+1],r)}else e[r+1]=Is(a,0),0!==a&&(e[a+1]=xc(e[a+1],r)),a=r;else e[r+1]=Is(l,0),0===a?a=r:e[l+1]=xc(e[l+1],r),l=r;c&&(e[r+1]=Nc(e[r+1])),Wg(e,u,r,!0),Wg(e,u,r,!1),function G0(e,t,n,r,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof t&&pr(i,t)>=0&&(n[r+1]=Oc(n[r+1]))}(t,u,e,r,i),s=Is(a,l),i?t.classBindings=s:t.styleBindings=s}(o,i,t,n,s,r)}}function Rc(e,t,n,r,o){let i=null;const s=n.directiveEnd;let a=n.directiveStylingLast;for(-1===a?a=n.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let h=n[o+1];h===$&&(h=d?te:void 0);let p=d?hl(h,r):u===r?h:void 0;if(c&&!Ss(p)&&(p=hl(l,r)),Ss(p)&&(a=p,s))return a;const m=e[o+1];o=s?En(m):Un(m)}if(null!==t){let l=i?t.residualClasses:t.residualStyles;null!=l&&(a=hl(l,r))}return a}function Ss(e){return void 0!==e}function sm(e,t){return 0!=(e.flags&(t?8:16))}function b(e,t=""){const n=E(),r=ee(),o=e+W,i=r.firstCreatePass?Ar(r,o,1,t,null):r.data[o],s=am(r,n,i,t,e);n[o]=s,Ai()&&Zi(r,n,s,i),Pt(i,!1)}let am=(e,t,n,r,o)=>(yn(!0),function zi(e,t){return e.createText(t)}(t[B],r));function x(e){return z("",e,""),x}function z(e,t,n){const r=E(),o=Nr(r,e,t,n);return o!==$&&function rn(e,t,n){const r=Si(t,e);!function Fh(e,t,n){e.setValue(t,n)}(e[B],r,n)}(r,Ge(),o),z}function jt(e,t,n){!function St(e,t,n,r){const o=ee(),i=Jt(2);o.firstUpdatePass&&nm(o,null,i,r);const s=E();if(n!==$&&He(s,i,n)){const a=o.data[Ge()];if(sm(a,r)&&!tm(o,i)){let l=r?a.classesWithoutHost:a.stylesWithoutHost;null!==l&&(n=Ma(l,n||"")),Ac(o,a,s,n,r)}else!function a1(e,t,n,r,o,i,s,a){o===$&&(o=te);let l=0,c=0,u=0>20;if(Bn(e)||!e.multi){const p=new co(c,o,M),m=Vc(l,t,o?u:u+h,d);-1===m?(cl(Ri(a,s),i,l),Lc(i,e,t.length),t.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),n.push(p),s.push(p)):(n[m]=p,s[m]=p)}else{const p=Vc(l,t,u+h,d),m=Vc(l,t,u,u+h),I=m>=0&&n[m];if(o&&!I||!o&&!(p>=0&&n[p])){cl(Ri(a,s),i,l);const A=function AM(e,t,n,r,o){const i=new co(e,n,M);return i.multi=[],i.index=t,i.componentProviders=0,e_(i,o,r&&!n),i}(o?SM:MM,n.length,o,r,c);!o&&I&&(n[m].providerFactory=A),Lc(i,e,t.length,0),t.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),n.push(A),s.push(A)}else Lc(i,e,p>-1?p:m,e_(n[o?m:p],c,!o&&r));!o&&r&&I&&n[m].componentProviders++}}}function Lc(e,t,n,r){const o=Bn(t),i=function pE(e){return!!e.useClass}(t);if(o||i){const l=(i?V(t.useClass):t).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&t.multi){const u=c.indexOf(n);-1===u?c.push(n,[r,l]):c[u+1].push(r,l)}else c.push(n,l)}}}function e_(e,t,n){return n&&e.componentProviders++,e.multi.push(t)-1}function Vc(e,t,n,r){for(let o=n;o{n.providersResolver=(r,o)=>function IM(e,t,n){const r=ee();if(r.firstCreatePass){const o=wt(e);kc(n,r.data,r.blueprint,o,!0),kc(t,r.data,r.blueprint,o,!1)}}(r,o?o(e):e,t)}}class Gn{}class TM{}class Bc extends Gn{constructor(t,n,r){super(),this._parent=n,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new dg(this);const o=function st(e,t){const n=e[Wd]||null;if(!n&&!0===t)throw new Error(`Type ${Ae(e)} does not have '\u0275mod' property.`);return n}(t);this._bootstrapComponents=function nn(e){return e instanceof Function?e():e}(o.bootstrap),this._r3Injector=Ip(t,n,[{provide:Gn,useValue:this},{provide:us,useValue:this.componentFactoryResolver},...r],Ae(t),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(t)}get injector(){return this._r3Injector}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(n=>n()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class jc extends TM{constructor(t){super(),this.moduleType=t}create(t){return new Bc(this.moduleType,t,[])}}function Os(e,t,n,r){return function l_(e,t,n,r,o,i){const s=t+n;return He(e,s,o)?Vt(e,s+1,i?r.call(i,o):r(o)):jo(e,s+1)}(E(),ze(),e,t,n,r)}function Uc(e,t,n,r,o){return function c_(e,t,n,r,o,i,s){const a=t+n;return $n(e,a,o,i)?Vt(e,a+2,s?r.call(s,o,i):r(o,i)):jo(e,a+2)}(E(),ze(),e,t,n,r,o)}function xe(e,t,n,r,o,i){return u_(E(),ze(),e,t,n,r,o,i)}function jo(e,t){const n=e[t];return n===$?void 0:n}function u_(e,t,n,r,o,i,s,a){const l=t+n;return function Cs(e,t,n,r,o){const i=$n(e,t,n,r);return He(e,t+2,o)||i}(e,l,o,i,s)?Vt(e,l+3,a?r.call(a,o,i,s):r(o,i,s)):jo(e,l+3)}function p_(e,t,n,r,o){const i=e+W,s=E(),a=function or(e,t){return e[t]}(s,i);return function $o(e,t){return e[T].data[t].pure}(s,i)?u_(s,ze(),t,a.transform,n,r,o,a):a.transform(n,r,o)}function rS(e,t,n,r=!0){const o=t[T];if(function Tb(e,t,n,r){const o=Re+r,i=n.length;r>0&&(n[o-1][Dt]=t),r{class t{}return t.__NG_ELEMENT_ID__=sS,t})();const oS=on,iS=class extends oS{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){const o=function nS(e,t,n,r){const o=t.tView,a=ps(e,o,n,4096&e[U]?4096:16,null,t,null,null,null,r?.injector??null,r?.hydrationInfo??null);a[no]=e[t.index];const c=e[Ot];return null!==c&&(a[Ot]=c.createEmbeddedView(o)),Dc(o,a,n),a}(this._declarationLView,this._declarationTContainer,t,{injector:n,hydrationInfo:r});return new To(o)}};function sS(){return function Rs(e,t){return 4&e.type?new iS(t,e,Ir(e,t)):null}(Pe(),E())}let $t=(()=>{class t{}return t.__NG_ELEMENT_ID__=fS,t})();function fS(){return function D_(e,t){let n;const r=t[e.index];return Ue(r)?n=r:(n=Xp(r,t,null,e),t[e.index]=n,gs(t,n)),w_(n,t,e,r),new y_(n,e,t)}(Pe(),E())}const hS=$t,y_=class extends hS{constructor(t,n,r){super(),this._lContainer=t,this._hostTNode=n,this._hostLView=r}get element(){return Ir(this._hostTNode,this._hostLView)}get injector(){return new qe(this._hostTNode,this._hostLView)}get parentInjector(){const t=Fi(this._hostTNode,this._hostLView);if(sl(t)){const n=fo(t,this._hostLView),r=uo(t);return new qe(n[T].data[r+8],n)}return new qe(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const n=C_(this._lContainer);return null!==n&&n[t]||null}get length(){return this._lContainer.length-Re}createEmbeddedView(t,n,r){let o,i;"number"==typeof r?o=r:null!=r&&(o=r.index,i=r.injector);const a=t.createEmbeddedViewImpl(n||{},i,null);return this.insertImpl(a,o,false),a}createComponent(t,n,r,o,i){const s=t&&!function po(e){return"function"==typeof e}(t);let a;if(s)a=n;else{const w=n||{};a=w.index,r=w.injector,o=w.projectableNodes,i=w.environmentInjector||w.ngModuleRef}const l=s?t:new No(X(t)),c=r||this.parentInjector;if(!i&&null==l.ngModule){const I=(s?c:this.parentInjector).get(en,null);I&&(i=I)}X(l.componentType??{});const p=l.create(c,o,null,i);return this.insertImpl(p.hostView,a,false),p}insert(t,n){return this.insertImpl(t,n,!1)}insertImpl(t,n,r){const o=t._lView;if(function tw(e){return Ue(e[ge])}(o)){const l=this.indexOf(t);if(-1!==l)this.detach(l);else{const c=o[ge],u=new y_(c,c[ke],c[ge]);u.detach(u.indexOf(t))}}const s=this._adjustIndex(n),a=this._lContainer;return rS(a,o,s,!r),t.attachToViewContainerRef(),uh(Gc(a),s,t),t}move(t,n){return this.insert(t,n)}indexOf(t){const n=C_(this._lContainer);return null!==n?n.indexOf(t):-1}remove(t){const n=this._adjustIndex(t,-1),r=qi(this._lContainer,n);r&&(ki(Gc(this._lContainer),n),Ml(r[T],r))}detach(t){const n=this._adjustIndex(t,-1),r=qi(this._lContainer,n);return r&&null!=ki(Gc(this._lContainer),n)?new To(r):null}_adjustIndex(t,n=0){return t??this.length+n}};function C_(e){return e[8]}function Gc(e){return e[8]||(e[8]=[])}let w_=function b_(e,t,n,r){if(e[Rt])return;let o;o=8&n.type?fe(r):function pS(e,t){const n=e[B],r=n.createComment(""),o=et(t,e);return Hn(n,Wi(n,o),r,function Fb(e,t){return e.nextSibling(t)}(n,o),!1),r}(t,n),e[Rt]=o};const ZS=new R("Application Initializer");let tu=(()=>{var e;class t{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((r,o)=>{this.resolve=r,this.reject=o}),this.appInits=le(ZS,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const r=[];for(const i of this.appInits){const s=i();if(Es(s))r.push(s);else if(Fg(s)){const a=new Promise((l,c)=>{s.subscribe({complete:l,error:c})});r.push(a)}}const o=()=>{this.done=!0,this.resolve()};Promise.all(r).then(()=>{o()}).catch(i=>{this.reject(i)}),0===r.length&&o(),this.initialized=!0}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const sn=new R("LocaleId",{providedIn:"root",factory:()=>le(sn,K.Optional|K.SkipSelf)||function YS(){return typeof $localize<"u"&&$localize.locale||Br}()});let XS=(()=>{var e;class t{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new ZC(!1)}add(){this.hasPendingTasks.next(!0);const r=this.taskId++;return this.pendingTasks.add(r),r}remove(r){this.pendingTasks.delete(r),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const Q_=new R(""),Ls=new R("");let su,ou=(()=>{var e;class t{constructor(r,o,i){this._ngZone=r,this.registry=o,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,su||(function CA(e){su=e}(i),i.addToWindow(o)),this._watchAngularEvents(),r.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{Ce.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let r=this._callbacks.pop();clearTimeout(r.timeoutId),r.doneCb(this._didWork)}this._didWork=!1});else{let r=this.getPendingTasks();this._callbacks=this._callbacks.filter(o=>!o.updateCb||!o.updateCb(r)||(clearTimeout(o.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(r=>({source:r.source,creationLocation:r.creationLocation,data:r.data})):[]}addCallback(r,o,i){let s=-1;o&&o>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(a=>a.timeoutId!==s),r(this._didWork,this.getPendingTasks())},o)),this._callbacks.push({doneCb:r,timeoutId:s,updateCb:i})}whenStable(r,o,i){if(i&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(r,o,i),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(r){this.registry.registerApplication(r,this)}unregisterApplication(r){this.registry.unregisterApplication(r)}findProviders(r,o,i){return[]}}return(e=t).\u0275fac=function(r){return new(r||e)(J(Ce),J(iu),J(Ls))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),t})(),iu=(()=>{var e;class t{constructor(){this._applications=new Map}registerApplication(r,o){this._applications.set(r,o)}unregisterApplication(r){this._applications.delete(r)}unregisterAllApplications(){this._applications.clear()}getTestability(r){return this._applications.get(r)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(r,o=!0){return su?.findTestabilityInTree(this,r,o)??null}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac,providedIn:"platform"}),t})(),In=null;const Y_=new R("AllowMultipleToken"),au=new R("PlatformDestroyListeners"),K_=new R("appBootstrapListener");function ev(e,t,n=[]){const r=`Platform: ${t}`,o=new R(r);return(i=[])=>{let s=lu();if(!s||s.injector.get(Y_,!1)){const a=[...n,...i,{provide:o,useValue:!0}];e?e(a):function bA(e){if(In&&!In.get(Y_,!1))throw new S(400,!1);(function J_(){!function BD(e){Df=e}(()=>{throw new S(600,!1)})})(),In=e;const t=e.get(nv);(function X_(e){e.get(hp,null)?.forEach(n=>n())})(e)}(function tv(e=[],t){return Et.create({name:t,providers:[{provide:$l,useValue:"platform"},{provide:au,useValue:new Set([()=>In=null])},...e]})}(a,r))}return function IA(e){const t=lu();if(!t)throw new S(401,!1);return t}()}}function lu(){return In?.get(nv)??null}let nv=(()=>{var e;class t{constructor(r){this._injector=r,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(r,o){const i=function MA(e="zone.js",t){return"noop"===e?new YE:"zone.js"===e?new Ce(t):e}(o?.ngZone,function rv(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}({eventCoalescing:o?.ngZoneEventCoalescing,runCoalescing:o?.ngZoneRunCoalescing}));return i.run(()=>{const s=function xM(e,t,n){return new Bc(e,t,n)}(r.moduleType,this.injector,function lv(e){return[{provide:Ce,useFactory:e},{provide:Xi,multi:!0,useFactory:()=>{const t=le(AA,{optional:!0});return()=>t.initialize()}},{provide:av,useFactory:SA},{provide:Np,useFactory:xp}]}(()=>i)),a=s.injector.get(tn,null);return i.runOutsideAngular(()=>{const l=i.onError.subscribe({next:c=>{a.handleError(c)}});s.onDestroy(()=>{Vs(this._modules,s),l.unsubscribe()})}),function ov(e,t,n){try{const r=n();return Es(r)?r.catch(o=>{throw t.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw t.runOutsideAngular(()=>e.handleError(r)),r}}(a,i,()=>{const l=s.injector.get(tu);return l.runInitializers(),l.donePromise.then(()=>(function Nm(e){ft(e,"Expected localeId to be defined"),"string"==typeof e&&(Tm=e.toLowerCase().replace(/_/g,"-"))}(s.injector.get(sn,Br)||Br),this._moduleDoBootstrap(s),s))})})}bootstrapModule(r,o=[]){const i=iv({},o);return function DA(e,t,n){const r=new jc(n);return Promise.resolve(r)}(0,0,r).then(s=>this.bootstrapModuleFactory(s,i))}_moduleDoBootstrap(r){const o=r.injector.get(Go);if(r._bootstrapComponents.length>0)r._bootstrapComponents.forEach(i=>o.bootstrap(i));else{if(!r.instance.ngDoBootstrap)throw new S(-403,!1);r.instance.ngDoBootstrap(o)}this._modules.push(r)}onDestroy(r){this._destroyListeners.push(r)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new S(404,!1);this._modules.slice().forEach(o=>o.destroy()),this._destroyListeners.forEach(o=>o());const r=this._injector.get(au,null);r&&(r.forEach(o=>o()),r.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}}return(e=t).\u0275fac=function(r){return new(r||e)(J(Et))},e.\u0275prov=se({token:e,factory:e.\u0275fac,providedIn:"platform"}),t})();function iv(e,t){return Array.isArray(t)?t.reduce(iv,e):{...e,...t}}let Go=(()=>{var e;class t{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=le(av),this.zoneIsStable=le(Np),this.componentTypes=[],this.components=[],this.isStable=le(XS).hasPendingTasks.pipe(function KC(e,t){return un((n,r)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&r.complete();n.subscribe(new zt(r,l=>{o?.unsubscribe();let c=0;const u=i++;dn(e(l,u)).subscribe(o=new zt(r,d=>r.next(t?t(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}(r=>r?function QC(...e){return fi(e,Fd(e))}(!1):this.zoneIsStable),function JC(e,t=Ca){return e=e??XC,un((n,r)=>{let o,i=!0;n.subscribe(new zt(r,s=>{const a=t(s);(i||!e(o,a))&&(i=!1,o=a,r.next(s))}))})}(),Vd()),this._injector=le(en)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(r,o){const i=r instanceof vp;if(!this._injector.get(tu).done)throw!i&&function Xr(e){const t=X(e)||Oe(e)||$e(e);return null!==t&&t.standalone}(r),new S(405,!1);let a;a=i?r:this._injector.get(us).resolveComponentFactory(r),this.componentTypes.push(a.componentType);const l=function wA(e){return e.isBoundToModule}(a)?void 0:this._injector.get(Gn),u=a.create(Et.NULL,[],o||a.selector,l),d=u.location.nativeElement,h=u.injector.get(Q_,null);return h?.registerApplication(d),u.onDestroy(()=>{this.detachView(u.hostView),Vs(this.components,u),h?.unregisterApplication(d)}),this._loadComponent(u),u}tick(){if(this._runningTick)throw new S(101,!1);try{this._runningTick=!0;for(let r of this._views)r.detectChanges()}catch(r){this.internalErrorHandler(r)}finally{this._runningTick=!1}}attachView(r){const o=r;this._views.push(o),o.attachToAppRef(this)}detachView(r){const o=r;Vs(this._views,o),o.detachFromAppRef()}_loadComponent(r){this.attachView(r.hostView),this.tick(),this.components.push(r);const o=this._injector.get(K_,[]);o.push(...this._bootstrapListeners),o.forEach(i=>i(r))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(r=>r()),this._views.slice().forEach(r=>r.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(r){return this._destroyListeners.push(r),()=>Vs(this._destroyListeners,r)}destroy(){if(this._destroyed)throw new S(406,!1);const r=this._injector;r.destroy&&!r.destroyed&&r.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function Vs(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}const av=new R("",{providedIn:"root",factory:()=>le(tn).handleError.bind(void 0)});function SA(){const e=le(Ce),t=le(tn);return n=>e.runOutsideAngular(()=>t.handleError(n))}let AA=(()=>{var e;class t{constructor(){this.zone=le(Ce),this.applicationRef=le(Go)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();let uv=(()=>{class t{}return t.__NG_ELEMENT_ID__=NA,t})();function NA(e){return function xA(e,t,n){if(Pn(e)&&!n){const r=at(e.index,t);return new To(r,r)}return 47&e.type?new To(t[Ee],t):null}(Pe(),E(),16==(16&e))}class hv{constructor(){}supports(t){return ys(t)}create(t){return new LA(t)}}const kA=(e,t)=>t;class LA{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||kA}forEachItem(t){let n;for(n=this._itHead;null!==n;n=n._next)t(n)}forEachOperation(t){let n=this._itHead,r=this._removalsHead,o=0,i=null;for(;n||r;){const s=!r||n&&n.currentIndex{s=this._trackByFn(o,a),null!==n&&Object.is(n.trackById,s)?(r&&(n=this._verifyReinsertion(n,a,s,o)),Object.is(n.item,a)||this._addIdentityChange(n,a)):(n=this._mismatch(n,a,s,o),r=!0),n=n._next,o++}),this.length=o;return this._truncate(n),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;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 null===t?i=this._itTail:(i=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null))?(Object.is(t.item,n)||this._addIdentityChange(t,n),this._reinsertAfter(t,i,o)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(r,o))?(Object.is(t.item,n)||this._addIdentityChange(t,n),this._moveAfter(t,i,o)):t=this._addAfter(new VA(n,r),i,o),t}_verifyReinsertion(t,n,r,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null);return null!==i?t=this._reinsertAfter(i,t._prev,o):t.currentIndex!=o&&(t.currentIndex=o,this._addToMoves(t,o)),t}_truncate(t){for(;null!==t;){const n=t._next;this._addToRemovals(this._unlink(t)),t=n}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,n,r){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const o=t._prevRemoved,i=t._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?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._nextAdded=t,t}_insertAfter(t,n,r){const o=null===n?this._itHead:n._next;return t._next=o,t._prev=n,null===o?this._itTail=t:o._prev=t,null===n?this._itHead=t:n._next=t,null===this._linkedRecords&&(this._linkedRecords=new pv),this._linkedRecords.put(t),t.currentIndex=r,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const n=t._prev,r=t._next;return null===n?this._itHead=r:n._next=r,null===r?this._itTail=n:r._prev=n,t}_addToMoves(t,n){return t.previousIndex===n||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new pv),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(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._nextIdentityChange=t,t}}class VA{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}}class HA{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(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;null!==r;r=r._nextDup)if((null===n||n<=r.currentIndex)&&Object.is(r.trackById,t))return r;return null}remove(t){const n=t._prevDup,r=t._nextDup;return null===n?this._head=r:n._nextDup=r,null===r?this._tail=n:r._prevDup=n,null===this._head}}class pv{constructor(){this.map=new Map}put(t){const n=t.trackById;let r=this.map.get(n);r||(r=new HA,this.map.set(n,r)),r.add(t)}get(t,n){const o=this.map.get(t);return o?o.get(t,n):null}remove(t){const n=t.trackById;return this.map.get(n).remove(t)&&this.map.delete(n),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function gv(e,t,n){const r=e.previousIndex;if(null===r)return r;let o=0;return n&&r{if(n&&n.key===o)this._maybeAddToChanges(n,r),this._appendAfter=n,n=n._next;else{const i=this._getOrCreateRecordForKey(o,r);n=this._insertBeforeOrAppend(n,i)}}),n){n._prev&&(n._prev._next=null),this._removalsHead=n;for(let r=n;null!==r;r=r._nextRemoved)r===this._mapHead&&(this._mapHead=null),this._records.delete(r.key),r._nextRemoved=r._next,r.previousValue=r.currentValue,r.currentValue=null,r._prev=null,r._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,n){if(t){const r=t._prev;return n._next=t,n._prev=r,t._prev=n,r&&(r._next=n),t===this._mapHead&&(this._mapHead=n),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=n,n._prev=this._appendAfter):this._mapHead=n,this._appendAfter=n,null}_getOrCreateRecordForKey(t,n){if(this._records.has(t)){const o=this._records.get(t);this._maybeAddToChanges(o,n);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const r=new jA(t);return this._records.set(t,r),r.currentValue=n,this._addToAdditions(r),r}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,n){Object.is(n,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=n,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,n){t instanceof Map?t.forEach(n):Object.keys(t).forEach(r=>n(t[r],r))}}class jA{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function _v(){return new js([new hv])}let js=(()=>{var e;class t{constructor(r){this.factories=r}static create(r,o){if(null!=o){const i=o.factories.slice();r=r.concat(i)}return new t(r)}static extend(r){return{provide:t,useFactory:o=>t.create(r,o||_v()),deps:[[t,new ml,new gl]]}}find(r){const o=this.factories.find(i=>i.supports(r));if(null!=o)return o;throw new S(901,!1)}}return(e=t).\u0275prov=se({token:e,providedIn:"root",factory:_v}),t})();function vv(){return new qo([new mv])}let qo=(()=>{var e;class t{constructor(r){this.factories=r}static create(r,o){if(o){const i=o.factories.slice();r=r.concat(i)}return new t(r)}static extend(r){return{provide:t,useFactory:o=>t.create(r,o||vv()),deps:[[t,new ml,new gl]]}}find(r){const o=this.factories.find(i=>i.supports(r));if(o)return o;throw new S(901,!1)}}return(e=t).\u0275prov=se({token:e,providedIn:"root",factory:vv}),t})();const zA=ev(null,"core",[]);let GA=(()=>{var e;class t{constructor(r){}}return(e=t).\u0275fac=function(r){return new(r||e)(J(Go))},e.\u0275mod=pn({type:e}),e.\u0275inj=Gt({}),t})();let gu=null;function Wo(){return gu}class oT{}const Wn=new R("DocumentToken"),Iu=/\s+/,Pv=[];let Yo=(()=>{var e;class t{constructor(r,o,i,s){this._iterableDiffers=r,this._keyValueDiffers=o,this._ngEl=i,this._renderer=s,this.initialClasses=Pv,this.stateMap=new Map}set klass(r){this.initialClasses=null!=r?r.trim().split(Iu):Pv}set ngClass(r){this.rawClass="string"==typeof r?r.trim().split(Iu):r}ngDoCheck(){for(const o of this.initialClasses)this._updateState(o,!0);const r=this.rawClass;if(Array.isArray(r)||r instanceof Set)for(const o of r)this._updateState(o,!0);else if(null!=r)for(const o of Object.keys(r))this._updateState(o,!!r[o]);this._applyStateDiff()}_updateState(r,o){const i=this.stateMap.get(r);void 0!==i?(i.enabled!==o&&(i.changed=!0,i.enabled=o),i.touched=!0):this.stateMap.set(r,{enabled:o,changed:!0,touched:!0})}_applyStateDiff(){for(const r of this.stateMap){const o=r[0],i=r[1];i.changed?(this._toggleClass(o,i.enabled),i.changed=!1):i.touched||(i.enabled&&this._toggleClass(o,!1),this.stateMap.delete(o)),i.touched=!1}}_toggleClass(r,o){(r=r.trim()).length>0&&r.split(Iu).forEach(i=>{o?this._renderer.addClass(this._ngEl.nativeElement,i):this._renderer.removeClass(this._ngEl.nativeElement,i)})}}return(e=t).\u0275fac=function(r){return new(r||e)(M(js),M(qo),M(bt),M(jn))},e.\u0275dir=j({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0}),t})();class qT{constructor(t,n,r,o){this.$implicit=t,this.ngForOf=n,this.index=r,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let zr=(()=>{var e;class t{set ngForOf(r){this._ngForOf=r,this._ngForOfDirty=!0}set ngForTrackBy(r){this._trackByFn=r}get ngForTrackBy(){return this._trackByFn}constructor(r,o,i){this._viewContainer=r,this._template=o,this._differs=i,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(r){r&&(this._template=r)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const r=this._ngForOf;!this._differ&&r&&(this._differ=this._differs.find(r).create(this.ngForTrackBy))}if(this._differ){const r=this._differ.diff(this._ngForOf);r&&this._applyChanges(r)}}_applyChanges(r){const o=this._viewContainer;r.forEachOperation((i,s,a)=>{if(null==i.previousIndex)o.createEmbeddedView(this._template,new qT(i.item,this._ngForOf,-1,-1),null===a?void 0:a);else if(null==a)o.remove(null===s?void 0:s);else if(null!==s){const l=o.get(s);o.move(l,a),Lv(l,i)}});for(let i=0,s=o.length;i{Lv(o.get(i.currentIndex),i)})}static ngTemplateContextGuard(r,o){return!0}}return(e=t).\u0275fac=function(r){return new(r||e)(M($t),M(on),M(js))},e.\u0275dir=j({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0}),t})();function Lv(e,t){e.context.$implicit=t.item}let Zn=(()=>{var e;class t{constructor(r,o){this._viewContainer=r,this._context=new WT,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=o}set ngIf(r){this._context.$implicit=this._context.ngIf=r,this._updateView()}set ngIfThen(r){Vv("ngIfThen",r),this._thenTemplateRef=r,this._thenViewRef=null,this._updateView()}set ngIfElse(r){Vv("ngIfElse",r),this._elseTemplateRef=r,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(r,o){return!0}}return(e=t).\u0275fac=function(r){return new(r||e)(M($t),M(on))},e.\u0275dir=j({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0}),t})();class WT{constructor(){this.$implicit=null,this.ngIf=null}}function Vv(e,t){if(t&&!t.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${Ae(t)}'.`)}let jv=(()=>{var e;class t{transform(r,o,i){if(null==r)return null;if(!this.supports(r))throw function Tt(e,t){return new S(2100,!1)}();return r.slice(o,i)}supports(r){return"string"==typeof r||Array.isArray(r)}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275pipe=Je({name:"slice",type:e,pure:!1,standalone:!0}),t})(),vN=(()=>{var e;class t{}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275mod=pn({type:e}),e.\u0275inj=Gt({}),t})();function Uv(e){return"server"===e}class qN extends oT{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class Ou extends qN{static makeCurrent(){!function rT(e){gu||(gu=e)}(new Ou)}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()).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"window"===n?window:"document"===n?t:"body"===n?t.body:null}getBaseHref(t){const n=function WN(){return Jo=Jo||document.querySelector("base"),Jo?Jo.getAttribute("href"):null}();return null==n?null:function ZN(e){ta=ta||document.createElement("a"),ta.setAttribute("href",e);const t=ta.pathname;return"/"===t.charAt(0)?t:`/${t}`}(n)}resetBaseElement(){Jo=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return function zT(e,t){t=encodeURIComponent(t);for(const n of e.split(";")){const r=n.indexOf("="),[o,i]=-1==r?[n,""]:[n.slice(0,r),n.slice(r+1)];if(o.trim()===t)return decodeURIComponent(i)}return null}(document.cookie,t)}}let ta,Jo=null,YN=(()=>{var e;class t{build(){return new XMLHttpRequest}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac}),t})();const Ru=new R("EventManagerPlugins");let Zv=(()=>{var e;class t{constructor(r,o){this._zone=o,this._eventNameToPlugin=new Map,r.forEach(i=>{i.manager=this}),this._plugins=r.slice().reverse()}addEventListener(r,o,i){return this._findPluginFor(o).addEventListener(r,o,i)}getZone(){return this._zone}_findPluginFor(r){let o=this._eventNameToPlugin.get(r);if(o)return o;if(o=this._plugins.find(s=>s.supports(r)),!o)throw new S(5101,!1);return this._eventNameToPlugin.set(r,o),o}}return(e=t).\u0275fac=function(r){return new(r||e)(J(Ru),J(Ce))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),t})();class Qv{constructor(t){this._doc=t}}const Fu="ng-app-id";let Yv=(()=>{var e;class t{constructor(r,o,i,s={}){this.doc=r,this.appId=o,this.nonce=i,this.platformId=s,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Uv(s),this.resetHostNodes()}addStyles(r){for(const o of r)1===this.changeUsageCount(o,1)&&this.onStyleAdded(o)}removeStyles(r){for(const o of r)this.changeUsageCount(o,-1)<=0&&this.onStyleRemoved(o)}ngOnDestroy(){const r=this.styleNodesInDOM;r&&(r.forEach(o=>o.remove()),r.clear());for(const o of this.getAllStyles())this.onStyleRemoved(o);this.resetHostNodes()}addHost(r){this.hostNodes.add(r);for(const o of this.getAllStyles())this.addStyleToHost(r,o)}removeHost(r){this.hostNodes.delete(r)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(r){for(const o of this.hostNodes)this.addStyleToHost(o,r)}onStyleRemoved(r){const o=this.styleRef;o.get(r)?.elements?.forEach(i=>i.remove()),o.delete(r)}collectServerRenderedStyles(){const r=this.doc.head?.querySelectorAll(`style[${Fu}="${this.appId}"]`);if(r?.length){const o=new Map;return r.forEach(i=>{null!=i.textContent&&o.set(i.textContent,i)}),o}return null}changeUsageCount(r,o){const i=this.styleRef;if(i.has(r)){const s=i.get(r);return s.usage+=o,s.usage}return i.set(r,{usage:o,elements:[]}),o}getStyleElement(r,o){const i=this.styleNodesInDOM,s=i?.get(o);if(s?.parentNode===r)return i.delete(o),s.removeAttribute(Fu),s;{const a=this.doc.createElement("style");return this.nonce&&a.setAttribute("nonce",this.nonce),a.textContent=o,this.platformIsServer&&a.setAttribute(Fu,this.appId),a}}addStyleToHost(r,o){const i=this.getStyleElement(r,o);r.appendChild(i);const s=this.styleRef,a=s.get(o)?.elements;a?a.push(i):s.set(o,{elements:[i],usage:1})}resetHostNodes(){const r=this.hostNodes;r.clear(),r.add(this.doc.head)}}return(e=t).\u0275fac=function(r){return new(r||e)(J(Wn),J(os),J(pp,8),J(wr))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),t})();const Pu={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/"},ku=/%COMP%/g,ex=new R("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!1});function Jv(e,t){return t.map(n=>n.replace(ku,e))}let Xv=(()=>{var e;class t{constructor(r,o,i,s,a,l,c,u=null){this.eventManager=r,this.sharedStylesHost=o,this.appId=i,this.removeStylesOnCompDestroy=s,this.doc=a,this.platformId=l,this.ngZone=c,this.nonce=u,this.rendererByCompId=new Map,this.platformIsServer=Uv(l),this.defaultRenderer=new Lu(r,a,c,this.platformIsServer)}createRenderer(r,o){if(!r||!o)return this.defaultRenderer;this.platformIsServer&&o.encapsulation===yt.ShadowDom&&(o={...o,encapsulation:yt.Emulated});const i=this.getOrCreateRenderer(r,o);return i instanceof ty?i.applyToHost(r):i instanceof Vu&&i.applyStyles(),i}getOrCreateRenderer(r,o){const i=this.rendererByCompId;let s=i.get(o.id);if(!s){const a=this.doc,l=this.ngZone,c=this.eventManager,u=this.sharedStylesHost,d=this.removeStylesOnCompDestroy,h=this.platformIsServer;switch(o.encapsulation){case yt.Emulated:s=new ty(c,u,o,this.appId,d,a,l,h);break;case yt.ShadowDom:return new ox(c,u,r,o,a,l,this.nonce,h);default:s=new Vu(c,u,o,d,a,l,h)}i.set(o.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}}return(e=t).\u0275fac=function(r){return new(r||e)(J(Zv),J(Yv),J(os),J(ex),J(Wn),J(wr),J(Ce),J(pp))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),t})();class Lu{constructor(t,n,r,o){this.eventManager=t,this.doc=n,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(t,n){return n?this.doc.createElementNS(Pu[n]||n,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,n){(ey(t)?t.content:t).appendChild(n)}insertBefore(t,n,r){t&&(ey(t)?t.content:t).insertBefore(n,r)}removeChild(t,n){t&&t.removeChild(n)}selectRootElement(t,n){let r="string"==typeof t?this.doc.querySelector(t):t;if(!r)throw new S(-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;const i=Pu[o];i?t.setAttributeNS(i,n,r):t.setAttribute(n,r)}else t.setAttribute(n,r)}removeAttribute(t,n,r){if(r){const o=Pu[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&(Cn.DashCase|Cn.Important)?t.style.setProperty(n,r,o&Cn.Important?"important":""):t.style[n]=r}removeStyle(t,n,r){r&Cn.DashCase?t.style.removeProperty(n):t.style[n]=""}setProperty(t,n,r){t[n]=r}setValue(t,n){t.nodeValue=n}listen(t,n,r){if("string"==typeof t&&!(t=Wo().getGlobalEventTarget(this.doc,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("__ngUnwrap__"===n)return t;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>t(n)):t(n))&&n.preventDefault()}}}function ey(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class ox extends Lu{constructor(t,n,r,o,i,s,a,l){super(t,i,s,l),this.sharedStylesHost=n,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=Jv(o.id,o.styles);for(const u of c){const 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)}}class Vu extends Lu{constructor(t,n,r,o,i,s,a,l){super(t,i,s,a),this.sharedStylesHost=n,this.removeStylesOnCompDestroy=o,this.styles=l?Jv(l,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class ty extends Vu{constructor(t,n,r,o,i,s,a,l){const c=o+"-"+r.id;super(t,n,r,i,s,a,l,c),this.contentAttr=function tx(e){return"_ngcontent-%COMP%".replace(ku,e)}(c),this.hostAttr=function nx(e){return"_nghost-%COMP%".replace(ku,e)}(c)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,n){const r=super.createElement(t,n);return super.setAttribute(r,this.contentAttr,""),r}}let ix=(()=>{var e;class t extends Qv{constructor(r){super(r)}supports(r){return!0}addEventListener(r,o,i){return r.addEventListener(o,i,!1),()=>this.removeEventListener(r,o,i)}removeEventListener(r,o,i){return r.removeEventListener(o,i)}}return(e=t).\u0275fac=function(r){return new(r||e)(J(Wn))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),t})();const ny=["alt","control","meta","shift"],sx={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},ax={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let lx=(()=>{var e;class t extends Qv{constructor(r){super(r)}supports(r){return null!=t.parseEventName(r)}addEventListener(r,o,i){const s=t.parseEventName(o),a=t.eventCallback(s.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Wo().onAndCancel(r,s.domEventName,a))}static parseEventName(r){const o=r.toLowerCase().split("."),i=o.shift();if(0===o.length||"keydown"!==i&&"keyup"!==i)return null;const s=t._normalizeKey(o.pop());let a="",l=o.indexOf("code");if(l>-1&&(o.splice(l,1),a="code."),ny.forEach(u=>{const d=o.indexOf(u);d>-1&&(o.splice(d,1),a+=u+".")}),a+=s,0!=o.length||0===s.length)return null;const c={};return c.domEventName=i,c.fullKey=a,c}static matchEventFullKeyCode(r,o){let i=sx[r.key]||r.key,s="";return o.indexOf("code.")>-1&&(i=r.code,s="code."),!(null==i||!i)&&(i=i.toLowerCase()," "===i?i="space":"."===i&&(i="dot"),ny.forEach(a=>{a!==i&&(0,ax[a])(r)&&(s+=a+".")}),s+=i,s===o)}static eventCallback(r,o,i){return s=>{t.matchEventFullKeyCode(s,r)&&i.runGuarded(()=>o(s))}}static _normalizeKey(r){return"esc"===r?"escape":r}}return(e=t).\u0275fac=function(r){return new(r||e)(J(Wn))},e.\u0275prov=se({token:e,factory:e.\u0275fac}),t})();const fx=ev(zA,"browser",[{provide:wr,useValue:"browser"},{provide:hp,useValue:function cx(){Ou.makeCurrent()},multi:!0},{provide:Wn,useFactory:function dx(){return function $b(e){Rl=e}(document),document},deps:[]}]),hx=new R(""),iy=[{provide:Ls,useClass:class QN{addToWindow(t){de.getAngularTestability=(r,o=!0)=>{const i=t.findTestabilityInTree(r,o);if(null==i)throw new S(5103,!1);return i},de.getAllAngularTestabilities=()=>t.getAllTestabilities(),de.getAllAngularRootElements=()=>t.getAllRootElements(),de.frameworkStabilizers||(de.frameworkStabilizers=[]),de.frameworkStabilizers.push(r=>{const o=de.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&r(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(t,n,r){return null==n?null:t.getTestability(n)??(r?Wo().isShadowRoot(n)?this.findTestabilityInTree(t,n.host,!0):this.findTestabilityInTree(t,n.parentElement,!0):null)}},deps:[]},{provide:Q_,useClass:ou,deps:[Ce,iu,Ls]},{provide:ou,useClass:ou,deps:[Ce,iu,Ls]}],sy=[{provide:$l,useValue:"root"},{provide:tn,useFactory:function ux(){return new tn},deps:[]},{provide:Ru,useClass:ix,multi:!0,deps:[Wn,Ce,wr]},{provide:Ru,useClass:lx,multi:!0,deps:[Wn]},Xv,Yv,Zv,{provide:Cp,useExisting:Xv},{provide:class bN{},useClass:YN,deps:[]},[]];let px=(()=>{var e;class t{constructor(r){}static withServerTransition(r){return{ngModule:t,providers:[{provide:os,useValue:r.appId}]}}}return(e=t).\u0275fac=function(r){return new(r||e)(J(hx,12))},e.\u0275mod=pn({type:e}),e.\u0275inj=Gt({providers:[...sy,...iy],imports:[vN,GA]}),t})();typeof window<"u"&&window;const{isArray:Dx}=Array,{getPrototypeOf:wx,prototype:bx,keys:Ex}=Object;const{isArray:Sx}=Array;function Nx(e,t){return e.reduce((n,r,o)=>(n[r]=t[o],n),{})}function xx(...e){const t=function HC(e){return _e(Ea(e))?e.pop():void 0}(e),{args:n,keys:r}=function Ix(e){if(1===e.length){const t=e[0];if(Dx(t))return{args:t,keys:null};if(function Mx(e){return e&&"object"==typeof e&&wx(e)===bx}(t)){const n=Ex(t);return{args:n.map(r=>t[r]),keys:n}}}return{args:e,keys:null}}(e),o=new je(i=>{const{length:s}=n;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=h},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(r?Nx(r,a):a),i.complete())}))}});return t?o.pipe(function Tx(e){return Da(t=>function Ax(e,t){return Sx(t)?e(...t):e(t)}(e,t))}(t)):o}let uy=(()=>{var e;class t{constructor(r,o){this._renderer=r,this._elementRef=o,this.onChange=i=>{},this.onTouched=()=>{}}setProperty(r,o){this._renderer.setProperty(this._elementRef.nativeElement,r,o)}registerOnTouched(r){this.onTouched=r}registerOnChange(r){this.onChange=r}setDisabledState(r){this.setProperty("disabled",r)}}return(e=t).\u0275fac=function(r){return new(r||e)(M(jn),M(bt))},e.\u0275dir=j({type:e}),t})(),Qn=(()=>{var e;class t extends uy{}return(e=t).\u0275fac=function(){let n;return function(o){return(n||(n=Le(e)))(o||e)}}(),e.\u0275dir=j({type:e,features:[ae]}),t})();const Ut=new R("NgValueAccessor"),Ox={provide:Ut,useExisting:ue(()=>Bu),multi:!0};let Bu=(()=>{var e;class t extends Qn{writeValue(r){this.setProperty("checked",r)}}return(e=t).\u0275fac=function(){let n;return function(o){return(n||(n=Le(e)))(o||e)}}(),e.\u0275dir=j({type:e,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(r,o){1&r&&F("change",function(s){return o.onChange(s.target.checked)})("blur",function(){return o.onTouched()})},features:[me([Ox]),ae]}),t})();const Rx={provide:Ut,useExisting:ue(()=>Xo),multi:!0},Px=new R("CompositionEventMode");let Xo=(()=>{var e;class t extends uy{constructor(r,o,i){super(r,o),this._compositionMode=i,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function Fx(){const e=Wo()?Wo().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(r){this.setProperty("value",r??"")}_handleInput(r){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(r)}_compositionStart(){this._composing=!0}_compositionEnd(r){this._composing=!1,this._compositionMode&&this.onChange(r)}}return(e=t).\u0275fac=function(r){return new(r||e)(M(jn),M(bt),M(Px,8))},e.\u0275dir=j({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(r,o){1&r&&F("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[me([Rx]),ae]}),t})();const Be=new R("NgValidators"),An=new R("NgAsyncValidators");function Cy(e){return null!=e}function Dy(e){return Es(e)?fi(e):e}function wy(e){let t={};return e.forEach(n=>{t=null!=n?{...t,...n}:t}),0===Object.keys(t).length?null:t}function by(e,t){return t.map(n=>n(e))}function Ey(e){return e.map(t=>function Lx(e){return!e.validate}(t)?t:n=>t.validate(n))}function ju(e){return null!=e?function Iy(e){if(!e)return null;const t=e.filter(Cy);return 0==t.length?null:function(n){return wy(by(n,t))}}(Ey(e)):null}function $u(e){return null!=e?function My(e){if(!e)return null;const t=e.filter(Cy);return 0==t.length?null:function(n){return xx(by(n,t).map(Dy)).pipe(Da(wy))}}(Ey(e)):null}function Sy(e,t){return null===e?[t]:Array.isArray(e)?[...e,t]:[e,t]}function Uu(e){return e?Array.isArray(e)?e:[e]:[]}function ra(e,t){return Array.isArray(e)?e.includes(t):e===t}function Ny(e,t){const n=Uu(t);return Uu(e).forEach(o=>{ra(n,o)||n.push(o)}),n}function xy(e,t){return Uu(t).filter(n=>!ra(e,n))}class Oy{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=ju(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=$u(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control&&this.control.reset(t)}hasError(t,n){return!!this.control&&this.control.hasError(t,n)}getError(t,n){return this.control?this.control.getError(t,n):null}}class Ye extends Oy{get formDirective(){return null}get path(){return null}}class Tn extends Oy{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class Ry{constructor(t){this._cd=t}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let oa=(()=>{var e;class t extends Ry{constructor(r){super(r)}}return(e=t).\u0275fac=function(r){return new(r||e)(M(Tn,2))},e.\u0275dir=j({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(r,o){2&r&&Ms("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[ae]}),t})();const ei="VALID",sa="INVALID",Gr="PENDING",ti="DISABLED";function aa(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class Ly{constructor(t,n){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(t),this._assignAsyncValidators(n)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===ei}get invalid(){return this.status===sa}get pending(){return this.status==Gr}get disabled(){return this.status===ti}get enabled(){return this.status!==ti}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(Ny(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(Ny(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(xy(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(xy(t,this._rawAsyncValidators))}hasValidator(t){return ra(this._rawValidators,t)}hasAsyncValidator(t){return ra(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(n=>{n.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(n=>{n.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=Gr,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const n=this._parentMarkedDirty(t.onlySelf);this.status=ti,this.errors=null,this._forEachChild(r=>{r.disable({...t,onlySelf:!0})}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...t,skipPristineCheck:n}),this._onDisabledChange.forEach(r=>r(!0))}enable(t={}){const n=this._parentMarkedDirty(t.onlySelf);this.status=ei,this._forEachChild(r=>{r.enable({...t,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors({...t,skipPristineCheck:n}),this._onDisabledChange.forEach(r=>r(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===ei||this.status===Gr)&&this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(n=>n._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?ti:ei}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=Gr,this._hasOwnPendingAsyncValidator=!0;const n=Dy(this.asyncValidator(this));this._asyncValidationSubscription=n.subscribe(r=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(r,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,n={}){this.errors=t,this._updateControlsErrors(!1!==n.emitEvent)}get(t){let n=t;return null==n||(Array.isArray(n)||(n=n.split(".")),0===n.length)?null:n.reduce((r,o)=>r&&r._find(o),this)}getError(t,n){const r=n?this.get(n):this;return r&&r.errors?r.errors[t]:null}hasError(t,n){return!!this.getError(t,n)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Ie,this.statusChanges=new Ie}_calculateStatus(){return this._allControlsDisabled()?ti:this.errors?sa:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Gr)?Gr:this._anyControlsHaveStatus(sa)?sa:ei}_anyControlsHaveStatus(t){return this._anyControls(n=>n.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){aa(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=function $x(e){return Array.isArray(e)?ju(e):e||null}(this._rawValidators)}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=function Ux(e){return Array.isArray(e)?$u(e):e||null}(this._rawAsyncValidators)}}const qr=new R("CallSetDisabledState",{providedIn:"root",factory:()=>la}),la="always";function ni(e,t,n=la){(function Qu(e,t){const n=function Ay(e){return e._rawValidators}(e);null!==t.validator?e.setValidators(Sy(n,t.validator)):"function"==typeof n&&e.setValidators([n]);const r=function Ty(e){return e._rawAsyncValidators}(e);null!==t.asyncValidator?e.setAsyncValidators(Sy(r,t.asyncValidator)):"function"==typeof r&&e.setAsyncValidators([r]);const o=()=>e.updateValueAndValidity();da(t._rawValidators,o),da(t._rawAsyncValidators,o)})(e,t),t.valueAccessor.writeValue(e.value),(e.disabled||"always"===n)&&t.valueAccessor.setDisabledState?.(e.disabled),function qx(e,t){t.valueAccessor.registerOnChange(n=>{e._pendingValue=n,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&Vy(e,t)})}(e,t),function Zx(e,t){const n=(r,o)=>{t.valueAccessor.writeValue(r),o&&t.viewToModelUpdate(r)};e.registerOnChange(n),t._registerOnDestroy(()=>{e._unregisterOnChange(n)})}(e,t),function Wx(e,t){t.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&Vy(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),function Gx(e,t){if(t.valueAccessor.setDisabledState){const n=r=>{t.valueAccessor.setDisabledState(r)};e.registerOnDisabledChange(n),t._registerOnDestroy(()=>{e._unregisterOnDisabledChange(n)})}}(e,t)}function da(e,t){e.forEach(n=>{n.registerOnValidatorChange&&n.registerOnValidatorChange(t)})}function Vy(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function jy(e,t){const n=e.indexOf(t);n>-1&&e.splice(n,1)}function $y(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const Uy=class extends Ly{constructor(t=null,n,r){super(function qu(e){return(aa(e)?e.validators:e)||null}(n),function Wu(e,t){return(aa(t)?t.asyncValidators:e)||null}(r,n)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(t),this._setUpdateStrategy(n),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),aa(n)&&(n.nonNullable||n.initialValueIsDefault)&&(this.defaultValue=$y(t)?t.value:t)}setValue(t,n={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==n.emitModelToViewChange&&this._onChange.forEach(r=>r(this.value,!1!==n.emitViewToModelChange)),this.updateValueAndValidity(n)}patchValue(t,n={}){this.setValue(t,n)}reset(t=this.defaultValue,n={}){this._applyFormState(t),this.markAsPristine(n),this.markAsUntouched(n),this.setValue(this.value,n),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){jy(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){jy(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){$y(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}},nO={provide:Tn,useExisting:ue(()=>oi)},qy=(()=>Promise.resolve())();let oi=(()=>{var e;class t extends Tn{constructor(r,o,i,s,a,l){super(),this._changeDetectorRef=a,this.callSetDisabledState=l,this.control=new Uy,this._registered=!1,this.name="",this.update=new Ie,this._parent=r,this._setValidators(o),this._setAsyncValidators(i),this.valueAccessor=function Ju(e,t){if(!t)return null;let n,r,o;return Array.isArray(t),t.forEach(i=>{i.constructor===Xo?n=i:function Kx(e){return Object.getPrototypeOf(e.constructor)===Qn}(i)?r=i:o=i}),o||r||n||null}(0,s)}ngOnChanges(r){if(this._checkForErrors(),!this._registered||"name"in r){if(this._registered&&(this._checkName(),this.formDirective)){const o=r.name.previousValue;this.formDirective.removeControl({name:o,path:this._getPath(o)})}this._setUpControl()}"isDisabled"in r&&this._updateDisabled(r),function Ku(e,t){if(!e.hasOwnProperty("model"))return!1;const n=e.model;return!!n.isFirstChange()||!Object.is(t,n.currentValue)}(r,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(r){this.viewModel=r,this.update.emit(r)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){ni(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(r){qy.then(()=>{this.control.setValue(r,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(r){const o=r.isDisabled.currentValue,i=0!==o&&function pu(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}(o);qy.then(()=>{i&&!this.control.disabled?this.control.disable():!i&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(r){return this._parent?function ca(e,t){return[...t.path,e]}(r,this._parent):[r]}}return(e=t).\u0275fac=function(r){return new(r||e)(M(Ye,9),M(Be,10),M(An,10),M(Ut,10),M(uv,8),M(qr,8))},e.\u0275dir=j({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[me([nO]),ae,Yt]}),t})(),Zy=(()=>{var e;class t{}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275mod=pn({type:e}),e.\u0275inj=Gt({}),t})();const aO={provide:Ut,useExisting:ue(()=>ed),multi:!0};let ed=(()=>{var e;class t extends Qn{writeValue(r){this.setProperty("value",parseFloat(r))}registerOnChange(r){this.onChange=o=>{r(""==o?null:parseFloat(o))}}}return(e=t).\u0275fac=function(){let n;return function(o){return(n||(n=Le(e)))(o||e)}}(),e.\u0275dir=j({type:e,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(r,o){1&r&&F("change",function(s){return o.onChange(s.target.value)})("input",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},features:[me([aO]),ae]}),t})();const hO={provide:Ut,useExisting:ue(()=>ii),multi:!0};function eC(e,t){return null==e?`${t}`:(t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}let ii=(()=>{var e;class t extends Qn{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(r){this._compareWith=r}writeValue(r){this.value=r;const i=eC(this._getOptionId(r),r);this.setProperty("value",i)}registerOnChange(r){this.onChange=o=>{this.value=this._getOptionValue(o),r(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(r){for(const o of this._optionMap.keys())if(this._compareWith(this._optionMap.get(o),r))return o;return null}_getOptionValue(r){const o=function pO(e){return e.split(":")[0]}(r);return this._optionMap.has(o)?this._optionMap.get(o):r}}return(e=t).\u0275fac=function(){let n;return function(o){return(n||(n=Le(e)))(o||e)}}(),e.\u0275dir=j({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(r,o){1&r&&F("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[me([hO]),ae]}),t})(),od=(()=>{var e;class t{constructor(r,o,i){this._element=r,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption())}set ngValue(r){null!=this._select&&(this._select._optionMap.set(this.id,r),this._setElementValue(eC(this.id,r)),this._select.writeValue(this._select.value))}set value(r){this._setElementValue(r),this._select&&this._select.writeValue(this._select.value)}_setElementValue(r){this._renderer.setProperty(this._element.nativeElement,"value",r)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return(e=t).\u0275fac=function(r){return new(r||e)(M(bt),M(jn),M(ii,9))},e.\u0275dir=j({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();const gO={provide:Ut,useExisting:ue(()=>id),multi:!0};function tC(e,t){return null==e?`${t}`:("string"==typeof t&&(t=`'${t}'`),t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}let id=(()=>{var e;class t extends Qn{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(r){this._compareWith=r}writeValue(r){let o;if(this.value=r,Array.isArray(r)){const i=r.map(s=>this._getOptionId(s));o=(s,a)=>{s._setSelected(i.indexOf(a.toString())>-1)}}else o=(i,s)=>{i._setSelected(!1)};this._optionMap.forEach(o)}registerOnChange(r){this.onChange=o=>{const i=[],s=o.selectedOptions;if(void 0!==s){const a=s;for(let l=0;l{var e;class t{constructor(r,o,i){this._element=r,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption(this))}set ngValue(r){null!=this._select&&(this._value=r,this._setElementValue(tC(this.id,r)),this._select.writeValue(this._select.value))}set value(r){this._select?(this._value=r,this._setElementValue(tC(this.id,r)),this._select.writeValue(this._select.value)):this._setElementValue(r)}_setElementValue(r){this._renderer.setProperty(this._element.nativeElement,"value",r)}_setSelected(r){this._renderer.setProperty(this._element.nativeElement,"selected",r)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return(e=t).\u0275fac=function(r){return new(r||e)(M(bt),M(jn),M(id,9))},e.\u0275dir=j({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})(),IO=(()=>{var e;class t{}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275mod=pn({type:e}),e.\u0275inj=Gt({imports:[Zy]}),t})(),SO=(()=>{var e;class t{static withConfig(r){return{ngModule:t,providers:[{provide:qr,useValue:r.callSetDisabledState??la}]}}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275mod=pn({type:e}),e.\u0275inj=Gt({imports:[IO]}),t})();class dC{constructor(){this.riskHotspotsSettings=null,this.coverageInfoSettings=null}}class AO{constructor(){this.showLineCoverage=!0,this.showBranchCoverage=!0,this.showMethodCoverage=!0,this.visibleMetrics=[],this.groupingMaximum=0,this.grouping=0,this.historyComparisionDate="",this.historyComparisionType="",this.filter="",this.sortBy="name",this.sortOrder="asc",this.collapseStates=[]}}class TO{constructor(t){this.et="",this.et=t.et,this.cl=t.cl,this.ucl=t.ucl,this.cal=t.cal,this.tl=t.tl,this.lcq=t.lcq,this.cb=t.cb,this.tb=t.tb,this.bcq=t.bcq,this.cm=t.cm,this.tm=t.tm,this.mcq=t.mcq}get coverageRatioText(){return 0===this.tl?"-":this.cl+"/"+this.cal}get branchCoverageRatioText(){return 0===this.tb?"-":this.cb+"/"+this.tb}get methodCoverageRatioText(){return 0===this.tm?"-":this.cm+"/"+this.tm}}class vt{static roundNumber(t){return Math.floor(t*Math.pow(10,vt.maximumDecimalPlacesForCoverageQuotas))/Math.pow(10,vt.maximumDecimalPlacesForCoverageQuotas)}static getNthOrLastIndexOf(t,n,r){let o=0,i=-1,s=-1;for(;o{this.historicCoverages.push(new TO(r))}),this.metrics=t.metrics}get coverage(){return 0===this.coverableLines?NaN:vt.roundNumber(100*this.coveredLines/this.coverableLines)}visible(t,n){if(""!==t&&-1===this.name.toLowerCase().indexOf(t.toLowerCase()))return!1;if(""===n||null===this.currentHistoricCoverage)return!0;if("allChanges"===n){if(this.coveredLines===this.currentHistoricCoverage.cl&&this.uncoveredLines===this.currentHistoricCoverage.ucl&&this.coverableLines===this.currentHistoricCoverage.cal&&this.totalLines===this.currentHistoricCoverage.tl&&this.coveredBranches===this.currentHistoricCoverage.cb&&this.totalBranches===this.currentHistoricCoverage.tb&&this.coveredMethods===this.currentHistoricCoverage.cm&&this.totalMethods===this.currentHistoricCoverage.tm)return!1}else if("lineCoverageIncreaseOnly"===n){let r=this.coverage;if(isNaN(r)||r<=this.currentHistoricCoverage.lcq)return!1}else if("lineCoverageDecreaseOnly"===n){let r=this.coverage;if(isNaN(r)||r>=this.currentHistoricCoverage.lcq)return!1}else if("branchCoverageIncreaseOnly"===n){let r=this.branchCoverage;if(isNaN(r)||r<=this.currentHistoricCoverage.bcq)return!1}else if("branchCoverageDecreaseOnly"===n){let r=this.branchCoverage;if(isNaN(r)||r>=this.currentHistoricCoverage.bcq)return!1}else if("methodCoverageIncreaseOnly"===n){let r=this.methodCoverage;if(isNaN(r)||r<=this.currentHistoricCoverage.mcq)return!1}else if("methodCoverageDecreaseOnly"===n){let r=this.methodCoverage;if(isNaN(r)||r>=this.currentHistoricCoverage.mcq)return!1}return!0}updateCurrentHistoricCoverage(t){if(this.currentHistoricCoverage=null,""!==t)for(let n=0;n-1&&null===n}visible(t,n){if(""!==t&&this.name.toLowerCase().indexOf(t.toLowerCase())>-1)return!0;for(let r=0;r{var e;class t{get nativeWindow(){return function NO(){return window}()}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275prov=se({token:e,factory:e.\u0275fac}),t})(),xO=(()=>{var e;class t{constructor(){this.translations={}}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275cmp=Zt({type:e,selectors:[["pro-button"]],inputs:{translations:"translations"},decls:3,vars:1,consts:[["href","https://reportgenerator.io/pro","target","_blank",1,"pro-button","pro-button-tiny",3,"title"]],template:function(r,o){1&r&&(b(0,"\xa0"),y(1,"a",0),b(2,"PRO"),v()),2&r&&(f(1),bn("title",o.translations.methodCoverageProVersion))},encapsulation:2}),t})();function OO(e,t){if(1&e){const n=De();y(0,"div",3)(1,"label")(2,"input",4),F("ngModelChange",function(o){return G(n),q(_().showBranchCoverage=o)})("change",function(){G(n);const o=_();return q(o.showBranchCoverageChange.emit(o.showBranchCoverage))}),v(),b(3),v()()}if(2&e){const n=_();f(2),g("ngModel",n.showBranchCoverage),f(1),z(" ",n.translations.branchCoverage,"")}}function RO(e,t){1&e&&N(0,"pro-button",9),2&e&&g("translations",_().translations)}function FO(e,t){1&e&&N(0,"pro-button",9),2&e&&g("translations",_(2).translations)}function PO(e,t){1&e&&(y(0,"a",13),N(1,"i",14),v()),2&e&&g("href",_().$implicit.explanationUrl,wn)}function kO(e,t){if(1&e){const n=De();y(0,"div",3)(1,"label")(2,"input",11),F("change",function(){const i=G(n).$implicit;return q(_(2).toggleMetric(i))}),v(),b(3),v(),b(4,"\xa0"),C(5,PO,2,1,"a",12),v()}if(2&e){const n=t.$implicit,r=_(2);f(2),g("checked",r.isMetricSelected(n))("disabled",!r.methodCoverageAvailable),f(1),z(" ",n.name,""),f(2),g("ngIf",n.explanationUrl)}}function LO(e,t){if(1&e&&(Z(0),N(1,"br")(2,"br"),y(3,"b"),b(4),v(),C(5,FO,1,1,"pro-button",7),C(6,kO,6,4,"div",10),Q()),2&e){const n=_();f(4),x(n.translations.metrics),f(1),g("ngIf",!n.methodCoverageAvailable),f(1),g("ngForOf",n.metrics)}}let VO=(()=>{var e;class t{constructor(){this.visible=!1,this.visibleChange=new Ie,this.translations={},this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.metrics=[],this.showLineCoverage=!1,this.showLineCoverageChange=new Ie,this.showBranchCoverage=!1,this.showBranchCoverageChange=new Ie,this.showMethodCoverage=!1,this.showMethodCoverageChange=new Ie,this.visibleMetrics=[],this.visibleMetricsChange=new Ie}isMetricSelected(r){return void 0!==this.visibleMetrics.find(o=>o.name===r.name)}toggleMetric(r){let o=this.visibleMetrics.find(i=>i.name===r.name);o?this.visibleMetrics.splice(this.visibleMetrics.indexOf(o),1):this.visibleMetrics.push(r),this.visibleMetrics=[...this.visibleMetrics],this.visibleMetricsChange.emit(this.visibleMetrics)}close(){this.visible=!1,this.visibleChange.emit(this.visible)}cancelEvent(r){r.stopPropagation()}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275cmp=Zt({type:e,selectors:[["popup"]],inputs:{visible:"visible",translations:"translations",branchCoverageAvailable:"branchCoverageAvailable",methodCoverageAvailable:"methodCoverageAvailable",metrics:"metrics",showLineCoverage:"showLineCoverage",showBranchCoverage:"showBranchCoverage",showMethodCoverage:"showMethodCoverage",visibleMetrics:"visibleMetrics"},outputs:{visibleChange:"visibleChange",showLineCoverageChange:"showLineCoverageChange",showBranchCoverageChange:"showBranchCoverageChange",showMethodCoverageChange:"showMethodCoverageChange",visibleMetricsChange:"visibleMetricsChange"},decls:17,vars:9,consts:[[1,"popup-container",3,"click"],[1,"popup",3,"click"],[1,"close",3,"click"],[1,"mt-1"],["type","checkbox",3,"ngModel","ngModelChange","change"],["class","mt-1",4,"ngIf"],["type","checkbox",3,"ngModel","disabled","ngModelChange","change"],[3,"translations",4,"ngIf"],[4,"ngIf"],[3,"translations"],["class","mt-1",4,"ngFor","ngForOf"],["type","checkbox",3,"checked","disabled","change"],["target","_blank",3,"href",4,"ngIf"],["target","_blank",3,"href"],[1,"icon-info-circled"]],template:function(r,o){1&r&&(y(0,"div",0),F("click",function(){return o.close()}),y(1,"div",1),F("click",function(s){return o.cancelEvent(s)}),y(2,"div",2),F("click",function(){return o.close()}),b(3,"X"),v(),y(4,"b"),b(5),v(),y(6,"div",3)(7,"label")(8,"input",4),F("ngModelChange",function(s){return o.showLineCoverage=s})("change",function(){return o.showLineCoverageChange.emit(o.showLineCoverage)}),v(),b(9),v()(),C(10,OO,4,2,"div",5),y(11,"div",3)(12,"label")(13,"input",6),F("ngModelChange",function(s){return o.showMethodCoverage=s})("change",function(){return o.showMethodCoverageChange.emit(o.showMethodCoverage)}),v(),b(14),v(),C(15,RO,1,1,"pro-button",7),v(),C(16,LO,7,3,"ng-container",8),v()()),2&r&&(f(5),x(o.translations.coverageTypes),f(3),g("ngModel",o.showLineCoverage),f(1),z(" ",o.translations.coverage,""),f(1),g("ngIf",o.branchCoverageAvailable),f(3),g("ngModel",o.showMethodCoverage)("disabled",!o.methodCoverageAvailable),f(1),z(" ",o.translations.methodCoverage,""),f(1),g("ngIf",!o.methodCoverageAvailable),f(1),g("ngIf",o.metrics.length>0))},dependencies:[zr,Zn,Bu,oa,oi,xO],encapsulation:2}),t})();function HO(e,t){1&e&&N(0,"td",3)}function BO(e,t){1&e&&N(0,"td"),2&e&&jt("green ",_().greenClass,"")}function jO(e,t){1&e&&N(0,"td"),2&e&&jt("red ",_().redClass,"")}let hC=(()=>{var e;class t{constructor(){this.grayVisible=!0,this.greenVisible=!1,this.redVisible=!1,this.greenClass="",this.redClass="",this._percentage=NaN}get percentage(){return this._percentage}set percentage(r){this._percentage=r,this.grayVisible=isNaN(r),this.greenVisible=!isNaN(r)&&Math.round(r)>0,this.redVisible=!isNaN(r)&&100-Math.round(r)>0,this.greenClass="covered"+Math.round(r),this.redClass="covered"+(100-Math.round(r))}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275cmp=Zt({type:e,selectors:[["coverage-bar"]],inputs:{percentage:"percentage"},decls:4,vars:3,consts:[[1,"coverage"],["class","gray covered100",4,"ngIf"],[3,"class",4,"ngIf"],[1,"gray","covered100"]],template:function(r,o){1&r&&(y(0,"table",0),C(1,HO,1,0,"td",1),C(2,BO,1,3,"td",2),C(3,jO,1,3,"td",2),v()),2&r&&(f(1),g("ngIf",o.grayVisible),f(1),g("ngIf",o.greenVisible),f(1),g("ngIf",o.redVisible))},dependencies:[Zn],encapsulation:2,changeDetection:0}),t})();const $O=["codeelement-row",""];function UO(e,t){if(1&e&&(y(0,"th",5),b(1),v()),2&e){const n=_();f(1),x(n.element.coveredLines)}}function zO(e,t){if(1&e&&(y(0,"th",5),b(1),v()),2&e){const n=_();f(1),x(n.element.uncoveredLines)}}function GO(e,t){if(1&e&&(y(0,"th",5),b(1),v()),2&e){const n=_();f(1),x(n.element.coverableLines)}}function qO(e,t){if(1&e&&(y(0,"th",5),b(1),v()),2&e){const n=_();f(1),x(n.element.totalLines)}}function WO(e,t){if(1&e&&(y(0,"th",6),b(1),v()),2&e){const n=_();g("title",n.element.coverageRatioText),f(1),x(n.element.coveragePercentage)}}function ZO(e,t){if(1&e&&(y(0,"th",5),N(1,"coverage-bar",7),v()),2&e){const n=_();f(1),g("percentage",n.element.coverage)}}function QO(e,t){if(1&e&&(y(0,"th",5),b(1),v()),2&e){const n=_();f(1),x(n.element.coveredBranches)}}function YO(e,t){if(1&e&&(y(0,"th",5),b(1),v()),2&e){const n=_();f(1),x(n.element.totalBranches)}}function KO(e,t){if(1&e&&(y(0,"th",6),b(1),v()),2&e){const n=_();g("title",n.element.branchCoverageRatioText),f(1),x(n.element.branchCoveragePercentage)}}function JO(e,t){if(1&e&&(y(0,"th",5),N(1,"coverage-bar",7),v()),2&e){const n=_();f(1),g("percentage",n.element.branchCoverage)}}function XO(e,t){if(1&e&&(y(0,"th",5),b(1),v()),2&e){const n=_();f(1),x(n.element.coveredMethods)}}function eR(e,t){if(1&e&&(y(0,"th",5),b(1),v()),2&e){const n=_();f(1),x(n.element.totalMethods)}}function tR(e,t){if(1&e&&(y(0,"th",6),b(1),v()),2&e){const n=_();g("title",n.element.methodCoverageRatioText),f(1),x(n.element.methodCoveragePercentage)}}function nR(e,t){if(1&e&&(y(0,"th",5),N(1,"coverage-bar",7),v()),2&e){const n=_();f(1),g("percentage",n.element.methodCoverage)}}function rR(e,t){1&e&&N(0,"th",5)}const oR=function(e,t){return{"icon-plus":e,"icon-minus":t}};let iR=(()=>{var e;class t{constructor(){this.collapsed=!1,this.lineCoverageAvailable=!1,this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.visibleMetrics=[]}}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275cmp=Zt({type:e,selectors:[["","codeelement-row",""]],inputs:{element:"element",collapsed:"collapsed",lineCoverageAvailable:"lineCoverageAvailable",branchCoverageAvailable:"branchCoverageAvailable",methodCoverageAvailable:"methodCoverageAvailable",visibleMetrics:"visibleMetrics"},attrs:$O,decls:19,vars:20,consts:[["href","#",3,"click"],[3,"ngClass"],["class","right",4,"ngIf"],["class","right",3,"title",4,"ngIf"],["class","right",4,"ngFor","ngForOf"],[1,"right"],[1,"right",3,"title"],[3,"percentage"]],template:function(r,o){1&r&&(y(0,"th")(1,"a",0),F("click",function(s){return o.element.toggleCollapse(s)}),N(2,"i",1),b(3),v()(),C(4,UO,2,1,"th",2),C(5,zO,2,1,"th",2),C(6,GO,2,1,"th",2),C(7,qO,2,1,"th",2),C(8,WO,2,2,"th",3),C(9,ZO,2,1,"th",2),C(10,QO,2,1,"th",2),C(11,YO,2,1,"th",2),C(12,KO,2,2,"th",3),C(13,JO,2,1,"th",2),C(14,XO,2,1,"th",2),C(15,eR,2,1,"th",2),C(16,tR,2,2,"th",3),C(17,nR,2,1,"th",2),C(18,rR,1,0,"th",4)),2&r&&(f(2),g("ngClass",Uc(17,oR,o.element.collapsed,!o.element.collapsed)),f(1),z(" ",o.element.name,""),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.branchCoverageAvailable),f(1),g("ngIf",o.branchCoverageAvailable),f(1),g("ngIf",o.branchCoverageAvailable),f(1),g("ngIf",o.branchCoverageAvailable),f(1),g("ngIf",o.methodCoverageAvailable),f(1),g("ngIf",o.methodCoverageAvailable),f(1),g("ngIf",o.methodCoverageAvailable),f(1),g("ngIf",o.methodCoverageAvailable),f(1),g("ngForOf",o.visibleMetrics))},dependencies:[Yo,zr,Zn,hC],encapsulation:2,changeDetection:0}),t})();const sR=["coverage-history-chart",""];let aR=(()=>{var e;class t{constructor(){this.path=null,this._historicCoverages=[]}get historicCoverages(){return this._historicCoverages}set historicCoverages(r){if(this._historicCoverages=r,r.length>1){let o="";for(let i=0;i1),f(1),g("ngIf",null!==n.clazz.currentHistoricCoverage),f(1),g("ngIf",null===n.clazz.currentHistoricCoverage)}}function SR(e,t){if(1&e&&(y(0,"td",6),N(1,"coverage-bar",12),v()),2&e){const n=_();f(1),g("percentage",n.clazz.coverage)}}function AR(e,t){if(1&e&&(Z(0),y(1,"div"),b(2),v(),y(3,"div",7),b(4),v(),Q()),2&e){const n=_(2);f(1),jt("currenthistory ",n.getClassName(n.clazz.coveredBranches,n.clazz.currentHistoricCoverage.cb),""),f(1),z(" ",n.clazz.coveredBranches," "),f(1),g("title",n.clazz.currentHistoricCoverage.et),f(1),z(" ",n.clazz.currentHistoricCoverage.cb," ")}}function TR(e,t){if(1&e&&(Z(0),b(1),Q()),2&e){const n=_(2);f(1),z(" ",n.clazz.coveredBranches," ")}}function NR(e,t){if(1&e&&(y(0,"td",6),C(1,AR,5,6,"ng-container",1),C(2,TR,2,1,"ng-container",1),v()),2&e){const n=_();f(1),g("ngIf",null!==n.clazz.currentHistoricCoverage),f(1),g("ngIf",null===n.clazz.currentHistoricCoverage)}}function xR(e,t){if(1&e&&(Z(0),y(1,"div",8),b(2),v(),y(3,"div",7),b(4),v(),Q()),2&e){const n=_(2);f(2),x(n.clazz.totalBranches),f(1),g("title",n.clazz.currentHistoricCoverage.et),f(1),x(n.clazz.currentHistoricCoverage.tb)}}function OR(e,t){if(1&e&&(Z(0),b(1),Q()),2&e){const n=_(2);f(1),z(" ",n.clazz.totalBranches," ")}}function RR(e,t){if(1&e&&(y(0,"td",6),C(1,xR,5,3,"ng-container",1),C(2,OR,2,1,"ng-container",1),v()),2&e){const n=_();f(1),g("ngIf",null!==n.clazz.currentHistoricCoverage),f(1),g("ngIf",null===n.clazz.currentHistoricCoverage)}}function FR(e,t){if(1&e&&N(0,"div",14),2&e){const n=_(2);bn("title",n.translations.history+": "+n.translations.branchCoverage),g("historicCoverages",n.clazz.branchCoverageHistory)("ngClass",Os(3,ud,null!==n.clazz.currentHistoricCoverage))}}function PR(e,t){if(1&e&&(Z(0),y(1,"div"),b(2),v(),y(3,"div",7),b(4),v(),Q()),2&e){const n=_(2);f(1),jt("currenthistory ",n.getClassName(n.clazz.branchCoverage,n.clazz.currentHistoricCoverage.bcq),""),f(1),z(" ",n.clazz.branchCoveragePercentage," "),f(1),g("title",n.clazz.currentHistoricCoverage.et+": "+n.clazz.currentHistoricCoverage.branchCoverageRatioText),f(1),z("",n.clazz.currentHistoricCoverage.bcq,"%")}}function kR(e,t){if(1&e&&(Z(0),b(1),Q()),2&e){const n=_(2);f(1),z(" ",n.clazz.branchCoveragePercentage," ")}}function LR(e,t){if(1&e&&(y(0,"td",9),C(1,FR,1,5,"div",13),C(2,PR,5,6,"ng-container",1),C(3,kR,2,1,"ng-container",1),v()),2&e){const n=_();g("title",n.clazz.branchCoverageRatioText),f(1),g("ngIf",n.clazz.branchCoverageHistory.length>1),f(1),g("ngIf",null!==n.clazz.currentHistoricCoverage),f(1),g("ngIf",null===n.clazz.currentHistoricCoverage)}}function VR(e,t){if(1&e&&(y(0,"td",6),N(1,"coverage-bar",12),v()),2&e){const n=_();f(1),g("percentage",n.clazz.branchCoverage)}}function HR(e,t){if(1&e&&(Z(0),y(1,"div"),b(2),v(),y(3,"div",7),b(4),v(),Q()),2&e){const n=_(2);f(1),jt("currenthistory ",n.getClassName(n.clazz.coveredMethods,n.clazz.currentHistoricCoverage.cm),""),f(1),z(" ",n.clazz.coveredMethods," "),f(1),g("title",n.clazz.currentHistoricCoverage.et),f(1),z(" ",n.clazz.currentHistoricCoverage.cm," ")}}function BR(e,t){if(1&e&&(Z(0),b(1),Q()),2&e){const n=_(2);f(1),z(" ",n.clazz.coveredMethods," ")}}function jR(e,t){if(1&e&&(y(0,"td",6),C(1,HR,5,6,"ng-container",1),C(2,BR,2,1,"ng-container",1),v()),2&e){const n=_();f(1),g("ngIf",null!==n.clazz.currentHistoricCoverage),f(1),g("ngIf",null===n.clazz.currentHistoricCoverage)}}function $R(e,t){if(1&e&&(Z(0),y(1,"div",8),b(2),v(),y(3,"div",7),b(4),v(),Q()),2&e){const n=_(2);f(2),x(n.clazz.totalMethods),f(1),g("title",n.clazz.currentHistoricCoverage.et),f(1),x(n.clazz.currentHistoricCoverage.tm)}}function UR(e,t){if(1&e&&(Z(0),b(1),Q()),2&e){const n=_(2);f(1),z(" ",n.clazz.totalMethods," ")}}function zR(e,t){if(1&e&&(y(0,"td",6),C(1,$R,5,3,"ng-container",1),C(2,UR,2,1,"ng-container",1),v()),2&e){const n=_();f(1),g("ngIf",null!==n.clazz.currentHistoricCoverage),f(1),g("ngIf",null===n.clazz.currentHistoricCoverage)}}function GR(e,t){if(1&e&&N(0,"div",16),2&e){const n=_(2);bn("title",n.translations.history+": "+n.translations.methodCoverage),g("historicCoverages",n.clazz.methodCoverageHistory)("ngClass",Os(3,ud,null!==n.clazz.currentHistoricCoverage))}}function qR(e,t){if(1&e&&(Z(0),y(1,"div"),b(2),v(),y(3,"div",7),b(4),v(),Q()),2&e){const n=_(2);f(1),jt("currenthistory ",n.getClassName(n.clazz.methodCoverage,n.clazz.currentHistoricCoverage.mcq),""),f(1),z(" ",n.clazz.methodCoveragePercentage," "),f(1),g("title",n.clazz.currentHistoricCoverage.et+": "+n.clazz.currentHistoricCoverage.methodCoverageRatioText),f(1),z("",n.clazz.currentHistoricCoverage.mcq,"%")}}function WR(e,t){if(1&e&&(Z(0),b(1),Q()),2&e){const n=_(2);f(1),z(" ",n.clazz.methodCoveragePercentage," ")}}function ZR(e,t){if(1&e&&(y(0,"td",9),C(1,GR,1,5,"div",15),C(2,qR,5,6,"ng-container",1),C(3,WR,2,1,"ng-container",1),v()),2&e){const n=_();g("title",n.clazz.methodCoverageRatioText),f(1),g("ngIf",n.clazz.methodCoverageHistory.length>1),f(1),g("ngIf",null!==n.clazz.currentHistoricCoverage),f(1),g("ngIf",null===n.clazz.currentHistoricCoverage)}}function QR(e,t){if(1&e&&(y(0,"td",6),N(1,"coverage-bar",12),v()),2&e){const n=_();f(1),g("percentage",n.clazz.methodCoverage)}}function YR(e,t){if(1&e&&(y(0,"td",6),b(1),v()),2&e){const n=t.$implicit,r=_();f(1),x(r.clazz.metrics[n.abbreviation])}}let KR=(()=>{var e;class t{constructor(){this.translations={},this.lineCoverageAvailable=!1,this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.visibleMetrics=[],this.historyComparisionDate=""}getClassName(r,o){return r>o?"lightgreen":r0),f(2),z(" ",n.translations.grouping," "),f(1),g("max",n.settings.groupingMaximum)("ngModel",n.settings.grouping),f(2),g("ngIf",n.historicCoverageExecutionTimes.length>0),f(5),x(n.metrics.length>0?n.translations.selectCoverageTypesAndMetrics:n.translations.selectCoverageTypes),f(4),z("",n.translations.filter," "),f(1),g("ngModel",n.settings.filter),f(5),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.branchCoverageAvailable&&n.settings.showBranchCoverage),f(1),g("ngIf",n.branchCoverageAvailable&&n.settings.showBranchCoverage),f(1),g("ngIf",n.branchCoverageAvailable&&n.settings.showBranchCoverage),f(1),g("ngIf",n.branchCoverageAvailable&&n.settings.showBranchCoverage),f(1),g("ngIf",n.methodCoverageAvailable&&n.settings.showMethodCoverage),f(1),g("ngIf",n.methodCoverageAvailable&&n.settings.showMethodCoverage),f(1),g("ngIf",n.methodCoverageAvailable&&n.settings.showMethodCoverage),f(1),g("ngIf",n.methodCoverageAvailable&&n.settings.showMethodCoverage),f(1),g("ngForOf",n.settings.visibleMetrics),f(4),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.branchCoverageAvailable&&n.settings.showBranchCoverage),f(1),g("ngIf",n.methodCoverageAvailable&&n.settings.showMethodCoverage),f(1),g("ngIf",n.settings.visibleMetrics.length>0),f(4),g("ngClass",xe(47,dt,"name"===n.settings.sortBy&&"desc"===n.settings.sortOrder,"name"===n.settings.sortBy&&"asc"===n.settings.sortOrder,"name"!==n.settings.sortBy)),f(1),x(n.translations.name),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.settings.showLineCoverage),f(1),g("ngIf",n.branchCoverageAvailable&&n.settings.showBranchCoverage),f(1),g("ngIf",n.branchCoverageAvailable&&n.settings.showBranchCoverage),f(1),g("ngIf",n.branchCoverageAvailable&&n.settings.showBranchCoverage),f(1),g("ngIf",n.methodCoverageAvailable&&n.settings.showMethodCoverage),f(1),g("ngIf",n.methodCoverageAvailable&&n.settings.showMethodCoverage),f(1),g("ngIf",n.methodCoverageAvailable&&n.settings.showMethodCoverage),f(1),g("ngForOf",n.settings.visibleMetrics),f(2),g("ngForOf",n.codeElements)}}let YF=(()=>{var e;class t{constructor(r){this.queryString="",this.historicCoverageExecutionTimes=[],this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.metrics=[],this.codeElements=[],this.translations={},this.popupVisible=!1,this.settings=new AO,this.window=r.nativeWindow}ngOnInit(){this.historicCoverageExecutionTimes=this.window.historicCoverageExecutionTimes,this.branchCoverageAvailable=this.window.branchCoverageAvailable,this.methodCoverageAvailable=this.window.methodCoverageAvailable,this.metrics=this.window.metrics,this.translations=this.window.translations,vt.maximumDecimalPlacesForCoverageQuotas=this.window.maximumDecimalPlacesForCoverageQuotas;let r=!1;if(void 0!==this.window.history&&void 0!==this.window.history.replaceState&&null!==this.window.history.state&&null!=this.window.history.state.coverageInfoSettings)console.log("Coverage info: Restoring from history",this.window.history.state.coverageInfoSettings),r=!0,this.settings=JSON.parse(JSON.stringify(this.window.history.state.coverageInfoSettings));else{let i=0,s=this.window.assemblies;for(let a=0;a-1&&(this.queryString=window.location.href.substring(o)),this.updateCoverageInfo(),r&&this.restoreCollapseState()}onBeforeUnload(){if(this.saveCollapseState(),void 0!==this.window.history&&void 0!==this.window.history.replaceState){console.log("Coverage info: Updating history",this.settings);let r=new dC;null!==window.history.state&&(r=JSON.parse(JSON.stringify(this.window.history.state))),r.coverageInfoSettings=JSON.parse(JSON.stringify(this.settings)),window.history.replaceState(r,"")}}updateCoverageInfo(){let r=(new Date).getTime(),o=this.window.assemblies,i=[],s=0;if(0===this.settings.grouping)for(let c=0;c{for(let i=0;i{for(let s=0;sr&&(i[s].collapsed=this.settings.collapseStates[r]),r++,o(i[s].subElements)};o(this.codeElements)}}return(e=t).\u0275fac=function(r){return new(r||e)(M(cd))},e.\u0275cmp=Zt({type:e,selectors:[["coverage-info"]],hostBindings:function(r,o){1&r&&F("beforeunload",function(){return o.onBeforeUnload()},0,cc)},decls:1,vars:1,consts:[[4,"ngIf"],[3,"visible","translations","branchCoverageAvailable","methodCoverageAvailable","metrics","showLineCoverage","showBranchCoverage","showMethodCoverage","visibleMetrics","visibleChange","showLineCoverageChange","showBranchCoverageChange","showMethodCoverageChange","visibleMetricsChange",4,"ngIf"],[1,"customizebox"],["href","#",3,"click"],[1,"center"],["type","range","step","1","min","-1",3,"max","ngModel","ngModelChange"],[1,"right"],["type","button",3,"click"],[1,"icon-cog"],["type","text",3,"ngModel","ngModelChange"],[1,"table-responsive"],[1,"overview","table-fixed","stripped"],[1,"column-min-200"],["class","column90",4,"ngIf"],["class","column105",4,"ngIf"],["class","column100",4,"ngIf"],["class","column70",4,"ngIf"],["class","column98",4,"ngIf"],["class","column112",4,"ngIf"],["class","column112",4,"ngFor","ngForOf"],[1,"header"],["class","center","colspan","6",4,"ngIf"],["class","center","colspan","4",4,"ngIf"],["class","center",4,"ngIf"],[1,"icon-down-dir",3,"ngClass"],["class","right",4,"ngIf"],["class","center","colspan","2",4,"ngIf"],[4,"ngFor","ngForOf"],[3,"visible","translations","branchCoverageAvailable","methodCoverageAvailable","metrics","showLineCoverage","showBranchCoverage","showMethodCoverage","visibleMetrics","visibleChange","showLineCoverageChange","showBranchCoverageChange","showMethodCoverageChange","visibleMetricsChange"],[3,"ngModel","ngModelChange"],["value",""],[3,"value",4,"ngFor","ngForOf"],[3,"value"],["value","allChanges"],["value","lineCoverageIncreaseOnly"],["value","lineCoverageDecreaseOnly"],["value","branchCoverageIncreaseOnly",4,"ngIf"],["value","branchCoverageDecreaseOnly",4,"ngIf"],["value","methodCoverageIncreaseOnly",4,"ngIf"],["value","methodCoverageDecreaseOnly",4,"ngIf"],["value","branchCoverageIncreaseOnly"],["value","branchCoverageDecreaseOnly"],["value","methodCoverageIncreaseOnly"],["value","methodCoverageDecreaseOnly"],[1,"column90"],[1,"column105"],[1,"column100"],[1,"column70"],[1,"column98"],[1,"column112"],["colspan","6",1,"center"],["colspan","4",1,"center"],["colspan","2",1,"center"],["target","_blank",3,"href"],[1,"icon-info-circled"],["codeelement-row","",3,"element","collapsed","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics",4,"ngIf"],["codeelement-row","",3,"element","collapsed","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics"],["class-row","",3,"clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics","historyComparisionDate",4,"ngIf"],["class-row","",3,"clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics","historyComparisionDate"],["codeelement-row","",1,"namespace",3,"element","collapsed","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics"],["class","namespace","class-row","",3,"clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics","historyComparisionDate",4,"ngIf"],["class-row","",1,"namespace",3,"clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics","historyComparisionDate"]],template:function(r,o){1&r&&C(0,QF,73,51,"div",0),2&r&&g("ngIf",o.codeElements.length>0)},dependencies:[Yo,zr,Zn,od,sd,Xo,ed,ii,oa,oi,VO,iR,KR],encapsulation:2}),t})();class KF{constructor(){this.assembly="",this.numberOfRiskHotspots=10,this.filter="",this.sortBy="",this.sortOrder="asc"}}function JF(e,t){if(1&e&&(y(0,"option",15),b(1),v()),2&e){const n=t.$implicit;g("value",n),f(1),x(n)}}function XF(e,t){if(1&e&&(y(0,"span"),b(1),v()),2&e){const n=_(2);f(1),x(n.translations.top)}}function eP(e,t){1&e&&(y(0,"option",22),b(1,"20"),v())}function tP(e,t){1&e&&(y(0,"option",23),b(1,"50"),v())}function nP(e,t){1&e&&(y(0,"option",24),b(1,"100"),v())}function rP(e,t){if(1&e&&(y(0,"option",15),b(1),v()),2&e){const n=_(3);g("value",n.totalNumberOfRiskHotspots),f(1),x(n.translations.all)}}function oP(e,t){if(1&e){const n=De();y(0,"select",16),F("ngModelChange",function(o){return G(n),q(_(2).settings.numberOfRiskHotspots=o)}),y(1,"option",17),b(2,"10"),v(),C(3,eP,2,0,"option",18),C(4,tP,2,0,"option",19),C(5,nP,2,0,"option",20),C(6,rP,2,2,"option",21),v()}if(2&e){const n=_(2);g("ngModel",n.settings.numberOfRiskHotspots),f(3),g("ngIf",n.totalNumberOfRiskHotspots>10),f(1),g("ngIf",n.totalNumberOfRiskHotspots>20),f(1),g("ngIf",n.totalNumberOfRiskHotspots>50),f(1),g("ngIf",n.totalNumberOfRiskHotspots>100)}}function iP(e,t){1&e&&N(0,"col",25)}const ha=function(e,t,n){return{"icon-up-dir_active":e,"icon-down-dir_active":t,"icon-down-dir":n}};function sP(e,t){if(1&e){const n=De();y(0,"th")(1,"a",12),F("click",function(o){const s=G(n).index;return q(_(2).updateSorting(""+s,o))}),N(2,"i",13),b(3),v(),y(4,"a",26),N(5,"i",27),v()()}if(2&e){const n=t.$implicit,r=t.index,o=_(2);f(2),g("ngClass",xe(3,ha,o.settings.sortBy===""+r&&"desc"===o.settings.sortOrder,o.settings.sortBy===""+r&&"asc"===o.settings.sortOrder,o.settings.sortBy!==""+r)),f(1),x(n.name),f(1),bn("href",n.explanationUrl,wn)}}const aP=function(e,t){return{lightred:e,lightgreen:t}};function lP(e,t){if(1&e&&(y(0,"td",31),b(1),v()),2&e){const n=t.$implicit;g("ngClass",Uc(2,aP,n.exceeded,!n.exceeded)),f(1),x(n.value)}}function cP(e,t){if(1&e&&(y(0,"tr")(1,"td"),b(2),v(),y(3,"td")(4,"a",28),b(5),v()(),y(6,"td",29)(7,"a",28),b(8),v()(),C(9,lP,2,5,"td",30),v()),2&e){const n=t.$implicit,r=_(2);f(2),x(n.assembly),f(2),g("href",n.reportPath+r.queryString,wn),f(1),x(n.class),f(1),g("title",n.methodName),f(1),g("href",n.reportPath+r.queryString+"#file"+n.fileIndex+"_line"+n.line,wn),f(1),z(" ",n.methodShortName," "),f(1),g("ngForOf",n.metrics)}}function uP(e,t){if(1&e){const n=De();y(0,"div")(1,"div",1)(2,"div")(3,"select",2),F("ngModelChange",function(o){return G(n),q(_().settings.assembly=o)})("ngModelChange",function(){return G(n),q(_().updateRiskHotpots())}),y(4,"option",3),b(5),v(),C(6,JF,2,2,"option",4),v()(),y(7,"div",5),C(8,XF,2,1,"span",0),C(9,oP,7,5,"select",6),v(),N(10,"div",5),y(11,"div",7)(12,"span"),b(13),v(),y(14,"input",8),F("ngModelChange",function(o){return G(n),q(_().settings.filter=o)})("ngModelChange",function(){return G(n),q(_().updateRiskHotpots())}),v()()(),y(15,"div",9)(16,"table",10)(17,"colgroup"),N(18,"col")(19,"col")(20,"col"),C(21,iP,1,0,"col",11),v(),y(22,"thead")(23,"tr")(24,"th")(25,"a",12),F("click",function(o){return G(n),q(_().updateSorting("assembly",o))}),N(26,"i",13),b(27),v()(),y(28,"th")(29,"a",12),F("click",function(o){return G(n),q(_().updateSorting("class",o))}),N(30,"i",13),b(31),v()(),y(32,"th")(33,"a",12),F("click",function(o){return G(n),q(_().updateSorting("method",o))}),N(34,"i",13),b(35),v()(),C(36,sP,6,7,"th",14),v()(),y(37,"tbody"),C(38,cP,10,7,"tr",14),function h_(e,t){const n=ee();let r;const o=e+W;n.firstCreatePass?(r=function YM(e,t){if(t)for(let n=t.length-1;n>=0;n--){const r=t[n];if(e===r.name)return r}}(t,n.pipeRegistry),n.data[o]=r,r.onDestroy&&(n.destroyHooks??=[]).push(o,r.onDestroy)):r=n.data[o];const i=r.factory||(r.factory=kn(r.type)),a=Ke(M);try{const l=Oi(!1),c=i();return Oi(l),function T0(e,t,n,r){n>=e.data.length&&(e.data[n]=null,e.blueprint[n]=null),t[n]=r}(n,E(),o,c),c}finally{Ke(a)}}(39,"slice"),v()()()()}if(2&e){const n=_();f(3),g("ngModel",n.settings.assembly),f(2),x(n.translations.assembly),f(1),g("ngForOf",n.assemblies),f(2),g("ngIf",n.totalNumberOfRiskHotspots>10),f(1),g("ngIf",n.totalNumberOfRiskHotspots>10),f(4),z("",n.translations.filter," "),f(1),g("ngModel",n.settings.filter),f(7),g("ngForOf",n.riskHotspotMetrics),f(5),g("ngClass",xe(20,ha,"assembly"===n.settings.sortBy&&"desc"===n.settings.sortOrder,"assembly"===n.settings.sortBy&&"asc"===n.settings.sortOrder,"assembly"!==n.settings.sortBy)),f(1),x(n.translations.assembly),f(3),g("ngClass",xe(24,ha,"class"===n.settings.sortBy&&"desc"===n.settings.sortOrder,"class"===n.settings.sortBy&&"asc"===n.settings.sortOrder,"class"!==n.settings.sortBy)),f(1),x(n.translations.class),f(3),g("ngClass",xe(28,ha,"method"===n.settings.sortBy&&"desc"===n.settings.sortOrder,"method"===n.settings.sortBy&&"asc"===n.settings.sortOrder,"method"!==n.settings.sortBy)),f(1),x(n.translations.method),f(1),g("ngForOf",n.riskHotspotMetrics),f(2),g("ngForOf",p_(39,16,n.riskHotspots,0,n.settings.numberOfRiskHotspots))}}let dP=(()=>{var e;class t{constructor(r){this.queryString="",this.riskHotspotMetrics=[],this.riskHotspots=[],this.totalNumberOfRiskHotspots=0,this.assemblies=[],this.translations={},this.settings=new KF,this.window=r.nativeWindow}ngOnInit(){this.riskHotspotMetrics=this.window.riskHotspotMetrics,this.translations=this.window.translations,void 0!==this.window.history&&void 0!==this.window.history.replaceState&&null!==this.window.history.state&&null!=this.window.history.state.riskHotspotsSettings&&(console.log("Risk hotspots: Restoring from history",this.window.history.state.riskHotspotsSettings),this.settings=JSON.parse(JSON.stringify(this.window.history.state.riskHotspotsSettings)));const r=window.location.href.indexOf("?");r>-1&&(this.queryString=window.location.href.substring(r)),this.updateRiskHotpots()}onDonBeforeUnlodad(){if(void 0!==this.window.history&&void 0!==this.window.history.replaceState){console.log("Risk hotspots: Updating history",this.settings);let r=new dC;null!==window.history.state&&(r=JSON.parse(JSON.stringify(this.window.history.state))),r.riskHotspotsSettings=JSON.parse(JSON.stringify(this.settings)),window.history.replaceState(r,"")}}updateRiskHotpots(){const r=this.window.riskHotspots;if(this.totalNumberOfRiskHotspots=r.length,0===this.assemblies.length){let a=[];for(let l=0;l0)},dependencies:[Yo,zr,Zn,od,sd,Xo,ii,oa,oi,jv],encapsulation:2}),t})(),fP=(()=>{var e;class t{}return(e=t).\u0275fac=function(r){return new(r||e)},e.\u0275mod=pn({type:e,bootstrap:[dP,YF]}),e.\u0275inj=Gt({providers:[cd],imports:[px,SO]}),t})();fx().bootstrapModule(fP).catch(e=>console.error(e))}},_e=>{_e(_e.s=538)}]); \ No newline at end of file +"use strict";(self.webpackChunkcoverage_app=self.webpackChunkcoverage_app||[]).push([[179],{316:()=>{let Me=null,hr=1;function we(e){const n=Me;return Me=e,n}function Nf(e){if((!yo(e)||e.dirty)&&(e.dirty||e.lastCleanEpoch!==hr)){if(!e.producerMustRecompute(e)&&!sl(e))return e.dirty=!1,void(e.lastCleanEpoch=hr);e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=hr}}function sl(e){pr(e);for(let n=0;n0}function pr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let Vf=null;function xe(e){return"function"==typeof e}function jf(e){const t=e(r=>{Error.call(r),r.stack=(new Error).stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}const cl=jf(e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((r,o)=>`${o+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t});function ul(e,n){if(e){const t=e.indexOf(n);0<=t&&e.splice(t,1)}}class kt{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._teardowns=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const i of t)i.remove(this);else t.remove(this);const{initialTeardown:r}=this;if(xe(r))try{r()}catch(i){n=i instanceof cl?i.errors:[i]}const{_teardowns:o}=this;if(o){this._teardowns=null;for(const i of o)try{zf(i)}catch(s){n=n??[],s instanceof cl?n=[...n,...s.errors]:n.push(s)}}if(n)throw new cl(n)}}add(n){var t;if(n&&n!==this)if(this.closed)zf(n);else{if(n instanceof kt){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._teardowns=null!==(t=this._teardowns)&&void 0!==t?t:[]).push(n)}}_hasParent(n){const{_parentage:t}=this;return t===n||Array.isArray(t)&&t.includes(n)}_addParent(n){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(n),t):t?[t,n]:n}_removeParent(n){const{_parentage:t}=this;t===n?this._parentage=null:Array.isArray(t)&&ul(t,n)}remove(n){const{_teardowns:t}=this;t&&ul(t,n),n instanceof kt&&n._removeParent(this)}}kt.EMPTY=(()=>{const e=new kt;return e.closed=!0,e})();const $f=kt.EMPTY;function Uf(e){return e instanceof kt||e&&"closed"in e&&xe(e.remove)&&xe(e.add)&&xe(e.unsubscribe)}function zf(e){xe(e)?e():e.unsubscribe()}const Hn={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},ji={setTimeout(...e){const{delegate:n}=ji;return(n?.setTimeout||setTimeout)(...e)},clearTimeout(e){const{delegate:n}=ji;return(n?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Gf(e){ji.setTimeout(()=>{const{onUnhandledError:n}=Hn;if(!n)throw e;n(e)})}function $i(){}const Cw=dl("C",void 0,void 0);function dl(e,n,t){return{kind:e,value:n,error:t}}let Bn=null;function Ui(e){if(Hn.useDeprecatedSynchronousErrorHandling){const n=!Bn;if(n&&(Bn={errorThrown:!1,error:null}),e(),n){const{errorThrown:t,error:r}=Bn;if(Bn=null,t)throw r}}else e()}class fl extends kt{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,Uf(n)&&n.add(this)):this.destination=Ew}static create(n,t,r){return new hl(n,t,r)}next(n){this.isStopped?gl(function ww(e){return dl("N",e,void 0)}(n),this):this._next(n)}error(n){this.isStopped?gl(function Dw(e){return dl("E",void 0,e)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?gl(Cw,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(n){this.destination.next(n)}_error(n){try{this.destination.error(n)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}class hl extends fl{constructor(n,t,r){let o;if(super(),xe(n))o=n;else if(n){let i;({next:o,error:t,complete:r}=n),this&&Hn.useDeprecatedNextContext?(i=Object.create(n),i.unsubscribe=()=>this.unsubscribe()):i=n,o=o?.bind(i),t=t?.bind(i),r=r?.bind(i)}this.destination={next:o?pl(o):$i,error:pl(t??qf),complete:r?pl(r):$i}}}function pl(e,n){return(...t)=>{try{e(...t)}catch(r){Hn.useDeprecatedSynchronousErrorHandling?function bw(e){Hn.useDeprecatedSynchronousErrorHandling&&Bn&&(Bn.errorThrown=!0,Bn.error=e)}(r):Gf(r)}}}function qf(e){throw e}function gl(e,n){const{onStoppedNotification:t}=Hn;t&&ji.setTimeout(()=>t(e,n))}const Ew={closed:!0,next:$i,error:qf,complete:$i},ml="function"==typeof Symbol&&Symbol.observable||"@@observable";function vl(e){return e}let Ke=(()=>{class e{constructor(t){t&&(this._subscribe=t)}lift(t){const r=new e;return r.source=this,r.operator=t,r}subscribe(t,r,o){const i=function Mw(e){return e&&e instanceof fl||function Iw(e){return e&&xe(e.next)&&xe(e.error)&&xe(e.complete)}(e)&&Uf(e)}(t)?t:new hl(t,r,o);return Ui(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(t){try{return this._subscribe(t)}catch(r){t.error(r)}}forEach(t,r){return new(r=Zf(r))((o,i)=>{let s;s=this.subscribe(a=>{try{t(a)}catch(l){i(l),s?.unsubscribe()}},i,o)})}_subscribe(t){var r;return null===(r=this.source)||void 0===r?void 0:r.subscribe(t)}[ml](){return this}pipe(...t){return function Wf(e){return 0===e.length?vl:1===e.length?e[0]:function(t){return e.reduce((r,o)=>o(r),t)}}(t)(this)}toPromise(t){return new(t=Zf(t))((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=n=>new e(n),e})();function Zf(e){var n;return null!==(n=e??Hn.Promise)&&void 0!==n?n:Promise}const Sw=jf(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let zi=(()=>{class e extends Ke{constructor(){super(),this.closed=!1,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){const r=new Qf(this,this);return r.operator=t,r}_throwIfClosed(){if(this.closed)throw new Sw}next(t){Ui(()=>{if(this._throwIfClosed(),!this.isStopped){const r=this.observers.slice();for(const o of r)o.next(t)}})}error(t){Ui(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;const{observers:r}=this;for(;r.length;)r.shift().error(t)}})}complete(){Ui(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:t}=this;for(;t.length;)t.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=null}get observed(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){const{hasError:r,isStopped:o,observers:i}=this;return r||o?$f:(i.push(t),new kt(()=>ul(i,t)))}_checkFinalizedStatuses(t){const{hasError:r,thrownError:o,isStopped:i}=this;r?t.error(o):i&&t.complete()}asObservable(){const t=new Ke;return t.source=this,t}}return e.create=(n,t)=>new Qf(n,t),e})();class Qf extends zi{constructor(n,t){super(),this.destination=n,this.source=t}next(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,n)}error(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,n)}complete(){var n,t;null===(t=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===t||t.call(n)}_subscribe(n){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(n))&&void 0!==r?r:$f}}function mn(e){return n=>{if(function Tw(e){return xe(e?.lift)}(n))return n.lift(function(t){try{return e(t,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}class Xt extends fl{constructor(n,t,r,o,i){super(n),this.onFinalize=i,this._next=t?function(s){try{t(s)}catch(a){n.error(a)}}:super._next,this._error=o?function(s){try{o(s)}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(s){n.error(s)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;const{closed:t}=this;super.unsubscribe(),!t&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}function _l(e,n){return mn((t,r)=>{let o=0;t.subscribe(new Xt(r,i=>{r.next(e.call(n,i,o++))}))})}function jn(e){return this instanceof jn?(this.v=e,this):new jn(e)}function Ow(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=function Jf(e){var n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(i){t[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}const Xf=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function eh(e){return xe(e?.then)}function th(e){return xe(e[ml])}function nh(e){return Symbol.asyncIterator&&xe(e?.[Symbol.asyncIterator])}function rh(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const oh=function Fw(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function ih(e){return xe(e?.[oh])}function sh(e){return function xw(e,n,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,r=t.apply(e,n||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(h){r[h]&&(o[h]=function(p){return new Promise(function(m,C){i.push([h,p,m,C])>1||a(h,p)})})}function a(h,p){try{!function l(h){h.value instanceof jn?Promise.resolve(h.value.v).then(c,u):d(i[0][2],h)}(r[h](p))}catch(m){d(i[0][3],m)}}function c(h){a("next",h)}function u(h){a("throw",h)}function d(h,p){h(p),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const t=e.getReader();try{for(;;){const{value:r,done:o}=yield jn(t.read());if(o)return yield jn(void 0);yield yield jn(r)}}finally{t.releaseLock()}})}function ah(e){return xe(e?.getReader)}function vn(e){if(e instanceof Ke)return e;if(null!=e){if(th(e))return function Pw(e){return new Ke(n=>{const t=e[ml]();if(xe(t.subscribe))return t.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Xf(e))return function kw(e){return new Ke(n=>{for(let t=0;t{e.then(t=>{n.closed||(n.next(t),n.complete())},t=>n.error(t)).then(null,Gf)})}(e);if(nh(e))return lh(e);if(ih(e))return function Vw(e){return new Ke(n=>{for(const t of e)if(n.next(t),n.closed)return;n.complete()})}(e);if(ah(e))return function Hw(e){return lh(sh(e))}(e)}throw rh(e)}function lh(e){return new Ke(n=>{(function Bw(e,n){var t,r,o,i;return function Aw(e,n,t,r){return new(t||(t=Promise))(function(i,s){function a(u){try{c(r.next(u))}catch(d){s(d)}}function l(u){try{c(r.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof t?i:new t(function(s){s(i)})}(u.value).then(a,l)}c((r=r.apply(e,n||[])).next())})}(this,void 0,void 0,function*(){try{for(t=Ow(e);!(r=yield t.next()).done;)if(n.next(r.value),n.closed)return}catch(s){o={error:s}}finally{try{r&&!r.done&&(i=t.return)&&(yield i.call(t))}finally{if(o)throw o.error}}n.complete()})})(e,n).catch(t=>n.error(t))})}function _n(e,n,t,r=0,o=!1){const i=n.schedule(function(){t(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function ch(e,n,t=1/0){return xe(n)?ch((r,o)=>_l((i,s)=>n(r,i,o,s))(vn(e(r,o))),t):("number"==typeof n&&(t=n),mn((r,o)=>function jw(e,n,t,r,o,i,s,a){const l=[];let c=0,u=0,d=!1;const h=()=>{d&&!l.length&&!c&&n.complete()},p=C=>c{i&&n.next(C),c++;let E=!1;vn(t(C,u++)).subscribe(new Xt(n,T=>{o?.(T),i?p(T):n.next(T)},()=>{E=!0},void 0,()=>{if(E)try{for(c--;l.length&&cm(T)):m(T)}h()}catch(T){n.error(T)}}))};return e.subscribe(new Xt(n,p,()=>{d=!0,h()})),()=>{a?.()}}(r,o,e,t)))}const Cl=new Ke(e=>e.complete());function Dl(e){return e[e.length-1]}function uh(e){return function zw(e){return e&&xe(e.schedule)}(Dl(e))?e.pop():void 0}function dh(e,n=0){return mn((t,r)=>{t.subscribe(new Xt(r,o=>_n(r,e,()=>r.next(o),n),()=>_n(r,e,()=>r.complete(),n),o=>_n(r,e,()=>r.error(o),n)))})}function fh(e,n=0){return mn((t,r)=>{r.add(e.schedule(()=>t.subscribe(r),n))})}function hh(e,n){if(!e)throw new Error("Iterable cannot be null");return new Ke(t=>{_n(t,n,()=>{const r=e[Symbol.asyncIterator]();_n(t,n,()=>{r.next().then(o=>{o.done?t.complete():t.next(o.value)})},0,!0)})})}function Gi(e,n){return n?function Jw(e,n){if(null!=e){if(th(e))return function Ww(e,n){return vn(e).pipe(fh(n),dh(n))}(e,n);if(Xf(e))return function Qw(e,n){return new Ke(t=>{let r=0;return n.schedule(function(){r===e.length?t.complete():(t.next(e[r++]),t.closed||this.schedule())})})}(e,n);if(eh(e))return function Zw(e,n){return vn(e).pipe(fh(n),dh(n))}(e,n);if(nh(e))return hh(e,n);if(ih(e))return function Yw(e,n){return new Ke(t=>{let r;return _n(t,n,()=>{r=e[oh](),_n(t,n,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){return void t.error(s)}i?t.complete():t.next(o)},0,!0)}),()=>xe(r?.return)&&r.return()})}(e,n);if(ah(e))return function Kw(e,n){return hh(sh(e),n)}(e,n)}throw rh(e)}(e,n):vn(e)}function Xw(...e){const n=uh(e),t=function qw(e,n){return"number"==typeof Dl(e)?e.pop():n}(e,1/0),r=e;return r.length?1===r.length?vn(r[0]):function $w(e=1/0){return ch(vl,e)}(t)(Gi(r,n)):Cl}class eb extends zi{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const t=super._subscribe(n);return!t.closed&&n.next(this._value),t}getValue(){const{hasError:n,thrownError:t,_value:r}=this;if(n)throw t;return this._throwIfClosed(),r}next(n){super.next(this._value=n)}}function ph(e={}){const{connector:n=(()=>new zi),resetOnError:t=!0,resetOnComplete:r=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const h=()=>{a?.unsubscribe(),a=null},p=()=>{h(),s=l=null,u=d=!1},m=()=>{const C=s;p(),C?.unsubscribe()};return mn((C,E)=>{c++,!d&&!u&&h();const T=l=l??n();E.add(()=>{c--,0===c&&!d&&!u&&(a=wl(m,o))}),T.subscribe(E),s||(s=new hl({next:D=>T.next(D),error:D=>{d=!0,h(),a=wl(p,t,D),T.error(D)},complete:()=>{u=!0,h(),a=wl(p,r),T.complete()}}),Gi(C).subscribe(s))})(i)}}function wl(e,n,...t){return!0===n?(e(),null):!1===n?null:n(...t).pipe(function nb(e){return e<=0?()=>Cl:mn((n,t)=>{let r=0;n.subscribe(new Xt(t,o=>{++r<=e&&(t.next(o),e<=r&&t.complete())}))})}(1)).subscribe(()=>e())}function ib(e,n){return e===n}function ae(e){for(let n in e)if(e[n]===ae)return n;throw Error("Could not find renamed property on target object.")}function qi(e,n){for(const t in n)n.hasOwnProperty(t)&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function Oe(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(Oe).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const n=e.toString();if(null==n)return""+n;const t=n.indexOf("\n");return-1===t?n:n.substring(0,t)}function bl(e,n){return null==e||""===e?null===n?"":n:null==n||""===n?e:e+" "+n}const sb=ae({__forward_ref__:ae});function de(e){return e.__forward_ref__=de,e.toString=function(){return Oe(this())},e}function F(e){return Wi(e)?e():e}function Wi(e){return"function"==typeof e&&e.hasOwnProperty(sb)&&e.__forward_ref__===de}function El(e){return e&&!!e.\u0275providers}const gh="https://g.co/ng/security#xss";class S extends Error{constructor(n,t){super(function gr(e,n){return`NG0${Math.abs(e)}${n?": "+n:""}`}(n,t)),this.code=n}}const Co=ae({\u0275cmp:ae}),Il=ae({\u0275dir:ae}),Ml=ae({\u0275pipe:ae}),mh=ae({\u0275mod:ae}),en=ae({\u0275fac:ae}),Do=ae({__NG_ELEMENT_ID__:ae}),vh=ae({__NG_ENV_ID__:ae});function B(e){return"string"==typeof e?e:null==e?"":String(e)}function Sl(e,n){throw new S(-201,!1)}function at(e,n){null==e&&function R(e,n,t,r){throw new Error(`ASSERTION ERROR: ${e}`+(null==r?"":` [Expected=> ${t} ${r} ${n} <=Actual]`))}(n,e,null,"!=")}function te(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function tn(e){return{providers:e.providers||[],imports:e.imports||[]}}function Zi(e){return _h(e,Yi)||_h(e,yh)}function _h(e,n){return e.hasOwnProperty(n)?e[n]:null}function Qi(e){return e&&(e.hasOwnProperty(Tl)||e.hasOwnProperty(pb))?e[Tl]:null}const Yi=ae({\u0275prov:ae}),Tl=ae({\u0275inj:ae}),yh=ae({ngInjectableDef:ae}),pb=ae({ngInjectorDef:ae});var J=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}(J||{});let Al;function lt(e){const n=Al;return Al=e,n}function Dh(e,n,t){const r=Zi(e);return r&&"root"==r.providedIn?void 0===r.value?r.value=r.factory():r.value:t&J.Optional?null:void 0!==n?n:void Sl(Oe(e))}const fe=globalThis;class O{constructor(n,t){this._desc=n,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=te({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const wo={},Fl="__NG_DI_FLAG__",Ki="ngTempTokenPath",vb=/\n/gm,bh="__source";let mr;function Cn(e){const n=mr;return mr=e,n}function Cb(e,n=J.Default){if(void 0===mr)throw new S(-203,!1);return null===mr?Dh(e,void 0,n):mr.get(e,n&J.Optional?null:void 0,n)}function ee(e,n=J.Default){return(function Ch(){return Al}()||Cb)(F(e),n)}function oe(e,n=J.Default){return ee(e,Ji(n))}function Ji(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Pl(e){const n=[];for(let t=0;tn){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const p=8&r?h:null;if(p&&-1!==Ih(p,c,0)||2&r&&c!==h){if(St(r))return!1;s=!0}}}}else{if(!s&&!St(r)&&!St(l))return!1;if(s&&St(l))continue;s=!1,r=l|1&r}}return St(r)||s}function St(e){return 0==(1&e)}function Sb(e,n,t,r){if(null===n)return-1;let o=0;if(r||!t){let i=!1;for(;o-1)for(t++;t0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""!==o&&!St(s)&&(n+=Oh(i,o),o=""),r=s,i=i||!St(r);t++}return""!==o&&(n+=Oh(i,o)),n}function rn(e){return nn(()=>{const n=Fh(e),t={...n,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===Xi.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Mt.Emulated,styles:e.styles||ne,_:null,schemas:e.schemas||null,tView:null,id:""};Ph(t);const r=e.dependencies;return t.directiveDefs=es(r,!1),t.pipeDefs=es(r,!0),t.id=function Vb(e){let n=0;const t=[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(const o of t)n=Math.imul(31,n)+o.charCodeAt(0)<<0;return n+=2147483648,"c"+n}(t),t})}function Pb(e){return Z(e)||ke(e)}function kb(e){return null!==e}function Dn(e){return nn(()=>({type:e.type,bootstrap:e.bootstrap||ne,declarations:e.declarations||ne,imports:e.imports||ne,exports:e.exports||ne,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function Rh(e,n){if(null==e)return Lt;const t={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),t[o]=r,n&&(n[o]=i)}return t}function $(e){return nn(()=>{const n=Fh(e);return Ph(n),n})}function ct(e){return{type:e.type,name:e.name,factory:null,pure:!1!==e.pure,standalone:!0===e.standalone,onDestroy:e.type.prototype.ngOnDestroy||null}}function Z(e){return e[Co]||null}function ke(e){return e[Il]||null}function ze(e){return e[Ml]||null}function Fh(e){const n={};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:n,inputTransforms:null,inputConfig:e.inputs||Lt,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||ne,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:Rh(e.inputs,n),outputs:Rh(e.outputs),debugInfo:null}}function Ph(e){e.features?.forEach(n=>n(e))}function es(e,n){if(!e)return null;const t=n?ze:Pb;return()=>("function"==typeof e?e():e).map(r=>t(r)).filter(kb)}const be=0,I=1,L=2,_e=3,Tt=4,We=5,Vt=6,vr=7,he=8,Je=9,_r=10,j=11,Io=12,kh=13,yr=14,De=15,Mo=16,Cr=17,Ht=18,So=19,Lh=20,wn=21,ts=22,Un=23,V=25,Ll=1,Vh=2,Vl=6,Bt=7,Dr=9,Se=11;function Ge(e){return Array.isArray(e)&&"object"==typeof e[Ll]}function je(e){return Array.isArray(e)&&!0===e[Ll]}function Hl(e){return 0!=(4&e.flags)}function zn(e){return e.componentOffset>-1}function rs(e){return 1==(1&e.flags)}function At(e){return!!e.template}function Bl(e){return 0!=(512&e[L])}function Gn(e,n){return e.hasOwnProperty(en)?e[en]:null}class $b{constructor(n,t,r){this.previousValue=n,this.currentValue=t,this.firstChange=r}isFirstChange(){return this.firstChange}}function on(){return $h}function $h(e){return e.type.prototype.ngOnChanges&&(e.setInput=zb),Ub}function Ub(){const e=zh(this),n=e?.current;if(n){const t=e.previous;if(t===Lt)e.previous=n;else for(let r in n)t[r]=n[r];e.current=null,this.ngOnChanges(n)}}function zb(e,n,t,r){const o=this.declaredInputs[t],i=zh(e)||function Gb(e,n){return e[Uh]=n}(e,{previous:Lt,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new $b(l&&l.currentValue,n,a===Lt),e[r]=n}on.ngInherit=!0;const Uh="__ngSimpleChanges__";function zh(e){return e[Uh]||null}const jt=function(e,n,t){};function pe(e){for(;Array.isArray(e);)e=e[be];return e}function Ao(e,n){return pe(n[e])}function Xe(e,n){return pe(n[e.index])}function No(e,n){return e.data[n]}function pt(e,n){const t=n[e];return Ge(t)?t:t[be]}function Gl(e){return 128==(128&e[L])}function $t(e,n){return null==n?null:e[n]}function Wh(e){e[Cr]=0}function Yb(e){1024&e[L]||(e[L]|=1024,Gl(e)&&os(e))}function Qh(e){9216&e[L]&&os(e)}function os(e){let n=e[_e];for(;null!==n&&!(je(n)&&n[Vl]||Ge(n)&&8192&n[L]);){if(je(n))n[Vl]=!0;else if(n[L]|=8192,!Gl(n))break;n=n[_e]}}const H={lFrame:ip(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function Kh(){return H.bindingsEnabled}function w(){return H.lFrame.lView}function X(){return H.lFrame.tView}function q(e){return H.lFrame.contextLView=e,e[he]}function W(e){return H.lFrame.contextLView=null,e}function ce(){let e=Jh();for(;null!==e&&64===e.type;)e=e.parent;return e}function Jh(){return H.lFrame.currentTNode}function Ut(e,n){const t=H.lFrame;t.currentTNode=e,t.isParent=n}function Wl(){return H.lFrame.isParent}function Zl(){H.lFrame.isParent=!1}function et(){const e=H.lFrame;let n=e.bindingRootIndex;return-1===n&&(n=e.bindingRootIndex=e.tView.bindingStartIndex),n}function zt(){return H.lFrame.bindingIndex++}function an(e){const n=H.lFrame,t=n.bindingIndex;return n.bindingIndex=n.bindingIndex+e,t}function aE(e,n){const t=H.lFrame;t.bindingIndex=t.bindingRootIndex=e,Ql(n)}function Ql(e){H.lFrame.currentDirectiveIndex=e}function Kl(e){H.lFrame.currentQueryIndex=e}function cE(e){const n=e[I];return 2===n.type?n.declTNode:1===n.type?e[We]:null}function rp(e,n,t){if(t&J.SkipSelf){let o=n,i=e;for(;!(o=o.parent,null!==o||t&J.Host||(o=cE(i),null===o||(i=i[yr],10&o.type))););if(null===o)return!1;n=o,e=i}const r=H.lFrame=op();return r.currentTNode=n,r.lView=e,!0}function Jl(e){const n=op(),t=e[I];H.lFrame=n,n.currentTNode=t.firstChild,n.lView=e,n.tView=t,n.contextLView=e,n.bindingIndex=t.bindingStartIndex,n.inI18n=!1}function op(){const e=H.lFrame,n=null===e?null:e.child;return null===n?ip(e):n}function ip(e){const n={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 null!==e&&(e.child=n),n}function sp(){const e=H.lFrame;return H.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const ap=sp;function Xl(){const e=sp();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 tt(){return H.lFrame.selectedIndex}function qn(e){H.lFrame.selectedIndex=e}function ve(){const e=H.lFrame;return No(e.tView,e.selectedIndex)}let up=!0;function ss(){return up}function bn(e){up=e}function as(e,n){for(let t=n.directiveStart,r=n.directiveEnd;t=r)break}else n[l]<0&&(e[Cr]+=65536),(a>14>16&&(3&e[L])===n&&(e[L]+=16384,fp(a,i)):fp(a,i)}const Er=-1;class Oo{constructor(n,t,r){this.factory=n,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=r}}function nc(e){return e!==Er}function Ro(e){return 32767&e}function Fo(e,n){let t=function CE(e){return e>>16}(e),r=n;for(;t>0;)r=r[yr],t--;return r}let rc=!0;function us(e){const n=rc;return rc=e,n}const hp=255,pp=5;let DE=0;const Gt={};function ds(e,n){const t=gp(e,n);if(-1!==t)return t;const r=n[I];r.firstCreatePass&&(e.injectorIndex=n.length,oc(r.data,e),oc(n,null),oc(r.blueprint,null));const o=fs(e,n),i=e.injectorIndex;if(nc(o)){const s=Ro(o),a=Fo(o,n),l=a[I].data;for(let c=0;c<8;c++)n[i+c]=a[s+c]|l[s+c]}return n[i+8]=o,i}function oc(e,n){e.push(0,0,0,0,0,0,0,0,n)}function gp(e,n){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===n[e.injectorIndex+8]?-1:e.injectorIndex}function fs(e,n){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let t=0,r=null,o=n;for(;null!==o;){if(r=wp(o),null===r)return Er;if(t++,o=o[yr],-1!==r.injectorIndex)return r.injectorIndex|t<<16}return Er}function ic(e,n,t){!function wE(e,n,t){let r;"string"==typeof t?r=t.charCodeAt(0)||0:t.hasOwnProperty(Do)&&(r=t[Do]),null==r&&(r=t[Do]=DE++);const o=r&hp;n.data[e+(o>>pp)]|=1<=0?n&hp:ME:n}(t);if("function"==typeof i){if(!rp(n,e,r))return r&J.Host?mp(o,0,r):vp(n,t,r,o);try{let s;if(s=i(r),null!=s||r&J.Optional)return s;Sl()}finally{ap()}}else if("number"==typeof i){let s=null,a=gp(e,n),l=Er,c=r&J.Host?n[De][We]:null;for((-1===a||r&J.SkipSelf)&&(l=-1===a?fs(e,n):n[a+8],l!==Er&&Dp(r,!1)?(s=n[I],a=Ro(l),n=Fo(l,n)):a=-1);-1!==a;){const u=n[I];if(Cp(i,a,u.data)){const d=EE(a,n,t,s,r,c);if(d!==Gt)return d}l=n[a+8],l!==Er&&Dp(r,n[I].data[a+8]===c)&&Cp(i,a,n)?(s=u,a=Ro(l),n=Fo(l,n)):a=-1}}return o}function EE(e,n,t,r,o,i){const s=n[I],a=s.data[e+8],u=function hs(e,n,t,r,o){const i=e.providerIndexes,s=n.data,a=1048575&i,l=e.directiveStart,u=i>>20,h=o?a+u:e.directiveEnd;for(let p=r?a:a+u;p=l&&m.type===t)return p}if(o){const p=s[l];if(p&&At(p)&&p.type===t)return l}return null}(a,s,t,null==r?zn(a)&&rc:r!=s&&0!=(3&a.type),o&J.Host&&i===a);return null!==u?Wn(n,s,u,a):Gt}function Wn(e,n,t,r){let o=e[t];const i=n.data;if(function mE(e){return e instanceof Oo}(o)){const s=o;s.resolving&&function lb(e,n){const t=n?`. Dependency path: ${n.join(" > ")} > ${e}`:"";throw new S(-200,`Circular dependency in DI detected for ${e}${t}`)}(function re(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():B(e)}(i[t]));const a=us(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?lt(s.injectImpl):null;rp(e,r,J.Default);try{o=e[t]=s.factory(void 0,i,e,r),n.firstCreatePass&&t>=r.directiveStart&&function pE(e,n,t){const{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=n.type.prototype;if(r){const s=$h(n);(t.preOrderHooks??=[]).push(e,s),(t.preOrderCheckHooks??=[]).push(e,s)}o&&(t.preOrderHooks??=[]).push(0-e,o),i&&((t.preOrderHooks??=[]).push(e,i),(t.preOrderCheckHooks??=[]).push(e,i))}(t,i[t],n)}finally{null!==c&<(c),us(a),s.resolving=!1,ap()}}return o}function Cp(e,n,t){return!!(t[n+(e>>pp)]&1<{const n=e.prototype.constructor,t=n[en]||sc(n),r=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){const i=o[en]||sc(o);if(i&&i!==t)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function sc(e){return Wi(e)?()=>{const n=sc(F(e));return n&&n()}:Gn(e)}function wp(e){const n=e[I],t=n.type;return 2===t?n.declTNode:1===t?e[We]:null}const Tr="__parameters__";function Nr(e,n,t){return nn(()=>{const r=function lc(e){return function(...t){if(e){const r=e(...t);for(const o in r)this[o]=r[o]}}}(n);function o(...i){if(this instanceof o)return r.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(Tr)?l[Tr]:Object.defineProperty(l,Tr,{value:[]})[Tr];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return t&&(o.prototype=Object.create(t.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function Or(e,n){e.forEach(t=>Array.isArray(t)?Or(t,n):n(t))}function Ep(e,n,t){n>=e.length?e.push(t):e.splice(n,0,t)}function ps(e,n){return n>=e.length-1?e.pop():e.splice(n,1)[0]}function gt(e,n,t){let r=Rr(e,n);return r>=0?e[1|r]=t:(r=~r,function Ip(e,n,t,r){let o=e.length;if(o==n)e.push(t,r);else if(1===o)e.push(r,e[0]),e[0]=t;else{for(o--,e.push(e[o-1],e[o]);o>n;)e[o]=e[o-2],o--;e[n]=t,e[n+1]=r}}(e,r,n,t)),r}function uc(e,n){const t=Rr(e,n);if(t>=0)return e[1|t]}function Rr(e,n){return function Mp(e,n,t){let r=0,o=e.length>>t;for(;o!==r;){const i=r+(o-r>>1),s=e[i<n?o=i:r=i+1}return~(o<{t.push(s)};return Or(n,s=>{const a=s;_s(a,i,[],r)&&(o||=[],o.push(a))}),void 0!==o&&Rp(o,i),t}function Rp(e,n){for(let t=0;t{n(i,r)})}}function _s(e,n,t,r){if(!(e=F(e)))return!1;let o=null,i=Qi(e);const s=!i&&Z(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=Qi(l),!i)return!1;o=l}const a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)_s(c,n,t,r)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;r.add(o);try{Or(i.imports,u=>{_s(u,n,t,r)&&(c||=[],c.push(u))})}finally{}void 0!==c&&Rp(c,n)}if(!a){const c=Gn(o)||(()=>new o);n({provide:o,useFactory:c,deps:ne},o),n({provide:gc,useValue:o,multi:!0},o),n({provide:Vo,useValue:()=>ee(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;mc(l,u=>{n(u,c)})}}}return o!==e&&void 0!==e.providers}function mc(e,n){for(let t of e)El(t)&&(t=t.\u0275providers),Array.isArray(t)?mc(t,n):n(t)}const YE=ae({provide:String,useValue:ae});function vc(e){return null!==e&&"object"==typeof e&&YE in e}function Zn(e){return"function"==typeof e}const _c=new O("Set Injector scope."),ys={},JE={};let yc;function Cs(){return void 0===yc&&(yc=new vs),yc}class ln{}class Qn extends ln{get destroyed(){return this._destroyed}constructor(n,t,r,o){super(),this.parent=t,this.source=r,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,Dc(n,s=>this.processProvider(s)),this.records.set(Np,Pr(void 0,this)),o.has("environment")&&this.records.set(ln,Pr(void 0,this));const i=this.records.get(_c);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(gc,ne,J.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const t of this._ngOnDestroyHooks)t.ngOnDestroy();const n=this._onDestroyHooks;this._onDestroyHooks=[];for(const t of n)t()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(n){return this.assertNotDestroyed(),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){this.assertNotDestroyed();const t=Cn(this),r=lt(void 0);try{return n()}finally{Cn(t),lt(r)}}get(n,t=wo,r=J.Default){if(this.assertNotDestroyed(),n.hasOwnProperty(vh))return n[vh](this);r=Ji(r);const i=Cn(this),s=lt(void 0);try{if(!(r&J.SkipSelf)){let l=this.records.get(n);if(void 0===l){const c=function rI(e){return"function"==typeof e||"object"==typeof e&&e instanceof O}(n)&&Zi(n);l=c&&this.injectableDefInScope(c)?Pr(Cc(n),ys):null,this.records.set(n,l)}if(null!=l)return this.hydrate(n,l)}return(r&J.Self?Cs():this.parent).get(n,t=r&J.Optional&&t===wo?null:t)}catch(a){if("NullInjectorError"===a.name){if((a[Ki]=a[Ki]||[]).unshift(Oe(n)),i)throw a;return function wb(e,n,t,r){const o=e[Ki];throw n[bh]&&o.unshift(n[bh]),e.message=function bb(e,n,t,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=Oe(n);if(Array.isArray(n))o=n.map(Oe).join(" -> ");else if("object"==typeof n){let i=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):Oe(a)))}o=`{${i.join(", ")}}`}return`${t}${r?"("+r+")":""}[${o}]: ${e.replace(vb,"\n ")}`}("\n"+e.message,o,t,r),e.ngTokenPath=o,e[Ki]=null,e}(a,n,"R3InjectorError",this.source)}throw a}finally{lt(s),Cn(i)}}resolveInjectorInitializers(){const n=Cn(this),t=lt(void 0);try{const o=this.get(Vo,ne,J.Self);for(const i of o)i()}finally{Cn(n),lt(t)}}toString(){const n=[],t=this.records;for(const r of t.keys())n.push(Oe(r));return`R3Injector[${n.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new S(205,!1)}processProvider(n){let t=Zn(n=F(n))?n:F(n&&n.provide);const r=function eI(e){return vc(e)?Pr(void 0,e.useValue):Pr(kp(e),ys)}(n);if(Zn(n)||!0!==n.multi)this.records.get(t);else{let o=this.records.get(t);o||(o=Pr(void 0,ys,!0),o.factory=()=>Pl(o.multi),this.records.set(t,o)),t=n,o.multi.push(n)}this.records.set(t,r)}hydrate(n,t){return t.value===ys&&(t.value=JE,t.value=t.factory()),"object"==typeof t.value&&t.value&&function nI(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(t.value)&&this._ngOnDestroyHooks.add(t.value),t.value}injectableDefInScope(n){if(!n.providedIn)return!1;const t=F(n.providedIn);return"string"==typeof t?"any"===t||this.scopes.has(t):this.injectorDefTypes.has(t)}removeOnDestroy(n){const t=this._onDestroyHooks.indexOf(n);-1!==t&&this._onDestroyHooks.splice(t,1)}}function Cc(e){const n=Zi(e),t=null!==n?n.factory:Gn(e);if(null!==t)return t;if(e instanceof O)throw new S(204,!1);if(e instanceof Function)return function XE(e){const n=e.length;if(n>0)throw function ko(e,n){const t=[];for(let r=0;rt.factory(e):()=>new e}(e);throw new S(204,!1)}function kp(e,n,t){let r;if(Zn(e)){const o=F(e);return Gn(o)||Cc(o)}if(vc(e))r=()=>F(e.useValue);else if(function Pp(e){return!(!e||!e.useFactory)}(e))r=()=>e.useFactory(...Pl(e.deps||[]));else if(function Fp(e){return!(!e||!e.useExisting)}(e))r=()=>ee(F(e.useExisting));else{const o=F(e&&(e.useClass||e.provide));if(!function tI(e){return!!e.deps}(e))return Gn(o)||Cc(o);r=()=>new o(...Pl(e.deps))}return r}function Pr(e,n,t=!1){return{factory:e,value:n,multi:t?[]:void 0}}function Dc(e,n){for(const t of e)Array.isArray(t)?Dc(t,n):t&&El(t)?Dc(t.\u0275providers,n):n(t)}function Bp(e,n=null,t=null,r){const o=jp(e,n,t,r);return o.resolveInjectorInitializers(),o}function jp(e,n=null,t=null,r,o=new Set){const i=[t||ne,QE(e)];return r=r||("object"==typeof e?void 0:Oe(e)),new Qn(i,n||Cs(),r||null,o)}let Ec,Ct=(()=>{class e{static#e=this.THROW_IF_NOT_FOUND=wo;static#t=this.NULL=new vs;static create(t,r){if(Array.isArray(t))return Bp({name:""},r,t,"");{const o=t.name??"";return Bp({name:o},t.parent,t.providers,o)}}static#n=this.\u0275prov=te({token:e,providedIn:"any",factory:()=>ee(Np)});static#r=this.__NG_ELEMENT_ID__=-1}return e})();const ws=new O("AppId",{providedIn:"root",factory:()=>fI}),fI="ng",Up=new O("Platform Initializer"),kr=new O("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),zp=new O("CSP nonce",{providedIn:"root",factory:()=>function En(){if(void 0!==Ec)return Ec;if(typeof document<"u")return document;throw new S(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});function Ic(e){return e.ownerDocument.defaultView}function Ms(e){return 128==(128&e.flags)}var Sn=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(Sn||{});const DI=/^>|^->||--!>|)/g,bI="\u200b$1\u200b";const Nc=new Map;let EI=0;const Oc="__ngContext__";function Qe(e,n){Ge(n)?(e[Oc]=n[So],function MI(e){Nc.set(e[So],e)}(n)):e[Oc]=n}let Rc;function Fc(e,n){return Rc(e,n)}function Uo(e){const n=e[_e];return je(n)?n[_e]:n}function lg(e){return ug(e[Io])}function cg(e){return ug(e[Tt])}function ug(e){for(;null!==e&&!je(e);)e=e[Tt];return e}function Vr(e,n,t,r,o){if(null!=r){let i,s=!1;je(r)?i=r:Ge(r)&&(s=!0,r=r[be]);const a=pe(r);0===e&&null!==t?null==o?pg(n,t,a):Kn(n,t,a,o||null,!0):1===e&&null!==t?Kn(n,t,a,o||null,!0):2===e?function Rs(e,n,t){const r=xs(e,n);r&&function GI(e,n,t,r){e.removeChild(n,t,r)}(e,r,n,t)}(n,a,s):3===e&&n.destroyNode(a),null!=i&&function ZI(e,n,t,r,o){const i=t[Bt];i!==pe(t)&&Vr(n,e,r,i,o);for(let a=Se;an.replace(wI,bI))}(n))}function As(e,n,t){return e.createElement(n,t)}function fg(e,n){const t=e[Dr],r=t.indexOf(n);t.splice(r,1)}function zo(e,n){if(e.length<=Se)return;const t=Se+n,r=e[t];if(r){const o=r[Mo];null!==o&&o!==e&&fg(o,r),n>0&&(e[t-1][Tt]=r[Tt]);const i=ps(e,Se+n);!function LI(e,n){qo(e,n,n[j],2,null,null),n[be]=null,n[We]=null}(r[I],r);const s=i[Ht];null!==s&&s.detachView(i[I]),r[_e]=null,r[Tt]=null,r[L]&=-129}return r}function Ns(e,n){if(!(256&n[L])){const t=n[j];n[Un]&&function Pf(e){if(pr(e),yo(e))for(let n=0;n=0?r[s]():r[-s].unsubscribe(),i+=2}else t[i].call(r[t[i+1]]);null!==r&&(n[vr]=null);const o=n[wn];if(null!==o){n[wn]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[r.directiveStart+o];if(i===Mt.None||i===Mt.Emulated)return null}return Xe(r,t)}}(e,n.parent,t)}function Kn(e,n,t,r,o){e.insertBefore(n,t,r,o)}function pg(e,n,t){e.appendChild(n,t)}function gg(e,n,t,r,o){null!==r?Kn(e,n,t,r,o):pg(e,n,t)}function xs(e,n){return e.parentNode(n)}let Vc,_g=function vg(e,n,t){return 40&e.type?Xe(e,t):null};function Os(e,n,t,r){const o=Lc(e,r,n),i=n[j],a=function mg(e,n,t){return _g(e,n,t)}(r.parent||n[We],r,n);if(null!=o)if(Array.isArray(t))for(let l=0;lnull;function eu(e,n,t=!1){return kg(e,n,t)}class xM{}class Hg{}class RM{resolveComponentFactory(n){throw function OM(e){const n=Error(`No component factory found for ${Oe(e)}.`);return n.ngComponent=e,n}(n)}}let $s=(()=>{class e{static#e=this.NULL=new RM}return e})();function FM(){return Ur(ce(),w())}function Ur(e,n){return new Nt(Xe(e,n))}let Nt=(()=>{class e{constructor(t){this.nativeElement=t}static#e=this.__NG_ELEMENT_ID__=FM}return e})();class jg{}let Jn=(()=>{class e{constructor(){this.destroyNode=null}static#e=this.__NG_ELEMENT_ID__=()=>function kM(){const e=w(),t=pt(ce().index,e);return(Ge(t)?t:e)[j]}()}return e})(),LM=(()=>{class e{static#e=this.\u0275prov=te({token:e,providedIn:"root",factory:()=>null})}return e})();class Us{constructor(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}const VM=new Us("17.0.1"),ru={};function zs(e){return!!ou(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function ou(e){return null!==e&&("function"==typeof e||"object"==typeof e)}class Ug{constructor(){}supports(n){return zs(n)}create(n){return new UM(n)}}const $M=(e,n)=>n;class UM{constructor(n){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=n||$M}forEachItem(n){let t;for(t=this._itHead;null!==t;t=t._next)n(t)}forEachOperation(n){let t=this._itHead,r=this._removalsHead,o=0,i=null;for(;t||r;){const s=!r||t&&t.currentIndex{s=this._trackByFn(o,a),null!==t&&Object.is(t.trackById,s)?(r&&(t=this._verifyReinsertion(t,a,s,o)),Object.is(t.item,a)||this._addIdentityChange(t,a)):(t=this._mismatch(t,a,s,o),r=!0),t=t._next,o++}),this.length=o;return this._truncate(t),this.collection=n,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let n;for(n=this._previousItHead=this._itHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;null!==n;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;null!==n;n=n._nextMoved)n.previousIndex=n.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(n,t,r,o){let i;return null===n?i=this._itTail:(i=n._prev,this._remove(n)),null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._reinsertAfter(n,i,o)):null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(r,o))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._moveAfter(n,i,o)):n=this._addAfter(new zM(t,r),i,o),n}_verifyReinsertion(n,t,r,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null);return null!==i?n=this._reinsertAfter(i,n._prev,o):n.currentIndex!=o&&(n.currentIndex=o,this._addToMoves(n,o)),n}_truncate(n){for(;null!==n;){const t=n._next;this._addToRemovals(this._unlink(n)),n=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(n,t,r){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);const o=n._prevRemoved,i=n._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(n,t,r),this._addToMoves(n,r),n}_moveAfter(n,t,r){return this._unlink(n),this._insertAfter(n,t,r),this._addToMoves(n,r),n}_addAfter(n,t,r){return this._insertAfter(n,t,r),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n}_insertAfter(n,t,r){const o=null===t?this._itHead:t._next;return n._next=o,n._prev=t,null===o?this._itTail=n:o._prev=n,null===t?this._itHead=n:t._next=n,null===this._linkedRecords&&(this._linkedRecords=new zg),this._linkedRecords.put(n),n.currentIndex=r,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);const t=n._prev,r=n._next;return null===t?this._itHead=r:t._next=r,null===r?this._itTail=t:r._prev=t,n}_addToMoves(n,t){return n.previousIndex===t||(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n),n}_addToRemovals(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new zg),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n}_addIdentityChange(n,t){return n.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n}}class zM{constructor(n,t){this.item=n,this.trackById=t,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}}class GM{constructor(){this._head=null,this._tail=null}add(n){null===this._head?(this._head=this._tail=n,n._nextDup=null,n._prevDup=null):(this._tail._nextDup=n,n._prevDup=this._tail,n._nextDup=null,this._tail=n)}get(n,t){let r;for(r=this._head;null!==r;r=r._nextDup)if((null===t||t<=r.currentIndex)&&Object.is(r.trackById,n))return r;return null}remove(n){const t=n._prevDup,r=n._nextDup;return null===t?this._head=r:t._nextDup=r,null===r?this._tail=t:r._prevDup=t,null===this._head}}class zg{constructor(){this.map=new Map}put(n){const t=n.trackById;let r=this.map.get(t);r||(r=new GM,this.map.set(t,r)),r.add(n)}get(n,t){const o=this.map.get(n);return o?o.get(n,t):null}remove(n){const t=n.trackById;return this.map.get(t).remove(n)&&this.map.delete(t),n}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function Gg(e,n,t){const r=e.previousIndex;if(null===r)return r;let o=0;return t&&r{if(t&&t.key===o)this._maybeAddToChanges(t,r),this._appendAfter=t,t=t._next;else{const i=this._getOrCreateRecordForKey(o,r);t=this._insertBeforeOrAppend(t,i)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let r=t;null!==r;r=r._nextRemoved)r===this._mapHead&&(this._mapHead=null),this._records.delete(r.key),r._nextRemoved=r._next,r.previousValue=r.currentValue,r.currentValue=null,r._prev=null,r._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,t){if(n){const r=n._prev;return t._next=n,t._prev=r,n._prev=t,r&&(r._next=t),n===this._mapHead&&(this._mapHead=t),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(n,t){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,t);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const r=new WM(n);return this._records.set(n,r),r.currentValue=t,this._addToAdditions(r),r}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;null!==n;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;null!=n;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,t){Object.is(t,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=t,this._addToChanges(n))}_addToAdditions(n){null===this._additionsHead?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){null===this._changesHead?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,t){n instanceof Map?n.forEach(t):Object.keys(n).forEach(r=>t(n[r],r))}}class WM{constructor(n){this.key=n,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function Wg(){return new Gs([new Ug])}let Gs=(()=>{class e{static#e=this.\u0275prov=te({token:e,providedIn:"root",factory:Wg});constructor(t){this.factories=t}static create(t,r){if(null!=r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||Wg()),deps:[[e,new hc,new fc]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(null!=r)return r;throw new S(901,!1)}}return e})();function Zg(){return new Jo([new qg])}let Jo=(()=>{class e{static#e=this.\u0275prov=te({token:e,providedIn:"root",factory:Zg});constructor(t){this.factories=t}static create(t,r){if(r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||Zg()),deps:[[e,new hc,new fc]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(r)return r;throw new S(901,!1)}}return e})();function Xo(e,n,t,r,o=!1){for(;null!==t;){const i=n[t.index];null!==i&&r.push(pe(i)),je(i)&&Qg(i,r);const s=t.type;if(8&s)Xo(e,n,t.child,r);else if(32&s){const a=Fc(t,n);let l;for(;l=a();)r.push(l)}else if(16&s){const a=Cg(n,t);if(Array.isArray(a))r.push(...a);else{const l=Uo(n[De]);Xo(l[I],l,a,r,!0)}}t=o?t.projectionNext:t.next}return r}function Qg(e,n){for(let t=Se;t!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{},consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{os(e.lView)},consumerOnSignalRead(){this.lView[Un]=this}};function iu(e){return e.ngOriginalError}class un{constructor(){this._console=console}handleError(n){const t=this._findOriginalError(n);this._console.error("ERROR",n),t&&this._console.error("ORIGINAL ERROR",t)}_findOriginalError(n){let t=n&&iu(n);for(;t&&iu(t);)t=iu(t);return t||null}}const Xg=new O("",{providedIn:"root",factory:()=>!1}),U={};function f(e){rm(X(),w(),tt()+e,!1)}function rm(e,n,t,r){if(!r)if(3==(3&n[L])){const i=e.preOrderCheckHooks;null!==i&&ls(n,i,t)}else{const i=e.preOrderHooks;null!==i&&cs(n,i,0,t)}qn(t)}function M(e,n=J.Default){const t=w();return null===t?ee(e,n):_p(ce(),t,F(e),n)}function Ws(e,n,t,r,o,i,s,a,l,c,u){const d=n.blueprint.slice();return d[be]=o,d[L]=140|r,(null!==c||e&&2048&e[L])&&(d[L]|=2048),Wh(d),d[_e]=d[yr]=e,d[he]=t,d[_r]=s||e&&e[_r],d[j]=a||e&&e[j],d[Je]=l||e&&e[Je]||null,d[We]=i,d[So]=function II(){return EI++}(),d[Vt]=u,d[Lh]=c,d[De]=2==n.type?e[De]:d,d}function zr(e,n,t,r,o){let i=e.data[n];if(null===i)i=function su(e,n,t,r,o){const i=Jh(),s=Wl(),l=e.data[n]=function h0(e,n,t,r,o,i){let s=n?n.injectorIndex:-1,a=0;return function br(){return null!==H.skipHydrationRootTNode}()&&(a|=128),{type:t,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:n,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,s?i:i&&i.parent,t,n,r,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,n,t,r,o),function sE(){return H.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=t,i.value=r,i.attrs=o;const s=function xo(){const e=H.lFrame,n=e.currentTNode;return e.isParent?n:n.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return Ut(i,!0),i}function ei(e,n,t,r){if(0===t)return-1;const o=n.length;for(let i=0;iV&&rm(e,n,V,!1),jt(s?2:0,o),t(r,o)}finally{qn(i),jt(s?3:1,o)}}function au(e,n,t){if(Hl(n)){const r=we(null);try{const i=n.directiveEnd;for(let s=n.directiveStart;snull;function am(e,n,t,r){for(let o in e)if(e.hasOwnProperty(o)){t=null===t?{}:t;const i=e[o];null===r?lm(t,n,o,i):r.hasOwnProperty(o)&&lm(t,n,r[o],i)}return t}function lm(e,n,t,r){e.hasOwnProperty(t)?e[t].push(n,r):e[t]=[n,r]}function vt(e,n,t,r,o,i,s,a){const l=Xe(n,t);let u,c=n.inputs;!a&&null!=c&&(u=c[r])?(gu(e,t,u,r,o),zn(n)&&function m0(e,n){const t=pt(n,e);16&t[L]||(t[L]|=64)}(t,n.index)):3&n.type&&(r=function g0(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(r),o=null!=s?s(o,n.value||"",r):o,i.setProperty(l,r,o))}function du(e,n,t,r){if(Kh()){const o=null===r?null:{"":-1},i=function w0(e,n){const t=e.directiveRegistry;let r=null,o=null;if(t)for(let i=0;i0;){const t=e[--n];if("number"==typeof t&&t<0)return t}return 0})(s)!=a&&s.push(a),s.push(t,r,i)}}(e,n,r,ei(e,t,o.hostVars,U),o)}function qt(e,n,t,r,o,i){const s=Xe(e,n);!function hu(e,n,t,r,o,i,s){if(null==i)e.removeAttribute(n,o,t);else{const a=null==s?B(i):s(i,r||"",o);e.setAttribute(n,o,a,t)}}(n[j],s,i,e.value,t,r,o)}function T0(e,n,t,r,o,i){const s=i[n];if(null!==s)for(let a=0;ae.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}(a,s),function KM(e){e.lView[Un]!==e&&(e.lView=null,Yg.push(e))}(a)),Xl()}}function _m(e,n){for(let t=lg(e);null!==t;t=cg(t)){t[Vl]=!1;for(let r=Se;r-1&&(zo(n,r),ps(t,r))}this._attachedToViewContainer=!1}Ns(this._lView[I],this._lView)}onDestroy(n){!function is(e,n){if(256==(256&e[L]))throw new S(911,!1);null===e[wn]&&(e[wn]=[]),e[wn].push(n)}(this._lView,n)}markForCheck(){ti(this._cdRefInjectingView||this._lView)}detach(){this._lView[L]&=-129}reattach(){Qh(this._lView),this._lView[L]|=128}detectChanges(){!function mu(e,n,t,r=!0){const o=n[_r],i=o.rendererFactory,s=o.afterRenderEventManager;i.begin?.(),s?.begin();try{vm(e,n,e.template,t),function x0(e){let n=0;for(;9216&e[L]||e[Un]?.dirty;){if(100===n)throw new S(103,!1);n++,Cm(e,1)}}(n)}catch(l){throw r&&Qs(n,l),l}finally{i.end?.(),o.inlineEffectRunner?.flush(),s?.end()}}(this._lView[I],this._lView,this.context,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new S(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function HI(e,n){qo(e,n,n[j],2,null,null)}(this._lView[I],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new S(902,!1);this._appRef=n}}let vu=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=k0}return e})();function k0(e){return function L0(e,n,t){if(zn(e)&&!t){const r=pt(e.index,n);return new ni(r,r)}return 47&e.type?new ni(n[De],n):null}(ce(),w(),16==(16&e))}function yu(e){return n=>{setTimeout(e,void 0,n)}}const Te=class W0 extends zi{constructor(n=!1){super(),this.__isAsync=n}emit(n){super.next(n)}subscribe(n,t,r){let o=n,i=t||(()=>null),s=r;if(n&&"object"==typeof n){const l=n;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=yu(i),o&&(o=yu(o)),s&&(s=yu(s)));const a=super.subscribe({next:o,error:i,complete:s});return n instanceof kt&&n.add(a),a}};function wm(...e){}class ye{constructor({enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:t=!1,shouldCoalesceRunChangeDetection:r=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Te(!1),this.onMicrotaskEmpty=new Te(!1),this.onStable=new Te(!1),this.onError=new Te(!1),typeof Zone>"u")throw new S(908,!1);Zone.assertZonePatched();const o=this;o._nesting=0,o._outer=o._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(o._inner=o._inner.fork(new Zone.TaskTrackingZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(o._inner=o._inner.fork(Zone.longStackTraceZoneSpec)),o.shouldCoalesceEventChangeDetection=!r&&t,o.shouldCoalesceRunChangeDetection=r,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function Z0(){const e="function"==typeof fe.requestAnimationFrame;let n=fe[e?"requestAnimationFrame":"setTimeout"],t=fe[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&n&&t){const r=n[Zone.__symbol__("OriginalDelegate")];r&&(n=r);const o=t[Zone.__symbol__("OriginalDelegate")];o&&(t=o)}return{nativeRequestAnimationFrame:n,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function K0(e){const n=()=>{!function Y0(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(fe,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,Du(e),e.isCheckStableRunning=!0,Cu(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),Du(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,r,o,i,s,a)=>{if(function X0(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return t.invokeTask(o,i,s,a);try{return bm(e),t.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&n(),Em(e)}},onInvoke:(t,r,o,i,s,a,l)=>{try{return bm(e),t.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&n(),Em(e)}},onHasTask:(t,r,o,i)=>{t.hasTask(o,i),r===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,Du(e),Cu(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,r,o,i)=>(t.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ye.isInAngularZone())throw new S(909,!1)}static assertNotInAngularZone(){if(ye.isInAngularZone())throw new S(909,!1)}run(n,t,r){return this._inner.run(n,t,r)}runTask(n,t,r,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,n,Q0,wm,wm);try{return i.runTask(s,t,r)}finally{i.cancelTask(s)}}runGuarded(n,t,r){return this._inner.runGuarded(n,t,r)}runOutsideAngular(n){return this._outer.run(n)}}const Q0={};function Cu(e){if(0==e._nesting&&!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 Du(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function bm(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Em(e){e._nesting--,Cu(e)}class J0{constructor(){this.hasPendingMicrotasks=!1,this.hasPendingMacrotasks=!1,this.isStable=!0,this.onUnstable=new Te,this.onMicrotaskEmpty=new Te,this.onStable=new Te,this.onError=new Te}run(n,t,r){return n.apply(t,r)}runGuarded(n,t,r){return n.apply(t,r)}runOutsideAngular(n){return n()}runTask(n,t,r,o){return n.apply(t,r)}}const Im=new O("",{providedIn:"root",factory:Mm});function Mm(){const e=oe(ye);let n=!0;return Xw(new Ke(o=>{n=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(n),o.complete()})}),new Ke(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ye.assertNotInAngularZone(),queueMicrotask(()=>{!n&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(n=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ye.assertInAngularZone(),n&&(n=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe(ph()))}let Ys=(()=>{class e{constructor(){this.renderDepth=0,this.handler=null,this.internalCallbacks=[]}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){if(this.renderDepth--,0===this.renderDepth){for(const t of this.internalCallbacks)t();this.internalCallbacks.length=0,this.handler?.execute()}}ngOnDestroy(){this.handler?.destroy(),this.handler=null,this.internalCallbacks.length=0}static#e=this.\u0275prov=te({token:e,providedIn:"root",factory:()=>new e})}return e})();function n1(e,n){const t=pt(n,e),r=t[I];!function r1(e,n){for(let t=n.length;t0&&bg(e,t,i.join(" "))}}(d,Ue,p,r),void 0!==t&&function h1(e,n,t){const r=e.projection=[];for(let o=0;o=0;r--){const o=e[r];o.hostVars=n+=o.hostVars,o.hostAttrs=Eo(o.hostAttrs,t=Eo(t,o.hostAttrs))}}(r)}function Js(e){return e===Lt?{}:e===ne?[]:e}function m1(e,n){const t=e.viewQuery;e.viewQuery=t?(r,o)=>{n(r,o),t(r,o)}:n}function v1(e,n){const t=e.contentQueries;e.contentQueries=t?(r,o,i)=>{n(r,o,i),t(r,o,i)}:n}function _1(e,n){const t=e.hostBindings;e.hostBindings=t?(r,o)=>{n(r,o),t(r,o)}:n}function Wt(e,n,t){return e[n]=t}function Re(e,n,t){return!Object.is(e[n],t)&&(e[n]=t,!0)}function tr(e,n,t,r){const o=Re(e,n,t);return Re(e,n+1,r)||o}function xt(e,n,t,r){const o=w();return Re(o,zt(),n)&&(X(),qt(ve(),o,e,n,t,r)),xt}function qr(e,n,t,r){return Re(e,zt(),t)?n+B(t)+r:U}function ea(e,n){return e<<17|n<<2}function Nn(e){return e>>17&32767}function bu(e){return 2|e}function nr(e){return(131068&e)>>2}function Eu(e,n){return-131069&e|n<<2}function Iu(e){return 1|e}function qm(e,n,t,r,o){const i=e[t+1],s=null===n;let a=r?Nn(i):nr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];N1(e[a],n)&&(l=!0,e[a+1]=r?Iu(u):bu(u)),a=r?Nn(u):nr(u)}l&&(e[t+1]=r?bu(i):Iu(i))}function N1(e,n){return null===e||null==n||(Array.isArray(e)?e[1]:e)===n||!(!Array.isArray(e)||"string"!=typeof n)&&Rr(e,n)>=0}const He={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function Wm(e){return e.substring(He.key,He.keyEnd)}function Zm(e,n){const t=He.textEnd;return t===n?-1:(n=He.keyEnd=function F1(e,n,t){for(;n32;)n++;return n}(e,He.key=n,t),eo(e,n,t))}function eo(e,n,t){for(;n=0;t=Zm(n,t))gt(e,Wm(n),!0)}function ev(e,n){return n>=e.expandoStartIndex}function tv(e,n,t,r){const o=e.data;if(null===o[t+1]){const i=o[tt()],s=ev(e,t);iv(i,r)&&null===n&&!s&&(n=!1),n=function H1(e,n,t,r){const o=function Yl(e){const n=H.lFrame.currentDirectiveIndex;return-1===n?null:e[n]}(e);let i=r?n.residualClasses:n.residualStyles;if(null===o)0===(r?n.classBindings:n.styleBindings)&&(t=ii(t=Su(null,e,n,t,r),n.attrs,r),i=null);else{const s=n.directiveStylingLast;if(-1===s||e[s]!==o)if(t=Su(o,e,n,t,r),null===i){let l=function B1(e,n,t){const r=t?n.classBindings:n.styleBindings;if(0!==nr(r))return e[Nn(r)]}(e,n,r);void 0!==l&&Array.isArray(l)&&(l=Su(null,e,n,l[1],r),l=ii(l,n.attrs,r),function j1(e,n,t,r){e[Nn(t?n.classBindings:n.styleBindings)]=r}(e,n,r,l))}else i=function $1(e,n,t){let r;const o=n.directiveEnd;for(let i=1+n.directiveStylingLast;i0)&&(c=!0)):u=t,o)if(0!==l){const h=Nn(e[a+1]);e[r+1]=ea(h,a),0!==h&&(e[h+1]=Eu(e[h+1],r)),e[a+1]=function M1(e,n){return 131071&e|n<<17}(e[a+1],r)}else e[r+1]=ea(a,0),0!==a&&(e[a+1]=Eu(e[a+1],r)),a=r;else e[r+1]=ea(l,0),0===a?a=r:e[l+1]=Eu(e[l+1],r),l=r;c&&(e[r+1]=bu(e[r+1])),qm(e,u,r,!0),qm(e,u,r,!1),function A1(e,n,t,r,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof n&&Rr(i,n)>=0&&(t[r+1]=Iu(t[r+1]))}(n,u,e,r,i),s=ea(a,l),i?n.classBindings=s:n.styleBindings=s}(o,i,n,t,s,r)}}function Su(e,n,t,r,o){let i=null;const s=t.directiveEnd;let a=t.directiveStylingLast;for(-1===a?a=t.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let h=t[o+1];h===U&&(h=d?ne:void 0);let p=d?uc(h,r):u===r?h:void 0;if(c&&!na(p)&&(p=uc(l,r)),na(p)&&(a=p,s))return a;const m=e[o+1];o=s?Nn(m):nr(m)}if(null!==n){let l=i?n.residualClasses:n.residualStyles;null!=l&&(a=uc(l,r))}return a}function na(e){return void 0!==e}function iv(e,n){return 0!=(e.flags&(n?8:16))}function Yt(e,n,t){!function Rt(e,n,t,r){const o=X(),i=an(2);o.firstUpdatePass&&tv(o,null,i,r);const s=w();if(t!==U&&Re(s,i,t)){const a=o.data[tt()];if(iv(a,r)&&!ev(o,i)){let l=r?a.classesWithoutHost:a.stylesWithoutHost;null!==l&&(t=bl(l,t||"")),Mu(o,a,s,t,r)}else!function G1(e,n,t,r,o,i,s,a){o===U&&(o=ne);let l=0,c=0,u=00&&(t[o-1][Tt]=n),r{class e{static#e=this.__NG_ELEMENT_ID__=IS}return e})();function IS(){return function _v(e,n){let t;const r=n[e.index];return je(r)?t=r:(t=fm(r,n,null,e),n[e.index]=t,Zs(n,t)),yv(t,n,e,r),new mv(t,e,n)}(ce(),w())}const MS=Kt,mv=class extends MS{constructor(n,t,r){super(),this._lContainer=n,this._hostTNode=t,this._hostLView=r}get element(){return Ur(this._hostTNode,this._hostLView)}get injector(){return new Le(this._hostTNode,this._hostLView)}get parentInjector(){const n=fs(this._hostTNode,this._hostLView);if(nc(n)){const t=Fo(n,this._hostLView),r=Ro(n);return new Le(t[I].data[r+8],t)}return new Le(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const t=vv(this._lContainer);return null!==t&&t[n]||null}get length(){return this._lContainer.length-Se}createEmbeddedView(n,t,r){let o,i;"number"==typeof r?o=r:null!=r&&(o=r.index,i=r.injector);const a=n.createEmbeddedViewImpl(t||{},i,null);return this.insertImpl(a,o,no(this._hostTNode,null)),a}createComponent(n,t,r,o,i){const s=n&&!function Po(e){return"function"==typeof e}(n);let a;if(s)a=t;else{const m=t||{};a=m.index,r=m.injector,o=m.projectableNodes,i=m.environmentInjector||m.ngModuleRef}const l=s?n:new ri(Z(n)),c=r||this.parentInjector;if(!i&&null==l.ngModule){const C=(s?c:this.parentInjector).get(ln,null);C&&(i=C)}Z(l.componentType??{});const p=l.create(c,o,null,i);return this.insertImpl(p.hostView,a,no(this._hostTNode,null)),p}insert(n,t){return this.insertImpl(n,t,!0)}insertImpl(n,t,r){const o=n._lView;if(function Qb(e){return je(e[_e])}(o)){const a=this.indexOf(n);if(-1!==a)this.detach(a);else{const l=o[_e],c=new mv(l,l[We],l[_e]);c.detach(c.indexOf(n))}}const i=this._adjustIndex(t),s=this._lContainer;return ui(s,o,i,r),n.attachToViewContainerRef(),Ep(ku(s),i,n),n}move(n,t){return this.insert(n,t)}indexOf(n){const t=vv(this._lContainer);return null!==t?t.indexOf(n):-1}remove(n){const t=this._adjustIndex(n,-1),r=zo(this._lContainer,t);r&&(ps(ku(this._lContainer),t),Ns(r[I],r))}detach(n){const t=this._adjustIndex(n,-1),r=zo(this._lContainer,t);return r&&null!=ps(ku(this._lContainer),t)?new ni(r):null}_adjustIndex(n,t=0){return n??this.length+t}};function vv(e){return e[8]}function ku(e){return e[8]||(e[8]=[])}let yv=function Dv(e,n,t,r){if(e[Bt])return;let o;o=8&t.type?pe(r):function SS(e,n){const t=e[j],r=t.createComment(""),o=Xe(n,e);return Kn(t,xs(t,o),r,function qI(e,n){return e.nextSibling(n)}(t,o),!1),r}(n,t),e[Bt]=o},Lu=(e,n,t)=>!1;function P(e,n,t,r,o,i,s,a){const l=w(),c=X(),u=e+V,d=c.firstCreatePass?function xS(e,n,t,r,o,i,s,a,l){const c=n.consts,u=zr(n,e,4,s||null,$t(c,a));du(n,t,u,$t(c,l)),as(n,u);const d=u.tView=uu(2,u,r,o,i,n.directiveRegistry,n.pipeRegistry,null,n.schemas,c,null);return null!==n.queries&&(n.queries.template(n,u),d.queries=n.queries.embeddedTView(u)),u}(u,c,l,n,t,r,o,i,s):c.data[u];Ut(d,!1);const h=wv(c,l,d,e);ss()&&Os(c,l,h,d),Qe(h,l);const p=fm(h,l,h,d);return l[u]=p,Zs(l,p),function Cv(e,n,t){return Lu(e,n,t)}(p,d,l),rs(d)&&lu(c,l,d),null!=s&&cu(l,d,a),P}let wv=function bv(e,n,t,r){return bn(!0),n[j].createComment("")};function y(e,n,t,r){const o=w(),i=X(),s=V+e,a=o[j],l=i.firstCreatePass?function CT(e,n,t,r,o,i){const s=n.consts,l=zr(n,e,2,r,$t(s,o));return du(n,t,l,$t(s,i)),null!==l.attrs&&Ks(l,l.attrs,!1),null!==l.mergedAttrs&&Ks(l,l.mergedAttrs,!0),null!==n.queries&&n.queries.elementStart(n,l),l}(s,i,o,n,t,r):i.data[s],c=Wv(i,o,l,a,n,e);o[s]=c;const u=rs(l);return Ut(l,!0),Eg(a,c,l),32!=(32&l.flags)&&ss()&&Os(i,o,c,l),0===function Kb(){return H.lFrame.elementDepthCount}()&&Qe(c,o),function Jb(){H.lFrame.elementDepthCount++}(),u&&(lu(i,o,l),au(i,l,o)),null!==r&&cu(o,l),y}function _(){let e=ce();Wl()?Zl():(e=e.parent,Ut(e,!1));const n=e;(function eE(e){return H.skipHydrationRootTNode===e})(n)&&function oE(){H.skipHydrationRootTNode=null}(),function Xb(){H.lFrame.elementDepthCount--}();const t=X();return t.firstCreatePass&&(as(t,e),Hl(e)&&t.queries.elementEnd(e)),null!=n.classesWithoutHost&&function _E(e){return 0!=(8&e.flags)}(n)&&Mu(t,n,w(),n.classesWithoutHost,!0),null!=n.stylesWithoutHost&&function yE(e){return 0!=(16&e.flags)}(n)&&Mu(t,n,w(),n.stylesWithoutHost,!1),_}function A(e,n,t,r){return y(e,n,t,r),_(),A}let Wv=(e,n,t,r,o,i)=>(bn(!0),As(r,o,function cp(){return H.lFrame.currentNamespace}()));function Y(e,n,t){const r=w(),o=X(),i=e+V,s=o.firstCreatePass?function bT(e,n,t,r,o){const i=n.consts,s=$t(i,r),a=zr(n,e,8,"ng-container",s);return null!==s&&Ks(a,s,!0),du(n,t,a,$t(i,o)),null!==n.queries&&n.queries.elementStart(n,a),a}(i,o,r,n,t):o.data[i];Ut(s,!0);const a=Qv(o,r,s,e);return r[i]=a,ss()&&Os(o,r,a,s),Qe(a,r),rs(s)&&(lu(o,r,s),au(o,s,r)),null!=t&&cu(r,s),Y}function K(){let e=ce();const n=X();return Wl()?Zl():(e=e.parent,Ut(e,!1)),n.firstCreatePass&&(as(n,e),Hl(e)&&n.queries.elementEnd(e)),K}let Qv=(e,n,t,r)=>(bn(!0),Pc(n[j],""));function Ee(){return w()}const uo="en-US";let e_=uo;function ma(e){return!!e&&"function"==typeof e.then}function I_(e){return!!e&&"function"==typeof e.subscribe}function k(e,n,t,r){const o=w(),i=X(),s=ce();return function S_(e,n,t,r,o,i,s){const a=rs(r),c=e.firstCreatePass&&function gm(e){return e.cleanup||(e.cleanup=[])}(e),u=n[he],d=function pm(e){return e[vr]||(e[vr]=[])}(n);let h=!0;if(3&r.type||s){const C=Xe(r,n),E=s?s(C):C,T=d.length,D=s?z=>s(pe(z[r.index])):r.index;let x=null;if(!s&&a&&(x=function wA(e,n,t,r){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,n,o,r.index)),null!==x)(x.__ngLastListenerFn__||x).__ngNextListenerFn__=i,x.__ngLastListenerFn__=i,h=!1;else{i=A_(r,n,u,i,!1);const z=t.listen(E,o,i);d.push(i,z),c&&c.push(o,D,T,T+1)}}else i=A_(r,n,u,i,!1);const p=r.outputs;let m;if(h&&null!==p&&(m=p[o])){const C=m.length;if(C)for(let E=0;E-1?pt(e.index,n):n);let l=T_(n,t,r,s),c=i.__ngNextListenerFn__;for(;c;)l=T_(n,t,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function v(e=1){return function uE(e){return(H.lFrame.contextLView=function Zh(e,n){for(;e>0;)n=n[yr],e--;return n}(e,H.lFrame.contextLView))[he]}(e)}function On(e,n,t){return Yu(e,"",n,"",t),On}function Yu(e,n,t,r,o){const i=w(),s=qr(i,n,t,r);return s!==U&&vt(X(),ve(),i,e,s,i[j],o,!1),Yu}function b(e,n=""){const t=w(),r=X(),o=e+V,i=r.firstCreatePass?zr(r,o,1,n,null):r.data[o],s=W_(r,t,i,n,e);t[o]=s,ss()&&Os(r,t,s,i),Ut(i,!1)}let W_=(e,n,t,r,o)=>(bn(!0),function Ts(e,n){return e.createText(n)}(n[j],r));function N(e){return G("",e,""),N}function G(e,n,t){const r=w(),o=qr(r,e,n,t);return o!==U&&function dn(e,n,t){const r=Ao(n,e);!function dg(e,n,t){e.setValue(n,t)}(e[j],r,t)}(r,tt(),o),G}function Ku(e,n,t,r,o){if(e=F(e),Array.isArray(e))for(let i=0;i>20;if(Zn(e)||!e.multi){const p=new Oo(c,o,M),m=Xu(l,n,o?u:u+h,d);-1===m?(ic(ds(a,s),i,l),Ju(i,e,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(p),s.push(p)):(t[m]=p,s[m]=p)}else{const p=Xu(l,n,u+h,d),m=Xu(l,n,u,u+h),E=m>=0&&t[m];if(o&&!E||!o&&!(p>=0&&t[p])){ic(ds(a,s),i,l);const T=function $A(e,n,t,r,o){const i=new Oo(e,t,M);return i.multi=[],i.index=n,i.componentProviders=0,ny(i,o,r&&!t),i}(o?jA:BA,t.length,o,r,c);!o&&E&&(t[m].providerFactory=T),Ju(i,e,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(T),s.push(T)}else Ju(i,e,p>-1?p:m,ny(t[o?m:p],c,!o&&r));!o&&r&&E&&t[m].componentProviders++}}}function Ju(e,n,t,r){const o=Zn(n),i=function KE(e){return!!e.useClass}(n);if(o||i){const l=(i?F(n.useClass):n).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&n.multi){const u=c.indexOf(t);-1===u?c.push(t,[r,l]):c[u+1].push(r,l)}else c.push(t,l)}}}function ny(e,n,t){return t&&e.componentProviders++,e.multi.push(n)-1}function Xu(e,n,t,r){for(let o=t;o{t.providersResolver=(r,o)=>function HA(e,n,t){const r=X();if(r.firstCreatePass){const o=At(e);Ku(t,r.data,r.blueprint,o,!0),Ku(n,r.data,r.blueprint,o,!1)}}(r,o?o(e):e,n)}}class ir{}class UA{}class td extends ir{constructor(n,t,r){super(),this._parent=t,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new xm(this);const o=function qe(e,n){const t=e[mh]||null;if(!t&&!0===n)throw new Error(`Type ${Oe(e)} does not have '\u0275mod' property.`);return t}(n);this._bootstrapComponents=function mt(e){return e instanceof Function?e():e}(o.bootstrap),this._r3Injector=jp(n,t,[{provide:ir,useValue:this},{provide:$s,useValue:this.componentFactoryResolver},...r],Oe(n),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(n)}get injector(){return this._r3Injector}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class nd extends UA{constructor(n){super(),this.moduleType=n}create(n){return new td(this.moduleType,n,[])}}function ya(e,n,t,r){return function dy(e,n,t,r,o,i){const s=n+t;return Re(e,s,o)?Wt(e,s+1,i?r.call(i,o):r(o)):yi(e,s+1)}(w(),et(),e,n,t,r)}function od(e,n,t,r,o){return function fy(e,n,t,r,o,i,s){const a=n+t;return tr(e,a,o,i)?Wt(e,a+2,s?r.call(s,o,i):r(o,i)):yi(e,a+2)}(w(),et(),e,n,t,r,o)}function $e(e,n,t,r,o,i){return hy(w(),et(),e,n,t,r,o,i)}function yi(e,n){const t=e[n];return t===U?void 0:t}function hy(e,n,t,r,o,i,s,a){const l=n+t;return function Xs(e,n,t,r,o){const i=tr(e,n,t,r);return Re(e,n+2,o)||i}(e,l,o,i,s)?Wt(e,l+3,a?r.call(a,o,i,s):r(o,i,s)):yi(e,l+3)}function vy(e,n,t,r,o){const i=e+V,s=w(),a=function wr(e,n){return e[n]}(s,i);return function Ci(e,n){return e[I].data[n].pure}(s,i)?hy(s,et(),n,a.transform,t,r,o,a):a.transform(t,r,o)}Symbol;let fn=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=DN}return e})();const yN=fn,CN=class extends yN{constructor(n,t,r){super(),this._declarationLView=n,this._declarationTContainer=t,this.elementRef=r}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(n,t){return this.createEmbeddedViewImpl(n,t)}createEmbeddedViewImpl(n,t,r){const o=function ci(e,n,t,r){const o=n.tView,a=Ws(e,o,t,4096&e[L]?4096:16,null,n,null,null,null,r?.injector??null,r?.dehydratedView??null);a[Mo]=e[n.index];const c=e[Ht];return null!==c&&(a[Ht]=c.createEmbeddedView(o)),wu(o,a,t),a}(this._declarationLView,this._declarationTContainer,n,{injector:t,dehydratedView:r});return new ni(o)}};function DN(){return function Ca(e,n){return 4&e.type?new CN(n,e,Ur(e,n)):null}(ce(),w())}const ex=new O("Application Initializer");let gd=(()=>{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,r)=>{this.resolve=t,this.reject=r}),this.appInits=oe(ex,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const t=[];for(const o of this.appInits){const i=o();if(ma(i))t.push(i);else if(I_(i)){const s=new Promise((a,l)=>{i.subscribe({complete:a,error:l})});t.push(s)}}const r=()=>{this.done=!0,this.resolve()};Promise.all(t).then(()=>{r()}).catch(o=>{this.reject(o)}),0===t.length&&r(),this.initialized=!0}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const hn=new O("LocaleId",{providedIn:"root",factory:()=>oe(hn,J.Optional|J.SkipSelf)||function nx(){return typeof $localize<"u"&&$localize.locale||uo}()});let lx=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new eb(!1)}add(){this.hasPendingTasks.next(!0);const t=this.taskId++;return this.pendingTasks.add(t),t}remove(t){this.pendingTasks.delete(t),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Uy=new O(""),ba=new O("");let yd,vd=(()=>{class e{constructor(t,r,o){this._ngZone=t,this.registry=r,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,yd||(function Fx(e){yd=e}(o),o.addToWindow(r)),this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ye.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(r=>!r.updateCb||!r.updateCb(t)||(clearTimeout(r.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,r,o){let i=-1;r&&r>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==i),t(this._didWork,this.getPendingTasks())},r)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:o})}whenStable(t,r,o){if(o&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(t,r,o),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(t){this.registry.registerApplication(t,this)}unregisterApplication(t){this.registry.unregisterApplication(t)}findProviders(t,r,o){return[]}static#e=this.\u0275fac=function(r){return new(r||e)(ee(ye),ee(_d),ee(ba))};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac})}return e})(),_d=(()=>{class e{constructor(){this._applications=new Map}registerApplication(t,r){this._applications.set(t,r)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,r=!0){return yd?.findTestabilityInTree(this,t,r)??null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})(),Rn=null;const zy=new O("AllowMultipleToken"),Cd=new O("PlatformDestroyListeners"),Gy=new O("appBootstrapListener");function Zy(e,n,t=[]){const r=`Platform: ${n}`,o=new O(r);return(i=[])=>{let s=Dd();if(!s||s.injector.get(zy,!1)){const a=[...t,...i,{provide:o,useValue:!0}];e?e(a):function Lx(e){if(Rn&&!Rn.get(zy,!1))throw new S(400,!1);(function qy(){!function mw(e){Vf=e}(()=>{throw new S(600,!1)})})(),Rn=e;const n=e.get(Yy);(function Wy(e){e.get(Up,null)?.forEach(t=>t())})(e)}(function Qy(e=[],n){return Ct.create({name:n,providers:[{provide:_c,useValue:"platform"},{provide:Cd,useValue:new Set([()=>Rn=null])},...e]})}(a,r))}return function Hx(e){const n=Dd();if(!n)throw new S(401,!1);return n}()}}function Dd(){return Rn?.get(Yy)??null}let Yy=(()=>{class e{constructor(t){this._injector=t,this._modules=[],this._destroyListeners=[],this._destroyed=!1}bootstrapModuleFactory(t,r){const o=function Bx(e="zone.js",n){return"noop"===e?new J0:"zone.js"===e?new ye(n):e}(r?.ngZone,function Ky(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}({eventCoalescing:r?.ngZoneEventCoalescing,runCoalescing:r?.ngZoneRunCoalescing}));return o.run(()=>{const i=function GA(e,n,t){return new td(e,n,t)}(t.moduleType,this.injector,function nC(e){return[{provide:ye,useFactory:e},{provide:Vo,multi:!0,useFactory:()=>{const n=oe($x,{optional:!0});return()=>n.initialize()}},{provide:tC,useFactory:jx},{provide:Im,useFactory:Mm}]}(()=>o)),s=i.injector.get(un,null);return o.runOutsideAngular(()=>{const a=o.onError.subscribe({next:l=>{s.handleError(l)}});i.onDestroy(()=>{Ea(this._modules,i),a.unsubscribe()})}),function Jy(e,n,t){try{const r=t();return ma(r)?r.catch(o=>{throw n.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw n.runOutsideAngular(()=>e.handleError(r)),r}}(s,o,()=>{const a=i.injector.get(gd);return a.runInitializers(),a.donePromise.then(()=>(function t_(e){at(e,"Expected localeId to be defined"),"string"==typeof e&&(e_=e.toLowerCase().replace(/_/g,"-"))}(i.injector.get(hn,uo)||uo),this._moduleDoBootstrap(i),i))})})}bootstrapModule(t,r=[]){const o=Xy({},r);return function Px(e,n,t){const r=new nd(t);return Promise.resolve(r)}(0,0,t).then(i=>this.bootstrapModuleFactory(i,o))}_moduleDoBootstrap(t){const r=t.injector.get(bi);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(o=>r.bootstrap(o));else{if(!t.instance.ngDoBootstrap)throw new S(-403,!1);t.instance.ngDoBootstrap(r)}this._modules.push(t)}onDestroy(t){this._destroyListeners.push(t)}get injector(){return this._injector}destroy(){if(this._destroyed)throw new S(404,!1);this._modules.slice().forEach(r=>r.destroy()),this._destroyListeners.forEach(r=>r());const t=this._injector.get(Cd,null);t&&(t.forEach(r=>r()),t.clear()),this._destroyed=!0}get destroyed(){return this._destroyed}static#e=this.\u0275fac=function(r){return new(r||e)(ee(Ct))};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})();function Xy(e,n){return Array.isArray(n)?n.reduce(Xy,e):{...e,...n}}let bi=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=oe(tC),this.zoneIsStable=oe(Im),this.componentTypes=[],this.components=[],this.isStable=oe(lx).hasPendingTasks.pipe(function rb(e,n){return mn((t,r)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&r.complete();t.subscribe(new Xt(r,l=>{o?.unsubscribe();let c=0;const u=i++;vn(e(l,u)).subscribe(o=new Xt(r,d=>r.next(n?n(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}(t=>t?function tb(...e){return Gi(e,uh(e))}(!1):this.zoneIsStable),function ob(e,n=vl){return e=e??ib,mn((t,r)=>{let o,i=!0;t.subscribe(new Xt(r,s=>{const a=n(s);(i||!e(o,a))&&(i=!1,o=a,r.next(s))}))})}(),ph()),this._injector=oe(ln)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(t,r){const o=t instanceof Hg;if(!this._injector.get(gd).done)throw!o&&function $n(e){const n=Z(e)||ke(e)||ze(e);return null!==n&&n.standalone}(t),new S(405,!1);let s;s=o?t:this._injector.get($s).resolveComponentFactory(t),this.componentTypes.push(s.componentType);const a=function kx(e){return e.isBoundToModule}(s)?void 0:this._injector.get(ir),c=s.create(Ct.NULL,[],r||s.selector,a),u=c.location.nativeElement,d=c.injector.get(Uy,null);return d?.registerApplication(u),c.onDestroy(()=>{this.detachView(c.hostView),Ea(this.components,c),d?.unregisterApplication(u)}),this._loadComponent(c),c}tick(){if(this._runningTick)throw new S(101,!1);try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}catch(t){this.internalErrorHandler(t)}finally{this._runningTick=!1}}attachView(t){const r=t;this._views.push(r),r.attachToAppRef(this)}detachView(t){const r=t;Ea(this._views,r),r.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t);const r=this._injector.get(Gy,[]);[...this._bootstrapListeners,...r].forEach(o=>o(t))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(t=>t()),this._views.slice().forEach(t=>t.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(t){return this._destroyListeners.push(t),()=>Ea(this._destroyListeners,t)}destroy(){if(this._destroyed)throw new S(406,!1);const t=this._injector;t.destroy&&!t.destroyed&&t.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Ea(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}const tC=new O("",{providedIn:"root",factory:()=>oe(un).handleError.bind(void 0)});function jx(){const e=oe(ye),n=oe(un);return t=>e.runOutsideAngular(()=>n.handleError(t))}let $x=(()=>{class e{constructor(){this.zone=oe(ye),this.applicationRef=oe(bi)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Qx=Zy(null,"core",[]);let Yx=(()=>{class e{constructor(t){}static#e=this.\u0275fac=function(r){return new(r||e)(ee(bi))};static#t=this.\u0275mod=Dn({type:e});static#n=this.\u0275inj=tn({})}return e})();let Od=null;function Mi(){return Od}class yO{}const ar=new O("DocumentToken"),$d=/\s+/,RC=[];let Ai=(()=>{class e{constructor(t,r,o,i){this._iterableDiffers=t,this._keyValueDiffers=r,this._ngEl=o,this._renderer=i,this.initialClasses=RC,this.stateMap=new Map}set klass(t){this.initialClasses=null!=t?t.trim().split($d):RC}set ngClass(t){this.rawClass="string"==typeof t?t.trim().split($d):t}ngDoCheck(){for(const r of this.initialClasses)this._updateState(r,!0);const t=this.rawClass;if(Array.isArray(t)||t instanceof Set)for(const r of t)this._updateState(r,!0);else if(null!=t)for(const r of Object.keys(t))this._updateState(r,!!t[r]);this._applyStateDiff()}_updateState(t,r){const o=this.stateMap.get(t);void 0!==o?(o.enabled!==r&&(o.changed=!0,o.enabled=r),o.touched=!0):this.stateMap.set(t,{enabled:r,changed:!0,touched:!0})}_applyStateDiff(){for(const t of this.stateMap){const r=t[0],o=t[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(t,r){(t=t.trim()).length>0&&t.split($d).forEach(o=>{r?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}static#e=this.\u0275fac=function(r){return new(r||e)(M(Gs),M(Jo),M(Nt),M(Jn))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0})}return e})();class aR{constructor(n,t,r,o){this.$implicit=n,this.ngForOf=t,this.index=r,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let mo=(()=>{class e{set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}constructor(t,r,o){this._viewContainer=t,this._template=r,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const t=this._ngForOf;!this._differ&&t&&(this._differ=this._differs.find(t).create(this.ngForTrackBy))}if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const r=this._viewContainer;t.forEachOperation((o,i,s)=>{if(null==o.previousIndex)r.createEmbeddedView(this._template,new aR(o.item,this._ngForOf,-1,-1),null===s?void 0:s);else if(null==s)r.remove(null===i?void 0:i);else if(null!==i){const a=r.get(i);r.move(a,s),PC(a,o)}});for(let o=0,i=r.length;o{PC(r.get(o.currentIndex),o)})}static ngTemplateContextGuard(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(M(Kt),M(fn),M(Gs))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}return e})();function PC(e,n){e.context.$implicit=n.item}let lr=(()=>{class e{constructor(t,r){this._viewContainer=t,this._context=new lR,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=r}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){kC("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){kC("ngIfElse",t),this._elseTemplateRef=t,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(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(M(Kt),M(fn))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}return e})();class lR{constructor(){this.$implicit=null,this.ngIf=null}}function kC(e,n){if(n&&!n.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${Oe(n)}'.`)}let HC=(()=>{class e{transform(t,r,o){if(null==t)return null;if(!this.supports(t))throw function Pt(e,n){return new S(2100,!1)}();return t.slice(r,o)}supports(t){return"string"==typeof t||Array.isArray(t)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275pipe=ct({name:"slice",type:e,pure:!1,standalone:!0})}return e})(),FR=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Dn({type:e});static#n=this.\u0275inj=tn({})}return e})();function jC(e){return"server"===e}class lF extends yO{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class Qd extends lF{static makeCurrent(){!function _O(e){Od||(Od=e)}(new Qd)}onAndCancel(n,t,r){return n.addEventListener(t,r),()=>{n.removeEventListener(t,r)}}dispatchEvent(n,t){n.dispatchEvent(t)}remove(n){n.parentNode&&n.parentNode.removeChild(n)}createElement(n,t){return(t=t||this.getDefaultDocument()).createElement(n)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(n){return n.nodeType===Node.ELEMENT_NODE}isShadowRoot(n){return n instanceof DocumentFragment}getGlobalEventTarget(n,t){return"window"===t?window:"document"===t?n:"body"===t?n.body:null}getBaseHref(n){const t=function cF(){return xi=xi||document.querySelector("base"),xi?xi.getAttribute("href"):null}();return null==t?null:function uF(e){za=za||document.createElement("a"),za.setAttribute("href",e);const n=za.pathname;return"/"===n.charAt(0)?n:`/${n}`}(t)}resetBaseElement(){xi=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return function iR(e,n){n=encodeURIComponent(n);for(const t of e.split(";")){const r=t.indexOf("="),[o,i]=-1==r?[t,""]:[t.slice(0,r),t.slice(r+1)];if(o.trim()===n)return decodeURIComponent(i)}return null}(document.cookie,n)}}let za,xi=null,fF=(()=>{class e{build(){return new XMLHttpRequest}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac})}return e})();const Yd=new O("EventManagerPlugins");let GC=(()=>{class e{constructor(t,r){this._zone=r,this._eventNameToPlugin=new Map,t.forEach(o=>{o.manager=this}),this._plugins=t.slice().reverse()}addEventListener(t,r,o){return this._findPluginFor(r).addEventListener(t,r,o)}getZone(){return this._zone}_findPluginFor(t){let r=this._eventNameToPlugin.get(t);if(r)return r;if(r=this._plugins.find(i=>i.supports(t)),!r)throw new S(5101,!1);return this._eventNameToPlugin.set(t,r),r}static#e=this.\u0275fac=function(r){return new(r||e)(ee(Yd),ee(ye))};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac})}return e})();class qC{constructor(n){this._doc=n}}const Kd="ng-app-id";let WC=(()=>{class e{constructor(t,r,o,i={}){this.doc=t,this.appId=r,this.nonce=o,this.platformId=i,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=jC(i),this.resetHostNodes()}addStyles(t){for(const r of t)1===this.changeUsageCount(r,1)&&this.onStyleAdded(r)}removeStyles(t){for(const r of t)this.changeUsageCount(r,-1)<=0&&this.onStyleRemoved(r)}ngOnDestroy(){const t=this.styleNodesInDOM;t&&(t.forEach(r=>r.remove()),t.clear());for(const r of this.getAllStyles())this.onStyleRemoved(r);this.resetHostNodes()}addHost(t){this.hostNodes.add(t);for(const r of this.getAllStyles())this.addStyleToHost(t,r)}removeHost(t){this.hostNodes.delete(t)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(t){for(const r of this.hostNodes)this.addStyleToHost(r,t)}onStyleRemoved(t){const r=this.styleRef;r.get(t)?.elements?.forEach(o=>o.remove()),r.delete(t)}collectServerRenderedStyles(){const t=this.doc.head?.querySelectorAll(`style[${Kd}="${this.appId}"]`);if(t?.length){const r=new Map;return t.forEach(o=>{null!=o.textContent&&r.set(o.textContent,o)}),r}return null}changeUsageCount(t,r){const o=this.styleRef;if(o.has(t)){const i=o.get(t);return i.usage+=r,i.usage}return o.set(t,{usage:r,elements:[]}),r}getStyleElement(t,r){const o=this.styleNodesInDOM,i=o?.get(r);if(i?.parentNode===t)return o.delete(r),i.removeAttribute(Kd),i;{const s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(Kd,this.appId),t.appendChild(s),s}}addStyleToHost(t,r){const o=this.getStyleElement(t,r),i=this.styleRef,s=i.get(r)?.elements;s?s.push(o):i.set(r,{elements:[o],usage:1})}resetHostNodes(){const t=this.hostNodes;t.clear(),t.add(this.doc.head)}static#e=this.\u0275fac=function(r){return new(r||e)(ee(ar),ee(ws),ee(zp,8),ee(kr))};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac})}return e})();const Jd={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/"},Xd=/%COMP%/g,mF=new O("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!0});function QC(e,n){return n.map(t=>t.replace(Xd,e))}let YC=(()=>{class e{constructor(t,r,o,i,s,a,l,c=null){this.eventManager=t,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=l,this.nonce=c,this.rendererByCompId=new Map,this.platformIsServer=jC(a),this.defaultRenderer=new ef(t,s,l,this.platformIsServer)}createRenderer(t,r){if(!t||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===Mt.ShadowDom&&(r={...r,encapsulation:Mt.Emulated});const o=this.getOrCreateRenderer(t,r);return o instanceof JC?o.applyToHost(t):o instanceof tf&&o.applyStyles(),o}getOrCreateRenderer(t,r){const o=this.rendererByCompId;let i=o.get(r.id);if(!i){const s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case Mt.Emulated:i=new JC(l,c,r,this.appId,u,s,a,d);break;case Mt.ShadowDom:return new CF(l,c,t,r,s,a,this.nonce,d);default:i=new tf(l,c,r,u,s,a,d)}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static#e=this.\u0275fac=function(r){return new(r||e)(ee(GC),ee(WC),ee(ws),ee(mF),ee(ar),ee(kr),ee(ye),ee(zp))};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac})}return e})();class ef{constructor(n,t,r,o){this.eventManager=n,this.doc=t,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(n,t){return t?this.doc.createElementNS(Jd[t]||t,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,t){(KC(n)?n.content:n).appendChild(t)}insertBefore(n,t,r){n&&(KC(n)?n.content:n).insertBefore(t,r)}removeChild(n,t){n&&n.removeChild(t)}selectRootElement(n,t){let r="string"==typeof n?this.doc.querySelector(n):n;if(!r)throw new S(-5104,!1);return t||(r.textContent=""),r}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,t,r,o){if(o){t=o+":"+t;const i=Jd[o];i?n.setAttributeNS(i,t,r):n.setAttribute(t,r)}else n.setAttribute(t,r)}removeAttribute(n,t,r){if(r){const o=Jd[r];o?n.removeAttributeNS(o,t):n.removeAttribute(`${r}:${t}`)}else n.removeAttribute(t)}addClass(n,t){n.classList.add(t)}removeClass(n,t){n.classList.remove(t)}setStyle(n,t,r,o){o&(Sn.DashCase|Sn.Important)?n.style.setProperty(t,r,o&Sn.Important?"important":""):n.style[t]=r}removeStyle(n,t,r){r&Sn.DashCase?n.style.removeProperty(t):n.style[t]=""}setProperty(n,t,r){n[t]=r}setValue(n,t){n.nodeValue=t}listen(n,t,r){if("string"==typeof n&&!(n=Mi().getGlobalEventTarget(this.doc,n)))throw new Error(`Unsupported event target ${n} for event ${t}`);return this.eventManager.addEventListener(n,t,this.decoratePreventDefault(r))}decoratePreventDefault(n){return t=>{if("__ngUnwrap__"===t)return n;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>n(t)):n(t))&&t.preventDefault()}}}function KC(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class CF extends ef{constructor(n,t,r,o,i,s,a,l){super(n,i,s,l),this.sharedStylesHost=t,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=QC(o.id,o.styles);for(const u of c){const d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=u,this.shadowRoot.appendChild(d)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,t){return super.appendChild(this.nodeOrShadowRoot(n),t)}insertBefore(n,t,r){return super.insertBefore(this.nodeOrShadowRoot(n),t,r)}removeChild(n,t){return super.removeChild(this.nodeOrShadowRoot(n),t)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class tf extends ef{constructor(n,t,r,o,i,s,a,l){super(n,i,s,a),this.sharedStylesHost=t,this.removeStylesOnCompDestroy=o,this.styles=l?QC(l,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class JC extends tf{constructor(n,t,r,o,i,s,a,l){const c=o+"-"+r.id;super(n,t,r,i,s,a,l,c),this.contentAttr=function vF(e){return"_ngcontent-%COMP%".replace(Xd,e)}(c),this.hostAttr=function _F(e){return"_nghost-%COMP%".replace(Xd,e)}(c)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,t){const r=super.createElement(n,t);return super.setAttribute(r,this.contentAttr,""),r}}let DF=(()=>{class e extends qC{constructor(t){super(t)}supports(t){return!0}addEventListener(t,r,o){return t.addEventListener(r,o,!1),()=>this.removeEventListener(t,r,o)}removeEventListener(t,r,o){return t.removeEventListener(r,o)}static#e=this.\u0275fac=function(r){return new(r||e)(ee(ar))};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac})}return e})();const XC=["alt","control","meta","shift"],wF={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},bF={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let EF=(()=>{class e extends qC{constructor(t){super(t)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,r,o){const i=e.parseEventName(r),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Mi().onAndCancel(t,i.domEventName,s))}static parseEventName(t){const r=t.toLowerCase().split("."),o=r.shift();if(0===r.length||"keydown"!==o&&"keyup"!==o)return null;const i=e._normalizeKey(r.pop());let s="",a=r.indexOf("code");if(a>-1&&(r.splice(a,1),s="code."),XC.forEach(c=>{const u=r.indexOf(c);u>-1&&(r.splice(u,1),s+=c+".")}),s+=i,0!=r.length||0===i.length)return null;const l={};return l.domEventName=o,l.fullKey=s,l}static matchEventFullKeyCode(t,r){let o=wF[t.key]||t.key,i="";return r.indexOf("code.")>-1&&(o=t.code,i="code."),!(null==o||!o)&&(o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),XC.forEach(s=>{s!==o&&(0,bF[s])(t)&&(i+=s+".")}),i+=o,i===r)}static eventCallback(t,r,o){return i=>{e.matchEventFullKeyCode(i,t)&&o.runGuarded(()=>r(i))}}static _normalizeKey(t){return"esc"===t?"escape":t}static#e=this.\u0275fac=function(r){return new(r||e)(ee(ar))};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac})}return e})();const TF=Zy(Qx,"browser",[{provide:kr,useValue:"browser"},{provide:Up,useValue:function IF(){Qd.makeCurrent()},multi:!0},{provide:ar,useFactory:function SF(){return function dI(e){Ec=e}(document),document},deps:[]}]),AF=new O(""),nD=[{provide:ba,useClass:class dF{addToWindow(n){fe.getAngularTestability=(r,o=!0)=>{const i=n.findTestabilityInTree(r,o);if(null==i)throw new S(5103,!1);return i},fe.getAllAngularTestabilities=()=>n.getAllTestabilities(),fe.getAllAngularRootElements=()=>n.getAllRootElements(),fe.frameworkStabilizers||(fe.frameworkStabilizers=[]),fe.frameworkStabilizers.push(r=>{const o=fe.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&r(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(n,t,r){return null==t?null:n.getTestability(t)??(r?Mi().isShadowRoot(t)?this.findTestabilityInTree(n,t.host,!0):this.findTestabilityInTree(n,t.parentElement,!0):null)}},deps:[]},{provide:Uy,useClass:vd,deps:[ye,_d,ba]},{provide:vd,useClass:vd,deps:[ye,_d,ba]}],rD=[{provide:_c,useValue:"root"},{provide:un,useFactory:function MF(){return new un},deps:[]},{provide:Yd,useClass:DF,multi:!0,deps:[ar,ye,kr]},{provide:Yd,useClass:EF,multi:!0,deps:[ar]},YC,WC,GC,{provide:jg,useExisting:YC},{provide:class HR{},useClass:fF,deps:[]},[]];let NF=(()=>{class e{constructor(t){}static withServerTransition(t){return{ngModule:e,providers:[{provide:ws,useValue:t.appId}]}}static#e=this.\u0275fac=function(r){return new(r||e)(ee(AF,12))};static#t=this.\u0275mod=Dn({type:e});static#n=this.\u0275inj=tn({providers:[...rD,...nD],imports:[FR,Yx]})}return e})();typeof window<"u"&&window;const{isArray:LF}=Array,{getPrototypeOf:VF,prototype:HF,keys:BF}=Object;const{isArray:UF}=Array;function qF(e,n){return e.reduce((t,r,o)=>(t[r]=n[o],t),{})}function WF(...e){const n=function Gw(e){return xe(Dl(e))?e.pop():void 0}(e),{args:t,keys:r}=function jF(e){if(1===e.length){const n=e[0];if(LF(n))return{args:n,keys:null};if(function $F(e){return e&&"object"==typeof e&&VF(e)===HF}(n)){const t=BF(n);return{args:t.map(r=>n[r]),keys:t}}}return{args:e,keys:null}}(e),o=new Ke(i=>{const{length:s}=t;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=h},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(r?qF(r,a):a),i.complete())}))}});return n?o.pipe(function GF(e){return _l(n=>function zF(e,n){return UF(n)?e(...n):e(n)}(e,n))}(n)):o}let aD=(()=>{class e{constructor(t,r){this._renderer=t,this._elementRef=r,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(t,r){this._renderer.setProperty(this._elementRef.nativeElement,t,r)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static#e=this.\u0275fac=function(r){return new(r||e)(M(Jn),M(Nt))};static#t=this.\u0275dir=$({type:e})}return e})(),cr=(()=>{class e extends aD{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Ze(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,features:[le]})}return e})();const Jt=new O("NgValueAccessor"),ZF={provide:Jt,useExisting:de(()=>rf),multi:!0};let rf=(()=>{class e extends cr{writeValue(t){this.setProperty("checked",t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Ze(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(r,o){1&r&&k("change",function(s){return o.onChange(s.target.checked)})("blur",function(){return o.onTouched()})},features:[Ce([ZF]),le]})}return e})();const QF={provide:Jt,useExisting:de(()=>Oi),multi:!0},KF=new O("CompositionEventMode");let Oi=(()=>{class e extends aD{constructor(t,r,o){super(t,r),this._compositionMode=o,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function YF(){const e=Mi()?Mi().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(t){this.setProperty("value",t??"")}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static#e=this.\u0275fac=function(r){return new(r||e)(M(Jn),M(Nt),M(KF,8))};static#t=this.\u0275dir=$({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(r,o){1&r&&k("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[Ce([QF]),le]})}return e})();const Ye=new O("NgValidators"),kn=new O("NgAsyncValidators");function vD(e){return null!=e}function _D(e){return ma(e)?Gi(e):e}function yD(e){let n={};return e.forEach(t=>{n=null!=t?{...n,...t}:n}),0===Object.keys(n).length?null:n}function CD(e,n){return n.map(t=>t(e))}function DD(e){return e.map(n=>function XF(e){return!e.validate}(n)?n:t=>n.validate(t))}function of(e){return null!=e?function wD(e){if(!e)return null;const n=e.filter(vD);return 0==n.length?null:function(t){return yD(CD(t,n))}}(DD(e)):null}function sf(e){return null!=e?function bD(e){if(!e)return null;const n=e.filter(vD);return 0==n.length?null:function(t){return WF(CD(t,n).map(_D)).pipe(_l(yD))}}(DD(e)):null}function ED(e,n){return null===e?[n]:Array.isArray(e)?[...e,n]:[e,n]}function af(e){return e?Array.isArray(e)?e:[e]:[]}function qa(e,n){return Array.isArray(e)?e.includes(n):e===n}function SD(e,n){const t=af(n);return af(e).forEach(o=>{qa(t,o)||t.push(o)}),t}function TD(e,n){return af(n).filter(t=>!qa(e,t))}class AD{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=of(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=sf(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control&&this.control.reset(n)}hasError(n,t){return!!this.control&&this.control.hasError(n,t)}getError(n,t){return this.control?this.control.getError(n,t):null}}class st extends AD{get formDirective(){return null}get path(){return null}}class Ln extends AD{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class ND{constructor(n){this._cd=n}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Wa=(()=>{class e extends ND{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(M(Ln,2))};static#t=this.\u0275dir=$({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(r,o){2&r&&ta("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[le]})}return e})();const Ri="VALID",Qa="INVALID",vo="PENDING",Fi="DISABLED";function Ya(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class FD{constructor(n,t){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get valid(){return this.status===Ri}get invalid(){return this.status===Qa}get pending(){return this.status==vo}get disabled(){return this.status===Fi}get enabled(){return this.status!==Fi}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(SD(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(SD(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(TD(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(TD(n,this._rawAsyncValidators))}hasValidator(n){return qa(this._rawValidators,n)}hasAsyncValidator(n){return qa(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){this.touched=!0,this._parent&&!n.onlySelf&&this._parent.markAsTouched(n)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(n=>n.markAllAsTouched())}markAsUntouched(n={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}markAsDirty(n={}){this.pristine=!1,this._parent&&!n.onlySelf&&this._parent.markAsDirty(n)}markAsPristine(n={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}markAsPending(n={}){this.status=vo,!1!==n.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!n.onlySelf&&this._parent.markAsPending(n)}disable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Fi,this.errors=null,this._forEachChild(r=>{r.disable({...n,onlySelf:!0})}),this._updateValue(),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!0))}enable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Ri,this._forEachChild(r=>{r.enable({...n,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!1))}_updateAncestors(n){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Ri||this.status===vo)&&this._runAsyncValidator(n.emitEvent)),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.updateValueAndValidity(n)}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Fi:Ri}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n){if(this.asyncValidator){this.status=vo,this._hasOwnPendingAsyncValidator=!0;const t=_D(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(r=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(r,{emitEvent:n})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(!1!==t.emitEvent)}get(n){let t=n;return null==t||(Array.isArray(t)||(t=t.split(".")),0===t.length)?null:t.reduce((r,o)=>r&&r._find(o),this)}getError(n,t){const r=t?this.get(t):this;return r&&r.errors?r.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(n)}_initObservables(){this.valueChanges=new Te,this.statusChanges=new Te}_calculateStatus(){return this._allControlsDisabled()?Fi:this.errors?Qa:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(vo)?vo:this._anyControlsHaveStatus(Qa)?Qa:Ri}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n={}){this.pristine=!this._anyControlsDirty(),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}_updateTouched(n={}){this.touched=this._anyControlsTouched(),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Ya(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=function oP(e){return Array.isArray(e)?of(e):e||null}(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=function iP(e){return Array.isArray(e)?sf(e):e||null}(this._rawAsyncValidators)}}const _o=new O("CallSetDisabledState",{providedIn:"root",factory:()=>Ka}),Ka="always";function Pi(e,n,t=Ka){(function hf(e,n){const t=function ID(e){return e._rawValidators}(e);null!==n.validator?e.setValidators(ED(t,n.validator)):"function"==typeof t&&e.setValidators([t]);const r=function MD(e){return e._rawAsyncValidators}(e);null!==n.asyncValidator?e.setAsyncValidators(ED(r,n.asyncValidator)):"function"==typeof r&&e.setAsyncValidators([r]);const o=()=>e.updateValueAndValidity();el(n._rawValidators,o),el(n._rawAsyncValidators,o)})(e,n),n.valueAccessor.writeValue(e.value),(e.disabled||"always"===t)&&n.valueAccessor.setDisabledState?.(e.disabled),function lP(e,n){n.valueAccessor.registerOnChange(t=>{e._pendingValue=t,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&PD(e,n)})}(e,n),function uP(e,n){const t=(r,o)=>{n.valueAccessor.writeValue(r),o&&n.viewToModelUpdate(r)};e.registerOnChange(t),n._registerOnDestroy(()=>{e._unregisterOnChange(t)})}(e,n),function cP(e,n){n.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&PD(e,n),"submit"!==e.updateOn&&e.markAsTouched()})}(e,n),function aP(e,n){if(n.valueAccessor.setDisabledState){const t=r=>{n.valueAccessor.setDisabledState(r)};e.registerOnDisabledChange(t),n._registerOnDestroy(()=>{e._unregisterOnDisabledChange(t)})}}(e,n)}function el(e,n){e.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function PD(e,n){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}function VD(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}function HD(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const BD=class extends FD{constructor(n=null,t,r){super(function uf(e){return(Ya(e)?e.validators:e)||null}(t),function df(e,n){return(Ya(n)?n.asyncValidators:e)||null}(r,t)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Ya(t)&&(t.nonNullable||t.initialValueIsDefault)&&(this.defaultValue=HD(n)?n.value:n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(r=>r(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){VD(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){VD(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(n){HD(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}},_P={provide:Ln,useExisting:de(()=>Li)},UD=(()=>Promise.resolve())();let Li=(()=>{class e extends Ln{constructor(t,r,o,i,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this.control=new BD,this._registered=!1,this.name="",this.update=new Te,this._parent=t,this._setValidators(r),this._setAsyncValidators(o),this.valueAccessor=function mf(e,n){if(!n)return null;let t,r,o;return Array.isArray(n),n.forEach(i=>{i.constructor===Oi?t=i:function hP(e){return Object.getPrototypeOf(e.constructor)===cr}(i)?r=i:o=i}),o||r||t||null}(0,i)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){const r=t.name.previousValue;this.formDirective.removeControl({name:r,path:this._getPath(r)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),function gf(e,n){if(!e.hasOwnProperty("model"))return!1;const t=e.model;return!!t.isFirstChange()||!Object.is(n,t.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Pi(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(t){UD.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){const r=t.isDisabled.currentValue,o=0!==r&&function xd(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}(r);UD.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?function Ja(e,n){return[...n.path,e]}(t,this._parent):[t]}static#e=this.\u0275fac=function(r){return new(r||e)(M(st,9),M(Ye,10),M(kn,10),M(Jt,10),M(vu,8),M(_o,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[Ce([_P]),le,on]})}return e})(),GD=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Dn({type:e});static#n=this.\u0275inj=tn({})}return e})();const bP={provide:Jt,useExisting:de(()=>_f),multi:!0};let _f=(()=>{class e extends cr{writeValue(t){this.setProperty("value",parseFloat(t))}registerOnChange(t){this.onChange=r=>{t(""==r?null:parseFloat(r))}}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Ze(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["input","type","range","formControlName",""],["input","type","range","formControl",""],["input","type","range","ngModel",""]],hostBindings:function(r,o){1&r&&k("change",function(s){return o.onChange(s.target.value)})("input",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},features:[Ce([bP]),le]})}return e})();const AP={provide:Jt,useExisting:de(()=>Vi),multi:!0};function KD(e,n){return null==e?`${n}`:(n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let Vi=(()=>{class e extends cr{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){this.value=t;const o=KD(this._getOptionId(t),t);this.setProperty("value",o)}registerOnChange(t){this.onChange=r=>{this.value=this._getOptionValue(r),t(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const r of this._optionMap.keys())if(this._compareWith(this._optionMap.get(r),t))return r;return null}_getOptionValue(t){const r=function NP(e){return e.split(":")[0]}(t);return this._optionMap.has(r)?this._optionMap.get(r):t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Ze(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(r,o){1&r&&k("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ce([AP]),le]})}return e})(),wf=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(KD(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(M(Nt),M(Jn),M(Vi,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();const xP={provide:Jt,useExisting:de(()=>bf),multi:!0};function JD(e,n){return null==e?`${n}`:("string"==typeof n&&(n=`'${n}'`),n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let bf=(()=>{class e extends cr{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){let r;if(this.value=t,Array.isArray(t)){const o=t.map(i=>this._getOptionId(i));r=(i,s)=>{i._setSelected(o.indexOf(s.toString())>-1)}}else r=(o,i)=>{o._setSelected(!1)};this._optionMap.forEach(r)}registerOnChange(t){this.onChange=r=>{const o=[],i=r.selectedOptions;if(void 0!==i){const s=i;for(let a=0;a{let t;return function(o){return(t||(t=Ze(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(r,o){1&r&&k("change",function(s){return o.onChange(s.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ce([xP]),le]})}return e})(),Ef=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(JD(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(JD(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(M(Nt),M(Jn),M(bf,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})(),jP=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Dn({type:e});static#n=this.\u0275inj=tn({imports:[GD]})}return e})(),UP=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:_o,useValue:t.callSetDisabledState??Ka}]}}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Dn({type:e});static#n=this.\u0275inj=tn({imports:[jP]})}return e})();class lw{constructor(){this.riskHotspotsSettings=null,this.coverageInfoSettings=null}}class zP{constructor(){this.showLineCoverage=!0,this.showBranchCoverage=!0,this.showMethodCoverage=!0,this.visibleMetrics=[],this.groupingMaximum=0,this.grouping=0,this.historyComparisionDate="",this.historyComparisionType="",this.filter="",this.sortBy="name",this.sortOrder="asc",this.collapseStates=[]}}class GP{constructor(n){this.et="",this.et=n.et,this.cl=n.cl,this.ucl=n.ucl,this.cal=n.cal,this.tl=n.tl,this.lcq=n.lcq,this.cb=n.cb,this.tb=n.tb,this.bcq=n.bcq,this.cm=n.cm,this.tm=n.tm,this.mcq=n.mcq}get coverageRatioText(){return 0===this.tl?"-":this.cl+"/"+this.cal}get branchCoverageRatioText(){return 0===this.tb?"-":this.cb+"/"+this.tb}get methodCoverageRatioText(){return 0===this.tm?"-":this.cm+"/"+this.tm}}class It{static roundNumber(n){return Math.floor(n*Math.pow(10,It.maximumDecimalPlacesForCoverageQuotas))/Math.pow(10,It.maximumDecimalPlacesForCoverageQuotas)}static getNthOrLastIndexOf(n,t,r){let o=0,i=-1,s=-1;for(;o{this.historicCoverages.push(new GP(r))}),this.metrics=n.metrics}get coverage(){return 0===this.coverableLines?NaN:It.roundNumber(100*this.coveredLines/this.coverableLines)}visible(n,t){if(""!==n&&-1===this.name.toLowerCase().indexOf(n.toLowerCase()))return!1;if(""===t||null===this.currentHistoricCoverage)return!0;if("allChanges"===t){if(this.coveredLines===this.currentHistoricCoverage.cl&&this.uncoveredLines===this.currentHistoricCoverage.ucl&&this.coverableLines===this.currentHistoricCoverage.cal&&this.totalLines===this.currentHistoricCoverage.tl&&this.coveredBranches===this.currentHistoricCoverage.cb&&this.totalBranches===this.currentHistoricCoverage.tb&&this.coveredMethods===this.currentHistoricCoverage.cm&&this.totalMethods===this.currentHistoricCoverage.tm)return!1}else if("lineCoverageIncreaseOnly"===t){let r=this.coverage;if(isNaN(r)||r<=this.currentHistoricCoverage.lcq)return!1}else if("lineCoverageDecreaseOnly"===t){let r=this.coverage;if(isNaN(r)||r>=this.currentHistoricCoverage.lcq)return!1}else if("branchCoverageIncreaseOnly"===t){let r=this.branchCoverage;if(isNaN(r)||r<=this.currentHistoricCoverage.bcq)return!1}else if("branchCoverageDecreaseOnly"===t){let r=this.branchCoverage;if(isNaN(r)||r>=this.currentHistoricCoverage.bcq)return!1}else if("methodCoverageIncreaseOnly"===t){let r=this.methodCoverage;if(isNaN(r)||r<=this.currentHistoricCoverage.mcq)return!1}else if("methodCoverageDecreaseOnly"===t){let r=this.methodCoverage;if(isNaN(r)||r>=this.currentHistoricCoverage.mcq)return!1}return!0}updateCurrentHistoricCoverage(n){if(this.currentHistoricCoverage=null,""!==n)for(let t=0;t-1&&null===t}visible(n,t){if(""!==n&&this.name.toLowerCase().indexOf(n.toLowerCase())>-1)return!0;for(let r=0;r{class e{get nativeWindow(){return function qP(){return window}()}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=te({token:e,factory:e.\u0275fac})}return e})(),WP=(()=>{class e{constructor(){this.translations={}}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=rn({type:e,selectors:[["pro-button"]],inputs:{translations:"translations"},decls:3,vars:1,consts:[["href","https://reportgenerator.io/pro","target","_blank",1,"pro-button","pro-button-tiny",3,"title"]],template:function(r,o){1&r&&(b(0,"\xa0"),y(1,"a",0),b(2,"PRO"),_()),2&r&&(f(1),On("title",o.translations.methodCoverageProVersion))},encapsulation:2})}return e})();function ZP(e,n){if(1&e){const t=Ee();y(0,"div",3)(1,"label")(2,"input",4),k("ngModelChange",function(o){return q(t),W(v().showBranchCoverage=o)})("change",function(){q(t);const o=v();return W(o.showBranchCoverageChange.emit(o.showBranchCoverage))}),_(),b(3),_()()}if(2&e){const t=v();f(2),g("ngModel",t.showBranchCoverage),f(1),G(" ",t.translations.branchCoverage,"")}}function QP(e,n){1&e&&A(0,"pro-button",9),2&e&&g("translations",v().translations)}function YP(e,n){1&e&&A(0,"pro-button",9),2&e&&g("translations",v(2).translations)}function KP(e,n){1&e&&(y(0,"a",13),A(1,"i",14),_()),2&e&&g("href",v().$implicit.explanationUrl,An)}function JP(e,n){if(1&e){const t=Ee();y(0,"div",3)(1,"label")(2,"input",11),k("change",function(){const i=q(t).$implicit;return W(v(2).toggleMetric(i))}),_(),b(3),_(),b(4,"\xa0"),P(5,KP,2,1,"a",12),_()}if(2&e){const t=n.$implicit,r=v(2);f(2),g("checked",r.isMetricSelected(t))("disabled",!r.methodCoverageAvailable),f(1),G(" ",t.name,""),f(2),g("ngIf",t.explanationUrl)}}function XP(e,n){if(1&e&&(Y(0),A(1,"br")(2,"br"),y(3,"b"),b(4),_(),P(5,YP,1,1,"pro-button",7)(6,JP,6,4,"div",10),K()),2&e){const t=v();f(4),N(t.translations.metrics),f(1),g("ngIf",!t.methodCoverageAvailable),f(1),g("ngForOf",t.metrics)}}let ek=(()=>{class e{constructor(){this.visible=!1,this.visibleChange=new Te,this.translations={},this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.metrics=[],this.showLineCoverage=!1,this.showLineCoverageChange=new Te,this.showBranchCoverage=!1,this.showBranchCoverageChange=new Te,this.showMethodCoverage=!1,this.showMethodCoverageChange=new Te,this.visibleMetrics=[],this.visibleMetricsChange=new Te}isMetricSelected(t){return void 0!==this.visibleMetrics.find(r=>r.name===t.name)}toggleMetric(t){let r=this.visibleMetrics.find(o=>o.name===t.name);r?this.visibleMetrics.splice(this.visibleMetrics.indexOf(r),1):this.visibleMetrics.push(t),this.visibleMetrics=[...this.visibleMetrics],this.visibleMetricsChange.emit(this.visibleMetrics)}close(){this.visible=!1,this.visibleChange.emit(this.visible)}cancelEvent(t){t.stopPropagation()}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=rn({type:e,selectors:[["popup"]],inputs:{visible:"visible",translations:"translations",branchCoverageAvailable:"branchCoverageAvailable",methodCoverageAvailable:"methodCoverageAvailable",metrics:"metrics",showLineCoverage:"showLineCoverage",showBranchCoverage:"showBranchCoverage",showMethodCoverage:"showMethodCoverage",visibleMetrics:"visibleMetrics"},outputs:{visibleChange:"visibleChange",showLineCoverageChange:"showLineCoverageChange",showBranchCoverageChange:"showBranchCoverageChange",showMethodCoverageChange:"showMethodCoverageChange",visibleMetricsChange:"visibleMetricsChange"},decls:17,vars:9,consts:[[1,"popup-container",3,"click"],[1,"popup",3,"click"],[1,"close",3,"click"],[1,"mt-1"],["type","checkbox",3,"ngModel","ngModelChange","change"],["class","mt-1",4,"ngIf"],["type","checkbox",3,"ngModel","disabled","ngModelChange","change"],[3,"translations",4,"ngIf"],[4,"ngIf"],[3,"translations"],["class","mt-1",4,"ngFor","ngForOf"],["type","checkbox",3,"checked","disabled","change"],["target","_blank",3,"href",4,"ngIf"],["target","_blank",3,"href"],[1,"icon-info-circled"]],template:function(r,o){1&r&&(y(0,"div",0),k("click",function(){return o.close()}),y(1,"div",1),k("click",function(s){return o.cancelEvent(s)}),y(2,"div",2),k("click",function(){return o.close()}),b(3,"X"),_(),y(4,"b"),b(5),_(),y(6,"div",3)(7,"label")(8,"input",4),k("ngModelChange",function(s){return o.showLineCoverage=s})("change",function(){return o.showLineCoverageChange.emit(o.showLineCoverage)}),_(),b(9),_()(),P(10,ZP,4,2,"div",5),y(11,"div",3)(12,"label")(13,"input",6),k("ngModelChange",function(s){return o.showMethodCoverage=s})("change",function(){return o.showMethodCoverageChange.emit(o.showMethodCoverage)}),_(),b(14),_(),P(15,QP,1,1,"pro-button",7),_(),P(16,XP,7,3,"ng-container",8),_()()),2&r&&(f(5),N(o.translations.coverageTypes),f(3),g("ngModel",o.showLineCoverage),f(1),G(" ",o.translations.coverage,""),f(1),g("ngIf",o.branchCoverageAvailable),f(3),g("ngModel",o.showMethodCoverage)("disabled",!o.methodCoverageAvailable),f(1),G(" ",o.translations.methodCoverage,""),f(1),g("ngIf",!o.methodCoverageAvailable),f(1),g("ngIf",o.metrics.length>0))},dependencies:[mo,lr,rf,Wa,Li,WP],encapsulation:2})}return e})();function tk(e,n){1&e&&A(0,"td",3)}function nk(e,n){1&e&&A(0,"td"),2&e&&Yt("green ",v().greenClass,"")}function rk(e,n){1&e&&A(0,"td"),2&e&&Yt("red ",v().redClass,"")}let uw=(()=>{class e{constructor(){this.grayVisible=!0,this.greenVisible=!1,this.redVisible=!1,this.greenClass="",this.redClass="",this._percentage=NaN}get percentage(){return this._percentage}set percentage(t){this._percentage=t,this.grayVisible=isNaN(t),this.greenVisible=!isNaN(t)&&Math.round(t)>0,this.redVisible=!isNaN(t)&&100-Math.round(t)>0,this.greenClass="covered"+Math.round(t),this.redClass="covered"+(100-Math.round(t))}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=rn({type:e,selectors:[["coverage-bar"]],inputs:{percentage:"percentage"},decls:4,vars:3,consts:[[1,"coverage"],["class","gray covered100",4,"ngIf"],[3,"class",4,"ngIf"],[1,"gray","covered100"]],template:function(r,o){1&r&&(y(0,"table",0),P(1,tk,1,0,"td",1)(2,nk,1,3,"td",2)(3,rk,1,3,"td",2),_()),2&r&&(f(1),g("ngIf",o.grayVisible),f(1),g("ngIf",o.greenVisible),f(1),g("ngIf",o.redVisible))},dependencies:[lr],encapsulation:2,changeDetection:0})}return e})();const ok=["codeelement-row",""];function ik(e,n){if(1&e&&(y(0,"th",5),b(1),_()),2&e){const t=v();f(1),N(t.element.coveredLines)}}function sk(e,n){if(1&e&&(y(0,"th",5),b(1),_()),2&e){const t=v();f(1),N(t.element.uncoveredLines)}}function ak(e,n){if(1&e&&(y(0,"th",5),b(1),_()),2&e){const t=v();f(1),N(t.element.coverableLines)}}function lk(e,n){if(1&e&&(y(0,"th",5),b(1),_()),2&e){const t=v();f(1),N(t.element.totalLines)}}function ck(e,n){if(1&e&&(y(0,"th",6),b(1),_()),2&e){const t=v();g("title",t.element.coverageRatioText),f(1),N(t.element.coveragePercentage)}}function uk(e,n){if(1&e&&(y(0,"th",5),A(1,"coverage-bar",7),_()),2&e){const t=v();f(1),g("percentage",t.element.coverage)}}function dk(e,n){if(1&e&&(y(0,"th",5),b(1),_()),2&e){const t=v();f(1),N(t.element.coveredBranches)}}function fk(e,n){if(1&e&&(y(0,"th",5),b(1),_()),2&e){const t=v();f(1),N(t.element.totalBranches)}}function hk(e,n){if(1&e&&(y(0,"th",6),b(1),_()),2&e){const t=v();g("title",t.element.branchCoverageRatioText),f(1),N(t.element.branchCoveragePercentage)}}function pk(e,n){if(1&e&&(y(0,"th",5),A(1,"coverage-bar",7),_()),2&e){const t=v();f(1),g("percentage",t.element.branchCoverage)}}function gk(e,n){if(1&e&&(y(0,"th",5),b(1),_()),2&e){const t=v();f(1),N(t.element.coveredMethods)}}function mk(e,n){if(1&e&&(y(0,"th",5),b(1),_()),2&e){const t=v();f(1),N(t.element.totalMethods)}}function vk(e,n){if(1&e&&(y(0,"th",6),b(1),_()),2&e){const t=v();g("title",t.element.methodCoverageRatioText),f(1),N(t.element.methodCoveragePercentage)}}function _k(e,n){if(1&e&&(y(0,"th",5),A(1,"coverage-bar",7),_()),2&e){const t=v();f(1),g("percentage",t.element.methodCoverage)}}function yk(e,n){1&e&&A(0,"th",5)}const Ck=(e,n)=>({"icon-plus":e,"icon-minus":n});let Dk=(()=>{class e{constructor(){this.collapsed=!1,this.lineCoverageAvailable=!1,this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.visibleMetrics=[]}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=rn({type:e,selectors:[["","codeelement-row",""]],inputs:{element:"element",collapsed:"collapsed",lineCoverageAvailable:"lineCoverageAvailable",branchCoverageAvailable:"branchCoverageAvailable",methodCoverageAvailable:"methodCoverageAvailable",visibleMetrics:"visibleMetrics"},attrs:ok,decls:19,vars:20,consts:[["href","#",3,"click"],[3,"ngClass"],["class","right",4,"ngIf"],["class","right",3,"title",4,"ngIf"],["class","right",4,"ngFor","ngForOf"],[1,"right"],[1,"right",3,"title"],[3,"percentage"]],template:function(r,o){1&r&&(y(0,"th")(1,"a",0),k("click",function(s){return o.element.toggleCollapse(s)}),A(2,"i",1),b(3),_()(),P(4,ik,2,1,"th",2)(5,sk,2,1,"th",2)(6,ak,2,1,"th",2)(7,lk,2,1,"th",2)(8,ck,2,2,"th",3)(9,uk,2,1,"th",2)(10,dk,2,1,"th",2)(11,fk,2,1,"th",2)(12,hk,2,2,"th",3)(13,pk,2,1,"th",2)(14,gk,2,1,"th",2)(15,mk,2,1,"th",2)(16,vk,2,2,"th",3)(17,_k,2,1,"th",2)(18,yk,1,0,"th",4)),2&r&&(f(2),g("ngClass",od(17,Ck,o.element.collapsed,!o.element.collapsed)),f(1),G(" ",o.element.name,""),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.lineCoverageAvailable),f(1),g("ngIf",o.branchCoverageAvailable),f(1),g("ngIf",o.branchCoverageAvailable),f(1),g("ngIf",o.branchCoverageAvailable),f(1),g("ngIf",o.branchCoverageAvailable),f(1),g("ngIf",o.methodCoverageAvailable),f(1),g("ngIf",o.methodCoverageAvailable),f(1),g("ngIf",o.methodCoverageAvailable),f(1),g("ngIf",o.methodCoverageAvailable),f(1),g("ngForOf",o.visibleMetrics))},dependencies:[Ai,mo,lr,uw],encapsulation:2,changeDetection:0})}return e})();const wk=["coverage-history-chart",""];let bk=(()=>{class e{constructor(){this.path=null,this._historicCoverages=[]}get historicCoverages(){return this._historicCoverages}set historicCoverages(t){if(this._historicCoverages=t,t.length>1){let r="";for(let o=0;o({historiccoverageoffset:e});function Hk(e,n){if(1&e&&A(0,"div",11),2&e){const t=v(2);On("title",t.translations.history+": "+t.translations.coverage),g("historicCoverages",t.clazz.lineCoverageHistory)("ngClass",ya(3,Tf,null!==t.clazz.currentHistoricCoverage))}}function Bk(e,n){if(1&e&&(Y(0),y(1,"div"),b(2),_(),y(3,"div",7),b(4),_(),K()),2&e){const t=v(2);f(1),Yt("currenthistory ",t.getClassName(t.clazz.coverage,t.clazz.currentHistoricCoverage.lcq),""),f(1),G(" ",t.clazz.coveragePercentage," "),f(1),g("title",t.clazz.currentHistoricCoverage.et+": "+t.clazz.currentHistoricCoverage.coverageRatioText),f(1),G("",t.clazz.currentHistoricCoverage.lcq,"%")}}function jk(e,n){if(1&e&&(Y(0),b(1),K()),2&e){const t=v(2);f(1),G(" ",t.clazz.coveragePercentage," ")}}function $k(e,n){if(1&e&&(y(0,"td",9),P(1,Hk,1,5,"div",10)(2,Bk,5,6,"ng-container",1)(3,jk,2,1,"ng-container",1),_()),2&e){const t=v();g("title",t.clazz.coverageRatioText),f(1),g("ngIf",t.clazz.lineCoverageHistory.length>1),f(1),g("ngIf",null!==t.clazz.currentHistoricCoverage),f(1),g("ngIf",null===t.clazz.currentHistoricCoverage)}}function Uk(e,n){if(1&e&&(y(0,"td",6),A(1,"coverage-bar",12),_()),2&e){const t=v();f(1),g("percentage",t.clazz.coverage)}}function zk(e,n){if(1&e&&(Y(0),y(1,"div"),b(2),_(),y(3,"div",7),b(4),_(),K()),2&e){const t=v(2);f(1),Yt("currenthistory ",t.getClassName(t.clazz.coveredBranches,t.clazz.currentHistoricCoverage.cb),""),f(1),G(" ",t.clazz.coveredBranches," "),f(1),g("title",t.clazz.currentHistoricCoverage.et),f(1),G(" ",t.clazz.currentHistoricCoverage.cb," ")}}function Gk(e,n){if(1&e&&(Y(0),b(1),K()),2&e){const t=v(2);f(1),G(" ",t.clazz.coveredBranches," ")}}function qk(e,n){if(1&e&&(y(0,"td",6),P(1,zk,5,6,"ng-container",1)(2,Gk,2,1,"ng-container",1),_()),2&e){const t=v();f(1),g("ngIf",null!==t.clazz.currentHistoricCoverage),f(1),g("ngIf",null===t.clazz.currentHistoricCoverage)}}function Wk(e,n){if(1&e&&(Y(0),y(1,"div",8),b(2),_(),y(3,"div",7),b(4),_(),K()),2&e){const t=v(2);f(2),N(t.clazz.totalBranches),f(1),g("title",t.clazz.currentHistoricCoverage.et),f(1),N(t.clazz.currentHistoricCoverage.tb)}}function Zk(e,n){if(1&e&&(Y(0),b(1),K()),2&e){const t=v(2);f(1),G(" ",t.clazz.totalBranches," ")}}function Qk(e,n){if(1&e&&(y(0,"td",6),P(1,Wk,5,3,"ng-container",1)(2,Zk,2,1,"ng-container",1),_()),2&e){const t=v();f(1),g("ngIf",null!==t.clazz.currentHistoricCoverage),f(1),g("ngIf",null===t.clazz.currentHistoricCoverage)}}function Yk(e,n){if(1&e&&A(0,"div",14),2&e){const t=v(2);On("title",t.translations.history+": "+t.translations.branchCoverage),g("historicCoverages",t.clazz.branchCoverageHistory)("ngClass",ya(3,Tf,null!==t.clazz.currentHistoricCoverage))}}function Kk(e,n){if(1&e&&(Y(0),y(1,"div"),b(2),_(),y(3,"div",7),b(4),_(),K()),2&e){const t=v(2);f(1),Yt("currenthistory ",t.getClassName(t.clazz.branchCoverage,t.clazz.currentHistoricCoverage.bcq),""),f(1),G(" ",t.clazz.branchCoveragePercentage," "),f(1),g("title",t.clazz.currentHistoricCoverage.et+": "+t.clazz.currentHistoricCoverage.branchCoverageRatioText),f(1),G("",t.clazz.currentHistoricCoverage.bcq,"%")}}function Jk(e,n){if(1&e&&(Y(0),b(1),K()),2&e){const t=v(2);f(1),G(" ",t.clazz.branchCoveragePercentage," ")}}function Xk(e,n){if(1&e&&(y(0,"td",9),P(1,Yk,1,5,"div",13)(2,Kk,5,6,"ng-container",1)(3,Jk,2,1,"ng-container",1),_()),2&e){const t=v();g("title",t.clazz.branchCoverageRatioText),f(1),g("ngIf",t.clazz.branchCoverageHistory.length>1),f(1),g("ngIf",null!==t.clazz.currentHistoricCoverage),f(1),g("ngIf",null===t.clazz.currentHistoricCoverage)}}function e2(e,n){if(1&e&&(y(0,"td",6),A(1,"coverage-bar",12),_()),2&e){const t=v();f(1),g("percentage",t.clazz.branchCoverage)}}function t2(e,n){if(1&e&&(Y(0),y(1,"div"),b(2),_(),y(3,"div",7),b(4),_(),K()),2&e){const t=v(2);f(1),Yt("currenthistory ",t.getClassName(t.clazz.coveredMethods,t.clazz.currentHistoricCoverage.cm),""),f(1),G(" ",t.clazz.coveredMethods," "),f(1),g("title",t.clazz.currentHistoricCoverage.et),f(1),G(" ",t.clazz.currentHistoricCoverage.cm," ")}}function n2(e,n){if(1&e&&(Y(0),b(1),K()),2&e){const t=v(2);f(1),G(" ",t.clazz.coveredMethods," ")}}function r2(e,n){if(1&e&&(y(0,"td",6),P(1,t2,5,6,"ng-container",1)(2,n2,2,1,"ng-container",1),_()),2&e){const t=v();f(1),g("ngIf",null!==t.clazz.currentHistoricCoverage),f(1),g("ngIf",null===t.clazz.currentHistoricCoverage)}}function o2(e,n){if(1&e&&(Y(0),y(1,"div",8),b(2),_(),y(3,"div",7),b(4),_(),K()),2&e){const t=v(2);f(2),N(t.clazz.totalMethods),f(1),g("title",t.clazz.currentHistoricCoverage.et),f(1),N(t.clazz.currentHistoricCoverage.tm)}}function i2(e,n){if(1&e&&(Y(0),b(1),K()),2&e){const t=v(2);f(1),G(" ",t.clazz.totalMethods," ")}}function s2(e,n){if(1&e&&(y(0,"td",6),P(1,o2,5,3,"ng-container",1)(2,i2,2,1,"ng-container",1),_()),2&e){const t=v();f(1),g("ngIf",null!==t.clazz.currentHistoricCoverage),f(1),g("ngIf",null===t.clazz.currentHistoricCoverage)}}function a2(e,n){if(1&e&&A(0,"div",16),2&e){const t=v(2);On("title",t.translations.history+": "+t.translations.methodCoverage),g("historicCoverages",t.clazz.methodCoverageHistory)("ngClass",ya(3,Tf,null!==t.clazz.currentHistoricCoverage))}}function l2(e,n){if(1&e&&(Y(0),y(1,"div"),b(2),_(),y(3,"div",7),b(4),_(),K()),2&e){const t=v(2);f(1),Yt("currenthistory ",t.getClassName(t.clazz.methodCoverage,t.clazz.currentHistoricCoverage.mcq),""),f(1),G(" ",t.clazz.methodCoveragePercentage," "),f(1),g("title",t.clazz.currentHistoricCoverage.et+": "+t.clazz.currentHistoricCoverage.methodCoverageRatioText),f(1),G("",t.clazz.currentHistoricCoverage.mcq,"%")}}function c2(e,n){if(1&e&&(Y(0),b(1),K()),2&e){const t=v(2);f(1),G(" ",t.clazz.methodCoveragePercentage," ")}}function u2(e,n){if(1&e&&(y(0,"td",9),P(1,a2,1,5,"div",15)(2,l2,5,6,"ng-container",1)(3,c2,2,1,"ng-container",1),_()),2&e){const t=v();g("title",t.clazz.methodCoverageRatioText),f(1),g("ngIf",t.clazz.methodCoverageHistory.length>1),f(1),g("ngIf",null!==t.clazz.currentHistoricCoverage),f(1),g("ngIf",null===t.clazz.currentHistoricCoverage)}}function d2(e,n){if(1&e&&(y(0,"td",6),A(1,"coverage-bar",12),_()),2&e){const t=v();f(1),g("percentage",t.clazz.methodCoverage)}}function f2(e,n){if(1&e&&(y(0,"td",6),b(1),_()),2&e){const t=n.$implicit,r=v();f(1),N(r.clazz.metrics[t.abbreviation])}}let h2=(()=>{class e{constructor(){this.translations={},this.lineCoverageAvailable=!1,this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.visibleMetrics=[],this.historyComparisionDate=""}getClassName(t,r){return t>r?"lightgreen":t({"icon-up-dir_active":e,"icon-down-dir_active":n,"icon-down-dir":t});function G2(e,n){if(1&e){const t=Ee();y(0,"th",6)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("covered",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"covered"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"covered"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"covered"!==t.settings.sortBy)),f(1),N(t.translations.covered)}}function q2(e,n){if(1&e){const t=Ee();y(0,"th",6)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("uncovered",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"uncovered"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"uncovered"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"uncovered"!==t.settings.sortBy)),f(1),N(t.translations.uncovered)}}function W2(e,n){if(1&e){const t=Ee();y(0,"th",6)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("coverable",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"coverable"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"coverable"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"coverable"!==t.settings.sortBy)),f(1),N(t.translations.coverable)}}function Z2(e,n){if(1&e){const t=Ee();y(0,"th",6)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("total",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"total"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"total"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"total"!==t.settings.sortBy)),f(1),N(t.translations.total)}}function Q2(e,n){if(1&e){const t=Ee();y(0,"th",52)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("coverage",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"coverage"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"coverage"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"coverage"!==t.settings.sortBy)),f(1),N(t.translations.percentage)}}function Y2(e,n){if(1&e){const t=Ee();y(0,"th",6)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("covered_branches",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"covered_branches"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"covered_branches"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"covered_branches"!==t.settings.sortBy)),f(1),N(t.translations.covered)}}function K2(e,n){if(1&e){const t=Ee();y(0,"th",6)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("total_branches",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"total_branches"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"total_branches"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"total_branches"!==t.settings.sortBy)),f(1),N(t.translations.total)}}function J2(e,n){if(1&e){const t=Ee();y(0,"th",52)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("branchcoverage",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"branchcoverage"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"branchcoverage"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"branchcoverage"!==t.settings.sortBy)),f(1),N(t.translations.percentage)}}function X2(e,n){if(1&e){const t=Ee();y(0,"th",6)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("covered_methods",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"covered_methods"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"covered_methods"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"covered_methods"!==t.settings.sortBy)),f(1),N(t.translations.covered)}}function eL(e,n){if(1&e){const t=Ee();y(0,"th",6)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("total_methods",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"total_methods"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"total_methods"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"total_methods"!==t.settings.sortBy)),f(1),N(t.translations.total)}}function tL(e,n){if(1&e){const t=Ee();y(0,"th",52)(1,"a",3),k("click",function(o){return q(t),W(v(2).updateSorting("methodcoverage",o))}),A(2,"i",24),b(3),_()()}if(2&e){const t=v(2);f(2),g("ngClass",$e(2,yt,"methodcoverage"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"methodcoverage"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"methodcoverage"!==t.settings.sortBy)),f(1),N(t.translations.percentage)}}function nL(e,n){if(1&e){const t=Ee();y(0,"th")(1,"a",3),k("click",function(o){const s=q(t).$implicit;return W(v(2).updateSorting(s.abbreviation,o))}),A(2,"i",24),b(3),_(),y(4,"a",53),A(5,"i",54),_()()}if(2&e){const t=n.$implicit,r=v(2);f(2),g("ngClass",$e(3,yt,r.settings.sortBy===t.abbreviation&&"desc"===r.settings.sortOrder,r.settings.sortBy===t.abbreviation&&"asc"===r.settings.sortOrder,r.settings.sortBy!==t.abbreviation)),f(1),N(t.name),f(1),On("href",t.explanationUrl,An)}}function rL(e,n){if(1&e&&A(0,"tr",56),2&e){const t=v().$implicit,r=v(2);g("element",t)("collapsed",t.collapsed)("lineCoverageAvailable",r.settings.showLineCoverage)("branchCoverageAvailable",r.branchCoverageAvailable&&r.settings.showBranchCoverage)("methodCoverageAvailable",r.methodCoverageAvailable&&r.settings.showMethodCoverage)("visibleMetrics",r.settings.visibleMetrics)}}function oL(e,n){if(1&e&&A(0,"tr",58),2&e){const t=v().$implicit,r=v(3);g("clazz",t)("translations",r.translations)("lineCoverageAvailable",r.settings.showLineCoverage)("branchCoverageAvailable",r.branchCoverageAvailable&&r.settings.showBranchCoverage)("methodCoverageAvailable",r.methodCoverageAvailable&&r.settings.showMethodCoverage)("visibleMetrics",r.settings.visibleMetrics)("historyComparisionDate",r.settings.historyComparisionDate)}}function iL(e,n){if(1&e&&(Y(0),P(1,oL,1,7,"tr",57),K()),2&e){const t=n.$implicit,r=v().$implicit,o=v(2);f(1),g("ngIf",!r.collapsed&&t.visible(o.settings.filter,o.settings.historyComparisionType))}}function sL(e,n){if(1&e&&A(0,"tr",61),2&e){const t=v().$implicit,r=v(5);g("clazz",t)("translations",r.translations)("lineCoverageAvailable",r.settings.showLineCoverage)("branchCoverageAvailable",r.branchCoverageAvailable&&r.settings.showBranchCoverage)("methodCoverageAvailable",r.methodCoverageAvailable&&r.settings.showMethodCoverage)("visibleMetrics",r.settings.visibleMetrics)("historyComparisionDate",r.settings.historyComparisionDate)}}function aL(e,n){if(1&e&&(Y(0),P(1,sL,1,7,"tr",60),K()),2&e){const t=n.$implicit,r=v(2).$implicit,o=v(3);f(1),g("ngIf",!r.collapsed&&t.visible(o.settings.filter,o.settings.historyComparisionType))}}function lL(e,n){if(1&e&&(Y(0),A(1,"tr",59),P(2,aL,2,1,"ng-container",27),K()),2&e){const t=v().$implicit,r=v(3);f(1),g("element",t)("collapsed",t.collapsed)("lineCoverageAvailable",r.settings.showLineCoverage)("branchCoverageAvailable",r.branchCoverageAvailable&&r.settings.showBranchCoverage)("methodCoverageAvailable",r.methodCoverageAvailable&&r.settings.showMethodCoverage)("visibleMetrics",r.settings.visibleMetrics),f(1),g("ngForOf",t.classes)}}function cL(e,n){if(1&e&&(Y(0),P(1,lL,3,7,"ng-container",0),K()),2&e){const t=n.$implicit,r=v().$implicit,o=v(2);f(1),g("ngIf",!r.collapsed&&t.visible(o.settings.filter,o.settings.historyComparisionType))}}function uL(e,n){if(1&e&&(Y(0),P(1,rL,1,6,"tr",55)(2,iL,2,1,"ng-container",27)(3,cL,2,1,"ng-container",27),K()),2&e){const t=n.$implicit,r=v(2);f(1),g("ngIf",t.visible(r.settings.filter,r.settings.historyComparisionType)),f(1),g("ngForOf",t.classes),f(1),g("ngForOf",t.subElements)}}function dL(e,n){if(1&e){const t=Ee();y(0,"div"),P(1,p2,1,9,"popup",1),y(2,"div",2)(3,"div")(4,"a",3),k("click",function(o){return q(t),W(v().collapseAll(o))}),b(5),_(),b(6," | "),y(7,"a",3),k("click",function(o){return q(t),W(v().expandAll(o))}),b(8),_()(),y(9,"div",4),P(10,g2,2,1,"ng-container",0)(11,m2,2,1,"ng-container",0)(12,v2,2,1,"ng-container",0),A(13,"br"),b(14),y(15,"input",5),k("ngModelChange",function(o){return q(t),W(v().settings.grouping=o)})("ngModelChange",function(){return q(t),W(v().updateCoverageInfo())}),_()(),y(16,"div",4),P(17,I2,9,6,"ng-container",0),_(),y(18,"div",6)(19,"div")(20,"button",7),k("click",function(){return q(t),W(v().popupVisible=!0)}),A(21,"i",8),b(22),_()(),A(23,"br"),y(24,"div")(25,"span"),b(26),_(),y(27,"input",9),k("ngModelChange",function(o){return q(t),W(v().settings.filter=o)}),_()()()(),y(28,"div",10)(29,"table",11)(30,"colgroup"),A(31,"col",12),P(32,M2,1,0,"col",13)(33,S2,1,0,"col",14)(34,T2,1,0,"col",15)(35,A2,1,0,"col",16)(36,N2,1,0,"col",17)(37,x2,1,0,"col",18)(38,O2,1,0,"col",13)(39,R2,1,0,"col",16)(40,F2,1,0,"col",17)(41,P2,1,0,"col",18)(42,k2,1,0,"col",13)(43,L2,1,0,"col",16)(44,V2,1,0,"col",17)(45,H2,1,0,"col",18)(46,B2,1,0,"col",19),_(),y(47,"thead")(48,"tr",20),A(49,"th"),P(50,j2,2,1,"th",21)(51,$2,2,1,"th",22)(52,U2,2,1,"th",22)(53,z2,2,2,"th",23),_(),y(54,"tr")(55,"th")(56,"a",3),k("click",function(o){return q(t),W(v().updateSorting("name",o))}),A(57,"i",24),b(58),_()(),P(59,G2,4,6,"th",25)(60,q2,4,6,"th",25)(61,W2,4,6,"th",25)(62,Z2,4,6,"th",25)(63,Q2,4,6,"th",26)(64,Y2,4,6,"th",25)(65,K2,4,6,"th",25)(66,J2,4,6,"th",26)(67,X2,4,6,"th",25)(68,eL,4,6,"th",25)(69,tL,4,6,"th",26)(70,nL,6,7,"th",27),_()(),y(71,"tbody"),P(72,uL,4,3,"ng-container",27),_()()()()}if(2&e){const t=v();f(1),g("ngIf",t.popupVisible),f(4),N(t.translations.collapseAll),f(3),N(t.translations.expandAll),f(2),g("ngIf",-1===t.settings.grouping),f(1),g("ngIf",0===t.settings.grouping),f(1),g("ngIf",t.settings.grouping>0),f(2),G(" ",t.translations.grouping," "),f(1),g("max",t.settings.groupingMaximum)("ngModel",t.settings.grouping),f(2),g("ngIf",t.historicCoverageExecutionTimes.length>0),f(5),N(t.metrics.length>0?t.translations.selectCoverageTypesAndMetrics:t.translations.selectCoverageTypes),f(4),G("",t.translations.filter," "),f(1),g("ngModel",t.settings.filter),f(5),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.branchCoverageAvailable&&t.settings.showBranchCoverage),f(1),g("ngIf",t.branchCoverageAvailable&&t.settings.showBranchCoverage),f(1),g("ngIf",t.branchCoverageAvailable&&t.settings.showBranchCoverage),f(1),g("ngIf",t.branchCoverageAvailable&&t.settings.showBranchCoverage),f(1),g("ngIf",t.methodCoverageAvailable&&t.settings.showMethodCoverage),f(1),g("ngIf",t.methodCoverageAvailable&&t.settings.showMethodCoverage),f(1),g("ngIf",t.methodCoverageAvailable&&t.settings.showMethodCoverage),f(1),g("ngIf",t.methodCoverageAvailable&&t.settings.showMethodCoverage),f(1),g("ngForOf",t.settings.visibleMetrics),f(4),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.branchCoverageAvailable&&t.settings.showBranchCoverage),f(1),g("ngIf",t.methodCoverageAvailable&&t.settings.showMethodCoverage),f(1),g("ngIf",t.settings.visibleMetrics.length>0),f(4),g("ngClass",$e(47,yt,"name"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"name"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"name"!==t.settings.sortBy)),f(1),N(t.translations.name),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.settings.showLineCoverage),f(1),g("ngIf",t.branchCoverageAvailable&&t.settings.showBranchCoverage),f(1),g("ngIf",t.branchCoverageAvailable&&t.settings.showBranchCoverage),f(1),g("ngIf",t.branchCoverageAvailable&&t.settings.showBranchCoverage),f(1),g("ngIf",t.methodCoverageAvailable&&t.settings.showMethodCoverage),f(1),g("ngIf",t.methodCoverageAvailable&&t.settings.showMethodCoverage),f(1),g("ngIf",t.methodCoverageAvailable&&t.settings.showMethodCoverage),f(1),g("ngForOf",t.settings.visibleMetrics),f(2),g("ngForOf",t.codeElements)}}let fL=(()=>{class e{constructor(t){this.queryString="",this.historicCoverageExecutionTimes=[],this.branchCoverageAvailable=!1,this.methodCoverageAvailable=!1,this.metrics=[],this.codeElements=[],this.translations={},this.popupVisible=!1,this.settings=new zP,this.window=t.nativeWindow}ngOnInit(){this.historicCoverageExecutionTimes=this.window.historicCoverageExecutionTimes,this.branchCoverageAvailable=this.window.branchCoverageAvailable,this.methodCoverageAvailable=this.window.methodCoverageAvailable,this.metrics=this.window.metrics,this.translations=this.window.translations,It.maximumDecimalPlacesForCoverageQuotas=this.window.maximumDecimalPlacesForCoverageQuotas;let t=!1;if(void 0!==this.window.history&&void 0!==this.window.history.replaceState&&null!==this.window.history.state&&null!=this.window.history.state.coverageInfoSettings)console.log("Coverage info: Restoring from history",this.window.history.state.coverageInfoSettings),t=!0,this.settings=JSON.parse(JSON.stringify(this.window.history.state.coverageInfoSettings));else{let o=0,i=this.window.assemblies;for(let s=0;s-1&&(this.queryString=window.location.href.substring(r)),this.updateCoverageInfo(),t&&this.restoreCollapseState()}onBeforeUnload(){if(this.saveCollapseState(),void 0!==this.window.history&&void 0!==this.window.history.replaceState){console.log("Coverage info: Updating history",this.settings);let t=new lw;null!==window.history.state&&(t=JSON.parse(JSON.stringify(this.window.history.state))),t.coverageInfoSettings=JSON.parse(JSON.stringify(this.settings)),window.history.replaceState(t,"")}}updateCoverageInfo(){let t=(new Date).getTime(),r=this.window.assemblies,o=[],i=0;if(0===this.settings.grouping)for(let l=0;l{for(let o=0;o{for(let i=0;it&&(o[i].collapsed=this.settings.collapseStates[t]),t++,r(o[i].subElements)};r(this.codeElements)}static#e=this.\u0275fac=function(r){return new(r||e)(M(Sf))};static#t=this.\u0275cmp=rn({type:e,selectors:[["coverage-info"]],hostBindings:function(r,o){1&r&&k("beforeunload",function(){return o.onBeforeUnload()},0,Ic)},decls:1,vars:1,consts:[[4,"ngIf"],[3,"visible","translations","branchCoverageAvailable","methodCoverageAvailable","metrics","showLineCoverage","showBranchCoverage","showMethodCoverage","visibleMetrics","visibleChange","showLineCoverageChange","showBranchCoverageChange","showMethodCoverageChange","visibleMetricsChange",4,"ngIf"],[1,"customizebox"],["href","#",3,"click"],[1,"center"],["type","range","step","1","min","-1",3,"max","ngModel","ngModelChange"],[1,"right"],["type","button",3,"click"],[1,"icon-cog"],["type","text",3,"ngModel","ngModelChange"],[1,"table-responsive"],[1,"overview","table-fixed","stripped"],[1,"column-min-200"],["class","column90",4,"ngIf"],["class","column105",4,"ngIf"],["class","column100",4,"ngIf"],["class","column70",4,"ngIf"],["class","column98",4,"ngIf"],["class","column112",4,"ngIf"],["class","column112",4,"ngFor","ngForOf"],[1,"header"],["class","center","colspan","6",4,"ngIf"],["class","center","colspan","4",4,"ngIf"],["class","center",4,"ngIf"],[1,"icon-down-dir",3,"ngClass"],["class","right",4,"ngIf"],["class","center","colspan","2",4,"ngIf"],[4,"ngFor","ngForOf"],[3,"visible","translations","branchCoverageAvailable","methodCoverageAvailable","metrics","showLineCoverage","showBranchCoverage","showMethodCoverage","visibleMetrics","visibleChange","showLineCoverageChange","showBranchCoverageChange","showMethodCoverageChange","visibleMetricsChange"],[3,"ngModel","ngModelChange"],["value",""],[3,"value",4,"ngFor","ngForOf"],[3,"value"],["value","allChanges"],["value","lineCoverageIncreaseOnly"],["value","lineCoverageDecreaseOnly"],["value","branchCoverageIncreaseOnly",4,"ngIf"],["value","branchCoverageDecreaseOnly",4,"ngIf"],["value","methodCoverageIncreaseOnly",4,"ngIf"],["value","methodCoverageDecreaseOnly",4,"ngIf"],["value","branchCoverageIncreaseOnly"],["value","branchCoverageDecreaseOnly"],["value","methodCoverageIncreaseOnly"],["value","methodCoverageDecreaseOnly"],[1,"column90"],[1,"column105"],[1,"column100"],[1,"column70"],[1,"column98"],[1,"column112"],["colspan","6",1,"center"],["colspan","4",1,"center"],["colspan","2",1,"center"],["target","_blank",3,"href"],[1,"icon-info-circled"],["codeelement-row","",3,"element","collapsed","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics",4,"ngIf"],["codeelement-row","",3,"element","collapsed","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics"],["class-row","",3,"clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics","historyComparisionDate",4,"ngIf"],["class-row","",3,"clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics","historyComparisionDate"],["codeelement-row","",1,"namespace",3,"element","collapsed","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics"],["class","namespace","class-row","",3,"clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics","historyComparisionDate",4,"ngIf"],["class-row","",1,"namespace",3,"clazz","translations","lineCoverageAvailable","branchCoverageAvailable","methodCoverageAvailable","visibleMetrics","historyComparisionDate"]],template:function(r,o){1&r&&P(0,dL,73,51,"div",0),2&r&&g("ngIf",o.codeElements.length>0)},dependencies:[Ai,mo,lr,wf,Ef,Oi,_f,Vi,Wa,Li,ek,Dk,h2],encapsulation:2})}return e})();class hL{constructor(){this.assembly="",this.numberOfRiskHotspots=10,this.filter="",this.sortBy="",this.sortOrder="asc"}}function pL(e,n){if(1&e&&(y(0,"option",15),b(1),_()),2&e){const t=n.$implicit;g("value",t),f(1),N(t)}}function gL(e,n){if(1&e&&(y(0,"span"),b(1),_()),2&e){const t=v(2);f(1),N(t.translations.top)}}function mL(e,n){1&e&&(y(0,"option",22),b(1,"20"),_())}function vL(e,n){1&e&&(y(0,"option",23),b(1,"50"),_())}function _L(e,n){1&e&&(y(0,"option",24),b(1,"100"),_())}function yL(e,n){if(1&e&&(y(0,"option",15),b(1),_()),2&e){const t=v(3);g("value",t.totalNumberOfRiskHotspots),f(1),N(t.translations.all)}}function CL(e,n){if(1&e){const t=Ee();y(0,"select",16),k("ngModelChange",function(o){return q(t),W(v(2).settings.numberOfRiskHotspots=o)}),y(1,"option",17),b(2,"10"),_(),P(3,mL,2,0,"option",18)(4,vL,2,0,"option",19)(5,_L,2,0,"option",20)(6,yL,2,2,"option",21),_()}if(2&e){const t=v(2);g("ngModel",t.settings.numberOfRiskHotspots),f(3),g("ngIf",t.totalNumberOfRiskHotspots>10),f(1),g("ngIf",t.totalNumberOfRiskHotspots>20),f(1),g("ngIf",t.totalNumberOfRiskHotspots>50),f(1),g("ngIf",t.totalNumberOfRiskHotspots>100)}}function DL(e,n){1&e&&A(0,"col",25)}const nl=(e,n,t)=>({"icon-up-dir_active":e,"icon-down-dir_active":n,"icon-down-dir":t});function wL(e,n){if(1&e){const t=Ee();y(0,"th")(1,"a",12),k("click",function(o){const s=q(t).index;return W(v(2).updateSorting(""+s,o))}),A(2,"i",13),b(3),_(),y(4,"a",26),A(5,"i",27),_()()}if(2&e){const t=n.$implicit,r=n.index,o=v(2);f(2),g("ngClass",$e(3,nl,o.settings.sortBy===""+r&&"desc"===o.settings.sortOrder,o.settings.sortBy===""+r&&"asc"===o.settings.sortOrder,o.settings.sortBy!==""+r)),f(1),N(t.name),f(1),On("href",t.explanationUrl,An)}}const bL=(e,n)=>({lightred:e,lightgreen:n});function EL(e,n){if(1&e&&(y(0,"td",31),b(1),_()),2&e){const t=n.$implicit;g("ngClass",od(2,bL,t.exceeded,!t.exceeded)),f(1),N(t.value)}}function IL(e,n){if(1&e&&(y(0,"tr")(1,"td"),b(2),_(),y(3,"td")(4,"a",28),b(5),_()(),y(6,"td",29)(7,"a",28),b(8),_()(),P(9,EL,2,5,"td",30),_()),2&e){const t=n.$implicit,r=v(2);f(2),N(t.assembly),f(2),g("href",t.reportPath+r.queryString,An),f(1),N(t.class),f(1),g("title",t.methodName),f(1),g("href",t.reportPath+r.queryString+"#file"+t.fileIndex+"_line"+t.line,An),f(1),G(" ",t.methodShortName," "),f(1),g("ngForOf",t.metrics)}}function ML(e,n){if(1&e){const t=Ee();y(0,"div")(1,"div",1)(2,"div")(3,"select",2),k("ngModelChange",function(o){return q(t),W(v().settings.assembly=o)})("ngModelChange",function(){return q(t),W(v().updateRiskHotpots())}),y(4,"option",3),b(5),_(),P(6,pL,2,2,"option",4),_()(),y(7,"div",5),P(8,gL,2,1,"span",0)(9,CL,7,5,"select",6),_(),A(10,"div",5),y(11,"div",7)(12,"span"),b(13),_(),y(14,"input",8),k("ngModelChange",function(o){return q(t),W(v().settings.filter=o)})("ngModelChange",function(){return q(t),W(v().updateRiskHotpots())}),_()()(),y(15,"div",9)(16,"table",10)(17,"colgroup"),A(18,"col")(19,"col")(20,"col"),P(21,DL,1,0,"col",11),_(),y(22,"thead")(23,"tr")(24,"th")(25,"a",12),k("click",function(o){return q(t),W(v().updateSorting("assembly",o))}),A(26,"i",13),b(27),_()(),y(28,"th")(29,"a",12),k("click",function(o){return q(t),W(v().updateSorting("class",o))}),A(30,"i",13),b(31),_()(),y(32,"th")(33,"a",12),k("click",function(o){return q(t),W(v().updateSorting("method",o))}),A(34,"i",13),b(35),_()(),P(36,wL,6,7,"th",14),_()(),y(37,"tbody"),P(38,IL,10,7,"tr",14),function my(e,n){const t=X();let r;const o=e+V;t.firstCreatePass?(r=function hN(e,n){if(n)for(let t=n.length-1;t>=0;t--){const r=n[t];if(e===r.name)return r}}(n,t.pipeRegistry),t.data[o]=r,r.onDestroy&&(t.destroyHooks??=[]).push(o,r.onDestroy)):r=t.data[o];const i=r.factory||(r.factory=Gn(r.type)),a=lt(M);try{const l=us(!1),c=i();return us(l),function MA(e,n,t,r){t>=e.data.length&&(e.data[t]=null,e.blueprint[t]=null),n[t]=r}(t,w(),o,c),c}finally{lt(a)}}(39,"slice"),_()()()()}if(2&e){const t=v();f(3),g("ngModel",t.settings.assembly),f(2),N(t.translations.assembly),f(1),g("ngForOf",t.assemblies),f(2),g("ngIf",t.totalNumberOfRiskHotspots>10),f(1),g("ngIf",t.totalNumberOfRiskHotspots>10),f(4),G("",t.translations.filter," "),f(1),g("ngModel",t.settings.filter),f(7),g("ngForOf",t.riskHotspotMetrics),f(5),g("ngClass",$e(20,nl,"assembly"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"assembly"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"assembly"!==t.settings.sortBy)),f(1),N(t.translations.assembly),f(3),g("ngClass",$e(24,nl,"class"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"class"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"class"!==t.settings.sortBy)),f(1),N(t.translations.class),f(3),g("ngClass",$e(28,nl,"method"===t.settings.sortBy&&"desc"===t.settings.sortOrder,"method"===t.settings.sortBy&&"asc"===t.settings.sortOrder,"method"!==t.settings.sortBy)),f(1),N(t.translations.method),f(1),g("ngForOf",t.riskHotspotMetrics),f(2),g("ngForOf",vy(39,16,t.riskHotspots,0,t.settings.numberOfRiskHotspots))}}let SL=(()=>{class e{constructor(t){this.queryString="",this.riskHotspotMetrics=[],this.riskHotspots=[],this.totalNumberOfRiskHotspots=0,this.assemblies=[],this.translations={},this.settings=new hL,this.window=t.nativeWindow}ngOnInit(){this.riskHotspotMetrics=this.window.riskHotspotMetrics,this.translations=this.window.translations,void 0!==this.window.history&&void 0!==this.window.history.replaceState&&null!==this.window.history.state&&null!=this.window.history.state.riskHotspotsSettings&&(console.log("Risk hotspots: Restoring from history",this.window.history.state.riskHotspotsSettings),this.settings=JSON.parse(JSON.stringify(this.window.history.state.riskHotspotsSettings)));const t=window.location.href.indexOf("?");t>-1&&(this.queryString=window.location.href.substring(t)),this.updateRiskHotpots()}onDonBeforeUnlodad(){if(void 0!==this.window.history&&void 0!==this.window.history.replaceState){console.log("Risk hotspots: Updating history",this.settings);let t=new lw;null!==window.history.state&&(t=JSON.parse(JSON.stringify(this.window.history.state))),t.riskHotspotsSettings=JSON.parse(JSON.stringify(this.settings)),window.history.replaceState(t,"")}}updateRiskHotpots(){const t=this.window.riskHotspots;if(this.totalNumberOfRiskHotspots=t.length,0===this.assemblies.length){let s=[];for(let a=0;a0)},dependencies:[Ai,mo,lr,wf,Ef,Oi,Vi,Wa,Li,HC],encapsulation:2})}return e})(),TL=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Dn({type:e,bootstrap:[SL,fL]});static#n=this.\u0275inj=tn({providers:[Sf],imports:[NF,UP]})}return e})();TF().bootstrapModule(TL).catch(e=>console.error(e))}},rl=>{rl(rl.s=316)}]); \ No newline at end of file diff --git a/src/ReportGenerator.Core/Reporting/Builders/Rendering/resources/polyfills.js b/src/ReportGenerator.Core/Reporting/Builders/Rendering/resources/polyfills.js index feef17d2..cfb676ae 100644 --- a/src/ReportGenerator.Core/Reporting/Builders/Rendering/resources/polyfills.js +++ b/src/ReportGenerator.Core/Reporting/Builders/Rendering/resources/polyfills.js @@ -1 +1 @@ -"use strict";(self.webpackChunkcoverage_app=self.webpackChunkcoverage_app||[]).push([[429],{321:(ie,Ee,de)=>{de(332)},332:()=>{!function(t){const n=t.performance;function i(M){n&&n.mark&&n.mark(M)}function o(M,T){n&&n.measure&&n.measure(M,T)}i("Zone");const c=t.__Zone_symbol_prefix||"__zone_symbol__";function a(M){return c+M}const y=!0===t[a("forceDuplicateZoneCheck")];if(t.Zone){if(y||"function"!=typeof t.Zone.__symbol__)throw new Error("Zone already loaded.");return t.Zone}let d=(()=>{class M{static assertZonePatched(){if(t.Promise!==oe.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=M.current;for(;e.parent;)e=e.parent;return e}static get current(){return U.zone}static get currentTask(){return re}static __load_patch(e,r,k=!1){if(oe.hasOwnProperty(e)){if(!k&&y)throw Error("Already loaded patch: "+e)}else if(!t["__Zone_disable_"+e]){const C="Zone:"+e;i(C),oe[e]=r(t,M,z),o(C,C)}}get parent(){return this._parent}get name(){return this._name}constructor(e,r){this._parent=e,this._name=r?r.name||"unnamed":"",this._properties=r&&r.properties||{},this._zoneDelegate=new v(this,this._parent&&this._parent._zoneDelegate,r)}get(e){const r=this.getZoneWith(e);if(r)return r._properties[e]}getZoneWith(e){let r=this;for(;r;){if(r._properties.hasOwnProperty(e))return r;r=r._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,r){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const k=this._zoneDelegate.intercept(this,e,r),C=this;return function(){return C.runGuarded(k,this,arguments,r)}}run(e,r,k,C){U={parent:U,zone:this};try{return this._zoneDelegate.invoke(this,e,r,k,C)}finally{U=U.parent}}runGuarded(e,r=null,k,C){U={parent:U,zone:this};try{try{return this._zoneDelegate.invoke(this,e,r,k,C)}catch($){if(this._zoneDelegate.handleError(this,$))throw $}}finally{U=U.parent}}runTask(e,r,k){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||K).name+"; Execution: "+this.name+")");if(e.state===x&&(e.type===Q||e.type===P))return;const C=e.state!=E;C&&e._transitionTo(E,A),e.runCount++;const $=re;re=e,U={parent:U,zone:this};try{e.type==P&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,r,k)}catch(l){if(this._zoneDelegate.handleError(this,l))throw l}}finally{e.state!==x&&e.state!==h&&(e.type==Q||e.data&&e.data.isPeriodic?C&&e._transitionTo(A,E):(e.runCount=0,this._updateTaskCount(e,-1),C&&e._transitionTo(x,E,x))),U=U.parent,re=$}}scheduleTask(e){if(e.zone&&e.zone!==this){let k=this;for(;k;){if(k===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);k=k.parent}}e._transitionTo(X,x);const r=[];e._zoneDelegates=r,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(k){throw e._transitionTo(h,X,x),this._zoneDelegate.handleError(this,k),k}return e._zoneDelegates===r&&this._updateTaskCount(e,1),e.state==X&&e._transitionTo(A,X),e}scheduleMicroTask(e,r,k,C){return this.scheduleTask(new p(I,e,r,k,C,void 0))}scheduleMacroTask(e,r,k,C,$){return this.scheduleTask(new p(P,e,r,k,C,$))}scheduleEventTask(e,r,k,C,$){return this.scheduleTask(new p(Q,e,r,k,C,$))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||K).name+"; Execution: "+this.name+")");if(e.state===A||e.state===E){e._transitionTo(G,A,E);try{this._zoneDelegate.cancelTask(this,e)}catch(r){throw e._transitionTo(h,G),this._zoneDelegate.handleError(this,r),r}return this._updateTaskCount(e,-1),e._transitionTo(x,G),e.runCount=0,e}}_updateTaskCount(e,r){const k=e._zoneDelegates;-1==r&&(e._zoneDelegates=null);for(let C=0;CM.hasTask(e,r),onScheduleTask:(M,T,e,r)=>M.scheduleTask(e,r),onInvokeTask:(M,T,e,r,k,C)=>M.invokeTask(e,r,k,C),onCancelTask:(M,T,e,r)=>M.cancelTask(e,r)};class v{constructor(T,e,r){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=T,this._parentDelegate=e,this._forkZS=r&&(r&&r.onFork?r:e._forkZS),this._forkDlgt=r&&(r.onFork?e:e._forkDlgt),this._forkCurrZone=r&&(r.onFork?this.zone:e._forkCurrZone),this._interceptZS=r&&(r.onIntercept?r:e._interceptZS),this._interceptDlgt=r&&(r.onIntercept?e:e._interceptDlgt),this._interceptCurrZone=r&&(r.onIntercept?this.zone:e._interceptCurrZone),this._invokeZS=r&&(r.onInvoke?r:e._invokeZS),this._invokeDlgt=r&&(r.onInvoke?e:e._invokeDlgt),this._invokeCurrZone=r&&(r.onInvoke?this.zone:e._invokeCurrZone),this._handleErrorZS=r&&(r.onHandleError?r:e._handleErrorZS),this._handleErrorDlgt=r&&(r.onHandleError?e:e._handleErrorDlgt),this._handleErrorCurrZone=r&&(r.onHandleError?this.zone:e._handleErrorCurrZone),this._scheduleTaskZS=r&&(r.onScheduleTask?r:e._scheduleTaskZS),this._scheduleTaskDlgt=r&&(r.onScheduleTask?e:e._scheduleTaskDlgt),this._scheduleTaskCurrZone=r&&(r.onScheduleTask?this.zone:e._scheduleTaskCurrZone),this._invokeTaskZS=r&&(r.onInvokeTask?r:e._invokeTaskZS),this._invokeTaskDlgt=r&&(r.onInvokeTask?e:e._invokeTaskDlgt),this._invokeTaskCurrZone=r&&(r.onInvokeTask?this.zone:e._invokeTaskCurrZone),this._cancelTaskZS=r&&(r.onCancelTask?r:e._cancelTaskZS),this._cancelTaskDlgt=r&&(r.onCancelTask?e:e._cancelTaskDlgt),this._cancelTaskCurrZone=r&&(r.onCancelTask?this.zone:e._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const k=r&&r.onHasTask;(k||e&&e._hasTaskZS)&&(this._hasTaskZS=k?r:b,this._hasTaskDlgt=e,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=T,r.onScheduleTask||(this._scheduleTaskZS=b,this._scheduleTaskDlgt=e,this._scheduleTaskCurrZone=this.zone),r.onInvokeTask||(this._invokeTaskZS=b,this._invokeTaskDlgt=e,this._invokeTaskCurrZone=this.zone),r.onCancelTask||(this._cancelTaskZS=b,this._cancelTaskDlgt=e,this._cancelTaskCurrZone=this.zone))}fork(T,e){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,T,e):new d(T,e)}intercept(T,e,r){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,T,e,r):e}invoke(T,e,r,k,C){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,T,e,r,k,C):e.apply(r,k)}handleError(T,e){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,T,e)}scheduleTask(T,e){let r=e;if(this._scheduleTaskZS)this._hasTaskZS&&r._zoneDelegates.push(this._hasTaskDlgtOwner),r=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,T,e),r||(r=e);else if(e.scheduleFn)e.scheduleFn(e);else{if(e.type!=I)throw new Error("Task is missing scheduleFn.");R(e)}return r}invokeTask(T,e,r,k){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,T,e,r,k):e.callback.apply(r,k)}cancelTask(T,e){let r;if(this._cancelTaskZS)r=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,T,e);else{if(!e.cancelFn)throw Error("Task is not cancelable");r=e.cancelFn(e)}return r}hasTask(T,e){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,T,e)}catch(r){this.handleError(T,r)}}_updateTaskCount(T,e){const r=this._taskCounts,k=r[T],C=r[T]=k+e;if(C<0)throw new Error("More tasks executed then were scheduled.");0!=k&&0!=C||this.hasTask(this.zone,{microTask:r.microTask>0,macroTask:r.macroTask>0,eventTask:r.eventTask>0,change:T})}}class p{constructor(T,e,r,k,C,$){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=T,this.source=e,this.data=k,this.scheduleFn=C,this.cancelFn=$,!r)throw new Error("callback is not defined");this.callback=r;const l=this;this.invoke=T===Q&&k&&k.useG?p.invokeTask:function(){return p.invokeTask.call(t,l,this,arguments)}}static invokeTask(T,e,r){T||(T=this),ee++;try{return T.runCount++,T.zone.runTask(T,e,r)}finally{1==ee&&_(),ee--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(x,X)}_transitionTo(T,e,r){if(this._state!==e&&this._state!==r)throw new Error(`${this.type} '${this.source}': can not transition to '${T}', expecting state '${e}'${r?" or '"+r+"'":""}, was '${this._state}'.`);this._state=T,T==x&&(this._zoneDelegates=null)}toString(){return this.data&&typeof this.data.handleId<"u"?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const L=a("setTimeout"),Z=a("Promise"),N=a("then");let J,B=[],H=!1;function q(M){if(J||t[Z]&&(J=t[Z].resolve(0)),J){let T=J[N];T||(T=J.then),T.call(J,M)}else t[L](M,0)}function R(M){0===ee&&0===B.length&&q(_),M&&B.push(M)}function _(){if(!H){for(H=!0;B.length;){const M=B;B=[];for(let T=0;TU,onUnhandledError:W,microtaskDrainDone:W,scheduleMicroTask:R,showUncaughtError:()=>!d[a("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:W,patchMethod:()=>W,bindArguments:()=>[],patchThen:()=>W,patchMacroTask:()=>W,patchEventPrototype:()=>W,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>W,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>W,wrapWithCurrentZone:()=>W,filterProperties:()=>[],attachOriginToPatched:()=>W,_redefineProperty:()=>W,patchCallbacks:()=>W,nativeScheduleMicroTask:q};let U={parent:null,zone:new d(null,null)},re=null,ee=0;function W(){}o("Zone","Zone"),t.Zone=d}(typeof window<"u"&&window||typeof self<"u"&&self||global);const ie=Object.getOwnPropertyDescriptor,Ee=Object.defineProperty,de=Object.getPrototypeOf,ge=Object.create,Ve=Array.prototype.slice,Se="addEventListener",Oe="removeEventListener",Ze=Zone.__symbol__(Se),Ne=Zone.__symbol__(Oe),ce="true",ae="false",ke=Zone.__symbol__("");function Ie(t,n){return Zone.current.wrap(t,n)}function Me(t,n,i,o,c){return Zone.current.scheduleMacroTask(t,n,i,o,c)}const j=Zone.__symbol__,Pe=typeof window<"u",Te=Pe?window:void 0,Y=Pe&&Te||"object"==typeof self&&self||global,ct="removeAttribute";function Le(t,n){for(let i=t.length-1;i>=0;i--)"function"==typeof t[i]&&(t[i]=Ie(t[i],n+"_"+i));return t}function Fe(t){return!t||!1!==t.writable&&!("function"==typeof t.get&&typeof t.set>"u")}const Be=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,we=!("nw"in Y)&&typeof Y.process<"u"&&"[object process]"==={}.toString.call(Y.process),Ae=!we&&!Be&&!(!Pe||!Te.HTMLElement),Ue=typeof Y.process<"u"&&"[object process]"==={}.toString.call(Y.process)&&!Be&&!(!Pe||!Te.HTMLElement),Re={},We=function(t){if(!(t=t||Y.event))return;let n=Re[t.type];n||(n=Re[t.type]=j("ON_PROPERTY"+t.type));const i=this||t.target||Y,o=i[n];let c;return Ae&&i===Te&&"error"===t.type?(c=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===c&&t.preventDefault()):(c=o&&o.apply(this,arguments),null!=c&&!c&&t.preventDefault()),c};function qe(t,n,i){let o=ie(t,n);if(!o&&i&&ie(i,n)&&(o={enumerable:!0,configurable:!0}),!o||!o.configurable)return;const c=j("on"+n+"patched");if(t.hasOwnProperty(c)&&t[c])return;delete o.writable,delete o.value;const a=o.get,y=o.set,d=n.slice(2);let b=Re[d];b||(b=Re[d]=j("ON_PROPERTY"+d)),o.set=function(v){let p=this;!p&&t===Y&&(p=Y),p&&("function"==typeof p[b]&&p.removeEventListener(d,We),y&&y.call(p,null),p[b]=v,"function"==typeof v&&p.addEventListener(d,We,!1))},o.get=function(){let v=this;if(!v&&t===Y&&(v=Y),!v)return null;const p=v[b];if(p)return p;if(a){let L=a.call(this);if(L)return o.set.call(this,L),"function"==typeof v[ct]&&v.removeAttribute(n),L}return null},Ee(t,n,o),t[c]=!0}function Xe(t,n,i){if(n)for(let o=0;ofunction(y,d){const b=i(y,d);return b.cbIdx>=0&&"function"==typeof d[b.cbIdx]?Me(b.name,d[b.cbIdx],b,c):a.apply(y,d)})}function ue(t,n){t[j("OriginalDelegate")]=n}let ze=!1,je=!1;function ft(){if(ze)return je;ze=!0;try{const t=Te.navigator.userAgent;(-1!==t.indexOf("MSIE ")||-1!==t.indexOf("Trident/")||-1!==t.indexOf("Edge/"))&&(je=!0)}catch{}return je}Zone.__load_patch("ZoneAwarePromise",(t,n,i)=>{const o=Object.getOwnPropertyDescriptor,c=Object.defineProperty,y=i.symbol,d=[],b=!0===t[y("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],v=y("Promise"),p=y("then"),L="__creationTrace__";i.onUnhandledError=l=>{if(i.showUncaughtError()){const u=l&&l.rejection;u?console.error("Unhandled Promise rejection:",u instanceof Error?u.message:u,"; Zone:",l.zone.name,"; Task:",l.task&&l.task.source,"; Value:",u,u instanceof Error?u.stack:void 0):console.error(l)}},i.microtaskDrainDone=()=>{for(;d.length;){const l=d.shift();try{l.zone.runGuarded(()=>{throw l.throwOriginal?l.rejection:l})}catch(u){N(u)}}};const Z=y("unhandledPromiseRejectionHandler");function N(l){i.onUnhandledError(l);try{const u=n[Z];"function"==typeof u&&u.call(this,l)}catch{}}function B(l){return l&&l.then}function H(l){return l}function J(l){return e.reject(l)}const q=y("state"),R=y("value"),_=y("finally"),K=y("parentPromiseValue"),x=y("parentPromiseState"),X="Promise.then",A=null,E=!0,G=!1,h=0;function I(l,u){return s=>{try{z(l,u,s)}catch(f){z(l,!1,f)}}}const P=function(){let l=!1;return function(s){return function(){l||(l=!0,s.apply(null,arguments))}}},Q="Promise resolved with itself",oe=y("currentTaskTrace");function z(l,u,s){const f=P();if(l===s)throw new TypeError(Q);if(l[q]===A){let g=null;try{("object"==typeof s||"function"==typeof s)&&(g=s&&s.then)}catch(w){return f(()=>{z(l,!1,w)})(),l}if(u!==G&&s instanceof e&&s.hasOwnProperty(q)&&s.hasOwnProperty(R)&&s[q]!==A)re(s),z(l,s[q],s[R]);else if(u!==G&&"function"==typeof g)try{g.call(s,f(I(l,u)),f(I(l,!1)))}catch(w){f(()=>{z(l,!1,w)})()}else{l[q]=u;const w=l[R];if(l[R]=s,l[_]===_&&u===E&&(l[q]=l[x],l[R]=l[K]),u===G&&s instanceof Error){const m=n.currentTask&&n.currentTask.data&&n.currentTask.data[L];m&&c(s,oe,{configurable:!0,enumerable:!1,writable:!0,value:m})}for(let m=0;m{try{const D=l[R],S=!!s&&_===s[_];S&&(s[K]=D,s[x]=w);const O=u.run(m,void 0,S&&m!==J&&m!==H?[]:[D]);z(s,!0,O)}catch(D){z(s,!1,D)}},s)}const M=function(){},T=t.AggregateError;class e{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(u){return z(new this(null),E,u)}static reject(u){return z(new this(null),G,u)}static any(u){if(!u||"function"!=typeof u[Symbol.iterator])return Promise.reject(new T([],"All promises were rejected"));const s=[];let f=0;try{for(let m of u)f++,s.push(e.resolve(m))}catch{return Promise.reject(new T([],"All promises were rejected"))}if(0===f)return Promise.reject(new T([],"All promises were rejected"));let g=!1;const w=[];return new e((m,D)=>{for(let S=0;S{g||(g=!0,m(O))},O=>{w.push(O),f--,0===f&&(g=!0,D(new T(w,"All promises were rejected")))})})}static race(u){let s,f,g=new this((D,S)=>{s=D,f=S});function w(D){s(D)}function m(D){f(D)}for(let D of u)B(D)||(D=this.resolve(D)),D.then(w,m);return g}static all(u){return e.allWithCallback(u)}static allSettled(u){return(this&&this.prototype instanceof e?this:e).allWithCallback(u,{thenCallback:f=>({status:"fulfilled",value:f}),errorCallback:f=>({status:"rejected",reason:f})})}static allWithCallback(u,s){let f,g,w=new this((O,V)=>{f=O,g=V}),m=2,D=0;const S=[];for(let O of u){B(O)||(O=this.resolve(O));const V=D;try{O.then(F=>{S[V]=s?s.thenCallback(F):F,m--,0===m&&f(S)},F=>{s?(S[V]=s.errorCallback(F),m--,0===m&&f(S)):g(F)})}catch(F){g(F)}m++,D++}return m-=2,0===m&&f(S),w}constructor(u){const s=this;if(!(s instanceof e))throw new Error("Must be an instanceof Promise.");s[q]=A,s[R]=[];try{const f=P();u&&u(f(I(s,E)),f(I(s,G)))}catch(f){z(s,!1,f)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return e}then(u,s){let f=this.constructor?.[Symbol.species];(!f||"function"!=typeof f)&&(f=this.constructor||e);const g=new f(M),w=n.current;return this[q]==A?this[R].push(w,g,u,s):ee(this,w,g,u,s),g}catch(u){return this.then(null,u)}finally(u){let s=this.constructor?.[Symbol.species];(!s||"function"!=typeof s)&&(s=e);const f=new s(M);f[_]=_;const g=n.current;return this[q]==A?this[R].push(g,f,u,u):ee(this,g,f,u,u),f}}e.resolve=e.resolve,e.reject=e.reject,e.race=e.race,e.all=e.all;const r=t[v]=t.Promise;t.Promise=e;const k=y("thenPatched");function C(l){const u=l.prototype,s=o(u,"then");if(s&&(!1===s.writable||!s.configurable))return;const f=u.then;u[p]=f,l.prototype.then=function(g,w){return new e((D,S)=>{f.call(this,D,S)}).then(g,w)},l[k]=!0}return i.patchThen=C,r&&(C(r),le(t,"fetch",l=>function $(l){return function(u,s){let f=l.apply(u,s);if(f instanceof e)return f;let g=f.constructor;return g[k]||C(g),f}}(l))),Promise[n.__symbol__("uncaughtPromiseErrors")]=d,e}),Zone.__load_patch("toString",t=>{const n=Function.prototype.toString,i=j("OriginalDelegate"),o=j("Promise"),c=j("Error"),a=function(){if("function"==typeof this){const v=this[i];if(v)return"function"==typeof v?n.call(v):Object.prototype.toString.call(v);if(this===Promise){const p=t[o];if(p)return n.call(p)}if(this===Error){const p=t[c];if(p)return n.call(p)}}return n.call(this)};a[i]=n,Function.prototype.toString=a;const y=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":y.call(this)}});let ye=!1;if(typeof window<"u")try{const t=Object.defineProperty({},"passive",{get:function(){ye=!0}});window.addEventListener("test",t,t),window.removeEventListener("test",t,t)}catch{ye=!1}const ht={useG:!0},te={},Ye={},$e=new RegExp("^"+ke+"(\\w+)(true|false)$"),Ke=j("propagationStopped");function Je(t,n){const i=(n?n(t):t)+ae,o=(n?n(t):t)+ce,c=ke+i,a=ke+o;te[t]={},te[t][ae]=c,te[t][ce]=a}function dt(t,n,i,o){const c=o&&o.add||Se,a=o&&o.rm||Oe,y=o&&o.listeners||"eventListeners",d=o&&o.rmAll||"removeAllListeners",b=j(c),v="."+c+":",p="prependListener",L="."+p+":",Z=function(R,_,K){if(R.isRemoved)return;const x=R.callback;let X;"object"==typeof x&&x.handleEvent&&(R.callback=E=>x.handleEvent(E),R.originalDelegate=x);try{R.invoke(R,_,[K])}catch(E){X=E}const A=R.options;return A&&"object"==typeof A&&A.once&&_[a].call(_,K.type,R.originalDelegate?R.originalDelegate:R.callback,A),X};function N(R,_,K){if(!(_=_||t.event))return;const x=R||_.target||t,X=x[te[_.type][K?ce:ae]];if(X){const A=[];if(1===X.length){const E=Z(X[0],x,_);E&&A.push(E)}else{const E=X.slice();for(let G=0;G{throw G})}}}const B=function(R){return N(this,R,!1)},H=function(R){return N(this,R,!0)};function J(R,_){if(!R)return!1;let K=!0;_&&void 0!==_.useG&&(K=_.useG);const x=_&&_.vh;let X=!0;_&&void 0!==_.chkDup&&(X=_.chkDup);let A=!1;_&&void 0!==_.rt&&(A=_.rt);let E=R;for(;E&&!E.hasOwnProperty(c);)E=de(E);if(!E&&R[c]&&(E=R),!E||E[b])return!1;const G=_&&_.eventNameToString,h={},I=E[b]=E[c],P=E[j(a)]=E[a],Q=E[j(y)]=E[y],oe=E[j(d)]=E[d];let z;_&&_.prepend&&(z=E[j(_.prepend)]=E[_.prepend]);const e=K?function(s){if(!h.isExisting)return I.call(h.target,h.eventName,h.capture?H:B,h.options)}:function(s){return I.call(h.target,h.eventName,s.invoke,h.options)},r=K?function(s){if(!s.isRemoved){const f=te[s.eventName];let g;f&&(g=f[s.capture?ce:ae]);const w=g&&s.target[g];if(w)for(let m=0;mfunction(c,a){c[Ke]=!0,o&&o.apply(c,a)})}function Et(t,n,i,o,c){const a=Zone.__symbol__(o);if(n[a])return;const y=n[a]=n[o];n[o]=function(d,b,v){return b&&b.prototype&&c.forEach(function(p){const L=`${i}.${o}::`+p,Z=b.prototype;try{if(Z.hasOwnProperty(p)){const N=t.ObjectGetOwnPropertyDescriptor(Z,p);N&&N.value?(N.value=t.wrapWithCurrentZone(N.value,L),t._redefineProperty(b.prototype,p,N)):Z[p]&&(Z[p]=t.wrapWithCurrentZone(Z[p],L))}else Z[p]&&(Z[p]=t.wrapWithCurrentZone(Z[p],L))}catch{}}),y.call(n,d,b,v)},t.attachOriginToPatched(n[o],y)}function et(t,n,i){if(!i||0===i.length)return n;const o=i.filter(a=>a.target===t);if(!o||0===o.length)return n;const c=o[0].ignoreProperties;return n.filter(a=>-1===c.indexOf(a))}function tt(t,n,i,o){t&&Xe(t,et(t,n,i),o)}function He(t){return Object.getOwnPropertyNames(t).filter(n=>n.startsWith("on")&&n.length>2).map(n=>n.substring(2))}Zone.__load_patch("util",(t,n,i)=>{const o=He(t);i.patchOnProperties=Xe,i.patchMethod=le,i.bindArguments=Le,i.patchMacroTask=lt;const c=n.__symbol__("BLACK_LISTED_EVENTS"),a=n.__symbol__("UNPATCHED_EVENTS");t[a]&&(t[c]=t[a]),t[c]&&(n[c]=n[a]=t[c]),i.patchEventPrototype=_t,i.patchEventTarget=dt,i.isIEOrEdge=ft,i.ObjectDefineProperty=Ee,i.ObjectGetOwnPropertyDescriptor=ie,i.ObjectCreate=ge,i.ArraySlice=Ve,i.patchClass=ve,i.wrapWithCurrentZone=Ie,i.filterProperties=et,i.attachOriginToPatched=ue,i._redefineProperty=Object.defineProperty,i.patchCallbacks=Et,i.getGlobalObjects=()=>({globalSources:Ye,zoneSymbolEventNames:te,eventNames:o,isBrowser:Ae,isMix:Ue,isNode:we,TRUE_STR:ce,FALSE_STR:ae,ZONE_SYMBOL_PREFIX:ke,ADD_EVENT_LISTENER_STR:Se,REMOVE_EVENT_LISTENER_STR:Oe})});const Ce=j("zoneTask");function pe(t,n,i,o){let c=null,a=null;i+=o;const y={};function d(v){const p=v.data;return p.args[0]=function(){return v.invoke.apply(this,arguments)},p.handleId=c.apply(t,p.args),v}function b(v){return a.call(t,v.data.handleId)}c=le(t,n+=o,v=>function(p,L){if("function"==typeof L[0]){const Z={isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?L[1]||0:void 0,args:L},N=L[0];L[0]=function(){try{return N.apply(this,arguments)}finally{Z.isPeriodic||("number"==typeof Z.handleId?delete y[Z.handleId]:Z.handleId&&(Z.handleId[Ce]=null))}};const B=Me(n,L[0],Z,d,b);if(!B)return B;const H=B.data.handleId;return"number"==typeof H?y[H]=B:H&&(H[Ce]=B),H&&H.ref&&H.unref&&"function"==typeof H.ref&&"function"==typeof H.unref&&(B.ref=H.ref.bind(H),B.unref=H.unref.bind(H)),"number"==typeof H||H?H:B}return v.apply(t,L)}),a=le(t,i,v=>function(p,L){const Z=L[0];let N;"number"==typeof Z?N=y[Z]:(N=Z&&Z[Ce],N||(N=Z)),N&&"string"==typeof N.type?"notScheduled"!==N.state&&(N.cancelFn&&N.data.isPeriodic||0===N.runCount)&&("number"==typeof Z?delete y[Z]:Z&&(Z[Ce]=null),N.zone.cancelTask(N)):v.apply(t,L)})}Zone.__load_patch("legacy",t=>{const n=t[Zone.__symbol__("legacyPatch")];n&&n()}),Zone.__load_patch("queueMicrotask",(t,n,i)=>{i.patchMethod(t,"queueMicrotask",o=>function(c,a){n.current.scheduleMicroTask("queueMicrotask",a[0])})}),Zone.__load_patch("timers",t=>{const n="set",i="clear";pe(t,n,i,"Timeout"),pe(t,n,i,"Interval"),pe(t,n,i,"Immediate")}),Zone.__load_patch("requestAnimationFrame",t=>{pe(t,"request","cancel","AnimationFrame"),pe(t,"mozRequest","mozCancel","AnimationFrame"),pe(t,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(t,n)=>{const i=["alert","prompt","confirm"];for(let o=0;ofunction(b,v){return n.current.run(a,t,v,d)})}),Zone.__load_patch("EventTarget",(t,n,i)=>{(function mt(t,n){n.patchEventPrototype(t,n)})(t,i),function pt(t,n){if(Zone[n.symbol("patchEventTarget")])return;const{eventNames:i,zoneSymbolEventNames:o,TRUE_STR:c,FALSE_STR:a,ZONE_SYMBOL_PREFIX:y}=n.getGlobalObjects();for(let b=0;b{ve("MutationObserver"),ve("WebKitMutationObserver")}),Zone.__load_patch("IntersectionObserver",(t,n,i)=>{ve("IntersectionObserver")}),Zone.__load_patch("FileReader",(t,n,i)=>{ve("FileReader")}),Zone.__load_patch("on_property",(t,n,i)=>{!function Tt(t,n){if(we&&!Ue||Zone[t.symbol("patchEvents")])return;const i=n.__Zone_ignore_on_properties;let o=[];if(Ae){const c=window;o=o.concat(["Document","SVGElement","Element","HTMLElement","HTMLBodyElement","HTMLMediaElement","HTMLFrameSetElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement","Worker"]);const a=function ut(){try{const t=Te.navigator.userAgent;if(-1!==t.indexOf("MSIE ")||-1!==t.indexOf("Trident/"))return!0}catch{}return!1}()?[{target:c,ignoreProperties:["error"]}]:[];tt(c,He(c),i&&i.concat(a),de(c))}o=o.concat(["XMLHttpRequest","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","WebSocket"]);for(let c=0;c{!function yt(t,n){const{isBrowser:i,isMix:o}=n.getGlobalObjects();(i||o)&&t.customElements&&"customElements"in t&&n.patchCallbacks(n,t.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(t,i)}),Zone.__load_patch("XHR",(t,n)=>{!function b(v){const p=v.XMLHttpRequest;if(!p)return;const L=p.prototype;let N=L[Ze],B=L[Ne];if(!N){const h=v.XMLHttpRequestEventTarget;if(h){const I=h.prototype;N=I[Ze],B=I[Ne]}}const H="readystatechange",J="scheduled";function q(h){const I=h.data,P=I.target;P[a]=!1,P[d]=!1;const Q=P[c];N||(N=P[Ze],B=P[Ne]),Q&&B.call(P,H,Q);const oe=P[c]=()=>{if(P.readyState===P.DONE)if(!I.aborted&&P[a]&&h.state===J){const U=P[n.__symbol__("loadfalse")];if(0!==P.status&&U&&U.length>0){const re=h.invoke;h.invoke=function(){const ee=P[n.__symbol__("loadfalse")];for(let W=0;Wfunction(h,I){return h[o]=0==I[2],h[y]=I[1],K.apply(h,I)}),X=j("fetchTaskAborting"),A=j("fetchTaskScheduling"),E=le(L,"send",()=>function(h,I){if(!0===n.current[A]||h[o])return E.apply(h,I);{const P={target:h,url:h[y],isPeriodic:!1,args:I,aborted:!1},Q=Me("XMLHttpRequest.send",R,P,q,_);h&&!0===h[d]&&!P.aborted&&Q.state===J&&Q.invoke()}}),G=le(L,"abort",()=>function(h,I){const P=function Z(h){return h[i]}(h);if(P&&"string"==typeof P.type){if(null==P.cancelFn||P.data&&P.data.aborted)return;P.zone.cancelTask(P)}else if(!0===n.current[X])return G.apply(h,I)})}(t);const i=j("xhrTask"),o=j("xhrSync"),c=j("xhrListener"),a=j("xhrScheduled"),y=j("xhrURL"),d=j("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function at(t,n){const i=t.constructor.name;for(let o=0;o{const b=function(){return d.apply(this,Le(arguments,i+"."+c))};return ue(b,d),b})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(t,n)=>{function i(o){return function(c){Qe(t,o).forEach(y=>{const d=t.PromiseRejectionEvent;if(d){const b=new d(o,{promise:c.promise,reason:c.rejection});y.invoke(b)}})}}t.PromiseRejectionEvent&&(n[j("unhandledPromiseRejectionHandler")]=i("unhandledrejection"),n[j("rejectionHandledHandler")]=i("rejectionhandled"))})}},ie=>{ie(ie.s=321)}]); \ No newline at end of file +"use strict";(self.webpackChunkcoverage_app=self.webpackChunkcoverage_app||[]).push([[429],{321:(ie,Ee,de)=>{de(332)},332:()=>{!function(e){const n=e.performance;function i(L){n&&n.mark&&n.mark(L)}function o(L,T){n&&n.measure&&n.measure(L,T)}i("Zone");const c=e.__Zone_symbol_prefix||"__zone_symbol__";function a(L){return c+L}const y=!0===e[a("forceDuplicateZoneCheck")];if(e.Zone){if(y||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}let d=(()=>{class L{static#e=this.__symbol__=a;static assertZonePatched(){if(e.Promise!==oe.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let t=L.current;for(;t.parent;)t=t.parent;return t}static get current(){return U.zone}static get currentTask(){return re}static __load_patch(t,r,k=!1){if(oe.hasOwnProperty(t)){if(!k&&y)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const C="Zone:"+t;i(C),oe[t]=r(e,L,z),o(C,C)}}get parent(){return this._parent}get name(){return this._name}constructor(t,r){this._parent=t,this._name=r?r.name||"unnamed":"",this._properties=r&&r.properties||{},this._zoneDelegate=new v(this,this._parent&&this._parent._zoneDelegate,r)}get(t){const r=this.getZoneWith(t);if(r)return r._properties[t]}getZoneWith(t){let r=this;for(;r;){if(r._properties.hasOwnProperty(t))return r;r=r._parent}return null}fork(t){if(!t)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,t)}wrap(t,r){if("function"!=typeof t)throw new Error("Expecting function got: "+t);const k=this._zoneDelegate.intercept(this,t,r),C=this;return function(){return C.runGuarded(k,this,arguments,r)}}run(t,r,k,C){U={parent:U,zone:this};try{return this._zoneDelegate.invoke(this,t,r,k,C)}finally{U=U.parent}}runGuarded(t,r=null,k,C){U={parent:U,zone:this};try{try{return this._zoneDelegate.invoke(this,t,r,k,C)}catch($){if(this._zoneDelegate.handleError(this,$))throw $}}finally{U=U.parent}}runTask(t,r,k){if(t.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(t.zone||K).name+"; Execution: "+this.name+")");if(t.state===x&&(t.type===Q||t.type===P))return;const C=t.state!=E;C&&t._transitionTo(E,A),t.runCount++;const $=re;re=t,U={parent:U,zone:this};try{t.type==P&&t.data&&!t.data.isPeriodic&&(t.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,t,r,k)}catch(l){if(this._zoneDelegate.handleError(this,l))throw l}}finally{t.state!==x&&t.state!==h&&(t.type==Q||t.data&&t.data.isPeriodic?C&&t._transitionTo(A,E):(t.runCount=0,this._updateTaskCount(t,-1),C&&t._transitionTo(x,E,x))),U=U.parent,re=$}}scheduleTask(t){if(t.zone&&t.zone!==this){let k=this;for(;k;){if(k===t.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${t.zone.name}`);k=k.parent}}t._transitionTo(X,x);const r=[];t._zoneDelegates=r,t._zone=this;try{t=this._zoneDelegate.scheduleTask(this,t)}catch(k){throw t._transitionTo(h,X,x),this._zoneDelegate.handleError(this,k),k}return t._zoneDelegates===r&&this._updateTaskCount(t,1),t.state==X&&t._transitionTo(A,X),t}scheduleMicroTask(t,r,k,C){return this.scheduleTask(new p(I,t,r,k,C,void 0))}scheduleMacroTask(t,r,k,C,$){return this.scheduleTask(new p(P,t,r,k,C,$))}scheduleEventTask(t,r,k,C,$){return this.scheduleTask(new p(Q,t,r,k,C,$))}cancelTask(t){if(t.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(t.zone||K).name+"; Execution: "+this.name+")");if(t.state===A||t.state===E){t._transitionTo(G,A,E);try{this._zoneDelegate.cancelTask(this,t)}catch(r){throw t._transitionTo(h,G),this._zoneDelegate.handleError(this,r),r}return this._updateTaskCount(t,-1),t._transitionTo(x,G),t.runCount=0,t}}_updateTaskCount(t,r){const k=t._zoneDelegates;-1==r&&(t._zoneDelegates=null);for(let C=0;CL.hasTask(t,r),onScheduleTask:(L,T,t,r)=>L.scheduleTask(t,r),onInvokeTask:(L,T,t,r,k,C)=>L.invokeTask(t,r,k,C),onCancelTask:(L,T,t,r)=>L.cancelTask(t,r)};class v{constructor(T,t,r){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=T,this._parentDelegate=t,this._forkZS=r&&(r&&r.onFork?r:t._forkZS),this._forkDlgt=r&&(r.onFork?t:t._forkDlgt),this._forkCurrZone=r&&(r.onFork?this.zone:t._forkCurrZone),this._interceptZS=r&&(r.onIntercept?r:t._interceptZS),this._interceptDlgt=r&&(r.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=r&&(r.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=r&&(r.onInvoke?r:t._invokeZS),this._invokeDlgt=r&&(r.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=r&&(r.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=r&&(r.onHandleError?r:t._handleErrorZS),this._handleErrorDlgt=r&&(r.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=r&&(r.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=r&&(r.onScheduleTask?r:t._scheduleTaskZS),this._scheduleTaskDlgt=r&&(r.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=r&&(r.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=r&&(r.onInvokeTask?r:t._invokeTaskZS),this._invokeTaskDlgt=r&&(r.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=r&&(r.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=r&&(r.onCancelTask?r:t._cancelTaskZS),this._cancelTaskDlgt=r&&(r.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=r&&(r.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const k=r&&r.onHasTask;(k||t&&t._hasTaskZS)&&(this._hasTaskZS=k?r:b,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=T,r.onScheduleTask||(this._scheduleTaskZS=b,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),r.onInvokeTask||(this._invokeTaskZS=b,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),r.onCancelTask||(this._cancelTaskZS=b,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(T,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,T,t):new d(T,t)}intercept(T,t,r){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,T,t,r):t}invoke(T,t,r,k,C){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,T,t,r,k,C):t.apply(r,k)}handleError(T,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,T,t)}scheduleTask(T,t){let r=t;if(this._scheduleTaskZS)this._hasTaskZS&&r._zoneDelegates.push(this._hasTaskDlgtOwner),r=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,T,t),r||(r=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=I)throw new Error("Task is missing scheduleFn.");R(t)}return r}invokeTask(T,t,r,k){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,T,t,r,k):t.callback.apply(r,k)}cancelTask(T,t){let r;if(this._cancelTaskZS)r=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,T,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");r=t.cancelFn(t)}return r}hasTask(T,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,T,t)}catch(r){this.handleError(T,r)}}_updateTaskCount(T,t){const r=this._taskCounts,k=r[T],C=r[T]=k+t;if(C<0)throw new Error("More tasks executed then were scheduled.");0!=k&&0!=C||this.hasTask(this.zone,{microTask:r.microTask>0,macroTask:r.macroTask>0,eventTask:r.eventTask>0,change:T})}}class p{constructor(T,t,r,k,C,$){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=T,this.source=t,this.data=k,this.scheduleFn=C,this.cancelFn=$,!r)throw new Error("callback is not defined");this.callback=r;const l=this;this.invoke=T===Q&&k&&k.useG?p.invokeTask:function(){return p.invokeTask.call(e,l,this,arguments)}}static invokeTask(T,t,r){T||(T=this),ee++;try{return T.runCount++,T.zone.runTask(T,t,r)}finally{1==ee&&_(),ee--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(x,X)}_transitionTo(T,t,r){if(this._state!==t&&this._state!==r)throw new Error(`${this.type} '${this.source}': can not transition to '${T}', expecting state '${t}'${r?" or '"+r+"'":""}, was '${this._state}'.`);this._state=T,T==x&&(this._zoneDelegates=null)}toString(){return this.data&&typeof this.data.handleId<"u"?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const M=a("setTimeout"),Z=a("Promise"),N=a("then");let J,B=[],H=!1;function q(L){if(J||e[Z]&&(J=e[Z].resolve(0)),J){let T=J[N];T||(T=J.then),T.call(J,L)}else e[M](L,0)}function R(L){0===ee&&0===B.length&&q(_),L&&B.push(L)}function _(){if(!H){for(H=!0;B.length;){const L=B;B=[];for(let T=0;TU,onUnhandledError:W,microtaskDrainDone:W,scheduleMicroTask:R,showUncaughtError:()=>!d[a("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:W,patchMethod:()=>W,bindArguments:()=>[],patchThen:()=>W,patchMacroTask:()=>W,patchEventPrototype:()=>W,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>W,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>W,wrapWithCurrentZone:()=>W,filterProperties:()=>[],attachOriginToPatched:()=>W,_redefineProperty:()=>W,patchCallbacks:()=>W,nativeScheduleMicroTask:q};let U={parent:null,zone:new d(null,null)},re=null,ee=0;function W(){}o("Zone","Zone"),e.Zone=d}(globalThis);const ie=Object.getOwnPropertyDescriptor,Ee=Object.defineProperty,de=Object.getPrototypeOf,ge=Object.create,Ve=Array.prototype.slice,Se="addEventListener",Oe="removeEventListener",Ze=Zone.__symbol__(Se),Ne=Zone.__symbol__(Oe),ce="true",ae="false",ke=Zone.__symbol__("");function Ie(e,n){return Zone.current.wrap(e,n)}function Me(e,n,i,o,c){return Zone.current.scheduleMacroTask(e,n,i,o,c)}const j=Zone.__symbol__,Pe=typeof window<"u",Te=Pe?window:void 0,Y=Pe&&Te||globalThis,ct="removeAttribute";function Le(e,n){for(let i=e.length-1;i>=0;i--)"function"==typeof e[i]&&(e[i]=Ie(e[i],n+"_"+i));return e}function Fe(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&typeof e.set>"u")}const Be=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,we=!("nw"in Y)&&typeof Y.process<"u"&&"[object process]"==={}.toString.call(Y.process),Ae=!we&&!Be&&!(!Pe||!Te.HTMLElement),Ue=typeof Y.process<"u"&&"[object process]"==={}.toString.call(Y.process)&&!Be&&!(!Pe||!Te.HTMLElement),Re={},We=function(e){if(!(e=e||Y.event))return;let n=Re[e.type];n||(n=Re[e.type]=j("ON_PROPERTY"+e.type));const i=this||e.target||Y,o=i[n];let c;return Ae&&i===Te&&"error"===e.type?(c=o&&o.call(this,e.message,e.filename,e.lineno,e.colno,e.error),!0===c&&e.preventDefault()):(c=o&&o.apply(this,arguments),null!=c&&!c&&e.preventDefault()),c};function qe(e,n,i){let o=ie(e,n);if(!o&&i&&ie(i,n)&&(o={enumerable:!0,configurable:!0}),!o||!o.configurable)return;const c=j("on"+n+"patched");if(e.hasOwnProperty(c)&&e[c])return;delete o.writable,delete o.value;const a=o.get,y=o.set,d=n.slice(2);let b=Re[d];b||(b=Re[d]=j("ON_PROPERTY"+d)),o.set=function(v){let p=this;!p&&e===Y&&(p=Y),p&&("function"==typeof p[b]&&p.removeEventListener(d,We),y&&y.call(p,null),p[b]=v,"function"==typeof v&&p.addEventListener(d,We,!1))},o.get=function(){let v=this;if(!v&&e===Y&&(v=Y),!v)return null;const p=v[b];if(p)return p;if(a){let M=a.call(this);if(M)return o.set.call(this,M),"function"==typeof v[ct]&&v.removeAttribute(n),M}return null},Ee(e,n,o),e[c]=!0}function Xe(e,n,i){if(n)for(let o=0;ofunction(y,d){const b=i(y,d);return b.cbIdx>=0&&"function"==typeof d[b.cbIdx]?Me(b.name,d[b.cbIdx],b,c):a.apply(y,d)})}function ue(e,n){e[j("OriginalDelegate")]=n}let ze=!1,je=!1;function ft(){if(ze)return je;ze=!0;try{const e=Te.navigator.userAgent;(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/")||-1!==e.indexOf("Edge/"))&&(je=!0)}catch{}return je}Zone.__load_patch("ZoneAwarePromise",(e,n,i)=>{const o=Object.getOwnPropertyDescriptor,c=Object.defineProperty,y=i.symbol,d=[],b=!1!==e[y("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],v=y("Promise"),p=y("then"),M="__creationTrace__";i.onUnhandledError=l=>{if(i.showUncaughtError()){const u=l&&l.rejection;u?console.error("Unhandled Promise rejection:",u instanceof Error?u.message:u,"; Zone:",l.zone.name,"; Task:",l.task&&l.task.source,"; Value:",u,u instanceof Error?u.stack:void 0):console.error(l)}},i.microtaskDrainDone=()=>{for(;d.length;){const l=d.shift();try{l.zone.runGuarded(()=>{throw l.throwOriginal?l.rejection:l})}catch(u){N(u)}}};const Z=y("unhandledPromiseRejectionHandler");function N(l){i.onUnhandledError(l);try{const u=n[Z];"function"==typeof u&&u.call(this,l)}catch{}}function B(l){return l&&l.then}function H(l){return l}function J(l){return t.reject(l)}const q=y("state"),R=y("value"),_=y("finally"),K=y("parentPromiseValue"),x=y("parentPromiseState"),X="Promise.then",A=null,E=!0,G=!1,h=0;function I(l,u){return s=>{try{z(l,u,s)}catch(f){z(l,!1,f)}}}const P=function(){let l=!1;return function(s){return function(){l||(l=!0,s.apply(null,arguments))}}},Q="Promise resolved with itself",oe=y("currentTaskTrace");function z(l,u,s){const f=P();if(l===s)throw new TypeError(Q);if(l[q]===A){let g=null;try{("object"==typeof s||"function"==typeof s)&&(g=s&&s.then)}catch(w){return f(()=>{z(l,!1,w)})(),l}if(u!==G&&s instanceof t&&s.hasOwnProperty(q)&&s.hasOwnProperty(R)&&s[q]!==A)re(s),z(l,s[q],s[R]);else if(u!==G&&"function"==typeof g)try{g.call(s,f(I(l,u)),f(I(l,!1)))}catch(w){f(()=>{z(l,!1,w)})()}else{l[q]=u;const w=l[R];if(l[R]=s,l[_]===_&&u===E&&(l[q]=l[x],l[R]=l[K]),u===G&&s instanceof Error){const m=n.currentTask&&n.currentTask.data&&n.currentTask.data[M];m&&c(s,oe,{configurable:!0,enumerable:!1,writable:!0,value:m})}for(let m=0;m{try{const D=l[R],S=!!s&&_===s[_];S&&(s[K]=D,s[x]=w);const O=u.run(m,void 0,S&&m!==J&&m!==H?[]:[D]);z(s,!0,O)}catch(D){z(s,!1,D)}},s)}const L=function(){},T=e.AggregateError;class t{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(u){return z(new this(null),E,u)}static reject(u){return z(new this(null),G,u)}static any(u){if(!u||"function"!=typeof u[Symbol.iterator])return Promise.reject(new T([],"All promises were rejected"));const s=[];let f=0;try{for(let m of u)f++,s.push(t.resolve(m))}catch{return Promise.reject(new T([],"All promises were rejected"))}if(0===f)return Promise.reject(new T([],"All promises were rejected"));let g=!1;const w=[];return new t((m,D)=>{for(let S=0;S{g||(g=!0,m(O))},O=>{w.push(O),f--,0===f&&(g=!0,D(new T(w,"All promises were rejected")))})})}static race(u){let s,f,g=new this((D,S)=>{s=D,f=S});function w(D){s(D)}function m(D){f(D)}for(let D of u)B(D)||(D=this.resolve(D)),D.then(w,m);return g}static all(u){return t.allWithCallback(u)}static allSettled(u){return(this&&this.prototype instanceof t?this:t).allWithCallback(u,{thenCallback:f=>({status:"fulfilled",value:f}),errorCallback:f=>({status:"rejected",reason:f})})}static allWithCallback(u,s){let f,g,w=new this((O,V)=>{f=O,g=V}),m=2,D=0;const S=[];for(let O of u){B(O)||(O=this.resolve(O));const V=D;try{O.then(F=>{S[V]=s?s.thenCallback(F):F,m--,0===m&&f(S)},F=>{s?(S[V]=s.errorCallback(F),m--,0===m&&f(S)):g(F)})}catch(F){g(F)}m++,D++}return m-=2,0===m&&f(S),w}constructor(u){const s=this;if(!(s instanceof t))throw new Error("Must be an instanceof Promise.");s[q]=A,s[R]=[];try{const f=P();u&&u(f(I(s,E)),f(I(s,G)))}catch(f){z(s,!1,f)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return t}then(u,s){let f=this.constructor?.[Symbol.species];(!f||"function"!=typeof f)&&(f=this.constructor||t);const g=new f(L),w=n.current;return this[q]==A?this[R].push(w,g,u,s):ee(this,w,g,u,s),g}catch(u){return this.then(null,u)}finally(u){let s=this.constructor?.[Symbol.species];(!s||"function"!=typeof s)&&(s=t);const f=new s(L);f[_]=_;const g=n.current;return this[q]==A?this[R].push(g,f,u,u):ee(this,g,f,u,u),f}}t.resolve=t.resolve,t.reject=t.reject,t.race=t.race,t.all=t.all;const r=e[v]=e.Promise;e.Promise=t;const k=y("thenPatched");function C(l){const u=l.prototype,s=o(u,"then");if(s&&(!1===s.writable||!s.configurable))return;const f=u.then;u[p]=f,l.prototype.then=function(g,w){return new t((D,S)=>{f.call(this,D,S)}).then(g,w)},l[k]=!0}return i.patchThen=C,r&&(C(r),le(e,"fetch",l=>function $(l){return function(u,s){let f=l.apply(u,s);if(f instanceof t)return f;let g=f.constructor;return g[k]||C(g),f}}(l))),Promise[n.__symbol__("uncaughtPromiseErrors")]=d,t}),Zone.__load_patch("toString",e=>{const n=Function.prototype.toString,i=j("OriginalDelegate"),o=j("Promise"),c=j("Error"),a=function(){if("function"==typeof this){const v=this[i];if(v)return"function"==typeof v?n.call(v):Object.prototype.toString.call(v);if(this===Promise){const p=e[o];if(p)return n.call(p)}if(this===Error){const p=e[c];if(p)return n.call(p)}}return n.call(this)};a[i]=n,Function.prototype.toString=a;const y=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":y.call(this)}});let ye=!1;if(typeof window<"u")try{const e=Object.defineProperty({},"passive",{get:function(){ye=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch{ye=!1}const ht={useG:!0},te={},Ye={},$e=new RegExp("^"+ke+"(\\w+)(true|false)$"),Ke=j("propagationStopped");function Je(e,n){const i=(n?n(e):e)+ae,o=(n?n(e):e)+ce,c=ke+i,a=ke+o;te[e]={},te[e][ae]=c,te[e][ce]=a}function dt(e,n,i,o){const c=o&&o.add||Se,a=o&&o.rm||Oe,y=o&&o.listeners||"eventListeners",d=o&&o.rmAll||"removeAllListeners",b=j(c),v="."+c+":",p="prependListener",M="."+p+":",Z=function(R,_,K){if(R.isRemoved)return;const x=R.callback;let X;"object"==typeof x&&x.handleEvent&&(R.callback=E=>x.handleEvent(E),R.originalDelegate=x);try{R.invoke(R,_,[K])}catch(E){X=E}const A=R.options;return A&&"object"==typeof A&&A.once&&_[a].call(_,K.type,R.originalDelegate?R.originalDelegate:R.callback,A),X};function N(R,_,K){if(!(_=_||e.event))return;const x=R||_.target||e,X=x[te[_.type][K?ce:ae]];if(X){const A=[];if(1===X.length){const E=Z(X[0],x,_);E&&A.push(E)}else{const E=X.slice();for(let G=0;G{throw G})}}}const B=function(R){return N(this,R,!1)},H=function(R){return N(this,R,!0)};function J(R,_){if(!R)return!1;let K=!0;_&&void 0!==_.useG&&(K=_.useG);const x=_&&_.vh;let X=!0;_&&void 0!==_.chkDup&&(X=_.chkDup);let A=!1;_&&void 0!==_.rt&&(A=_.rt);let E=R;for(;E&&!E.hasOwnProperty(c);)E=de(E);if(!E&&R[c]&&(E=R),!E||E[b])return!1;const G=_&&_.eventNameToString,h={},I=E[b]=E[c],P=E[j(a)]=E[a],Q=E[j(y)]=E[y],oe=E[j(d)]=E[d];let z;_&&_.prepend&&(z=E[j(_.prepend)]=E[_.prepend]);const t=K?function(s){if(!h.isExisting)return I.call(h.target,h.eventName,h.capture?H:B,h.options)}:function(s){return I.call(h.target,h.eventName,s.invoke,h.options)},r=K?function(s){if(!s.isRemoved){const f=te[s.eventName];let g;f&&(g=f[s.capture?ce:ae]);const w=g&&s.target[g];if(w)for(let m=0;mfunction(c,a){c[Ke]=!0,o&&o.apply(c,a)})}function Et(e,n,i,o,c){const a=Zone.__symbol__(o);if(n[a])return;const y=n[a]=n[o];n[o]=function(d,b,v){return b&&b.prototype&&c.forEach(function(p){const M=`${i}.${o}::`+p,Z=b.prototype;try{if(Z.hasOwnProperty(p)){const N=e.ObjectGetOwnPropertyDescriptor(Z,p);N&&N.value?(N.value=e.wrapWithCurrentZone(N.value,M),e._redefineProperty(b.prototype,p,N)):Z[p]&&(Z[p]=e.wrapWithCurrentZone(Z[p],M))}else Z[p]&&(Z[p]=e.wrapWithCurrentZone(Z[p],M))}catch{}}),y.call(n,d,b,v)},e.attachOriginToPatched(n[o],y)}function et(e,n,i){if(!i||0===i.length)return n;const o=i.filter(a=>a.target===e);if(!o||0===o.length)return n;const c=o[0].ignoreProperties;return n.filter(a=>-1===c.indexOf(a))}function tt(e,n,i,o){e&&Xe(e,et(e,n,i),o)}function He(e){return Object.getOwnPropertyNames(e).filter(n=>n.startsWith("on")&&n.length>2).map(n=>n.substring(2))}Zone.__load_patch("util",(e,n,i)=>{const o=He(e);i.patchOnProperties=Xe,i.patchMethod=le,i.bindArguments=Le,i.patchMacroTask=lt;const c=n.__symbol__("BLACK_LISTED_EVENTS"),a=n.__symbol__("UNPATCHED_EVENTS");e[a]&&(e[c]=e[a]),e[c]&&(n[c]=n[a]=e[c]),i.patchEventPrototype=_t,i.patchEventTarget=dt,i.isIEOrEdge=ft,i.ObjectDefineProperty=Ee,i.ObjectGetOwnPropertyDescriptor=ie,i.ObjectCreate=ge,i.ArraySlice=Ve,i.patchClass=ve,i.wrapWithCurrentZone=Ie,i.filterProperties=et,i.attachOriginToPatched=ue,i._redefineProperty=Object.defineProperty,i.patchCallbacks=Et,i.getGlobalObjects=()=>({globalSources:Ye,zoneSymbolEventNames:te,eventNames:o,isBrowser:Ae,isMix:Ue,isNode:we,TRUE_STR:ce,FALSE_STR:ae,ZONE_SYMBOL_PREFIX:ke,ADD_EVENT_LISTENER_STR:Se,REMOVE_EVENT_LISTENER_STR:Oe})});const Ce=j("zoneTask");function pe(e,n,i,o){let c=null,a=null;i+=o;const y={};function d(v){const p=v.data;return p.args[0]=function(){return v.invoke.apply(this,arguments)},p.handleId=c.apply(e,p.args),v}function b(v){return a.call(e,v.data.handleId)}c=le(e,n+=o,v=>function(p,M){if("function"==typeof M[0]){const Z={isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?M[1]||0:void 0,args:M},N=M[0];M[0]=function(){try{return N.apply(this,arguments)}finally{Z.isPeriodic||("number"==typeof Z.handleId?delete y[Z.handleId]:Z.handleId&&(Z.handleId[Ce]=null))}};const B=Me(n,M[0],Z,d,b);if(!B)return B;const H=B.data.handleId;return"number"==typeof H?y[H]=B:H&&(H[Ce]=B),H&&H.ref&&H.unref&&"function"==typeof H.ref&&"function"==typeof H.unref&&(B.ref=H.ref.bind(H),B.unref=H.unref.bind(H)),"number"==typeof H||H?H:B}return v.apply(e,M)}),a=le(e,i,v=>function(p,M){const Z=M[0];let N;"number"==typeof Z?N=y[Z]:(N=Z&&Z[Ce],N||(N=Z)),N&&"string"==typeof N.type?"notScheduled"!==N.state&&(N.cancelFn&&N.data.isPeriodic||0===N.runCount)&&("number"==typeof Z?delete y[Z]:Z&&(Z[Ce]=null),N.zone.cancelTask(N)):v.apply(e,M)})}Zone.__load_patch("legacy",e=>{const n=e[Zone.__symbol__("legacyPatch")];n&&n()}),Zone.__load_patch("timers",e=>{const n="set",i="clear";pe(e,n,i,"Timeout"),pe(e,n,i,"Interval"),pe(e,n,i,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{pe(e,"request","cancel","AnimationFrame"),pe(e,"mozRequest","mozCancel","AnimationFrame"),pe(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,n)=>{const i=["alert","prompt","confirm"];for(let o=0;ofunction(b,v){return n.current.run(a,e,v,d)})}),Zone.__load_patch("EventTarget",(e,n,i)=>{(function gt(e,n){n.patchEventPrototype(e,n)})(e,i),function mt(e,n){if(Zone[n.symbol("patchEventTarget")])return;const{eventNames:i,zoneSymbolEventNames:o,TRUE_STR:c,FALSE_STR:a,ZONE_SYMBOL_PREFIX:y}=n.getGlobalObjects();for(let b=0;b{ve("MutationObserver"),ve("WebKitMutationObserver")}),Zone.__load_patch("IntersectionObserver",(e,n,i)=>{ve("IntersectionObserver")}),Zone.__load_patch("FileReader",(e,n,i)=>{ve("FileReader")}),Zone.__load_patch("on_property",(e,n,i)=>{!function Tt(e,n){if(we&&!Ue||Zone[e.symbol("patchEvents")])return;const i=n.__Zone_ignore_on_properties;let o=[];if(Ae){const c=window;o=o.concat(["Document","SVGElement","Element","HTMLElement","HTMLBodyElement","HTMLMediaElement","HTMLFrameSetElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement","Worker"]);const a=function ut(){try{const e=Te.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch{}return!1}()?[{target:c,ignoreProperties:["error"]}]:[];tt(c,He(c),i&&i.concat(a),de(c))}o=o.concat(["XMLHttpRequest","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","WebSocket"]);for(let c=0;c{!function pt(e,n){const{isBrowser:i,isMix:o}=n.getGlobalObjects();(i||o)&&e.customElements&&"customElements"in e&&n.patchCallbacks(n,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,i)}),Zone.__load_patch("XHR",(e,n)=>{!function b(v){const p=v.XMLHttpRequest;if(!p)return;const M=p.prototype;let N=M[Ze],B=M[Ne];if(!N){const h=v.XMLHttpRequestEventTarget;if(h){const I=h.prototype;N=I[Ze],B=I[Ne]}}const H="readystatechange",J="scheduled";function q(h){const I=h.data,P=I.target;P[a]=!1,P[d]=!1;const Q=P[c];N||(N=P[Ze],B=P[Ne]),Q&&B.call(P,H,Q);const oe=P[c]=()=>{if(P.readyState===P.DONE)if(!I.aborted&&P[a]&&h.state===J){const U=P[n.__symbol__("loadfalse")];if(0!==P.status&&U&&U.length>0){const re=h.invoke;h.invoke=function(){const ee=P[n.__symbol__("loadfalse")];for(let W=0;Wfunction(h,I){return h[o]=0==I[2],h[y]=I[1],K.apply(h,I)}),X=j("fetchTaskAborting"),A=j("fetchTaskScheduling"),E=le(M,"send",()=>function(h,I){if(!0===n.current[A]||h[o])return E.apply(h,I);{const P={target:h,url:h[y],isPeriodic:!1,args:I,aborted:!1},Q=Me("XMLHttpRequest.send",R,P,q,_);h&&!0===h[d]&&!P.aborted&&Q.state===J&&Q.invoke()}}),G=le(M,"abort",()=>function(h,I){const P=function Z(h){return h[i]}(h);if(P&&"string"==typeof P.type){if(null==P.cancelFn||P.data&&P.data.aborted)return;P.zone.cancelTask(P)}else if(!0===n.current[X])return G.apply(h,I)})}(e);const i=j("xhrTask"),o=j("xhrSync"),c=j("xhrListener"),a=j("xhrScheduled"),y=j("xhrURL"),d=j("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",e=>{e.navigator&&e.navigator.geolocation&&function at(e,n){const i=e.constructor.name;for(let o=0;o{const b=function(){return d.apply(this,Le(arguments,i+"."+c))};return ue(b,d),b})(a)}}}(e.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,n)=>{function i(o){return function(c){Qe(e,o).forEach(y=>{const d=e.PromiseRejectionEvent;if(d){const b=new d(o,{promise:c.promise,reason:c.rejection});y.invoke(b)}})}}e.PromiseRejectionEvent&&(n[j("unhandledPromiseRejectionHandler")]=i("unhandledrejection"),n[j("rejectionHandledHandler")]=i("rejectionhandled"))}),Zone.__load_patch("queueMicrotask",(e,n,i)=>{!function yt(e,n){n.patchMethod(e,"queueMicrotask",i=>function(o,c){Zone.current.scheduleMicroTask("queueMicrotask",c[0])})}(e,i)})}},ie=>{ie(ie.s=321)}]); \ No newline at end of file From 091facf145a500aff3f3561efd1fd44d207044fa Mon Sep 17 00:00:00 2001 From: Daniel Palme Date: Thu, 9 Nov 2023 21:03:58 +0100 Subject: [PATCH 4/6] Update Angular --- docs/404.html | 4 ++-- docs/contact.html | 4 ++-- docs/features.html | 4 ++-- docs/getstarted.html | 4 ++-- docs/index.html | 4 ++-- docs/main.752a4eb1bf070a26.js | 1 - docs/main.ffb8fee3758b850b.js | 1 + docs/polyfills.e7f65988d152fe55.js | 1 + docs/polyfills.f580ad6b6c609c91.js | 1 - docs/pro.html | 4 ++-- docs/styles.0857a5ff7ab55c61.css | 10 ++++++++++ docs/styles.efc28ac814ce3de3.css | 10 ---------- docs/usage.html | 4 ++-- 13 files changed, 26 insertions(+), 26 deletions(-) delete mode 100644 docs/main.752a4eb1bf070a26.js create mode 100644 docs/main.ffb8fee3758b850b.js create mode 100644 docs/polyfills.e7f65988d152fe55.js delete mode 100644 docs/polyfills.f580ad6b6c609c91.js create mode 100644 docs/styles.0857a5ff7ab55c61.css delete mode 100644 docs/styles.efc28ac814ce3de3.css diff --git a/docs/404.html b/docs/404.html index 4f035632..a719a375 100644 --- a/docs/404.html +++ b/docs/404.html @@ -9,7 +9,7 @@ - + - + \ No newline at end of file diff --git a/docs/contact.html b/docs/contact.html index c946c4e8..e50bc6d9 100644 --- a/docs/contact.html +++ b/docs/contact.html @@ -9,7 +9,7 @@ - + - + \ No newline at end of file diff --git a/docs/features.html b/docs/features.html index cd51750a..d60d224c 100644 --- a/docs/features.html +++ b/docs/features.html @@ -9,7 +9,7 @@ - + - + \ No newline at end of file diff --git a/docs/getstarted.html b/docs/getstarted.html index 0668f31a..11a795e6 100644 --- a/docs/getstarted.html +++ b/docs/getstarted.html @@ -9,7 +9,7 @@ - + - + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index eb4fa739..49a8d145 100644 --- a/docs/index.html +++ b/docs/index.html @@ -9,7 +9,7 @@ - + - + \ No newline at end of file diff --git a/docs/main.752a4eb1bf070a26.js b/docs/main.752a4eb1bf070a26.js deleted file mode 100644 index 94a1faaa..00000000 --- a/docs/main.752a4eb1bf070a26.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[179],{603:()=>{function ue(e){return"function"==typeof e}function Wo(e){const r=e(n=>{Error.call(n),n.stack=(new Error).stack});return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}const Es=Wo(e=>function(r){e(this),this.message=r?`${r.length} errors occurred during unsubscription:\n${r.map((n,o)=>`${o+1}) ${n.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=r});function Zo(e,t){if(e){const r=e.indexOf(t);0<=r&&e.splice(r,1)}}class gt{constructor(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let t;if(!this.closed){this.closed=!0;const{_parentage:r}=this;if(r)if(this._parentage=null,Array.isArray(r))for(const i of r)i.remove(this);else r.remove(this);const{initialTeardown:n}=this;if(ue(n))try{n()}catch(i){t=i instanceof Es?i.errors:[i]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const i of o)try{Vh(i)}catch(s){t=t??[],s instanceof Es?t=[...t,...s.errors]:t.push(s)}}if(t)throw new Es(t)}}add(t){var r;if(t&&t!==this)if(this.closed)Vh(t);else{if(t instanceof gt){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=null!==(r=this._finalizers)&&void 0!==r?r:[]).push(t)}}_hasParent(t){const{_parentage:r}=this;return r===t||Array.isArray(r)&&r.includes(t)}_addParent(t){const{_parentage:r}=this;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t}_removeParent(t){const{_parentage:r}=this;r===t?this._parentage=null:Array.isArray(r)&&Zo(r,t)}remove(t){const{_finalizers:r}=this;r&&Zo(r,t),t instanceof gt&&t._removeParent(this)}}gt.EMPTY=(()=>{const e=new gt;return e.closed=!0,e})();const Fh=gt.EMPTY;function Lh(e){return e instanceof gt||e&&"closed"in e&&ue(e.remove)&&ue(e.add)&&ue(e.unsubscribe)}function Vh(e){ue(e)?e():e.unsubscribe()}const ir={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},Ms={setTimeout(e,t,...r){const{delegate:n}=Ms;return n?.setTimeout?n.setTimeout(e,t,...r):setTimeout(e,t,...r)},clearTimeout(e){const{delegate:t}=Ms;return(t?.clearTimeout||clearTimeout)(e)},delegate:void 0};function jh(e){Ms.setTimeout(()=>{const{onUnhandledError:t}=ir;if(!t)throw e;t(e)})}function lc(){}const ME=cc("C",void 0,void 0);function cc(e,t,r){return{kind:e,value:t,error:r}}let sr=null;function Is(e){if(ir.useDeprecatedSynchronousErrorHandling){const t=!sr;if(t&&(sr={errorThrown:!1,error:null}),e(),t){const{errorThrown:r,error:n}=sr;if(sr=null,r)throw n}}else e()}class uc extends gt{constructor(t){super(),this.isStopped=!1,t?(this.destination=t,Lh(t)&&t.add(this)):this.destination=NE}static create(t,r,n){return new Ss(t,r,n)}next(t){this.isStopped?fc(function SE(e){return cc("N",e,void 0)}(t),this):this._next(t)}error(t){this.isStopped?fc(function IE(e){return cc("E",void 0,e)}(t),this):(this.isStopped=!0,this._error(t))}complete(){this.isStopped?fc(ME,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()}}}const AE=Function.prototype.bind;function dc(e,t){return AE.call(e,t)}class xE{constructor(t){this.partialObserver=t}next(t){const{partialObserver:r}=this;if(r.next)try{r.next(t)}catch(n){Ts(n)}}error(t){const{partialObserver:r}=this;if(r.error)try{r.error(t)}catch(n){Ts(n)}else Ts(t)}complete(){const{partialObserver:t}=this;if(t.complete)try{t.complete()}catch(r){Ts(r)}}}class Ss extends uc{constructor(t,r,n){let o;if(super(),ue(t)||!t)o={next:t??void 0,error:r??void 0,complete:n??void 0};else{let i;this&&ir.useDeprecatedNextContext?(i=Object.create(t),i.unsubscribe=()=>this.unsubscribe(),o={next:t.next&&dc(t.next,i),error:t.error&&dc(t.error,i),complete:t.complete&&dc(t.complete,i)}):o=t}this.destination=new xE(o)}}function Ts(e){ir.useDeprecatedSynchronousErrorHandling?function TE(e){ir.useDeprecatedSynchronousErrorHandling&&sr&&(sr.errorThrown=!0,sr.error=e)}(e):jh(e)}function fc(e,t){const{onStoppedNotification:r}=ir;r&&Ms.setTimeout(()=>r(e,t))}const NE={closed:!0,next:lc,error:function RE(e){throw e},complete:lc},hc="function"==typeof Symbol&&Symbol.observable||"@@observable";function jn(e){return e}function Hh(e){return 0===e.length?jn:1===e.length?e[0]:function(r){return e.reduce((n,o)=>o(n),r)}}let Ie=(()=>{class e{constructor(r){r&&(this._subscribe=r)}lift(r){const n=new e;return n.source=this,n.operator=r,n}subscribe(r,n,o){const i=function kE(e){return e&&e instanceof uc||function PE(e){return e&&ue(e.next)&&ue(e.error)&&ue(e.complete)}(e)&&Lh(e)}(r)?r:new Ss(r,n,o);return Is(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(r){try{return this._subscribe(r)}catch(n){r.error(n)}}forEach(r,n){return new(n=Uh(n))((o,i)=>{const s=new Ss({next:a=>{try{r(a)}catch(l){i(l),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(r){var n;return null===(n=this.source)||void 0===n?void 0:n.subscribe(r)}[hc](){return this}pipe(...r){return Hh(r)(this)}toPromise(r){return new(r=Uh(r))((n,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>n(i))})}}return e.create=t=>new e(t),e})();function Uh(e){var t;return null!==(t=e??ir.Promise)&&void 0!==t?t:Promise}const FE=Wo(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let Vt=(()=>{class e extends Ie{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(r){const n=new Bh(this,this);return n.operator=r,n}_throwIfClosed(){if(this.closed)throw new FE}next(r){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const n of this.currentObservers)n.next(r)}})}error(r){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=r;const{observers:n}=this;for(;n.length;)n.shift().error(r)}})}complete(){Is(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:r}=this;for(;r.length;)r.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var r;return(null===(r=this.observers)||void 0===r?void 0:r.length)>0}_trySubscribe(r){return this._throwIfClosed(),super._trySubscribe(r)}_subscribe(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)}_innerSubscribe(r){const{hasError:n,isStopped:o,observers:i}=this;return n||o?Fh:(this.currentObservers=null,i.push(r),new gt(()=>{this.currentObservers=null,Zo(i,r)}))}_checkFinalizedStatuses(r){const{hasError:n,thrownError:o,isStopped:i}=this;n?r.error(o):i&&r.complete()}asObservable(){const r=new Ie;return r.source=this,r}}return e.create=(t,r)=>new Bh(t,r),e})();class Bh extends Vt{constructor(t,r){super(),this.destination=t,this.source=r}next(t){var r,n;null===(n=null===(r=this.destination)||void 0===r?void 0:r.next)||void 0===n||n.call(r,t)}error(t){var r,n;null===(n=null===(r=this.destination)||void 0===r?void 0:r.error)||void 0===n||n.call(r,t)}complete(){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.complete)||void 0===r||r.call(t)}_subscribe(t){var r,n;return null!==(n=null===(r=this.source)||void 0===r?void 0:r.subscribe(t))&&void 0!==n?n:Fh}}function $h(e){return ue(e?.lift)}function Pe(e){return t=>{if($h(t))return t.lift(function(r){try{return e(r,this)}catch(n){this.error(n)}});throw new TypeError("Unable to lift unknown Observable type")}}function Re(e,t,r,n,o){return new LE(e,t,r,n,o)}class LE extends uc{constructor(t,r,n,o,i,s){super(t),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=r?function(a){try{r(a)}catch(l){t.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){t.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=n?function(){try{n()}catch(a){t.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:r}=this;super.unsubscribe(),!r&&(null===(t=this.onFinalize)||void 0===t||t.call(this))}}}function ee(e,t){return Pe((r,n)=>{let o=0;r.subscribe(Re(n,i=>{n.next(e.call(t,i,o++))}))})}function Hn(e){return this instanceof Hn?(this.v=e,this):new Hn(e)}function Wh(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r,t=e[Symbol.asyncIterator];return t?t.call(e):(e=function vc(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Zh=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function Yh(e){return ue(e?.then)}function Qh(e){return ue(e[hc])}function Xh(e){return Symbol.asyncIterator&&ue(e?.[Symbol.asyncIterator])}function Jh(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Kh=function i1(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function ep(e){return ue(e?.[Kh])}function tp(e){return function qh(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,n=r.apply(e,t||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(g){n[g]&&(o[g]=function(m){return new Promise(function(y,C){i.push([g,m,y,C])>1||a(g,m)})})}function a(g,m){try{!function l(g){g.value instanceof Hn?Promise.resolve(g.value.v).then(c,u):d(i[0][2],g)}(n[g](m))}catch(y){d(i[0][3],y)}}function c(g){a("next",g)}function u(g){a("throw",g)}function d(g,m){g(m),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const r=e.getReader();try{for(;;){const{value:n,done:o}=yield Hn(r.read());if(o)return yield Hn(void 0);yield yield Hn(n)}}finally{r.releaseLock()}})}function np(e){return ue(e?.getReader)}function jt(e){if(e instanceof Ie)return e;if(null!=e){if(Qh(e))return function s1(e){return new Ie(t=>{const r=e[hc]();if(ue(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Zh(e))return function a1(e){return new Ie(t=>{for(let r=0;r{e.then(r=>{t.closed||(t.next(r),t.complete())},r=>t.error(r)).then(null,jh)})}(e);if(Xh(e))return rp(e);if(ep(e))return function c1(e){return new Ie(t=>{for(const r of e)if(t.next(r),t.closed)return;t.complete()})}(e);if(np(e))return function u1(e){return rp(tp(e))}(e)}throw Jh(e)}function rp(e){return new Ie(t=>{(function d1(e,t){var r,n,o,i;return function Gh(e,t,r,n){return new(r||(r=Promise))(function(i,s){function a(u){try{c(n.next(u))}catch(d){s(d)}}function l(u){try{c(n.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof r?i:new r(function(s){s(i)})}(u.value).then(a,l)}c((n=n.apply(e,t||[])).next())})}(this,void 0,void 0,function*(){try{for(r=Wh(e);!(n=yield r.next()).done;)if(t.next(n.value),t.closed)return}catch(s){o={error:s}}finally{try{n&&!n.done&&(i=r.return)&&(yield i.call(r))}finally{if(o)throw o.error}}t.complete()})})(e,t).catch(r=>t.error(r))})}function vn(e,t,r,n=0,o=!1){const i=t.schedule(function(){r(),o?e.add(this.schedule(null,n)):this.unsubscribe()},n);if(e.add(i),!o)return i}function Ve(e,t,r=1/0){return ue(t)?Ve((n,o)=>ee((i,s)=>t(n,i,o,s))(jt(e(n,o))),r):("number"==typeof t&&(r=t),Pe((n,o)=>function f1(e,t,r,n,o,i,s,a){const l=[];let c=0,u=0,d=!1;const g=()=>{d&&!l.length&&!c&&t.complete()},m=C=>c{i&&t.next(C),c++;let b=!1;jt(r(C,u++)).subscribe(Re(t,E=>{o?.(E),i?m(E):t.next(E)},()=>{b=!0},void 0,()=>{if(b)try{for(c--;l.length&&cy(E)):y(E)}g()}catch(E){t.error(E)}}))};return e.subscribe(Re(t,m,()=>{d=!0,g()})),()=>{a?.()}}(n,o,e,r)))}function Rr(e=1/0){return Ve(jn,e)}const Kt=new Ie(e=>e.complete());function yc(e){return e[e.length-1]}function op(e){return ue(yc(e))?e.pop():void 0}function Yo(e){return function p1(e){return e&&ue(e.schedule)}(yc(e))?e.pop():void 0}function ip(e,t=0){return Pe((r,n)=>{r.subscribe(Re(n,o=>vn(n,e,()=>n.next(o),t),()=>vn(n,e,()=>n.complete(),t),o=>vn(n,e,()=>n.error(o),t)))})}function sp(e,t=0){return Pe((r,n)=>{n.add(e.schedule(()=>r.subscribe(n),t))})}function ap(e,t){if(!e)throw new Error("Iterable cannot be null");return new Ie(r=>{vn(r,t,()=>{const n=e[Symbol.asyncIterator]();vn(r,t,()=>{n.next().then(o=>{o.done?r.complete():r.next(o.value)})},0,!0)})})}function Ne(e,t){return t?function D1(e,t){if(null!=e){if(Qh(e))return function m1(e,t){return jt(e).pipe(sp(t),ip(t))}(e,t);if(Zh(e))return function y1(e,t){return new Ie(r=>{let n=0;return t.schedule(function(){n===e.length?r.complete():(r.next(e[n++]),r.closed||this.schedule())})})}(e,t);if(Yh(e))return function v1(e,t){return jt(e).pipe(sp(t),ip(t))}(e,t);if(Xh(e))return ap(e,t);if(ep(e))return function _1(e,t){return new Ie(r=>{let n;return vn(r,t,()=>{n=e[Kh](),vn(r,t,()=>{let o,i;try{({value:o,done:i}=n.next())}catch(s){return void r.error(s)}i?r.complete():r.next(o)},0,!0)}),()=>ue(n?.return)&&n.return()})}(e,t);if(np(e))return function C1(e,t){return ap(tp(e),t)}(e,t)}throw Jh(e)}(e,t):jt(e)}class At extends Vt{constructor(t){super(),this._value=t}get value(){return this.getValue()}_subscribe(t){const r=super._subscribe(t);return!r.closed&&t.next(this._value),r}getValue(){const{hasError:t,thrownError:r,_value:n}=this;if(t)throw r;return this._throwIfClosed(),n}next(t){super.next(this._value=t)}}function V(...e){return Ne(e,Yo(e))}function ar(e){return e<=0?()=>Kt:Pe((t,r)=>{let n=0;t.subscribe(Re(r,o=>{++n<=e&&(r.next(o),e<=n&&r.complete())}))})}function lp(e={}){const{connector:t=(()=>new Vt),resetOnError:r=!0,resetOnComplete:n=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const g=()=>{a?.unsubscribe(),a=null},m=()=>{g(),s=l=null,u=d=!1},y=()=>{const C=s;m(),C?.unsubscribe()};return Pe((C,b)=>{c++,!d&&!u&&g();const E=l=l??t();b.add(()=>{c--,0===c&&!d&&!u&&(a=_c(y,o))}),E.subscribe(b),s||(s=new Ss({next:D=>E.next(D),error:D=>{d=!0,g(),a=_c(m,r,D),E.error(D)},complete:()=>{u=!0,g(),a=_c(m,n),E.complete()}}),Ne(C).subscribe(s))})(i)}}function _c(e,t,...r){return!0===t?(e(),null):!1===t?null:t(...r).pipe(ar(1)).subscribe(()=>e())}function Ht(e,t){return Pe((r,n)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&n.complete();r.subscribe(Re(n,l=>{o?.unsubscribe();let c=0;const u=i++;jt(e(l,u)).subscribe(o=Re(n,d=>n.next(t?t(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function E1(e,t){return e===t}function ae(e){for(let t in e)if(e[t]===ae)return t;throw Error("Could not find renamed property on target object.")}function As(e,t){for(const r in t)t.hasOwnProperty(r)&&!e.hasOwnProperty(r)&&(e[r]=t[r])}function ke(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(ke).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const t=e.toString();if(null==t)return""+t;const r=t.indexOf("\n");return-1===r?t:t.substring(0,r)}function Cc(e,t){return null==e||""===e?null===t?"":t:null==t||""===t?e:e+" "+t}const M1=ae({__forward_ref__:ae});function fe(e){return e.__forward_ref__=fe,e.toString=function(){return ke(this())},e}function U(e){return Dc(e)?e():e}function Dc(e){return"function"==typeof e&&e.hasOwnProperty(M1)&&e.__forward_ref__===fe}function bc(e){return e&&!!e.\u0275providers}const cp="https://g.co/ng/security#xss";class S extends Error{constructor(t,r){super(function xs(e,t){return`NG0${Math.abs(e)}${t?": "+t:""}`}(t,r)),this.code=t}}function $(e){return"string"==typeof e?e:null==e?"":String(e)}function wc(e,t){throw new S(-201,!1)}function xt(e,t){null==e&&function j(e,t,r,n){throw new Error(`ASSERTION ERROR: ${e}`+(null==n?"":` [Expected=> ${r} ${n} ${t} <=Actual]`))}(t,e,null,"!=")}function L(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function en(e){return{providers:e.providers||[],imports:e.imports||[]}}function Rs(e){return up(e,Os)||up(e,dp)}function up(e,t){return e.hasOwnProperty(t)?e[t]:null}function Ns(e){return e&&(e.hasOwnProperty(Ec)||e.hasOwnProperty(O1))?e[Ec]:null}const Os=ae({\u0275prov:ae}),Ec=ae({\u0275inj:ae}),dp=ae({ngInjectableDef:ae}),O1=ae({ngInjectorDef:ae});var Y=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}(Y||{});let Mc;function it(e){const t=Mc;return Mc=e,t}function hp(e,t,r){const n=Rs(e);return n&&"root"==n.providedIn?void 0===n.value?n.value=n.factory():n.value:r&Y.Optional?null:void 0!==t?t:void wc(ke(e))}const he=globalThis,Qo={},xc="__NG_DI_FLAG__",Ps="ngTempTokenPath",F1=/\n/gm,gp="__source";let Nr;function Un(e){const t=Nr;return Nr=e,t}function j1(e,t=Y.Default){if(void 0===Nr)throw new S(-203,!1);return null===Nr?hp(e,void 0,t):Nr.get(e,t&Y.Optional?null:void 0,t)}function F(e,t=Y.Default){return(function fp(){return Mc}()||j1)(U(e),t)}function A(e,t=Y.Default){return F(e,ks(t))}function ks(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Rc(e){const t=[];for(let r=0;rt){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const m=8&n?g:null;if(m&&-1!==_p(m,c,0)||2&n&&c!==g){if(Bt(n))return!1;s=!0}}}}else{if(!s&&!Bt(n)&&!Bt(l))return!1;if(s&&Bt(l))continue;s=!1,n=l|1&n}}return Bt(n)||s}function Bt(e){return 0==(1&e)}function q1(e,t,r,n){if(null===t)return-1;let o=0;if(n||!r){let i=!1;for(;o-1)for(r++;r0?'="'+a+'"':"")+"]"}else 8&n?o+="."+s:4&n&&(o+=" "+s);else""!==o&&!Bt(s)&&(t+=Ip(i,o),o=""),n=s,i=i||!Bt(n);r++}return""!==o&&(t+=Ip(i,o)),t}function vt(e){return yn(()=>{const t=Tp(e),r={...t,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===Fs.OnPush,directiveDefs:null,pipeDefs:null,dependencies:t.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Ut.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};Ap(r);const n=e.dependencies;return r.directiveDefs=Vs(n,!1),r.pipeDefs=Vs(n,!0),r.id=function s0(e){let t=0;const r=[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(const o of r)t=Math.imul(31,t)+o.charCodeAt(0)<<0;return t+=2147483648,"c"+t}(r),r})}function t0(e){return X(e)||je(e)}function n0(e){return null!==e}function Cn(e){return yn(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function Sp(e,t){if(null==e)return tn;const r={};for(const n in e)if(e.hasOwnProperty(n)){let o=e[n],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),r[o]=n,t&&(t[o]=i)}return r}function B(e){return yn(()=>{const t=Tp(e);return Ap(t),t})}function X(e){return e[Ls]||null}function je(e){return e[Nc]||null}function Qe(e){return e[Oc]||null}function yt(e,t){const r=e[vp]||null;if(!r&&!0===t)throw new Error(`Type ${ke(e)} does not have '\u0275mod' property.`);return r}function Tp(e){const 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||tn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:Sp(e.inputs,t),outputs:Sp(e.outputs)}}function Ap(e){e.features?.forEach(t=>t(e))}function Vs(e,t){if(!e)return null;const r=t?Qe:t0;return()=>("function"==typeof e?e():e).map(n=>r(n)).filter(n0)}const we=0,T=1,q=2,_e=3,$t=4,ei=5,ze=6,Pr=7,Se=8,Bn=9,kr=10,G=11,ti=12,xp=13,Fr=14,Te=15,ni=16,Lr=17,nn=18,ri=19,Rp=20,$n=21,Dn=22,oi=23,ii=24,Q=25,kc=1,Np=2,rn=7,Vr=9,He=11;function at(e){return Array.isArray(e)&&"object"==typeof e[kc]}function Xe(e){return Array.isArray(e)&&!0===e[kc]}function Fc(e){return 0!=(4&e.flags)}function cr(e){return e.componentOffset>-1}function Hs(e){return 1==(1&e.flags)}function Gt(e){return!!e.template}function Lc(e){return 0!=(512&e[q])}function ur(e,t){return e.hasOwnProperty(_n)?e[_n]:null}let Ue=null,Us=!1;function Rt(e){const t=Ue;return Ue=e,t}const kp={version: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:()=>{}};function Lp(e){if(!ai(e)||e.dirty){if(!e.producerMustRecompute(e)&&!Hp(e))return void(e.dirty=!1);e.producerRecomputeValue(e),e.dirty=!1}}function jp(e){e.dirty=!0,function Vp(e){if(void 0===e.liveConsumerNode)return;const t=Us;Us=!0;try{for(const r of e.liveConsumerNode)r.dirty||jp(r)}finally{Us=t}}(e),e.consumerMarkedDirty?.(e)}function jc(e){return e&&(e.nextProducerIndex=0),Rt(e)}function Hc(e,t){if(Rt(t),e&&void 0!==e.producerNode&&void 0!==e.producerIndexOfThis&&void 0!==e.producerLastReadVersion){if(ai(e))for(let r=e.nextProducerIndex;re.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}function Hp(e){jr(e);for(let t=0;t0}function jr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let Gp=null;const Zp=()=>{},_0=(()=>({...kp,consumerIsAlwaysLive:!0,consumerAllowSignalWrites:!1,consumerMarkedDirty:e=>{e.schedule(e.ref)},hasRun:!1,cleanupFn:Zp}))();class C0{constructor(t,r,n){this.previousValue=t,this.currentValue=r,this.firstChange=n}isFirstChange(){return this.firstChange}}function Nt(){return Yp}function Yp(e){return e.type.prototype.ngOnChanges&&(e.setInput=b0),D0}function D0(){const e=Xp(this),t=e?.current;if(t){const r=e.previous;if(r===tn)e.previous=t;else for(let n in t)r[n]=t[n];e.current=null,this.ngOnChanges(t)}}function b0(e,t,r,n){const o=this.declaredInputs[r],i=Xp(e)||function w0(e,t){return e[Qp]=t}(e,{previous:tn,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new C0(l&&l.currentValue,t,a===tn),e[n]=t}Nt.ngInherit=!0;const Qp="__ngSimpleChanges__";function Xp(e){return e[Qp]||null}const on=function(e,t,r){};function pe(e){for(;Array.isArray(e);)e=e[we];return e}function $s(e,t){return pe(t[e])}function lt(e,t){return pe(t[e.index])}function eg(e,t){return e.data[t]}function _t(e,t){const r=t[e];return at(r)?r:r[we]}function zn(e,t){return null==t?null:e[t]}function tg(e){e[Lr]=0}function A0(e){1024&e[q]||(e[q]|=1024,rg(e,1))}function ng(e){1024&e[q]&&(e[q]&=-1025,rg(e,-1))}function rg(e,t){let r=e[_e];if(null===r)return;r[ei]+=t;let n=r;for(r=r[_e];null!==r&&(1===t&&1===n[ei]||-1===t&&0===n[ei]);)r[ei]+=t,n=r,r=r[_e]}const H={lFrame:pg(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function sg(){return H.bindingsEnabled}function M(){return H.lFrame.lView}function J(){return H.lFrame.tView}function ne(e){return H.lFrame.contextLView=e,e[Se]}function re(e){return H.lFrame.contextLView=null,e}function Be(){let e=ag();for(;null!==e&&64===e.type;)e=e.parent;return e}function ag(){return H.lFrame.currentTNode}function sn(e,t){const r=H.lFrame;r.currentTNode=e,r.isParent=t}function zc(){return H.lFrame.isParent}function qc(){H.lFrame.isParent=!1}function Je(){const e=H.lFrame;let t=e.bindingRootIndex;return-1===t&&(t=e.bindingRootIndex=e.tView.bindingStartIndex),t}function Br(){return H.lFrame.bindingIndex++}function U0(e,t){const r=H.lFrame;r.bindingIndex=r.bindingRootIndex=e,Wc(t)}function Wc(e){H.lFrame.currentDirectiveIndex=e}function dg(){return H.lFrame.currentQueryIndex}function Yc(e){H.lFrame.currentQueryIndex=e}function $0(e){const t=e[T];return 2===t.type?t.declTNode:1===t.type?e[ze]:null}function fg(e,t,r){if(r&Y.SkipSelf){let o=t,i=e;for(;!(o=o.parent,null!==o||r&Y.Host||(o=$0(i),null===o||(i=i[Fr],10&o.type))););if(null===o)return!1;t=o,e=i}const n=H.lFrame=hg();return n.currentTNode=t,n.lView=e,!0}function Qc(e){const t=hg(),r=e[T];H.lFrame=t,t.currentTNode=r.firstChild,t.lView=e,t.tView=r,t.contextLView=e,t.bindingIndex=r.bindingStartIndex,t.inI18n=!1}function hg(){const e=H.lFrame,t=null===e?null:e.child;return null===t?pg(e):t}function pg(e){const 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 null!==e&&(e.child=t),t}function gg(){const e=H.lFrame;return H.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const mg=gg;function Xc(){const e=gg();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 Ke(){return H.lFrame.selectedIndex}function dr(e){H.lFrame.selectedIndex=e}function be(){const e=H.lFrame;return eg(e.tView,e.selectedIndex)}let yg=!0;function Gs(){return yg}function qn(e){yg=e}function zs(e,t){for(let r=t.directiveStart,n=t.directiveEnd;r=n)break}else t[l]<0&&(e[Lr]+=65536),(a>13>16&&(3&e[q])===t&&(e[q]+=8192,Cg(a,i)):Cg(a,i)}const $r=-1;class ci{constructor(t,r,n){this.factory=t,this.resolving=!1,this.canSeeViewProviders=r,this.injectImpl=n}}function eu(e){return e!==$r}function ui(e){return 32767&e}function di(e,t){let r=function tM(e){return e>>16}(e),n=t;for(;r>0;)n=n[Fr],r--;return n}let tu=!0;function Zs(e){const t=tu;return tu=e,t}const Dg=255,bg=5;let nM=0;const an={};function Ys(e,t){const r=wg(e,t);if(-1!==r)return r;const n=t[T];n.firstCreatePass&&(e.injectorIndex=t.length,nu(n.data,e),nu(t,null),nu(n.blueprint,null));const o=Qs(e,t),i=e.injectorIndex;if(eu(o)){const s=ui(o),a=di(o,t),l=a[T].data;for(let c=0;c<8;c++)t[i+c]=a[s+c]|l[s+c]}return t[i+8]=o,i}function nu(e,t){e.push(0,0,0,0,0,0,0,0,t)}function wg(e,t){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===t[e.injectorIndex+8]?-1:e.injectorIndex}function Qs(e,t){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let r=0,n=null,o=t;for(;null!==o;){if(n=xg(o),null===n)return $r;if(r++,o=o[Fr],-1!==n.injectorIndex)return n.injectorIndex|r<<16}return $r}function ru(e,t,r){!function rM(e,t,r){let n;"string"==typeof r?n=r.charCodeAt(0)||0:r.hasOwnProperty(Jo)&&(n=r[Jo]),null==n&&(n=r[Jo]=nM++);const o=n&Dg;t.data[e+(o>>bg)]|=1<=0?t&Dg:lM:t}(r);if("function"==typeof i){if(!fg(t,e,n))return n&Y.Host?Eg(o,0,n):Mg(t,r,n,o);try{let s;if(s=i(n),null!=s||n&Y.Optional)return s;wc()}finally{mg()}}else if("number"==typeof i){let s=null,a=wg(e,t),l=$r,c=n&Y.Host?t[Te][ze]:null;for((-1===a||n&Y.SkipSelf)&&(l=-1===a?Qs(e,t):t[a+8],l!==$r&&Ag(n,!1)?(s=t[T],a=ui(l),t=di(l,t)):a=-1);-1!==a;){const u=t[T];if(Tg(i,a,u.data)){const d=iM(a,t,r,s,n,c);if(d!==an)return d}l=t[a+8],l!==$r&&Ag(n,t[T].data[a+8]===c)&&Tg(i,a,t)?(s=u,a=ui(l),t=di(l,t)):a=-1}}return o}function iM(e,t,r,n,o,i){const s=t[T],a=s.data[e+8],u=Xs(a,s,r,null==n?cr(a)&&tu:n!=s&&0!=(3&a.type),o&Y.Host&&i===a);return null!==u?fr(t,s,u,a):an}function Xs(e,t,r,n,o){const i=e.providerIndexes,s=t.data,a=1048575&i,l=e.directiveStart,u=i>>20,g=o?a+u:e.directiveEnd;for(let m=n?a:a+u;m=l&&y.type===r)return m}if(o){const m=s[l];if(m&&Gt(m)&&m.type===r)return l}return null}function fr(e,t,r,n){let o=e[r];const i=t.data;if(function J0(e){return e instanceof ci}(o)){const s=o;s.resolving&&function I1(e,t){const r=t?`. Dependency path: ${t.join(" > ")} > ${e}`:"";throw new S(-200,`Circular dependency in DI detected for ${e}${r}`)}(function se(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():$(e)}(i[r]));const a=Zs(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?it(s.injectImpl):null;fg(e,n,Y.Default);try{o=e[r]=s.factory(void 0,i,e,n),t.firstCreatePass&&r>=n.directiveStart&&function Q0(e,t,r){const{ngOnChanges:n,ngOnInit:o,ngDoCheck:i}=t.type.prototype;if(n){const s=Yp(t);(r.preOrderHooks??=[]).push(e,s),(r.preOrderCheckHooks??=[]).push(e,s)}o&&(r.preOrderHooks??=[]).push(0-e,o),i&&((r.preOrderHooks??=[]).push(e,i),(r.preOrderCheckHooks??=[]).push(e,i))}(r,i[r],t)}finally{null!==c&&it(c),Zs(a),s.resolving=!1,mg()}}return o}function Tg(e,t,r){return!!(r[t+(e>>bg)]&1<{const t=e.prototype.constructor,r=t[_n]||ou(t),n=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==n;){const i=o[_n]||ou(o);if(i&&i!==r)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function ou(e){return Dc(e)?()=>{const t=ou(U(e));return t&&t()}:ur(e)}function xg(e){const t=e[T],r=t.type;return 2===r?t.declTNode:1===r?e[ze]:null}const zr="__parameters__";function Wr(e,t,r){return yn(()=>{const n=function iu(e){return function(...r){if(e){const n=e(...r);for(const o in n)this[o]=n[o]}}}(t);function o(...i){if(this instanceof o)return n.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(zr)?l[zr]:Object.defineProperty(l,zr,{value:[]})[zr];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return r&&(o.prototype=Object.create(r.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function Yr(e,t){e.forEach(r=>Array.isArray(r)?Yr(r,t):t(r))}function Ng(e,t,r){t>=e.length?e.push(r):e.splice(t,0,r)}function Ks(e,t){return t>=e.length-1?e.pop():e.splice(t,1)[0]}function Ct(e,t,r){let n=Qr(e,t);return n>=0?e[1|n]=r:(n=~n,function mM(e,t,r,n){let o=e.length;if(o==t)e.push(r,n);else if(1===o)e.push(n,e[0]),e[0]=r;else{for(o--,e.push(e[o-1],e[o]);o>t;)e[o]=e[o-2],o--;e[t]=r,e[t+1]=n}}(e,n,t,r)),n}function su(e,t){const r=Qr(e,t);if(r>=0)return e[1|r]}function Qr(e,t){return function Og(e,t,r){let n=0,o=e.length>>r;for(;o!==n;){const i=n+(o-n>>1),s=e[i<t?o=i:n=i+1}return~(o<|^->||--!>|)/g,jM="\u200b$1\u200b";const du=new Map;let HM=0;const hu="__ngContext__";function qe(e,t){at(t)?(e[hu]=t[ri],function BM(e){du.set(e[ri],e)}(t)):e[hu]=t}let pu;function gu(e,t){return pu(e,t)}function vi(e){const t=e[_e];return Xe(t)?t[_e]:t}function Kg(e){return tm(e[ti])}function em(e){return tm(e[$t])}function tm(e){for(;null!==e&&!Xe(e);)e=e[$t];return e}function Kr(e,t,r,n,o){if(null!=n){let i,s=!1;Xe(n)?i=n:at(n)&&(s=!0,n=n[we]);const a=pe(n);0===e&&null!==r?null==o?im(t,r,a):hr(t,r,a,o||null,!0):1===e&&null!==r?hr(t,r,a,o||null,!0):2===e?function pa(e,t,r){const n=fa(e,t);n&&function aI(e,t,r,n){e.removeChild(t,r,n)}(e,n,t,r)}(t,a,s):3===e&&t.destroyNode(a),null!=i&&function uI(e,t,r,n,o){const i=r[rn];i!==pe(r)&&Kr(t,e,n,i,o);for(let a=He;at.replace(VM,jM))}(t))}function ua(e,t,r){return e.createElement(t,r)}function rm(e,t){const r=e[Vr],n=r.indexOf(t);ng(t),r.splice(n,1)}function da(e,t){if(e.length<=He)return;const r=He+t,n=e[r];if(n){const o=n[ni];null!==o&&o!==e&&rm(o,n),t>0&&(e[r-1][$t]=n[$t]);const i=Ks(e,He+t);!function KM(e,t){_i(e,t,t[G],2,null,null),t[we]=null,t[ze]=null}(n[T],n);const s=i[nn];null!==s&&s.detachView(i[T]),n[_e]=null,n[$t]=null,n[q]&=-129}return n}function vu(e,t){if(!(256&t[q])){const r=t[G];t[oi]&&Up(t[oi]),t[ii]&&Up(t[ii]),r.destroyNode&&_i(e,t,r,3,null,null),function nI(e){let t=e[ti];if(!t)return yu(e[T],e);for(;t;){let r=null;if(at(t))r=t[ti];else{const n=t[He];n&&(r=n)}if(!r){for(;t&&!t[$t]&&t!==e;)at(t)&&yu(t[T],t),t=t[_e];null===t&&(t=e),at(t)&&yu(t[T],t),r=t&&t[$t]}t=r}}(t)}}function yu(e,t){if(!(256&t[q])){t[q]&=-129,t[q]|=256,function sI(e,t){let r;if(null!=e&&null!=(r=e.destroyHooks))for(let n=0;n=0?n[s]():n[-s].unsubscribe(),i+=2}else r[i].call(n[r[i+1]]);null!==n&&(t[Pr]=null);const o=t[$n];if(null!==o){t[$n]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[n.directiveStart+o];if(i===Ut.None||i===Ut.Emulated)return null}return lt(n,r)}}(e,t.parent,r)}function hr(e,t,r,n,o){e.insertBefore(t,r,n,o)}function im(e,t,r){e.appendChild(t,r)}function sm(e,t,r,n,o){null!==n?hr(e,t,r,n,o):im(e,t,r)}function fa(e,t){return e.parentNode(t)}let Cu,Eu,ma,cm=function lm(e,t,r){return 40&e.type?lt(e,r):null};function ha(e,t,r,n){const o=_u(e,n,t),i=t[G],a=function am(e,t,r){return cm(e,t,r)}(n.parent||t[ze],n,t);if(null!=o)if(Array.isArray(r))for(let l=0;le,createScript:e=>e,createScriptURL:e=>e})}catch{}return ma}()?.createScriptURL(e)||e}class _m{constructor(t){this.changingThisBreaksApplicationSecurity=t}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${cp})`}}function Zn(e){return e instanceof _m?e.changingThisBreaksApplicationSecurity:e}function Ci(e,t){const r=function bI(e){return e instanceof _m&&e.getTypeName()||null}(e);if(null!=r&&r!==t){if("ResourceURL"===r&&"URL"===t)return!0;throw new Error(`Required a safe ${t}, got a ${r} (see ${cp})`)}return r===t}const II=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;var no=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}(no||{});function ro(e){const t=bi();return t?t.sanitize(no.URL,e)||"":Ci(e,"URL")?Zn(e):function Iu(e){return(e=String(e)).match(II)?e:"unsafe:"+e}($(e))}function Im(e){const t=bi();if(t)return ym(t.sanitize(no.RESOURCE_URL,e)||"");if(Ci(e,"ResourceURL"))return ym(Zn(e));throw new S(904,!1)}function bi(){const e=M();return e&&e[kr].sanitizer}class x{constructor(t,r){this._desc=t,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof r?this.__NG_ELEMENT_ID__=r:void 0!==r&&(this.\u0275prov=L({token:this,providedIn:r.providedIn||"root",factory:r.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const wi=new x("ENVIRONMENT_INITIALIZER"),Tm=new x("INJECTOR",-1),Am=new x("INJECTOR_DEF_TYPES");class xu{get(t,r=Qo){if(r===Qo){const n=new Error(`NullInjectorError: No provider for ${ke(t)}!`);throw n.name="NullInjectorError",n}return r}}function Ru(e){return{\u0275providers:e}}function xm(...e){return{\u0275providers:Rm(0,e),\u0275fromNgModule:!0}}function Rm(e,...t){const r=[],n=new Set;let o;const i=s=>{r.push(s)};return Yr(t,s=>{const a=s;ya(a,i,[],n)&&(o||=[],o.push(a))}),void 0!==o&&Nm(o,i),r}function Nm(e,t){for(let r=0;r{t(i,n)})}}function ya(e,t,r,n){if(!(e=U(e)))return!1;let o=null,i=Ns(e);const s=!i&&X(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=Ns(l),!i)return!1;o=l}const a=n.has(o);if(s){if(a)return!1;if(n.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)ya(c,t,r,n)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;n.add(o);try{Yr(i.imports,u=>{ya(u,t,r,n)&&(c||=[],c.push(u))})}finally{}void 0!==c&&Nm(c,t)}if(!a){const c=ur(o)||(()=>new o);t({provide:o,useFactory:c,deps:te},o),t({provide:Am,useValue:o,multi:!0},o),t({provide:wi,useValue:()=>F(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;Nu(l,u=>{t(u,c)})}}}return o!==e&&void 0!==e.providers}function Nu(e,t){for(let r of e)bc(r)&&(r=r.\u0275providers),Array.isArray(r)?Nu(r,t):t(r)}const jI=ae({provide:String,useValue:ae});function Ou(e){return null!==e&&"object"==typeof e&&jI in e}function pr(e){return"function"==typeof e}const Pu=new x("Set Injector scope."),_a={},UI={};let ku;function Ca(){return void 0===ku&&(ku=new xu),ku}class Dt{}class Da extends Dt{get destroyed(){return this._destroyed}constructor(t,r,n,o){super(),this.parent=r,this.source=n,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,Lu(t,s=>this.processProvider(s)),this.records.set(Tm,oo(void 0,this)),o.has("environment")&&this.records.set(Dt,oo(void 0,this));const i=this.records.get(Pu);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(Am.multi,te,Y.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const r of this._ngOnDestroyHooks)r.ngOnDestroy();const t=this._onDestroyHooks;this._onDestroyHooks=[];for(const r of t)r()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(t){return this.assertNotDestroyed(),this._onDestroyHooks.push(t),()=>this.removeOnDestroy(t)}runInContext(t){this.assertNotDestroyed();const r=Un(this),n=it(void 0);try{return t()}finally{Un(r),it(n)}}get(t,r=Qo,n=Y.Default){if(this.assertNotDestroyed(),t.hasOwnProperty(yp))return t[yp](this);n=ks(n);const i=Un(this),s=it(void 0);try{if(!(n&Y.SkipSelf)){let l=this.records.get(t);if(void 0===l){const c=function qI(e){return"function"==typeof e||"object"==typeof e&&e instanceof x}(t)&&Rs(t);l=c&&this.injectableDefInScope(c)?oo(Fu(t),_a):null,this.records.set(t,l)}if(null!=l)return this.hydrate(t,l)}return(n&Y.Self?Ca():this.parent).get(t,r=n&Y.Optional&&r===Qo?null:r)}catch(a){if("NullInjectorError"===a.name){if((a[Ps]=a[Ps]||[]).unshift(ke(t)),i)throw a;return function U1(e,t,r,n){const o=e[Ps];throw t[gp]&&o.unshift(t[gp]),e.message=function B1(e,t,r,n=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=ke(t);if(Array.isArray(t))o=t.map(ke).join(" -> ");else if("object"==typeof t){let i=[];for(let s in t)if(t.hasOwnProperty(s)){let a=t[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):ke(a)))}o=`{${i.join(", ")}}`}return`${r}${n?"("+n+")":""}[${o}]: ${e.replace(F1,"\n ")}`}("\n"+e.message,o,r,n),e.ngTokenPath=o,e[Ps]=null,e}(a,t,"R3InjectorError",this.source)}throw a}finally{it(s),Un(i)}}resolveInjectorInitializers(){const t=Un(this),r=it(void 0);try{const o=this.get(wi.multi,te,Y.Self);for(const i of o)i()}finally{Un(t),it(r)}}toString(){const t=[],r=this.records;for(const n of r.keys())t.push(ke(n));return`R3Injector[${t.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new S(205,!1)}processProvider(t){let r=pr(t=U(t))?t:U(t&&t.provide);const n=function $I(e){return Ou(e)?oo(void 0,e.useValue):oo(km(e),_a)}(t);if(pr(t)||!0!==t.multi)this.records.get(r);else{let o=this.records.get(r);o||(o=oo(void 0,_a,!0),o.factory=()=>Rc(o.multi),this.records.set(r,o)),r=t,o.multi.push(t)}this.records.set(r,n)}hydrate(t,r){return r.value===_a&&(r.value=UI,r.value=r.factory()),"object"==typeof r.value&&r.value&&function zI(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(r.value)&&this._ngOnDestroyHooks.add(r.value),r.value}injectableDefInScope(t){if(!t.providedIn)return!1;const r=U(t.providedIn);return"string"==typeof r?"any"===r||this.scopes.has(r):this.injectorDefTypes.has(r)}removeOnDestroy(t){const r=this._onDestroyHooks.indexOf(t);-1!==r&&this._onDestroyHooks.splice(r,1)}}function Fu(e){const t=Rs(e),r=null!==t?t.factory:ur(e);if(null!==r)return r;if(e instanceof x)throw new S(204,!1);if(e instanceof Function)return function BI(e){const t=e.length;if(t>0)throw function pi(e,t){const r=[];for(let n=0;nr.factory(e):()=>new e}(e);throw new S(204,!1)}function km(e,t,r){let n;if(pr(e)){const o=U(e);return ur(o)||Fu(o)}if(Ou(e))n=()=>U(e.useValue);else if(function Pm(e){return!(!e||!e.useFactory)}(e))n=()=>e.useFactory(...Rc(e.deps||[]));else if(function Om(e){return!(!e||!e.useExisting)}(e))n=()=>F(U(e.useExisting));else{const o=U(e&&(e.useClass||e.provide));if(!function GI(e){return!!e.deps}(e))return ur(o)||Fu(o);n=()=>new o(...Rc(e.deps))}return n}function oo(e,t,r=!1){return{factory:e,value:t,multi:r?[]:void 0}}function Lu(e,t){for(const r of e)Array.isArray(r)?Lu(r,t):r&&bc(r)?Lu(r.\u0275providers,t):t(r)}const ba=new x("AppId",{providedIn:"root",factory:()=>WI}),WI="ng",Fm=new x("Platform Initializer"),gr=new x("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),Lm=new x("CSP nonce",{providedIn:"root",factory:()=>function to(){if(void 0!==Eu)return Eu;if(typeof document<"u")return document;throw new S(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});let Vm=(e,t,r)=>null;function zu(e,t,r=!1){return Vm(e,t,r)}class rS{}class Um{}class iS{resolveComponentFactory(t){throw function oS(e){const t=Error(`No component factory found for ${ke(e)}.`);return t.ngComponent=e,t}(t)}}let Ta=(()=>{class t{}return t.NULL=new iS,t})();function sS(){return ao(Be(),M())}function ao(e,t){return new bt(lt(e,t))}let bt=(()=>{class t{constructor(n){this.nativeElement=n}}return t.__NG_ELEMENT_ID__=sS,t})();function aS(e){return e instanceof bt?e.nativeElement:e}class $m{}let Mn=(()=>{class t{constructor(){this.destroyNode=null}}return t.__NG_ELEMENT_ID__=()=>function lS(){const e=M(),r=_t(Be().index,e);return(at(r)?r:e)[G]}(),t})(),cS=(()=>{var e;class t{}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>null}),t})();class Ii{constructor(t){this.full=t,this.major=t.split(".")[0],this.minor=t.split(".")[1],this.patch=t.split(".").slice(2).join(".")}}const uS=new Ii("16.2.8"),Zu={};function Wm(e,t=null,r=null,n){const o=Zm(e,t,r,n);return o.resolveInjectorInitializers(),o}function Zm(e,t=null,r=null,n,o=new Set){const i=[r||te,xm(e)];return n=n||("object"==typeof e?void 0:ke(e)),new Da(i,t||Ca(),n||null,o)}let wt=(()=>{var e;class t{static create(n,o){if(Array.isArray(n))return Wm({name:""},o,n,"");{const i=n.name??"";return Wm({name:i},n.parent,n.providers,i)}}}return(e=t).THROW_IF_NOT_FOUND=Qo,e.NULL=new xu,e.\u0275prov=L({token:e,providedIn:"any",factory:()=>F(Tm)}),e.__NG_ELEMENT_ID__=-1,t})();function Qu(e){return e.ngOriginalError}class In{constructor(){this._console=console}handleError(t){const r=this._findOriginalError(t);this._console.error("ERROR",t),r&&this._console.error("ORIGINAL ERROR",r)}_findOriginalError(t){let r=t&&Qu(t);for(;r&&Qu(r);)r=Qu(r);return r||null}}function Ju(e){return t=>{setTimeout(e,void 0,t)}}const Ee=class vS extends Vt{constructor(t=!1){super(),this.__isAsync=t}emit(t){super.next(t)}subscribe(t,r,n){let o=t,i=r||(()=>null),s=n;if(t&&"object"==typeof t){const l=t;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=Ju(i),o&&(o=Ju(o)),s&&(s=Ju(s)));const a=super.subscribe({next:o,error:i,complete:s});return t instanceof gt&&t.add(a),a}};function Qm(...e){}class ge{constructor({enableLongStackTrace:t=!1,shouldCoalesceEventChangeDetection:r=!1,shouldCoalesceRunChangeDetection:n=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new Ee(!1),this.onMicrotaskEmpty=new Ee(!1),this.onStable=new Ee(!1),this.onError=new Ee(!1),typeof Zone>"u")throw new S(908,!1);Zone.assertZonePatched();const 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=!n&&r,o.shouldCoalesceRunChangeDetection=n,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function yS(){const e="function"==typeof he.requestAnimationFrame;let t=he[e?"requestAnimationFrame":"setTimeout"],r=he[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&t&&r){const n=t[Zone.__symbol__("OriginalDelegate")];n&&(t=n);const o=r[Zone.__symbol__("OriginalDelegate")];o&&(r=o)}return{nativeRequestAnimationFrame:t,nativeCancelAnimationFrame:r}}().nativeRequestAnimationFrame,function DS(e){const t=()=>{!function CS(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(he,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,ed(e),e.isCheckStableRunning=!0,Ku(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),ed(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(r,n,o,i,s,a)=>{if(function wS(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return r.invokeTask(o,i,s,a);try{return Xm(e),r.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&t(),Jm(e)}},onInvoke:(r,n,o,i,s,a,l)=>{try{return Xm(e),r.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&t(),Jm(e)}},onHasTask:(r,n,o,i)=>{r.hasTask(o,i),n===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,ed(e),Ku(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(r,n,o,i)=>(r.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ge.isInAngularZone())throw new S(909,!1)}static assertNotInAngularZone(){if(ge.isInAngularZone())throw new S(909,!1)}run(t,r,n){return this._inner.run(t,r,n)}runTask(t,r,n,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,t,_S,Qm,Qm);try{return i.runTask(s,r,n)}finally{i.cancelTask(s)}}runGuarded(t,r,n){return this._inner.runGuarded(t,r,n)}runOutsideAngular(t){return this._outer.run(t)}}const _S={};function Ku(e){if(0==e._nesting&&!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 ed(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function Xm(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Jm(e){e._nesting--,Ku(e)}const Km=new x("",{providedIn:"root",factory:ev});function ev(){const e=A(ge);let t=!0;return function b1(...e){const t=Yo(e),r=function g1(e,t){return"number"==typeof yc(e)?e.pop():t}(e,1/0),n=e;return n.length?1===n.length?jt(n[0]):Rr(r)(Ne(n,t)):Kt}(new Ie(o=>{t=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(t),o.complete()})}),new Ie(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ge.assertNotInAngularZone(),queueMicrotask(()=>{!t&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(t=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ge.assertInAngularZone(),t&&(t=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe(lp()))}function Sn(e){return e instanceof Function?e():e}let td=(()=>{var e;class t{constructor(){this.renderDepth=0,this.handler=null}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){this.renderDepth--,0===this.renderDepth&&this.handler?.execute()}ngOnDestroy(){this.handler?.destroy(),this.handler=null}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new e}),t})();function Si(e){for(;e;){e[q]|=64;const t=vi(e);if(Lc(e)&&!t)return e;e=t}return null}const iv=new x("",{providedIn:"root",factory:()=>!1});let xa=null;function cv(e,t){return e[t]??fv()}function uv(e,t){const r=fv();r.producerNode?.length&&(e[t]=xa,r.lView=e,xa=dv())}const OS={...kp,consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{Si(e.lView)},lView:null};function dv(){return Object.create(OS)}function fv(){return xa??=dv(),xa}const z={};function _(e){hv(J(),M(),Ke()+e,!1)}function hv(e,t,r,n){if(!n)if(3==(3&t[q])){const i=e.preOrderCheckHooks;null!==i&&qs(t,i,r)}else{const i=e.preOrderHooks;null!==i&&Ws(t,i,0,r)}dr(r)}function I(e,t=Y.Default){const r=M();return null===r?F(e,t):Ig(Be(),r,U(e),t)}function Ra(e,t,r,n,o,i,s,a,l,c,u){const d=t.blueprint.slice();return d[we]=o,d[q]=140|n,(null!==c||e&&2048&e[q])&&(d[q]|=2048),tg(d),d[_e]=d[Fr]=e,d[Se]=r,d[kr]=s||e&&e[kr],d[G]=a||e&&e[G],d[Bn]=l||e&&e[Bn]||null,d[ze]=i,d[ri]=function UM(){return HM++}(),d[Dn]=u,d[Rp]=c,d[Te]=2==t.type?e[Te]:d,d}function uo(e,t,r,n,o){let i=e.data[t];if(null===i)i=function nd(e,t,r,n,o){const i=ag(),s=zc(),l=e.data[t]=function US(e,t,r,n,o,i){let s=t?t.injectorIndex:-1,a=0;return function Ur(){return null!==H.skipHydrationRootTNode}()&&(a|=128),{type:r,index:n,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}}(0,s?i:i&&i.parent,r,t,n,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,t,r,n,o),function H0(){return H.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=r,i.value=n,i.attrs=o;const s=function li(){const e=H.lFrame,t=e.currentTNode;return e.isParent?t:t.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return sn(i,!0),i}function Ti(e,t,r,n){if(0===r)return-1;const o=t.length;for(let i=0;iQ&&hv(e,t,Q,!1),on(a?2:0,o);const c=a?i:null,u=jc(c);try{null!==c&&(c.dirty=!1),r(n,o)}finally{Hc(c,u)}}finally{a&&null===t[oi]&&uv(t,oi),dr(s),on(a?3:1,o)}}function rd(e,t,r){if(Fc(t)){const n=Rt(null);try{const i=t.directiveEnd;for(let s=t.directiveStart;snull;function yv(e,t,r,n){for(let o in e)if(e.hasOwnProperty(o)){r=null===r?{}:r;const i=e[o];null===n?_v(r,t,o,i):n.hasOwnProperty(o)&&_v(r,t,n[o],i)}return r}function _v(e,t,r,n){e.hasOwnProperty(r)?e[r].push(t,n):e[r]=[t,n]}function Et(e,t,r,n,o,i,s,a){const l=lt(t,r);let u,c=t.inputs;!a&&null!=c&&(u=c[n])?(dd(e,r,u,n,o),cr(t)&&function GS(e,t){const r=_t(t,e);16&r[q]||(r[q]|=64)}(r,t.index)):3&t.type&&(n=function $S(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(n),o=null!=s?s(o,t.value||"",n):o,i.setProperty(l,n,o))}function ad(e,t,r,n){if(sg()){const o=null===n?null:{"":-1},i=function QS(e,t){const r=e.directiveRegistry;let n=null,o=null;if(r)for(let i=0;i0;){const r=e[--t];if("number"==typeof r&&r<0)return r}return 0})(s)!=a&&s.push(a),s.push(r,n,i)}}(e,t,n,Ti(e,r,o.hostVars,z),o)}function ln(e,t,r,n,o,i){const s=lt(e,t);!function cd(e,t,r,n,o,i,s){if(null==i)e.removeAttribute(t,o,r);else{const a=null==s?$(i):s(i,n||"",o);e.setAttribute(t,o,a,r)}}(t[G],s,i,e.value,r,n,o)}function nT(e,t,r,n,o,i){const s=i[t];if(null!==s)for(let a=0;a{var e;class t{constructor(){this.all=new Set,this.queue=new Map}create(n,o,i){const s=typeof Zone>"u"?null:Zone.current,a=function y0(e,t,r){const n=Object.create(_0);r&&(n.consumerAllowSignalWrites=!0),n.fn=e,n.schedule=t;const o=s=>{n.cleanupFn=s};return n.ref={notify:()=>jp(n),run:()=>{if(n.dirty=!1,n.hasRun&&!Hp(n))return;n.hasRun=!0;const s=jc(n);try{n.cleanupFn(),n.cleanupFn=Zp,n.fn(o)}finally{Hc(n,s)}},cleanup:()=>n.cleanupFn()},n.ref}(n,u=>{this.all.has(u)&&this.queue.set(u,s)},i);let l;this.all.add(a),a.notify();const c=()=>{a.cleanup(),l?.(),this.all.delete(a),this.queue.delete(a)};return l=o?.onDestroy(c),{destroy:c}}flush(){if(0!==this.queue.size)for(const[n,o]of this.queue)this.queue.delete(n),o?o.run(()=>n.run()):n.run()}get isQueueEmpty(){return 0===this.queue.size}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new e}),t})();function Oa(e,t,r){let n=r?e.styles:null,o=r?e.classes:null,i=0;if(null!==t)for(let s=0;s0){Nv(e,1);const o=r.components;null!==o&&Pv(e,o,1)}}function Pv(e,t,r){for(let n=0;n-1&&(da(t,n),Ks(r,n))}this._attachedToViewContainer=!1}vu(this._lView[T],this._lView)}onDestroy(t){!function og(e,t){if(256==(256&e[q]))throw new S(911,!1);null===e[$n]&&(e[$n]=[]),e[$n].push(t)}(this._lView,t)}markForCheck(){Si(this._cdRefInjectingView||this._lView)}detach(){this._lView[q]&=-129}reattach(){this._lView[q]|=128}detectChanges(){Pa(this._lView[T],this._lView,this.context)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new S(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function tI(e,t){_i(e,t,t[G],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(t){if(this._attachedToViewContainer)throw new S(902,!1);this._appRef=t}}class dT extends xi{constructor(t){super(t),this._view=t}detectChanges(){const t=this._view;Pa(t[T],t,t[Se],!1)}checkNoChanges(){}get context(){return null}}class kv extends Ta{constructor(t){super(),this.ngModule=t}resolveComponentFactory(t){const r=X(t);return new Ri(r,this.ngModule)}}function Fv(e){const t=[];for(let r in e)e.hasOwnProperty(r)&&t.push({propName:e[r],templateName:r});return t}class hT{constructor(t,r){this.injector=t,this.parentInjector=r}get(t,r,n){n=ks(n);const o=this.injector.get(t,Zu,n);return o!==Zu||r===Zu?o:this.parentInjector.get(t,r,n)}}class Ri extends Um{get inputs(){const t=this.componentDef,r=t.inputTransforms,n=Fv(t.inputs);if(null!==r)for(const o of n)r.hasOwnProperty(o.propName)&&(o.transform=r[o.propName]);return n}get outputs(){return Fv(this.componentDef.outputs)}constructor(t,r){super(),this.componentDef=t,this.ngModule=r,this.componentType=t.type,this.selector=function J1(e){return e.map(X1).join(",")}(t.selectors),this.ngContentSelectors=t.ngContentSelectors?t.ngContentSelectors:[],this.isBoundToModule=!!r}create(t,r,n,o){let i=(o=o||this.ngModule)instanceof Dt?o:o?.injector;i&&null!==this.componentDef.getStandaloneInjector&&(i=this.componentDef.getStandaloneInjector(i)||i);const s=i?new hT(t,i):t,a=s.get($m,null);if(null===a)throw new S(407,!1);const d={rendererFactory:a,sanitizer:s.get(cS,null),effectManager:s.get(Av,null),afterRenderEventManager:s.get(td,null)},g=a.createRenderer(null,this.componentDef),m=this.componentDef.selectors[0][0]||"div",y=n?function FS(e,t,r,n){const i=n.get(iv,!1)||r===Ut.ShadowDom,s=e.selectRootElement(t,i);return function LS(e){vv(e)}(s),s}(g,n,this.componentDef.encapsulation,s):ua(g,m,function fT(e){const t=e.toLowerCase();return"svg"===t?"svg":"math"===t?"math":null}(m)),E=this.componentDef.signals?4608:this.componentDef.onPush?576:528;let D=null;null!==y&&(D=zu(y,s,!0));const O=sd(0,null,null,1,0,null,null,null,null,null,null),N=Ra(null,O,null,E,null,null,d,g,s,null,D);let Z,Ge;Qc(N);try{const Tt=this.componentDef;let xr,ac=null;Tt.findHostDirectiveDefs?(xr=[],ac=new Map,Tt.findHostDirectiveDefs(Tt,xr,ac),xr.push(Tt)):xr=[Tt];const Ij=function gT(e,t){const r=e[T],n=Q;return e[n]=t,uo(r,n,2,"#host",null)}(N,y),Sj=function mT(e,t,r,n,o,i,s){const a=o[T];!function vT(e,t,r,n){for(const o of e)t.mergedAttrs=Ko(t.mergedAttrs,o.hostAttrs);null!==t.mergedAttrs&&(Oa(t,t.mergedAttrs,!0),null!==r&&gm(n,r,t))}(n,e,t,s);let l=null;null!==t&&(l=zu(t,o[Bn]));const c=i.rendererFactory.createRenderer(t,r);let u=16;r.signals?u=4096:r.onPush&&(u=64);const d=Ra(o,mv(r),null,u,o[e.index],e,i,c,null,null,l);return a.firstCreatePass&&ld(a,e,n.length-1),Na(o,d),o[e.index]=d}(Ij,y,Tt,xr,N,d,g);Ge=eg(O,Q),y&&function _T(e,t,r,n){if(n)Pc(e,r,["ng-version",uS.full]);else{const{attrs:o,classes:i}=function K1(e){const t=[],r=[];let n=1,o=2;for(;n0&&pm(e,r,i.join(" "))}}(g,Tt,y,n),void 0!==r&&function CT(e,t,r){const n=e.projection=[];for(let o=0;o=0;n--){const o=e[n];o.hostVars=t+=o.hostVars,o.hostAttrs=Ko(o.hostAttrs,r=Ko(r,o.hostAttrs))}}(n)}function ka(e){return e===tn?{}:e===te?[]:e}function wT(e,t){const r=e.viewQuery;e.viewQuery=r?(n,o)=>{t(n,o),r(n,o)}:t}function ET(e,t){const r=e.contentQueries;e.contentQueries=r?(n,o,i)=>{t(n,o,i),r(n,o,i)}:t}function MT(e,t){const r=e.hostBindings;e.hostBindings=r?(n,o)=>{t(n,o),r(n,o)}:t}function Uv(e){const t=e.inputConfig,r={};for(const n in t)if(t.hasOwnProperty(n)){const o=t[n];Array.isArray(o)&&o[2]&&(r[n]=o[2])}e.inputTransforms=r}function Fa(e){return!!hd(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function hd(e){return null!==e&&("function"==typeof e||"object"==typeof e)}function cn(e,t,r){return e[t]=r}function We(e,t,r){return!Object.is(e[t],r)&&(e[t]=r,!0)}function zt(e,t,r,n){const o=M();return We(o,Br(),t)&&(J(),ln(be(),o,e,t,r,n)),zt}function ho(e,t,r,n){return We(e,Br(),r)?t+$(r)+n:z}function P(e,t,r,n,o,i,s,a){const l=M(),c=J(),u=e+Q,d=c.firstCreatePass?function QT(e,t,r,n,o,i,s,a,l){const c=t.consts,u=uo(t,e,4,s||null,zn(c,a));ad(t,r,u,zn(c,l)),zs(t,u);const d=u.tView=sd(2,u,n,o,i,t.directiveRegistry,t.pipeRegistry,null,t.schemas,c,null);return null!==t.queries&&(t.queries.template(t,u),d.queries=t.queries.embeddedTView(u)),u}(u,c,l,t,r,n,o,i,s):c.data[u];sn(d,!1);const g=ey(c,l,d,e);Gs()&&ha(c,l,g,d),qe(g,l),Na(l,l[u]=wv(g,l,g,d)),Hs(d)&&od(c,l,d),null!=s&&id(l,d,a)}let ey=function ty(e,t,r,n){return qn(!0),t[G].createComment("")};function _d(e){return function Hr(e,t){return e[t]}(function j0(){return H.lFrame.contextLView}(),Q+e)}function w(e,t,r){const n=M();return We(n,Br(),t)&&Et(J(),be(),n,e,t,n[G],r,!1),w}function Cd(e,t,r,n,o){const s=o?"class":"style";dd(e,r,t.inputs[s],s,n)}function h(e,t,r,n){const o=M(),i=J(),s=Q+e,a=o[G],l=i.firstCreatePass?function eA(e,t,r,n,o,i){const s=t.consts,l=uo(t,e,2,n,zn(s,o));return ad(t,r,l,zn(s,i)),null!==l.attrs&&Oa(l,l.attrs,!1),null!==l.mergedAttrs&&Oa(l,l.mergedAttrs,!0),null!==t.queries&&t.queries.elementStart(t,l),l}(s,i,o,t,r,n):i.data[s],c=ny(i,o,l,a,t,e);o[s]=c;const u=Hs(l);return sn(l,!0),gm(a,c,l),32!=(32&l.flags)&&Gs()&&ha(i,o,c,l),0===function R0(){return H.lFrame.elementDepthCount}()&&qe(c,o),function N0(){H.lFrame.elementDepthCount++}(),u&&(od(i,o,l),rd(i,l,o)),null!==n&&id(o,l),h}function p(){let e=Be();zc()?qc():(e=e.parent,sn(e,!1));const t=e;(function P0(e){return H.skipHydrationRootTNode===e})(t)&&function V0(){H.skipHydrationRootTNode=null}(),function O0(){H.lFrame.elementDepthCount--}();const r=J();return r.firstCreatePass&&(zs(r,e),Fc(e)&&r.queries.elementEnd(e)),null!=t.classesWithoutHost&&function K0(e){return 0!=(8&e.flags)}(t)&&Cd(r,t,M(),t.classesWithoutHost,!0),null!=t.stylesWithoutHost&&function eM(e){return 0!=(16&e.flags)}(t)&&Cd(r,t,M(),t.stylesWithoutHost,!1),p}function v(e,t,r,n){return h(e,t,r,n),p(),v}let ny=(e,t,r,n,o,i)=>(qn(!0),ua(n,o,function vg(){return H.lFrame.currentNamespace}()));function ut(e,t,r){const n=M(),o=J(),i=e+Q,s=o.firstCreatePass?function rA(e,t,r,n,o){const i=t.consts,s=zn(i,n),a=uo(t,e,8,"ng-container",s);return null!==s&&Oa(a,s,!0),ad(t,r,a,zn(i,o)),null!==t.queries&&t.queries.elementStart(t,a),a}(i,o,n,t,r):o.data[i];sn(s,!0);const a=oy(o,n,s,e);return n[i]=a,Gs()&&ha(o,n,a,s),qe(a,n),Hs(s)&&(od(o,n,s),rd(o,s,n)),null!=r&&id(n,s),ut}function dt(){let e=Be();const t=J();return zc()?qc():(e=e.parent,sn(e,!1)),t.firstCreatePass&&(zs(t,e),Fc(e)&&t.queries.elementEnd(e)),dt}let oy=(e,t,r,n)=>(qn(!0),mu(t[G],""));function Ae(){return M()}function Fi(e){return!!e&&"function"==typeof e.then}function iy(e){return!!e&&"function"==typeof e.subscribe}function R(e,t,r,n){const o=M(),i=J(),s=Be();return function ay(e,t,r,n,o,i,s){const a=Hs(n),c=e.firstCreatePass&&Iv(e),u=t[Se],d=Mv(t);let g=!0;if(3&n.type||s){const C=lt(n,t),b=s?s(C):C,E=d.length,D=s?N=>s(pe(N[n.index])):n.index;let O=null;if(!s&&a&&(O=function sA(e,t,r,n){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,t,o,n.index)),null!==O)(O.__ngLastListenerFn__||O).__ngNextListenerFn__=i,O.__ngLastListenerFn__=i,g=!1;else{i=cy(n,t,u,i,!1);const N=r.listen(b,o,i);d.push(i,N),c&&c.push(o,D,E,E+1)}}else i=cy(n,t,u,i,!1);const m=n.outputs;let y;if(g&&null!==m&&(y=m[o])){const C=y.length;if(C)for(let b=0;b-1?_t(e.index,t):t);let l=ly(t,r,n,s),c=i.__ngNextListenerFn__;for(;c;)l=ly(t,r,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function k(e=1){return function G0(e){return(H.lFrame.contextLView=function z0(e,t){for(;e>0;)t=t[Fr],e--;return t}(e,H.lFrame.contextLView))[Se]}(e)}function An(e,t,r,n,o){const i=M(),s=ho(i,t,r,n);return s!==z&&Et(J(),be(),i,e,s,i[G],o,!1),An}function Ua(e,t){return e<<17|t<<2}function Yn(e){return e>>17&32767}function Dd(e){return 2|e}function vr(e){return(131068&e)>>2}function bd(e,t){return-131069&e|t<<2}function wd(e){return 1|e}function _y(e,t,r,n,o){const i=e[r+1],s=null===t;let a=n?Yn(i):vr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];gA(e[a],t)&&(l=!0,e[a+1]=n?wd(u):Dd(u)),a=n?Yn(u):vr(u)}l&&(e[r+1]=n?Dd(i):wd(i))}function gA(e,t){return null===e||null==t||(Array.isArray(e)?e[1]:e)===t||!(!Array.isArray(e)||"string"!=typeof t)&&Qr(e,t)>=0}function Ba(e,t){return function qt(e,t,r,n){const o=M(),i=J(),s=function wn(e){const t=H.lFrame,r=t.bindingIndex;return t.bindingIndex=t.bindingIndex+e,r}(2);i.firstUpdatePass&&function Ty(e,t,r,n){const o=e.data;if(null===o[r+1]){const i=o[Ke()],s=function Sy(e,t){return t>=e.expandoStartIndex}(e,r);(function Ny(e,t){return 0!=(e.flags&(t?8:16))})(i,n)&&null===t&&!s&&(t=!1),t=function EA(e,t,r,n){const o=function Zc(e){const t=H.lFrame.currentDirectiveIndex;return-1===t?null:e[t]}(e);let i=n?t.residualClasses:t.residualStyles;if(null===o)0===(n?t.classBindings:t.styleBindings)&&(r=Li(r=Ed(null,e,t,r,n),t.attrs,n),i=null);else{const s=t.directiveStylingLast;if(-1===s||e[s]!==o)if(r=Ed(o,e,t,r,n),null===i){let l=function MA(e,t,r){const n=r?t.classBindings:t.styleBindings;if(0!==vr(n))return e[Yn(n)]}(e,t,n);void 0!==l&&Array.isArray(l)&&(l=Ed(null,e,t,l[1],n),l=Li(l,t.attrs,n),function IA(e,t,r,n){e[Yn(r?t.classBindings:t.styleBindings)]=n}(e,t,n,l))}else i=function SA(e,t,r){let n;const o=t.directiveEnd;for(let i=1+t.directiveStylingLast;i0)&&(c=!0)):u=r,o)if(0!==l){const g=Yn(e[a+1]);e[n+1]=Ua(g,a),0!==g&&(e[g+1]=bd(e[g+1],n)),e[a+1]=function dA(e,t){return 131071&e|t<<17}(e[a+1],n)}else e[n+1]=Ua(a,0),0!==a&&(e[a+1]=bd(e[a+1],n)),a=n;else e[n+1]=Ua(l,0),0===a?a=n:e[l+1]=bd(e[l+1],n),l=n;c&&(e[n+1]=Dd(e[n+1])),_y(e,u,n,!0),_y(e,u,n,!1),function pA(e,t,r,n,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof t&&Qr(i,t)>=0&&(r[n+1]=wd(r[n+1]))}(t,u,e,n,i),s=Ua(a,l),i?t.classBindings=s:t.styleBindings=s}(o,i,t,r,s,n)}}(i,e,s,n),t!==z&&We(o,s,t)&&function xy(e,t,r,n,o,i,s,a){if(!(3&t.type))return;const l=e.data,c=l[a+1],u=function fA(e){return 1==(1&e)}(c)?Ry(l,t,r,o,vr(c),s):void 0;$a(u)||($a(i)||function uA(e){return 2==(2&e)}(c)&&(i=Ry(l,null,r,o,a,s)),function dI(e,t,r,n,o){if(t)o?e.addClass(r,n):e.removeClass(r,n);else{let i=-1===n.indexOf("-")?void 0:Wn.DashCase;null==o?e.removeStyle(r,n,i):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),i|=Wn.Important),e.setStyle(r,n,o,i))}}(n,s,$s(Ke(),r),o,i))}(i,i.data[Ke()],o,o[G],e,o[s+1]=function RA(e,t){return null==e||""===e||("string"==typeof t?e+=t:"object"==typeof e&&(e=ke(Zn(e)))),e}(t,r),n,s)}(e,t,null,!0),Ba}function Ed(e,t,r,n,o){let i=null;const s=r.directiveEnd;let a=r.directiveStylingLast;for(-1===a?a=r.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let g=r[o+1];g===z&&(g=d?te:void 0);let m=d?su(g,n):u===n?g:void 0;if(c&&!$a(m)&&(m=su(l,n)),$a(m)&&(a=m,s))return a;const y=e[o+1];o=s?Yn(y):vr(y)}if(null!==t){let l=i?t.residualClasses:t.residualStyles;null!=l&&(a=su(l,n))}return a}function $a(e){return void 0!==e}function f(e,t=""){const r=M(),n=J(),o=e+Q,i=n.firstCreatePass?uo(n,o,1,t,null):n.data[o],s=Oy(n,r,i,t,e);r[o]=s,Gs()&&ha(n,r,s,i),sn(i,!1)}let Oy=(e,t,r,n,o)=>(qn(!0),function ca(e,t){return e.createText(t)}(t[G],n));function Ce(e){return xn("",e,""),Ce}function xn(e,t,r){const n=M(),o=ho(n,e,t,r);return o!==z&&function Tn(e,t,r){const n=$s(t,e);!function nm(e,t,r){e.setValue(t,r)}(e[G],n,r)}(n,Ke(),o),xn}const wo="en-US";let t_=wo;function Sd(e,t,r,n,o){if(e=U(e),Array.isArray(e))for(let i=0;i>20;if(pr(e)||!e.multi){const m=new ci(c,o,I),y=Ad(l,t,o?u:u+g,d);-1===y?(ru(Ys(a,s),i,l),Td(i,e,t.length),t.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),r.push(m),s.push(m)):(r[y]=m,s[y]=m)}else{const m=Ad(l,t,u+g,d),y=Ad(l,t,u,u+g),b=y>=0&&r[y];if(o&&!b||!o&&!(m>=0&&r[m])){ru(Ys(a,s),i,l);const E=function Jx(e,t,r,n,o){const i=new ci(e,r,I);return i.multi=[],i.index=t,i.componentProviders=0,I_(i,o,n&&!r),i}(o?Xx:Qx,r.length,o,n,c);!o&&b&&(r[y].providerFactory=E),Td(i,e,t.length,0),t.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),r.push(E),s.push(E)}else Td(i,e,m>-1?m:y,I_(r[o?y:m],c,!o&&n));!o&&n&&b&&r[y].componentProviders++}}}function Td(e,t,r,n){const o=pr(t),i=function HI(e){return!!e.useClass}(t);if(o||i){const l=(i?U(t.useClass):t).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&t.multi){const u=c.indexOf(r);-1===u?c.push(r,[n,l]):c[u+1].push(n,l)}else c.push(r,l)}}}function I_(e,t,r){return r&&e.componentProviders++,e.multi.push(t)-1}function Ad(e,t,r,n){for(let o=r;o{r.providersResolver=(n,o)=>function Yx(e,t,r){const n=J();if(n.firstCreatePass){const o=Gt(e);Sd(r,n.data,n.blueprint,o,!0),Sd(t,n.data,n.blueprint,o,!1)}}(n,o?o(e):e,t)}}class _r{}class S_{}class Rd extends _r{constructor(t,r,n){super(),this._parent=r,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new kv(this);const o=yt(t);this._bootstrapComponents=Sn(o.bootstrap),this._r3Injector=Zm(t,r,[{provide:_r,useValue:this},{provide:Ta,useValue:this.componentFactoryResolver},...n],ke(t),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(t)}get injector(){return this._r3Injector}destroy(){const t=this._r3Injector;!t.destroyed&&t.destroy(),this.destroyCbs.forEach(r=>r()),this.destroyCbs=null}onDestroy(t){this.destroyCbs.push(t)}}class Nd extends S_{constructor(t){super(),this.moduleType=t}create(t){return new Rd(this.moduleType,t,[])}}class T_ extends _r{constructor(t){super(),this.componentFactoryResolver=new kv(this),this.instance=null;const r=new Da([...t.providers,{provide:_r,useValue:this},{provide:Ta,useValue:this.componentFactoryResolver}],t.parent||Ca(),t.debugName,new Set(["environment"]));this.injector=r,t.runEnvironmentInitializers&&r.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(t){this.injector.onDestroy(t)}}function Od(e,t,r=null){return new T_({providers:e,parent:t,debugName:r,runEnvironmentInitializers:!0}).injector}let tR=(()=>{var e;class t{constructor(n){this._injector=n,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(n){if(!n.standalone)return null;if(!this.cachedInjectors.has(n)){const o=Rm(0,n.type),i=o.length>0?Od([o],this._injector,`Standalone[${n.type.name}]`):null;this.cachedInjectors.set(n,i)}return this.cachedInjectors.get(n)}ngOnDestroy(){try{for(const n of this.cachedInjectors.values())null!==n&&n.destroy()}finally{this.cachedInjectors.clear()}}}return(e=t).\u0275prov=L({token:e,providedIn:"environment",factory:()=>new e(F(Dt))}),t})();function Mt(e){e.getStandaloneInjector=t=>t.get(tR).getOrCreateStandaloneInjector(e)}function K(e,t,r){const n=Je()+e,o=M();return o[n]===z?cn(o,n,r?t.call(r):t()):function Ni(e,t){return e[t]}(o,n)}function $i(e,t,r,n){return function F_(e,t,r,n,o,i){const s=t+r;return We(e,s,o)?cn(e,s+1,i?n.call(i,o):n(o)):Gi(e,s+1)}(M(),Je(),e,t,r,n)}function k_(e,t,r,n,o){return function L_(e,t,r,n,o,i,s){const a=t+r;return function mr(e,t,r,n){const o=We(e,t,r);return We(e,t+1,n)||o}(e,a,o,i)?cn(e,a+2,s?n.call(s,o,i):n(o,i)):Gi(e,a+2)}(M(),Je(),e,t,r,n,o)}function Gi(e,t){const r=e[t];return r===z?void 0:r}function ER(){return this._results[Symbol.iterator]()}class kd{get changes(){return this._changes||(this._changes=new Ee)}constructor(t=!1){this._emitDistinctChangesOnly=t,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const r=kd.prototype;r[Symbol.iterator]||(r[Symbol.iterator]=ER)}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,r){return this._results.reduce(t,r)}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,r){const n=this;n.dirty=!1;const o=function Ot(e){return e.flat(Number.POSITIVE_INFINITY)}(t);(this._changesDetected=!function pM(e,t,r){if(e.length!==t.length)return!1;for(let n=0;n0&&(r[o-1][$t]=t),n{class t{}return t.__NG_ELEMENT_ID__=AR,t})();const SR=Rn,TR=class extends SR{constructor(t,r,n){super(),this._declarationLView=t,this._declarationTContainer=r,this.elementRef=n}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(t,r){return this.createEmbeddedViewImpl(t,r)}createEmbeddedViewImpl(t,r,n){const o=function MR(e,t,r,n){const o=t.tView,a=Ra(e,o,r,4096&e[q]?4096:16,null,t,null,null,null,n?.injector??null,n?.hydrationInfo??null);a[ni]=e[t.index];const c=e[nn];return null!==c&&(a[nn]=c.createEmbeddedView(o)),fd(o,a,r),a}(this._declarationLView,this._declarationTContainer,t,{injector:r,hydrationInfo:n});return new xi(o)}};function AR(){return Za(Be(),M())}function Za(e,t){return 4&e.type?new TR(t,e,ao(e,t)):null}let Zt=(()=>{class t{}return t.__NG_ELEMENT_ID__=kR,t})();function kR(){return W_(Be(),M())}const FR=Zt,z_=class extends FR{constructor(t,r,n){super(),this._lContainer=t,this._hostTNode=r,this._hostLView=n}get element(){return ao(this._hostTNode,this._hostLView)}get injector(){return new et(this._hostTNode,this._hostLView)}get parentInjector(){const t=Qs(this._hostTNode,this._hostLView);if(eu(t)){const r=di(t,this._hostLView),n=ui(t);return new et(r[T].data[n+8],r)}return new et(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(t){const r=q_(this._lContainer);return null!==r&&r[t]||null}get length(){return this._lContainer.length-He}createEmbeddedView(t,r,n){let o,i;"number"==typeof n?o=n:null!=n&&(o=n.index,i=n.injector);const a=t.createEmbeddedViewImpl(r||{},i,null);return this.insertImpl(a,o,false),a}createComponent(t,r,n,o,i){const s=t&&!function hi(e){return"function"==typeof e}(t);let a;if(s)a=r;else{const C=r||{};a=C.index,n=C.injector,o=C.projectableNodes,i=C.environmentInjector||C.ngModuleRef}const l=s?t:new Ri(X(t)),c=n||this.parentInjector;if(!i&&null==l.ngModule){const b=(s?c:this.parentInjector).get(Dt,null);b&&(i=b)}X(l.componentType??{});const m=l.create(c,o,null,i);return this.insertImpl(m.hostView,a,false),m}insert(t,r){return this.insertImpl(t,r,!1)}insertImpl(t,r,n){const o=t._lView;if(function T0(e){return Xe(e[_e])}(o)){const l=this.indexOf(t);if(-1!==l)this.detach(l);else{const c=o[_e],u=new z_(c,c[ze],c[_e]);u.detach(u.indexOf(t))}}const s=this._adjustIndex(r),a=this._lContainer;return IR(a,o,s,!n),t.attachToViewContainerRef(),Ng(Fd(a),s,t),t}move(t,r){return this.insert(t,r)}indexOf(t){const r=q_(this._lContainer);return null!==r?r.indexOf(t):-1}remove(t){const r=this._adjustIndex(t,-1),n=da(this._lContainer,r);n&&(Ks(Fd(this._lContainer),r),vu(n[T],n))}detach(t){const r=this._adjustIndex(t,-1),n=da(this._lContainer,r);return n&&null!=Ks(Fd(this._lContainer),r)?new xi(n):null}_adjustIndex(t,r=0){return t??this.length+r}};function q_(e){return e[8]}function Fd(e){return e[8]||(e[8]=[])}function W_(e,t){let r;const n=t[e.index];return Xe(n)?r=n:(r=wv(n,t,null,e),t[e.index]=r,Na(t,r)),Z_(r,t,e,n),new z_(r,e,t)}let Z_=function Y_(e,t,r,n){if(e[rn])return;let o;o=8&r.type?pe(n):function LR(e,t){const r=e[G],n=r.createComment(""),o=lt(t,e);return hr(r,fa(r,o),n,function lI(e,t){return e.nextSibling(t)}(r,o),!1),n}(t,r),e[rn]=o};class Ld{constructor(t){this.queryList=t,this.matches=null}clone(){return new Ld(this.queryList)}setDirty(){this.queryList.setDirty()}}class Vd{constructor(t=[]){this.queries=t}createEmbeddedView(t){const r=t.queries;if(null!==r){const n=null!==t.contentQueries?t.contentQueries[0]:r.length,o=[];for(let i=0;i0)n.push(s[a/2]);else{const c=i[a+1],u=t[-l];for(let d=He;d{var e;class t{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((n,o)=>{this.resolve=n,this.reject=o}),this.appInits=A(Wd,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const n=[];for(const i of this.appInits){const s=i();if(Fi(s))n.push(s);else if(iy(s)){const a=new Promise((l,c)=>{s.subscribe({complete:l,error:c})});n.push(a)}}const o=()=>{this.done=!0,this.resolve()};Promise.all(n).then(()=>{o()}).catch(i=>{this.reject(i)}),0===n.length&&o(),this.initialized=!0}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),CC=(()=>{var e;class t{log(n){console.log(n)}warn(n){console.warn(n)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"platform"}),t})();const Nn=new x("LocaleId",{providedIn:"root",factory:()=>A(Nn,Y.Optional|Y.SkipSelf)||function pN(){return typeof $localize<"u"&&$localize.locale||wo}()});let Xa=(()=>{var e;class t{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new At(!1)}add(){this.hasPendingTasks.next(!0);const n=this.taskId++;return this.pendingTasks.add(n),n}remove(n){this.pendingTasks.delete(n),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();class vN{constructor(t,r){this.ngModuleFactory=t,this.componentFactories=r}}let DC=(()=>{var e;class t{compileModuleSync(n){return new Nd(n)}compileModuleAsync(n){return Promise.resolve(this.compileModuleSync(n))}compileModuleAndAllComponentsSync(n){const o=this.compileModuleSync(n),s=Sn(yt(n).declarations).reduce((a,l)=>{const c=X(l);return c&&a.push(new Ri(c)),a},[]);return new vN(o,s)}compileModuleAndAllComponentsAsync(n){return Promise.resolve(this.compileModuleAndAllComponentsSync(n))}clearCache(){}clearCacheFor(n){}getModuleId(n){}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const MC=new x(""),Ka=new x("");let Kd,Xd=(()=>{var e;class t{constructor(n,o,i){this._ngZone=n,this.registry=o,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,Kd||(function LN(e){Kd=e}(i),i.addToWindow(o)),this._watchAngularEvents(),n.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ge.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let n=this._callbacks.pop();clearTimeout(n.timeoutId),n.doneCb(this._didWork)}this._didWork=!1});else{let n=this.getPendingTasks();this._callbacks=this._callbacks.filter(o=>!o.updateCb||!o.updateCb(n)||(clearTimeout(o.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(n=>({source:n.source,creationLocation:n.creationLocation,data:n.data})):[]}addCallback(n,o,i){let s=-1;o&&o>0&&(s=setTimeout(()=>{this._callbacks=this._callbacks.filter(a=>a.timeoutId!==s),n(this._didWork,this.getPendingTasks())},o)),this._callbacks.push({doneCb:n,timeoutId:s,updateCb:i})}whenStable(n,o,i){if(i&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(n,o,i),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(n){this.registry.registerApplication(n,this)}unregisterApplication(n){this.registry.unregisterApplication(n)}findProviders(n,o,i){return[]}}return(e=t).\u0275fac=function(n){return new(n||e)(F(ge),F(Jd),F(Ka))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),Jd=(()=>{var e;class t{constructor(){this._applications=new Map}registerApplication(n,o){this._applications.set(n,o)}unregisterApplication(n){this._applications.delete(n)}unregisterAllApplications(){this._applications.clear()}getTestability(n){return this._applications.get(n)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(n,o=!0){return Kd?.findTestabilityInTree(this,n,o)??null}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"platform"}),t})(),Qn=null;const ef=new x("PlatformDestroyListeners"),tf=new x("appBootstrapListener");class TC{constructor(t,r){this.name=t,this.token=r}}function BN(e){try{const{rootComponent:t,appProviders:r,platformProviders:n}=e,o=function UN(e=[]){if(Qn)return Qn;const t=function xC(e=[],t){return wt.create({name:t,providers:[{provide:Pu,useValue:"platform"},{provide:ef,useValue:new Set([()=>Qn=null])},...e]})}(e);return Qn=t,function SC(){!function h0(e){Gp=e}(()=>{throw new S(600,!1)})}(),function AC(e){e.get(Fm,null)?.forEach(r=>r())}(t),t}(n),i=[WN(),...r||[]],a=new T_({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,l=a.get(ge);return l.run(()=>{a.resolveInjectorInitializers();const c=a.get(In,null);let u;l.runOutsideAngular(()=>{u=l.onError.subscribe({next:m=>{c.handleError(m)}})});const d=()=>a.destroy(),g=o.get(ef);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),function OC(e,t,r){try{const n=r();return Fi(n)?n.catch(o=>{throw t.runOutsideAngular(()=>e.handleError(o)),o}):n}catch(n){throw t.runOutsideAngular(()=>e.handleError(n)),n}}(c,l,()=>{const m=a.get(Zd);return m.runInitializers(),m.donePromise.then(()=>{!function n_(e){xt(e,"Expected localeId to be defined"),"string"==typeof e&&(t_=e.toLowerCase().replace(/_/g,"-"))}(a.get(Nn,wo)||wo);const C=a.get(Io);return void 0!==t&&C.bootstrap(t),C})})})}catch(t){return Promise.reject(t)}}let Io=(()=>{var e;class t{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=A(FC),this.zoneIsStable=A(Km),this.componentTypes=[],this.components=[],this.isStable=A(Xa).hasPendingTasks.pipe(Ht(n=>n?V(!1):this.zoneIsStable),function w1(e,t=jn){return e=e??E1,Pe((r,n)=>{let o,i=!0;r.subscribe(Re(n,s=>{const a=t(s);(i||!e(o,a))&&(i=!1,o=a,n.next(s))}))})}(),lp()),this._injector=A(Dt)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(n,o){const i=n instanceof Um;if(!this._injector.get(Zd).done)throw!i&&function Or(e){const t=X(e)||je(e)||Qe(e);return null!==t&&t.standalone}(n),new S(405,!1);let a;a=i?n:this._injector.get(Ta).resolveComponentFactory(n),this.componentTypes.push(a.componentType);const l=function jN(e){return e.isBoundToModule}(a)?void 0:this._injector.get(_r),u=a.create(wt.NULL,[],o||a.selector,l),d=u.location.nativeElement,g=u.injector.get(MC,null);return g?.registerApplication(d),u.onDestroy(()=>{this.detachView(u.hostView),el(this.components,u),g?.unregisterApplication(d)}),this._loadComponent(u),u}tick(){if(this._runningTick)throw new S(101,!1);try{this._runningTick=!0;for(let n of this._views)n.detectChanges()}catch(n){this.internalErrorHandler(n)}finally{this._runningTick=!1}}attachView(n){const o=n;this._views.push(o),o.attachToAppRef(this)}detachView(n){const o=n;el(this._views,o),o.detachFromAppRef()}_loadComponent(n){this.attachView(n.hostView),this.tick(),this.components.push(n);const o=this._injector.get(tf,[]);o.push(...this._bootstrapListeners),o.forEach(i=>i(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),()=>el(this._destroyListeners,n)}destroy(){if(this._destroyed)throw new S(406,!1);const n=this._injector;n.destroy&&!n.destroyed&&n.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function el(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}const FC=new x("",{providedIn:"root",factory:()=>A(In).handleError.bind(void 0)});function zN(){const e=A(ge),t=A(In);return r=>e.runOutsideAngular(()=>t.handleError(r))}let qN=(()=>{var e;class t{constructor(){this.zone=A(ge),this.applicationRef=A(Io)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function LC(e){return[{provide:ge,useFactory:e},{provide:wi,multi:!0,useFactory:()=>{const t=A(qN,{optional:!0});return()=>t.initialize()}},{provide:FC,useFactory:zN},{provide:Km,useFactory:ev}]}function WN(e){return Ru([[],LC(()=>new ge(function NC(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}(e)))])}let tl=(()=>{class t{}return t.__NG_ELEMENT_ID__=ZN,t})();function ZN(e){return function YN(e,t,r){if(cr(e)&&!r){const n=_t(e.index,t);return new xi(n,n)}return 47&e.type?new xi(t[Te],t):null}(Be(),M(),16==(16&e))}class UC{constructor(){}supports(t){return Fa(t)}create(t){return new tO(t)}}const eO=(e,t)=>t;class tO{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||eO}forEachItem(t){let r;for(r=this._itHead;null!==r;r=r._next)t(r)}forEachOperation(t){let r=this._itHead,n=this._removalsHead,o=0,i=null;for(;r||n;){const s=!n||r&&r.currentIndex<$C(n,o,i)?r:n,a=$C(s,o,i),l=s.currentIndex;if(s===n)o--,n=n._nextRemoved;else if(r=r._next,null==s.previousIndex)o++;else{i||(i=[]);const c=a-o,u=l-o;if(c!=u){for(let g=0;g{s=this._trackByFn(o,a),null!==r&&Object.is(r.trackById,s)?(n&&(r=this._verifyReinsertion(r,a,s,o)),Object.is(r.item,a)||this._addIdentityChange(r,a)):(r=this._mismatch(r,a,s,o),n=!0),r=r._next,o++}),this.length=o;return this._truncate(r),this.collection=t,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let t;for(t=this._previousItHead=this._itHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._additionsHead;null!==t;t=t._nextAdded)t.previousIndex=t.currentIndex;for(this._additionsHead=this._additionsTail=null,t=this._movesHead;null!==t;t=t._nextMoved)t.previousIndex=t.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(t,r,n,o){let i;return null===t?i=this._itTail:(i=t._prev,this._remove(t)),null!==(t=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null))?(Object.is(t.item,r)||this._addIdentityChange(t,r),this._reinsertAfter(t,i,o)):null!==(t=null===this._linkedRecords?null:this._linkedRecords.get(n,o))?(Object.is(t.item,r)||this._addIdentityChange(t,r),this._moveAfter(t,i,o)):t=this._addAfter(new nO(r,n),i,o),t}_verifyReinsertion(t,r,n,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(n,null);return null!==i?t=this._reinsertAfter(i,t._prev,o):t.currentIndex!=o&&(t.currentIndex=o,this._addToMoves(t,o)),t}_truncate(t){for(;null!==t;){const r=t._next;this._addToRemovals(this._unlink(t)),t=r}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(t,r,n){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(t);const o=t._prevRemoved,i=t._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(t,r,n),this._addToMoves(t,n),t}_moveAfter(t,r,n){return this._unlink(t),this._insertAfter(t,r,n),this._addToMoves(t,n),t}_addAfter(t,r,n){return this._insertAfter(t,r,n),this._additionsTail=null===this._additionsTail?this._additionsHead=t:this._additionsTail._nextAdded=t,t}_insertAfter(t,r,n){const o=null===r?this._itHead:r._next;return t._next=o,t._prev=r,null===o?this._itTail=t:o._prev=t,null===r?this._itHead=t:r._next=t,null===this._linkedRecords&&(this._linkedRecords=new BC),this._linkedRecords.put(t),t.currentIndex=n,t}_remove(t){return this._addToRemovals(this._unlink(t))}_unlink(t){null!==this._linkedRecords&&this._linkedRecords.remove(t);const r=t._prev,n=t._next;return null===r?this._itHead=n:r._next=n,null===n?this._itTail=r:n._prev=r,t}_addToMoves(t,r){return t.previousIndex===r||(this._movesTail=null===this._movesTail?this._movesHead=t:this._movesTail._nextMoved=t),t}_addToRemovals(t){return null===this._unlinkedRecords&&(this._unlinkedRecords=new BC),this._unlinkedRecords.put(t),t.currentIndex=null,t._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=t,t._prevRemoved=null):(t._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=t),t}_addIdentityChange(t,r){return t.item=r,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=t:this._identityChangesTail._nextIdentityChange=t,t}}class nO{constructor(t,r){this.item=t,this.trackById=r,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}}class rO{constructor(){this._head=null,this._tail=null}add(t){null===this._head?(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,r){let n;for(n=this._head;null!==n;n=n._nextDup)if((null===r||r<=n.currentIndex)&&Object.is(n.trackById,t))return n;return null}remove(t){const r=t._prevDup,n=t._nextDup;return null===r?this._head=n:r._nextDup=n,null===n?this._tail=r:n._prevDup=r,null===this._head}}class BC{constructor(){this.map=new Map}put(t){const r=t.trackById;let n=this.map.get(r);n||(n=new rO,this.map.set(r,n)),n.add(t)}get(t,r){const o=this.map.get(t);return o?o.get(t,r):null}remove(t){const r=t.trackById;return this.map.get(r).remove(t)&&this.map.delete(r),t}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function $C(e,t,r){const n=e.previousIndex;if(null===n)return n;let o=0;return r&&n{if(r&&r.key===o)this._maybeAddToChanges(r,n),this._appendAfter=r,r=r._next;else{const i=this._getOrCreateRecordForKey(o,n);r=this._insertBeforeOrAppend(r,i)}}),r){r._prev&&(r._prev._next=null),this._removalsHead=r;for(let n=r;null!==n;n=n._nextRemoved)n===this._mapHead&&(this._mapHead=null),this._records.delete(n.key),n._nextRemoved=n._next,n.previousValue=n.currentValue,n.currentValue=null,n._prev=null,n._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(t,r){if(t){const n=t._prev;return r._next=t,r._prev=n,t._prev=r,n&&(n._next=r),t===this._mapHead&&(this._mapHead=r),this._appendAfter=t,t}return this._appendAfter?(this._appendAfter._next=r,r._prev=this._appendAfter):this._mapHead=r,this._appendAfter=r,null}_getOrCreateRecordForKey(t,r){if(this._records.has(t)){const o=this._records.get(t);this._maybeAddToChanges(o,r);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const n=new iO(t);return this._records.set(t,n),n.currentValue=r,this._addToAdditions(n),n}_reset(){if(this.isDirty){let t;for(this._previousMapHead=this._mapHead,t=this._previousMapHead;null!==t;t=t._next)t._nextPrevious=t._next;for(t=this._changesHead;null!==t;t=t._nextChanged)t.previousValue=t.currentValue;for(t=this._additionsHead;null!=t;t=t._nextAdded)t.previousValue=t.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(t,r){Object.is(r,t.currentValue)||(t.previousValue=t.currentValue,t.currentValue=r,this._addToChanges(t))}_addToAdditions(t){null===this._additionsHead?this._additionsHead=this._additionsTail=t:(this._additionsTail._nextAdded=t,this._additionsTail=t)}_addToChanges(t){null===this._changesHead?this._changesHead=this._changesTail=t:(this._changesTail._nextChanged=t,this._changesTail=t)}_forEach(t,r){t instanceof Map?t.forEach(r):Object.keys(t).forEach(n=>r(t[n],n))}}class iO{constructor(t){this.key=t,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function zC(){return new ol([new UC])}let ol=(()=>{var e;class t{constructor(n){this.factories=n}static create(n,o){if(null!=o){const i=o.factories.slice();n=n.concat(i)}return new t(n)}static extend(n){return{provide:t,useFactory:o=>t.create(n,o||zC()),deps:[[t,new na,new ta]]}}find(n){const o=this.factories.find(i=>i.supports(n));if(null!=o)return o;throw new S(901,!1)}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:zC}),t})();function qC(){return new Zi([new GC])}let Zi=(()=>{var e;class t{constructor(n){this.factories=n}static create(n,o){if(o){const i=o.factories.slice();n=n.concat(i)}return new t(n)}static extend(n){return{provide:t,useFactory:o=>t.create(n,o||qC()),deps:[[t,new na,new ta]]}}find(n){const o=this.factories.find(i=>i.supports(n));if(o)return o;throw new S(901,!1)}}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:qC}),t})(),lO=(()=>{var e;class t{constructor(n){}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Io))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function So(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}const ve_apiBaseUrl="https://www.palmmedia.de/api/";let uf=null;function Xn(){return uf}class bO{}const pt=new x("DocumentToken");let df=(()=>{var e;class t{historyGo(n){throw new Error("Not implemented")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(EO)},providedIn:"platform"}),t})();const wO=new x("Location Initialized");let EO=(()=>{var e;class t extends df{constructor(){super(),this._doc=A(pt),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Xn().getBaseHref(this._doc)}onPopState(n){const o=Xn().getGlobalEventTarget(this._doc,"window");return o.addEventListener("popstate",n,!1),()=>o.removeEventListener("popstate",n)}onHashChange(n){const o=Xn().getGlobalEventTarget(this._doc,"window");return o.addEventListener("hashchange",n,!1),()=>o.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,o,i){this._history.pushState(n,o,i)}replaceState(n,o,i){this._history.replaceState(n,o,i)}forward(){this._history.forward()}back(){this._history.back()}historyGo(n=0){this._history.go(n)}getState(){return this._history.state}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return new e},providedIn:"platform"}),t})();function ff(e,t){if(0==e.length)return t;if(0==t.length)return e;let r=0;return e.endsWith("/")&&r++,t.startsWith("/")&&r++,2==r?e+t.substring(1):1==r?e+t:e+"/"+t}function tD(e){const t=e.match(/#|\?|$/),r=t&&t.index||e.length;return e.slice(0,r-("/"===e[r-1]?1:0))+e.slice(r)}function On(e){return e&&"?"!==e[0]?"?"+e:e}let Dr=(()=>{var e;class t{historyGo(n){throw new Error("Not implemented")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(rD)},providedIn:"root"}),t})();const nD=new x("appBaseHref");let rD=(()=>{var e;class t extends Dr{constructor(n,o){super(),this._platformLocation=n,this._removeListenerFns=[],this._baseHref=o??this._platformLocation.getBaseHrefFromDOM()??A(pt).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 ff(this._baseHref,n)}path(n=!1){const o=this._platformLocation.pathname+On(this._platformLocation.search),i=this._platformLocation.hash;return i&&n?`${o}${i}`:o}pushState(n,o,i,s){const a=this.prepareExternalUrl(i+On(s));this._platformLocation.pushState(n,o,a)}replaceState(n,o,i,s){const a=this.prepareExternalUrl(i+On(s));this._platformLocation.replaceState(n,o,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(df),F(nD,8))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),MO=(()=>{var e;class t extends Dr{constructor(n,o){super(),this._platformLocation=n,this._baseHref="",this._removeListenerFns=[],null!=o&&(this._baseHref=o)}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}path(n=!1){let o=this._platformLocation.hash;return null==o&&(o="#"),o.length>0?o.substring(1):o}prepareExternalUrl(n){const o=ff(this._baseHref,n);return o.length>0?"#"+o:o}pushState(n,o,i,s){let a=this.prepareExternalUrl(i+On(s));0==a.length&&(a=this._platformLocation.pathname),this._platformLocation.pushState(n,o,a)}replaceState(n,o,i,s){let a=this.prepareExternalUrl(i+On(s));0==a.length&&(a=this._platformLocation.pathname),this._platformLocation.replaceState(n,o,a)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(n=0){this._platformLocation.historyGo?.(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(df),F(nD,8))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),hf=(()=>{var e;class t{constructor(n){this._subject=new Ee,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=n;const o=this._locationStrategy.getBaseHref();this._basePath=function TO(e){if(new RegExp("^(https?:)?//").test(e)){const[,r]=e.split(/\/\/[^\/]+/);return r}return e}(tD(oD(o))),this._locationStrategy.onPopState(i=>{this._subject.emit({url:this.path(!0),pop:!0,state:i.state,type:i.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(n=!1){return this.normalize(this._locationStrategy.path(n))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(n,o=""){return this.path()==this.normalize(n+On(o))}normalize(n){return t.stripTrailingSlash(function SO(e,t){if(!e||!t.startsWith(e))return t;const r=t.substring(e.length);return""===r||["/",";","?","#"].includes(r[0])?r:t}(this._basePath,oD(n)))}prepareExternalUrl(n){return n&&"/"!==n[0]&&(n="/"+n),this._locationStrategy.prepareExternalUrl(n)}go(n,o="",i=null){this._locationStrategy.pushState(i,"",n,o),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+On(o)),i)}replaceState(n,o="",i=null){this._locationStrategy.replaceState(i,"",n,o),this._notifyUrlChangeListeners(this.prepareExternalUrl(n+On(o)),i)}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._urlChangeSubscription=this.subscribe(o=>{this._notifyUrlChangeListeners(o.url,o.state)})),()=>{const o=this._urlChangeListeners.indexOf(n);this._urlChangeListeners.splice(o,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(n="",o){this._urlChangeListeners.forEach(i=>i(n,o))}subscribe(n,o,i){return this._subject.subscribe({next:n,error:o,complete:i})}}return(e=t).normalizeQueryParams=On,e.joinWithSlash=ff,e.stripTrailingSlash=tD,e.\u0275fac=function(n){return new(n||e)(F(Dr))},e.\u0275prov=L({token:e,factory:function(){return function IO(){return new hf(F(Dr))}()},providedIn:"root"}),t})();function oD(e){return e.replace(/\/index.html$/,"")}function hD(e,t){t=encodeURIComponent(t);for(const r of e.split(";")){const n=r.indexOf("="),[o,i]=-1==n?[r,""]:[r.slice(0,n),r.slice(n+1)];if(o.trim()===t)return decodeURIComponent(i)}return null}const wf=/\s+/,pD=[];let ml=(()=>{var e;class t{constructor(n,o,i,s){this._iterableDiffers=n,this._keyValueDiffers=o,this._ngEl=i,this._renderer=s,this.initialClasses=pD,this.stateMap=new Map}set klass(n){this.initialClasses=null!=n?n.trim().split(wf):pD}set ngClass(n){this.rawClass="string"==typeof n?n.trim().split(wf):n}ngDoCheck(){for(const o of this.initialClasses)this._updateState(o,!0);const n=this.rawClass;if(Array.isArray(n)||n instanceof Set)for(const o of n)this._updateState(o,!0);else if(null!=n)for(const o of Object.keys(n))this._updateState(o,!!n[o]);this._applyStateDiff()}_updateState(n,o){const i=this.stateMap.get(n);void 0!==i?(i.enabled!==o&&(i.changed=!0,i.enabled=o),i.touched=!0):this.stateMap.set(n,{enabled:o,changed:!0,touched:!0})}_applyStateDiff(){for(const n of this.stateMap){const o=n[0],i=n[1];i.changed?(this._toggleClass(o,i.enabled),i.changed=!1):i.touched||(i.enabled&&this._toggleClass(o,!1),this.stateMap.delete(o)),i.touched=!1}}_toggleClass(n,o){(n=n.trim()).length>0&&n.split(wf).forEach(i=>{o?this._renderer.addClass(this._ngEl.nativeElement,i):this._renderer.removeClass(this._ngEl.nativeElement,i)})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ol),I(Zi),I(bt),I(Mn))},e.\u0275dir=B({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0}),t})();class hP{constructor(t,r,n,o){this.$implicit=t,this.ngForOf=r,this.index=n,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Ef=(()=>{var e;class t{set ngForOf(n){this._ngForOf=n,this._ngForOfDirty=!0}set ngForTrackBy(n){this._trackByFn=n}get ngForTrackBy(){return this._trackByFn}constructor(n,o,i){this._viewContainer=n,this._template=o,this._differs=i,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(n){n&&(this._template=n)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const n=this._ngForOf;!this._differ&&n&&(this._differ=this._differs.find(n).create(this.ngForTrackBy))}if(this._differ){const n=this._differ.diff(this._ngForOf);n&&this._applyChanges(n)}}_applyChanges(n){const o=this._viewContainer;n.forEachOperation((i,s,a)=>{if(null==i.previousIndex)o.createEmbeddedView(this._template,new hP(i.item,this._ngForOf,-1,-1),null===a?void 0:a);else if(null==a)o.remove(null===s?void 0:s);else if(null!==s){const l=o.get(s);o.move(l,a),mD(l,i)}});for(let i=0,s=o.length;i{mD(o.get(i.currentIndex),i)})}static ngTemplateContextGuard(n,o){return!0}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Zt),I(Rn),I(ol))},e.\u0275dir=B({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0}),t})();function mD(e,t){e.context.$implicit=t.item}let vl=(()=>{var e;class t{constructor(n,o){this._viewContainer=n,this._context=new pP,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=o}set ngIf(n){this._context.$implicit=this._context.ngIf=n,this._updateView()}set ngIfThen(n){vD("ngIfThen",n),this._thenTemplateRef=n,this._thenViewRef=null,this._updateView()}set ngIfElse(n){vD("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,o){return!0}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Zt),I(Rn))},e.\u0275dir=B({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0}),t})();class pP{constructor(){this.$implicit=null,this.ngIf=null}}function vD(e,t){if(t&&!t.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${ke(t)}'.`)}let jP=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function DD(e){return"server"===e}let $P=(()=>{var e;class t{}return(e=t).\u0275prov=L({token:e,providedIn:"root",factory:()=>new GP(F(pt),window)}),t})();class GP{constructor(t,r){this.document=t,this.window=r,this.offset=()=>[0,0]}setOffset(t){this.offset=Array.isArray(t)?()=>t:t}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(t){this.supportsScrolling()&&this.window.scrollTo(t[0],t[1])}scrollToAnchor(t){if(!this.supportsScrolling())return;const r=function zP(e,t){const r=e.getElementById(t)||e.getElementsByName(t)[0];if(r)return r;if("function"==typeof e.createTreeWalker&&e.body&&"function"==typeof e.body.attachShadow){const n=e.createTreeWalker(e.body,NodeFilter.SHOW_ELEMENT);let o=n.currentNode;for(;o;){const i=o.shadowRoot;if(i){const s=i.getElementById(t)||i.querySelector(`[name="${t}"]`);if(s)return s}o=n.nextNode()}}return null}(this.document,t);r&&(this.scrollToElement(r),r.focus())}setHistoryScrollRestoration(t){this.supportsScrolling()&&(this.window.history.scrollRestoration=t)}scrollToElement(t){const r=t.getBoundingClientRect(),n=r.left+this.window.pageXOffset,o=r.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(n-i[0],o-i[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class bD{}const{isArray:gk}=Array,{getPrototypeOf:mk,prototype:vk,keys:yk}=Object;function SD(e){if(1===e.length){const t=e[0];if(gk(t))return{args:t,keys:null};if(function _k(e){return e&&"object"==typeof e&&mk(e)===vk}(t)){const r=yk(t);return{args:r.map(n=>t[n]),keys:r}}}return{args:e,keys:null}}const{isArray:Ck}=Array;function TD(e){return ee(t=>function Dk(e,t){return Ck(t)?e(...t):e(t)}(e,t))}function AD(e,t){return e.reduce((r,n,o)=>(r[n]=t[o],r),{})}function Rf(...e){const t=Yo(e),r=op(e),{args:n,keys:o}=SD(e);if(0===n.length)return Ne([],t);const i=new Ie(function bk(e,t,r=jn){return n=>{xD(t,()=>{const{length:o}=e,i=new Array(o);let s=o,a=o;for(let l=0;l{const c=Ne(e[l],t);let u=!1;c.subscribe(Re(n,d=>{i[l]=d,u||(u=!0,a--),a||n.next(r(i.slice()))},()=>{--s||n.complete()}))},n)},n)}}(n,t,o?s=>AD(o,s):jn));return r?i.pipe(TD(r)):i}function xD(e,t,r){e?vn(r,e,t):t()}const Cl=Wo(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function Nf(...e){return function wk(){return Rr(1)}()(Ne(e,Yo(e)))}function RD(e){return new Ie(t=>{jt(e()).subscribe(t)})}function Ji(e,t){const r=ue(e)?e:()=>e,n=o=>o.error(r());return new Ie(t?o=>t.schedule(n,0,o):n)}function Of(){return Pe((e,t)=>{let r=null;e._refCount++;const n=Re(t,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount)return void(r=null);const o=e._connection,i=r;r=null,o&&(!i||o===i)&&o.unsubscribe(),t.unsubscribe()});e.subscribe(n),n.closed||(r=e.connect())})}class ND extends Ie{constructor(t,r){super(),this.source=t,this.subjectFactory=r,this._subject=null,this._refCount=0,this._connection=null,$h(t)&&(this.lift=t.lift)}_subscribe(t){return this.getSubject().subscribe(t)}getSubject(){const t=this._subject;return(!t||t.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:t}=this;this._subject=this._connection=null,t?.unsubscribe()}connect(){let t=this._connection;if(!t){t=this._connection=new gt;const r=this.getSubject();t.add(this.source.subscribe(Re(r,void 0,()=>{this._teardown(),r.complete()},n=>{this._teardown(),r.error(n)},()=>this._teardown()))),t.closed&&(this._connection=null,t=gt.EMPTY)}return t}refCount(){return Of()(this)}}function Xt(e,t){return Pe((r,n)=>{let o=0;r.subscribe(Re(n,i=>e.call(t,i,o++)&&n.next(i)))})}function Dl(e){return Pe((t,r)=>{let n=!1;t.subscribe(Re(r,o=>{n=!0,r.next(o)},()=>{n||r.next(e),r.complete()}))})}function OD(e=Mk){return Pe((t,r)=>{let n=!1;t.subscribe(Re(r,o=>{n=!0,r.next(o)},()=>n?r.complete():r.error(e())))})}function Mk(){return new Cl}function br(e,t){const r=arguments.length>=2;return n=>n.pipe(e?Xt((o,i)=>e(o,i,n)):jn,ar(1),r?Dl(t):OD(()=>new Cl))}function Ao(e,t){return ue(t)?Ve(e,t,1):Ve(e,1)}function Ze(e,t,r){const n=ue(e)||t||r?{next:e,error:t,complete:r}:e;return n?Pe((o,i)=>{var s;null===(s=n.subscribe)||void 0===s||s.call(n);let a=!0;o.subscribe(Re(i,l=>{var c;null===(c=n.next)||void 0===c||c.call(n,l),i.next(l)},()=>{var l;a=!1,null===(l=n.complete)||void 0===l||l.call(n),i.complete()},l=>{var c;a=!1,null===(c=n.error)||void 0===c||c.call(n,l),i.error(l)},()=>{var l,c;a&&(null===(l=n.unsubscribe)||void 0===l||l.call(n)),null===(c=n.finalize)||void 0===c||c.call(n)}))}):jn}function wr(e){return Pe((t,r)=>{let i,n=null,o=!1;n=t.subscribe(Re(r,void 0,void 0,s=>{i=jt(e(s,wr(e)(t))),n?(n.unsubscribe(),n=null,i.subscribe(r)):o=!0})),o&&(n.unsubscribe(),n=null,i.subscribe(r))})}function Pf(e){return e<=0?()=>Kt:Pe((t,r)=>{let n=[];t.subscribe(Re(r,o=>{n.push(o),e{for(const o of n)r.next(o);r.complete()},void 0,()=>{n=null}))})}function Ki(e){return Pe((t,r)=>{try{t.subscribe(r)}finally{r.add(e)}})}class Rk extends bO{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class kf extends Rk{static makeCurrent(){!function DO(e){uf||(uf=e)}(new kf)}onAndCancel(t,r,n){return t.addEventListener(r,n),()=>{t.removeEventListener(r,n)}}dispatchEvent(t,r){t.dispatchEvent(r)}remove(t){t.parentNode&&t.parentNode.removeChild(t)}createElement(t,r){return(r=r||this.getDefaultDocument()).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,r){return"window"===r?window:"document"===r?t:"body"===r?t.body:null}getBaseHref(t){const r=function Nk(){return es=es||document.querySelector("base"),es?es.getAttribute("href"):null}();return null==r?null:function Ok(e){bl=bl||document.createElement("a"),bl.setAttribute("href",e);const t=bl.pathname;return"/"===t.charAt(0)?t:`/${t}`}(r)}resetBaseElement(){es=null}getUserAgent(){return window.navigator.userAgent}getCookie(t){return hD(document.cookie,t)}}let bl,es=null,kk=(()=>{var e;class t{build(){return new XMLHttpRequest}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Ff=new x("EventManagerPlugins");let PD=(()=>{var e;class t{constructor(n,o){this._zone=o,this._eventNameToPlugin=new Map,n.forEach(i=>{i.manager=this}),this._plugins=n.slice().reverse()}addEventListener(n,o,i){return this._findPluginFor(o).addEventListener(n,o,i)}getZone(){return this._zone}_findPluginFor(n){let o=this._eventNameToPlugin.get(n);if(o)return o;if(o=this._plugins.find(s=>s.supports(n)),!o)throw new S(5101,!1);return this._eventNameToPlugin.set(n,o),o}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Ff),F(ge))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();class kD{constructor(t){this._doc=t}}const Lf="ng-app-id";let FD=(()=>{var e;class t{constructor(n,o,i,s={}){this.doc=n,this.appId=o,this.nonce=i,this.platformId=s,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=DD(s),this.resetHostNodes()}addStyles(n){for(const o of n)1===this.changeUsageCount(o,1)&&this.onStyleAdded(o)}removeStyles(n){for(const o of n)this.changeUsageCount(o,-1)<=0&&this.onStyleRemoved(o)}ngOnDestroy(){const n=this.styleNodesInDOM;n&&(n.forEach(o=>o.remove()),n.clear());for(const o of this.getAllStyles())this.onStyleRemoved(o);this.resetHostNodes()}addHost(n){this.hostNodes.add(n);for(const o of this.getAllStyles())this.addStyleToHost(n,o)}removeHost(n){this.hostNodes.delete(n)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(n){for(const o of this.hostNodes)this.addStyleToHost(o,n)}onStyleRemoved(n){const o=this.styleRef;o.get(n)?.elements?.forEach(i=>i.remove()),o.delete(n)}collectServerRenderedStyles(){const n=this.doc.head?.querySelectorAll(`style[${Lf}="${this.appId}"]`);if(n?.length){const o=new Map;return n.forEach(i=>{null!=i.textContent&&o.set(i.textContent,i)}),o}return null}changeUsageCount(n,o){const i=this.styleRef;if(i.has(n)){const s=i.get(n);return s.usage+=o,s.usage}return i.set(n,{usage:o,elements:[]}),o}getStyleElement(n,o){const i=this.styleNodesInDOM,s=i?.get(o);if(s?.parentNode===n)return i.delete(o),s.removeAttribute(Lf),s;{const a=this.doc.createElement("style");return this.nonce&&a.setAttribute("nonce",this.nonce),a.textContent=o,this.platformIsServer&&a.setAttribute(Lf,this.appId),a}}addStyleToHost(n,o){const i=this.getStyleElement(n,o);n.appendChild(i);const s=this.styleRef,a=s.get(o)?.elements;a?a.push(i):s.set(o,{elements:[i],usage:1})}resetHostNodes(){const n=this.hostNodes;n.clear(),n.add(this.doc.head)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt),F(ba),F(Lm,8),F(gr))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Vf={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/"},jf=/%COMP%/g,jk=new x("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!1});function VD(e,t){return t.map(r=>r.replace(jf,e))}let jD=(()=>{var e;class t{constructor(n,o,i,s,a,l,c,u=null){this.eventManager=n,this.sharedStylesHost=o,this.appId=i,this.removeStylesOnCompDestroy=s,this.doc=a,this.platformId=l,this.ngZone=c,this.nonce=u,this.rendererByCompId=new Map,this.platformIsServer=DD(l),this.defaultRenderer=new Hf(n,a,c,this.platformIsServer)}createRenderer(n,o){if(!n||!o)return this.defaultRenderer;this.platformIsServer&&o.encapsulation===Ut.ShadowDom&&(o={...o,encapsulation:Ut.Emulated});const i=this.getOrCreateRenderer(n,o);return i instanceof UD?i.applyToHost(n):i instanceof Uf&&i.applyStyles(),i}getOrCreateRenderer(n,o){const i=this.rendererByCompId;let s=i.get(o.id);if(!s){const a=this.doc,l=this.ngZone,c=this.eventManager,u=this.sharedStylesHost,d=this.removeStylesOnCompDestroy,g=this.platformIsServer;switch(o.encapsulation){case Ut.Emulated:s=new UD(c,u,o,this.appId,d,a,l,g);break;case Ut.ShadowDom:return new $k(c,u,n,o,a,l,this.nonce,g);default:s=new Uf(c,u,o,d,a,l,g)}i.set(o.id,s)}return s}ngOnDestroy(){this.rendererByCompId.clear()}}return(e=t).\u0275fac=function(n){return new(n||e)(F(PD),F(FD),F(ba),F(jk),F(pt),F(gr),F(ge),F(Lm))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();class Hf{constructor(t,r,n,o){this.eventManager=t,this.doc=r,this.ngZone=n,this.platformIsServer=o,this.data=Object.create(null),this.destroyNode=null}destroy(){}createElement(t,r){return r?this.doc.createElementNS(Vf[r]||r,t):this.doc.createElement(t)}createComment(t){return this.doc.createComment(t)}createText(t){return this.doc.createTextNode(t)}appendChild(t,r){(HD(t)?t.content:t).appendChild(r)}insertBefore(t,r,n){t&&(HD(t)?t.content:t).insertBefore(r,n)}removeChild(t,r){t&&t.removeChild(r)}selectRootElement(t,r){let n="string"==typeof t?this.doc.querySelector(t):t;if(!n)throw new S(-5104,!1);return r||(n.textContent=""),n}parentNode(t){return t.parentNode}nextSibling(t){return t.nextSibling}setAttribute(t,r,n,o){if(o){r=o+":"+r;const i=Vf[o];i?t.setAttributeNS(i,r,n):t.setAttribute(r,n)}else t.setAttribute(r,n)}removeAttribute(t,r,n){if(n){const o=Vf[n];o?t.removeAttributeNS(o,r):t.removeAttribute(`${n}:${r}`)}else t.removeAttribute(r)}addClass(t,r){t.classList.add(r)}removeClass(t,r){t.classList.remove(r)}setStyle(t,r,n,o){o&(Wn.DashCase|Wn.Important)?t.style.setProperty(r,n,o&Wn.Important?"important":""):t.style[r]=n}removeStyle(t,r,n){n&Wn.DashCase?t.style.removeProperty(r):t.style[r]=""}setProperty(t,r,n){t[r]=n}setValue(t,r){t.nodeValue=r}listen(t,r,n){if("string"==typeof t&&!(t=Xn().getGlobalEventTarget(this.doc,t)))throw new Error(`Unsupported event target ${t} for event ${r}`);return this.eventManager.addEventListener(t,r,this.decoratePreventDefault(n))}decoratePreventDefault(t){return r=>{if("__ngUnwrap__"===r)return t;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>t(r)):t(r))&&r.preventDefault()}}}function HD(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class $k extends Hf{constructor(t,r,n,o,i,s,a,l){super(t,i,s,l),this.sharedStylesHost=r,this.hostEl=n,this.shadowRoot=n.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=VD(o.id,o.styles);for(const u of c){const 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,r){return super.appendChild(this.nodeOrShadowRoot(t),r)}insertBefore(t,r,n){return super.insertBefore(this.nodeOrShadowRoot(t),r,n)}removeChild(t,r){return super.removeChild(this.nodeOrShadowRoot(t),r)}parentNode(t){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(t)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class Uf extends Hf{constructor(t,r,n,o,i,s,a,l){super(t,i,s,a),this.sharedStylesHost=r,this.removeStylesOnCompDestroy=o,this.styles=l?VD(l,n.styles):n.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class UD extends Uf{constructor(t,r,n,o,i,s,a,l){const c=o+"-"+n.id;super(t,r,n,i,s,a,l,c),this.contentAttr=function Hk(e){return"_ngcontent-%COMP%".replace(jf,e)}(c),this.hostAttr=function Uk(e){return"_nghost-%COMP%".replace(jf,e)}(c)}applyToHost(t){this.applyStyles(),this.setAttribute(t,this.hostAttr,"")}createElement(t,r){const n=super.createElement(t,r);return super.setAttribute(n,this.contentAttr,""),n}}let Gk=(()=>{var e;class t extends kD{constructor(n){super(n)}supports(n){return!0}addEventListener(n,o,i){return n.addEventListener(o,i,!1),()=>this.removeEventListener(n,o,i)}removeEventListener(n,o,i){return n.removeEventListener(o,i)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const BD=["alt","control","meta","shift"],zk={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},qk={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let Wk=(()=>{var e;class t extends kD{constructor(n){super(n)}supports(n){return null!=t.parseEventName(n)}addEventListener(n,o,i){const s=t.parseEventName(o),a=t.eventCallback(s.fullKey,i,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Xn().onAndCancel(n,s.domEventName,a))}static parseEventName(n){const o=n.toLowerCase().split("."),i=o.shift();if(0===o.length||"keydown"!==i&&"keyup"!==i)return null;const s=t._normalizeKey(o.pop());let a="",l=o.indexOf("code");if(l>-1&&(o.splice(l,1),a="code."),BD.forEach(u=>{const d=o.indexOf(u);d>-1&&(o.splice(d,1),a+=u+".")}),a+=s,0!=o.length||0===s.length)return null;const c={};return c.domEventName=i,c.fullKey=a,c}static matchEventFullKeyCode(n,o){let i=zk[n.key]||n.key,s="";return o.indexOf("code.")>-1&&(i=n.code,s="code."),!(null==i||!i)&&(i=i.toLowerCase()," "===i?i="space":"."===i&&(i="dot"),BD.forEach(a=>{a!==i&&(0,qk[a])(n)&&(s+=a+".")}),s+=i,s===o)}static eventCallback(n,o,i){return s=>{t.matchEventFullKeyCode(s,n)&&i.runGuarded(()=>o(s))}}static _normalizeKey(n){return"esc"===n?"escape":n}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function $D(e){return{appProviders:[...zD,...e?.providers??[]],platformProviders:Jk}}const Jk=[{provide:gr,useValue:"browser"},{provide:Fm,useValue:function Yk(){kf.makeCurrent()},multi:!0},{provide:pt,useFactory:function Xk(){return function mI(e){Eu=e}(document),document},deps:[]}],Kk=new x(""),GD=[{provide:Ka,useClass:class Pk{addToWindow(t){he.getAngularTestability=(n,o=!0)=>{const i=t.findTestabilityInTree(n,o);if(null==i)throw new S(5103,!1);return i},he.getAllAngularTestabilities=()=>t.getAllTestabilities(),he.getAllAngularRootElements=()=>t.getAllRootElements(),he.frameworkStabilizers||(he.frameworkStabilizers=[]),he.frameworkStabilizers.push(n=>{const o=he.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&n(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(t,r,n){return null==r?null:t.getTestability(r)??(n?Xn().isShadowRoot(r)?this.findTestabilityInTree(t,r.host,!0):this.findTestabilityInTree(t,r.parentElement,!0):null)}},deps:[]},{provide:MC,useClass:Xd,deps:[ge,Jd,Ka]},{provide:Xd,useClass:Xd,deps:[ge,Jd,Ka]}],zD=[{provide:Pu,useValue:"root"},{provide:In,useFactory:function Qk(){return new In},deps:[]},{provide:Ff,useClass:Gk,multi:!0,deps:[pt,ge,gr]},{provide:Ff,useClass:Wk,multi:!0,deps:[pt]},jD,FD,PD,{provide:$m,useExisting:jD},{provide:bD,useClass:kk,deps:[]},[]];let eF=(()=>{var e;class t{constructor(n){}static withServerTransition(n){return{ngModule:t,providers:[{provide:ba,useValue:n.appId}]}}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Kk,12))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({providers:[...zD,...GD],imports:[jP,lO]}),t})(),qD=(()=>{var e;class t{constructor(n){this._doc=n}getTitle(){return this._doc.title}setTitle(n){this._doc.title=n||""}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt))},e.\u0275prov=L({token:e,factory:function(n){let o=null;return o=n?new n:function nF(){return new qD(F(pt))}(),o},providedIn:"root"}),t})();typeof window<"u"&&window;const W="primary",ts=Symbol("RouteTitle");class aF{constructor(t){this.params=t||{}}has(t){return Object.prototype.hasOwnProperty.call(this.params,t)}get(t){if(this.has(t)){const r=this.params[t];return Array.isArray(r)?r[0]:r}return null}getAll(t){if(this.has(t)){const r=this.params[t];return Array.isArray(r)?r:[r]}return[]}get keys(){return Object.keys(this.params)}}function xo(e){return new aF(e)}function lF(e,t,r){const n=r.path.split("/");if(n.length>e.length||"full"===r.pathMatch&&(t.hasChildren()||n.lengthn[i]===o)}return e===t}function XD(e){return e.length>0?e[e.length-1]:null}function Kn(e){return function pk(e){return!!e&&(e instanceof Ie||ue(e.lift)&&ue(e.subscribe))}(e)?e:Fi(e)?Ne(Promise.resolve(e)):V(e)}const uF={exact:function eb(e,t,r){if(!Er(e.segments,t.segments)||!wl(e.segments,t.segments,r)||e.numberOfChildren!==t.numberOfChildren)return!1;for(const n in t.children)if(!e.children[n]||!eb(e.children[n],t.children[n],r))return!1;return!0},subset:tb},JD={exact:function dF(e,t){return fn(e,t)},subset:function fF(e,t){return Object.keys(t).length<=Object.keys(e).length&&Object.keys(t).every(r=>QD(e[r],t[r]))},ignored:()=>!0};function KD(e,t,r){return uF[r.paths](e.root,t.root,r.matrixParams)&&JD[r.queryParams](e.queryParams,t.queryParams)&&!("exact"===r.fragment&&e.fragment!==t.fragment)}function tb(e,t,r){return nb(e,t,t.segments,r)}function nb(e,t,r,n){if(e.segments.length>r.length){const o=e.segments.slice(0,r.length);return!(!Er(o,r)||t.hasChildren()||!wl(o,r,n))}if(e.segments.length===r.length){if(!Er(e.segments,r)||!wl(e.segments,r,n))return!1;for(const o in t.children)if(!e.children[o]||!tb(e.children[o],t.children[o],n))return!1;return!0}{const o=r.slice(0,e.segments.length),i=r.slice(e.segments.length);return!!(Er(e.segments,o)&&wl(e.segments,o,n)&&e.children[W])&&nb(e.children[W],t,i,n)}}function wl(e,t,r){return t.every((n,o)=>JD[r](e[o].parameters,n.parameters))}class Ro{constructor(t=new ce([],{}),r={},n=null){this.root=t,this.queryParams=r,this.fragment=n}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=xo(this.queryParams)),this._queryParamMap}toString(){return gF.serialize(this)}}class ce{constructor(t,r){this.segments=t,this.children=r,this.parent=null,Object.values(r).forEach(n=>n.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return El(this)}}class ns{constructor(t,r){this.path=t,this.parameters=r}get parameterMap(){return this._parameterMap||(this._parameterMap=xo(this.parameters)),this._parameterMap}toString(){return ib(this)}}function Er(e,t){return e.length===t.length&&e.every((r,n)=>r.path===t[n].path)}let rs=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return new $f},providedIn:"root"}),t})();class $f{parse(t){const r=new IF(t);return new Ro(r.parseRootSegment(),r.parseQueryParams(),r.parseFragment())}serialize(t){const r=`/${os(t.root,!0)}`,n=function yF(e){const t=Object.keys(e).map(r=>{const n=e[r];return Array.isArray(n)?n.map(o=>`${Ml(r)}=${Ml(o)}`).join("&"):`${Ml(r)}=${Ml(n)}`}).filter(r=>!!r);return t.length?`?${t.join("&")}`:""}(t.queryParams);return`${r}${n}${"string"==typeof t.fragment?`#${function mF(e){return encodeURI(e)}(t.fragment)}`:""}`}}const gF=new $f;function El(e){return e.segments.map(t=>ib(t)).join("/")}function os(e,t){if(!e.hasChildren())return El(e);if(t){const r=e.children[W]?os(e.children[W],!1):"",n=[];return Object.entries(e.children).forEach(([o,i])=>{o!==W&&n.push(`${o}:${os(i,!1)}`)}),n.length>0?`${r}(${n.join("//")})`:r}{const r=function pF(e,t){let r=[];return Object.entries(e.children).forEach(([n,o])=>{n===W&&(r=r.concat(t(o,n)))}),Object.entries(e.children).forEach(([n,o])=>{n!==W&&(r=r.concat(t(o,n)))}),r}(e,(n,o)=>o===W?[os(e.children[W],!1)]:[`${o}:${os(n,!1)}`]);return 1===Object.keys(e.children).length&&null!=e.children[W]?`${El(e)}/${r[0]}`:`${El(e)}/(${r.join("//")})`}}function rb(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Ml(e){return rb(e).replace(/%3B/gi,";")}function Gf(e){return rb(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Il(e){return decodeURIComponent(e)}function ob(e){return Il(e.replace(/\+/g,"%20"))}function ib(e){return`${Gf(e.path)}${function vF(e){return Object.keys(e).map(t=>`;${Gf(t)}=${Gf(e[t])}`).join("")}(e.parameters)}`}const _F=/^[^\/()?;#]+/;function zf(e){const t=e.match(_F);return t?t[0]:""}const CF=/^[^\/()?;=#]+/,bF=/^[^=?&#]+/,EF=/^[^&#]+/;class IF{constructor(t){this.url=t,this.remaining=t}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new ce([],{}):new ce([],this.parseChildren())}parseQueryParams(){const 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("/");const t=[];for(this.peekStartsWith("(")||t.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),t.push(this.parseSegment());let r={};this.peekStartsWith("/(")&&(this.capture("/"),r=this.parseParens(!0));let n={};return this.peekStartsWith("(")&&(n=this.parseParens(!1)),(t.length>0||Object.keys(r).length>0)&&(n[W]=new ce(t,r)),n}parseSegment(){const t=zf(this.remaining);if(""===t&&this.peekStartsWith(";"))throw new S(4009,!1);return this.capture(t),new ns(Il(t),this.parseMatrixParams())}parseMatrixParams(){const t={};for(;this.consumeOptional(";");)this.parseParam(t);return t}parseParam(t){const r=function DF(e){const t=e.match(CF);return t?t[0]:""}(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){const o=zf(this.remaining);o&&(n=o,this.capture(n))}t[Il(r)]=Il(n)}parseQueryParam(t){const r=function wF(e){const t=e.match(bF);return t?t[0]:""}(this.remaining);if(!r)return;this.capture(r);let n="";if(this.consumeOptional("=")){const s=function MF(e){const t=e.match(EF);return t?t[0]:""}(this.remaining);s&&(n=s,this.capture(n))}const o=ob(r),i=ob(n);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){const r={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const n=zf(this.remaining),o=this.remaining[n.length];if("/"!==o&&")"!==o&&";"!==o)throw new S(4010,!1);let i;n.indexOf(":")>-1?(i=n.slice(0,n.indexOf(":")),this.capture(i),this.capture(":")):t&&(i=W);const s=this.parseChildren();r[i]=1===Object.keys(s).length?s[W]:new ce([],s),this.consumeOptional("//")}return r}peekStartsWith(t){return this.remaining.startsWith(t)}consumeOptional(t){return!!this.peekStartsWith(t)&&(this.remaining=this.remaining.substring(t.length),!0)}capture(t){if(!this.consumeOptional(t))throw new S(4011,!1)}}function sb(e){return e.segments.length>0?new ce([],{[W]:e}):e}function ab(e){const t={};for(const n of Object.keys(e.children)){const i=ab(e.children[n]);if(n===W&&0===i.segments.length&&i.hasChildren())for(const[s,a]of Object.entries(i.children))t[s]=a;else(i.segments.length>0||i.hasChildren())&&(t[n]=i)}return function SF(e){if(1===e.numberOfChildren&&e.children[W]){const t=e.children[W];return new ce(e.segments.concat(t.segments),t.children)}return e}(new ce(e.segments,t))}function Mr(e){return e instanceof Ro}function lb(e){let t;const o=sb(function r(i){const s={};for(const l of i.children){const c=r(l);s[l.outlet]=c}const a=new ce(i.url,s);return i===e&&(t=a),a}(e.root));return t??o}function cb(e,t,r,n){let o=e;for(;o.parent;)o=o.parent;if(0===t.length)return qf(o,o,o,r,n);const i=function AF(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new db(!0,0,e);let t=0,r=!1;const n=e.reduce((o,i,s)=>{if("object"==typeof i&&null!=i){if(i.outlets){const a={};return Object.entries(i.outlets).forEach(([l,c])=>{a[l]="string"==typeof c?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return"string"!=typeof i?[...o,i]:0===s?(i.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?r=!0:".."===a?t++:""!=a&&o.push(a))}),o):[...o,i]},[]);return new db(r,t,n)}(t);if(i.toRoot())return qf(o,o,new ce([],{}),r,n);const s=function xF(e,t,r){if(e.isAbsolute)return new Tl(t,!0,0);if(!r)return new Tl(t,!1,NaN);if(null===r.parent)return new Tl(r,!0,0);const n=Sl(e.commands[0])?0:1;return function RF(e,t,r){let n=e,o=t,i=r;for(;i>o;){if(i-=o,n=n.parent,!n)throw new S(4005,!1);o=n.segments.length}return new Tl(n,!1,o-i)}(r,r.segments.length-1+n,e.numberOfDoubleDots)}(i,o,e),a=s.processChildren?ss(s.segmentGroup,s.index,i.commands):fb(s.segmentGroup,s.index,i.commands);return qf(o,s.segmentGroup,a,r,n)}function Sl(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function is(e){return"object"==typeof e&&null!=e&&e.outlets}function qf(e,t,r,n,o){let s,i={};n&&Object.entries(n).forEach(([l,c])=>{i[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`}),s=e===t?r:ub(e,t,r);const a=sb(ab(s));return new Ro(a,i,o)}function ub(e,t,r){const n={};return Object.entries(e.children).forEach(([o,i])=>{n[o]=i===t?r:ub(i,t,r)}),new ce(e.segments,n)}class db{constructor(t,r,n){if(this.isAbsolute=t,this.numberOfDoubleDots=r,this.commands=n,t&&n.length>0&&Sl(n[0]))throw new S(4003,!1);const o=n.find(is);if(o&&o!==XD(n))throw new S(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class Tl{constructor(t,r,n){this.segmentGroup=t,this.processChildren=r,this.index=n}}function fb(e,t,r){if(e||(e=new ce([],{})),0===e.segments.length&&e.hasChildren())return ss(e,t,r);const n=function OF(e,t,r){let n=0,o=t;const i={match:!1,pathIndex:0,commandIndex:0};for(;o=r.length)return i;const s=e.segments[o],a=r[n];if(is(a))break;const l=`${a}`,c=n0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!pb(l,c,s))return i;n+=2}else{if(!pb(l,{},s))return i;n++}o++}return{match:!0,pathIndex:o,commandIndex:n}}(e,t,r),o=r.slice(n.commandIndex);if(n.match&&n.pathIndexi!==W)&&e.children[W]&&1===e.numberOfChildren&&0===e.children[W].segments.length){const i=ss(e.children[W],t,r);return new ce(e.segments,i.children)}return Object.entries(n).forEach(([i,s])=>{"string"==typeof s&&(s=[s]),null!==s&&(o[i]=fb(e.children[i],t,s))}),Object.entries(e.children).forEach(([i,s])=>{void 0===n[i]&&(o[i]=s)}),new ce(e.segments,o)}}function Wf(e,t,r){const n=e.segments.slice(0,t);let o=0;for(;o{"string"==typeof n&&(n=[n]),null!==n&&(t[r]=Wf(new ce([],{}),0,n))}),t}function hb(e){const t={};return Object.entries(e).forEach(([r,n])=>t[r]=`${n}`),t}function pb(e,t,r){return e==r.path&&fn(t,r.parameters)}const as="imperative";class hn{constructor(t,r){this.id=t,this.url=r}}class Al extends hn{constructor(t,r,n="imperative",o=null){super(t,r),this.type=0,this.navigationTrigger=n,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class Fn extends hn{constructor(t,r,n){super(t,r),this.urlAfterRedirects=n,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ls extends hn{constructor(t,r,n,o){super(t,r),this.reason=n,this.code=o,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class No extends hn{constructor(t,r,n,o){super(t,r),this.reason=n,this.code=o,this.type=16}}class xl extends hn{constructor(t,r,n,o){super(t,r),this.error=n,this.target=o,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class gb extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class kF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class FF extends hn{constructor(t,r,n,o,i){super(t,r),this.urlAfterRedirects=n,this.state=o,this.shouldActivate=i,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class LF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class VF extends hn{constructor(t,r,n,o){super(t,r),this.urlAfterRedirects=n,this.state=o,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class jF{constructor(t){this.route=t,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class HF{constructor(t){this.route=t,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class UF{constructor(t){this.snapshot=t,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class BF{constructor(t){this.snapshot=t,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class $F{constructor(t){this.snapshot=t,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class GF{constructor(t){this.snapshot=t,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class mb{constructor(t,r,n){this.routerEvent=t,this.position=r,this.anchor=n,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class Zf{}class Yf{constructor(t){this.url=t}}class zF{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new cs,this.attachRef=null}}let cs=(()=>{var e;class t{constructor(){this.contexts=new Map}onChildOutletCreated(n,o){const i=this.getOrCreateContext(n);i.outlet=o,this.contexts.set(n,i)}onChildOutletDestroyed(n){const o=this.getContext(n);o&&(o.outlet=null,o.attachRef=null)}onOutletDeactivated(){const n=this.contexts;return this.contexts=new Map,n}onOutletReAttached(n){this.contexts=n}getOrCreateContext(n){let o=this.getContext(n);return o||(o=new zF,this.contexts.set(n,o)),o}getContext(n){return this.contexts.get(n)||null}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();class vb{constructor(t){this._root=t}get root(){return this._root.value}parent(t){const r=this.pathFromRoot(t);return r.length>1?r[r.length-2]:null}children(t){const r=Qf(t,this._root);return r?r.children.map(n=>n.value):[]}firstChild(t){const r=Qf(t,this._root);return r&&r.children.length>0?r.children[0].value:null}siblings(t){const r=Xf(t,this._root);return r.length<2?[]:r[r.length-2].children.map(o=>o.value).filter(o=>o!==t)}pathFromRoot(t){return Xf(t,this._root).map(r=>r.value)}}function Qf(e,t){if(e===t.value)return t;for(const r of t.children){const n=Qf(e,r);if(n)return n}return null}function Xf(e,t){if(e===t.value)return[t];for(const r of t.children){const n=Xf(e,r);if(n.length)return n.unshift(t),n}return[]}class Ln{constructor(t,r){this.value=t,this.children=r}toString(){return`TreeNode(${this.value})`}}function Oo(e){const t={};return e&&e.children.forEach(r=>t[r.value.outlet]=r),t}class yb extends vb{constructor(t,r){super(t),this.snapshot=r,Jf(this,t)}toString(){return this.snapshot.toString()}}function _b(e,t){const r=function qF(e,t){const s=new Rl([],{},{},"",{},W,t,null,{});return new Db("",new Ln(s,[]))}(0,t),n=new At([new ns("",{})]),o=new At({}),i=new At({}),s=new At({}),a=new At(""),l=new Ir(n,o,s,a,i,W,t,r.root);return l.snapshot=r.root,new yb(new Ln(l,[]),r)}class Ir{constructor(t,r,n,o,i,s,a,l){this.urlSubject=t,this.paramsSubject=r,this.queryParamsSubject=n,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(ee(c=>c[ts]))??V(void 0),this.url=t,this.params=r,this.queryParams=n,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._paramMap=this.params.pipe(ee(t=>xo(t)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(ee(t=>xo(t)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function Cb(e,t="emptyOnly"){const r=e.pathFromRoot;let n=0;if("always"!==t)for(n=r.length-1;n>=1;){const o=r[n],i=r[n-1];if(o.routeConfig&&""===o.routeConfig.path)n--;else{if(i.component)break;n--}}return function WF(e){return e.reduce((t,r)=>({params:{...t.params,...r.params},data:{...t.data,...r.data},resolve:{...r.data,...t.resolve,...r.routeConfig?.data,...r._resolvedData}}),{params:{},data:{},resolve:{}})}(r.slice(n))}class Rl{get title(){return this.data?.[ts]}constructor(t,r,n,o,i,s,a,l,c){this.url=t,this.params=r,this.queryParams=n,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=xo(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=xo(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(n=>n.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class Db extends vb{constructor(t,r){super(r),this.url=t,Jf(this,r)}toString(){return bb(this._root)}}function Jf(e,t){t.value._routerState=e,t.children.forEach(r=>Jf(e,r))}function bb(e){const t=e.children.length>0?` { ${e.children.map(bb).join(", ")} } `:"";return`${e.value}${t}`}function Kf(e){if(e.snapshot){const t=e.snapshot,r=e._futureSnapshot;e.snapshot=r,fn(t.queryParams,r.queryParams)||e.queryParamsSubject.next(r.queryParams),t.fragment!==r.fragment&&e.fragmentSubject.next(r.fragment),fn(t.params,r.params)||e.paramsSubject.next(r.params),function cF(e,t){if(e.length!==t.length)return!1;for(let r=0;rfn(r.parameters,t[n].parameters))}(e.url,t.url);return r&&!(!e.parent!=!t.parent)&&(!e.parent||eh(e.parent,t.parent))}let th=(()=>{var e;class t{constructor(){this.activated=null,this._activatedRoute=null,this.name=W,this.activateEvents=new Ee,this.deactivateEvents=new Ee,this.attachEvents=new Ee,this.detachEvents=new Ee,this.parentContexts=A(cs),this.location=A(Zt),this.changeDetector=A(tl),this.environmentInjector=A(Dt),this.inputBinder=A(Nl,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(n){if(n.name){const{firstChange:o,previousValue:i}=n.name;if(o)return;this.isTrackedInParentContexts(i)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(i)),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;const 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 S(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new S(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new S(4012,!1);this.location.detach();const n=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(n.instance),n}attach(n,o){this.activated=n,this._activatedRoute=o,this.location.insert(n.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(n.instance)}deactivate(){if(this.activated){const n=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(n)}}activateWith(n,o){if(this.isActivated)throw new S(4013,!1);this._activatedRoute=n;const i=this.location,a=n.snapshot.component,l=this.parentContexts.getOrCreateContext(this.name).children,c=new ZF(n,l,i.injector);this.activated=i.createComponent(a,{index:i.length,injector:c,environmentInjector:o??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Nt]}),t})();class ZF{constructor(t,r,n){this.route=t,this.childContexts=r,this.parent=n}get(t,r){return t===Ir?this.route:t===cs?this.childContexts:this.parent.get(t,r)}}const Nl=new x("");let wb=(()=>{var e;class t{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(n){this.unsubscribeFromRouteData(n),this.subscribeToRouteData(n)}unsubscribeFromRouteData(n){this.outletDataSubscriptions.get(n)?.unsubscribe(),this.outletDataSubscriptions.delete(n)}subscribeToRouteData(n){const{activatedRoute:o}=n,i=Rf([o.queryParams,o.params,o.data]).pipe(Ht(([s,a,l],c)=>(l={...s,...a,...l},0===c?V(l):Promise.resolve(l)))).subscribe(s=>{if(!n.isActivated||!n.activatedComponentRef||n.activatedRoute!==o||null===o.component)return void this.unsubscribeFromRouteData(n);const a=function CO(e){const t=X(e);if(!t)return null;const r=new Ri(t);return{get selector(){return r.selector},get type(){return r.componentType},get inputs(){return r.inputs},get outputs(){return r.outputs},get ngContentSelectors(){return r.ngContentSelectors},get isStandalone(){return t.standalone},get isSignal(){return t.signals}}}(o.component);if(a)for(const{templateName:l}of a.inputs)n.activatedComponentRef.setInput(l,s[l]);else this.unsubscribeFromRouteData(n)});this.outletDataSubscriptions.set(n,i)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function us(e,t,r){if(r&&e.shouldReuseRoute(t.value,r.value.snapshot)){const n=r.value;n._futureSnapshot=t.value;const o=function QF(e,t,r){return t.children.map(n=>{for(const o of r.children)if(e.shouldReuseRoute(n.value,o.value.snapshot))return us(e,n,o);return us(e,n)})}(e,t,r);return new Ln(n,o)}{if(e.shouldAttach(t.value)){const i=e.retrieve(t.value);if(null!==i){const s=i.route;return s.value._futureSnapshot=t.value,s.children=t.children.map(a=>us(e,a)),s}}const n=function XF(e){return new Ir(new At(e.url),new At(e.params),new At(e.queryParams),new At(e.fragment),new At(e.data),e.outlet,e.component,e)}(t.value),o=t.children.map(i=>us(e,i));return new Ln(n,o)}}const nh="ngNavigationCancelingError";function Eb(e,t){const{redirectTo:r,navigationBehaviorOptions:n}=Mr(t)?{redirectTo:t,navigationBehaviorOptions:void 0}:t,o=Mb(!1,0,t);return o.url=r,o.navigationBehaviorOptions=n,o}function Mb(e,t,r){const n=new Error("NavigationCancelingError: "+(e||""));return n[nh]=!0,n.cancellationCode=t,r&&(n.url=r),n}function Ib(e){return e&&e[nh]}let Sb=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["ng-component"]],standalone:!0,features:[Mt],decls:1,vars:0,template:function(n,o){1&n&&v(0,"router-outlet")},dependencies:[th],encapsulation:2}),t})();function rh(e){const t=e.children&&e.children.map(rh),r=t?{...e,children:t}:{...e};return!r.component&&!r.loadComponent&&(t||r.loadChildren)&&r.outlet&&r.outlet!==W&&(r.component=Sb),r}function Jt(e){return e.outlet||W}function ds(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let t=e.parent;t;t=t.parent){const r=t.routeConfig;if(r?._loadedInjector)return r._loadedInjector;if(r?._injector)return r._injector}return null}class i2{constructor(t,r,n,o,i){this.routeReuseStrategy=t,this.futureState=r,this.currState=n,this.forwardEvent=o,this.inputBindingEnabled=i}activate(t){const r=this.futureState._root,n=this.currState?this.currState._root:null;this.deactivateChildRoutes(r,n,t),Kf(this.futureState.root),this.activateChildRoutes(r,n,t)}deactivateChildRoutes(t,r,n){const o=Oo(r);t.children.forEach(i=>{const s=i.value.outlet;this.deactivateRoutes(i,o[s],n),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,n)})}deactivateRoutes(t,r,n){const o=t.value,i=r?r.value:null;if(o===i)if(o.component){const s=n.getContext(o.outlet);s&&this.deactivateChildRoutes(t,r,s.children)}else this.deactivateChildRoutes(t,r,n);else i&&this.deactivateRouteAndItsChildren(r,n)}deactivateRouteAndItsChildren(t,r){t.value.component&&this.routeReuseStrategy.shouldDetach(t.value.snapshot)?this.detachAndStoreRouteSubtree(t,r):this.deactivateRouteAndOutlet(t,r)}detachAndStoreRouteSubtree(t,r){const n=r.getContext(t.value.outlet),o=n&&t.value.component?n.children:r,i=Oo(t);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);if(n&&n.outlet){const s=n.outlet.detach(),a=n.children.onOutletDeactivated();this.routeReuseStrategy.store(t.value.snapshot,{componentRef:s,route:t,contexts:a})}}deactivateRouteAndOutlet(t,r){const n=r.getContext(t.value.outlet),o=n&&t.value.component?n.children:r,i=Oo(t);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);n&&(n.outlet&&(n.outlet.deactivate(),n.children.onOutletDeactivated()),n.attachRef=null,n.route=null)}activateChildRoutes(t,r,n){const o=Oo(r);t.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],n),this.forwardEvent(new GF(i.value.snapshot))}),t.children.length&&this.forwardEvent(new BF(t.value.snapshot))}activateRoutes(t,r,n){const o=t.value,i=r?r.value:null;if(Kf(o),o===i)if(o.component){const s=n.getOrCreateContext(o.outlet);this.activateChildRoutes(t,r,s.children)}else this.activateChildRoutes(t,r,n);else if(o.component){const s=n.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){const 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),Kf(a.route.value),this.activateChildRoutes(t,null,s.children)}else{const a=ds(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,n)}}class Tb{constructor(t){this.path=t,this.route=this.path[this.path.length-1]}}class Ol{constructor(t,r){this.component=t,this.route=r}}function s2(e,t,r){const n=e._root;return fs(n,t?t._root:null,r,[n.value])}function Po(e,t){const r=Symbol(),n=t.get(e,r);return n===r?"function"!=typeof e||function R1(e){return null!==Rs(e)}(e)?t.get(e):e:n}function fs(e,t,r,n,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=Oo(t);return e.children.forEach(s=>{(function l2(e,t,r,n,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=e.value,s=t?t.value:null,a=r?r.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){const l=function c2(e,t,r){if("function"==typeof r)return r(e,t);switch(r){case"pathParamsChange":return!Er(e.url,t.url);case"pathParamsOrQueryParamsChange":return!Er(e.url,t.url)||!fn(e.queryParams,t.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!eh(e,t)||!fn(e.queryParams,t.queryParams);default:return!eh(e,t)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new Tb(n)):(i.data=s.data,i._resolvedData=s._resolvedData),fs(e,t,i.component?a?a.children:null:r,n,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Ol(a.outlet.component,s))}else s&&hs(t,a,o),o.canActivateChecks.push(new Tb(n)),fs(e,null,i.component?a?a.children:null:r,n,o)})(s,i[s.value.outlet],r,n.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>hs(a,r.getContext(s),o)),o}function hs(e,t,r){const n=Oo(e),o=e.value;Object.entries(n).forEach(([i,s])=>{hs(s,o.component?t?t.children.getContext(i):null:t,r)}),r.canDeactivateChecks.push(new Ol(o.component&&t&&t.outlet&&t.outlet.isActivated?t.outlet.component:null,o))}function ps(e){return"function"==typeof e}function Ab(e){return e instanceof Cl||"EmptyError"===e?.name}const Pl=Symbol("INITIAL_VALUE");function ko(){return Ht(e=>Rf(e.map(t=>t.pipe(ar(1),function Ek(...e){const t=Yo(e);return Pe((r,n)=>{(t?Nf(e,r,t):Nf(e,r)).subscribe(n)})}(Pl)))).pipe(ee(t=>{for(const r of t)if(!0!==r){if(r===Pl)return Pl;if(!1===r||r instanceof Ro)return r}return!0}),Xt(t=>t!==Pl),ar(1)))}function xb(e){return function OE(...e){return Hh(e)}(Ze(t=>{if(Mr(t))throw Eb(0,t)}),ee(t=>!0===t))}class kl{constructor(t){this.segmentGroup=t||null}}class Rb{constructor(t){this.urlTree=t}}function Fo(e){return Ji(new kl(e))}function Nb(e){return Ji(new Rb(e))}class A2{constructor(t,r){this.urlSerializer=t,this.urlTree=r}noMatchError(t){return new S(4002,!1)}lineralizeSegments(t,r){let n=[],o=r.root;for(;;){if(n=n.concat(o.segments),0===o.numberOfChildren)return V(n);if(o.numberOfChildren>1||!o.children[W])return Ji(new S(4e3,!1));o=o.children[W]}}applyRedirectCommands(t,r,n){return this.applyRedirectCreateUrlTree(r,this.urlSerializer.parse(r),t,n)}applyRedirectCreateUrlTree(t,r,n,o){const i=this.createSegmentGroup(t,r.root,n,o);return new Ro(i,this.createQueryParams(r.queryParams,this.urlTree.queryParams),r.fragment)}createQueryParams(t,r){const n={};return Object.entries(t).forEach(([o,i])=>{if("string"==typeof i&&i.startsWith(":")){const a=i.substring(1);n[o]=r[a]}else n[o]=i}),n}createSegmentGroup(t,r,n,o){const i=this.createSegments(t,r.segments,n,o);let s={};return Object.entries(r.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(t,l,n,o)}),new ce(i,s)}createSegments(t,r,n,o){return r.map(i=>i.path.startsWith(":")?this.findPosParam(t,i,o):this.findOrReturn(i,n))}findPosParam(t,r,n){const o=n[r.path.substring(1)];if(!o)throw new S(4001,!1);return o}findOrReturn(t,r){let n=0;for(const o of r){if(o.path===t.path)return r.splice(n),o;n++}return t}}const oh={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function x2(e,t,r,n,o){const i=ih(e,t,r);return i.matched?(n=function KF(e,t){return e.providers&&!e._injector&&(e._injector=Od(e.providers,t,`Route: ${e.path}`)),e._injector??t}(t,n),function I2(e,t,r,n){const o=t.canMatch;return o&&0!==o.length?V(o.map(s=>{const a=Po(s,e);return Kn(function g2(e){return e&&ps(e.canMatch)}(a)?a.canMatch(t,r):e.runInContext(()=>a(t,r)))})).pipe(ko(),xb()):V(!0)}(n,t,r).pipe(ee(s=>!0===s?i:{...oh}))):V(i)}function ih(e,t,r){if(""===t.path)return"full"===t.pathMatch&&(e.hasChildren()||r.length>0)?{...oh}:{matched:!0,consumedSegments:[],remainingSegments:r,parameters:{},positionalParamSegments:{}};const o=(t.matcher||lF)(r,e,t);if(!o)return{...oh};const i={};Object.entries(o.posParams??{}).forEach(([a,l])=>{i[a]=l.path});const s=o.consumed.length>0?{...i,...o.consumed[o.consumed.length-1].parameters}:i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:r.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function Ob(e,t,r,n){return r.length>0&&function O2(e,t,r){return r.some(n=>Fl(e,t,n)&&Jt(n)!==W)}(e,r,n)?{segmentGroup:new ce(t,N2(n,new ce(r,e.children))),slicedSegments:[]}:0===r.length&&function P2(e,t,r){return r.some(n=>Fl(e,t,n))}(e,r,n)?{segmentGroup:new ce(e.segments,R2(e,0,r,n,e.children)),slicedSegments:r}:{segmentGroup:new ce(e.segments,e.children),slicedSegments:r}}function R2(e,t,r,n,o){const i={};for(const s of n)if(Fl(e,r,s)&&!o[Jt(s)]){const a=new ce([],{});i[Jt(s)]=a}return{...o,...i}}function N2(e,t){const r={};r[W]=t;for(const n of e)if(""===n.path&&Jt(n)!==W){const o=new ce([],{});r[Jt(n)]=o}return r}function Fl(e,t,r){return(!(e.hasChildren()||t.length>0)||"full"!==r.pathMatch)&&""===r.path}class V2{constructor(t,r,n,o,i,s,a){this.injector=t,this.configLoader=r,this.rootComponentType=n,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.allowRedirects=!0,this.applyRedirects=new A2(this.urlSerializer,this.urlTree)}noMatchError(t){return new S(4002,!1)}recognize(){const t=Ob(this.urlTree.root,[],[],this.config).segmentGroup;return this.processSegmentGroup(this.injector,this.config,t,W).pipe(wr(r=>{if(r instanceof Rb)return this.allowRedirects=!1,this.urlTree=r.urlTree,this.match(r.urlTree);throw r instanceof kl?this.noMatchError(r):r}),ee(r=>{const n=new Rl([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},W,this.rootComponentType,null,{}),o=new Ln(n,r),i=new Db("",o),s=function TF(e,t,r=null,n=null){return cb(lb(e),t,r,n)}(n,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,i.url=this.urlSerializer.serialize(s),this.inheritParamsAndData(i._root),{state:i,tree:s}}))}match(t){return this.processSegmentGroup(this.injector,this.config,t.root,W).pipe(wr(n=>{throw n instanceof kl?this.noMatchError(n):n}))}inheritParamsAndData(t){const r=t.value,n=Cb(r,this.paramsInheritanceStrategy);r.params=Object.freeze(n.params),r.data=Object.freeze(n.data),t.children.forEach(o=>this.inheritParamsAndData(o))}processSegmentGroup(t,r,n,o){return 0===n.segments.length&&n.hasChildren()?this.processChildren(t,r,n):this.processSegment(t,r,n,n.segments,o,!0)}processChildren(t,r,n){const o=[];for(const i of Object.keys(n.children))"primary"===i?o.unshift(i):o.push(i);return Ne(o).pipe(Ao(i=>{const s=n.children[i],a=function r2(e,t){const r=e.filter(n=>Jt(n)===t);return r.push(...e.filter(n=>Jt(n)!==t)),r}(r,i);return this.processSegmentGroup(t,a,s,i)}),function Sk(e,t){return Pe(function Ik(e,t,r,n,o){return(i,s)=>{let a=r,l=t,c=0;i.subscribe(Re(s,u=>{const d=c++;l=a?e(l,u,d):(a=!0,u),n&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}(e,t,arguments.length>=2,!0))}((i,s)=>(i.push(...s),i)),Dl(null),function Tk(e,t){const r=arguments.length>=2;return n=>n.pipe(e?Xt((o,i)=>e(o,i,n)):jn,Pf(1),r?Dl(t):OD(()=>new Cl))}(),Ve(i=>{if(null===i)return Fo(n);const s=Pb(i);return function j2(e){e.sort((t,r)=>t.value.outlet===W?-1:r.value.outlet===W?1:t.value.outlet.localeCompare(r.value.outlet))}(s),V(s)}))}processSegment(t,r,n,o,i,s){return Ne(r).pipe(Ao(a=>this.processSegmentAgainstRoute(a._injector??t,r,a,n,o,i,s).pipe(wr(l=>{if(l instanceof kl)return V(null);throw l}))),br(a=>!!a),wr(a=>{if(Ab(a))return function F2(e,t,r){return 0===t.length&&!e.children[r]}(n,o,i)?V([]):Fo(n);throw a}))}processSegmentAgainstRoute(t,r,n,o,i,s,a){return function k2(e,t,r,n){return!!(Jt(e)===n||n!==W&&Fl(t,r,e))&&("**"===e.path||ih(t,e,r).matched)}(n,o,i,s)?void 0===n.redirectTo?this.matchSegmentAgainstRoute(t,o,n,i,s,a):a&&this.allowRedirects?this.expandSegmentAgainstRouteUsingRedirect(t,o,r,n,i,s):Fo(o):Fo(o)}expandSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s){return"**"===o.path?this.expandWildCardWithParamsAgainstRouteUsingRedirect(t,n,o,s):this.expandRegularSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s)}expandWildCardWithParamsAgainstRouteUsingRedirect(t,r,n,o){const i=this.applyRedirects.applyRedirectCommands([],n.redirectTo,{});return n.redirectTo.startsWith("/")?Nb(i):this.applyRedirects.lineralizeSegments(n,i).pipe(Ve(s=>{const a=new ce(s,{});return this.processSegment(t,r,a,s,o,!1)}))}expandRegularSegmentAgainstRouteUsingRedirect(t,r,n,o,i,s){const{matched:a,consumedSegments:l,remainingSegments:c,positionalParamSegments:u}=ih(r,o,i);if(!a)return Fo(r);const d=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,u);return o.redirectTo.startsWith("/")?Nb(d):this.applyRedirects.lineralizeSegments(o,d).pipe(Ve(g=>this.processSegment(t,n,r,g.concat(c),s,!1)))}matchSegmentAgainstRoute(t,r,n,o,i,s){let a;if("**"===n.path){const l=o.length>0?XD(o).parameters:{};a=V({snapshot:new Rl(o,l,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,kb(n),Jt(n),n.component??n._loadedComponent??null,n,Fb(n)),consumedSegments:[],remainingSegments:[]}),r.children={}}else a=x2(r,n,o,t).pipe(ee(({matched:l,consumedSegments:c,remainingSegments:u,parameters:d})=>l?{snapshot:new Rl(c,d,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,kb(n),Jt(n),n.component??n._loadedComponent??null,n,Fb(n)),consumedSegments:c,remainingSegments:u}:null));return a.pipe(Ht(l=>null===l?Fo(r):this.getChildConfig(t=n._injector??t,n,o).pipe(Ht(({routes:c})=>{const u=n._loadedInjector??t,{snapshot:d,consumedSegments:g,remainingSegments:m}=l,{segmentGroup:y,slicedSegments:C}=Ob(r,g,m,c);if(0===C.length&&y.hasChildren())return this.processChildren(u,c,y).pipe(ee(E=>null===E?null:[new Ln(d,E)]));if(0===c.length&&0===C.length)return V([new Ln(d,[])]);const b=Jt(n)===i;return this.processSegment(u,c,y,C,b?W:i,!0).pipe(ee(E=>[new Ln(d,E)]))}))))}getChildConfig(t,r,n){return r.children?V({routes:r.children,injector:t}):r.loadChildren?void 0!==r._loadedRoutes?V({routes:r._loadedRoutes,injector:r._loadedInjector}):function M2(e,t,r,n){const o=t.canLoad;return void 0===o||0===o.length?V(!0):V(o.map(s=>{const a=Po(s,e);return Kn(function d2(e){return e&&ps(e.canLoad)}(a)?a.canLoad(t,r):e.runInContext(()=>a(t,r)))})).pipe(ko(),xb())}(t,r,n).pipe(Ve(o=>o?this.configLoader.loadChildren(t,r).pipe(Ze(i=>{r._loadedRoutes=i.routes,r._loadedInjector=i.injector})):function T2(e){return Ji(Mb(!1,3))}())):V({routes:[],injector:t})}}function H2(e){const t=e.value.routeConfig;return t&&""===t.path}function Pb(e){const t=[],r=new Set;for(const n of e){if(!H2(n)){t.push(n);continue}const o=t.find(i=>n.value.routeConfig===i.value.routeConfig);void 0!==o?(o.children.push(...n.children),r.add(o)):t.push(n)}for(const n of r){const o=Pb(n.children);t.push(new Ln(n.value,o))}return t.filter(n=>!r.has(n))}function kb(e){return e.data||{}}function Fb(e){return e.resolve||{}}function Lb(e){return"string"==typeof e.title||null===e.title}function sh(e){return Ht(t=>{const r=e(t);return r?Ne(r).pipe(ee(()=>t)):V(t)})}const Lo=new x("ROUTES");let ah=(()=>{var e;class t{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=A(DC)}loadComponent(n){if(this.componentLoaders.get(n))return this.componentLoaders.get(n);if(n._loadedComponent)return V(n._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(n);const o=Kn(n.loadComponent()).pipe(ee(Vb),Ze(s=>{this.onLoadEndListener&&this.onLoadEndListener(n),n._loadedComponent=s}),Ki(()=>{this.componentLoaders.delete(n)})),i=new ND(o,()=>new Vt).pipe(Of());return this.componentLoaders.set(n,i),i}loadChildren(n,o){if(this.childrenLoaders.get(o))return this.childrenLoaders.get(o);if(o._loadedRoutes)return V({routes:o._loadedRoutes,injector:o._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(o);const s=function W2(e,t,r,n){return Kn(e.loadChildren()).pipe(ee(Vb),Ve(o=>o instanceof S_||Array.isArray(o)?V(o):Ne(t.compileModuleAsync(o))),ee(o=>{n&&n(e);let i,s,a=!1;return Array.isArray(o)?(s=o,!0):(i=o.create(r).injector,s=i.get(Lo,[],{optional:!0,self:!0}).flat()),{routes:s.map(rh),injector:i}}))}(o,this.compiler,n,this.onLoadEndListener).pipe(Ki(()=>{this.childrenLoaders.delete(o)})),a=new ND(s,()=>new Vt).pipe(Of());return this.childrenLoaders.set(o,a),a}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function Vb(e){return function Z2(e){return e&&"object"==typeof e&&"default"in e}(e)?e.default:e}let Ll=(()=>{var e;class t{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new Vt,this.transitionAbortSubject=new Vt,this.configLoader=A(ah),this.environmentInjector=A(Dt),this.urlSerializer=A(rs),this.rootContexts=A(cs),this.inputBindingEnabled=null!==A(Nl,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>V(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=i=>this.events.next(new HF(i)),this.configLoader.onLoadStartListener=i=>this.events.next(new jF(i))}complete(){this.transitions?.complete()}handleNavigationRequest(n){const o=++this.navigationId;this.transitions?.next({...this.transitions.value,...n,id:o})}setupNavigations(n,o,i){return this.transitions=new At({id:0,currentUrlTree:o,currentRawUrl:o,currentBrowserUrl:o,extractedUrl:n.urlHandlingStrategy.extract(o),urlAfterRedirects:n.urlHandlingStrategy.extract(o),rawUrl:o,extras:{},resolve:null,reject:null,promise:Promise.resolve(!0),source:as,restoredState:null,currentSnapshot:i.snapshot,targetSnapshot:null,currentRouterState:i,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(Xt(s=>0!==s.id),ee(s=>({...s,extractedUrl:n.urlHandlingStrategy.extract(s.rawUrl)})),Ht(s=>{this.currentTransition=s;let a=!1,l=!1;return V(s).pipe(Ze(c=>{this.currentNavigation={id:c.id,initialUrl:c.rawUrl,extractedUrl:c.extractedUrl,trigger:c.source,extras:c.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),Ht(c=>{const u=c.currentBrowserUrl.toString(),d=!n.navigated||c.extractedUrl.toString()!==u||u!==c.currentUrlTree.toString();if(!d&&"reload"!==(c.extras.onSameUrlNavigation??n.onSameUrlNavigation)){const m="";return this.events.next(new No(c.id,this.urlSerializer.serialize(c.rawUrl),m,0)),c.resolve(null),Kt}if(n.urlHandlingStrategy.shouldProcessUrl(c.rawUrl))return V(c).pipe(Ht(m=>{const y=this.transitions?.getValue();return this.events.next(new Al(m.id,this.urlSerializer.serialize(m.extractedUrl),m.source,m.restoredState)),y!==this.transitions?.getValue()?Kt:Promise.resolve(m)}),function U2(e,t,r,n,o,i){return Ve(s=>function L2(e,t,r,n,o,i,s="emptyOnly"){return new V2(e,t,r,n,o,s,i).recognize()}(e,t,r,n,s.extractedUrl,o,i).pipe(ee(({state:a,tree:l})=>({...s,targetSnapshot:a,urlAfterRedirects:l}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,n.config,this.urlSerializer,n.paramsInheritanceStrategy),Ze(m=>{s.targetSnapshot=m.targetSnapshot,s.urlAfterRedirects=m.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:m.urlAfterRedirects};const y=new gb(m.id,this.urlSerializer.serialize(m.extractedUrl),this.urlSerializer.serialize(m.urlAfterRedirects),m.targetSnapshot);this.events.next(y)}));if(d&&n.urlHandlingStrategy.shouldProcessUrl(c.currentRawUrl)){const{id:m,extractedUrl:y,source:C,restoredState:b,extras:E}=c,D=new Al(m,this.urlSerializer.serialize(y),C,b);this.events.next(D);const O=_b(0,this.rootComponentType).snapshot;return this.currentTransition=s={...c,targetSnapshot:O,urlAfterRedirects:y,extras:{...E,skipLocationChange:!1,replaceUrl:!1}},V(s)}{const m="";return this.events.next(new No(c.id,this.urlSerializer.serialize(c.extractedUrl),m,1)),c.resolve(null),Kt}}),Ze(c=>{const u=new kF(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),ee(c=>(this.currentTransition=s={...c,guards:s2(c.targetSnapshot,c.currentSnapshot,this.rootContexts)},s)),function v2(e,t){return Ve(r=>{const{targetSnapshot:n,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=r;return 0===s.length&&0===i.length?V({...r,guardsResult:!0}):function y2(e,t,r,n){return Ne(e).pipe(Ve(o=>function E2(e,t,r,n,o){const i=t&&t.routeConfig?t.routeConfig.canDeactivate:null;return i&&0!==i.length?V(i.map(a=>{const l=ds(t)??o,c=Po(a,l);return Kn(function p2(e){return e&&ps(e.canDeactivate)}(c)?c.canDeactivate(e,t,r,n):l.runInContext(()=>c(e,t,r,n))).pipe(br())})).pipe(ko()):V(!0)}(o.component,o.route,r,t,n)),br(o=>!0!==o,!0))}(s,n,o,e).pipe(Ve(a=>a&&function u2(e){return"boolean"==typeof e}(a)?function _2(e,t,r,n){return Ne(t).pipe(Ao(o=>Nf(function D2(e,t){return null!==e&&t&&t(new UF(e)),V(!0)}(o.route.parent,n),function C2(e,t){return null!==e&&t&&t(new $F(e)),V(!0)}(o.route,n),function w2(e,t,r){const n=t[t.length-1],i=t.slice(0,t.length-1).reverse().map(s=>function a2(e){const t=e.routeConfig?e.routeConfig.canActivateChild:null;return t&&0!==t.length?{node:e,guards:t}:null}(s)).filter(s=>null!==s).map(s=>RD(()=>V(s.guards.map(l=>{const c=ds(s.node)??r,u=Po(l,c);return Kn(function h2(e){return e&&ps(e.canActivateChild)}(u)?u.canActivateChild(n,e):c.runInContext(()=>u(n,e))).pipe(br())})).pipe(ko())));return V(i).pipe(ko())}(e,o.path,r),function b2(e,t,r){const n=t.routeConfig?t.routeConfig.canActivate:null;if(!n||0===n.length)return V(!0);const o=n.map(i=>RD(()=>{const s=ds(t)??r,a=Po(i,s);return Kn(function f2(e){return e&&ps(e.canActivate)}(a)?a.canActivate(t,e):s.runInContext(()=>a(t,e))).pipe(br())}));return V(o).pipe(ko())}(e,o.route,r))),br(o=>!0!==o,!0))}(n,i,e,t):V(a)),ee(a=>({...r,guardsResult:a})))})}(this.environmentInjector,c=>this.events.next(c)),Ze(c=>{if(s.guardsResult=c.guardsResult,Mr(c.guardsResult))throw Eb(0,c.guardsResult);const u=new FF(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot,!!c.guardsResult);this.events.next(u)}),Xt(c=>!!c.guardsResult||(this.cancelNavigationTransition(c,"",3),!1)),sh(c=>{if(c.guards.canActivateChecks.length)return V(c).pipe(Ze(u=>{const d=new LF(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(d)}),Ht(u=>{let d=!1;return V(u).pipe(function B2(e,t){return Ve(r=>{const{targetSnapshot:n,guards:{canActivateChecks:o}}=r;if(!o.length)return V(r);let i=0;return Ne(o).pipe(Ao(s=>function $2(e,t,r,n){const o=e.routeConfig,i=e._resolve;return void 0!==o?.title&&!Lb(o)&&(i[ts]=o.title),function G2(e,t,r,n){const o=function z2(e){return[...Object.keys(e),...Object.getOwnPropertySymbols(e)]}(e);if(0===o.length)return V({});const i={};return Ne(o).pipe(Ve(s=>function q2(e,t,r,n){const o=ds(t)??n,i=Po(e,o);return Kn(i.resolve?i.resolve(t,r):o.runInContext(()=>i(t,r)))}(e[s],t,r,n).pipe(br(),Ze(a=>{i[s]=a}))),Pf(1),function Ak(e){return ee(()=>e)}(i),wr(s=>Ab(s)?Kt:Ji(s)))}(i,e,t,n).pipe(ee(s=>(e._resolvedData=s,e.data=Cb(e,r).resolve,o&&Lb(o)&&(e.data[ts]=o.title),null)))}(s.route,n,e,t)),Ze(()=>i++),Pf(1),Ve(s=>i===o.length?V(r):Kt))})}(n.paramsInheritanceStrategy,this.environmentInjector),Ze({next:()=>d=!0,complete:()=>{d||this.cancelNavigationTransition(u,"",2)}}))}),Ze(u=>{const d=new VF(u.id,this.urlSerializer.serialize(u.extractedUrl),this.urlSerializer.serialize(u.urlAfterRedirects),u.targetSnapshot);this.events.next(d)}))}),sh(c=>{const u=d=>{const g=[];d.routeConfig?.loadComponent&&!d.routeConfig._loadedComponent&&g.push(this.configLoader.loadComponent(d.routeConfig).pipe(Ze(m=>{d.component=m}),ee(()=>{})));for(const m of d.children)g.push(...u(m));return g};return Rf(u(c.targetSnapshot.root)).pipe(Dl(),ar(1))}),sh(()=>this.afterPreactivation()),ee(c=>{const u=function YF(e,t,r){const n=us(e,t._root,r?r._root:void 0);return new yb(n,t)}(n.routeReuseStrategy,c.targetSnapshot,c.currentRouterState);return this.currentTransition=s={...c,targetRouterState:u},s}),Ze(()=>{this.events.next(new Zf)}),((e,t,r,n)=>ee(o=>(new i2(t,o.targetRouterState,o.currentRouterState,r,n).activate(e),o)))(this.rootContexts,n.routeReuseStrategy,c=>this.events.next(c),this.inputBindingEnabled),ar(1),Ze({next:c=>{a=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new Fn(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects))),n.titleStrategy?.updateTitle(c.targetRouterState.snapshot),c.resolve(!0)},complete:()=>{a=!0}}),function xk(e){return Pe((t,r)=>{jt(e).subscribe(Re(r,()=>r.complete(),lc)),!r.closed&&t.subscribe(r)})}(this.transitionAbortSubject.pipe(Ze(c=>{throw c}))),Ki(()=>{a||l||this.cancelNavigationTransition(s,"",1),this.currentNavigation?.id===s.id&&(this.currentNavigation=null)}),wr(c=>{if(l=!0,Ib(c))this.events.next(new ls(s.id,this.urlSerializer.serialize(s.extractedUrl),c.message,c.cancellationCode)),function JF(e){return Ib(e)&&Mr(e.url)}(c)?this.events.next(new Yf(c.url)):s.resolve(!1);else{this.events.next(new xl(s.id,this.urlSerializer.serialize(s.extractedUrl),c,s.targetSnapshot??void 0));try{s.resolve(n.errorHandler(c))}catch(u){s.reject(u)}}return Kt}))}))}cancelNavigationTransition(n,o,i){const s=new ls(n.id,this.urlSerializer.serialize(n.extractedUrl),o,i);this.events.next(s),n.resolve(!1)}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function jb(e){return e!==as}let Hb=(()=>{var e;class t{buildTitle(n){let o,i=n.root;for(;void 0!==i;)o=this.getResolvedTitleForRoute(i)??o,i=i.children.find(s=>s.outlet===W);return o}getResolvedTitleForRoute(n){return n.data[ts]}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(Y2)},providedIn:"root"}),t})(),Y2=(()=>{var e;class t extends Hb{constructor(n){super(),this.title=n}updateTitle(n){const o=this.buildTitle(n);void 0!==o&&this.title.setTitle(o)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(qD))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})(),Q2=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(J2)},providedIn:"root"}),t})();class X2{shouldDetach(t){return!1}store(t,r){}shouldAttach(t){return!1}retrieve(t){return null}shouldReuseRoute(t,r){return t.routeConfig===r.routeConfig}}let J2=(()=>{var e;class t extends X2{}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const Vl=new x("",{providedIn:"root",factory:()=>({})});let K2=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:function(){return A(eL)},providedIn:"root"}),t})(),eL=(()=>{var e;class t{shouldProcessUrl(n){return!0}extract(n){return n}merge(n,o){return n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();var gs=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(gs||{});function Ub(e,t){e.events.pipe(Xt(r=>r instanceof Fn||r instanceof ls||r instanceof xl||r instanceof No),ee(r=>r instanceof Fn||r instanceof No?gs.COMPLETE:r instanceof ls&&(0===r.code||1===r.code)?gs.REDIRECTING:gs.FAILED),Xt(r=>r!==gs.REDIRECTING),ar(1)).subscribe(()=>{t()})}function tL(e){throw e}function nL(e,t,r){return t.parse("/")}const rL={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},oL={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let St=(()=>{var e;class t{get navigationId(){return this.navigationTransitions.navigationId}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.location.getState()?.\u0275routerPageId??this.currentPageId}get events(){return this._events}constructor(){this.disposed=!1,this.currentPageId=0,this.console=A(CC),this.isNgZoneEnabled=!1,this._events=new Vt,this.options=A(Vl,{optional:!0})||{},this.pendingTasks=A(Xa),this.errorHandler=this.options.errorHandler||tL,this.malformedUriErrorHandler=this.options.malformedUriErrorHandler||nL,this.navigated=!1,this.lastSuccessfulId=-1,this.urlHandlingStrategy=A(K2),this.routeReuseStrategy=A(Q2),this.titleStrategy=A(Hb),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.config=A(Lo,{optional:!0})?.flat()??[],this.navigationTransitions=A(Ll),this.urlSerializer=A(rs),this.location=A(hf),this.componentInputBindingEnabled=!!A(Nl,{optional:!0}),this.eventsSubscription=new gt,this.isNgZoneEnabled=A(ge)instanceof ge&&ge.isInAngularZone(),this.resetConfig(this.config),this.currentUrlTree=new Ro,this.rawUrlTree=this.currentUrlTree,this.browserUrlTree=this.currentUrlTree,this.routerState=_b(0,null),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe(n=>{this.lastSuccessfulId=n.id,this.currentPageId=this.browserPageId},n=>{this.console.warn(`Unhandled Navigation Error: ${n}`)}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const n=this.navigationTransitions.events.subscribe(o=>{try{const{currentTransition:i}=this.navigationTransitions;if(null===i)return void(Bb(o)&&this._events.next(o));if(o instanceof Al)jb(i.source)&&(this.browserUrlTree=i.extractedUrl);else if(o instanceof No)this.rawUrlTree=i.rawUrl;else if(o instanceof gb){if("eager"===this.urlUpdateStrategy){if(!i.extras.skipLocationChange){const s=this.urlHandlingStrategy.merge(i.urlAfterRedirects,i.rawUrl);this.setBrowserUrl(s,i)}this.browserUrlTree=i.urlAfterRedirects}}else if(o instanceof Zf)this.currentUrlTree=i.urlAfterRedirects,this.rawUrlTree=this.urlHandlingStrategy.merge(i.urlAfterRedirects,i.rawUrl),this.routerState=i.targetRouterState,"deferred"===this.urlUpdateStrategy&&(i.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,i),this.browserUrlTree=i.urlAfterRedirects);else if(o instanceof ls)0!==o.code&&1!==o.code&&(this.navigated=!0),(3===o.code||2===o.code)&&this.restoreHistory(i);else if(o instanceof Yf){const s=this.urlHandlingStrategy.merge(o.url,i.currentRawUrl),a={skipLocationChange:i.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||jb(i.source)};this.scheduleNavigation(s,as,null,a,{resolve:i.resolve,reject:i.reject,promise:i.promise})}o instanceof xl&&this.restoreHistory(i,!0),o instanceof Fn&&(this.navigated=!0),Bb(o)&&this._events.next(o)}catch(i){this.navigationTransitions.transitionAbortSubject.next(i)}});this.eventsSubscription.add(n)}resetRootComponentType(n){this.routerState.root.component=n,this.navigationTransitions.rootComponentType=n}initialNavigation(){if(this.setUpLocationChangeListener(),!this.navigationTransitions.hasRequestedNavigation){const n=this.location.getState();this.navigateToSyncWithBrowser(this.location.path(!0),as,n)}}setUpLocationChangeListener(){this.locationSubscription||(this.locationSubscription=this.location.subscribe(n=>{const o="popstate"===n.type?"popstate":"hashchange";"popstate"===o&&setTimeout(()=>{this.navigateToSyncWithBrowser(n.url,o,n.state)},0)}))}navigateToSyncWithBrowser(n,o,i){const s={replaceUrl:!0},a=i?.navigationId?i:null;if(i){const c={...i};delete c.navigationId,delete c.\u0275routerPageId,0!==Object.keys(c).length&&(s.state=c)}const l=this.parseUrl(n);this.scheduleNavigation(l,o,a,s)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(n){this.config=n.map(rh),this.navigated=!1,this.lastSuccessfulId=-1}ngOnDestroy(){this.dispose()}dispose(){this.navigationTransitions.complete(),this.locationSubscription&&(this.locationSubscription.unsubscribe(),this.locationSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(n,o={}){const{relativeTo:i,queryParams:s,fragment:a,queryParamsHandling:l,preserveFragment:c}=o,u=c?this.currentUrlTree.fragment:a;let g,d=null;switch(l){case"merge":d={...this.currentUrlTree.queryParams,...s};break;case"preserve":d=this.currentUrlTree.queryParams;break;default:d=s||null}null!==d&&(d=this.removeEmptyProps(d));try{g=lb(i?i.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof n[0]||!n[0].startsWith("/"))&&(n=[]),g=this.currentUrlTree.root}return cb(g,n,d,u??null)}navigateByUrl(n,o={skipLocationChange:!1}){const i=Mr(n)?n:this.parseUrl(n),s=this.urlHandlingStrategy.merge(i,this.rawUrlTree);return this.scheduleNavigation(s,as,null,o)}navigate(n,o={skipLocationChange:!1}){return function iL(e){for(let t=0;t{const s=n[i];return null!=s&&(o[i]=s),o},{})}scheduleNavigation(n,o,i,s,a){if(this.disposed)return Promise.resolve(!1);let l,c,u;a?(l=a.resolve,c=a.reject,u=a.promise):u=new Promise((g,m)=>{l=g,c=m});const d=this.pendingTasks.add();return Ub(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(d))}),this.navigationTransitions.handleNavigationRequest({source:o,restoredState:i,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,currentBrowserUrl:this.browserUrlTree,rawUrl:n,extras:s,resolve:l,reject:c,promise:u,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),u.catch(g=>Promise.reject(g))}setBrowserUrl(n,o){const i=this.urlSerializer.serialize(n);if(this.location.isCurrentPathEqualTo(i)||o.extras.replaceUrl){const a={...o.extras.state,...this.generateNgRouterState(o.id,this.browserPageId)};this.location.replaceState(i,"",a)}else{const s={...o.extras.state,...this.generateNgRouterState(o.id,this.browserPageId+1)};this.location.go(i,"",s)}}restoreHistory(n,o=!1){if("computed"===this.canceledNavigationResolution){const s=this.currentPageId-this.browserPageId;0!==s?this.location.historyGo(s):this.currentUrlTree===this.getCurrentNavigation()?.finalUrl&&0===s&&(this.resetState(n),this.browserUrlTree=n.currentUrlTree,this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(o&&this.resetState(n),this.resetUrlToCurrentUrlTree())}resetState(n){this.routerState=n.currentRouterState,this.currentUrlTree=n.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,n.rawUrl)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(n,o){return"computed"===this.canceledNavigationResolution?{navigationId:n,\u0275routerPageId:o}:{navigationId:n}}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();function Bb(e){return!(e instanceof Zf||e instanceof Yf)}let pn=(()=>{var e;class t{constructor(n,o,i,s,a,l){this.router=n,this.route=o,this.tabIndexAttribute=i,this.renderer=s,this.el=a,this.locationStrategy=l,this.href=null,this.commands=null,this.onChanges=new Vt,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const c=a.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===c||"area"===c,this.isAnchorElement?this.subscription=n.events.subscribe(u=>{u instanceof Fn&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(n){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",n)}ngOnChanges(n){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(n){null!=n?(this.commands=Array.isArray(n)?n:[n],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(n,o,i,s,a){return!!(null===this.urlTree||this.isAnchorElement&&(0!==n||o||i||s||a||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const n=null===this.href?null:function Sm(e,t,r){return function VI(e,t){return"src"===t&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===t&&("base"===e||"link"===e)?Im:ro}(t,r)(e)}(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",n)}applyAttributeValue(n,o){const i=this.renderer,s=this.el.nativeElement;null!==o?i.setAttribute(s,n,o):i.removeAttribute(s,n)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(St),I(Ir),function Js(e){return function oM(e,t){if("class"===t)return e.classes;if("style"===t)return e.styles;const r=e.attrs;if(r){const n=r.length;let o=0;for(;o{var e;class t{get isActive(){return this._isActive}constructor(n,o,i,s,a){this.router=n,this.element=o,this.renderer=i,this.cdr=s,this.link=a,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new Ee,this.routerEventsSubscription=n.events.subscribe(l=>{l instanceof Fn&&this.update()})}ngAfterContentInit(){V(this.links.changes,V(null)).pipe(Rr()).subscribe(n=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const n=[...this.links.toArray(),this.link].filter(o=>!!o).map(o=>o.onChanges);this.linkInputChangesSubscription=Ne(n).pipe(Rr()).subscribe(o=>{this._isActive!==this.isLinkActive(this.router)(o)&&this.update()})}set routerLinkActive(n){const o=Array.isArray(n)?n:n.split(" ");this.classes=o.filter(i=>!!i)}ngOnChanges(n){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const n=this.hasActiveLinks();this._isActive!==n&&(this._isActive=n,this.cdr.markForCheck(),this.classes.forEach(o=>{n?this.renderer.addClass(this.element.nativeElement,o):this.renderer.removeClass(this.element.nativeElement,o)}),n&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(n))})}isLinkActive(n){const o=function sL(e){return!!e.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return i=>!!i.urlTree&&n.isActive(i.urlTree,o)}hasActiveLinks(){const n=this.isLinkActive(this.router);return this.link&&n(this.link)||this.links.some(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(St),I(bt),I(Mn),I(tl),I(pn,8))},e.\u0275dir=B({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(n,o,i){if(1&n&&K_(i,pn,5),2&n){let s;J_(s=function eC(){return function zR(e,t){return e[nn].queries[t].queryList}(M(),dg())}())&&(o.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Nt]}),t})();class Gb{}let aL=(()=>{var e;class t{constructor(n,o,i,s,a){this.router=n,this.injector=i,this.preloadingStrategy=s,this.loader=a}setUpPreloading(){this.subscription=this.router.events.pipe(Xt(n=>n instanceof Fn),Ao(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(n,o){const i=[];for(const s of o){s.providers&&!s._injector&&(s._injector=Od(s.providers,n,`Route: ${s.path}`));const a=s._injector??n,l=s._loadedInjector??a;(s.loadChildren&&!s._loadedRoutes&&void 0===s.canLoad||s.loadComponent&&!s._loadedComponent)&&i.push(this.preloadConfig(a,s)),(s.children||s._loadedRoutes)&&i.push(this.processRoutes(l,s.children??s._loadedRoutes))}return Ne(i).pipe(Rr())}preloadConfig(n,o){return this.preloadingStrategy.preload(o,()=>{let i;i=o.loadChildren&&void 0===o.canLoad?this.loader.loadChildren(n,o):V(null);const s=i.pipe(Ve(a=>null===a?V(void 0):(o._loadedRoutes=a.routes,o._loadedInjector=a.injector,this.processRoutes(a.injector??n,a.routes))));return o.loadComponent&&!o._loadedComponent?Ne([s,this.loader.loadComponent(o)]).pipe(Rr()):s})}}return(e=t).\u0275fac=function(n){return new(n||e)(F(St),F(DC),F(Dt),F(Gb),F(ah))},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:"root"}),t})();const lh=new x("");let zb=(()=>{var e;class t{constructor(n,o,i,s,a={}){this.urlSerializer=n,this.transitions=o,this.viewportScroller=i,this.zone=s,this.options=a,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},a.scrollPositionRestoration=a.scrollPositionRestoration||"disabled",a.anchorScrolling=a.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof Al?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=n.navigationTrigger,this.restoredId=n.restoredState?n.restoredState.navigationId:0):n instanceof Fn?(this.lastId=n.id,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.urlAfterRedirects).fragment)):n instanceof No&&0===n.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(n,this.urlSerializer.parse(n.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(n=>{n instanceof mb&&(n.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(n.position):n.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(n.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(n,o){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new mb(n,"popstate"===this.lastSource?this.store[this.restoredId]:null,o))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}}return(e=t).\u0275fac=function(n){!function pv(){throw new Error("invalid")}()},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function Vn(e,t){return{\u0275kind:e,\u0275providers:t}}function Wb(){const e=A(wt);return t=>{const r=e.get(Io);if(t!==r.components[0])return;const n=e.get(St),o=e.get(Zb);1===e.get(ch)&&n.initialNavigation(),e.get(Yb,null,Y.Optional)?.setUpPreloading(),e.get(lh,null,Y.Optional)?.init(),n.resetRootComponentType(r.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}const Zb=new x("",{factory:()=>new Vt}),ch=new x("",{providedIn:"root",factory:()=>1}),Yb=new x("");function dL(e){return Vn(0,[{provide:Yb,useExisting:aL},{provide:Gb,useExisting:e}])}const Qb=new x("ROUTER_FORROOT_GUARD"),hL=[hf,{provide:rs,useClass:$f},St,cs,{provide:Ir,useFactory:function qb(e){return e.routerState.root},deps:[St]},ah,[]];function pL(){return new TC("Router",St)}let Xb=(()=>{var e;class t{constructor(n){}static forRoot(n,o){return{ngModule:t,providers:[hL,[],{provide:Lo,multi:!0,useValue:n},{provide:Qb,useFactory:yL,deps:[[St,new ta,new na]]},{provide:Vl,useValue:o||{}},o?.useHash?{provide:Dr,useClass:MO}:{provide:Dr,useClass:rD},{provide:lh,useFactory:()=>{const e=A($P),t=A(ge),r=A(Vl),n=A(Ll),o=A(rs);return r.scrollOffset&&e.setOffset(r.scrollOffset),new zb(o,n,e,t,r)}},o?.preloadingStrategy?dL(o.preloadingStrategy).\u0275providers:[],{provide:TC,multi:!0,useFactory:pL},o?.initialNavigation?_L(o):[],o?.bindToComponentInputs?Vn(8,[wb,{provide:Nl,useExisting:wb}]).\u0275providers:[],[{provide:Jb,useFactory:Wb},{provide:tf,multi:!0,useExisting:Jb}]]}}static forChild(n){return{ngModule:t,providers:[{provide:Lo,multi:!0,useValue:n}]}}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Qb,8))},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})();function yL(e){return"guarded"}function _L(e){return["disabled"===e.initialNavigation?Vn(3,[{provide:Wd,multi:!0,useFactory:()=>{const t=A(St);return()=>{t.setUpLocationChangeListener()}}},{provide:ch,useValue:2}]).\u0275providers:[],"enabledBlocking"===e.initialNavigation?Vn(2,[{provide:ch,useValue:0},{provide:Wd,multi:!0,deps:[wt],useFactory:t=>{const r=t.get(wO,Promise.resolve());return()=>r.then(()=>new Promise(n=>{const o=t.get(St),i=t.get(Zb);Ub(o,()=>{n(!0)}),t.get(Ll).afterPreactivation=()=>(n(!0),i.closed?V(void 0):i),o.initialNavigation()}))}}]).\u0275providers:[]]}const Jb=new x(""),DL=function(){return["/pro"]};let bL=(()=>{var e;class t{constructor(){this.years=(new Date).getFullYear()-2009}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-footer"]],standalone:!0,features:[Mt],decls:94,vars:3,consts:[[1,"container-fluid","mt-5"],[1,"p-5"],[1,"container"],[1,"row"],[1,"col-xs-12","col-md-4","text-center"],["src","resources/portrait_600.jpg","alt","Portrait",1,"img-fluid","img-thumbnail","mb-5",2,"max-height","300px"],[1,"col-xs-12","col-md-8"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[3,"routerLink"],[1,"col-md-3","offset-md-2"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ","target","_blank"],[1,"col-md-4","mt-4","mt-md-0"],["href","https://www.nuget.org/packages/ReportGenerator","target","_blank"],["href","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool","target","_blank"],["href","https://www.nuget.org/packages/ReportGenerator.Core","target","_blank"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col-md-3","mt-4","mt-md-0"],[1,"fa-brands","fa-github"],["href","https://twitter.com/danielpalme","target","_blank"],[1,"fa-brands","fa-twitter"],["href","https://www.palmmedia.de/Privacy","target","_blank"],["href","https://www.palmmedia.de/Imprint","target","_blank"]],template:function(n,o){1&n&&(h(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),v(5,"img",5),p(),h(6,"div",6)(7,"h2"),f(8,"Who's behind"),p(),h(9,"p"),f(10,"My name is Daniel Palme. I'm a software developer from Germany."),p(),h(11,"p"),f(12," Back in 2009 I wanted to create a code coverage report based on "),h(13,"i"),f(14,"PartCover"),p(),f(15," files."),v(16,"br"),f(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),v(18,"br"),f(19),h(20,"i"),f(21,"ReportGenerator"),p(),f(22,". "),p(),h(23,"p"),f(24," You can support the ongoing maintenance by becoming a "),v(25,"i",7),f(26,"\xa0"),h(27,"a",8),f(28,"GitHub sponsor"),p(),f(29," or by buying a "),h(30,"a",9),f(31,"PRO license"),p(),f(32,". "),p()()()()(),h(33,"div",2)(34,"div",3),v(35,"hr"),p()(),h(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),f(42,"GitHub"),p()(),h(43,"a",11),f(44,"Source code"),p(),v(45,"br"),h(46,"a",12),f(47,"Wiki"),p(),v(48,"br"),h(49,"a",13),f(50,"FAQ"),p()(),h(51,"div",14)(52,"p")(53,"b"),f(54,"Download"),p()(),h(55,"i"),f(56,"NuGet"),p(),v(57,"br"),h(58,"a",15),f(59,"ReportGenerator"),p(),v(60,"br"),h(61,"a",16),f(62,"dotnet-reportgenerator-globaltool"),p(),v(63,"br"),h(64,"a",17),f(65,"ReportGenerator.Core"),p(),v(66,"br")(67,"br"),h(68,"i"),f(69,"Integration"),p(),v(70,"br"),h(71,"a",18),f(72,"GitHub actions"),p(),v(73,"br"),h(74,"a",19),f(75,"Azure DevOps"),p()(),h(76,"div",20)(77,"p")(78,"b"),f(79,"Community"),p()(),h(80,"a",11),v(81,"i",21),f(82," GitHub"),p(),v(83,"br"),h(84,"a",22),v(85,"i",23),f(86," Twitter"),p(),v(87,"br")(88,"br"),h(89,"a",24),f(90,"Privacy"),p(),v(91,"br"),h(92,"a",25),f(93,"Imprint"),p()()()()()()),2&n&&(_(19),xn(" Fast forward ",o.years," years, I'm still maintaining "),_(11),w("routerLink",K(2,DL)))},dependencies:[pn],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}"]}),t})();const Kb=function(){return["/"]},wL=function(e){return{show:e}},Vo=function(){return["link-active"]},ew=function(){return{exact:!0}},EL=function(){return["/features"]},ML=function(){return["/getstarted"]},IL=function(){return["/usage"]},SL=function(){return["/contact"]},TL=function(){return["/pro"]};let AL=(()=>{var e;class t{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[Mt],decls:42,vars:34,consts:[[1,"mb-5"],[1,"navbar","fixed-top","navbar-expand-sm","navbar-toggleable-sm","navbar-light","bg-white","border-bottom","box-shadow","mb-3"],[1,"container-xxl","flex-wrap","flex-md-nowrap"],[1,"navbar-brand",3,"routerLink"],["src","resources/logo.svg","height","40","alt","Icon",1,"me-2"],[1,"d-sm-none","d-md-none","d-lg-inline","ms-2"],["type","button","data-toggle","collapse","data-target",".navbar-collapse","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse","collapse","d-sm-inline-flex",3,"ngClass"],[1,"navbar-nav","flex-grow"],[1,"nav-item",3,"routerLinkActive","routerLinkActiveOptions"],[1,"nav-link","text-dark",3,"routerLink"],[1,"nav-item",3,"routerLinkActive"],[1,"nav-link","text-dark","text-nowrap",3,"routerLink"],[1,"pro-button"],[1,"d-md-none","text-secondary"],[1,"navbar-nav","flex-row","flex-wrap","ms-md-auto","d-sm-none","d-md-flex"],[1,"nav-item","col-6","col-md-auto"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank","title","GitHub",1,"nav-link","text-dark"],[1,"fa-brands","fa-github"],[1,"d-inline","d-sm-none","ms-2"],["href","https://twitter.com/danielpalme","target","_blank","title","Twitter",1,"nav-link","text-dark"],[1,"fa-brands","fa-twitter"]],template:function(n,o){1&n&&(h(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),v(4,"img",4),h(5,"span",5),f(6,"ReportGenerator"),p()(),h(7,"button",6),R("click",function(){return o.toggle()}),v(8,"span",7),p(),h(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),f(13,"Home"),p()(),h(14,"li",10)(15,"a",11),f(16,"Features"),p()(),h(17,"li",12)(18,"a",13),f(19,"Get started"),p()(),h(20,"li",12)(21,"a",11),f(22,"Usage"),p()(),h(23,"li",12)(24,"a",11),f(25,"Contact"),p()(),h(26,"li",12)(27,"a",11)(28,"span",14),f(29,"PRO"),p()()()(),v(30,"hr",15),h(31,"ul",16)(32,"li",17)(33,"a",18),v(34,"i",19),h(35,"span",20),f(36,"GitHub"),p()()(),h(37,"li",17)(38,"a",21),v(39,"i",22),h(40,"span",20),f(41,"Twitter"),p()()()()()()()()),2&n&&(_(3),w("routerLink",K(17,Kb)),_(4),zt("aria-expanded",o.isExpanded),_(2),w("ngClass",$i(18,wL,o.isExpanded)),_(2),w("routerLinkActive",K(20,Vo))("routerLinkActiveOptions",K(21,ew)),_(1),w("routerLink",K(22,Kb)),_(2),w("routerLinkActive",K(23,Vo))("routerLinkActiveOptions",K(24,ew)),_(1),w("routerLink",K(25,EL)),_(2),w("routerLinkActive",K(26,Vo)),_(1),w("routerLink",K(27,ML)),_(2),w("routerLinkActive",K(28,Vo)),_(1),w("routerLink",K(29,IL)),_(2),w("routerLinkActive",K(30,Vo)),_(1),w("routerLink",K(31,SL)),_(2),w("routerLinkActive",K(32,Vo)),_(1),w("routerLink",K(33,TL)))},dependencies:[pn,ml,$b],styles:[".box-shadow[_ngcontent-%COMP%]{box-shadow:0 .25rem .75rem #0000000d}@keyframes _ngcontent-%COMP%_pro-button-animation{0%{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}50%{background-color:vvar(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}to{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}}.pro-button[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_pro-button-animation;animation-duration:2s;animation-iteration-count:2}.pro-button[_ngcontent-%COMP%]:hover, .link-active[_ngcontent-%COMP%] .pro-button[_ngcontent-%COMP%]{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}.nav-link[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500}.nav-link[_ngcontent-%COMP%]:hover{text-decoration:underline;text-underline-offset:2px}.link-active[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--rg-primary-hover-color)!important;font-weight:400}"]}),t})(),xL=(()=>{var e;class t{constructor(n,o,i){this.dom=n,this.router=o,this.activatedRoute=i}ngOnInit(){this.router.events.pipe(Xt(n=>n instanceof Fn),ee(()=>this.activatedRoute),ee(n=>{for(;n.firstChild;)n=n.firstChild;return n}),Xt(n=>"primary"===n.outlet),Ve(n=>n.data)).subscribe(n=>{const o=`${window.location.protocol}//${window.location.hostname}`;this.updateCanonicalUrl(n.canonical?o+n.canonical:o+this.router.url)})}updateCanonicalUrl(n){const o=this.dom.getElementsByTagName("head")[0];var i=this.dom.querySelector("link[rel='canonical']")||null;null==i&&(i=this.dom.createElement("link"),o.appendChild(i)),i.setAttribute("rel","canonical"),i.setAttribute("href",n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(pt),I(St),I(Ir))},e.\u0275cmp=vt({type:e,selectors:[["app-root"]],standalone:!0,features:[Mt],decls:3,vars:0,template:function(n,o){1&n&&v(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[AL,th,bL],encapsulation:2}),t})(),tw=(()=>{var e;class t{constructor(n,o){this._renderer=n,this._elementRef=o,this.onChange=i=>{},this.onTouched=()=>{}}setProperty(n,o){this._renderer.setProperty(this._elementRef.nativeElement,n,o)}registerOnTouched(n){this.onTouched=n}registerOnChange(n){this.onChange=n}setDisabledState(n){this.setProperty("disabled",n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt))},e.\u0275dir=B({type:e}),t})(),Sr=(()=>{var e;class t extends tw{}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,features:[le]}),t})();const gn=new x("NgValueAccessor"),OL={provide:gn,useExisting:fe(()=>jo),multi:!0},kL=new x("CompositionEventMode");let jo=(()=>{var e;class t extends tw{constructor(n,o,i){super(n,o),this._compositionMode=i,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function PL(){const e=Xn()?Xn().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(n){this.setProperty("value",n??"")}_handleInput(n){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(n)}_compositionStart(){this._composing=!0}_compositionEnd(n){this._composing=!1,this._compositionMode&&this.onChange(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt),I(kL,8))},e.\u0275dir=B({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(n,o){1&n&&R("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[De([OL]),le]}),t})();function er(e){return null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}const Ye=new x("NgValidators"),tr=new x("NgAsyncValidators"),FL=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;function sw(e){return er(e.value)?{required:!0}:null}function lw(e){return er(e.value)||FL.test(e.value)?null:{email:!0}}function jl(e){return null}function fw(e){return null!=e}function hw(e){return Fi(e)?Ne(e):e}function pw(e){let t={};return e.forEach(r=>{t=null!=r?{...t,...r}:t}),0===Object.keys(t).length?null:t}function gw(e,t){return t.map(r=>r(e))}function mw(e){return e.map(t=>function LL(e){return!e.validate}(t)?t:r=>t.validate(r))}function uh(e){return null!=e?function vw(e){if(!e)return null;const t=e.filter(fw);return 0==t.length?null:function(r){return pw(gw(r,t))}}(mw(e)):null}function dh(e){return null!=e?function yw(e){if(!e)return null;const t=e.filter(fw);return 0==t.length?null:function(r){return function RL(...e){const t=op(e),{args:r,keys:n}=SD(e),o=new Ie(i=>{const{length:s}=r;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=g},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(n?AD(n,a):a),i.complete())}))}});return t?o.pipe(TD(t)):o}(gw(r,t).map(hw)).pipe(ee(pw))}}(mw(e)):null}function _w(e,t){return null===e?[t]:Array.isArray(e)?[...e,t]:[e,t]}function fh(e){return e?Array.isArray(e)?e:[e]:[]}function Hl(e,t){return Array.isArray(e)?e.includes(t):e===t}function bw(e,t){const r=fh(t);return fh(e).forEach(o=>{Hl(r,o)||r.push(o)}),r}function ww(e,t){return fh(t).filter(r=>!Hl(e,r))}class Ew{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(t){this._rawValidators=t||[],this._composedValidatorFn=uh(this._rawValidators)}_setAsyncValidators(t){this._rawAsyncValidators=t||[],this._composedAsyncValidatorFn=dh(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(t){this._onDestroyCallbacks.push(t)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(t=>t()),this._onDestroyCallbacks=[]}reset(t=void 0){this.control&&this.control.reset(t)}hasError(t,r){return!!this.control&&this.control.hasError(t,r)}getError(t,r){return this.control?this.control.getError(t,r):null}}class ot extends Ew{get formDirective(){return null}get path(){return null}}class nr extends Ew{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class Mw{constructor(t){this._cd=t}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Ul=(()=>{var e;class t extends Mw{constructor(n){super(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(nr,2))},e.\u0275dir=B({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(n,o){2&n&&Ba("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[le]}),t})(),Bl=(()=>{var e;class t extends Mw{constructor(n){super(n)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ot,10))},e.\u0275dir=B({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(n,o){2&n&&Ba("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)("ng-submitted",o.isSubmitted)},features:[le]}),t})();const ms="VALID",Gl="INVALID",Ho="PENDING",vs="DISABLED";function gh(e){return(zl(e)?e.validators:e)||null}function mh(e,t){return(zl(t)?t.asyncValidators:e)||null}function zl(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class Aw{constructor(t,r){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(t),this._assignAsyncValidators(r)}get validator(){return this._composedValidatorFn}set validator(t){this._rawValidators=this._composedValidatorFn=t}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(t){this._rawAsyncValidators=this._composedAsyncValidatorFn=t}get parent(){return this._parent}get valid(){return this.status===ms}get invalid(){return this.status===Gl}get pending(){return this.status==Ho}get disabled(){return this.status===vs}get enabled(){return this.status!==vs}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(t){this._assignValidators(t)}setAsyncValidators(t){this._assignAsyncValidators(t)}addValidators(t){this.setValidators(bw(t,this._rawValidators))}addAsyncValidators(t){this.setAsyncValidators(bw(t,this._rawAsyncValidators))}removeValidators(t){this.setValidators(ww(t,this._rawValidators))}removeAsyncValidators(t){this.setAsyncValidators(ww(t,this._rawAsyncValidators))}hasValidator(t){return Hl(this._rawValidators,t)}hasAsyncValidator(t){return Hl(this._rawAsyncValidators,t)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(t={}){this.touched=!0,this._parent&&!t.onlySelf&&this._parent.markAsTouched(t)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(t=>t.markAllAsTouched())}markAsUntouched(t={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}markAsDirty(t={}){this.pristine=!1,this._parent&&!t.onlySelf&&this._parent.markAsDirty(t)}markAsPristine(t={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(r=>{r.markAsPristine({onlySelf:!0})}),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}markAsPending(t={}){this.status=Ho,!1!==t.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!t.onlySelf&&this._parent.markAsPending(t)}disable(t={}){const r=this._parentMarkedDirty(t.onlySelf);this.status=vs,this.errors=null,this._forEachChild(n=>{n.disable({...t,onlySelf:!0})}),this._updateValue(),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...t,skipPristineCheck:r}),this._onDisabledChange.forEach(n=>n(!0))}enable(t={}){const r=this._parentMarkedDirty(t.onlySelf);this.status=ms,this._forEachChild(n=>{n.enable({...t,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent}),this._updateAncestors({...t,skipPristineCheck:r}),this._onDisabledChange.forEach(n=>n(!1))}_updateAncestors(t){this._parent&&!t.onlySelf&&(this._parent.updateValueAndValidity(t),t.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(t){this._parent=t}getRawValue(){return this.value}updateValueAndValidity(t={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===ms||this.status===Ho)&&this._runAsyncValidator(t.emitEvent)),!1!==t.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!t.onlySelf&&this._parent.updateValueAndValidity(t)}_updateTreeValidity(t={emitEvent:!0}){this._forEachChild(r=>r._updateTreeValidity(t)),this.updateValueAndValidity({onlySelf:!0,emitEvent:t.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?vs:ms}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(t){if(this.asyncValidator){this.status=Ho,this._hasOwnPendingAsyncValidator=!0;const r=hw(this.asyncValidator(this));this._asyncValidationSubscription=r.subscribe(n=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(n,{emitEvent:t})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(t,r={}){this.errors=t,this._updateControlsErrors(!1!==r.emitEvent)}get(t){let r=t;return null==r||(Array.isArray(r)||(r=r.split(".")),0===r.length)?null:r.reduce((n,o)=>n&&n._find(o),this)}getError(t,r){const n=r?this.get(r):this;return n&&n.errors?n.errors[t]:null}hasError(t,r){return!!this.getError(t,r)}get root(){let t=this;for(;t._parent;)t=t._parent;return t}_updateControlsErrors(t){this.status=this._calculateStatus(),t&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(t)}_initObservables(){this.valueChanges=new Ee,this.statusChanges=new Ee}_calculateStatus(){return this._allControlsDisabled()?vs:this.errors?Gl:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Ho)?Ho:this._anyControlsHaveStatus(Gl)?Gl:ms}_anyControlsHaveStatus(t){return this._anyControls(r=>r.status===t)}_anyControlsDirty(){return this._anyControls(t=>t.dirty)}_anyControlsTouched(){return this._anyControls(t=>t.touched)}_updatePristine(t={}){this.pristine=!this._anyControlsDirty(),this._parent&&!t.onlySelf&&this._parent._updatePristine(t)}_updateTouched(t={}){this.touched=this._anyControlsTouched(),this._parent&&!t.onlySelf&&this._parent._updateTouched(t)}_registerOnCollectionChange(t){this._onCollectionChange=t}_setUpdateStrategy(t){zl(t)&&null!=t.updateOn&&(this._updateOn=t.updateOn)}_parentMarkedDirty(t){return!t&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(t){return null}_assignValidators(t){this._rawValidators=Array.isArray(t)?t.slice():t,this._composedValidatorFn=function UL(e){return Array.isArray(e)?uh(e):e||null}(this._rawValidators)}_assignAsyncValidators(t){this._rawAsyncValidators=Array.isArray(t)?t.slice():t,this._composedAsyncValidatorFn=function BL(e){return Array.isArray(e)?dh(e):e||null}(this._rawAsyncValidators)}}class vh extends Aw{constructor(t,r,n){super(gh(r),mh(n,r)),this.controls=t,this._initObservables(),this._setUpdateStrategy(r),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(t,r){return this.controls[t]?this.controls[t]:(this.controls[t]=r,r.setParent(this),r._registerOnCollectionChange(this._onCollectionChange),r)}addControl(t,r,n={}){this.registerControl(t,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}removeControl(t,r={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}setControl(t,r,n={}){this.controls[t]&&this.controls[t]._registerOnCollectionChange(()=>{}),delete this.controls[t],r&&this.registerControl(t,r),this.updateValueAndValidity({emitEvent:n.emitEvent}),this._onCollectionChange()}contains(t){return this.controls.hasOwnProperty(t)&&this.controls[t].enabled}setValue(t,r={}){(function Tw(e,t,r){e._forEachChild((n,o)=>{if(void 0===r[o])throw new S(1002,"")})})(this,0,t),Object.keys(t).forEach(n=>{(function Sw(e,t,r){const n=e.controls;if(!(t?Object.keys(n):n).length)throw new S(1e3,"");if(!n[r])throw new S(1001,"")})(this,!0,n),this.controls[n].setValue(t[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r)}patchValue(t,r={}){null!=t&&(Object.keys(t).forEach(n=>{const o=this.controls[n];o&&o.patchValue(t[n],{onlySelf:!0,emitEvent:r.emitEvent})}),this.updateValueAndValidity(r))}reset(t={},r={}){this._forEachChild((n,o)=>{n.reset(t[o],{onlySelf:!0,emitEvent:r.emitEvent})}),this._updatePristine(r),this._updateTouched(r),this.updateValueAndValidity(r)}getRawValue(){return this._reduceChildren({},(t,r,n)=>(t[n]=r.getRawValue(),t))}_syncPendingControls(){let t=this._reduceChildren(!1,(r,n)=>!!n._syncPendingControls()||r);return t&&this.updateValueAndValidity({onlySelf:!0}),t}_forEachChild(t){Object.keys(this.controls).forEach(r=>{const n=this.controls[r];n&&t(n,r)})}_setUpControls(){this._forEachChild(t=>{t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(t){for(const[r,n]of Object.entries(this.controls))if(this.contains(r)&&t(n))return!0;return!1}_reduceValue(){return this._reduceChildren({},(r,n,o)=>((n.enabled||this.disabled)&&(r[o]=n.value),r))}_reduceChildren(t,r){let n=t;return this._forEachChild((o,i)=>{n=r(n,o,i)}),n}_allControlsDisabled(){for(const t of Object.keys(this.controls))if(this.controls[t].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(t){return this.controls.hasOwnProperty(t)?this.controls[t]:null}}const Uo=new x("CallSetDisabledState",{providedIn:"root",factory:()=>ql}),ql="always";function ys(e,t,r=ql){yh(e,t),t.valueAccessor.writeValue(e.value),(e.disabled||"always"===r)&&t.valueAccessor.setDisabledState?.(e.disabled),function zL(e,t){t.valueAccessor.registerOnChange(r=>{e._pendingValue=r,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&xw(e,t)})}(e,t),function WL(e,t){const r=(n,o)=>{t.valueAccessor.writeValue(n),o&&t.viewToModelUpdate(n)};e.registerOnChange(r),t._registerOnDestroy(()=>{e._unregisterOnChange(r)})}(e,t),function qL(e,t){t.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&xw(e,t),"submit"!==e.updateOn&&e.markAsTouched()})}(e,t),function GL(e,t){if(t.valueAccessor.setDisabledState){const r=n=>{t.valueAccessor.setDisabledState(n)};e.registerOnDisabledChange(r),t._registerOnDestroy(()=>{e._unregisterOnDisabledChange(r)})}}(e,t)}function Yl(e,t){e.forEach(r=>{r.registerOnValidatorChange&&r.registerOnValidatorChange(t)})}function yh(e,t){const r=function Cw(e){return e._rawValidators}(e);null!==t.validator?e.setValidators(_w(r,t.validator)):"function"==typeof r&&e.setValidators([r]);const n=function Dw(e){return e._rawAsyncValidators}(e);null!==t.asyncValidator?e.setAsyncValidators(_w(n,t.asyncValidator)):"function"==typeof n&&e.setAsyncValidators([n]);const o=()=>e.updateValueAndValidity();Yl(t._rawValidators,o),Yl(t._rawAsyncValidators,o)}function xw(e,t){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),t.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}const JL={provide:ot,useExisting:fe(()=>Bo)},_s=(()=>Promise.resolve())();let Bo=(()=>{var e;class t extends ot{constructor(n,o,i){super(),this.callSetDisabledState=i,this.submitted=!1,this._directives=new Set,this.ngSubmit=new Ee,this.form=new vh({},uh(n),dh(o))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(n){_s.then(()=>{const o=this._findContainer(n.path);n.control=o.registerControl(n.name,n.control),ys(n.control,n,this.callSetDisabledState),n.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(n)})}getControl(n){return this.form.get(n.path)}removeControl(n){_s.then(()=>{const o=this._findContainer(n.path);o&&o.removeControl(n.name),this._directives.delete(n)})}addFormGroup(n){_s.then(()=>{const o=this._findContainer(n.path),i=new vh({});(function Rw(e,t){yh(e,t)})(i,n),o.registerControl(n.name,i),i.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(n){_s.then(()=>{const o=this._findContainer(n.path);o&&o.removeControl(n.name)})}getFormGroup(n){return this.form.get(n.path)}updateModel(n,o){_s.then(()=>{this.form.get(n.path).setValue(o)})}setValue(n){this.control.setValue(n)}onSubmit(n){return this.submitted=!0,function Nw(e,t){e._syncPendingControls(),t.forEach(r=>{const n=r.control;"submit"===n.updateOn&&n._pendingChange&&(r.viewToModelUpdate(n._pendingValue),n._pendingChange=!1)})}(this.form,this._directives),this.ngSubmit.emit(n),"dialog"===n?.target?.method}onReset(){this.resetForm()}resetForm(n=void 0){this.form.reset(n),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(n){return n.pop(),n.length?this.form.get(n):this.form}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Ye,10),I(tr,10),I(Uo,8))},e.\u0275dir=B({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(n,o){1&n&&R("submit",function(s){return o.onSubmit(s)})("reset",function(){return o.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[De([JL]),le]}),t})();function Ow(e,t){const r=e.indexOf(t);r>-1&&e.splice(r,1)}function Pw(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const kw=class extends Aw{constructor(t=null,r,n){super(gh(r),mh(n,r)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(t),this._setUpdateStrategy(r),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),zl(r)&&(r.nonNullable||r.initialValueIsDefault)&&(this.defaultValue=Pw(t)?t.value:t)}setValue(t,r={}){this.value=this._pendingValue=t,this._onChange.length&&!1!==r.emitModelToViewChange&&this._onChange.forEach(n=>n(this.value,!1!==r.emitViewToModelChange)),this.updateValueAndValidity(r)}patchValue(t,r={}){this.setValue(t,r)}reset(t=this.defaultValue,r={}){this._applyFormState(t),this.markAsPristine(r),this.markAsUntouched(r),this.setValue(this.value,r),this._pendingChange=!1}_updateValue(){}_anyControls(t){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(t){this._onChange.push(t)}_unregisterOnChange(t){Ow(this._onChange,t)}registerOnDisabledChange(t){this._onDisabledChange.push(t)}_unregisterOnDisabledChange(t){Ow(this._onDisabledChange,t)}_forEachChild(t){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(t){Pw(t)?(this.value=this._pendingValue=t.value,t.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=t}},tV={provide:nr,useExisting:fe(()=>Cs)},Vw=(()=>Promise.resolve())();let Cs=(()=>{var e;class t extends nr{constructor(n,o,i,s,a,l){super(),this._changeDetectorRef=a,this.callSetDisabledState=l,this.control=new kw,this._registered=!1,this.name="",this.update=new Ee,this._parent=n,this._setValidators(o),this._setAsyncValidators(i),this.valueAccessor=function Dh(e,t){if(!t)return null;let r,n,o;return Array.isArray(t),t.forEach(i=>{i.constructor===jo?r=i:function QL(e){return Object.getPrototypeOf(e.constructor)===Sr}(i)?n=i:o=i}),o||n||r||null}(0,s)}ngOnChanges(n){if(this._checkForErrors(),!this._registered||"name"in n){if(this._registered&&(this._checkName(),this.formDirective)){const o=n.name.previousValue;this.formDirective.removeControl({name:o,path:this._getPath(o)})}this._setUpControl()}"isDisabled"in n&&this._updateDisabled(n),function Ch(e,t){if(!e.hasOwnProperty("model"))return!1;const r=e.model;return!!r.isFirstChange()||!Object.is(t,r.currentValue)}(n,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(n){this.viewModel=n,this.update.emit(n)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){ys(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(n){Vw.then(()=>{this.control.setValue(n,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(n){const o=n.isDisabled.currentValue,i=0!==o&&So(o);Vw.then(()=>{i&&!this.control.disabled?this.control.disable():!i&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(n){return this._parent?function Wl(e,t){return[...t.path,e]}(n,this._parent):[n]}}return(e=t).\u0275fac=function(n){return new(n||e)(I(ot,9),I(Ye,10),I(tr,10),I(gn,10),I(tl,8),I(Uo,8))},e.\u0275dir=B({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[De([tV]),le,Nt]}),t})(),Xl=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]}),t})();const rV={provide:gn,useExisting:fe(()=>bh),multi:!0};let Hw=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({}),t})(),oV=(()=>{var e;class t{constructor(){this._accessors=[]}add(n,o){this._accessors.push([n,o])}remove(n){for(let o=this._accessors.length-1;o>=0;--o)if(this._accessors[o][1]===n)return void this._accessors.splice(o,1)}select(n){this._accessors.forEach(o=>{this._isSameGroup(o,n)&&o[1]!==n&&o[1].fireUncheck(n.value)})}_isSameGroup(n,o){return!!n[0].control&&n[0]._parent===o._control._parent&&n[1].name===o.name}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac,providedIn:Hw}),t})(),bh=(()=>{var e;class t extends Sr{constructor(n,o,i,s){super(n,o),this._registry=i,this._injector=s,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=A(Uo,{optional:!0})??ql}ngOnInit(){this._control=this._injector.get(nr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(n){this._state=n===this.value,this.setProperty("checked",this._state)}registerOnChange(n){this._fn=n,this.onChange=()=>{n(this.value),this._registry.select(this)}}setDisabledState(n){(this.setDisabledStateFired||n||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",n),this.setDisabledStateFired=!0}fireUncheck(n){this.writeValue(n)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}}return(e=t).\u0275fac=function(n){return new(n||e)(I(Mn),I(bt),I(oV),I(wt))},e.\u0275dir=B({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(n,o){1&n&&R("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[De([rV]),le]}),t})();const dV={provide:gn,useExisting:fe(()=>Jl),multi:!0};function qw(e,t){return null==e?`${t}`:(t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}let Jl=(()=>{var e;class t extends Sr{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){this.value=n;const i=qw(this._getOptionId(n),n);this.setProperty("value",i)}registerOnChange(n){this.onChange=o=>{this.value=this._getOptionValue(o),n(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(n){for(const o of this._optionMap.keys())if(this._compareWith(this._optionMap.get(o),n))return o;return null}_getOptionValue(n){const o=function fV(e){return e.split(":")[0]}(n);return this._optionMap.has(o)?this._optionMap.get(o):n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(n,o){1&n&&R("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[De([dV]),le]}),t})(),Ww=(()=>{var e;class t{constructor(n,o,i){this._element=n,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption())}set ngValue(n){null!=this._select&&(this._select._optionMap.set(this.id,n),this._setElementValue(qw(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._setElementValue(n),this._select&&this._select.writeValue(this._select.value)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bt),I(Mn),I(Jl,9))},e.\u0275dir=B({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();const hV={provide:gn,useExisting:fe(()=>Ih),multi:!0};function Zw(e,t){return null==e?`${t}`:("string"==typeof t&&(t=`'${t}'`),t&&"object"==typeof t&&(t="Object"),`${e}: ${t}`.slice(0,50))}let Ih=(()=>{var e;class t extends Sr{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(n){this._compareWith=n}writeValue(n){let o;if(this.value=n,Array.isArray(n)){const i=n.map(s=>this._getOptionId(s));o=(s,a)=>{s._setSelected(i.indexOf(a.toString())>-1)}}else o=(i,s)=>{i._setSelected(!1)};this._optionMap.forEach(o)}registerOnChange(n){this.onChange=o=>{const i=[],s=o.selectedOptions;if(void 0!==s){const a=s;for(let l=0;l{var e;class t{constructor(n,o,i){this._element=n,this._renderer=o,this._select=i,this._select&&(this.id=this._select._registerOption(this))}set ngValue(n){null!=this._select&&(this._value=n,this._setElementValue(Zw(this.id,n)),this._select.writeValue(this._select.value))}set value(n){this._select?(this._value=n,this._setElementValue(Zw(this.id,n)),this._select.writeValue(this._select.value)):this._setElementValue(n)}_setElementValue(n){this._renderer.setProperty(this._element.nativeElement,"value",n)}_setSelected(n){this._renderer.setProperty(this._element.nativeElement,"selected",n)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bt),I(Mn),I(Ih,9))},e.\u0275dir=B({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}}),t})();let Tr=(()=>{var e;class t{constructor(){this._validator=jl}ngOnChanges(n){if(this.inputName in n){const o=this.normalizeInput(n[this.inputName].currentValue);this._enabled=this.enabled(o),this._validator=this._enabled?this.createValidator(o):jl,this._onChange&&this._onChange()}}validate(n){return this._validator(n)}registerOnValidatorChange(n){this._onChange=n}enabled(n){return null!=n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275dir=B({type:e,features:[Nt]}),t})();const vV={provide:Ye,useExisting:fe(()=>$o),multi:!0};let $o=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=So,this.createValidator=n=>sw}enabled(n){return n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(n,o){2&n&&zt("required",o._enabled?"":null)},inputs:{required:"required"},features:[De([vV]),le]}),t})();const _V={provide:Ye,useExisting:fe(()=>Kl),multi:!0};let Kl=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=So,this.createValidator=n=>lw}enabled(n){return n}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[De([_V]),le]}),t})();const DV={provide:Ye,useExisting:fe(()=>Sh),multi:!0};let Sh=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=n=>function Qw(e){return"number"==typeof e?e:parseInt(e,10)}(n),this.createValidator=n=>function uw(e){return t=>function rw(e){return null!=e&&"number"==typeof e.length}(t.value)&&t.value.length>e?{maxlength:{requiredLength:e,actualLength:t.value.length}}:null}(n)}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(n,o){2&n&&zt("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[De([DV]),le]}),t})();const bV={provide:Ye,useExisting:fe(()=>Th),multi:!0};let Th=(()=>{var e;class t extends Tr{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=n=>n,this.createValidator=n=>function dw(e){if(!e)return jl;let t,r;return"string"==typeof e?(r="","^"!==e.charAt(0)&&(r+="^"),r+=e,"$"!==e.charAt(e.length-1)&&(r+="$"),t=new RegExp(r)):(r=e.toString(),t=e),n=>{if(er(n.value))return null;const o=n.value;return t.test(o)?null:{pattern:{requiredPattern:r,actualValue:o}}}}(n)}}return(e=t).\u0275fac=function(){let r;return function(o){return(r||(r=$e(e)))(o||e)}}(),e.\u0275dir=B({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(n,o){2&n&&zt("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[De([bV]),le]}),t})(),wV=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[Hw]}),t})(),ec=(()=>{var e;class t{static withConfig(n){return{ngModule:t,providers:[{provide:Uo,useValue:n.callSetDisabledState??ql}]}}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[wV]}),t})();class tc{}class nc{}class mn{constructor(t){this.normalizedNames=new Map,this.lazyUpdate=null,t?"string"==typeof t?this.lazyInit=()=>{this.headers=new Map,t.split("\n").forEach(r=>{const n=r.indexOf(":");if(n>0){const o=r.slice(0,n),i=o.toLowerCase(),s=r.slice(n+1).trim();this.maybeSetNormalizedName(o,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:typeof Headers<"u"&&t instanceof Headers?(this.headers=new Map,t.forEach((r,n)=>{this.setHeaderEntries(n,r)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(t).forEach(([r,n])=>{this.setHeaderEntries(r,n)})}:this.headers=new Map}has(t){return this.init(),this.headers.has(t.toLowerCase())}get(t){this.init();const r=this.headers.get(t.toLowerCase());return r&&r.length>0?r[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(t){return this.init(),this.headers.get(t.toLowerCase())||null}append(t,r){return this.clone({name:t,value:r,op:"a"})}set(t,r){return this.clone({name:t,value:r,op:"s"})}delete(t,r){return this.clone({name:t,value:r,op:"d"})}maybeSetNormalizedName(t,r){this.normalizedNames.has(r)||this.normalizedNames.set(r,t)}init(){this.lazyInit&&(this.lazyInit instanceof mn?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(t=>this.applyUpdate(t)),this.lazyUpdate=null))}copyFrom(t){t.init(),Array.from(t.headers.keys()).forEach(r=>{this.headers.set(r,t.headers.get(r)),this.normalizedNames.set(r,t.normalizedNames.get(r))})}clone(t){const r=new mn;return r.lazyInit=this.lazyInit&&this.lazyInit instanceof mn?this.lazyInit:this,r.lazyUpdate=(this.lazyUpdate||[]).concat([t]),r}applyUpdate(t){const r=t.name.toLowerCase();switch(t.op){case"a":case"s":let n=t.value;if("string"==typeof n&&(n=[n]),0===n.length)return;this.maybeSetNormalizedName(t.name,r);const o=("a"===t.op?this.headers.get(r):void 0)||[];o.push(...n),this.headers.set(r,o);break;case"d":const i=t.value;if(i){let s=this.headers.get(r);if(!s)return;s=s.filter(a=>-1===i.indexOf(a)),0===s.length?(this.headers.delete(r),this.normalizedNames.delete(r)):this.headers.set(r,s)}else this.headers.delete(r),this.normalizedNames.delete(r)}}setHeaderEntries(t,r){const n=(Array.isArray(r)?r:[r]).map(i=>i.toString()),o=t.toLowerCase();this.headers.set(o,n),this.maybeSetNormalizedName(t,o)}forEach(t){this.init(),Array.from(this.normalizedNames.keys()).forEach(r=>t(this.normalizedNames.get(r),this.headers.get(r)))}}class MV{encodeKey(t){return nE(t)}encodeValue(t){return nE(t)}decodeKey(t){return decodeURIComponent(t)}decodeValue(t){return decodeURIComponent(t)}}const SV=/%(\d[a-f0-9])/gi,TV={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function nE(e){return encodeURIComponent(e).replace(SV,(t,r)=>TV[r]??t)}function rc(e){return`${e}`}class rr{constructor(t={}){if(this.updates=null,this.cloneFrom=null,this.encoder=t.encoder||new MV,t.fromString){if(t.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function IV(e,t){const r=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(o=>{const i=o.indexOf("="),[s,a]=-1==i?[t.decodeKey(o),""]:[t.decodeKey(o.slice(0,i)),t.decodeValue(o.slice(i+1))],l=r.get(s)||[];l.push(a),r.set(s,l)}),r}(t.fromString,this.encoder)}else t.fromObject?(this.map=new Map,Object.keys(t.fromObject).forEach(r=>{const n=t.fromObject[r],o=Array.isArray(n)?n.map(rc):[rc(n)];this.map.set(r,o)})):this.map=null}has(t){return this.init(),this.map.has(t)}get(t){this.init();const r=this.map.get(t);return r?r[0]:null}getAll(t){return this.init(),this.map.get(t)||null}keys(){return this.init(),Array.from(this.map.keys())}append(t,r){return this.clone({param:t,value:r,op:"a"})}appendAll(t){const r=[];return Object.keys(t).forEach(n=>{const o=t[n];Array.isArray(o)?o.forEach(i=>{r.push({param:n,value:i,op:"a"})}):r.push({param:n,value:o,op:"a"})}),this.clone(r)}set(t,r){return this.clone({param:t,value:r,op:"s"})}delete(t,r){return this.clone({param:t,value:r,op:"d"})}toString(){return this.init(),this.keys().map(t=>{const r=this.encoder.encodeKey(t);return this.map.get(t).map(n=>r+"="+this.encoder.encodeValue(n)).join("&")}).filter(t=>""!==t).join("&")}clone(t){const r=new rr({encoder:this.encoder});return r.cloneFrom=this.cloneFrom||this,r.updates=(this.updates||[]).concat(t),r}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(t=>this.map.set(t,this.cloneFrom.map.get(t))),this.updates.forEach(t=>{switch(t.op){case"a":case"s":const r=("a"===t.op?this.map.get(t.param):void 0)||[];r.push(rc(t.value)),this.map.set(t.param,r);break;case"d":if(void 0===t.value){this.map.delete(t.param);break}{let n=this.map.get(t.param)||[];const o=n.indexOf(rc(t.value));-1!==o&&n.splice(o,1),n.length>0?this.map.set(t.param,n):this.map.delete(t.param)}}}),this.cloneFrom=this.updates=null)}}class AV{constructor(){this.map=new Map}set(t,r){return this.map.set(t,r),this}get(t){return this.map.has(t)||this.map.set(t,t.defaultValue()),this.map.get(t)}delete(t){return this.map.delete(t),this}has(t){return this.map.has(t)}keys(){return this.map.keys()}}function rE(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer}function oE(e){return typeof Blob<"u"&&e instanceof Blob}function iE(e){return typeof FormData<"u"&&e instanceof FormData}class Ds{constructor(t,r,n,o){let i;if(this.url=r,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=t.toUpperCase(),function xV(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==n?n:null,i=o):i=n,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.context&&(this.context=i.context),i.params&&(this.params=i.params)),this.headers||(this.headers=new mn),this.context||(this.context=new AV),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=r;else{const a=r.indexOf("?");this.urlWithParams=r+(-1===a?"?":ad.set(g,t.setHeaders[g]),l)),t.setParams&&(c=Object.keys(t.setParams).reduce((d,g)=>d.set(g,t.setParams[g]),c)),new Ds(r,n,i,{params:c,headers:l,context:u,reportProgress:a,responseType:o,withCredentials:s})}}var Go=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}(Go||{});class Ah{constructor(t,r=200,n="OK"){this.headers=t.headers||new mn,this.status=void 0!==t.status?t.status:r,this.statusText=t.statusText||n,this.url=t.url||null,this.ok=this.status>=200&&this.status<300}}class xh extends Ah{constructor(t={}){super(t),this.type=Go.ResponseHeader}clone(t={}){return new xh({headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class zo extends Ah{constructor(t={}){super(t),this.type=Go.Response,this.body=void 0!==t.body?t.body:null}clone(t={}){return new zo({body:void 0!==t.body?t.body:this.body,headers:t.headers||this.headers,status:void 0!==t.status?t.status:this.status,statusText:t.statusText||this.statusText,url:t.url||this.url||void 0})}}class sE extends Ah{constructor(t){super(t,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${t.url||"(unknown url)"}`:`Http failure response for ${t.url||"(unknown url)"}: ${t.status} ${t.statusText}`,this.error=t.error||null}}function Rh(e,t){return{body:t,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials}}let Nh=(()=>{var e;class t{constructor(n){this.handler=n}request(n,o,i={}){let s;if(n instanceof Ds)s=n;else{let c,u;c=i.headers instanceof mn?i.headers:new mn(i.headers),i.params&&(u=i.params instanceof rr?i.params:new rr({fromObject:i.params})),s=new Ds(n,o,void 0!==i.body?i.body:null,{headers:c,context:i.context,params:u,reportProgress:i.reportProgress,responseType:i.responseType||"json",withCredentials:i.withCredentials})}const a=V(s).pipe(Ao(c=>this.handler.handle(c)));if(n instanceof Ds||"events"===i.observe)return a;const l=a.pipe(Xt(c=>c instanceof zo));switch(i.observe||"body"){case"body":switch(s.responseType){case"arraybuffer":return l.pipe(ee(c=>{if(null!==c.body&&!(c.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return c.body}));case"blob":return l.pipe(ee(c=>{if(null!==c.body&&!(c.body instanceof Blob))throw new Error("Response is not a Blob.");return c.body}));case"text":return l.pipe(ee(c=>{if(null!==c.body&&"string"!=typeof c.body)throw new Error("Response is not a string.");return c.body}));default:return l.pipe(ee(c=>c.body))}case"response":return l;default:throw new Error(`Unreachable: unhandled observe type ${i.observe}}`)}}delete(n,o={}){return this.request("DELETE",n,o)}get(n,o={}){return this.request("GET",n,o)}head(n,o={}){return this.request("HEAD",n,o)}jsonp(n,o){return this.request("JSONP",n,{params:(new rr).append(o,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(n,o={}){return this.request("OPTIONS",n,o)}patch(n,o,i={}){return this.request("PATCH",n,Rh(i,o))}post(n,o,i={}){return this.request("POST",n,Rh(i,o))}put(n,o,i={}){return this.request("PUT",n,Rh(i,o))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(tc))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function cE(e,t){return t(e)}function OV(e,t){return(r,n)=>t.intercept(r,{handle:o=>e(o,n)})}const kV=new x(""),bs=new x(""),uE=new x("");function FV(){let e=null;return(t,r)=>{null===e&&(e=(A(kV,{optional:!0})??[]).reduceRight(OV,cE));const n=A(Xa),o=n.add();return e(t,r).pipe(Ki(()=>n.remove(o)))}}let dE=(()=>{var e;class t extends tc{constructor(n,o){super(),this.backend=n,this.injector=o,this.chain=null,this.pendingTasks=A(Xa)}handle(n){if(null===this.chain){const i=Array.from(new Set([...this.injector.get(bs),...this.injector.get(uE,[])]));this.chain=i.reduceRight((s,a)=>function PV(e,t,r){return(n,o)=>r.runInContext(()=>t(n,i=>e(i,o)))}(s,a,this.injector),cE)}const o=this.pendingTasks.add();return this.chain(n,i=>this.backend.handle(i)).pipe(Ki(()=>this.pendingTasks.remove(o)))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(nc),F(Dt))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const HV=/^\)\]\}',?\n/;let hE=(()=>{var e;class t{constructor(n){this.xhrFactory=n}handle(n){if("JSONP"===n.method)throw new S(-2800,!1);const o=this.xhrFactory;return(o.\u0275loadImpl?Ne(o.\u0275loadImpl()):V(null)).pipe(Ht(()=>new Ie(s=>{const a=o.build();if(a.open(n.method,n.urlWithParams),n.withCredentials&&(a.withCredentials=!0),n.headers.forEach((b,E)=>a.setRequestHeader(b,E.join(","))),n.headers.has("Accept")||a.setRequestHeader("Accept","application/json, text/plain, */*"),!n.headers.has("Content-Type")){const b=n.detectContentTypeHeader();null!==b&&a.setRequestHeader("Content-Type",b)}if(n.responseType){const b=n.responseType.toLowerCase();a.responseType="json"!==b?b:"text"}const l=n.serializeBody();let c=null;const u=()=>{if(null!==c)return c;const b=a.statusText||"OK",E=new mn(a.getAllResponseHeaders()),D=function UV(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(a)||n.url;return c=new xh({headers:E,status:a.status,statusText:b,url:D}),c},d=()=>{let{headers:b,status:E,statusText:D,url:O}=u(),N=null;204!==E&&(N=typeof a.response>"u"?a.responseText:a.response),0===E&&(E=N?200:0);let Z=E>=200&&E<300;if("json"===n.responseType&&"string"==typeof N){const Ge=N;N=N.replace(HV,"");try{N=""!==N?JSON.parse(N):null}catch(Tt){N=Ge,Z&&(Z=!1,N={error:Tt,text:N})}}Z?(s.next(new zo({body:N,headers:b,status:E,statusText:D,url:O||void 0})),s.complete()):s.error(new sE({error:N,headers:b,status:E,statusText:D,url:O||void 0}))},g=b=>{const{url:E}=u(),D=new sE({error:b,status:a.status||0,statusText:a.statusText||"Unknown Error",url:E||void 0});s.error(D)};let m=!1;const y=b=>{m||(s.next(u()),m=!0);let E={type:Go.DownloadProgress,loaded:b.loaded};b.lengthComputable&&(E.total=b.total),"text"===n.responseType&&a.responseText&&(E.partialText=a.responseText),s.next(E)},C=b=>{let E={type:Go.UploadProgress,loaded:b.loaded};b.lengthComputable&&(E.total=b.total),s.next(E)};return a.addEventListener("load",d),a.addEventListener("error",g),a.addEventListener("timeout",g),a.addEventListener("abort",g),n.reportProgress&&(a.addEventListener("progress",y),null!==l&&a.upload&&a.upload.addEventListener("progress",C)),a.send(l),s.next({type:Go.Sent}),()=>{a.removeEventListener("error",g),a.removeEventListener("abort",g),a.removeEventListener("load",d),a.removeEventListener("timeout",g),n.reportProgress&&(a.removeEventListener("progress",y),null!==l&&a.upload&&a.upload.removeEventListener("progress",C)),a.readyState!==a.DONE&&a.abort()}})))}}return(e=t).\u0275fac=function(n){return new(n||e)(F(bD))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();const Oh=new x("XSRF_ENABLED"),pE=new x("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),gE=new x("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class mE{}let GV=(()=>{var e;class t{constructor(n,o,i){this.doc=n,this.platform=o,this.cookieName=i,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const n=this.doc.cookie||"";return n!==this.lastCookieString&&(this.parseCount++,this.lastToken=hD(n,this.cookieName),this.lastCookieString=n),this.lastToken}}return(e=t).\u0275fac=function(n){return new(n||e)(F(pt),F(gr),F(pE))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function zV(e,t){const r=e.url.toLowerCase();if(!A(Oh)||"GET"===e.method||"HEAD"===e.method||r.startsWith("http://")||r.startsWith("https://"))return t(e);const n=A(mE).getToken(),o=A(gE);return null!=n&&!e.headers.has(o)&&(e=e.clone({headers:e.headers.set(o,n)})),t(e)}var or=function(e){return e[e.Interceptors=0]="Interceptors",e[e.LegacyInterceptors=1]="LegacyInterceptors",e[e.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",e[e.NoXsrfProtection=3]="NoXsrfProtection",e[e.JsonpSupport=4]="JsonpSupport",e[e.RequestsMadeViaParent=5]="RequestsMadeViaParent",e[e.Fetch=6]="Fetch",e}(or||{});const vE=new x("LEGACY_INTERCEPTOR_FN");class KV{constructor(){this.name="",this.email="",this.message=""}}let yE=(()=>{var e;class t{constructor(n){this.httpClient=n}postContactForm(n){return this.httpClient.post(`${ve_apiBaseUrl}contact`,n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Nh))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})();function e3(e,t){if(1&e){const r=Ae();h(0,"form",5,6),R("ngSubmit",function(){return ne(r),re(k().submit())}),h(2,"div",7)(3,"label",8),f(4,"Name "),h(5,"span",9),f(6,"*"),p()(),h(7,"input",10),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.name=o)}),p()(),h(8,"div",7)(9,"label",11),f(10,"Email address "),h(11,"span",9),f(12,"*"),p()(),h(13,"input",12),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.email=o)}),p()(),h(14,"div",7)(15,"label",13),f(16,"Message "),h(17,"span",9),f(18,"*"),p()(),h(19,"textarea",14),R("ngModelChange",function(o){return ne(r),re(k().contactViewModel.message=o)}),p()(),h(20,"button",15),f(21,"Submit"),p()()}if(2&e){const r=_d(1),n=k();_(7),w("ngModel",n.contactViewModel.name),_(6),w("ngModel",n.contactViewModel.email),_(6),w("ngModel",n.contactViewModel.message),_(1),w("disabled",!r.valid||n.enableFormCountDown>0)}}function t3(e,t){1&e&&(h(0,"p"),f(1,"Thanks for your message."),p())}function n3(e,t){1&e&&(h(0,"p",16),f(1,"Something went wrong. Please try again later."),p())}let r3=(()=>{var e;class t{constructor(n){this.contactService=n,this.contactViewModel=new KV,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,0===this.enableFormCountDown&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:n=>{console.log("Submitted form"),this.success=!0},error:n=>{console.error(n),this.error=!0},complete:()=>console.info("complete")})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(yE))},e.\u0275cmp=vt({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[Mt],decls:6,vars:3,consts:[[1,"container"],[1,"mb-4"],["method","post",3,"ngSubmit",4,"ngIf"],[4,"ngIf"],["class","text-danger",4,"ngIf"],["method","post",3,"ngSubmit"],["contactForm","ngForm"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"text-danger"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Contact"),p(),P(3,e3,22,4,"form",2),P(4,t3,2,0,"p",3),P(5,n3,2,0,"p",4),p()),2&n&&(_(3),w("ngIf",!o.success&&!o.error),_(1),w("ngIf",o.success),_(1),w("ngIf",o.error))},dependencies:[vl,ec,Xl,jo,Ul,Bl,$o,Kl,Cs,Bo]}),t})();const _E=function(){return["/pro"]};let o3=(()=>{var e;class t{scrollToAnchor(n){return document.querySelector(n)?.scrollIntoView(!0),!1}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-features-component"]],standalone:!0,features:[Mt],decls:131,vars:4,consts:[[1,"container"],[1,"mb-4"],["id","coveragequota"],[1,"pro-text"],["href","https://en.wikipedia.org/wiki/Code_coverage","target","_blank"],[1,"fa-solid","fa-arrow-up-right-from-square"],[3,"routerLink"],[1,"pro-button","pro-button-tiny"],["loading","lazy","srcset","resources/features/quota@1x.webp 1x, resources/features/quota@2x.webp 2x","src","resources/features/quota1x.webp","alt","Coverage quotas",1,"img-fluid"],["id","coveragehistory",1,"mt-5"],["loading","lazy","srcset","resources/features/history@1x.webp 1x, resources/features/history@2x.webp 2x","src","resources/features/history@1x.webp","alt","Coverage history",1,"img-fluid"],["id","summary",1,"mt-5"],["loading","lazy","srcset","resources/features/summary@1x.webp 1x, resources/features/summary@2x.webp 2x","src","resources/features/summary.webp","alt","Summary table / Overview",1,"img-fluid"],["id","details",1,"mt-5"],["loading","lazy","srcset","resources/features/details@1x.webp 1x, resources/features/details@2x.webp 2x","src","resources/features/details.webp","alt","Details",1,"img-fluid"],["id","metrics",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ#which-coverage-tool-supports-which-features-in-the-html-report","target","_blank"],["href","",3,"click"],["loading","lazy","srcset","resources/features/metrics_details@1x.webp 1x, resources/features/metrics_details@2x.webp 2x","src","resources/features/metrics_details.webp","alt","Metrics - Details",1,"img-fluid"],["loading","lazy","srcset","resources/features/metrics_summary@1x.webp 1x, resources/features/metrics_summary@2x.webp 2x","src","resources/features/metrics_summary.webp","alt","Metrics - Summary",1,"img-fluid"],["id","riskhotspots",1,"mt-5"],["href","https://en.wikipedia.org/wiki/Cyclomatic_complexity","target","_blank"],["href","https://modess.io/npath-complexity-cyclomatic-complexity-explained","target","_blank"],["href","https://testing.googleblog.com/2011/02/this-code-is-crap.html","target","_blank"],["loading","lazy","srcset","resources/features/riskhotspots@1x.webp 1x, resources/features/riskhotspots@2x.webp 2x","src","resources/features/riskhotspots.webp","alt","Risk Hotspots",1,"img-fluid"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Features"),p(),h(3,"h2",2),f(4,"Coverage quotas"),p(),h(5,"p"),f(6," The overiew cards provide a quick "),h(7,"span",3),f(8,"overview"),p(),f(9," of your coverage quotas."),v(10,"br"),f(11," You can use them to get a glimpse into the different "),h(12,"a",4),f(13,"coverage metrics"),p(),f(14,"\xa0"),h(15,"a",4),v(16,"i",5),p(),f(17,": "),p(),h(18,"ul")(19,"li"),f(20,"Line coverage"),p(),h(21,"li"),f(22,"Branch coverage"),p(),h(23,"li"),f(24,"Method coverage "),h(25,"a",6)(26,"span",7),f(27,"PRO"),p()()()(),v(28,"img",8)(29,"br"),h(30,"h2",9),f(31,"Coverage history"),p(),h(32,"p"),f(33," The history chart helps you to understand how your coverage quotas are "),h(34,"span",3),f(35,"evolving over time"),p(),f(36,". "),p(),v(37,"img",10)(38,"br"),h(39,"h2",11),f(40,"Summary table / Overview"),p(),h(41,"p"),f(42," The summary table helps you to identify classes with "),h(43,"span",3),f(44,"low test coverage"),p(),f(45,"."),v(46,"br"),f(47," The table offers various "),h(48,"span",3),f(49,"filter and sorting"),p(),f(50," options for quick navigation. "),p(),v(51,"img",12)(52,"br"),h(53,"h2",13),f(54,"Details page"),p(),h(55,"p"),f(56," The details page visualizes your "),h(57,"span",3),f(58,"line and branch coverage"),p(),f(59,". "),p(),h(60,"ul")(61,"li"),f(62,"Colors indicate the coverage status of each line."),p(),h(63,"li"),f(64,"Branch indicators help you to identity uncovered conditions."),p()(),v(65,"img",14)(66,"br"),h(67,"h2",15),f(68,"Metrics"),p(),h(69,"p"),f(70," Depending on your "),h(71,"a",16),f(72,"coverage tool"),p(),f(73,", metrics are provided to get further insigths in your "),h(74,"span",3),f(75,"code quality"),p(),f(76,". "),p(),h(77,"ul")(78,"li"),f(79,"The "),h(80,"a",17),R("click",function(){return o.scrollToAnchor("#details")}),f(81,"details page"),p(),f(82," contains information about the metrics of all methods of a class."),p(),h(83,"li"),f(84,"The "),h(85,"a",17),R("click",function(){return o.scrollToAnchor("#summary")}),f(86,"summary table"),p(),f(87," shows the lowest metrics of all methods of a class "),h(88,"a",6)(89,"span",7),f(90,"PRO"),p()()()(),h(91,"b"),f(92,"Details page"),p(),v(93,"br")(94,"img",18)(95,"br")(96,"br"),h(97,"b"),f(98,"Summary table"),p(),v(99,"br")(100,"img",19)(101,"br"),h(102,"h2",20),f(103,"Risk Hotspots"),p(),h(104,"p"),f(105," Based on the "),h(106,"a",17),R("click",function(){return o.scrollToAnchor("#metrics")}),f(107,"metrics"),p(),f(108," you get a list of potential risk hotspots."),v(109,"br"),f(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),p(),h(111,"ul")(112,"li")(113,"a",21),f(114,"Cyclomatic complexity"),p(),f(115,"\xa0"),h(116,"a",21),v(117,"i",5),p()(),h(118,"li")(119,"a",22),f(120,"NPath complexity"),p(),f(121,"\xa0"),h(122,"a",22),v(123,"i",5),p()(),h(124,"li")(125,"a",23),f(126,"Crap score"),p(),f(127,"\xa0"),h(128,"a",23),v(129,"i",5),p()()(),v(130,"img",24),p()),2&n&&(_(25),w("routerLink",K(2,_E)),_(63),w("routerLink",K(3,_E)))},dependencies:[pn]}),t})();const Lt={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.2.0"},i3=function(){return["/usage"]};let s3=(()=>{var e;class t{constructor(){this.versions=Lt}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[Mt],decls:72,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["href","https://github.com/coverlet-coverage/coverlet"],["href","https://github.com/SteveGilham/altcover"],[1,"text-dark","bg-light","p-2","border"],["id","java",1,"mt-5"],["href","https://github.com/jacoco/jacoco"],["id","nodejs",1,"mt-5"],["href","https://github.com/istanbuljs/nyc"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Get started"),p(),h(3,"h2"),f(4,"General"),p(),h(5,"p"),f(6,"In general you need a tool that instruments your test code and collects coverage information."),v(7,"br"),f(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),v(9,"br"),h(10,"em"),f(11,"ReportGenerator"),p(),f(12," uses this file and generates a report in HTML format (other formats are available)."),p(),h(13,"p"),f(14,"Use the online "),h(15,"a",2),f(16,"configuration tool"),p(),f(17," to get started quickly."),p(),h(18,"h2",3),f(19,".NET"),p(),h(20,"p"),f(21,"For .NET you can use "),h(22,"a",4),f(23,"coverlet"),p(),f(24," or "),h(25,"a",5),f(26,"altcover"),p(),f(27," for instrumenting your test code."),p(),h(28,"p"),f(29,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),p(),h(30,"p")(31,"strong"),f(32,"Add dependencies to your "),h(33,"code"),f(34,"*.csproj"),p(),f(35," file:"),p()(),h(36,"pre",6),f(37),p(),h(38,"p")(39,"strong"),f(40,"Execute tests and create coverage report"),p()(),h(41,"pre",6),f(42),p(),h(43,"h2",7),f(44,"Java"),p(),h(45,"p"),f(46,"For Java you can use "),h(47,"a",8),f(48,"JaCoCo"),p(),f(49," for instrumenting your test code.\nAfter adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report."),p(),h(50,"p")(51,"strong"),f(52,"Add dependencies to your "),h(53,"code"),f(54,"pom.xml"),p(),f(55," file:"),p()(),h(56,"pre",6),f(57,"\n \n \n \n org.jacoco\n jacoco-maven-plugin\n 0.8.6\n \n \n \n prepare-agent\n \n \n \n report\n prepare-package\n \n report\n \n \n \n \n \n \n \n \n \n org.jacoco\n jacoco-maven-plugin\n \n \n \n report\n \n \n \n \n \n \n\n"),p(),h(58,"p")(59,"strong"),f(60,"Execute tests and create coverage report"),p()(),h(61,"pre",6),f(62),p(),h(63,"h2",9),f(64,"NodeJS"),p(),h(65,"p"),f(66,"For NodeJS you can use "),h(67,"a",10),f(68,"Istanbul"),p(),f(69," for instrumenting your test code.\nAfter installing Istanbul, you can execute your tests and generate the coverage report."),p(),h(70,"pre",6),f(71),p()()),2&n&&(_(15),w("routerLink",K(5,i3)),_(22),xn('\n \n runtime; build; native; contentfiles; analyzers; buildtransitive\n all\n \n \n \n \n all\n runtime; build; native; contentfiles; analyzers\n \n\n'),_(5),xn('dotnet test --collect:"XPlat Code Coverage"\n"%UserProfile%\\.nuget\\packages\\reportgenerator\\',o.versions.version,'\\tools\\net6.0\\ReportGenerator.exe" -reports:*\\TestResults\\*\\coverage.cobertura.xml -targetdir:coveragereport\n'),_(20),xn("mvn test jacoco:report\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:target\\site\\jacoco\\jacoco.xml -targetdir:coveragereport -sourcedirs:src\\main\\java\n"),_(9),xn("npm i nyc --save-dev\nnyc --reporter=coberatura mocha\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:coverage/cobertura-coverage.xml -targetdir:coveragereport\n"))},dependencies:[pn]}),t})(),CE=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-testimonials"]],standalone:!0,features:[Mt],decls:30,vars:0,consts:[[1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"container"],[1,"text-center"],[1,"row","mt-5"],[1,"col","text-center"],[1,"fa-brands","fa-microsoft","h1","text-secondary"],["href","https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/code-coverage.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-google","h1","text-secondary"],["href","https://github.com/GoogleCloudPlatform/iam-windows-authenticator","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-aws","h1","text-secondary"],["href","https://github.com/aws/aws-encryption-sdk-dafny/blob/mainline/aws-encryption-sdk-net/README.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"col","text-center","d-none","d-lg-block"],[1,"fa-solid","fa-heart","h1","text-secondary"],["href","https://github.com/danielpalme/ReportGenerator/network/dependents","target","_blank",1,"text-dark"],["href","https://www.nuget.org/packages?q=ReportGenerator+danielpalme","target","_blank",1,"btn","btn-outline-secondary"],[1,"fa-solid","fa-download"]],template:function(n,o){1&n&&(h(0,"section",0)(1,"div",1)(2,"h2",2),f(3,"Trusted by"),p(),h(4,"div",3)(5,"div",4),v(6,"i",5)(7,"br"),h(8,"a",6),f(9,".NET Runtime"),p()(),h(10,"div",4),v(11,"i",7)(12,"br"),h(13,"a",8),f(14,"Google Cloud"),p()(),h(15,"div",4),v(16,"i",9)(17,"br"),h(18,"a",10),f(19,"AWS Encryption SDK"),p()(),h(20,"div",11),v(21,"i",12)(22,"br"),h(23,"a",13),f(24,"Many more"),p()()(),h(25,"div",3)(26,"div",4)(27,"a",14),v(28,"i",15),f(29," Over 50 million downloads on Nuget"),p()()()()())},encapsulation:2}),t})();const a3=function(){return["/pro"]},l3=function(){return["/usage"]},c3=function(){return["/getstarted"]},u3=function(){return["/features"]};let d3=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-home"]],standalone:!0,features:[Mt],decls:114,vars:8,consts:[[1,"container"],[1,"row"],[1,"col-4","col-md-3"],["src","resources/logo.svg","alt","Logo ReportGenerator",1,"img-fluid"],[1,"col-xs-12","col-md-9","ps-4"],[1,"mt-5"],[1,"line","btn-primary"],[1,"mt-4","h5"],[1,"pro-text"],["href","resources/reports/Html/index.html","target","_blank",1,"btn","btn-primary","me-2","mb-2"],[1,"fa-solid","fa-eye"],[1,"row","mt-5"],[1,"col-sm-12","col-md-4"],[1,"icon"],[1,"fa-solid","fa-scale-balanced"],[1,"h5","ms-3","mt-3"],[1,"mt-3"],[3,"routerLink"],[1,"col-sm-12","col-md-4","mt-4","mt-md-0"],[1,"fa-solid","fa-lightbulb"],[1,"fa-solid","fa-plug"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col"],[1,"btn","btn-primary","me-2","mb-2",3,"routerLink"],[1,"fa-solid","fa-wrench"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank",1,"btn","btn-outline-dark","mb-2"],[1,"fa-brands","fa-github"],[1,"container-fluid","mt-5","pt-5","pb-5"],["href","resources/reports/Html/index.html","target","_blank"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"col-sm-12","col-md-6","pb-2"],["href","resources/screenshot1@2x.webp"],["loading","lazy","srcset","resources/screenshot1.webp 1x, resources/screenshot1@2x.webp 2x","src","resources/screenshot1.webp","alt","Screenshot",1,"img-fluid"],[1,"col-sm-12","col-md-6"],["href","resources/screenshot2@2x.webp"],["loading","lazy","srcset","resources/screenshot2.webp 1x, resources/screenshot2@2x.webp 2x","src","resources/screenshot2.webp","alt","Screenshot",1,"img-fluid"]],template:function(n,o){1&n&&(h(0,"section",0)(1,"div",1)(2,"div",2),v(3,"img",3),p(),h(4,"div",4)(5,"h1"),f(6,"ReportGenerator"),p(),h(7,"h2",5),f(8,"Powerful code coverage visualization"),p(),h(9,"div",6),f(10,"\xa0"),p(),h(11,"div",7)(12,"p")(13,"i"),f(14,"ReportGenerator"),p(),f(15," converts "),h(16,"span",8),f(17,"coverage reports"),p(),f(18," generated by coverlet, OpenCover, dotCover, Visual Studio, NCover, Cobertura, JaCoCo, Clover, gcov or lcov into "),h(19,"span",8),f(20,"human readable reports in various formats"),p(),f(21,"."),p(),h(22,"p"),f(23,"The reports show the "),h(24,"span",8),f(25,"coverage quotas"),p(),f(26," and also visualize which lines of your source code have been covered."),p(),h(27,"p")(28,"a",9),v(29,"i",10),f(30," Browse example report"),p()()()()(),h(31,"div",11)(32,"div",12)(33,"div",13),v(34,"i",14),p(),h(35,"span",15),f(36,"Open source"),p(),h(37,"p",16)(38,"i"),f(39,"ReportGenerator"),p(),f(40," is open source under the permissive Apache License."),p(),h(41,"p"),f(42,"It's free to use."),v(43,"br"),f(44,"The "),h(45,"a",17),f(46,"PRO"),p(),f(47," version offers additional features."),p()(),h(48,"div",18)(49,"div",13),v(50,"i",19),p(),h(51,"span",15),f(52,"Easy to use"),p(),h(53,"p",16)(54,"i"),f(55,"ReportGenerator"),p(),f(56," is a command line tool which only requires a "),h(57,"a",17),f(58,"few parameters"),p(),f(59,"."),p(),h(60,"p"),f(61,"Integration into your build pipeline will only take a couple of minutes."),p()(),h(62,"div",18)(63,"div",13),v(64,"i",20),p(),h(65,"span",15),f(66,"Integration"),p(),h(67,"p",16)(68,"i"),f(69,"ReportGenerator"),p(),f(70," works on Windows, Linux and macOS."),p(),h(71,"p"),f(72,"Support for "),h(73,"a",21),f(74,"GitHub actions"),p(),f(75," and "),h(76,"a",22),f(77,"Azure DevOps"),p(),f(78," is available."),p()()(),h(79,"div",11)(80,"div",23)(81,"a",24),v(82,"i",25),f(83," Learn how to use"),p(),h(84,"a",26),v(85,"i",27),f(86," GitHub"),p()()()(),v(87,"app-testimonials"),h(88,"section",28)(89,"div",0)(90,"h2"),f(91,"Screenshots"),p(),h(92,"p"),f(93,"The screenshots show two snippets of the generated reports."),p(),h(94,"p"),f(95," Have a look the "),h(96,"a",17),f(97,"features page"),p(),f(98," to explore the elements in a coverage report or "),h(99,"a",29),f(100,"browse the example report"),p(),f(101,". "),v(102,"br"),f(103," You can also download "),h(104,"a",30),f(105,"sample reports"),p(),f(106," of all supported output formats."),p(),h(107,"div",1)(108,"div",31)(109,"a",32),v(110,"img",33),p()(),h(111,"div",34)(112,"a",35),v(113,"img",36),p()()()()()),2&n&&(_(45),w("routerLink",K(4,a3)),_(12),w("routerLink",K(5,l3)),_(24),w("routerLink",K(6,c3)),_(15),w("routerLink",K(7,u3)))},dependencies:[pn,CE],styles:[".h5[_ngcontent-%COMP%]{font-weight:300}section[_ngcontent-%COMP%]:first-of-type{padding-top:120px;min-height:calc(100vh - 171px)}.icon[_ngcontent-%COMP%]{background-color:#2e89df;background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);height:50px;width:50px;border-radius:8px;text-align:center;color:#fff;line-height:50px;font-size:1.5rem;display:inline-block}@media (max-width: 767px){section[_ngcontent-%COMP%]:first-of-type{padding-top:40px}}"]}),t})(),f3=(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-not-found"]],standalone:!0,features:[Mt],decls:5,vars:0,consts:[[1,"container"],[1,"mb-4"],[1,"fa-solid","fa-triangle-exclamation","fs-1","me-4"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Not found"),p(),v(3,"i",2),f(4," The requested page does not exist.\n"),p())}}),t})();class DE{constructor(){this.error=null,this.licenses=[]}}class h3{constructor(){this.error=null,this.isSponsor=!1,this.license=null}}let bE=(()=>{var e;class t{initCodeFlow(){const i=`https://github.com/login/oauth/authorize?response_type=code&client_id=ecab9484932b59a12fd4&state=${this.createAndSaveNonce()}&redirect_uri=${window.location.origin}/pro`;console.log("Redirecting to: "+i),location.href=i}validateStateAndExtractCode(){let n=location.href;const o=n.indexOf("?");o>-1&&(n=n.substring(o+1));const i=this.parseQueryString(n);return i.state&&i.code&&this.validateNonce(i.state)?i.code:null}createAndSaveNonce(){const n=this.createNonce();return typeof window.localStorage<"u"&&localStorage.setItem("nonce",n),n}validateNonce(n){let o;return typeof window.localStorage<"u"&&(o=localStorage.getItem("nonce"),localStorage.removeItem("nonce")),o&&0!==o.length?o===n||(console.error("Validating nonce failed. Values do not match.",o,n),!1):(console.error("Validating nonce failed. No saved nonce available.",o,n),!1)}createNonce(){const n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let o=45,i="";const s=typeof self>"u"?null:self.crypto||self.msCrypto;if(s){let l=new Uint8Array(o);s.getRandomValues(l),l.map||(l.map=Array.prototype.map);const c=[];for(var a=0;a0&&(u=decodeURIComponent(l),d=decodeURIComponent(c),"/"===u.substring(0,1)&&(u=u.substring(1)),o[u]=d);return o}base64UrlEncode(n){return btoa(n).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),wE=(()=>{var e;class t{constructor(n){this.httpClient=n}getLicense(n){return this.httpClient.get(`${ve_apiBaseUrl}reportgenerator/license?code=${encodeURIComponent(n)}`)}getTrialLicense(n){return this.httpClient.post(`${ve_apiBaseUrl}reportgenerator/triallicense`,n)}getPaddleLicense(n){return this.httpClient.post(`${ve_apiBaseUrl}reportgenerator/paddlelicense`,n)}}return(e=t).\u0275fac=function(n){return new(n||e)(F(Nh))},e.\u0275prov=L({token:e,factory:e.\u0275fac}),t})(),p3=(()=>{var e;class t{constructor(){this.isActive=!1,this.isActive=new Date-1)}}function G3(e,t){if(1&e&&(h(0,"div")(1,"label",110),f(2,"Thank you! Please save your license key persistently:"),p(),P(3,$3,6,3,"div",111),p()),2&e){const r=k(3);_(3),w("ngForOf",r.paddleLicense.licenses)}}function z3(e,t){if(1&e&&(h(0,"div",109),P(1,H3,8,3,"div",34),P(2,G3,4,1,"div",34),p()),2&e){const r=k(2);_(1),w("ngIf",r.paddleLicense.error),_(1),w("ngIf",!r.paddleLicense.error)}}function q3(e,t){if(1&e&&(h(0,"div",2),P(1,j3,6,0,"ng-container",34),P(2,z3,3,2,"div",107),p()),2&e){const r=k();_(1),w("ngIf",r.paddleLicenseRequested&&!r.paddleLicense),_(1),w("ngIf",r.paddleLicense)}}function W3(e,t){1&e&&(h(0,"p")(1,"i"),f(2,"ReportGenerator"),p(),f(3," subscription based licences are provided with a 30 day money back guarantee."),p())}const qo=function(){return["/features"]};let Z3=(()=>{var e;class t{get lifetimeLicense(){return this._lifetimeLicense}set lifetimeLicense(n){this._lifetimeLicense=n,this.lifetimeLicenseChangeTracked||(this.lifetimeLicenseChangeTracked=!0,this.trackingService.track("Licensetype changed"))}constructor(n,o,i){this.oauthService=n,this.licenseService=o,this.trackingService=i,this.paddleIndividualLicensePrice="US$49",this.paddleTeamLicensePrice="US$149",this.paddleEnterpriseLicensePrice="US$299",this.paddleIndividualLifetimeLicensePrice="US$79",this.paddleTeamLifetimeLicensePrice="US$249",this.paddleEnterpriseLifetimeLicensePrice="US$449",this.licenseRequested=!1,this.licenseCopied=!1,this.license=null,this.enablePaddle=!0,this.trialDisabled=!1,this.requestTrialData={name:"",email:""},this.paddleLicenseRequested=!1,this.paddleLicense=null,this.copiedPaddledLicenses=[],this.self=this,this.lifetimeLicenseChangeTracked=!1,this._lifetimeLicense=!1,window.paddleCheckoutComplete=s=>{this.paddleCheckoutComplete(s)},window.Paddle.Setup({vendor:144162}),window.Paddle.Product.Prices(762579,s=>{this.paddleIndividualLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(762580,s=>{this.paddleTeamLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(762581,s=>{this.paddleEnterpriseLicensePrice=s.recurring.price.gross}),window.Paddle.Product.Prices(833943,s=>{this.paddleIndividualLifetimeLicensePrice=s.price.gross}),window.Paddle.Product.Prices(833944,s=>{this.paddleTeamLifetimeLicensePrice=s.price.gross}),window.Paddle.Product.Prices(833945,s=>{this.paddleEnterpriseLifetimeLicensePrice=s.price.gross})}ngOnInit(){const n=this.oauthService.validateStateAndExtractCode();null!==n?(console.log("Code received",n),this.licenseRequested=!0,this.licenseService.getLicense(n).subscribe({next:o=>{console.log("Received license response"),this.license=o,this.scrollToGithub()},error:o=>{console.error(o),this.license=new h3,this.license.error="Unable to generate license."},complete:()=>console.info("complete")})):console.log("No code available"),location.href.indexOf("?source=trial")>-1&&this.trackingService.track("Trial2Pro"),this.requestTrialModal=new window.bootstrap.Modal("#requestTrialModal");try{this.trialDisabled=null!==window.localStorage.getItem("trialRequested")}catch{}}requestLicense(){this.licenseRequested=!0,this.oauthService.initCodeFlow()}copy(){try{navigator.clipboard.writeText(this.license.license),this.licenseCopied=!0}catch(n){console.error("Failed to copy license",n)}}copyPaddle(n){try{navigator.clipboard.writeText(n),this.copiedPaddledLicenses.push(n)}catch(o){console.error("Failed to copy paddle license",o)}}scrollToGithub(){return document.querySelector("#github").scrollIntoView(!0),!1}scrollToPaddle(){return document.querySelector("#paddle").scrollIntoView(!0),!1}requestTrial(){this.requestTrialModal.show(),this.trackingService.track("Trial-Started")}completeTrial(){console.log("Trial completed"),this.requestTrialModal.hide(),this.paddleLicenseRequested=!0,this.licenseService.getTrialLicense(this.requestTrialData).subscribe({next:n=>{console.log("Received trial license response"),this.paddleLicense=n,this.scrollToPaddle();try{window.localStorage.setItem("trialRequested","true"),this.trialDisabled=!0}catch{}this.trackingService.track("Trial-Completed")},error:n=>{console.error(n),this.paddleLicense=new DE,this.paddleLicense.error="Unable to generate trial license."},complete:()=>{console.info("complete"),this.requestTrialData={name:"",email:""}}})}openPaddleCheckout(n){"enterprise"===n?window.Paddle.Checkout.open({product:this.lifetimeLicense?833945:762581,successCallback:"paddleCheckoutComplete"}):"team"===n?window.Paddle.Checkout.open({product:this.lifetimeLicense?833944:762580,successCallback:"paddleCheckoutComplete"}):window.Paddle.Checkout.open({product:this.lifetimeLicense?833943:762579,successCallback:"paddleCheckoutComplete"}),this.trackingService.track("Paddle-Started",{props:{product:n,lifetimeLicense:this.lifetimeLicense}})}paddleCheckoutComplete(n){console.log("Checkout completed",n),this.paddleLicenseRequested=!0,this.licenseService.getPaddleLicense(n).subscribe({next:o=>{console.log("Received paddle license response"),this.paddleLicense=o,this.scrollToPaddle(),this.trackingService.track("Paddle-Completed",{props:{product:n.product.name,lifetimeLicense:this.lifetimeLicense}})},error:o=>{console.error(o),this.paddleLicense=new DE,this.paddleLicense.error="Unable to generate Paddle license."},complete:()=>console.info("complete")})}}return(e=t).\u0275fac=function(n){return new(n||e)(I(bE),I(wE),I(p3))},e.\u0275cmp=vt({type:e,selectors:[["app-pro-component"]],standalone:!0,features:[Mt],decls:229,vars:25,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-xs-12","col-md-6","order-2","order-md-1"],[1,"table"],["scope","col"],["scope","col",1,"text-center"],[1,"pro-button"],["scope","row"],["fragment","metrics","title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-info","text-secondary"],[1,"text-center"],[1,"fa-solid","fa-circle-check","text-secondary"],["fragment","riskhotspots","title","Show feature details",3,"routerLink"],["title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-check","pro-text"],[1,"col-xs-12","col-md-6","order-1","order-md-2"],["href","",3,"click"],[3,"routerLink"],["id","github",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"col-xs-12","col-md-6","pb-3"],[1,"fs-2","me-3","number"],["href","https://github.com/sponsors/danielpalme","target","_blank",1,"btn","btn-outline-dark"],[1,"fa-solid","fa-heart","githubheart"],["type","button",1,"btn","btn-primary","me-3",3,"disabled","click"],[1,"fa-solid","fa-rocket"],["class","spinner-border text-info","role","status",4,"ngIf"],["class","col-md-6 pb-3 d-none d-lg-block","style","position: relative;",4,"ngIf"],["class","col-xs-12 col-md-6 pb-3",4,"ngIf"],["id","paddle",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"text-center","mb-3"],["class","togglecontainer",4,"ngIf"],["class","row",4,"ngIf"],[1,"mt-5"],[4,"ngIf"],[1,"container-fluid","mt-4","pt-5","pb-5","bg-light"],[1,"container","text-center"],[1,"row","mt-5",2,"max-width","550px","margin","auto"],["href","https://twitter.com/fredyfx/status/1642807795828543488","target","_blank"],["loading","lazy","src","resources/twitter_light.webp","alt","Testimonial",1,"img-fluid"],["id","faq",1,"container","mt-5","pt-5","pb-5"],["id","accordionFaq",1,"accordion","accordion-flush"],[1,"accordion-item"],["id","headingOne",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseOne","aria-expanded","true","aria-controls","collapseOne",1,"accordion-button"],["id","collapseOne","aria-labelledby","headingOne","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse","show"],[1,"accordion-body"],["id","headingTwo",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseTwo","aria-expanded","false","aria-controls","collapseTwo",1,"accordion-button","collapsed"],["id","collapseTwo","aria-labelledby","headingTwo","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["id","headingThree",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseThree","aria-expanded","false","aria-controls","collapseThree",1,"accordion-button","collapsed"],["id","collapseThree","aria-labelledby","headingThree","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["tabindex","-1","id","requestTrialModal",1,"modal"],[1,"modal-dialog"],[1,"modal-content"],["method","post",3,"ngSubmit"],["trialForm","ngForm"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal","aria-label","Close",1,"btn-close"],[1,"modal-body"],[1,"form-floating","mb-3"],["type","text","id","name","name","name","required","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],["for","floatingInput"],[1,"required"],["type","email","id","email","name","email","required","","email","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-secondary"],["type","submit",1,"btn","btn-primary",3,"disabled"],["role","status",1,"spinner-border","text-info"],[1,"visually-hidden"],[1,"col-md-6","pb-3","d-none","d-lg-block",2,"position","relative"],[1,"fa-solid","fa-heart","githubheartlarge"],["href","https://github.com/sponsors/danielpalme","target","_blank"],["for","licensetext"],["id","licensetext","rows","5","readonly","",1,"form-control","mt-2"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"],[1,"togglecontainer"],[1,"option",3,"ngClass","click"],[1,"fa-solid","fa-rotate-right"],[1,"fa-solid","fa-infinity"],[1,"col-xs-12","col-md-6","col-lg-3","mt-0","pb-3","text-center","paddle-container"],[1,"paddle","trial"],["src","resources/trial.svg","alt","Trial",1,"img-fluid"],[1,"mt-3"],[1,"fa-solid","fa-magnifying-glass"],[1,"fa-solid","fa-calendar-days"],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],["type","button","class","btn btn-primary","disabled","",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-md-0","pb-3","text-center","paddle-container"],[1,"paddle"],["src","resources/individual.svg","alt","Individual",1,"img-fluid"],[1,"fa-solid","fa-user"],["type","button","class","btn btn-primary",3,"click",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/team.svg","alt","Team",1,"img-fluid"],[1,"fa-solid","fa-users"],[1,"col-xs-6","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/enterprise.svg","alt","Enterprise",1,"img-fluid"],[1,"fa-solid","fa-industry"],["type","button",1,"btn","btn-primary",3,"disabled","click"],["type","button","disabled","",1,"btn","btn-primary"],["type","button",1,"btn","btn-primary",3,"click"],[1,"fa-solid","fa-cart-shopping"],["class","col-xs-12 col-md-6",4,"ngIf"],[2,"position","relative","left","35px","top","-20px"],[1,"col-xs-12","col-md-6"],["for","paddlelicensetext"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-2"],["id","paddlelicensetext","rows","5","readonly","",1,"form-control"]],template:function(n,o){if(1&n&&(h(0,"div",0)(1,"h1",1),f(2,"PRO"),p(),h(3,"div",2)(4,"div",3)(5,"table",4)(6,"thead")(7,"tr"),v(8,"th",5),h(9,"th",6),f(10,"Free"),p(),h(11,"th",6)(12,"span",7),f(13,"PRO"),p()()()(),h(14,"tbody")(15,"tr")(16,"th",8),f(17,"Metrics "),h(18,"a",9),v(19,"i",10),p()(),h(20,"td",11),v(21,"i",12),p(),h(22,"td",11),v(23,"i",12),p()(),h(24,"tr")(25,"th",8),f(26,"Risk Hotspots "),h(27,"a",13),v(28,"i",10),p()(),h(29,"td",11),v(30,"i",12),p(),h(31,"td",11),v(32,"i",12),p()(),h(33,"tr")(34,"th",8),f(35,"Line coverage "),h(36,"a",14),v(37,"i",10),p()(),h(38,"td",11),v(39,"i",12),p(),h(40,"td",11),v(41,"i",12),p()(),h(42,"tr")(43,"th",8),f(44,"Branch coverage "),h(45,"a",14),v(46,"i",10),p()(),h(47,"td",11),v(48,"i",12),p(),h(49,"td",11),v(50,"i",12),p()(),h(51,"tr")(52,"th",8),f(53,"Method coverage "),h(54,"a",14),v(55,"i",10),p()(),v(56,"td",11),h(57,"td",11),v(58,"i",15),p()(),h(59,"tr")(60,"th",8),f(61,"Metrics on summary page "),h(62,"a",9),v(63,"i",10),p()(),v(64,"td",11),h(65,"td",11),v(66,"i",15),p()(),h(67,"tr")(68,"th",8)(69,"i"),f(70,"OpenCover"),p(),f(71," output format"),p(),v(72,"td",11),h(73,"td",11),v(74,"i",15),p()()()()(),h(75,"div",16)(76,"p")(77,"i"),f(78,"ReportGenerator"),p(),f(79," is Open Source and free to use."),v(80,"br"),f(81," Some of the advanced features require a PRO license. "),p(),h(82,"p"),f(83," You can either become a "),h(84,"a",17),R("click",function(){return o.scrollToGithub()}),f(85,"GitHub sponsor"),p(),f(86," or you can "),h(87,"a",17),R("click",function(){return o.scrollToPaddle()}),f(88,"buy a license"),p(),f(89,"."),v(90,"br"),f(91," A "),h(92,"a",17),R("click",function(){return o.scrollToPaddle()}),f(93,"free trial version"),p(),f(94," is available too. "),p(),h(95,"p"),f(96," Get "),h(97,"a",18),f(98,"in touch"),p(),f(99," if you have any issues and we will figure it out. "),p()()()(),h(100,"section",19)(101,"div",0)(102,"h2",1),f(103,"Get your license as a GitHub sponsor"),p(),h(104,"div",2)(105,"div",20)(106,"p"),f(107,"You can obtain your license in two easy steps (no sign up required):"),p(),h(108,"span",21),f(109,"1."),p(),h(110,"a",22),v(111,"i",23),f(112," Become a GitHub sponsor"),p(),v(113,"br"),h(114,"span",21),f(115,"2."),p(),h(116,"button",24),R("click",function(){return o.requestLicense()}),v(117,"i",25),f(118," Get license"),p(),P(119,g3,3,0,"div",26),p(),P(120,m3,2,0,"div",27),P(121,b3,4,3,"div",28),p()()(),h(122,"section",29)(123,"div",0)(124,"h2",1),f(125,"Buy a license"),p(),h(126,"div",30),P(127,w3,7,6,"span",31),p(),P(128,V3,61,17,"div",32),P(129,q3,3,2,"div",32),h(130,"div",33),P(131,W3,4,0,"p",34),h(132,"p"),f(133,"The order process is conducted by Paddle.com. Paddle.com is the Merchant of Record for all orders. Paddle provides all customer service inquiries and handles returns."),p()()()(),v(134,"app-testimonials"),h(135,"section",35)(136,"div",36)(137,"h3"),f(138,"Customers"),p(),h(139,"div",37)(140,"a",38),v(141,"img",39),p()()()(),h(142,"section",40)(143,"h2",1),f(144,"Frequently Asked Questions"),p(),h(145,"div",41)(146,"div",42)(147,"h2",43)(148,"button",44),f(149," How do I use/activate my license? "),p()(),h(150,"div",45)(151,"div",46),f(152," Your license key is passed to "),h(153,"i"),f(154,"ReportGenerator"),p(),f(155," via a command line parameter: "),h(156,"i"),f(157,"-license:YOUR_KEY"),p()()()(),h(158,"div",42)(159,"h2",47)(160,"button",48),f(161," Are there limitations on number of users? "),p()(),h(162,"div",49)(163,"div",46)(164,"b"),f(165,"GitHub sponsors"),p(),v(166,"br"),h(167,"p"),f(168,"There's no enforced limit. Please pick a sponsor level that fits your company size and budget."),p(),h(169,"b"),f(170,"Bought license"),p(),v(171,"br"),h(172,"p"),f(173,"There's no enforced limit. Please choose a plan that matches the number of developers using "),h(174,"i"),f(175,"ReportGenerator"),p(),f(176,"."),p()()()(),h(177,"div",42)(178,"h2",50)(179,"button",51),f(180," Will my license expire? "),p()(),h(181,"div",52)(182,"div",46)(183,"b"),f(184,"GitHub sponsors"),p(),v(185,"br"),h(186,"p"),f(187,"Your license will not expire."),p(),h(188,"b"),f(189,"Bought license"),p(),v(190,"br"),h(191,"p")(192,"b"),f(193,"Annual subscription"),p(),f(194,": Your license may get revoked for new releases of "),h(195,"i"),f(196,"ReportGenerator"),p(),f(197,", if you cancel your subscription."),v(198,"br"),h(199,"b"),f(200,"Lifetime licenses"),p(),f(201,": Lifetime licenses will not expire. "),p()()()()()(),h(202,"div",53)(203,"div",54)(204,"div",55)(205,"form",56,57),R("ngSubmit",function(){return o.completeTrial()}),h(207,"div",58)(208,"h5",59),f(209,"Free Trial"),p(),v(210,"button",60),p(),h(211,"div",61)(212,"div",62)(213,"input",63),R("ngModelChange",function(s){return o.requestTrialData.name=s}),p(),h(214,"label",64),f(215,"Name "),h(216,"span",65),f(217,"*"),p()()(),h(218,"div",62)(219,"input",66),R("ngModelChange",function(s){return o.requestTrialData.email=s}),p(),h(220,"label",64),f(221,"Email address "),h(222,"span",65),f(223,"*"),p()()()(),h(224,"div",67)(225,"button",68),f(226,"Close"),p(),h(227,"button",69),f(228,"Get trial license"),p()()()()()()),2&n){const i=_d(206);_(18),w("routerLink",K(18,qo)),_(9),w("routerLink",K(19,qo)),_(9),w("routerLink",K(20,qo)),_(9),w("routerLink",K(21,qo)),_(9),w("routerLink",K(22,qo)),_(8),w("routerLink",K(23,qo)),_(35),w("routerLink",K(24,Ph)),_(19),w("disabled",o.licenseRequested),_(3),w("ngIf",o.licenseRequested&&!o.license),_(1),w("ngIf",!o.license),_(1),w("ngIf",o.license),_(6),w("ngIf",!o.paddleLicenseRequested),_(1),w("ngIf",!o.paddleLicenseRequested),_(1),w("ngIf",o.paddleLicenseRequested),_(2),w("ngIf",!o.lifetimeLicense),_(82),w("ngModel",o.requestTrialData.name),_(6),w("ngModel",o.requestTrialData.email),_(8),w("disabled",!i.valid)}},dependencies:[pn,Ef,vl,ml,ec,Xl,jo,Ul,Bl,$o,Sh,Kl,Cs,Bo,CE],styles:[".number[_ngcontent-%COMP%]{display:inline-block;position:relative;top:8px}.spinner-border[_ngcontent-%COMP%]{position:relative;top:9px}.paddle-container[_ngcontent-%COMP%]{padding:10px}.paddle[_ngcontent-%COMP%]{border:1px solid #8c8888;border-radius:20px;padding:20px;background-color:#d8e8f0}.trial[_ngcontent-%COMP%]{background-color:#b2cad7}.githubheartlarge[_ngcontent-%COMP%]{position:absolute;top:-120px;left:40%;font-size:20rem;color:#ffd2ed}.togglecontainer[_ngcontent-%COMP%]{background-color:#fff;display:inline-block;border-radius:20px;white-space:nowrap}.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{background-color:#fff;padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-block}.togglecontainer[_ngcontent-%COMP%] .option.active[_ngcontent-%COMP%]{color:#fff;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}@media only screen and (max-width: 400px){.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%] .fa-solid[_ngcontent-%COMP%]{display:none}}"]}),t})();class ic{constructor(t,r,n,o,i,s){this.name=t,this.url=r,this.runtimes=n,this.description=o,this.installOptions=i,this.executables=s}formatExecutable(t){return t.tool}formatArgument(t,r){if(""===(r=r.trim()))return"";const n=r.indexOf(" ")>-1?'"':"";return`\r\n${n}-${t}:${r}${n}`}formatArguments(t,r){return this.formatArgument(t,r.filter(n=>null!=n&&0!==n.length&&0!==n.trim().length).join(";"))}}class Y3 extends ic{formatExecutable(t){let r=`- task: ${t.tool}@${Lt.majorVersion}`;return r+="\r\n displayName: ReportGenerator",r+="\r\n inputs:",console.log("hello",r),r}formatArgument(t,r){if(""===(r=r.trim()))return"";const n=r.indexOf(" ")>-1?"'":"";return`\r\n ${t}: ${n}${r}${n}`}}class Q3{constructor(){this.verbosities=["Verbose","Info","Warning","Error","Off"],this.types=["Html","Coverage tool","Json","Markdown","Xml","Text","Image"],this.reports=["cobertura.xml"],this.targetdir="coveragereport",this.reporttypes=[{name:"Html",types:["Html"],description:"The default output format. Creates a summary overview (index.html) and detailed reports for each class.",requiresHistoryDir:!1,checked:!0,sampleReport:"resources/reports/Html/index.html"},{name:"Html_Light",types:["Html"],description:"Same as Html but with a light theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Light/index.html"},{name:"Html_Dark",types:["Html"],description:"Same as Html but with a dark theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Dark/index.html"},{name:"Html_BlueRed",types:["Html"],description:"Same as Html but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed/index.html"},{name:"HtmlSummary",types:["Html"],description:"Creates a single HTML file (summary.html) without links.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlSummary/summary.html"},{name:"Html_BlueRed_Summary",types:["Html"],description:"Same as HtmlSummary but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed_Summary/summary.html"},{name:"HtmlChart",types:["Html"],description:"Creates a single HTML file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/HtmlChart/CoverageHistory.html"},{name:"HtmlInline",types:["Html"],description:"Same as HTML but CSS and JavaScript is included in every HTML page. This results in larger file sizes, but can be useful for integration into build servers like Azure DevOps (VSTS), since they may block referenced CSS and JavaScript files.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline/index.html"},{name:"HtmlInline_AzurePipelines",types:["Html"],description:"Same as HtmlInline but with an adaptive light/dark theme matching the look and feel of Azure Pipelines",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines/index.html"},{name:"HtmlInline_AzurePipelines_Light",types:["Html"],description:"Same as HtmlInline but with a light theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Light/index.html"},{name:"HtmlInline_AzurePipelines_Dark",types:["Html"],description:"Same as HtmlInline but with a dark theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Dark/index.html"},{name:"MHtml",types:["Html"],description:"Same as HTML but packaged into a single MHTML file.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MHtml/Summary.mht"},{name:"Clover",types:["Coverage tool"],description:"Creates a XML file in Clover format. This format integrates with tools like Atlassian Bamboo.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Clover/Clover.xml"},{name:"Cobertura",types:["Coverage tool"],description:"Creates a XML file in Cobertura format. This format integrates with tools like Azure DevOps (VSTS) or Jenkins.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Cobertura/Cobertura.xml"},{name:"OpenCover",types:["Coverage tool"],description:"Creates a XML file in OpenCover format (PRO version only).",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/OpenCover/OpenCover.xml"},{name:"SonarQube",types:["Coverage tool"],description:"Creates a XML file in SonarQube 'Generic Test Data' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/SonarQube/SonarQube.xml"},{name:"lcov",types:["Coverage tool"],description:"Creates a text file in 'lcov' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/lcov/lcov.info"},{name:"XML",types:["Xml"],description:"Creates a XML file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Xml/Summary.xml"},{name:"XMLSummary",types:["Xml"],description:"Creates a single XML file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/XmlSummary/Summary.xml"},{name:"JsonSummary",types:["Json"],description:"Creates a single JSON file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/JsonSummary/Summary.json"},{name:"Latex",types:["Text"],description:"Creates a single TEX file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Summary/Summary.tex"},{name:"LatexSummary",types:["Text"],description:"Creates a single TEX file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/LatexSummary/Summary.tex"},{name:"TeamCitySummary",types:["Coverage tool"],description:"Command line output interpreted by TeamCity.",requiresHistoryDir:!1,checked:!1,sampleReport:null},{name:"TextSummary",types:["Text"],description:"Creates a single TXT file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/TextSummary/Summary.txt"},{name:"TextDeltaSummary",types:["Text"],description:"Creates a single TXT file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/TextDeltaSummary/DeltaSummary.txt"},{name:"CsvSummary",types:["Text"],description:"Creates a single CSV file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/CsvSummary/Summary.csv"},{name:"MarkdownSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummary/Summary.md"},{name:"MarkdownSummaryGithub",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class. The report is optimized for GitHub.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummaryGithub/SummaryGithub.md"},{name:"MarkdownDeltaSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/MarkdownDeltaSummary/DeltaSummary.md"},{name:"SvgChart",types:["Image"],description:"Creates a single SVG file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/SvgChart/CoverageHistory.svg"},{name:"Badges",types:["Image"],description:"Creates SVG files that show line and/or branch coverage information.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Badges/index.html"}],this.sourcedirectories=[],this.historydir="",this.plugins=[],this.assemblyfilters=[],this.classfilters=[],this.filefilters=[],this.selectedverbosity=this.verbosities[1],this.selectedType=null,this.title="",this.tag="",this.license=""}addSourceDirectory(){return this.sourcedirectories.push(""),!1}removeSourceDirectory(t){return this.sourcedirectories.splice(t,1),!1}addReport(){return this.reports.push(""),!1}removeReport(t){return this.reports.splice(t,1),!1}addPlugin(){return this.plugins.push(""),!1}removePlugin(t){return this.plugins.splice(t,1),!1}addAssemblyFilter(){return this.assemblyfilters.push(""),!1}removeAssemblyFilter(t){return this.assemblyfilters.splice(t,1),!1}addClassFilter(){return this.classfilters.push(""),!1}removeClassFilter(t){return this.classfilters.splice(t,1),!1}addFileFilter(){return this.filefilters.push(""),!1}removeFileFilter(t){return this.filefilters.splice(t,1),!1}getUsage(t,r){const n=t.executables.find(a=>a.runtime==r);let o=void 0!==n?t.formatExecutable(n):"";o+=t.formatArguments("reports",this.reports),o+=t.formatArgument("targetdir",this.targetdir);for(var i="",s=0;s0&&(i+=";"),i+=this.reporttypes[s].name);return i.length>0&&"Html"!==i&&(o+=t.formatArgument("reporttypes",i)),o+=t.formatArguments("sourcedirs",this.sourcedirectories),o+=t.formatArgument("historydir",this.historydir),o+=t.formatArguments("plugins",this.plugins),o+=t.formatArguments("assemblyfilters",this.assemblyfilters),o+=t.formatArguments("classfilters",this.classfilters),o+=t.formatArguments("filefilters",this.filefilters),"Info"!==this.selectedverbosity&&(o+=t.formatArgument("verbosity",this.selectedverbosity)),o+=t.formatArgument("title",this.title),o+=t.formatArgument("tag",this.tag),o+=t.formatArgument("license",this.license),o}historyDirRequired(){for(let t=0;t-1?"'":"";return`\r\n ${t}: ${n}${r}${n}`}}class kh{constructor(t,r){this.tool=t,this.command=r}}function J3(e,t){if(1&e){const r=Ae();h(0,"div",35)(1,"label",36)(2,"input",37),R("ngModelChange",function(o){return ne(r),re(k().selectedEnvironment=o)})("ngModelChange",function(){return ne(r),re(k().selectedEnvironmentChanged())}),p(),h(3,"b"),f(4),p(),v(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const r=t.$implicit,n=k();_(2),w("ngModel",n.selectedEnvironment)("value",r)("checked",n.selectedEnvironment.name===r.name),_(2),Ce(r.name),_(3),Ce(r.description)}}function K3(e,t){if(1&e){const r=Ae();h(0,"div",35)(1,"label",36)(2,"input",41),R("ngModelChange",function(o){return ne(r),re(k(3).selectedPackage=o)}),p(),h(3,"b"),f(4),p(),v(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const r=k().$implicit,n=k(2);_(2),w("ngModel",n.selectedPackage)("value",r),_(2),Ce(r.name),_(3),Ce(r.description)}}function ej(e,t){if(1&e&&(ut(0),P(1,K3,8,4,"div",40),dt()),2&e){const r=t.$implicit,n=k(2);_(1),w("ngIf",r.runtimes.indexOf(n.selectedEnvironment.name)>-1)}}function tj(e,t){if(1&e&&(ut(0),h(1,"h4"),f(2,"NuGet Package"),p(),P(3,ej,2,1,"ng-container",39),dt()),2&e){const r=k();_(3),w("ngForOf",r.packages)}}function nj(e,t){if(1&e){const r=Ae();h(0,"span",45),R("click",function(){ne(r);const o=k().index;return re(k().configuration.removeReport(o))}),h(1,"a",46),v(2,"i",47),p()()}}const rj=function(e){return{"input-group":e}};function oj(e,t){if(1&e){const r=Ae();h(0,"div",38)(1,"div",42)(2,"input",43),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.reports[s]=o)}),p(),P(3,nj,3,0,"span",44),p()()}if(2&e){const r=t.index,n=k();_(1),w("ngClass",$i(4,rj,r>0)),_(1),An("name","report_",r,""),w("ngModel",n.configuration.reports[r]),_(1),w("ngIf",r>0)}}const ij=function(e,t){return{"btn-outline-primary":e,"btn-primary":t}};function sj(e,t){if(1&e){const r=Ae();h(0,"button",48),R("click",function(){const i=ne(r).$implicit,s=k();return re(s.configuration.selectedType=s.configuration.selectedType===i?null:i)}),f(1),p()}if(2&e){const r=t.$implicit,n=k();w("ngClass",k_(2,ij,r!==n.configuration.selectedType,r===n.configuration.selectedType)),_(1),Ce(r)}}function aj(e,t){if(1&e){const r=Ae();h(0,"span",53),v(1,"i",54),f(2," Please specify a "),h(3,"a",9),R("click",function(){return ne(r),re(k(3).scrollToHistoryDir())}),f(4,"history directory"),p()()}}function lj(e,t){if(1&e&&(ut(0),v(1,"br",55),h(2,"a",29),f(3,"Sample report"),p(),f(4,"\xa0"),h(5,"a",29),v(6,"i",56),p(),dt()),2&e){const r=k(2).$implicit;_(2),w("href",r.sampleReport,ro),_(3),w("href",r.sampleReport,ro)}}function cj(e,t){if(1&e){const r=Ae();h(0,"div",50)(1,"label",36)(2,"input",51),R("change",function(){ne(r);const o=k().$implicit;return re(o.checked=!o.checked)}),p(),h(3,"b"),f(4),p(),P(5,aj,5,0,"span",52),v(6,"br"),h(7,"div",38),f(8),P(9,lj,7,2,"ng-container",5),p()()()}if(2&e){const r=k().$implicit,n=k();_(2),w("checked",r.checked),_(2),Ce(r.name),_(1),w("ngIf",r.checked&&r.requiresHistoryDir&&!n.configuration.historydir),_(3),xn("",r.description," "),_(1),w("ngIf",r.sampleReport)}}function uj(e,t){if(1&e&&(ut(0),P(1,cj,10,5,"div",49),dt()),2&e){const r=t.$implicit,n=k();_(1),w("ngIf",!n.configuration.selectedType||r.types.indexOf(n.configuration.selectedType)>-1)}}function dj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",58),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.sourcedirectories[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeSourceDirectory(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","sourcedir_",r,""),w("ngModel",n.configuration.sourcedirectories[r])}}function fj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",59),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.plugins[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removePlugin(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","plugin_",r,""),w("ngModel",n.configuration.plugins[r])}}function hj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",60),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.assemblyfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeAssemblyFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","assemblyfilter_",r,""),w("ngModel",n.configuration.assemblyfilters[r])}}function pj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",61),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.classfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeClassFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","classfilter_",r,""),w("ngModel",n.configuration.classfilters[r])}}function gj(e,t){if(1&e){const r=Ae();h(0,"div",8)(1,"div",57)(2,"input",62),R("ngModelChange",function(o){const s=ne(r).index;return re(k().configuration.filefilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=ne(r).index;return re(k().configuration.removeFileFilter(i))}),h(4,"a",46),v(5,"i",47),p()()()()}if(2&e){const r=t.index,n=k();_(2),An("name","filefilter_",r,""),w("ngModel",n.configuration.filefilters[r])}}function mj(e,t){if(1&e&&(h(0,"option",63),f(1),p()),2&e){const r=t.$implicit;w("value",r),_(1),Ce(r)}}function vj(e,t){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),v(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const r=t.$implicit;_(2),Ce(r.tool),_(3),Ce(r.command)}}function yj(e,t){1&e&&(h(0,"span"),v(1,"i",65),f(2," Copy"),p())}function _j(e,t){1&e&&(h(0,"span"),v(1,"i",66),f(2," Copied"),p())}function Cj(e,t){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),v(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const r=t.$implicit;_(2),Ce(r.tool),_(3),Ce(r.command)}}function Dj(e,t){1&e&&(h(0,"span"),v(1,"i",65),f(2," Copy"),p())}function bj(e,t){1&e&&(h(0,"span"),v(1,"i",66),f(2," Copied"),p())}const wj=function(){return["/pro"]},Ej=[{path:"",component:d3,pathMatch:"full",title:"Home",data:{canonical:"/"}},{path:"features",component:o3,title:"Features",data:{canonical:"/features"}},{path:"features.html",redirectTo:"/features"},{path:"getstarted",component:s3,title:"Get started",data:{canonical:"/getstarted"}},{path:"getstarted.html",redirectTo:"/getstarted"},{path:"usage",component:(()=>{var e;class t{constructor(){this.versions=Lt,this.lastResult="",this.usageCopied=!1,this.configuration=new Q3,this.environments=[new sc(".NET Core",".NET Core"),new sc(".NET Framework","The full .NET framework"),new sc("Azure DevOps",null),new sc("Github Action",null)],this.packages=[new ic("ReportGenerator","https://www.nuget.org/packages/ReportGenerator",[".NET Framework",".NET Core"],"Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script.",[new kh("Package Manager",`Install-Package ReportGenerator -Version ${Lt.version}`),new kh(".NET CLI",`dotnet add package ReportGenerator --version ${Lt.version}`)],[new ws(".NET Framework",`$(UserProfile)\\.nuget\\packages\\reportgenerator\\${Lt.version}\\tools\\net47\\ReportGenerator.exe`),new ws(".NET Core",`dotnet $(UserProfile)\\.nuget\\packages\\reportgenerator\\${Lt.version}\\tools\\net6.0\\ReportGenerator.dll`)]),new ic("dotnet-reportgenerator-globaltool","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool",[".NET Core"],"Use this package if your project is based on .NET Core and you want to use ReportGenerator as a (global) 'DotnetTool'.",[new kh(".NET CLI",`dotnet tool install --global dotnet-reportgenerator-globaltool --version ${Lt.version}\r\n\r\ndotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version ${Lt.version}\r\n\r\ndotnet new tool-manifest\r\ndotnet tool install dotnet-reportgenerator-globaltool --version ${Lt.version}`)],[new ws(".NET Core","reportgenerator")]),new Y3("Azure DevOps","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator",["Azure DevOps"],"Use this package within Azure DevOps",[],[new ws("Azure DevOps","reportgenerator")]),new X3("GitHub Action","https://github.com/marketplace/actions/reportgenerator",["Github Action"],"Use this package within Github Actions",[],[new ws("Github Action","danielpalme/ReportGenerator-GitHub-Action")])],this.selectedEnvironment=this.environments[0],this.selectedPackage=this.packages[0]}selectedEnvironmentChanged(){this.selectedPackage=this.packages.find(n=>n.runtimes.indexOf(this.selectedEnvironment.name)>-1)}severalPackagesAvailable(){return this.packages.filter(n=>n.runtimes.indexOf(this.selectedEnvironment.name)>-1).length>1}getUsage(){const n=this.configuration.getUsage(this.selectedPackage,this.selectedEnvironment.name);return this.lastResult!==n&&(this.lastResult=n,this.usageCopied=!1),n}copy(){try{navigator.clipboard.writeText(this.getUsage()),this.usageCopied=!0}catch(n){console.error("Failed to copy license",n)}}scrollToHistoryDir(){return document.querySelector("#historydir").scrollIntoView(!0),!1}trackByIndex(n,o){return n}}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275cmp=vt({type:e,selectors:[["app-usage-component"]],standalone:!0,features:[Mt],decls:219,vars:41,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-md-7"],["class","form-check",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"alert","alert-info"],["class","mb-3",4,"ngFor","ngForOf","ngForTrackBy"],[1,"input-group","mb-3"],["href","",3,"click"],[1,"fa","fa-plus-circle"],["type","text","name","targetdir","placeholder","The target directory","required","",1,"form-control",3,"ngModel","ngModelChange"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"me-2"],["type","button","class","btn btn-sm me-1 mb-1",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[4,"ngFor","ngForOf","ngForTrackBy"],["class","input-group mb-3",4,"ngFor","ngForOf","ngForTrackBy"],["id","historydir"],["type","text","name","historydir","placeholder","The history directory",1,"form-control",3,"ngModel","required","ngModelChange"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage"],["name","verbosity",1,"form-select",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["type","text","name","title","placeholder","Title",1,"form-control",3,"ngModel","ngModelChange"],["type","text","name","tag","placeholder","Optional tag or build version",1,"form-control",3,"ngModel","ngModelChange"],[3,"routerLink"],["type","text","name","license","placeholder","Optional license for PRO version","rows","4",1,"form-control",3,"ngModel","ngModelChange"],[1,"col-md-5"],[1,"d-md-none","mt-5"],["target","_blank",3,"href"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-4"],[1,"text-dark","bg-light","p-2","border"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"d-none","d-md-block","sticky"],[1,"form-check"],[1,"form-check-label"],["type","radio","name","environment",1,"form-check-input",3,"ngModel","value","checked","ngModelChange"],[1,"mb-3"],[4,"ngFor","ngForOf"],["class","form-check",4,"ngIf"],["type","radio","name","package",1,"form-check-input",3,"ngModel","value","ngModelChange"],[3,"ngClass"],["type","text","placeholder","The path of the coverage file","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["class","input-group-text",3,"click",4,"ngIf"],[1,"input-group-text",3,"click"],["href",""],[1,"fa","fa-trash","text-danger"],["type","button",1,"btn","btn-sm","me-1","mb-1",3,"ngClass","click"],["class","form-check mt-1",4,"ngIf"],[1,"form-check","mt-1"],["type","checkbox","name","reporttype",1,"form-check-input",3,"checked","change"],["class","text-danger ms-2",4,"ngIf"],[1,"text-danger","ms-2"],[1,"fa-solid","fa-triangle-exclamation"],[1,"mt-1"],[1,"fa-solid","fa-arrow-up-right-from-square"],[1,"input-group"],["type","text","placeholder","The source directory","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The path of the plugin","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for assemlies","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for classes","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for files","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],[3,"value"],[1,"mt-2"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"]],template:function(n,o){1&n&&(h(0,"div",0)(1,"h1",1),f(2,"Usage"),p(),h(3,"div",2)(4,"div",3)(5,"form")(6,"h3"),f(7,"Environment"),p(),P(8,J3,8,5,"div",4),v(9,"hr"),P(10,tj,4,1,"ng-container",5),v(11,"hr"),h(12,"h3"),f(13,"Reports"),p(),h(14,"div",6),f(15,"Path to the coverage report(s) that should be parsed."),v(16,"br"),f(17,"Globbing is supported."),p(),P(18,oj,4,6,"div",7),h(19,"div",8)(20,"a",9),R("click",function(){return o.configuration.addReport()}),v(21,"i",10),f(22," Add report"),p()(),v(23,"br"),h(24,"h3"),f(25,"Target directory"),p(),h(26,"div",6),f(27,"The directory where the generated report(s) should be saved."),p(),h(28,"div",8)(29,"input",11),R("ngModelChange",function(s){return o.configuration.targetdir=s}),p()(),v(30,"br"),h(31,"h3"),f(32,"Report types"),p(),h(33,"div",6),f(34,"Download "),h(35,"a",12),f(36,"sample reports"),p()(),h(37,"span",13),f(38,"Filter:"),p(),P(39,sj,2,5,"button",14),v(40,"br"),P(41,uj,2,1,"ng-container",15),h(42,"h3"),f(43,"Source directories"),p(),h(44,"div",6),f(45,"Optional directories which contain the corresponding source code."),v(46,"br"),f(47,"The source directories are used if coverage report contains classes without path information."),p(),P(48,dj,6,2,"div",16),h(49,"div",8)(50,"a",9),R("click",function(){return o.configuration.addSourceDirectory()}),v(51,"i",10),f(52," Add source directory"),p()(),v(53,"br"),h(54,"h3",17),f(55,"History directory"),p(),h(56,"div",6),f(57,"Optional directory for storing "),h(58,"b"),f(59,"persistent"),p(),f(60," coverage information. Choose a directory which does not get deleted between builds."),v(61,"br"),f(62,"Required to show the history chart in the HTML reports."),p(),h(63,"div",8)(64,"input",18),R("ngModelChange",function(s){return o.configuration.historydir=s}),p()(),v(65,"br"),h(66,"h3"),f(67,"Plugins"),p(),h(68,"div",6),f(69,"Optional plugin files for "),h(70,"a",19),f(71,"custom reports"),p(),f(72," or "),h(73,"a",20),f(74,"custom history storage"),p(),f(75,"."),p(),P(76,fj,6,2,"div",16),h(77,"div",8)(78,"a",9),R("click",function(){return o.configuration.addPlugin()}),v(79,"i",10),f(80," Add plugin"),p()(),v(81,"br"),h(82,"h3"),f(83,"Assembly filters"),p(),h(84,"div",6),f(85,"Optional list of "),h(86,"b"),f(87,"assemblies"),p(),f(88," that should be included or excluded in the report. "),v(89,"br"),f(90,"Exclusion filters take precedence over inclusion filters. "),v(91,"br"),f(92,"Wildcards are allowed."),v(93,"br"),h(94,"p"),f(95,"Examples:"),v(96,"br"),h(97,"code"),f(98,"+Included"),p(),v(99,"br"),h(100,"code"),f(101,"-Excluded"),p()()(),P(102,hj,6,2,"div",16),h(103,"div",8)(104,"a",9),R("click",function(){return o.configuration.addAssemblyFilter()}),v(105,"i",10),f(106," Add assembly filter"),p()(),v(107,"br"),h(108,"h3"),f(109,"Class filters"),p(),h(110,"div",6),f(111,"Optional list of "),h(112,"b"),f(113,"classes"),p(),f(114," that should be included or excluded in the report. "),v(115,"br"),f(116,"Exclusion filters take precedence over inclusion filters. "),v(117,"br"),f(118,"Wildcards are allowed."),v(119,"br"),h(120,"p"),f(121,"Examples:"),v(122,"br"),h(123,"code"),f(124,"+Included"),p(),v(125,"br"),h(126,"code"),f(127,"-Excluded"),p()()(),P(128,pj,6,2,"div",16),h(129,"div",8)(130,"a",9),R("click",function(){return o.configuration.addClassFilter()}),v(131,"i",10),f(132," Add class filter"),p()(),v(133,"br"),h(134,"h3"),f(135,"File filters"),p(),h(136,"div",6),f(137,"Optional list of "),h(138,"b"),f(139,"files"),p(),f(140," that should be included or excluded in the report. "),v(141,"br"),f(142,"Exclusion filters take precedence over inclusion filters. "),v(143,"br"),f(144,"Wildcards are allowed."),v(145,"br"),h(146,"p"),f(147,"Examples:"),v(148,"br"),h(149,"code"),f(150,"+Included"),p(),v(151,"br"),h(152,"code"),f(153,"-Excluded"),p()()(),P(154,gj,6,2,"div",16),h(155,"div",8)(156,"a",9),R("click",function(){return o.configuration.addFileFilter()}),v(157,"i",10),f(158," Add file filter"),p()(),v(159,"br"),h(160,"h3"),f(161,"Verbosity"),p(),h(162,"div",6),f(163,"The verbosity level of the log messages."),p(),h(164,"div",8)(165,"select",21),R("ngModelChange",function(s){return o.configuration.selectedverbosity=s}),P(166,mj,2,2,"option",22),p()(),v(167,"br"),h(168,"h3"),f(169,"Title"),p(),h(170,"div",6),f(171,"Optional title."),p(),h(172,"div",8)(173,"input",23),R("ngModelChange",function(s){return o.configuration.title=s}),p()(),v(174,"br"),h(175,"h3"),f(176,"Tag"),p(),h(177,"div",6),f(178,"Optional tag or build version."),p(),h(179,"div",8)(180,"input",24),R("ngModelChange",function(s){return o.configuration.tag=s}),p()(),v(181,"br"),h(182,"h3"),f(183,"License"),p(),h(184,"div",6),f(185,"Optional license. Get your license here: "),h(186,"a",25),f(187,"https://reportgenerator.io/pro"),p()(),h(188,"div",8)(189,"textarea",26),R("ngModelChange",function(s){return o.configuration.license=s}),p()()()(),h(190,"div",27)(191,"div",28)(192,"h3"),f(193,"Instructions"),p(),f(194," Install "),h(195,"a",29),f(196),p(),P(197,vj,6,2,"div",30),h(198,"h4",31),f(199,"Usage"),p(),h(200,"pre",32),f(201),p(),h(202,"button",33),R("click",function(){return o.copy()}),P(203,yj,3,0,"span",5),P(204,_j,3,0,"span",5),p()(),h(205,"div",34)(206,"h3"),f(207,"Instructions"),p(),f(208," Install "),h(209,"a",29),f(210),p(),P(211,Cj,6,2,"div",30),h(212,"h4",31),f(213,"Usage"),p(),h(214,"pre",32),f(215),p(),h(216,"button",33),R("click",function(){return o.copy()}),P(217,Dj,3,0,"span",5),P(218,bj,3,0,"span",5),p()()()()()),2&n&&(_(8),w("ngForOf",o.environments),_(2),w("ngIf",o.severalPackagesAvailable()),_(8),w("ngForOf",o.configuration.reports)("ngForTrackBy",o.trackByIndex),_(11),w("ngModel",o.configuration.targetdir),_(10),w("ngForOf",o.configuration.types)("ngForTrackBy",o.trackByIndex),_(2),w("ngForOf",o.configuration.reporttypes)("ngForTrackBy",o.trackByIndex),_(7),w("ngForOf",o.configuration.sourcedirectories)("ngForTrackBy",o.trackByIndex),_(16),w("ngModel",o.configuration.historydir)("required",o.configuration.historyDirRequired()),_(12),w("ngForOf",o.configuration.plugins)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.assemblyfilters)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.classfilters)("ngForTrackBy",o.trackByIndex),_(26),w("ngForOf",o.configuration.filefilters)("ngForTrackBy",o.trackByIndex),_(11),w("ngModel",o.configuration.selectedverbosity),_(1),w("ngForOf",o.configuration.verbosities)("ngForTrackBy",o.trackByIndex),_(7),w("ngModel",o.configuration.title),_(7),w("ngModel",o.configuration.tag),_(6),w("routerLink",K(40,wj)),_(3),w("ngModel",o.configuration.license),_(6),w("href",o.selectedPackage.url,ro),_(1),Ce(o.selectedPackage.name),_(1),w("ngForOf",o.selectedPackage.installOptions),_(4),Ce(o.getUsage()),_(2),w("ngIf",!o.usageCopied),_(1),w("ngIf",o.usageCopied),_(5),w("href",o.selectedPackage.url,ro),_(1),Ce(o.selectedPackage.name),_(1),w("ngForOf",o.selectedPackage.installOptions),_(4),Ce(o.getUsage()),_(2),w("ngIf",!o.usageCopied),_(1),w("ngIf",o.usageCopied))},dependencies:[ec,Xl,Ww,Yw,jo,Jl,bh,Ul,Bl,$o,Th,Cs,Bo,Ef,vl,ml,pn],styles:[".sticky[_ngcontent-%COMP%]{position:sticky;top:100px}"]}),t})(),title:"Usage",data:{canonical:"/usage"}},{path:"usage.html",redirectTo:"/usage"},{path:"pro",component:Z3,title:"PRO",data:{canonical:"/pro"}},{path:"pro.html",redirectTo:"/pro"},{path:"contact",component:r3,title:"Contact",data:{canonical:"/contact"}},{path:"contact.html",redirectTo:"/contact"},{path:"404",component:f3,title:"404 - Not found"},{path:"**",redirectTo:"/404"}];(function Zk(e,t){return BN({rootComponent:e,...$D(t)})})(xL,{providers:[xm(eF,(()=>{var e;class t{}return(e=t).\u0275fac=function(n){return new(n||e)},e.\u0275mod=Cn({type:e}),e.\u0275inj=en({imports:[Xb.forRoot(Ej,{scrollPositionRestoration:"enabled",scrollOffset:[0,0],anchorScrolling:"enabled"}),Xb]}),t})(),ec),bE,wE,yE,function qV(...e){const t=[Nh,hE,dE,{provide:tc,useExisting:dE},{provide:nc,useExisting:hE},{provide:bs,useValue:zV,multi:!0},{provide:Oh,useValue:!0},{provide:mE,useClass:GV}];for(const r of e)t.push(...r.\u0275providers);return Ru(t)}(function WV(){return function Ar(e,t){return{\u0275kind:e,\u0275providers:t}}(or.LegacyInterceptors,[{provide:vE,useFactory:FV},{provide:bs,useExisting:vE,multi:!0}])}())]}).catch(e=>console.error(e))}},ue=>{ue(ue.s=603)}]); \ No newline at end of file diff --git a/docs/main.ffb8fee3758b850b.js b/docs/main.ffb8fee3758b850b.js new file mode 100644 index 00000000..b41dcfd1 --- /dev/null +++ b/docs/main.ffb8fee3758b850b.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[179],{139:()=>{let Re=null,Wr=1;function Se(e){const n=Re;return Re=e,n}function ig(e){if((!wi(e)||e.dirty)&&(e.dirty||e.lastCleanEpoch!==Wr)){if(!e.producerMustRecompute(e)&&!nu(e))return e.dirty=!1,void(e.lastCleanEpoch=Wr);e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=Wr}}function nu(e){Zr(e);for(let n=0;n0}function Zr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let hg=null;function Ce(e){return"function"==typeof e}function iu(e){const t=e(r=>{Error.call(r),r.stack=(new Error).stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}const su=iu(e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((r,o)=>`${o+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t});function au(e,n){if(e){const t=e.indexOf(n);0<=t&&e.splice(t,1)}}class Et{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const i of t)i.remove(this);else t.remove(this);const{initialTeardown:r}=this;if(Ce(r))try{r()}catch(i){n=i instanceof su?i.errors:[i]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const i of o)try{yg(i)}catch(s){n=n??[],s instanceof su?n=[...n,...s.errors]:n.push(s)}}if(n)throw new su(n)}}add(n){var t;if(n&&n!==this)if(this.closed)yg(n);else{if(n instanceof Et){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(t=this._finalizers)&&void 0!==t?t:[]).push(n)}}_hasParent(n){const{_parentage:t}=this;return t===n||Array.isArray(t)&&t.includes(n)}_addParent(n){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(n),t):t?[t,n]:n}_removeParent(n){const{_parentage:t}=this;t===n?this._parentage=null:Array.isArray(t)&&au(t,n)}remove(n){const{_finalizers:t}=this;t&&au(t,n),n instanceof Et&&n._removeParent(this)}}Et.EMPTY=(()=>{const e=new Et;return e.closed=!0,e})();const mg=Et.EMPTY;function vg(e){return e instanceof Et||e&&"closed"in e&&Ce(e.remove)&&Ce(e.add)&&Ce(e.unsubscribe)}function yg(e){Ce(e)?e():e.unsubscribe()}const vr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},aa={setTimeout(e,n,...t){const{delegate:r}=aa;return r?.setTimeout?r.setTimeout(e,n,...t):setTimeout(e,n,...t)},clearTimeout(e){const{delegate:n}=aa;return(n?.clearTimeout||clearTimeout)(e)},delegate:void 0};function _g(e){aa.setTimeout(()=>{const{onUnhandledError:n}=vr;if(!n)throw e;n(e)})}function lu(){}const $M=cu("C",void 0,void 0);function cu(e,n,t){return{kind:e,value:n,error:t}}let yr=null;function la(e){if(vr.useDeprecatedSynchronousErrorHandling){const n=!yr;if(n&&(yr={errorThrown:!1,error:null}),e(),n){const{errorThrown:t,error:r}=yr;if(yr=null,t)throw r}}else e()}class uu extends Et{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,vg(n)&&n.add(this)):this.destination=QM}static create(n,t,r){return new ca(n,t,r)}next(n){this.isStopped?fu(function zM(e){return cu("N",e,void 0)}(n),this):this._next(n)}error(n){this.isStopped?fu(function GM(e){return cu("E",void 0,e)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?fu($M,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(n){this.destination.next(n)}_error(n){try{this.destination.error(n)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const WM=Function.prototype.bind;function du(e,n){return WM.call(e,n)}class ZM{constructor(n){this.partialObserver=n}next(n){const{partialObserver:t}=this;if(t.next)try{t.next(n)}catch(r){ua(r)}}error(n){const{partialObserver:t}=this;if(t.error)try{t.error(n)}catch(r){ua(r)}else ua(n)}complete(){const{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(t){ua(t)}}}class ca extends uu{constructor(n,t,r){let o;if(super(),Ce(n)||!n)o={next:n??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&vr.useDeprecatedNextContext?(i=Object.create(n),i.unsubscribe=()=>this.unsubscribe(),o={next:n.next&&du(n.next,i),error:n.error&&du(n.error,i),complete:n.complete&&du(n.complete,i)}):o=n}this.destination=new ZM(o)}}function ua(e){vr.useDeprecatedSynchronousErrorHandling?function qM(e){vr.useDeprecatedSynchronousErrorHandling&&yr&&(yr.errorThrown=!0,yr.error=e)}(e):_g(e)}function fu(e,n){const{onStoppedNotification:t}=vr;t&&aa.setTimeout(()=>t(e,n))}const QM={closed:!0,next:lu,error:function YM(e){throw e},complete:lu},hu="function"==typeof Symbol&&Symbol.observable||"@@observable";function qn(e){return e}function Cg(e){return 0===e.length?qn:1===e.length?e[0]:function(t){return e.reduce((r,o)=>o(r),t)}}let Te=(()=>{class e{constructor(t){t&&(this._subscribe=t)}lift(t){const r=new e;return r.source=this,r.operator=t,r}subscribe(t,r,o){const i=function KM(e){return e&&e instanceof uu||function JM(e){return e&&Ce(e.next)&&Ce(e.error)&&Ce(e.complete)}(e)&&vg(e)}(t)?t:new ca(t,r,o);return la(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(t){try{return this._subscribe(t)}catch(r){t.error(r)}}forEach(t,r){return new(r=Dg(r))((o,i)=>{const s=new ca({next:a=>{try{t(a)}catch(l){i(l),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(t){var r;return null===(r=this.source)||void 0===r?void 0:r.subscribe(t)}[hu](){return this}pipe(...t){return Cg(t)(this)}toPromise(t){return new(t=Dg(t))((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=n=>new e(n),e})();function Dg(e){var n;return null!==(n=e??vr.Promise)&&void 0!==n?n:Promise}const e1=iu(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let zt=(()=>{class e extends Te{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){const r=new wg(this,this);return r.operator=t,r}_throwIfClosed(){if(this.closed)throw new e1}next(t){la(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const r of this.currentObservers)r.next(t)}})}error(t){la(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;const{observers:r}=this;for(;r.length;)r.shift().error(t)}})}complete(){la(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:t}=this;for(;t.length;)t.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){const{hasError:r,isStopped:o,observers:i}=this;return r||o?mg:(this.currentObservers=null,i.push(t),new Et(()=>{this.currentObservers=null,au(i,t)}))}_checkFinalizedStatuses(t){const{hasError:r,thrownError:o,isStopped:i}=this;r?t.error(o):i&&t.complete()}asObservable(){const t=new Te;return t.source=this,t}}return e.create=(n,t)=>new wg(n,t),e})();class wg extends zt{constructor(n,t){super(),this.destination=n,this.source=t}next(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,n)}error(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,n)}complete(){var n,t;null===(t=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===t||t.call(n)}_subscribe(n){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(n))&&void 0!==r?r:mg}}function bg(e){return Ce(e?.lift)}function $e(e){return n=>{if(bg(n))return n.lift(function(t){try{return e(t,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function Ve(e,n,t,r,o){return new t1(e,n,t,r,o)}class t1 extends uu{constructor(n,t,r,o,i,s){super(n),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=t?function(a){try{t(a)}catch(l){n.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){n.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:t}=this;super.unsubscribe(),!t&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}}function K(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>{r.next(e.call(n,i,o++))}))})}function Wn(e){return this instanceof Wn?(this.v=e,this):new Wn(e)}function Sg(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=function vu(e){var n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(i){t[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Tg=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function Ag(e){return Ce(e?.then)}function xg(e){return Ce(e[hu])}function Ng(e){return Symbol.asyncIterator&&Ce(e?.[Symbol.asyncIterator])}function Rg(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Og=function b1(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function Pg(e){return Ce(e?.[Og])}function kg(e){return function Mg(e,n,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,r=t.apply(e,n||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(g){r[g]&&(o[g]=function(m){return new Promise(function(v,_){i.push([g,m,v,_])>1||a(g,m)})})}function a(g,m){try{!function l(g){g.value instanceof Wn?Promise.resolve(g.value.v).then(c,u):d(i[0][2],g)}(r[g](m))}catch(v){d(i[0][3],v)}}function c(g){a("next",g)}function u(g){a("throw",g)}function d(g,m){g(m),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const t=e.getReader();try{for(;;){const{value:r,done:o}=yield Wn(t.read());if(o)return yield Wn(void 0);yield yield Wn(r)}}finally{t.releaseLock()}})}function Fg(e){return Ce(e?.getReader)}function qt(e){if(e instanceof Te)return e;if(null!=e){if(xg(e))return function E1(e){return new Te(n=>{const t=e[hu]();if(Ce(t.subscribe))return t.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Tg(e))return function I1(e){return new Te(n=>{for(let t=0;t{e.then(t=>{n.closed||(n.next(t),n.complete())},t=>n.error(t)).then(null,_g)})}(e);if(Ng(e))return Lg(e);if(Pg(e))return function S1(e){return new Te(n=>{for(const t of e)if(n.next(t),n.closed)return;n.complete()})}(e);if(Fg(e))return function T1(e){return Lg(kg(e))}(e)}throw Rg(e)}function Lg(e){return new Te(n=>{(function A1(e,n){var t,r,o,i;return function Eg(e,n,t,r){return new(t||(t=Promise))(function(i,s){function a(u){try{c(r.next(u))}catch(d){s(d)}}function l(u){try{c(r.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof t?i:new t(function(s){s(i)})}(u.value).then(a,l)}c((r=r.apply(e,n||[])).next())})}(this,void 0,void 0,function*(){try{for(t=Sg(e);!(r=yield t.next()).done;)if(n.next(r.value),n.closed)return}catch(s){o={error:s}}finally{try{r&&!r.done&&(i=t.return)&&(yield i.call(t))}finally{if(o)throw o.error}}n.complete()})})(e,n).catch(t=>n.error(t))})}function An(e,n,t,r=0,o=!1){const i=n.schedule(function(){t(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function Xe(e,n,t=1/0){return Ce(n)?Xe((r,o)=>K((i,s)=>n(r,i,o,s))(qt(e(r,o))),t):("number"==typeof n&&(t=n),$e((r,o)=>function x1(e,n,t,r,o,i,s,a){const l=[];let c=0,u=0,d=!1;const g=()=>{d&&!l.length&&!c&&n.complete()},m=_=>c{i&&n.next(_),c++;let D=!1;qt(t(_,u++)).subscribe(Ve(n,I=>{o?.(I),i?m(I):n.next(I)},()=>{D=!0},void 0,()=>{if(D)try{for(c--;l.length&&cv(I)):v(I)}g()}catch(I){n.error(I)}}))};return e.subscribe(Ve(n,m,()=>{d=!0,g()})),()=>{a?.()}}(r,o,e,t)))}function Yr(e=1/0){return Xe(qn,e)}const an=new Te(e=>e.complete());function yu(e){return e[e.length-1]}function Vg(e){return Ce(yu(e))?e.pop():void 0}function bi(e){return function R1(e){return e&&Ce(e.schedule)}(yu(e))?e.pop():void 0}function jg(e,n=0){return $e((t,r)=>{t.subscribe(Ve(r,o=>An(r,e,()=>r.next(o),n),()=>An(r,e,()=>r.complete(),n),o=>An(r,e,()=>r.error(o),n)))})}function Hg(e,n=0){return $e((t,r)=>{r.add(e.schedule(()=>t.subscribe(r),n))})}function Ug(e,n){if(!e)throw new Error("Iterable cannot be null");return new Te(t=>{An(t,n,()=>{const r=e[Symbol.asyncIterator]();An(t,n,()=>{r.next().then(o=>{o.done?t.complete():t.next(o.value)})},0,!0)})})}function Oe(e,n){return n?function j1(e,n){if(null!=e){if(xg(e))return function P1(e,n){return qt(e).pipe(Hg(n),jg(n))}(e,n);if(Tg(e))return function F1(e,n){return new Te(t=>{let r=0;return n.schedule(function(){r===e.length?t.complete():(t.next(e[r++]),t.closed||this.schedule())})})}(e,n);if(Ag(e))return function k1(e,n){return qt(e).pipe(Hg(n),jg(n))}(e,n);if(Ng(e))return Ug(e,n);if(Pg(e))return function L1(e,n){return new Te(t=>{let r;return An(t,n,()=>{r=e[Og](),An(t,n,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){return void t.error(s)}i?t.complete():t.next(o)},0,!0)}),()=>Ce(r?.return)&&r.return()})}(e,n);if(Fg(e))return function V1(e,n){return Ug(kg(e),n)}(e,n)}throw Rg(e)}(e,n):qt(e)}class kt extends zt{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const t=super._subscribe(n);return!t.closed&&n.next(this._value),t}getValue(){const{hasError:n,thrownError:t,_value:r}=this;if(n)throw t;return this._throwIfClosed(),r}next(n){super.next(this._value=n)}}function F(...e){return Oe(e,bi(e))}function _r(e){return e<=0?()=>an:$e((n,t)=>{let r=0;n.subscribe(Ve(t,o=>{++r<=e&&(t.next(o),e<=r&&t.complete())}))})}function Bg(e={}){const{connector:n=(()=>new zt),resetOnError:t=!0,resetOnComplete:r=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const g=()=>{a?.unsubscribe(),a=null},m=()=>{g(),s=l=null,u=d=!1},v=()=>{const _=s;m(),_?.unsubscribe()};return $e((_,D)=>{c++,!d&&!u&&g();const I=l=l??n();D.add(()=>{c--,0===c&&!d&&!u&&(a=_u(v,o))}),I.subscribe(D),s||(s=new ca({next:w=>I.next(w),error:w=>{d=!0,g(),a=_u(m,t,w),I.error(w)},complete:()=>{u=!0,g(),a=_u(m,r),I.complete()}}),Oe(_).subscribe(s))})(i)}}function _u(e,n,...t){return!0===n?(e(),null):!1===n?null:n(...t).pipe(_r(1)).subscribe(()=>e())}function Ft(e,n){return $e((t,r)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&r.complete();t.subscribe(Ve(r,l=>{o?.unsubscribe();let c=0;const u=i++;qt(e(l,u)).subscribe(o=Ve(r,d=>r.next(n?n(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function B1(e,n){return e===n}function le(e){for(let n in e)if(e[n]===le)return n;throw Error("Could not find renamed property on target object.")}function da(e,n){for(const t in n)n.hasOwnProperty(t)&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function je(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(je).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const n=e.toString();if(null==n)return""+n;const t=n.indexOf("\n");return-1===t?n:n.substring(0,t)}function Cu(e,n){return null==e||""===e?null===n?"":n:null==n||""===n?e:e+" "+n}const $1=le({__forward_ref__:le});function he(e){return e.__forward_ref__=he,e.toString=function(){return je(this())},e}function j(e){return fa(e)?e():e}function fa(e){return"function"==typeof e&&e.hasOwnProperty($1)&&e.__forward_ref__===he}function Du(e){return e&&!!e.\u0275providers}const $g="https://g.co/ng/security#xss";class M extends Error{constructor(n,t){super(function Qr(e,n){return`NG0${Math.abs(e)}${n?": "+n:""}`}(n,t)),this.code=n}}const Ei=le({\u0275cmp:le}),wu=le({\u0275dir:le}),bu=le({\u0275pipe:le}),Gg=le({\u0275mod:le}),xn=le({\u0275fac:le}),Ii=le({__NG_ELEMENT_ID__:le}),zg=le({__NG_ENV_ID__:le});function G(e){return"string"==typeof e?e:null==e?"":String(e)}function Eu(e,n){throw new M(-201,!1)}function gt(e,n){null==e&&function L(e,n,t,r){throw new Error(`ASSERTION ERROR: ${e}`+(null==r?"":` [Expected=> ${t} ${r} ${n} <=Actual]`))}(n,e,null,"!=")}function O(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function ln(e){return{providers:e.providers||[],imports:e.imports||[]}}function ha(e){return qg(e,ga)||qg(e,Wg)}function qg(e,n){return e.hasOwnProperty(n)?e[n]:null}function pa(e){return e&&(e.hasOwnProperty(Iu)||e.hasOwnProperty(J1))?e[Iu]:null}const ga=le({\u0275prov:le}),Iu=le({\u0275inj:le}),Wg=le({ngInjectableDef:le}),J1=le({ngInjectorDef:le});var X=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}(X||{});let Mu;function Zg(){return Mu}function mt(e){const n=Mu;return Mu=e,n}function Yg(e,n,t){const r=ha(e);return r&&"root"==r.providedIn?void 0===r.value?r.value=r.factory():r.value:t&X.Optional?null:void 0!==n?n:void Eu(je(e))}const pe=globalThis;class N{constructor(n,t){this._desc=n,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=O({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Mi={},Nu="__NG_DI_FLAG__",ma="ngTempTokenPath",t0=/\n/gm,Xg="__source";let Xr;function Yn(e){const n=Xr;return Xr=e,n}function o0(e,n=X.Default){if(void 0===Xr)throw new M(-203,!1);return null===Xr?Yg(e,void 0,n):Xr.get(e,n&X.Optional?null:void 0,n)}function k(e,n=X.Default){return(Zg()||o0)(j(e),n)}function A(e,n=X.Default){return k(e,va(n))}function va(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Ru(e){const n=[];for(let t=0;tn){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const m=8&r?g:null;if(m&&-1!==Kg(m,c,0)||2&r&&c!==g){if(Zt(r))return!1;s=!0}}}}else{if(!s&&!Zt(r)&&!Zt(l))return!1;if(s&&Zt(l))continue;s=!1,r=l|1&r}}return Zt(r)||s}function Zt(e){return 0==(1&e)}function f0(e,n,t,r){if(null===n)return-1;let o=0;if(r||!t){let i=!1;for(;o-1)for(t++;t0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""!==o&&!Zt(s)&&(n+=sm(i,o),o=""),r=s,i=i||!Zt(r);t++}return""!==o&&(n+=sm(i,o)),n}function Mt(e){return Nn(()=>{const n=lm(e),t={...n,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===ya.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Wt.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};cm(t);const r=e.dependencies;return t.directiveDefs=_a(r,!1),t.pipeDefs=_a(r,!0),t.id=function b0(e){let n=0;const t=[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(const o of t)n=Math.imul(31,n)+o.charCodeAt(0)<<0;return n+=2147483648,"c"+n}(t),t})}function C0(e){return Q(e)||Ge(e)}function D0(e){return null!==e}function Rn(e){return Nn(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function am(e,n){if(null==e)return cn;const t={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),t[o]=r,n&&(n[o]=i)}return t}function $(e){return Nn(()=>{const n=lm(e);return cm(n),n})}function Q(e){return e[Ei]||null}function Ge(e){return e[wu]||null}function Je(e){return e[bu]||null}function et(e,n){const t=e[Gg]||null;if(!t&&!0===n)throw new Error(`Type ${je(e)} does not have '\u0275mod' property.`);return t}function lm(e){const n={};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:n,inputTransforms:null,inputConfig:e.inputs||cn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:am(e.inputs,n),outputs:am(e.outputs),debugInfo:null}}function cm(e){e.features?.forEach(n=>n(e))}function _a(e,n){if(!e)return null;const t=n?Je:C0;return()=>("function"==typeof e?e():e).map(r=>t(r)).filter(D0)}const Ae=0,T=1,H=2,we=3,Yt=4,tt=5,un=6,Jr=7,ge=8,it=9,Kr=10,z=11,Ai=12,um=13,eo=14,Me=15,xi=16,to=17,dn=18,Ni=19,dm=20,Xn=21,Ca=22,Cr=23,U=25,Pu=1,fm=2,ku=6,fn=7,no=9,Pe=11;function Ke(e){return Array.isArray(e)&&"object"==typeof e[Pu]}function Ye(e){return Array.isArray(e)&&!0===e[Pu]}function Fu(e){return 0!=(4&e.flags)}function Dr(e){return e.componentOffset>-1}function wa(e){return 1==(1&e.flags)}function Qt(e){return!!e.template}function Lu(e){return 0!=(512&e[H])}function wr(e,n){return e.hasOwnProperty(xn)?e[xn]:null}class S0{constructor(n,t,r){this.previousValue=n,this.currentValue=t,this.firstChange=r}isFirstChange(){return this.firstChange}}function Lt(){return mm}function mm(e){return e.type.prototype.ngOnChanges&&(e.setInput=A0),T0}function T0(){const e=ym(this),n=e?.current;if(n){const t=e.previous;if(t===cn)e.previous=n;else for(let r in n)t[r]=n[r];e.current=null,this.ngOnChanges(n)}}function A0(e,n,t,r){const o=this.declaredInputs[t],i=ym(e)||function x0(e,n){return e[vm]=n}(e,{previous:cn,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new S0(l&&l.currentValue,n,a===cn),e[r]=n}Lt.ngInherit=!0;const vm="__ngSimpleChanges__";function ym(e){return e[vm]||null}const hn=function(e,n,t){};function me(e){for(;Array.isArray(e);)e=e[Ae];return e}function Oi(e,n){return me(n[e])}function st(e,n){return me(n[e.index])}function Pi(e,n){return e.data[n]}function St(e,n){const t=n[e];return Ke(t)?t:t[Ae]}function Bu(e){return 128==(128&e[H])}function pn(e,n){return null==n?null:e[n]}function Dm(e){e[to]=0}function k0(e){1024&e[H]||(e[H]|=1024,Bu(e)&&ba(e))}function bm(e){9216&e[H]&&ba(e)}function ba(e){let n=e[we];for(;null!==n&&!(Ye(n)&&n[ku]||Ke(n)&&8192&n[H]);){if(Ye(n))n[ku]=!0;else if(n[H]|=8192,!Bu(n))break;n=n[we]}}function Ea(e,n){if(256==(256&e[H]))throw new M(911,!1);null===e[Xn]&&(e[Xn]=[]),e[Xn].push(n)}const B={lFrame:Om(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function Im(){return B.bindingsEnabled}function b(){return B.lFrame.lView}function J(){return B.lFrame.tView}function re(e){return B.lFrame.contextLView=e,e[ge]}function oe(e){return B.lFrame.contextLView=null,e}function ue(){let e=Mm();for(;null!==e&&64===e.type;)e=e.parent;return e}function Mm(){return B.lFrame.currentTNode}function gn(e,n){const t=B.lFrame;t.currentTNode=e,t.isParent=n}function Gu(){return B.lFrame.isParent}function zu(){B.lFrame.isParent=!1}function at(){const e=B.lFrame;let n=e.bindingRootIndex;return-1===n&&(n=e.bindingRootIndex=e.tView.bindingStartIndex),n}function mn(){return B.lFrame.bindingIndex++}function q0(e,n){const t=B.lFrame;t.bindingIndex=t.bindingRootIndex=e,qu(n)}function qu(e){B.lFrame.currentDirectiveIndex=e}function xm(){return B.lFrame.currentQueryIndex}function Zu(e){B.lFrame.currentQueryIndex=e}function Z0(e){const n=e[T];return 2===n.type?n.declTNode:1===n.type?e[tt]:null}function Nm(e,n,t){if(t&X.SkipSelf){let o=n,i=e;for(;!(o=o.parent,null!==o||t&X.Host||(o=Z0(i),null===o||(i=i[eo],10&o.type))););if(null===o)return!1;n=o,e=i}const r=B.lFrame=Rm();return r.currentTNode=n,r.lView=e,!0}function Yu(e){const n=Rm(),t=e[T];B.lFrame=n,n.currentTNode=t.firstChild,n.lView=e,n.tView=t,n.contextLView=e,n.bindingIndex=t.bindingStartIndex,n.inI18n=!1}function Rm(){const e=B.lFrame,n=null===e?null:e.child;return null===n?Om(e):n}function Om(e){const n={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 null!==e&&(e.child=n),n}function Pm(){const e=B.lFrame;return B.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const km=Pm;function Qu(){const e=Pm();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 lt(){return B.lFrame.selectedIndex}function br(e){B.lFrame.selectedIndex=e}function De(){const e=B.lFrame;return Pi(e.tView,e.selectedIndex)}let Lm=!0;function Ia(){return Lm}function Jn(e){Lm=e}function Ma(e,n){for(let t=n.directiveStart,r=n.directiveEnd;t=r)break}else n[l]<0&&(e[to]+=65536),(a>14>16&&(3&e[H])===n&&(e[H]+=16384,jm(a,i)):jm(a,i)}const io=-1;class Fi{constructor(n,t,r){this.factory=n,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=r}}function Ku(e){return e!==io}function Li(e){return 32767&e}function Vi(e,n){let t=function sS(e){return e>>16}(e),r=n;for(;t>0;)r=r[eo],t--;return r}let ed=!0;function Aa(e){const n=ed;return ed=e,n}const Hm=255,Um=5;let aS=0;const vn={};function xa(e,n){const t=Bm(e,n);if(-1!==t)return t;const r=n[T];r.firstCreatePass&&(e.injectorIndex=n.length,td(r.data,e),td(n,null),td(r.blueprint,null));const o=Na(e,n),i=e.injectorIndex;if(Ku(o)){const s=Li(o),a=Vi(o,n),l=a[T].data;for(let c=0;c<8;c++)n[i+c]=a[s+c]|l[s+c]}return n[i+8]=o,i}function td(e,n){e.push(0,0,0,0,0,0,0,0,n)}function Bm(e,n){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===n[e.injectorIndex+8]?-1:e.injectorIndex}function Na(e,n){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let t=0,r=null,o=n;for(;null!==o;){if(r=Ym(o),null===r)return io;if(t++,o=o[eo],-1!==r.injectorIndex)return r.injectorIndex|t<<16}return io}function nd(e,n,t){!function lS(e,n,t){let r;"string"==typeof t?r=t.charCodeAt(0)||0:t.hasOwnProperty(Ii)&&(r=t[Ii]),null==r&&(r=t[Ii]=aS++);const o=r&Hm;n.data[e+(o>>Um)]|=1<=0?n&Hm:fS:n}(t);if("function"==typeof i){if(!Nm(n,e,r))return r&X.Host?$m(o,0,r):Gm(n,t,r,o);try{let s;if(s=i(r),null!=s||r&X.Optional)return s;Eu()}finally{km()}}else if("number"==typeof i){let s=null,a=Bm(e,n),l=io,c=r&X.Host?n[Me][tt]:null;for((-1===a||r&X.SkipSelf)&&(l=-1===a?Na(e,n):n[a+8],l!==io&&Zm(r,!1)?(s=n[T],a=Li(l),n=Vi(l,n)):a=-1);-1!==a;){const u=n[T];if(Wm(i,a,u.data)){const d=uS(a,n,t,s,r,c);if(d!==vn)return d}l=n[a+8],l!==io&&Zm(r,n[T].data[a+8]===c)&&Wm(i,a,n)?(s=u,a=Li(l),n=Vi(l,n)):a=-1}}return o}function uS(e,n,t,r,o,i){const s=n[T],a=s.data[e+8],u=Ra(a,s,t,null==r?Dr(a)&&ed:r!=s&&0!=(3&a.type),o&X.Host&&i===a);return null!==u?Er(n,s,u,a):vn}function Ra(e,n,t,r,o){const i=e.providerIndexes,s=n.data,a=1048575&i,l=e.directiveStart,u=i>>20,g=o?a+u:e.directiveEnd;for(let m=r?a:a+u;m=l&&v.type===t)return m}if(o){const m=s[l];if(m&&Qt(m)&&m.type===t)return l}return null}function Er(e,n,t,r){let o=e[t];const i=n.data;if(function nS(e){return e instanceof Fi}(o)){const s=o;s.resolving&&function z1(e,n){const t=n?`. Dependency path: ${n.join(" > ")} > ${e}`:"";throw new M(-200,`Circular dependency in DI detected for ${e}${t}`)}(function ne(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():G(e)}(i[t]));const a=Aa(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?mt(s.injectImpl):null;Nm(e,r,X.Default);try{o=e[t]=s.factory(void 0,i,e,r),n.firstCreatePass&&t>=r.directiveStart&&function eS(e,n,t){const{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=n.type.prototype;if(r){const s=mm(n);(t.preOrderHooks??=[]).push(e,s),(t.preOrderCheckHooks??=[]).push(e,s)}o&&(t.preOrderHooks??=[]).push(0-e,o),i&&((t.preOrderHooks??=[]).push(e,i),(t.preOrderCheckHooks??=[]).push(e,i))}(t,i[t],n)}finally{null!==c&&mt(c),Aa(a),s.resolving=!1,km()}}return o}function Wm(e,n,t){return!!(t[n+(e>>Um)]&1<{const n=e.prototype.constructor,t=n[xn]||rd(n),r=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){const i=o[xn]||rd(o);if(i&&i!==t)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function rd(e){return fa(e)?()=>{const n=rd(j(e));return n&&n()}:wr(e)}function Ym(e){const n=e[T],t=n.type;return 2===t?n.declTNode:1===t?e[tt]:null}const co="__parameters__";function fo(e,n,t){return Nn(()=>{const r=function od(e){return function(...t){if(e){const r=e(...t);for(const o in r)this[o]=r[o]}}}(n);function o(...i){if(this instanceof o)return r.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(co)?l[co]:Object.defineProperty(l,co,{value:[]})[co];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return t&&(o.prototype=Object.create(t.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function po(e,n){e.forEach(t=>Array.isArray(t)?po(t,n):n(t))}function Xm(e,n,t){n>=e.length?e.push(t):e.splice(n,0,t)}function Pa(e,n){return n>=e.length-1?e.pop():e.splice(n,1)[0]}function Tt(e,n,t){let r=go(e,n);return r>=0?e[1|r]=t:(r=~r,function Jm(e,n,t,r){let o=e.length;if(o==n)e.push(t,r);else if(1===o)e.push(r,e[0]),e[0]=t;else{for(o--,e.push(e[o-1],e[o]);o>n;)e[o]=e[o-2],o--;e[n]=t,e[n+1]=r}}(e,r,n,t)),r}function sd(e,n){const t=go(e,n);if(t>=0)return e[1|t]}function go(e,n){return function Km(e,n,t){let r=0,o=e.length>>t;for(;o!==r;){const i=r+(o-r>>1),s=e[i<n?o=i:r=i+1}return~(o<{t.push(s)};return po(n,s=>{const a=s;Ha(a,i,[],r)&&(o||=[],o.push(a))}),void 0!==o&&sv(o,i),t}function sv(e,n){for(let t=0;t{n(i,r)})}}function Ha(e,n,t,r){if(!(e=j(e)))return!1;let o=null,i=pa(e);const s=!i&&Q(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=pa(l),!i)return!1;o=l}const a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)Ha(c,n,t,r)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;r.add(o);try{po(i.imports,u=>{Ha(u,n,t,r)&&(c||=[],c.push(u))})}finally{}void 0!==c&&sv(c,n)}if(!a){const c=wr(o)||(()=>new o);n({provide:o,useFactory:c,deps:te},o),n({provide:cd,useValue:o,multi:!0},o),n({provide:vo,useValue:()=>k(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;dd(l,u=>{n(u,c)})}}}return o!==e&&void 0!==e.providers}function dd(e,n){for(let t of e)Du(t)&&(t=t.\u0275providers),Array.isArray(t)?dd(t,n):n(t)}const kS=le({provide:String,useValue:le});function fd(e){return null!==e&&"object"==typeof e&&kS in e}function Ir(e){return"function"==typeof e}const hd=new N("Set Injector scope."),Ua={},LS={};let pd;function Ba(){return void 0===pd&&(pd=new ja),pd}class At{}class Mr extends At{get destroyed(){return this._destroyed}constructor(n,t,r,o){super(),this.parent=t,this.source=r,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,md(n,s=>this.processProvider(s)),this.records.set(rv,yo(void 0,this)),o.has("environment")&&this.records.set(At,yo(void 0,this));const i=this.records.get(hd);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(cd,te,X.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const t of this._ngOnDestroyHooks)t.ngOnDestroy();const n=this._onDestroyHooks;this._onDestroyHooks=[];for(const t of n)t()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(n){return this.assertNotDestroyed(),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){this.assertNotDestroyed();const t=Yn(this),r=mt(void 0);try{return n()}finally{Yn(t),mt(r)}}get(n,t=Mi,r=X.Default){if(this.assertNotDestroyed(),n.hasOwnProperty(zg))return n[zg](this);r=va(r);const i=Yn(this),s=mt(void 0);try{if(!(r&X.SkipSelf)){let l=this.records.get(n);if(void 0===l){const c=function BS(e){return"function"==typeof e||"object"==typeof e&&e instanceof N}(n)&&ha(n);l=c&&this.injectableDefInScope(c)?yo(gd(n),Ua):null,this.records.set(n,l)}if(null!=l)return this.hydrate(n,l)}return(r&X.Self?Ba():this.parent).get(n,t=r&X.Optional&&t===Mi?null:t)}catch(a){if("NullInjectorError"===a.name){if((a[ma]=a[ma]||[]).unshift(je(n)),i)throw a;return function a0(e,n,t,r){const o=e[ma];throw n[Xg]&&o.unshift(n[Xg]),e.message=function l0(e,n,t,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=je(n);if(Array.isArray(n))o=n.map(je).join(" -> ");else if("object"==typeof n){let i=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):je(a)))}o=`{${i.join(", ")}}`}return`${t}${r?"("+r+")":""}[${o}]: ${e.replace(t0,"\n ")}`}("\n"+e.message,o,t,r),e.ngTokenPath=o,e[ma]=null,e}(a,n,"R3InjectorError",this.source)}throw a}finally{mt(s),Yn(i)}}resolveInjectorInitializers(){const n=Yn(this),t=mt(void 0);try{const o=this.get(vo,te,X.Self);for(const i of o)i()}finally{Yn(n),mt(t)}}toString(){const n=[],t=this.records;for(const r of t.keys())n.push(je(r));return`R3Injector[${n.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new M(205,!1)}processProvider(n){let t=Ir(n=j(n))?n:j(n&&n.provide);const r=function jS(e){return fd(e)?yo(void 0,e.useValue):yo(cv(e),Ua)}(n);if(Ir(n)||!0!==n.multi)this.records.get(t);else{let o=this.records.get(t);o||(o=yo(void 0,Ua,!0),o.factory=()=>Ru(o.multi),this.records.set(t,o)),t=n,o.multi.push(n)}this.records.set(t,r)}hydrate(n,t){return t.value===Ua&&(t.value=LS,t.value=t.factory()),"object"==typeof t.value&&t.value&&function US(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(t.value)&&this._ngOnDestroyHooks.add(t.value),t.value}injectableDefInScope(n){if(!n.providedIn)return!1;const t=j(n.providedIn);return"string"==typeof t?"any"===t||this.scopes.has(t):this.injectorDefTypes.has(t)}removeOnDestroy(n){const t=this._onDestroyHooks.indexOf(n);-1!==t&&this._onDestroyHooks.splice(t,1)}}function gd(e){const n=ha(e),t=null!==n?n.factory:wr(e);if(null!==t)return t;if(e instanceof N)throw new M(204,!1);if(e instanceof Function)return function VS(e){const n=e.length;if(n>0)throw function Hi(e,n){const t=[];for(let r=0;rt.factory(e):()=>new e}(e);throw new M(204,!1)}function cv(e,n,t){let r;if(Ir(e)){const o=j(e);return wr(o)||gd(o)}if(fd(e))r=()=>j(e.useValue);else if(function lv(e){return!(!e||!e.useFactory)}(e))r=()=>e.useFactory(...Ru(e.deps||[]));else if(function av(e){return!(!e||!e.useExisting)}(e))r=()=>k(j(e.useExisting));else{const o=j(e&&(e.useClass||e.provide));if(!function HS(e){return!!e.deps}(e))return wr(o)||gd(o);r=()=>new o(...Ru(e.deps))}return r}function yo(e,n,t=!1){return{factory:e,value:n,multi:t?[]:void 0}}function md(e,n){for(const t of e)Array.isArray(t)?md(t,n):t&&Du(t)?md(t.\u0275providers,n):n(t)}function hv(e,n=null,t=null,r){const o=pv(e,n,t,r);return o.resolveInjectorInitializers(),o}function pv(e,n=null,t=null,r,o=new Set){const i=[t||te,ov(e)];return r=r||("object"==typeof e?void 0:je(e)),new Mr(i,n||Ba(),r||null,o)}let _d,_t=(()=>{class e{static#e=this.THROW_IF_NOT_FOUND=Mi;static#t=this.NULL=new ja;static create(t,r){if(Array.isArray(t))return hv({name:""},r,t,"");{const o=t.name??"";return hv({name:o},t.parent,t.providers,o)}}static#n=this.\u0275prov=O({token:e,providedIn:"any",factory:()=>k(rv)});static#r=this.__NG_ELEMENT_ID__=-1}return e})();const Ga=new N("AppId",{providedIn:"root",factory:()=>JS}),JS="ng",mv=new N("Platform Initializer"),Sr=new N("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),vv=new N("CSP nonce",{providedIn:"root",factory:()=>function er(){if(void 0!==_d)return _d;if(typeof document<"u")return document;throw new M(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});function xt(e){return e instanceof Function?e():e}function Za(e){return 128==(128&e.flags)}var rr=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(rr||{});const lT=/^>|^->||--!>|)/g,uT="\u200b$1\u200b";const Ed=new Map;let dT=0;const Md="__ngContext__";function nt(e,n){Ke(n)?(e[Md]=n[Ni],function hT(e){Ed.set(e[Ni],e)}(n)):e[Md]=n}let Sd;function Td(e,n){return Sd(e,n)}function qi(e){const n=e[we];return Ye(n)?n[we]:n}function kv(e){return Lv(e[Ai])}function Fv(e){return Lv(e[Yt])}function Lv(e){for(;null!==e&&!Ye(e);)e=e[Yt];return e}function Co(e,n,t,r,o){if(null!=r){let i,s=!1;Ye(r)?i=r:Ke(r)&&(s=!0,r=r[Ae]);const a=me(r);0===e&&null!==t?null==o?Uv(n,t,a):Tr(n,t,a,o||null,!0):1===e&&null!==t?Tr(n,t,a,o||null,!0):2===e?function tl(e,n,t){const r=Ka(e,n);r&&function RT(e,n,t,r){e.removeChild(n,t,r)}(e,r,n,t)}(n,a,s):3===e&&n.destroyNode(a),null!=i&&function kT(e,n,t,r,o){const i=t[fn];i!==me(t)&&Co(n,e,r,i,o);for(let a=Pe;an.replace(cT,uT))}(n))}function Xa(e,n,t){return e.createElement(n,t)}function jv(e,n){const t=e[no],r=t.indexOf(n);t.splice(r,1)}function Wi(e,n){if(e.length<=Pe)return;const t=Pe+n,r=e[t];if(r){const o=r[xi];null!==o&&o!==e&&jv(o,r),n>0&&(e[t-1][Yt]=r[Yt]);const i=Pa(e,Pe+n);!function ET(e,n){Yi(e,n,n[z],2,null,null),n[Ae]=null,n[tt]=null}(r[T],r);const s=i[dn];null!==s&&s.detachView(i[T]),r[we]=null,r[Yt]=null,r[H]&=-129}return r}function Ja(e,n){if(!(256&n[H])){const t=n[z];n[Cr]&&function ug(e){if(Zr(e),wi(e))for(let n=0;n=0?r[s]():r[-s].unsubscribe(),i+=2}else t[i].call(r[t[i+1]]);null!==r&&(n[Jr]=null);const o=n[Xn];if(null!==o){n[Xn]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[r.directiveStart+o];if(i===Wt.None||i===Wt.Emulated)return null}return st(r,t)}}(e,n.parent,t)}function Tr(e,n,t,r,o){e.insertBefore(n,t,r,o)}function Uv(e,n,t){e.appendChild(n,t)}function Bv(e,n,t,r,o){null!==r?Tr(e,n,t,r,o):Uv(e,n,t)}function Ka(e,n){return e.parentNode(n)}let Rd,rl,zv=function Gv(e,n,t){return 40&e.type?st(e,t):null};function el(e,n,t,r){const o=Nd(e,r,n),i=n[z],a=function $v(e,n,t){return zv(e,n,t)}(r.parent||n[tt],r,n);if(null!=o)if(Array.isArray(t))for(let l=0;le,createScript:e=>e,createScriptURL:e=>e})}catch{}return rl}()?.createScriptURL(e)||e}class ty{constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${$g})`}}function or(e){return e instanceof ty?e.changingThisBreaksApplicationSecurity:e}function Qi(e,n){const t=function qT(e){return e instanceof ty&&e.getTypeName()||null}(e);if(null!=t&&t!==n){if("ResourceURL"===t&&"URL"===n)return!0;throw new Error(`Required a safe ${n}, got a ${t} (see ${$g})`)}return t===n}const QT=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;var wo=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}(wo||{});function bo(e){const n=Ji();return n?n.sanitize(wo.URL,e)||"":Qi(e,"URL")?or(e):function Ld(e){return(e=String(e)).match(QT)?e:"unsafe:"+e}(G(e))}function ly(e){const n=Ji();if(n)return ey(n.sanitize(wo.RESOURCE_URL,e)||"");if(Qi(e,"ResourceURL"))return ey(or(e));throw new M(904,!1)}function Ji(){const e=b();return e&&e[Kr].sanitizer}let uy=(e,n,t)=>null;function Zd(e,n,t=!1){return uy(e,n,t)}class vA{}class hy{}class _A{resolveComponentFactory(n){throw function yA(e){const n=Error(`No component factory found for ${je(e)}.`);return n.ngComponent=e,n}(n)}}let ul=(()=>{class e{static#e=this.NULL=new _A}return e})();function CA(){return Mo(ue(),b())}function Mo(e,n){return new Nt(st(e,n))}let Nt=(()=>{class e{constructor(t){this.nativeElement=t}static#e=this.__NG_ELEMENT_ID__=CA}return e})();function DA(e){return e instanceof Nt?e.nativeElement:e}class gy{}let Fn=(()=>{class e{constructor(){this.destroyNode=null}static#e=this.__NG_ELEMENT_ID__=()=>function wA(){const e=b(),t=St(ue().index,e);return(Ke(t)?t:e)[z]}()}return e})(),bA=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>null})}return e})();class ts{constructor(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}const EA=new ts("17.0.1"),Xd={};function dl(e){return!!Jd(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function Jd(e){return null!==e&&("function"==typeof e||"object"==typeof e)}class vy{constructor(){}supports(n){return dl(n)}create(n){return new AA(n)}}const TA=(e,n)=>n;class AA{constructor(n){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=n||TA}forEachItem(n){let t;for(t=this._itHead;null!==t;t=t._next)n(t)}forEachOperation(n){let t=this._itHead,r=this._removalsHead,o=0,i=null;for(;t||r;){const s=!r||t&&t.currentIndex<_y(r,o,i)?t:r,a=_y(s,o,i),l=s.currentIndex;if(s===r)o--,r=r._nextRemoved;else if(t=t._next,null==s.previousIndex)o++;else{i||(i=[]);const c=a-o,u=l-o;if(c!=u){for(let g=0;g{s=this._trackByFn(o,a),null!==t&&Object.is(t.trackById,s)?(r&&(t=this._verifyReinsertion(t,a,s,o)),Object.is(t.item,a)||this._addIdentityChange(t,a)):(t=this._mismatch(t,a,s,o),r=!0),t=t._next,o++}),this.length=o;return this._truncate(t),this.collection=n,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let n;for(n=this._previousItHead=this._itHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;null!==n;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;null!==n;n=n._nextMoved)n.previousIndex=n.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(n,t,r,o){let i;return null===n?i=this._itTail:(i=n._prev,this._remove(n)),null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._reinsertAfter(n,i,o)):null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(r,o))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._moveAfter(n,i,o)):n=this._addAfter(new xA(t,r),i,o),n}_verifyReinsertion(n,t,r,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null);return null!==i?n=this._reinsertAfter(i,n._prev,o):n.currentIndex!=o&&(n.currentIndex=o,this._addToMoves(n,o)),n}_truncate(n){for(;null!==n;){const t=n._next;this._addToRemovals(this._unlink(n)),n=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(n,t,r){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);const o=n._prevRemoved,i=n._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(n,t,r),this._addToMoves(n,r),n}_moveAfter(n,t,r){return this._unlink(n),this._insertAfter(n,t,r),this._addToMoves(n,r),n}_addAfter(n,t,r){return this._insertAfter(n,t,r),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n}_insertAfter(n,t,r){const o=null===t?this._itHead:t._next;return n._next=o,n._prev=t,null===o?this._itTail=n:o._prev=n,null===t?this._itHead=n:t._next=n,null===this._linkedRecords&&(this._linkedRecords=new yy),this._linkedRecords.put(n),n.currentIndex=r,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);const t=n._prev,r=n._next;return null===t?this._itHead=r:t._next=r,null===r?this._itTail=t:r._prev=t,n}_addToMoves(n,t){return n.previousIndex===t||(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n),n}_addToRemovals(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new yy),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n}_addIdentityChange(n,t){return n.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n}}class xA{constructor(n,t){this.item=n,this.trackById=t,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}}class NA{constructor(){this._head=null,this._tail=null}add(n){null===this._head?(this._head=this._tail=n,n._nextDup=null,n._prevDup=null):(this._tail._nextDup=n,n._prevDup=this._tail,n._nextDup=null,this._tail=n)}get(n,t){let r;for(r=this._head;null!==r;r=r._nextDup)if((null===t||t<=r.currentIndex)&&Object.is(r.trackById,n))return r;return null}remove(n){const t=n._prevDup,r=n._nextDup;return null===t?this._head=r:t._nextDup=r,null===r?this._tail=t:r._prevDup=t,null===this._head}}class yy{constructor(){this.map=new Map}put(n){const t=n.trackById;let r=this.map.get(t);r||(r=new NA,this.map.set(t,r)),r.add(n)}get(n,t){const o=this.map.get(n);return o?o.get(n,t):null}remove(n){const t=n.trackById;return this.map.get(t).remove(n)&&this.map.delete(t),n}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function _y(e,n,t){const r=e.previousIndex;if(null===r)return r;let o=0;return t&&r{if(t&&t.key===o)this._maybeAddToChanges(t,r),this._appendAfter=t,t=t._next;else{const i=this._getOrCreateRecordForKey(o,r);t=this._insertBeforeOrAppend(t,i)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let r=t;null!==r;r=r._nextRemoved)r===this._mapHead&&(this._mapHead=null),this._records.delete(r.key),r._nextRemoved=r._next,r.previousValue=r.currentValue,r.currentValue=null,r._prev=null,r._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,t){if(n){const r=n._prev;return t._next=n,t._prev=r,n._prev=t,r&&(r._next=t),n===this._mapHead&&(this._mapHead=t),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(n,t){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,t);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const r=new OA(n);return this._records.set(n,r),r.currentValue=t,this._addToAdditions(r),r}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;null!==n;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;null!=n;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,t){Object.is(t,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=t,this._addToChanges(n))}_addToAdditions(n){null===this._additionsHead?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){null===this._changesHead?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,t){n instanceof Map?n.forEach(t):Object.keys(n).forEach(r=>t(n[r],r))}}class OA{constructor(n){this.key=n,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function Dy(){return new fl([new vy])}let fl=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:Dy});constructor(t){this.factories=t}static create(t,r){if(null!=r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||Dy()),deps:[[e,new La,new Fa]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(null!=r)return r;throw new M(901,!1)}}return e})();function wy(){return new ns([new Cy])}let ns=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:wy});constructor(t){this.factories=t}static create(t,r){if(r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||wy()),deps:[[e,new La,new Fa]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(r)return r;throw new M(901,!1)}}return e})();function rs(e,n,t,r,o=!1){for(;null!==t;){const i=n[t.index];null!==i&&r.push(me(i)),Ye(i)&&by(i,r);const s=t.type;if(8&s)rs(e,n,t.child,r);else if(32&s){const a=Td(t,n);let l;for(;l=a();)r.push(l)}else if(16&s){const a=Wv(n,t);if(Array.isArray(a))r.push(...a);else{const l=qi(n[Me]);rs(l[T],l,a,r,!0)}}t=o?t.projectionNext:t.next}return r}function by(e,n){for(let t=Pe;t!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{},consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{ba(e.lView)},consumerOnSignalRead(){this.lView[Cr]=this}};function Kd(e){return e.ngOriginalError}class Ln{constructor(){this._console=console}handleError(n){const t=this._findOriginalError(n);this._console.error("ERROR",n),t&&this._console.error("ORIGINAL ERROR",t)}_findOriginalError(n){let t=n&&Kd(n);for(;t&&Kd(t);)t=Kd(t);return t||null}}const Sy=new N("",{providedIn:"root",factory:()=>!1}),W={};function C(e){Ny(J(),b(),lt()+e,!1)}function Ny(e,n,t,r){if(!r)if(3==(3&n[H])){const i=e.preOrderCheckHooks;null!==i&&Sa(n,i,t)}else{const i=e.preOrderHooks;null!==i&&Ta(n,i,0,t)}br(t)}function S(e,n=X.Default){const t=b();return null===t?k(e,n):zm(ue(),t,j(e),n)}function pl(e,n,t,r,o,i,s,a,l,c,u){const d=n.blueprint.slice();return d[Ae]=o,d[H]=140|r,(null!==c||e&&2048&e[H])&&(d[H]|=2048),Dm(d),d[we]=d[eo]=e,d[ge]=t,d[Kr]=s||e&&e[Kr],d[z]=a||e&&e[z],d[it]=l||e&&e[it]||null,d[tt]=i,d[Ni]=function fT(){return dT++}(),d[un]=u,d[dm]=c,d[Me]=2==n.type?e[Me]:d,d}function So(e,n,t,r,o){let i=e.data[n];if(null===i)i=function ef(e,n,t,r,o){const i=Mm(),s=Gu(),l=e.data[n]=function XA(e,n,t,r,o,i){let s=n?n.injectorIndex:-1,a=0;return function oo(){return null!==B.skipHydrationRootTNode}()&&(a|=128),{type:t,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:n,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,s?i:i&&i.parent,t,n,r,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,n,t,r,o),function z0(){return B.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=t,i.value=r,i.attrs=o;const s=function ki(){const e=B.lFrame,n=e.currentTNode;return e.isParent?n:n.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return gn(i,!0),i}function os(e,n,t,r){if(0===t)return-1;const o=n.length;for(let i=0;iU&&Ny(e,n,U,!1),hn(s?2:0,o),t(r,o)}finally{br(i),hn(s?3:1,o)}}function tf(e,n,t){if(Fu(n)){const r=Se(null);try{const i=n.directiveEnd;for(let s=n.directiveStart;snull;function Fy(e,n,t,r){for(let o in e)if(e.hasOwnProperty(o)){t=null===t?{}:t;const i=e[o];null===r?Ly(t,n,o,i):r.hasOwnProperty(o)&&Ly(t,n,r[o],i)}return t}function Ly(e,n,t,r){e.hasOwnProperty(t)?e[t].push(n,r):e[t]=[n,r]}function Rt(e,n,t,r,o,i,s,a){const l=st(n,t);let u,c=n.inputs;!a&&null!=c&&(u=c[r])?(df(e,t,u,r,o),Dr(n)&&function ex(e,n){const t=St(n,e);16&t[H]||(t[H]|=64)}(t,n.index)):3&n.type&&(r=function KA(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(r),o=null!=s?s(o,n.value||"",r):o,i.setProperty(l,r,o))}function af(e,n,t,r){if(Im()){const o=null===r?null:{"":-1},i=function sx(e,n){const t=e.directiveRegistry;let r=null,o=null;if(t)for(let i=0;i0;){const t=e[--n];if("number"==typeof t&&t<0)return t}return 0})(s)!=a&&s.push(a),s.push(t,r,i)}}(e,n,r,os(e,t,o.hostVars,W),o)}function yn(e,n,t,r,o,i){const s=st(e,n);!function cf(e,n,t,r,o,i,s){if(null==i)e.removeAttribute(n,o,t);else{const a=null==s?G(i):s(i,r||"",o);e.setAttribute(n,o,a,t)}}(n[z],s,i,e.value,t,r,o)}function fx(e,n,t,r,o,i){const s=i[n];if(null!==s)for(let a=0;ae.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}(a,s),function LA(e){e.lView[Cr]!==e&&(e.lView=null,Ey.push(e))}(a)),Qu()}}function Wy(e,n){for(let t=kv(e);null!==t;t=Fv(t)){t[ku]=!1;for(let r=Pe;r-1&&(Wi(n,r),Pa(t,r))}this._attachedToViewContainer=!1}Ja(this._lView[T],this._lView)}onDestroy(n){Ea(this._lView,n)}markForCheck(){is(this._cdRefInjectingView||this._lView)}detach(){this._lView[H]&=-129}reattach(){bm(this._lView),this._lView[H]|=128}detectChanges(){!function ff(e,n,t,r=!0){const o=n[Kr],i=o.rendererFactory,s=o.afterRenderEventManager;i.begin?.(),s?.begin();try{qy(e,n,e.template,t),function gx(e){let n=0;for(;9216&e[H]||e[Cr]?.dirty;){if(100===n)throw new M(103,!1);n++,Yy(e,1)}}(n)}catch(l){throw r&&ml(n,l),l}finally{i.end?.(),o.inlineEffectRunner?.flush(),s?.end()}}(this._lView[T],this._lView,this.context,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new M(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function MT(e,n){Yi(e,n,n[z],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new M(902,!1);this._appRef=n}}let as=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Cx}return e})();function Cx(e){return function Dx(e,n,t){if(Dr(e)&&!t){const r=St(e.index,n);return new ss(r,r)}return 47&e.type?new ss(n[Me],n):null}(ue(),b(),16==(16&e))}let vl=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Ix;static#t=this.__NG_ENV_ID__=t=>t}return e})();class Ex extends vl{constructor(n){super(),this._lView=n}onDestroy(n){return Ea(this._lView,n),()=>function $u(e,n){if(null===e[Xn])return;const t=e[Xn].indexOf(n);-1!==t&&e[Xn].splice(t,1)}(this._lView,n)}}function Ix(){return new Ex(b())}function Ar(e,n){return performance?.mark?.(e,n)}function hf(e){return n=>{setTimeout(e,void 0,n)}}const xe=class Rx extends zt{constructor(n=!1){super(),this.__isAsync=n}emit(n){super.next(n)}subscribe(n,t,r){let o=n,i=t||(()=>null),s=r;if(n&&"object"==typeof n){const l=n;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=hf(i),o&&(o=hf(o)),s&&(s=hf(s)));const a=super.subscribe({next:o,error:i,complete:s});return n instanceof Et&&n.add(a),a}};function Xy(...e){}class ae{constructor({enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:t=!1,shouldCoalesceRunChangeDetection:r=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new xe(!1),this.onMicrotaskEmpty=new xe(!1),this.onStable=new xe(!1),this.onError=new xe(!1),typeof Zone>"u")throw new M(908,!1);Zone.assertZonePatched();const o=this;o._nesting=0,o._outer=o._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(o._inner=o._inner.fork(new Zone.TaskTrackingZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(o._inner=o._inner.fork(Zone.longStackTraceZoneSpec)),o.shouldCoalesceEventChangeDetection=!r&&t,o.shouldCoalesceRunChangeDetection=r,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function Ox(){const e="function"==typeof pe.requestAnimationFrame;let n=pe[e?"requestAnimationFrame":"setTimeout"],t=pe[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&n&&t){const r=n[Zone.__symbol__("OriginalDelegate")];r&&(n=r);const o=t[Zone.__symbol__("OriginalDelegate")];o&&(t=o)}return{nativeRequestAnimationFrame:n,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function Fx(e){const n=()=>{!function kx(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(pe,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,gf(e),e.isCheckStableRunning=!0,pf(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),gf(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,r,o,i,s,a)=>{if(function Vx(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return t.invokeTask(o,i,s,a);try{return Jy(e),t.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&n(),Ky(e)}},onInvoke:(t,r,o,i,s,a,l)=>{try{return Jy(e),t.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&n(),Ky(e)}},onHasTask:(t,r,o,i)=>{t.hasTask(o,i),r===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,gf(e),pf(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,r,o,i)=>(t.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ae.isInAngularZone())throw new M(909,!1)}static assertNotInAngularZone(){if(ae.isInAngularZone())throw new M(909,!1)}run(n,t,r){return this._inner.run(n,t,r)}runTask(n,t,r,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,n,Px,Xy,Xy);try{return i.runTask(s,t,r)}finally{i.cancelTask(s)}}runGuarded(n,t,r){return this._inner.runGuarded(n,t,r)}runOutsideAngular(n){return this._outer.run(n)}}const Px={};function pf(e){if(0==e._nesting&&!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 gf(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function Jy(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Ky(e){e._nesting--,pf(e)}const e_=new N("",{providedIn:"root",factory:t_});function t_(){const e=A(ae);let n=!0;return function H1(...e){const n=bi(e),t=function O1(e,n){return"number"==typeof yu(e)?e.pop():n}(e,1/0),r=e;return r.length?1===r.length?qt(r[0]):Yr(t)(Oe(r,n)):an}(new Te(o=>{n=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(n),o.complete()})}),new Te(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{!n&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(n=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ae.assertInAngularZone(),n&&(n=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe(Bg()))}var xr=function(e){return e[e.EarlyRead=0]="EarlyRead",e[e.Write=1]="Write",e[e.MixedReadWrite=2]="MixedReadWrite",e[e.Read=3]="Read",e}(xr||{});const n_={destroy(){}};function o_(e,n){!n&&function vd(e){if(!Zg()&&!function r0(){return Xr}())throw new M(-203,!1)}();const t=n?.injector??A(_t);if(!function tr(e){return"browser"===(e??A(_t)).get(Sr)}(t))return n_;Ar("mark_use_counter",{detail:{feature:"NgAfterNextRender"}});const r=t.get(yl),o=r.handler??=new s_,i=n?.phase??xr.MixedReadWrite,s=()=>{o.unregister(l),a()},a=t.get(vl).onDestroy(s),l=new i_(t,i,()=>{s(),e()});return o.register(l),{destroy:s}}class i_{constructor(n,t,r){this.phase=t,this.callbackFn=r,this.zone=n.get(ae),this.errorHandler=n.get(Ln,null,{optional:!0})}invoke(){try{this.zone.runOutsideAngular(this.callbackFn)}catch(n){this.errorHandler?.handleError(n)}}}class s_{constructor(){this.executingCallbacks=!1,this.buckets={[xr.EarlyRead]:new Set,[xr.Write]:new Set,[xr.MixedReadWrite]:new Set,[xr.Read]:new Set},this.deferredCallbacks=new Set}validateBegin(){if(this.executingCallbacks)throw new M(102,!1)}register(n){(this.executingCallbacks?this.deferredCallbacks:this.buckets[n.phase]).add(n)}unregister(n){this.buckets[n.phase].delete(n),this.deferredCallbacks.delete(n)}execute(){this.executingCallbacks=!0;for(const n of Object.values(this.buckets))for(const t of n)t.invoke();this.executingCallbacks=!1;for(const n of this.deferredCallbacks)this.buckets[n.phase].add(n);this.deferredCallbacks.clear()}destroy(){for(const n of Object.values(this.buckets))n.clear();this.deferredCallbacks.clear()}}let yl=(()=>{class e{constructor(){this.renderDepth=0,this.handler=null,this.internalCallbacks=[]}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){if(this.renderDepth--,0===this.renderDepth){for(const t of this.internalCallbacks)t();this.internalCallbacks.length=0,this.handler?.execute()}}ngOnDestroy(){this.handler?.destroy(),this.handler=null,this.internalCallbacks.length=0}static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new e})}return e})();function Hx(e,n){const t=St(n,e),r=t[T];!function Ux(e,n){for(let t=n.length;t0&&Qv(e,t,i.join(" "))}}(d,Ie,m,r),void 0!==t&&function Xx(e,n,t){const r=e.projection=[];for(let o=0;o=0;r--){const o=e[r];o.hostVars=n+=o.hostVars,o.hostAttrs=Ti(o.hostAttrs,t=Ti(t,o.hostAttrs))}}(r)}function Cl(e){return e===cn?{}:e===te?[]:e}function eN(e,n){const t=e.viewQuery;e.viewQuery=t?(r,o)=>{n(r,o),t(r,o)}:n}function tN(e,n){const t=e.contentQueries;e.contentQueries=t?(r,o,i)=>{n(r,o,i),t(r,o,i)}:n}function nN(e,n){const t=e.hostBindings;e.hostBindings=t?(r,o)=>{n(r,o),t(r,o)}:n}function h_(e){const n=e.inputConfig,t={};for(const r in n)if(n.hasOwnProperty(r)){const o=n[r];Array.isArray(o)&&o[2]&&(t[r]=o[2])}e.inputTransforms=t}function _n(e,n,t){return e[n]=t}function He(e,n,t){return!Object.is(e[n],t)&&(e[n]=t,!0)}function Xt(e,n,t,r){const o=b();return He(o,mn(),n)&&(J(),yn(De(),o,e,n,t,r)),Xt}function Ao(e,n,t,r){return He(e,mn(),t)?n+G(t)+r:W}function wl(e,n){return e<<17|n<<2}function ir(e){return e>>17&32767}function vf(e){return 2|e}function Rr(e){return(131068&e)>>2}function yf(e,n){return-131069&e|n<<2}function _f(e){return 1|e}function b_(e,n,t,r,o){const i=e[t+1],s=null===n;let a=r?ir(i):Rr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];hN(e[a],n)&&(l=!0,e[a+1]=r?_f(u):vf(u)),a=r?ir(u):Rr(u)}l&&(e[t+1]=r?vf(i):_f(i))}function hN(e,n){return null===e||null==n||(Array.isArray(e)?e[1]:e)===n||!(!Array.isArray(e)||"string"!=typeof n)&&go(e,n)>=0}function E(e,n,t){const r=b();return He(r,mn(),n)&&Rt(J(),De(),r,e,n,r[z],t,!1),E}function Cf(e,n,t,r,o){const s=o?"class":"style";df(e,t,n.inputs[s],s,r)}function bl(e,n){return function Jt(e,n,t,r){const o=b(),i=J(),s=function Pn(e){const n=B.lFrame,t=n.bindingIndex;return n.bindingIndex=n.bindingIndex+e,t}(2);i.firstUpdatePass&&function R_(e,n,t,r){const o=e.data;if(null===o[t+1]){const i=o[lt()],s=function N_(e,n){return n>=e.expandoStartIndex}(e,t);(function F_(e,n){return 0!=(e.flags&(n?8:16))})(i,r)&&null===n&&!s&&(n=!1),n=function wN(e,n,t,r){const o=function Wu(e){const n=B.lFrame.currentDirectiveIndex;return-1===n?null:e[n]}(e);let i=r?n.residualClasses:n.residualStyles;if(null===o)0===(r?n.classBindings:n.styleBindings)&&(t=us(t=Df(null,e,n,t,r),n.attrs,r),i=null);else{const s=n.directiveStylingLast;if(-1===s||e[s]!==o)if(t=Df(o,e,n,t,r),null===i){let l=function bN(e,n,t){const r=t?n.classBindings:n.styleBindings;if(0!==Rr(r))return e[ir(r)]}(e,n,r);void 0!==l&&Array.isArray(l)&&(l=Df(null,e,n,l[1],r),l=us(l,n.attrs,r),function EN(e,n,t,r){e[ir(t?n.classBindings:n.styleBindings)]=r}(e,n,r,l))}else i=function IN(e,n,t){let r;const o=n.directiveEnd;for(let i=1+n.directiveStylingLast;i0)&&(c=!0)):u=t,o)if(0!==l){const g=ir(e[a+1]);e[r+1]=wl(g,a),0!==g&&(e[g+1]=yf(e[g+1],r)),e[a+1]=function cN(e,n){return 131071&e|n<<17}(e[a+1],r)}else e[r+1]=wl(a,0),0!==a&&(e[a+1]=yf(e[a+1],r)),a=r;else e[r+1]=wl(l,0),0===a?a=r:e[l+1]=yf(e[l+1],r),l=r;c&&(e[r+1]=vf(e[r+1])),b_(e,u,r,!0),b_(e,u,r,!1),function fN(e,n,t,r,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof n&&go(i,n)>=0&&(t[r+1]=_f(t[r+1]))}(n,u,e,r,i),s=wl(a,l),i?n.classBindings=s:n.styleBindings=s}(o,i,n,t,s,r)}}(i,e,s,r),n!==W&&He(o,s,n)&&function P_(e,n,t,r,o,i,s,a){if(!(3&n.type))return;const l=e.data,c=l[a+1],u=function uN(e){return 1==(1&e)}(c)?k_(l,n,t,o,Rr(c),s):void 0;El(u)||(El(i)||function lN(e){return 2==(2&e)}(c)&&(i=k_(l,null,t,o,a,s)),function FT(e,n,t,r,o){if(n)o?e.addClass(t,r):e.removeClass(t,r);else{let i=-1===r.indexOf("-")?void 0:rr.DashCase;null==o?e.removeStyle(t,r,i):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),i|=rr.Important),e.setStyle(t,r,o,i))}}(r,s,Oi(lt(),t),o,i))}(i,i.data[lt()],o,o[z],e,o[s+1]=function AN(e,n){return null==e||""===e||("string"==typeof n?e+=n:"object"==typeof e&&(e=je(or(e)))),e}(n,t),r,s)}(e,n,null,!0),bl}function Df(e,n,t,r,o){let i=null;const s=t.directiveEnd;let a=t.directiveStylingLast;for(-1===a?a=t.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let g=t[o+1];g===W&&(g=d?te:void 0);let m=d?sd(g,r):u===r?g:void 0;if(c&&!El(m)&&(m=sd(l,r)),El(m)&&(a=m,s))return a;const v=e[o+1];o=s?ir(v):Rr(v)}if(null!==n){let l=i?n.residualClasses:n.residualStyles;null!=l&&(a=sd(l,r))}return a}function El(e){return void 0!==e}function jo(e,n){return!n||Za(e)}function gs(e,n,t,r=!0){const o=n[T];if(function TT(e,n,t,r){const o=Pe+r,i=t.length;r>0&&(t[o-1][Yt]=n),r{class e{static#e=this.__NG_ELEMENT_ID__=cR}return e})();function cR(){return Y_(ue(),b())}const uR=en,W_=class extends uR{constructor(n,t,r){super(),this._lContainer=n,this._hostTNode=t,this._hostLView=r}get element(){return Mo(this._hostTNode,this._hostLView)}get injector(){return new ze(this._hostTNode,this._hostLView)}get parentInjector(){const n=Na(this._hostTNode,this._hostLView);if(Ku(n)){const t=Vi(n,this._hostLView),r=Li(n);return new ze(t[T].data[r+8],t)}return new ze(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const t=Z_(this._lContainer);return null!==t&&t[n]||null}get length(){return this._lContainer.length-Pe}createEmbeddedView(n,t,r){let o,i;"number"==typeof r?o=r:null!=r&&(o=r.index,i=r.injector);const a=n.createEmbeddedViewImpl(t||{},i,null);return this.insertImpl(a,o,jo(this._hostTNode,null)),a}createComponent(n,t,r,o,i){const s=n&&!function ji(e){return"function"==typeof e}(n);let a;if(s)a=t;else{const v=t||{};a=v.index,r=v.injector,o=v.projectableNodes,i=v.environmentInjector||v.ngModuleRef}const l=s?n:new ls(Q(n)),c=r||this.parentInjector;if(!i&&null==l.ngModule){const _=(s?c:this.parentInjector).get(At,null);_&&(i=_)}Q(l.componentType??{});const m=l.create(c,o,null,i);return this.insertImpl(m.hostView,a,jo(this._hostTNode,null)),m}insert(n,t){return this.insertImpl(n,t,!0)}insertImpl(n,t,r){const o=n._lView;if(function P0(e){return Ye(e[we])}(o)){const a=this.indexOf(n);if(-1!==a)this.detach(a);else{const l=o[we],c=new W_(l,l[tt],l[we]);c.detach(c.indexOf(n))}}const i=this._adjustIndex(t),s=this._lContainer;return gs(s,o,i,r),n.attachToViewContainerRef(),Xm(xf(s),i,n),n}move(n,t){return this.insert(n,t)}indexOf(n){const t=Z_(this._lContainer);return null!==t?t.indexOf(n):-1}remove(n){const t=this._adjustIndex(n,-1),r=Wi(this._lContainer,t);r&&(Pa(xf(this._lContainer),t),Ja(r[T],r))}detach(n){const t=this._adjustIndex(n,-1),r=Wi(this._lContainer,t);return r&&null!=Pa(xf(this._lContainer),t)?new ss(r):null}_adjustIndex(n,t=0){return n??this.length+t}};function Z_(e){return e[8]}function xf(e){return e[8]||(e[8]=[])}function Y_(e,n){let t;const r=n[e.index];return Ye(r)?t=r:(t=Uy(r,n,null,e),n[e.index]=t,gl(n,t)),Q_(t,n,e,r),new W_(t,e,n)}let Q_=function J_(e,n,t,r){if(e[fn])return;let o;o=8&t.type?me(r):function dR(e,n){const t=e[z],r=t.createComment(""),o=st(n,e);return Tr(t,Ka(t,o),r,function OT(e,n){return e.nextSibling(n)}(t,o),!1),r}(n,t),e[fn]=o},Nf=(e,n,t)=>!1;function q(e,n,t,r,o,i,s,a){const l=b(),c=J(),u=e+U,d=c.firstCreatePass?function gR(e,n,t,r,o,i,s,a,l){const c=n.consts,u=So(n,e,4,s||null,pn(c,a));af(n,t,u,pn(c,l)),Ma(n,u);const d=u.tView=sf(2,u,r,o,i,n.directiveRegistry,n.pipeRegistry,null,n.schemas,c,null);return null!==n.queries&&(n.queries.template(n,u),d.queries=n.queries.embeddedTView(u)),u}(u,c,l,n,t,r,o,i,s):c.data[u];gn(d,!1);const g=K_(c,l,d,e);Ia()&&el(c,l,g,d),nt(g,l);const m=Uy(g,l,g,d);return l[u]=m,gl(l,m),function X_(e,n,t){return Nf(e,n,t)}(m,d,l),wa(d)&&nf(c,l,d),null!=s&&rf(l,d,a),q}let K_=function eC(e,n,t,r){return Jn(!0),n[z].createComment("")};function h(e,n,t,r){const o=b(),i=J(),s=U+e,a=o[z],l=i.firstCreatePass?function oO(e,n,t,r,o,i){const s=n.consts,l=So(n,e,2,r,pn(s,o));return af(n,t,l,pn(s,i)),null!==l.attrs&&_l(l,l.attrs,!1),null!==l.mergedAttrs&&_l(l,l.mergedAttrs,!0),null!==n.queries&&n.queries.elementStart(n,l),l}(s,i,o,n,t,r):i.data[s],c=EC(i,o,l,a,n,e);o[s]=c;const u=wa(l);return gn(l,!0),Xv(a,c,l),32!=(32&l.flags)&&Ia()&&el(i,o,c,l),0===function F0(){return B.lFrame.elementDepthCount}()&&nt(c,o),function L0(){B.lFrame.elementDepthCount++}(),u&&(nf(i,o,l),tf(i,l,o)),null!==r&&rf(o,l),h}function p(){let e=ue();Gu()?zu():(e=e.parent,gn(e,!1));const n=e;(function j0(e){return B.skipHydrationRootTNode===e})(n)&&function $0(){B.skipHydrationRootTNode=null}(),function V0(){B.lFrame.elementDepthCount--}();const t=J();return t.firstCreatePass&&(Ma(t,e),Fu(e)&&t.queries.elementEnd(e)),null!=n.classesWithoutHost&&function oS(e){return 0!=(8&e.flags)}(n)&&Cf(t,n,b(),n.classesWithoutHost,!0),null!=n.stylesWithoutHost&&function iS(e){return 0!=(16&e.flags)}(n)&&Cf(t,n,b(),n.stylesWithoutHost,!1),p}function y(e,n,t,r){return h(e,n,t,r),p(),y}let EC=(e,n,t,r,o,i)=>(Jn(!0),Xa(r,o,function Fm(){return B.lFrame.currentNamespace}()));function Dt(e,n,t){const r=b(),o=J(),i=e+U,s=o.firstCreatePass?function aO(e,n,t,r,o){const i=n.consts,s=pn(i,r),a=So(n,e,8,"ng-container",s);return null!==s&&_l(a,s,!0),af(n,t,a,pn(i,o)),null!==n.queries&&n.queries.elementStart(n,a),a}(i,o,r,n,t):o.data[i];gn(s,!0);const a=MC(o,r,s,e);return r[i]=a,Ia()&&el(o,r,a,s),nt(a,r),wa(s)&&(nf(o,r,s),tf(o,s,r)),null!=t&&rf(r,s),Dt}function wt(){let e=ue();const n=J();return Gu()?zu():(e=e.parent,gn(e,!1)),n.firstCreatePass&&(Ma(n,e),Fu(e)&&n.queries.elementEnd(e)),wt}let MC=(e,n,t,r)=>(Jn(!0),Ad(n[z],""));function Fe(){return b()}const Wo="en-US";let NC=Wo;function Es(e){return!!e&&"function"==typeof e.then}function nD(e){return!!e&&"function"==typeof e.subscribe}function R(e,n,t,r){const o=b(),i=J(),s=ue();return function oD(e,n,t,r,o,i,s){const a=wa(r),c=e.firstCreatePass&&Gy(e),u=n[ge],d=$y(n);let g=!0;if(3&r.type||s){const _=st(r,n),D=s?s(_):_,I=d.length,w=s?V=>s(me(V[r.index])):r.index;let x=null;if(!s&&a&&(x=function sP(e,n,t,r){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,n,o,r.index)),null!==x)(x.__ngLastListenerFn__||x).__ngNextListenerFn__=i,x.__ngLastListenerFn__=i,g=!1;else{i=sD(r,n,u,i,!1);const V=t.listen(D,o,i);d.push(i,V),c&&c.push(o,w,I,I+1)}}else i=sD(r,n,u,i,!1);const m=r.outputs;let v;if(g&&null!==m&&(v=m[o])){const _=v.length;if(_)for(let D=0;D<_;D+=2){const Z=n[v[D]][v[D+1]].subscribe(i),Ie=d.length;d.push(i,Z),c&&c.push(o,r.index,Ie,-(Ie+1))}}}(i,o,o[z],s,e,n,r),R}function iD(e,n,t,r){try{return hn(6,n,t),!1!==t(r)}catch(o){return ml(e,o),!1}finally{hn(7,n,t)}}function sD(e,n,t,r,o){return function i(s){if(s===Function)return r;is(e.componentOffset>-1?St(e.index,n):n);let l=iD(n,t,r,s),c=i.__ngNextListenerFn__;for(;c;)l=iD(n,t,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function P(e=1){return function Y0(e){return(B.lFrame.contextLView=function wm(e,n){for(;e>0;)n=n[eo],e--;return n}(e,B.lFrame.contextLView))[ge]}(e)}function jn(e,n,t,r,o){const i=b(),s=Ao(i,n,t,r);return s!==W&&Rt(J(),De(),i,e,s,i[z],o,!1),jn}function Gf(e){return function ro(e,n){return e[n]}(function G0(){return B.lFrame.contextLView}(),U+e)}function f(e,n=""){const t=b(),r=J(),o=e+U,i=r.firstCreatePass?So(r,o,1,n,null):r.data[o],s=ID(r,t,i,n,e);t[o]=s,Ia()&&el(r,t,s,i),gn(i,!1)}let ID=(e,n,t,r,o)=>(Jn(!0),function Qa(e,n){return e.createText(n)}(n[z],r));function be(e){return Hn("",e,""),be}function Hn(e,n,t){const r=b(),o=Ao(r,e,n,t);return o!==W&&function Vn(e,n,t){const r=Oi(n,e);!function Vv(e,n,t){e.setValue(n,t)}(e[z],r,t)}(r,lt(),o),Hn}function zf(e,n,t,r,o){if(e=j(e),Array.isArray(e))for(let i=0;i>20;if(Ir(e)||!e.multi){const m=new Fi(c,o,S),v=Wf(l,n,o?u:u+g,d);-1===v?(nd(xa(a,s),i,l),qf(i,e,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(m),s.push(m)):(t[v]=m,s[v]=m)}else{const m=Wf(l,n,u+g,d),v=Wf(l,n,u,u+g),D=v>=0&&t[v];if(o&&!D||!o&&!(m>=0&&t[m])){nd(xa(a,s),i,l);const I=function IP(e,n,t,r,o){const i=new Fi(e,t,S);return i.multi=[],i.index=n,i.componentProviders=0,PD(i,o,r&&!t),i}(o?EP:bP,t.length,o,r,c);!o&&D&&(t[v].providerFactory=I),qf(i,e,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(I),s.push(I)}else qf(i,e,m>-1?m:v,PD(t[o?v:m],c,!o&&r));!o&&r&&D&&t[v].componentProviders++}}}function qf(e,n,t,r){const o=Ir(n),i=function FS(e){return!!e.useClass}(n);if(o||i){const l=(i?j(n.useClass):n).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&n.multi){const u=c.indexOf(t);-1===u?c.push(t,[r,l]):c[u+1].push(r,l)}else c.push(t,l)}}}function PD(e,n,t){return t&&e.componentProviders++,e.multi.push(n)-1}function Wf(e,n,t,r){for(let o=t;o{t.providersResolver=(r,o)=>function wP(e,n,t){const r=J();if(r.firstCreatePass){const o=Qt(e);zf(t,r.data,r.blueprint,o,!0),zf(n,r.data,r.blueprint,o,!1)}}(r,o?o(e):e,n)}}class kr{}class kD{}class Yf extends kr{constructor(n,t,r){super(),this._parent=t,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new a_(this);const o=et(n);this._bootstrapComponents=xt(o.bootstrap),this._r3Injector=pv(n,t,[{provide:kr,useValue:this},{provide:ul,useValue:this.componentFactoryResolver},...r],je(n),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(n)}get injector(){return this._r3Injector}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class Qf extends kD{constructor(n){super(),this.moduleType=n}create(n){return new Yf(this.moduleType,n,[])}}class FD extends kr{constructor(n){super(),this.componentFactoryResolver=new a_(this),this.instance=null;const t=new Mr([...n.providers,{provide:kr,useValue:this},{provide:ul,useValue:this.componentFactoryResolver}],n.parent||Ba(),n.debugName,new Set(["environment"]));this.injector=t,n.runEnvironmentInitializers&&t.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(n){this.injector.onDestroy(n)}}function Xf(e,n,t=null){return new FD({providers:e,parent:n,debugName:t,runEnvironmentInitializers:!0}).injector}let TP=(()=>{class e{constructor(t){this._injector=t,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(t){if(!t.standalone)return null;if(!this.cachedInjectors.has(t)){const r=iv(0,t.type),o=r.length>0?Xf([r],this._injector,`Standalone[${t.type.name}]`):null;this.cachedInjectors.set(t,o)}return this.cachedInjectors.get(t)}ngOnDestroy(){try{for(const t of this.cachedInjectors.values())null!==t&&t.destroy()}finally{this.cachedInjectors.clear()}}static#e=this.\u0275prov=O({token:e,providedIn:"environment",factory:()=>new e(k(At))})}return e})();const AP={detail:{feature:"NgStandalone"}};function Ot(e){Ar("mark_use_counter",AP),e.getStandaloneInjector=n=>n.get(TP).getOrCreateStandaloneInjector(e)}function ee(e,n,t){const r=at()+e,o=b();return o[r]===W?_n(o,r,t?n.call(t):n()):function cs(e,n){return e[n]}(o,r)}function Is(e,n,t,r){return function zD(e,n,t,r,o,i){const s=n+t;return He(e,s,o)?_n(e,s+1,i?r.call(i,o):r(o)):Ms(e,s+1)}(b(),at(),e,n,t,r)}function GD(e,n,t,r,o){return function qD(e,n,t,r,o,i,s){const a=n+t;return function Nr(e,n,t,r){const o=He(e,n,t);return He(e,n+1,r)||o}(e,a,o,i)?_n(e,a+2,s?r.call(s,o,i):r(o,i)):Ms(e,a+2)}(b(),at(),e,n,t,r,o)}function Ms(e,n){const t=e[n];return t===W?void 0:t}function ek(){return this._results[Symbol.iterator]()}class Kf{static#e=Symbol.iterator;get changes(){return this._changes||(this._changes=new xe)}constructor(n=!1){this._emitDistinctChangesOnly=n,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const t=Kf.prototype;t[Symbol.iterator]||(t[Symbol.iterator]=ek)}get(n){return this._results[n]}map(n){return this._results.map(n)}filter(n){return this._results.filter(n)}find(n){return this._results.find(n)}reduce(n,t){return this._results.reduce(n,t)}forEach(n){this._results.forEach(n)}some(n){return this._results.some(n)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(n,t){this.dirty=!1;const r=function yt(e){return e.flat(Number.POSITIVE_INFINITY)}(n);(this._changesDetected=!function yS(e,n,t){if(e.length!==n.length)return!1;for(let r=0;r{class e{static#e=this.__NG_ELEMENT_ID__=rk}return e})();const tk=Un,nk=class extends tk{constructor(n,t,r){super(),this._declarationLView=n,this._declarationTContainer=t,this.elementRef=r}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(n,t){return this.createEmbeddedViewImpl(n,t)}createEmbeddedViewImpl(n,t,r){const o=function ps(e,n,t,r){const o=n.tView,a=pl(e,o,t,4096&e[H]?4096:16,null,n,null,null,null,r?.injector??null,r?.dehydratedView??null);a[xi]=e[n.index];const c=e[dn];return null!==c&&(a[dn]=c.createEmbeddedView(o)),mf(o,a,t),a}(this._declarationLView,this._declarationTContainer,n,{injector:t,dehydratedView:r});return new ss(o)}};function rk(){return Hl(ue(),b())}function Hl(e,n){return 4&e.type?new nk(n,e,Mo(e,n)):null}class eh{constructor(n){this.queryList=n,this.matches=null}clone(){return new eh(this.queryList)}setDirty(){this.queryList.setDirty()}}class th{constructor(n=[]){this.queries=n}createEmbeddedView(n){const t=n.queries;if(null!==t){const r=null!==n.contentQueries?n.contentQueries[0]:t.length,o=[];for(let i=0;i0)r.push(s[a/2]);else{const c=i[a+1],u=n[-l];for(let d=Pe;d{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,r)=>{this.resolve=t,this.reject=r}),this.appInits=A(ch,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const t=[];for(const o of this.appInits){const i=o();if(Es(i))t.push(i);else if(nD(i)){const s=new Promise((a,l)=>{i.subscribe({complete:a,error:l})});t.push(s)}}const r=()=>{this.done=!0,this.resolve()};Promise.all(t).then(()=>{r()}).catch(o=>{this.reject(o)}),0===t.length&&r(),this.initialized=!0}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),_w=(()=>{class e{log(t){console.log(t)}warn(t){console.warn(t)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})();const Bn=new N("LocaleId",{providedIn:"root",factory:()=>A(Bn,X.Optional|X.SkipSelf)||function Ok(){return typeof $localize<"u"&&$localize.locale||Wo}()});let Bl=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new kt(!1)}add(){this.hasPendingTasks.next(!0);const t=this.taskId++;return this.pendingTasks.add(t),t}remove(t){this.pendingTasks.delete(t),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class jk{constructor(n,t){this.ngModuleFactory=n,this.componentFactories=t}}let Dw=(()=>{class e{compileModuleSync(t){return new Qf(t)}compileModuleAsync(t){return Promise.resolve(this.compileModuleSync(t))}compileModuleAndAllComponentsSync(t){const r=this.compileModuleSync(t),i=xt(et(t).declarations).reduce((s,a)=>{const l=Q(a);return l&&s.push(new ls(l)),s},[]);return new jk(r,i)}compileModuleAndAllComponentsAsync(t){return Promise.resolve(this.compileModuleAndAllComponentsSync(t))}clearCache(){}clearCacheFor(t){}getModuleId(t){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Mw=new N(""),Gl=new N("");let ph,fh=(()=>{class e{constructor(t,r,o){this._ngZone=t,this.registry=r,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,ph||(function uF(e){ph=e}(o),o.addToWindow(r)),this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(r=>!r.updateCb||!r.updateCb(t)||(clearTimeout(r.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,r,o){let i=-1;r&&r>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==i),t(this._didWork,this.getPendingTasks())},r)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:o})}whenStable(t,r,o){if(o&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(t,r,o),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(t){this.registry.registerApplication(t,this)}unregisterApplication(t){this.registry.unregisterApplication(t)}findProviders(t,r,o){return[]}static#e=this.\u0275fac=function(r){return new(r||e)(k(ae),k(hh),k(Gl))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),hh=(()=>{class e{constructor(){this._applications=new Map}registerApplication(t,r){this._applications.set(t,r)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,r=!0){return ph?.findTestabilityInTree(this,t,r)??null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})(),ar=null;const gh=new N("PlatformDestroyListeners"),mh=new N("appBootstrapListener");function gF(e){try{const{rootComponent:n,appProviders:t,platformProviders:r}=e,o=function pF(e=[]){if(ar)return ar;const n=function xw(e=[],n){return _t.create({name:n,providers:[{provide:hd,useValue:"platform"},{provide:gh,useValue:new Set([()=>ar=null])},...e]})}(e);return ar=n,function Tw(){!function jM(e){hg=e}(()=>{throw new M(600,!1)})}(),function Aw(e){e.get(mv,null)?.forEach(t=>t())}(n),n}(r),i=[CF(),...t||[]],a=new FD({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,l=a.get(ae);return l.run(()=>{a.resolveInjectorInitializers();const c=a.get(Ln,null);let u;l.runOutsideAngular(()=>{u=l.onError.subscribe({next:m=>{c.handleError(m)}})});const d=()=>a.destroy(),g=o.get(gh);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),function Ow(e,n,t){try{const r=t();return Es(r)?r.catch(o=>{throw n.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw n.runOutsideAngular(()=>e.handleError(r)),r}}(c,l,()=>{const m=a.get(uh);return m.runInitializers(),m.donePromise.then(()=>{!function RC(e){gt(e,"Expected localeId to be defined"),"string"==typeof e&&(NC=e.toLowerCase().replace(/_/g,"-"))}(a.get(Bn,Wo)||Wo);const _=a.get(Qo);return void 0!==n&&_.bootstrap(n),_})})})}catch(n){return Promise.reject(n)}}let Qo=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=A(Fw),this.zoneIsStable=A(e_),this.componentTypes=[],this.components=[],this.isStable=A(Bl).hasPendingTasks.pipe(Ft(t=>t?F(!1):this.zoneIsStable),function U1(e,n=qn){return e=e??B1,$e((t,r)=>{let o,i=!0;t.subscribe(Ve(r,s=>{const a=n(s);(i||!e(o,a))&&(i=!1,o=a,r.next(s))}))})}(),Bg()),this._injector=A(At)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(t,r){const o=t instanceof hy;if(!this._injector.get(uh).done)throw!o&&function Qn(e){const n=Q(e)||Ge(e)||Je(e);return null!==n&&n.standalone}(t),new M(405,!1);let s;s=o?t:this._injector.get(ul).resolveComponentFactory(t),this.componentTypes.push(s.componentType);const a=function fF(e){return e.isBoundToModule}(s)?void 0:this._injector.get(kr),c=s.create(_t.NULL,[],r||s.selector,a),u=c.location.nativeElement,d=c.injector.get(Mw,null);return d?.registerApplication(u),c.onDestroy(()=>{this.detachView(c.hostView),zl(this.components,c),d?.unregisterApplication(u)}),this._loadComponent(c),c}tick(){if(this._runningTick)throw new M(101,!1);try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}catch(t){this.internalErrorHandler(t)}finally{this._runningTick=!1}}attachView(t){const r=t;this._views.push(r),r.attachToAppRef(this)}detachView(t){const r=t;zl(this._views,r),r.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t);const r=this._injector.get(mh,[]);[...this._bootstrapListeners,...r].forEach(o=>o(t))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(t=>t()),this._views.slice().forEach(t=>t.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(t){return this._destroyListeners.push(t),()=>zl(this._destroyListeners,t)}destroy(){if(this._destroyed)throw new M(406,!1);const t=this._injector;t.destroy&&!t.destroyed&&t.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function zl(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}const Fw=new N("",{providedIn:"root",factory:()=>A(Ln).handleError.bind(void 0)});function yF(){const e=A(ae),n=A(Ln);return t=>e.runOutsideAngular(()=>n.handleError(t))}let _F=(()=>{class e{constructor(){this.zone=A(ae),this.applicationRef=A(Qo)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Lw(e){return[{provide:ae,useFactory:e},{provide:vo,multi:!0,useFactory:()=>{const n=A(_F,{optional:!0});return()=>n.initialize()}},{provide:Fw,useFactory:yF},{provide:e_,useFactory:t_}]}function CF(e){return ud([[],Lw(()=>new ae(function Rw(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}(e)))])}let MF=(()=>{class e{constructor(t){}static#e=this.\u0275fac=function(r){return new(r||e)(k(Qo))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Jo(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}const ye_apiBaseUrl="https://www.palmmedia.de/api/";let Sh=null;function lr(){return Sh}class QF{}const ft=new N("DocumentToken");let Th=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(JF),providedIn:"platform"})}return e})();const XF=new N("Location Initialized");let JF=(()=>{class e extends Th{constructor(){super(),this._doc=A(ft),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return lr().getBaseHref(this._doc)}onPopState(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",t,!1),()=>r.removeEventListener("popstate",t)}onHashChange(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("hashchange",t,!1),()=>r.removeEventListener("hashchange",t)}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(t){this._location.pathname=t}pushState(t,r,o){this._history.pushState(t,r,o)}replaceState(t,r,o){this._history.replaceState(t,r,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new e,providedIn:"platform"})}return e})();function Ah(e,n){if(0==e.length)return n;if(0==n.length)return e;let t=0;return e.endsWith("/")&&t++,n.startsWith("/")&&t++,2==t?e+n.substring(1):1==t?e+n:e+"/"+n}function sb(e){const n=e.match(/#|\?|$/),t=n&&n.index||e.length;return e.slice(0,t-("/"===e[t-1]?1:0))+e.slice(t)}function $n(e){return e&&"?"!==e[0]?"?"+e:e}let Lr=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(lb),providedIn:"root"})}return e})();const ab=new N("appBaseHref");let lb=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._removeListenerFns=[],this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??A(ft).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return Ah(this._baseHref,t)}path(t=!1){const r=this._platformLocation.pathname+$n(this._platformLocation.search),o=this._platformLocation.hash;return o&&t?`${r}${o}`:r}pushState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(ab,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),KF=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._baseHref="",this._removeListenerFns=[],null!=r&&(this._baseHref=r)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}path(t=!1){let r=this._platformLocation.hash;return null==r&&(r="#"),r.length>0?r.substring(1):r}prepareExternalUrl(t){const r=Ah(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(ab,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),Rs=(()=>{class e{constructor(t){this._subject=new xe,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=t;const r=this._locationStrategy.getBaseHref();this._basePath=function n2(e){if(new RegExp("^(https?:)?//").test(e)){const[,t]=e.split(/\/\/[^\/]+/);return t}return e}(sb(cb(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(t=!1){return this.normalize(this._locationStrategy.path(t))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(t,r=""){return this.path()==this.normalize(t+$n(r))}normalize(t){return e.stripTrailingSlash(function t2(e,n){if(!e||!n.startsWith(e))return n;const t=n.substring(e.length);return""===t||["/",";","?","#"].includes(t[0])?t:n}(this._basePath,cb(t)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._locationStrategy.prepareExternalUrl(t)}go(t,r="",o=null){this._locationStrategy.pushState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}replaceState(t,r="",o=null){this._locationStrategy.replaceState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(t=0){this._locationStrategy.historyGo?.(t)}onUrlChange(t){return this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(r=>{this._notifyUrlChangeListeners(r.url,r.state)})),()=>{const r=this._urlChangeListeners.indexOf(t);this._urlChangeListeners.splice(r,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(t="",r){this._urlChangeListeners.forEach(o=>o(t,r))}subscribe(t,r,o){return this._subject.subscribe({next:t,error:r,complete:o})}static#e=this.normalizeQueryParams=$n;static#t=this.joinWithSlash=Ah;static#n=this.stripTrailingSlash=sb;static#r=this.\u0275fac=function(r){return new(r||e)(k(Lr))};static#o=this.\u0275prov=O({token:e,factory:()=>function e2(){return new Rs(k(Lr))}(),providedIn:"root"})}return e})();function cb(e){return e.replace(/\/index.html$/,"")}function yb(e,n){n=encodeURIComponent(n);for(const t of e.split(";")){const r=t.indexOf("="),[o,i]=-1==r?[t,""]:[t.slice(0,r),t.slice(r+1)];if(o.trim()===n)return decodeURIComponent(i)}return null}const jh=/\s+/,_b=[];let cc=(()=>{class e{constructor(t,r,o,i){this._iterableDiffers=t,this._keyValueDiffers=r,this._ngEl=o,this._renderer=i,this.initialClasses=_b,this.stateMap=new Map}set klass(t){this.initialClasses=null!=t?t.trim().split(jh):_b}set ngClass(t){this.rawClass="string"==typeof t?t.trim().split(jh):t}ngDoCheck(){for(const r of this.initialClasses)this._updateState(r,!0);const t=this.rawClass;if(Array.isArray(t)||t instanceof Set)for(const r of t)this._updateState(r,!0);else if(null!=t)for(const r of Object.keys(t))this._updateState(r,!!t[r]);this._applyStateDiff()}_updateState(t,r){const o=this.stateMap.get(t);void 0!==o?(o.enabled!==r&&(o.changed=!0,o.enabled=r),o.touched=!0):this.stateMap.set(t,{enabled:r,changed:!0,touched:!0})}_applyStateDiff(){for(const t of this.stateMap){const r=t[0],o=t[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(t,r){(t=t.trim()).length>0&&t.split(jh).forEach(o=>{r?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}static#e=this.\u0275fac=function(r){return new(r||e)(S(fl),S(ns),S(Nt),S(Fn))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0})}return e})();class U2{constructor(n,t,r,o){this.$implicit=n,this.ngForOf=t,this.index=r,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Hh=(()=>{class e{set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}constructor(t,r,o){this._viewContainer=t,this._template=r,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const t=this._ngForOf;!this._differ&&t&&(this._differ=this._differs.find(t).create(this.ngForTrackBy))}if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const r=this._viewContainer;t.forEachOperation((o,i,s)=>{if(null==o.previousIndex)r.createEmbeddedView(this._template,new U2(o.item,this._ngForOf,-1,-1),null===s?void 0:s);else if(null==s)r.remove(null===i?void 0:i);else if(null!==i){const a=r.get(i);r.move(a,s),Db(a,o)}});for(let o=0,i=r.length;o{Db(r.get(o.currentIndex),o)})}static ngTemplateContextGuard(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un),S(fl))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}return e})();function Db(e,n){e.context.$implicit=n.item}let uc=(()=>{class e{constructor(t,r){this._viewContainer=t,this._context=new B2,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=r}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){wb("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){wb("ngIfElse",t),this._elseTemplateRef=t,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(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}return e})();class B2{constructor(){this.$implicit=null,this.ngIf=null}}function wb(e,n){if(n&&!n.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${je(n)}'.`)}let pL=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Mb(e){return"server"===e}let yL=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new _L(k(ft),window)})}return e})();class _L{constructor(n,t){this.document=n,this.window=t,this.offset=()=>[0,0]}setOffset(n){this.offset=Array.isArray(n)?()=>n:n}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(n){this.supportsScrolling()&&this.window.scrollTo(n[0],n[1])}scrollToAnchor(n){if(!this.supportsScrolling())return;const t=function CL(e,n){const t=e.getElementById(n)||e.getElementsByName(n)[0];if(t)return t;if("function"==typeof e.createTreeWalker&&e.body&&"function"==typeof e.body.attachShadow){const r=e.createTreeWalker(e.body,NodeFilter.SHOW_ELEMENT);let o=r.currentNode;for(;o;){const i=o.shadowRoot;if(i){const s=i.getElementById(n)||i.querySelector(`[name="${n}"]`);if(s)return s}o=r.nextNode()}}return null}(this.document,n);t&&(this.scrollToElement(t),t.focus())}setHistoryScrollRestoration(n){this.supportsScrolling()&&(this.window.history.scrollRestoration=n)}scrollToElement(n){const t=n.getBoundingClientRect(),r=t.left+this.window.pageXOffset,o=t.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(r-i[0],o-i[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class Sb{}const{isArray:GL}=Array,{getPrototypeOf:zL,prototype:qL,keys:WL}=Object;function Nb(e){if(1===e.length){const n=e[0];if(GL(n))return{args:n,keys:null};if(function ZL(e){return e&&"object"==typeof e&&zL(e)===qL}(n)){const t=WL(n);return{args:t.map(r=>n[r]),keys:t}}}return{args:e,keys:null}}const{isArray:YL}=Array;function Rb(e){return K(n=>function QL(e,n){return YL(n)?e(...n):e(n)}(e,n))}function Ob(e,n){return e.reduce((t,r,o)=>(t[r]=n[o],t),{})}function Wh(...e){const n=bi(e),t=Vg(e),{args:r,keys:o}=Nb(e);if(0===r.length)return Oe([],n);const i=new Te(function XL(e,n,t=qn){return r=>{Pb(n,()=>{const{length:o}=e,i=new Array(o);let s=o,a=o;for(let l=0;l{const c=Oe(e[l],n);let u=!1;c.subscribe(Ve(r,d=>{i[l]=d,u||(u=!0,a--),a||r.next(t(i.slice()))},()=>{--s||r.complete()}))},r)},r)}}(r,n,o?s=>Ob(o,s):qn));return t?i.pipe(Rb(t)):i}function Pb(e,n,t){e?An(t,e,n):n()}const hc=iu(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function Zh(...e){return function JL(){return Yr(1)}()(Oe(e,bi(e)))}function kb(e){return new Te(n=>{qt(e()).subscribe(n)})}function pc(e,n){const t=Ce(e)?e:()=>e,r=o=>o.error(t());return new Te(n?o=>n.schedule(r,0,o):r)}function Yh(){return $e((e,n)=>{let t=null;e._refCount++;const r=Ve(n,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount)return void(t=null);const o=e._connection,i=t;t=null,o&&(!i||o===i)&&o.unsubscribe(),n.unsubscribe()});e.subscribe(r),r.closed||(t=e.connect())})}class Fb extends Te{constructor(n,t){super(),this.source=n,this.subjectFactory=t,this._subject=null,this._refCount=0,this._connection=null,bg(n)&&(this.lift=n.lift)}_subscribe(n){return this.getSubject().subscribe(n)}getSubject(){const n=this._subject;return(!n||n.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:n}=this;this._subject=this._connection=null,n?.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new Et;const t=this.getSubject();n.add(this.source.subscribe(Ve(t,void 0,()=>{this._teardown(),t.complete()},r=>{this._teardown(),t.error(r)},()=>this._teardown()))),n.closed&&(this._connection=null,n=Et.EMPTY)}return n}refCount(){return Yh()(this)}}function rn(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>e.call(n,i,o++)&&r.next(i)))})}function gc(e){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>{r||t.next(e),t.complete()}))})}function Lb(e=eV){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>r?t.complete():t.error(e())))})}function eV(){return new hc}function Vr(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,_r(1),t?gc(n):Lb(()=>new hc))}function ei(e,n){return Ce(n)?Xe(e,n,1):Xe(e,1)}function rt(e,n,t){const r=Ce(e)||n||t?{next:e,error:n,complete:t}:e;return r?$e((o,i)=>{var s;null===(s=r.subscribe)||void 0===s||s.call(r);let a=!0;o.subscribe(Ve(i,l=>{var c;null===(c=r.next)||void 0===c||c.call(r,l),i.next(l)},()=>{var l;a=!1,null===(l=r.complete)||void 0===l||l.call(r),i.complete()},l=>{var c;a=!1,null===(c=r.error)||void 0===c||c.call(r,l),i.error(l)},()=>{var l,c;a&&(null===(l=r.unsubscribe)||void 0===l||l.call(r)),null===(c=r.finalize)||void 0===c||c.call(r)}))}):qn}function ti(e){return $e((n,t)=>{let i,r=null,o=!1;r=n.subscribe(Ve(t,void 0,void 0,s=>{i=qt(e(s,ti(e)(n))),r?(r.unsubscribe(),r=null,i.subscribe(t)):o=!0})),o&&(r.unsubscribe(),r=null,i.subscribe(t))})}function Qh(e){return e<=0?()=>an:$e((n,t)=>{let r=[];n.subscribe(Ve(t,o=>{r.push(o),e{for(const o of r)t.next(o);t.complete()},void 0,()=>{r=null}))})}function Fs(e){return $e((n,t)=>{try{n.subscribe(t)}finally{t.add(e)}})}class sV extends QF{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class Xh extends sV{static makeCurrent(){!function YF(e){Sh||(Sh=e)}(new Xh)}onAndCancel(n,t,r){return n.addEventListener(t,r),()=>{n.removeEventListener(t,r)}}dispatchEvent(n,t){n.dispatchEvent(t)}remove(n){n.parentNode&&n.parentNode.removeChild(n)}createElement(n,t){return(t=t||this.getDefaultDocument()).createElement(n)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(n){return n.nodeType===Node.ELEMENT_NODE}isShadowRoot(n){return n instanceof DocumentFragment}getGlobalEventTarget(n,t){return"window"===t?window:"document"===t?n:"body"===t?n.body:null}getBaseHref(n){const t=function aV(){return Ls=Ls||document.querySelector("base"),Ls?Ls.getAttribute("href"):null}();return null==t?null:function lV(e){mc=mc||document.createElement("a"),mc.setAttribute("href",e);const n=mc.pathname;return"/"===n.charAt(0)?n:`/${n}`}(t)}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return yb(document.cookie,n)}}let mc,Ls=null,uV=(()=>{class e{build(){return new XMLHttpRequest}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const Jh=new N("EventManagerPlugins");let Vb=(()=>{class e{constructor(t,r){this._zone=r,this._eventNameToPlugin=new Map,t.forEach(o=>{o.manager=this}),this._plugins=t.slice().reverse()}addEventListener(t,r,o){return this._findPluginFor(r).addEventListener(t,r,o)}getZone(){return this._zone}_findPluginFor(t){let r=this._eventNameToPlugin.get(t);if(r)return r;if(r=this._plugins.find(i=>i.supports(t)),!r)throw new M(5101,!1);return this._eventNameToPlugin.set(t,r),r}static#e=this.\u0275fac=function(r){return new(r||e)(k(Jh),k(ae))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class jb{constructor(n){this._doc=n}}const Kh="ng-app-id";let Hb=(()=>{class e{constructor(t,r,o,i={}){this.doc=t,this.appId=r,this.nonce=o,this.platformId=i,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Mb(i),this.resetHostNodes()}addStyles(t){for(const r of t)1===this.changeUsageCount(r,1)&&this.onStyleAdded(r)}removeStyles(t){for(const r of t)this.changeUsageCount(r,-1)<=0&&this.onStyleRemoved(r)}ngOnDestroy(){const t=this.styleNodesInDOM;t&&(t.forEach(r=>r.remove()),t.clear());for(const r of this.getAllStyles())this.onStyleRemoved(r);this.resetHostNodes()}addHost(t){this.hostNodes.add(t);for(const r of this.getAllStyles())this.addStyleToHost(t,r)}removeHost(t){this.hostNodes.delete(t)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(t){for(const r of this.hostNodes)this.addStyleToHost(r,t)}onStyleRemoved(t){const r=this.styleRef;r.get(t)?.elements?.forEach(o=>o.remove()),r.delete(t)}collectServerRenderedStyles(){const t=this.doc.head?.querySelectorAll(`style[${Kh}="${this.appId}"]`);if(t?.length){const r=new Map;return t.forEach(o=>{null!=o.textContent&&r.set(o.textContent,o)}),r}return null}changeUsageCount(t,r){const o=this.styleRef;if(o.has(t)){const i=o.get(t);return i.usage+=r,i.usage}return o.set(t,{usage:r,elements:[]}),r}getStyleElement(t,r){const o=this.styleNodesInDOM,i=o?.get(r);if(i?.parentNode===t)return o.delete(r),i.removeAttribute(Kh),i;{const s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(Kh,this.appId),t.appendChild(s),s}}addStyleToHost(t,r){const o=this.getStyleElement(t,r),i=this.styleRef,s=i.get(r)?.elements;s?s.push(o):i.set(r,{elements:[o],usage:1})}resetHostNodes(){const t=this.hostNodes;t.clear(),t.add(this.doc.head)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(Ga),k(vv,8),k(Sr))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const ep={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/"},tp=/%COMP%/g,pV=new N("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!0});function Bb(e,n){return n.map(t=>t.replace(tp,e))}let $b=(()=>{class e{constructor(t,r,o,i,s,a,l,c=null){this.eventManager=t,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=l,this.nonce=c,this.rendererByCompId=new Map,this.platformIsServer=Mb(a),this.defaultRenderer=new np(t,s,l,this.platformIsServer)}createRenderer(t,r){if(!t||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===Wt.ShadowDom&&(r={...r,encapsulation:Wt.Emulated});const o=this.getOrCreateRenderer(t,r);return o instanceof zb?o.applyToHost(t):o instanceof rp&&o.applyStyles(),o}getOrCreateRenderer(t,r){const o=this.rendererByCompId;let i=o.get(r.id);if(!i){const s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case Wt.Emulated:i=new zb(l,c,r,this.appId,u,s,a,d);break;case Wt.ShadowDom:return new yV(l,c,t,r,s,a,this.nonce,d);default:i=new rp(l,c,r,u,s,a,d)}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static#e=this.\u0275fac=function(r){return new(r||e)(k(Vb),k(Hb),k(Ga),k(pV),k(ft),k(Sr),k(ae),k(vv))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class np{constructor(n,t,r,o){this.eventManager=n,this.doc=t,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(n,t){return t?this.doc.createElementNS(ep[t]||t,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,t){(Gb(n)?n.content:n).appendChild(t)}insertBefore(n,t,r){n&&(Gb(n)?n.content:n).insertBefore(t,r)}removeChild(n,t){n&&n.removeChild(t)}selectRootElement(n,t){let r="string"==typeof n?this.doc.querySelector(n):n;if(!r)throw new M(-5104,!1);return t||(r.textContent=""),r}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,t,r,o){if(o){t=o+":"+t;const i=ep[o];i?n.setAttributeNS(i,t,r):n.setAttribute(t,r)}else n.setAttribute(t,r)}removeAttribute(n,t,r){if(r){const o=ep[r];o?n.removeAttributeNS(o,t):n.removeAttribute(`${r}:${t}`)}else n.removeAttribute(t)}addClass(n,t){n.classList.add(t)}removeClass(n,t){n.classList.remove(t)}setStyle(n,t,r,o){o&(rr.DashCase|rr.Important)?n.style.setProperty(t,r,o&rr.Important?"important":""):n.style[t]=r}removeStyle(n,t,r){r&rr.DashCase?n.style.removeProperty(t):n.style[t]=""}setProperty(n,t,r){n[t]=r}setValue(n,t){n.nodeValue=t}listen(n,t,r){if("string"==typeof n&&!(n=lr().getGlobalEventTarget(this.doc,n)))throw new Error(`Unsupported event target ${n} for event ${t}`);return this.eventManager.addEventListener(n,t,this.decoratePreventDefault(r))}decoratePreventDefault(n){return t=>{if("__ngUnwrap__"===t)return n;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>n(t)):n(t))&&t.preventDefault()}}}function Gb(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class yV extends np{constructor(n,t,r,o,i,s,a,l){super(n,i,s,l),this.sharedStylesHost=t,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=Bb(o.id,o.styles);for(const u of c){const d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=u,this.shadowRoot.appendChild(d)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,t){return super.appendChild(this.nodeOrShadowRoot(n),t)}insertBefore(n,t,r){return super.insertBefore(this.nodeOrShadowRoot(n),t,r)}removeChild(n,t){return super.removeChild(this.nodeOrShadowRoot(n),t)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class rp extends np{constructor(n,t,r,o,i,s,a,l){super(n,i,s,a),this.sharedStylesHost=t,this.removeStylesOnCompDestroy=o,this.styles=l?Bb(l,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class zb extends rp{constructor(n,t,r,o,i,s,a,l){const c=o+"-"+r.id;super(n,t,r,i,s,a,l,c),this.contentAttr=function gV(e){return"_ngcontent-%COMP%".replace(tp,e)}(c),this.hostAttr=function mV(e){return"_nghost-%COMP%".replace(tp,e)}(c)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,t){const r=super.createElement(n,t);return super.setAttribute(r,this.contentAttr,""),r}}let _V=(()=>{class e extends jb{constructor(t){super(t)}supports(t){return!0}addEventListener(t,r,o){return t.addEventListener(r,o,!1),()=>this.removeEventListener(t,r,o)}removeEventListener(t,r,o){return t.removeEventListener(r,o)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const qb=["alt","control","meta","shift"],CV={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},DV={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let wV=(()=>{class e extends jb{constructor(t){super(t)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,r,o){const i=e.parseEventName(r),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>lr().onAndCancel(t,i.domEventName,s))}static parseEventName(t){const r=t.toLowerCase().split("."),o=r.shift();if(0===r.length||"keydown"!==o&&"keyup"!==o)return null;const i=e._normalizeKey(r.pop());let s="",a=r.indexOf("code");if(a>-1&&(r.splice(a,1),s="code."),qb.forEach(c=>{const u=r.indexOf(c);u>-1&&(r.splice(u,1),s+=c+".")}),s+=i,0!=r.length||0===i.length)return null;const l={};return l.domEventName=o,l.fullKey=s,l}static matchEventFullKeyCode(t,r){let o=CV[t.key]||t.key,i="";return r.indexOf("code.")>-1&&(o=t.code,i="code."),!(null==o||!o)&&(o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),qb.forEach(s=>{s!==o&&(0,DV[s])(t)&&(i+=s+".")}),i+=o,i===r)}static eventCallback(t,r,o){return i=>{e.matchEventFullKeyCode(i,t)&&o.runGuarded(()=>r(i))}}static _normalizeKey(t){return"esc"===t?"escape":t}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Wb(e){return{appProviders:[...Yb,...e?.providers??[]],platformProviders:SV}}const SV=[{provide:Sr,useValue:"browser"},{provide:mv,useValue:function EV(){Xh.makeCurrent()},multi:!0},{provide:ft,useFactory:function MV(){return function XS(e){_d=e}(document),document},deps:[]}],TV=new N(""),Zb=[{provide:Gl,useClass:class cV{addToWindow(n){pe.getAngularTestability=(r,o=!0)=>{const i=n.findTestabilityInTree(r,o);if(null==i)throw new M(5103,!1);return i},pe.getAllAngularTestabilities=()=>n.getAllTestabilities(),pe.getAllAngularRootElements=()=>n.getAllRootElements(),pe.frameworkStabilizers||(pe.frameworkStabilizers=[]),pe.frameworkStabilizers.push(r=>{const o=pe.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&r(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(n,t,r){return null==t?null:n.getTestability(t)??(r?lr().isShadowRoot(t)?this.findTestabilityInTree(n,t.host,!0):this.findTestabilityInTree(n,t.parentElement,!0):null)}},deps:[]},{provide:Mw,useClass:fh,deps:[ae,hh,Gl]},{provide:fh,useClass:fh,deps:[ae,hh,Gl]}],Yb=[{provide:hd,useValue:"root"},{provide:Ln,useFactory:function IV(){return new Ln},deps:[]},{provide:Jh,useClass:_V,multi:!0,deps:[ft,ae,Sr]},{provide:Jh,useClass:wV,multi:!0,deps:[ft]},$b,Hb,Vb,{provide:gy,useExisting:$b},{provide:Sb,useClass:uV,deps:[]},[]];let AV=(()=>{class e{constructor(t){}static withServerTransition(t){return{ngModule:e,providers:[{provide:Ga,useValue:t.appId}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(TV,12))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({providers:[...Yb,...Zb],imports:[pL,MF]})}return e})(),Qb=(()=>{class e{constructor(t){this._doc=t}getTitle(){return this._doc.title}setTitle(t){this._doc.title=t||""}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:function(r){let o=null;return o=r?new r:function NV(){return new Qb(k(ft))}(),o},providedIn:"root"})}return e})();typeof window<"u"&&window;const Y="primary",Vs=Symbol("RouteTitle");class FV{constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t[0]:t}return null}getAll(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t:[t]}return[]}get keys(){return Object.keys(this.params)}}function ni(e){return new FV(e)}function LV(e,n,t){const r=t.path.split("/");if(r.length>e.length||"full"===t.pathMatch&&(n.hasChildren()||r.lengthr[i]===o)}return e===n}function tE(e){return e.length>0?e[e.length-1]:null}function ur(e){return function $L(e){return!!e&&(e instanceof Te||Ce(e.lift)&&Ce(e.subscribe))}(e)?e:Es(e)?Oe(Promise.resolve(e)):F(e)}const jV={exact:function oE(e,n,t){if(!jr(e.segments,n.segments)||!vc(e.segments,n.segments,t)||e.numberOfChildren!==n.numberOfChildren)return!1;for(const r in n.children)if(!e.children[r]||!oE(e.children[r],n.children[r],t))return!1;return!0},subset:iE},nE={exact:function HV(e,n){return wn(e,n)},subset:function UV(e,n){return Object.keys(n).length<=Object.keys(e).length&&Object.keys(n).every(t=>eE(e[t],n[t]))},ignored:()=>!0};function rE(e,n,t){return jV[t.paths](e.root,n.root,t.matrixParams)&&nE[t.queryParams](e.queryParams,n.queryParams)&&!("exact"===t.fragment&&e.fragment!==n.fragment)}function iE(e,n,t){return sE(e,n,n.segments,t)}function sE(e,n,t,r){if(e.segments.length>t.length){const o=e.segments.slice(0,t.length);return!(!jr(o,t)||n.hasChildren()||!vc(o,t,r))}if(e.segments.length===t.length){if(!jr(e.segments,t)||!vc(e.segments,t,r))return!1;for(const o in n.children)if(!e.children[o]||!iE(e.children[o],n.children[o],r))return!1;return!0}{const o=t.slice(0,e.segments.length),i=t.slice(e.segments.length);return!!(jr(e.segments,o)&&vc(e.segments,o,r)&&e.children[Y])&&sE(e.children[Y],n,i,r)}}function vc(e,n,t){return n.every((r,o)=>nE[t](e[o].parameters,r.parameters))}class ri{constructor(n=new de([],{}),t={},r=null){this.root=n,this.queryParams=t,this.fragment=r}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ni(this.queryParams)),this._queryParamMap}toString(){return GV.serialize(this)}}class de{constructor(n,t){this.segments=n,this.children=t,this.parent=null,Object.values(t).forEach(r=>r.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return yc(this)}}class js{constructor(n,t){this.path=n,this.parameters=t}get parameterMap(){return this._parameterMap||(this._parameterMap=ni(this.parameters)),this._parameterMap}toString(){return cE(this)}}function jr(e,n){return e.length===n.length&&e.every((t,r)=>t.path===n[r].path)}let oi=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new sp,providedIn:"root"})}return e})();class sp{parse(n){const t=new t3(n);return new ri(t.parseRootSegment(),t.parseQueryParams(),t.parseFragment())}serialize(n){const t=`/${Hs(n.root,!0)}`,r=function WV(e){const n=Object.keys(e).map(t=>{const r=e[t];return Array.isArray(r)?r.map(o=>`${_c(t)}=${_c(o)}`).join("&"):`${_c(t)}=${_c(r)}`}).filter(t=>!!t);return n.length?`?${n.join("&")}`:""}(n.queryParams);return`${t}${r}${"string"==typeof n.fragment?`#${function zV(e){return encodeURI(e)}(n.fragment)}`:""}`}}const GV=new sp;function yc(e){return e.segments.map(n=>cE(n)).join("/")}function Hs(e,n){if(!e.hasChildren())return yc(e);if(n){const t=e.children[Y]?Hs(e.children[Y],!1):"",r=[];return Object.entries(e.children).forEach(([o,i])=>{o!==Y&&r.push(`${o}:${Hs(i,!1)}`)}),r.length>0?`${t}(${r.join("//")})`:t}{const t=function $V(e,n){let t=[];return Object.entries(e.children).forEach(([r,o])=>{r===Y&&(t=t.concat(n(o,r)))}),Object.entries(e.children).forEach(([r,o])=>{r!==Y&&(t=t.concat(n(o,r)))}),t}(e,(r,o)=>o===Y?[Hs(e.children[Y],!1)]:[`${o}:${Hs(r,!1)}`]);return 1===Object.keys(e.children).length&&null!=e.children[Y]?`${yc(e)}/${t[0]}`:`${yc(e)}/(${t.join("//")})`}}function aE(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function _c(e){return aE(e).replace(/%3B/gi,";")}function ap(e){return aE(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Cc(e){return decodeURIComponent(e)}function lE(e){return Cc(e.replace(/\+/g,"%20"))}function cE(e){return`${ap(e.path)}${function qV(e){return Object.keys(e).map(n=>`;${ap(n)}=${ap(e[n])}`).join("")}(e.parameters)}`}const ZV=/^[^\/()?;#]+/;function lp(e){const n=e.match(ZV);return n?n[0]:""}const YV=/^[^\/()?;=#]+/,XV=/^[^=?&#]+/,KV=/^[^&#]+/;class t3{constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new de([],{}):new de([],this.parseChildren())}parseQueryParams(){const n={};if(this.consumeOptional("?"))do{this.parseQueryParam(n)}while(this.consumeOptional("&"));return n}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());let t={};this.peekStartsWith("/(")&&(this.capture("/"),t=this.parseParens(!0));let r={};return this.peekStartsWith("(")&&(r=this.parseParens(!1)),(n.length>0||Object.keys(t).length>0)&&(r[Y]=new de(n,t)),r}parseSegment(){const n=lp(this.remaining);if(""===n&&this.peekStartsWith(";"))throw new M(4009,!1);return this.capture(n),new js(Cc(n),this.parseMatrixParams())}parseMatrixParams(){const n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){const t=function QV(e){const n=e.match(YV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const o=lp(this.remaining);o&&(r=o,this.capture(r))}n[Cc(t)]=Cc(r)}parseQueryParam(n){const t=function JV(e){const n=e.match(XV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const s=function e3(e){const n=e.match(KV);return n?n[0]:""}(this.remaining);s&&(r=s,this.capture(r))}const o=lE(t),i=lE(r);if(n.hasOwnProperty(o)){let s=n[o];Array.isArray(s)||(s=[s],n[o]=s),s.push(i)}else n[o]=i}parseParens(n){const t={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const r=lp(this.remaining),o=this.remaining[r.length];if("/"!==o&&")"!==o&&";"!==o)throw new M(4010,!1);let i;r.indexOf(":")>-1?(i=r.slice(0,r.indexOf(":")),this.capture(i),this.capture(":")):n&&(i=Y);const s=this.parseChildren();t[i]=1===Object.keys(s).length?s[Y]:new de([],s),this.consumeOptional("//")}return t}peekStartsWith(n){return this.remaining.startsWith(n)}consumeOptional(n){return!!this.peekStartsWith(n)&&(this.remaining=this.remaining.substring(n.length),!0)}capture(n){if(!this.consumeOptional(n))throw new M(4011,!1)}}function uE(e){return e.segments.length>0?new de([],{[Y]:e}):e}function dE(e){const n={};for(const r of Object.keys(e.children)){const i=dE(e.children[r]);if(r===Y&&0===i.segments.length&&i.hasChildren())for(const[s,a]of Object.entries(i.children))n[s]=a;else(i.segments.length>0||i.hasChildren())&&(n[r]=i)}return function n3(e){if(1===e.numberOfChildren&&e.children[Y]){const n=e.children[Y];return new de(e.segments.concat(n.segments),n.children)}return e}(new de(e.segments,n))}function Hr(e){return e instanceof ri}function fE(e){let n;const o=uE(function t(i){const s={};for(const l of i.children){const c=t(l);s[l.outlet]=c}const a=new de(i.url,s);return i===e&&(n=a),a}(e.root));return n??o}function hE(e,n,t,r){let o=e;for(;o.parent;)o=o.parent;if(0===n.length)return cp(o,o,o,t,r);const i=function o3(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new gE(!0,0,e);let n=0,t=!1;const r=e.reduce((o,i,s)=>{if("object"==typeof i&&null!=i){if(i.outlets){const a={};return Object.entries(i.outlets).forEach(([l,c])=>{a[l]="string"==typeof c?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return"string"!=typeof i?[...o,i]:0===s?(i.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?t=!0:".."===a?n++:""!=a&&o.push(a))}),o):[...o,i]},[]);return new gE(t,n,r)}(n);if(i.toRoot())return cp(o,o,new de([],{}),t,r);const s=function i3(e,n,t){if(e.isAbsolute)return new wc(n,!0,0);if(!t)return new wc(n,!1,NaN);if(null===t.parent)return new wc(t,!0,0);const r=Dc(e.commands[0])?0:1;return function s3(e,n,t){let r=e,o=n,i=t;for(;i>o;){if(i-=o,r=r.parent,!r)throw new M(4005,!1);o=r.segments.length}return new wc(r,!1,o-i)}(t,t.segments.length-1+r,e.numberOfDoubleDots)}(i,o,e),a=s.processChildren?Bs(s.segmentGroup,s.index,i.commands):mE(s.segmentGroup,s.index,i.commands);return cp(o,s.segmentGroup,a,t,r)}function Dc(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function Us(e){return"object"==typeof e&&null!=e&&e.outlets}function cp(e,n,t,r,o){let s,i={};r&&Object.entries(r).forEach(([l,c])=>{i[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`}),s=e===n?t:pE(e,n,t);const a=uE(dE(s));return new ri(a,i,o)}function pE(e,n,t){const r={};return Object.entries(e.children).forEach(([o,i])=>{r[o]=i===n?t:pE(i,n,t)}),new de(e.segments,r)}class gE{constructor(n,t,r){if(this.isAbsolute=n,this.numberOfDoubleDots=t,this.commands=r,n&&r.length>0&&Dc(r[0]))throw new M(4003,!1);const o=r.find(Us);if(o&&o!==tE(r))throw new M(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wc{constructor(n,t,r){this.segmentGroup=n,this.processChildren=t,this.index=r}}function mE(e,n,t){if(e||(e=new de([],{})),0===e.segments.length&&e.hasChildren())return Bs(e,n,t);const r=function l3(e,n,t){let r=0,o=n;const i={match:!1,pathIndex:0,commandIndex:0};for(;o=t.length)return i;const s=e.segments[o],a=t[r];if(Us(a))break;const l=`${a}`,c=r0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!yE(l,c,s))return i;r+=2}else{if(!yE(l,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(e,n,t),o=t.slice(r.commandIndex);if(r.match&&r.pathIndexi!==Y)&&e.children[Y]&&1===e.numberOfChildren&&0===e.children[Y].segments.length){const i=Bs(e.children[Y],n,t);return new de(e.segments,i.children)}return Object.entries(r).forEach(([i,s])=>{"string"==typeof s&&(s=[s]),null!==s&&(o[i]=mE(e.children[i],n,s))}),Object.entries(e.children).forEach(([i,s])=>{void 0===r[i]&&(o[i]=s)}),new de(e.segments,o)}}function up(e,n,t){const r=e.segments.slice(0,n);let o=0;for(;o{"string"==typeof r&&(r=[r]),null!==r&&(n[t]=up(new de([],{}),0,r))}),n}function vE(e){const n={};return Object.entries(e).forEach(([t,r])=>n[t]=`${r}`),n}function yE(e,n,t){return e==t.path&&wn(n,t.parameters)}const $s="imperative";class bn{constructor(n,t){this.id=n,this.url=t}}class bc extends bn{constructor(n,t,r="imperative",o=null){super(n,t),this.type=0,this.navigationTrigger=r,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class En extends bn{constructor(n,t,r){super(n,t),this.urlAfterRedirects=r,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ii extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class si extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=16}}class Ec extends bn{constructor(n,t,r,o){super(n,t),this.error=r,this.target=o,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class _E extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class u3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class d3 extends bn{constructor(n,t,r,o,i){super(n,t),this.urlAfterRedirects=r,this.state=o,this.shouldActivate=i,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class f3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class h3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class p3{constructor(n){this.route=n,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class g3{constructor(n){this.route=n,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class m3{constructor(n){this.snapshot=n,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class v3{constructor(n){this.snapshot=n,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class y3{constructor(n){this.snapshot=n,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _3{constructor(n){this.snapshot=n,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class CE{constructor(n,t,r){this.routerEvent=n,this.position=t,this.anchor=r,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class dp{}class fp{constructor(n){this.url=n}}class C3{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new Gs,this.attachRef=null}}let Gs=(()=>{class e{constructor(){this.contexts=new Map}onChildOutletCreated(t,r){const o=this.getOrCreateContext(t);o.outlet=r,this.contexts.set(t,o)}onChildOutletDestroyed(t){const r=this.getContext(t);r&&(r.outlet=null,r.attachRef=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let r=this.getContext(t);return r||(r=new C3,this.contexts.set(t,r)),r}getContext(t){return this.contexts.get(t)||null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class DE{constructor(n){this._root=n}get root(){return this._root.value}parent(n){const t=this.pathFromRoot(n);return t.length>1?t[t.length-2]:null}children(n){const t=hp(n,this._root);return t?t.children.map(r=>r.value):[]}firstChild(n){const t=hp(n,this._root);return t&&t.children.length>0?t.children[0].value:null}siblings(n){const t=pp(n,this._root);return t.length<2?[]:t[t.length-2].children.map(o=>o.value).filter(o=>o!==n)}pathFromRoot(n){return pp(n,this._root).map(t=>t.value)}}function hp(e,n){if(e===n.value)return n;for(const t of n.children){const r=hp(e,t);if(r)return r}return null}function pp(e,n){if(e===n.value)return[n];for(const t of n.children){const r=pp(e,t);if(r.length)return r.unshift(n),r}return[]}class on{constructor(n,t){this.value=n,this.children=t}toString(){return`TreeNode(${this.value})`}}function ai(e){const n={};return e&&e.children.forEach(t=>n[t.value.outlet]=t),n}class wE extends DE{constructor(n,t){super(n),this.snapshot=t,vp(this,n)}toString(){return this.snapshot.toString()}}function bE(e,n){const t=function D3(e,n){const s=new mp([],{},{},"",{},Y,n,null,{});return new EE("",new on(s,[]))}(0,n),r=new kt([new js("",{})]),o=new kt({}),i=new kt({}),s=new kt({}),a=new kt(""),l=new Ur(r,o,s,a,i,Y,n,t.root);return l.snapshot=t.root,new wE(new on(l,[]),t)}class Ur{constructor(n,t,r,o,i,s,a,l){this.urlSubject=n,this.paramsSubject=t,this.queryParamsSubject=r,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(K(c=>c[Vs]))??F(void 0),this.url=n,this.params=t,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._paramMap=this.params.pipe(K(n=>ni(n)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(n=>ni(n)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function gp(e,n,t="emptyOnly"){let r;const{routeConfig:o}=e;return r=null===n||"always"!==t&&""!==o?.path&&(n.component||n.routeConfig?.loadComponent)?{params:e.params,data:e.data,resolve:{...e.data,...e._resolvedData??{}}}:{params:{...n.params,...e.params},data:{...n.data,...e.data},resolve:{...e.data,...n.data,...o?.data,...e._resolvedData}},o&&ME(o)&&(r.resolve[Vs]=o.title),r}class mp{get title(){return this.data?.[Vs]}constructor(n,t,r,o,i,s,a,l,c){this.url=n,this.params=t,this.queryParams=r,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=ni(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ni(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(r=>r.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class EE extends DE{constructor(n,t){super(t),this.url=n,vp(this,t)}toString(){return IE(this._root)}}function vp(e,n){n.value._routerState=e,n.children.forEach(t=>vp(e,t))}function IE(e){const n=e.children.length>0?` { ${e.children.map(IE).join(", ")} } `:"";return`${e.value}${n}`}function yp(e){if(e.snapshot){const n=e.snapshot,t=e._futureSnapshot;e.snapshot=t,wn(n.queryParams,t.queryParams)||e.queryParamsSubject.next(t.queryParams),n.fragment!==t.fragment&&e.fragmentSubject.next(t.fragment),wn(n.params,t.params)||e.paramsSubject.next(t.params),function VV(e,n){if(e.length!==n.length)return!1;for(let t=0;twn(t.parameters,n[r].parameters))}(e.url,n.url);return t&&!(!e.parent!=!n.parent)&&(!e.parent||_p(e.parent,n.parent))}function ME(e){return"string"==typeof e.title||null===e.title}let Cp=(()=>{class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=Y,this.activateEvents=new xe,this.deactivateEvents=new xe,this.attachEvents=new xe,this.detachEvents=new xe,this.parentContexts=A(Gs),this.location=A(en),this.changeDetector=A(as),this.environmentInjector=A(At),this.inputBinder=A(Ic,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(t){if(t.name){const{firstChange:r,previousValue:o}=t.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(t){return this.parentContexts.getContext(t)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const t=this.parentContexts.getContext(this.name);t?.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new M(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new M(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new M(4012,!1);this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(t.instance),t}attach(t,r){this.activated=t,this._activatedRoute=r,this.location.insert(t.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(t.instance)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,r){if(this.isActivated)throw new M(4013,!1);this._activatedRoute=t;const o=this.location,s=t.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,l=new w3(t,a,o.injector);this.activated=o.createComponent(s,{index:o.length,injector:l,environmentInjector:r??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Lt]})}return e})();class w3{constructor(n,t,r){this.route=n,this.childContexts=t,this.parent=r}get(n,t){return n===Ur?this.route:n===Gs?this.childContexts:this.parent.get(n,t)}}const Ic=new N("");let SE=(()=>{class e{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(t){this.unsubscribeFromRouteData(t),this.subscribeToRouteData(t)}unsubscribeFromRouteData(t){this.outletDataSubscriptions.get(t)?.unsubscribe(),this.outletDataSubscriptions.delete(t)}subscribeToRouteData(t){const{activatedRoute:r}=t,o=Wh([r.queryParams,r.params,r.data]).pipe(Ft(([i,s,a],l)=>(a={...i,...s,...a},0===l?F(a):Promise.resolve(a)))).subscribe(i=>{if(!t.isActivated||!t.activatedComponentRef||t.activatedRoute!==r||null===r.component)return void this.unsubscribeFromRouteData(t);const s=function ZF(e){const n=Q(e);if(!n)return null;const t=new ls(n);return{get selector(){return t.selector},get type(){return t.componentType},get inputs(){return t.inputs},get outputs(){return t.outputs},get ngContentSelectors(){return t.ngContentSelectors},get isStandalone(){return n.standalone},get isSignal(){return n.signals}}}(r.component);if(s)for(const{templateName:a}of s.inputs)t.activatedComponentRef.setInput(a,i[a]);else this.unsubscribeFromRouteData(t)});this.outletDataSubscriptions.set(t,o)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function zs(e,n,t){if(t&&e.shouldReuseRoute(n.value,t.value.snapshot)){const r=t.value;r._futureSnapshot=n.value;const o=function E3(e,n,t){return n.children.map(r=>{for(const o of t.children)if(e.shouldReuseRoute(r.value,o.value.snapshot))return zs(e,r,o);return zs(e,r)})}(e,n,t);return new on(r,o)}{if(e.shouldAttach(n.value)){const i=e.retrieve(n.value);if(null!==i){const s=i.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>zs(e,a)),s}}const r=function I3(e){return new Ur(new kt(e.url),new kt(e.params),new kt(e.queryParams),new kt(e.fragment),new kt(e.data),e.outlet,e.component,e)}(n.value),o=n.children.map(i=>zs(e,i));return new on(r,o)}}const Dp="ngNavigationCancelingError";function TE(e,n){const{redirectTo:t,navigationBehaviorOptions:r}=Hr(n)?{redirectTo:n,navigationBehaviorOptions:void 0}:n,o=AE(!1,0,n);return o.url=t,o.navigationBehaviorOptions=r,o}function AE(e,n,t){const r=new Error("NavigationCancelingError: "+(e||""));return r[Dp]=!0,r.cancellationCode=n,t&&(r.url=t),r}function xE(e){return e&&e[Dp]}let NE=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["ng-component"]],standalone:!0,features:[Ot],decls:1,vars:0,template:function(r,o){1&r&&y(0,"router-outlet")},dependencies:[Cp],encapsulation:2})}return e})();function wp(e){const n=e.children&&e.children.map(wp),t=n?{...e,children:n}:{...e};return!t.component&&!t.loadComponent&&(n||t.loadChildren)&&t.outlet&&t.outlet!==Y&&(t.component=NE),t}function In(e){return e.outlet||Y}function qs(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let n=e.parent;n;n=n.parent){const t=n.routeConfig;if(t?._loadedInjector)return t._loadedInjector;if(t?._injector)return t._injector}return null}class O3{constructor(n,t,r,o,i){this.routeReuseStrategy=n,this.futureState=t,this.currState=r,this.forwardEvent=o,this.inputBindingEnabled=i}activate(n){const t=this.futureState._root,r=this.currState?this.currState._root:null;this.deactivateChildRoutes(t,r,n),yp(this.futureState.root),this.activateChildRoutes(t,r,n)}deactivateChildRoutes(n,t,r){const o=ai(t);n.children.forEach(i=>{const s=i.value.outlet;this.deactivateRoutes(i,o[s],r),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,r)})}deactivateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(o===i)if(o.component){const s=r.getContext(o.outlet);s&&this.deactivateChildRoutes(n,t,s.children)}else this.deactivateChildRoutes(n,t,r);else i&&this.deactivateRouteAndItsChildren(t,r)}deactivateRouteAndItsChildren(n,t){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,t):this.deactivateRouteAndOutlet(n,t)}detachAndStoreRouteSubtree(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=ai(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);if(r&&r.outlet){const s=r.outlet.detach(),a=r.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=ai(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);r&&(r.outlet&&(r.outlet.deactivate(),r.children.onOutletDeactivated()),r.attachRef=null,r.route=null)}activateChildRoutes(n,t,r){const o=ai(t);n.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],r),this.forwardEvent(new _3(i.value.snapshot))}),n.children.length&&this.forwardEvent(new v3(n.value.snapshot))}activateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(yp(o),o===i)if(o.component){const s=r.getOrCreateContext(o.outlet);this.activateChildRoutes(n,t,s.children)}else this.activateChildRoutes(n,t,r);else if(o.component){const s=r.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){const 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),yp(a.route.value),this.activateChildRoutes(n,null,s.children)}else{const a=qs(o.snapshot);s.attachRef=null,s.route=o,s.injector=a,s.outlet&&s.outlet.activateWith(o,s.injector),this.activateChildRoutes(n,null,s.children)}}else this.activateChildRoutes(n,null,r)}}class RE{constructor(n){this.path=n,this.route=this.path[this.path.length-1]}}class Mc{constructor(n,t){this.component=n,this.route=t}}function P3(e,n,t){const r=e._root;return Ws(r,n?n._root:null,t,[r.value])}function li(e,n){const t=Symbol(),r=n.get(e,t);return r===t?"function"!=typeof e||function Q1(e){return null!==ha(e)}(e)?n.get(e):e:r}function Ws(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=ai(n);return e.children.forEach(s=>{(function F3(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=e.value,s=n?n.value:null,a=t?t.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){const l=function L3(e,n,t){if("function"==typeof t)return t(e,n);switch(t){case"pathParamsChange":return!jr(e.url,n.url);case"pathParamsOrQueryParamsChange":return!jr(e.url,n.url)||!wn(e.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!_p(e,n)||!wn(e.queryParams,n.queryParams);default:return!_p(e,n)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new RE(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Ws(e,n,i.component?a?a.children:null:t,r,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Mc(a.outlet.component,s))}else s&&Zs(n,a,o),o.canActivateChecks.push(new RE(r)),Ws(e,null,i.component?a?a.children:null:t,r,o)})(s,i[s.value.outlet],t,r.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>Zs(a,t.getContext(s),o)),o}function Zs(e,n,t){const r=ai(e),o=e.value;Object.entries(r).forEach(([i,s])=>{Zs(s,o.component?n?n.children.getContext(i):null:n,t)}),t.canDeactivateChecks.push(new Mc(o.component&&n&&n.outlet&&n.outlet.isActivated?n.outlet.component:null,o))}function Ys(e){return"function"==typeof e}function OE(e){return e instanceof hc||"EmptyError"===e?.name}const Sc=Symbol("INITIAL_VALUE");function ci(){return Ft(e=>Wh(e.map(n=>n.pipe(_r(1),function KL(...e){const n=bi(e);return $e((t,r)=>{(n?Zh(e,t,n):Zh(e,t)).subscribe(r)})}(Sc)))).pipe(K(n=>{for(const t of n)if(!0!==t){if(t===Sc)return Sc;if(!1===t||t instanceof ri)return t}return!0}),rn(n=>n!==Sc),_r(1)))}function PE(e){return function XM(...e){return Cg(e)}(rt(n=>{if(Hr(n))throw TE(0,n)}),K(n=>!0===n))}class bp{constructor(n){this.segmentGroup=n||null}}class Ep extends Error{constructor(n){super(),this.urlTree=n}}function ui(e){return pc(new bp(e))}class rj{constructor(n,t){this.urlSerializer=n,this.urlTree=t}noMatchError(n){return new M(4002,!1)}lineralizeSegments(n,t){let r=[],o=t.root;for(;;){if(r=r.concat(o.segments),0===o.numberOfChildren)return F(r);if(o.numberOfChildren>1||!o.children[Y])return pc(new M(4e3,!1));o=o.children[Y]}}applyRedirectCommands(n,t,r){const o=this.applyRedirectCreateUrlTree(t,this.urlSerializer.parse(t),n,r);if(t.startsWith("/"))throw new Ep(o);return o}applyRedirectCreateUrlTree(n,t,r,o){const i=this.createSegmentGroup(n,t.root,r,o);return new ri(i,this.createQueryParams(t.queryParams,this.urlTree.queryParams),t.fragment)}createQueryParams(n,t){const r={};return Object.entries(n).forEach(([o,i])=>{if("string"==typeof i&&i.startsWith(":")){const a=i.substring(1);r[o]=t[a]}else r[o]=i}),r}createSegmentGroup(n,t,r,o){const i=this.createSegments(n,t.segments,r,o);let s={};return Object.entries(t.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(n,l,r,o)}),new de(i,s)}createSegments(n,t,r,o){return t.map(i=>i.path.startsWith(":")?this.findPosParam(n,i,o):this.findOrReturn(i,r))}findPosParam(n,t,r){const o=r[t.path.substring(1)];if(!o)throw new M(4001,!1);return o}findOrReturn(n,t){let r=0;for(const o of t){if(o.path===n.path)return t.splice(r),o;r++}return n}}const Ip={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function oj(e,n,t,r,o){const i=Mp(e,n,t);return i.matched?(r=function S3(e,n){return e.providers&&!e._injector&&(e._injector=Xf(e.providers,n,`Route: ${e.path}`)),e._injector??n}(n,r),function ej(e,n,t,r){const o=n.canMatch;return o&&0!==o.length?F(o.map(s=>{const a=li(s,e);return ur(function $3(e){return e&&Ys(e.canMatch)}(a)?a.canMatch(n,t):e.runInContext(()=>a(n,t)))})).pipe(ci(),PE()):F(!0)}(r,n,t).pipe(K(s=>!0===s?i:{...Ip}))):F(i)}function Mp(e,n,t){if(""===n.path)return"full"===n.pathMatch&&(e.hasChildren()||t.length>0)?{...Ip}:{matched:!0,consumedSegments:[],remainingSegments:t,parameters:{},positionalParamSegments:{}};const o=(n.matcher||LV)(t,e,n);if(!o)return{...Ip};const i={};Object.entries(o.posParams??{}).forEach(([a,l])=>{i[a]=l.path});const s=o.consumed.length>0?{...i,...o.consumed[o.consumed.length-1].parameters}:i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:t.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function kE(e,n,t,r){return t.length>0&&function aj(e,n,t){return t.some(r=>Tc(e,n,r)&&In(r)!==Y)}(e,t,r)?{segmentGroup:new de(n,sj(r,new de(t,e.children))),slicedSegments:[]}:0===t.length&&function lj(e,n,t){return t.some(r=>Tc(e,n,r))}(e,t,r)?{segmentGroup:new de(e.segments,ij(e,0,t,r,e.children)),slicedSegments:t}:{segmentGroup:new de(e.segments,e.children),slicedSegments:t}}function ij(e,n,t,r,o){const i={};for(const s of r)if(Tc(e,t,s)&&!o[In(s)]){const a=new de([],{});i[In(s)]=a}return{...o,...i}}function sj(e,n){const t={};t[Y]=n;for(const r of e)if(""===r.path&&In(r)!==Y){const o=new de([],{});t[In(r)]=o}return t}function Tc(e,n,t){return(!(e.hasChildren()||n.length>0)||"full"!==t.pathMatch)&&""===t.path}class dj{}class pj{constructor(n,t,r,o,i,s,a){this.injector=n,this.configLoader=t,this.rootComponentType=r,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new rj(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(n){return new M(4002,!1)}recognize(){const n=kE(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(n).pipe(K(t=>{const r=new mp([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},Y,this.rootComponentType,null,{}),o=new on(r,t),i=new EE("",o),s=function r3(e,n,t=null,r=null){return hE(fE(e),n,t,r)}(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(n){return this.processSegmentGroup(this.injector,this.config,n,Y).pipe(ti(r=>{if(r instanceof Ep)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof bp?this.noMatchError(r):r}))}inheritParamsAndData(n,t){const r=n.value,o=gp(r,t,this.paramsInheritanceStrategy);r.params=Object.freeze(o.params),r.data=Object.freeze(o.data),n.children.forEach(i=>this.inheritParamsAndData(i,r))}processSegmentGroup(n,t,r,o){return 0===r.segments.length&&r.hasChildren()?this.processChildren(n,t,r):this.processSegment(n,t,r,r.segments,o,!0).pipe(K(i=>i instanceof on?[i]:[]))}processChildren(n,t,r){const o=[];for(const i of Object.keys(r.children))"primary"===i?o.unshift(i):o.push(i);return Oe(o).pipe(ei(i=>{const s=r.children[i],a=function N3(e,n){const t=e.filter(r=>In(r)===n);return t.push(...e.filter(r=>In(r)!==n)),t}(t,i);return this.processSegmentGroup(n,a,s,i)}),function nV(e,n){return $e(function tV(e,n,t,r,o){return(i,s)=>{let a=t,l=n,c=0;i.subscribe(Ve(s,u=>{const d=c++;l=a?e(l,u,d):(a=!0,u),r&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}(e,n,arguments.length>=2,!0))}((i,s)=>(i.push(...s),i)),gc(null),function rV(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,Qh(1),t?gc(n):Lb(()=>new hc))}(),Xe(i=>{if(null===i)return ui(r);const s=FE(i);return function gj(e){e.sort((n,t)=>n.value.outlet===Y?-1:t.value.outlet===Y?1:n.value.outlet.localeCompare(t.value.outlet))}(s),F(s)}))}processSegment(n,t,r,o,i,s){return Oe(t).pipe(ei(a=>this.processSegmentAgainstRoute(a._injector??n,t,a,r,o,i,s).pipe(ti(l=>{if(l instanceof bp)return F(null);throw l}))),Vr(a=>!!a),ti(a=>{if(OE(a))return function uj(e,n,t){return 0===n.length&&!e.children[t]}(r,o,i)?F(new dj):ui(r);throw a}))}processSegmentAgainstRoute(n,t,r,o,i,s,a){return function cj(e,n,t,r){return!!(In(e)===r||r!==Y&&Tc(n,t,e))&&("**"===e.path||Mp(n,e,t).matched)}(r,o,i,s)?void 0===r.redirectTo?this.matchSegmentAgainstRoute(n,o,r,i,s):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(n,o,t,r,i,s):ui(o):ui(o)}expandSegmentAgainstRouteUsingRedirect(n,t,r,o,i,s){const{matched:a,consumedSegments:l,positionalParamSegments:c,remainingSegments:u}="**"===o.path?LE(i):Mp(t,o,i);if(!a)return ui(t);o.redirectTo.startsWith("/")&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>31&&(this.allowRedirects=!1));const d=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,c);return this.applyRedirects.lineralizeSegments(o,d).pipe(Xe(g=>this.processSegment(n,r,t,g.concat(u),s,!1)))}matchSegmentAgainstRoute(n,t,r,o,i){let s;return"**"===r.path?(s=F(LE(o)),t.children={}):s=oj(t,r,o,n),s.pipe(Ft(a=>a.matched?this.getChildConfig(n=r._injector??n,r,o).pipe(Ft(({routes:l})=>{const c=r._loadedInjector??n,{consumedSegments:u,remainingSegments:d,parameters:g}=a,m=new mp(u,g,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,function vj(e){return e.data||{}}(r),In(r),r.component??r._loadedComponent??null,r,function yj(e){return e.resolve||{}}(r)),{segmentGroup:v,slicedSegments:_}=kE(t,u,d,l);if(0===_.length&&v.hasChildren())return this.processChildren(c,l,v).pipe(K(I=>null===I?null:new on(m,I)));if(0===l.length&&0===_.length)return F(new on(m,[]));const D=In(r)===i;return this.processSegment(c,l,v,_,D?Y:i,!0).pipe(K(I=>new on(m,I instanceof on?[I]:[])))})):ui(t)))}getChildConfig(n,t,r){return t.children?F({routes:t.children,injector:n}):t.loadChildren?void 0!==t._loadedRoutes?F({routes:t._loadedRoutes,injector:t._loadedInjector}):function K3(e,n,t,r){const o=n.canLoad;return void 0===o||0===o.length?F(!0):F(o.map(s=>{const a=li(s,e);return ur(function j3(e){return e&&Ys(e.canLoad)}(a)?a.canLoad(n,t):e.runInContext(()=>a(n,t)))})).pipe(ci(),PE())}(n,t,r).pipe(Xe(o=>o?this.configLoader.loadChildren(n,t).pipe(rt(i=>{t._loadedRoutes=i.routes,t._loadedInjector=i.injector})):function nj(e){return pc(AE(!1,3))}())):F({routes:[],injector:n})}}function mj(e){const n=e.value.routeConfig;return n&&""===n.path}function FE(e){const n=[],t=new Set;for(const r of e){if(!mj(r)){n.push(r);continue}const o=n.find(i=>r.value.routeConfig===i.value.routeConfig);void 0!==o?(o.children.push(...r.children),t.add(o)):n.push(r)}for(const r of t){const o=FE(r.children);n.push(new on(r.value,o))}return n.filter(r=>!t.has(r))}function LE(e){return{matched:!0,parameters:e.length>0?tE(e).parameters:{},consumedSegments:e,remainingSegments:[],positionalParamSegments:{}}}function Cj(e,n){return Xe(t=>{const{targetSnapshot:r,guards:{canActivateChecks:o}}=t;if(!o.length)return F(t);const i=o.map(c=>c.route),s=new Set(i),a=VE(i[0].parent).slice(1);let l=0;return Oe(a).pipe(ei(c=>s.has(c)?function Dj(e,n,t,r){const o=e.routeConfig,i=e._resolve;return void 0!==o?.title&&!ME(o)&&(i[Vs]=o.title),function wj(e,n,t,r){const o=ip(e);if(0===o.length)return F({});const i={};return Oe(o).pipe(Xe(s=>function bj(e,n,t,r){const o=qs(n)??r,i=li(e,o);return ur(i.resolve?i.resolve(n,t):o.runInContext(()=>i(n,t)))}(e[s],n,t,r).pipe(Vr(),rt(a=>{i[s]=a}))),Qh(1),function oV(e){return K(()=>e)}(i),ti(s=>OE(s)?an:pc(s)))}(i,e,n,r).pipe(K(s=>(e._resolvedData=s,e.data=gp(e,e.parent,t).resolve,null)))}(c,r,e,n):(c.data=gp(c,c.parent,e).resolve,F(void 0))),rt(()=>l++),Qh(1),Xe(c=>l===a.length?F(t):an))})}function VE(e){const n=e.children.map(t=>VE(t)).flat();return[e,...n]}function Sp(e){return Ft(n=>{const t=e(n);return t?Oe(t).pipe(K(()=>n)):F(n)})}let jE=(()=>{class e{buildTitle(t){let r,o=t.root;for(;void 0!==o;)r=this.getResolvedTitleForRoute(o)??r,o=o.children.find(i=>i.outlet===Y);return r}getResolvedTitleForRoute(t){return t.data[Vs]}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Ej),providedIn:"root"})}return e})(),Ej=(()=>{class e extends jE{constructor(t){super(),this.title=t}updateTitle(t){const r=this.buildTitle(t);void 0!==r&&this.title.setTitle(r)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Qb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const di=new N("",{providedIn:"root",factory:()=>({})}),fi=new N("ROUTES");let Tp=(()=>{class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=A(Dw)}loadComponent(t){if(this.componentLoaders.get(t))return this.componentLoaders.get(t);if(t._loadedComponent)return F(t._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(t);const r=ur(t.loadComponent()).pipe(K(HE),rt(i=>{this.onLoadEndListener&&this.onLoadEndListener(t),t._loadedComponent=i}),Fs(()=>{this.componentLoaders.delete(t)})),o=new Fb(r,()=>new zt).pipe(Yh());return this.componentLoaders.set(t,o),o}loadChildren(t,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return F({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);const i=function Ij(e,n,t,r){return ur(e.loadChildren()).pipe(K(HE),Xe(o=>o instanceof kD||Array.isArray(o)?F(o):Oe(n.compileModuleAsync(o))),K(o=>{r&&r(e);let i,s,a=!1;return Array.isArray(o)?(s=o,!0):(i=o.create(t).injector,s=i.get(fi,[],{optional:!0,self:!0}).flat()),{routes:s.map(wp),injector:i}}))}(r,this.compiler,t,this.onLoadEndListener).pipe(Fs(()=>{this.childrenLoaders.delete(r)})),s=new Fb(i,()=>new zt).pipe(Yh());return this.childrenLoaders.set(r,s),s}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function HE(e){return function Mj(e){return e&&"object"==typeof e&&"default"in e}(e)?e.default:e}let Ap=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Sj),providedIn:"root"})}return e})(),Sj=(()=>{class e{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const UE=new N(""),BE=new N("");function Tj(e,n,t){const r=e.get(BE),o=e.get(ft);return e.get(ae).runOutsideAngular(()=>{if(!o.startViewTransition||r.skipNextTransition)return r.skipNextTransition=!1,Promise.resolve();let i;const s=new Promise(c=>{i=c}),a=o.startViewTransition(()=>(i(),function Aj(e){return new Promise(n=>{o_(n,{injector:e})})}(e))),{onViewTransitionCreated:l}=r;return l&&function $S(e,n){e instanceof Mr&&e.assertNotDestroyed();const r=Yn(e),o=mt(void 0);try{return n()}finally{Yn(r),mt(o)}}(e,()=>l({transition:a,from:n,to:t})),s})}let Ac=(()=>{class e{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new zt,this.transitionAbortSubject=new zt,this.configLoader=A(Tp),this.environmentInjector=A(At),this.urlSerializer=A(oi),this.rootContexts=A(Gs),this.location=A(Rs),this.inputBindingEnabled=null!==A(Ic,{optional:!0}),this.titleStrategy=A(jE),this.options=A(di,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=A(Ap),this.createViewTransition=A(UE,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>F(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=o=>this.events.next(new g3(o)),this.configLoader.onLoadStartListener=o=>this.events.next(new p3(o))}complete(){this.transitions?.complete()}handleNavigationRequest(t){const r=++this.navigationId;this.transitions?.next({...this.transitions.value,...t,id:r})}setupNavigations(t,r,o){return this.transitions=new kt({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:$s,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(rn(i=>0!==i.id),K(i=>({...i,extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl)})),Ft(i=>{this.currentTransition=i;let s=!1,a=!1;return F(i).pipe(rt(l=>{this.currentNavigation={id:l.id,initialUrl:l.rawUrl,extractedUrl:l.extractedUrl,trigger:l.source,extras:l.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),Ft(l=>{const c=!t.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl();if(!c&&"reload"!==(l.extras.onSameUrlNavigation??t.onSameUrlNavigation)){const d="";return this.events.next(new si(l.id,this.urlSerializer.serialize(l.rawUrl),d,0)),l.resolve(null),an}if(this.urlHandlingStrategy.shouldProcessUrl(l.rawUrl))return F(l).pipe(Ft(d=>{const g=this.transitions?.getValue();return this.events.next(new bc(d.id,this.urlSerializer.serialize(d.extractedUrl),d.source,d.restoredState)),g!==this.transitions?.getValue()?an:Promise.resolve(d)}),function _j(e,n,t,r,o,i){return Xe(s=>function fj(e,n,t,r,o,i,s="emptyOnly"){return new pj(e,n,t,r,o,s,i).recognize()}(e,n,t,r,s.extractedUrl,o,i).pipe(K(({state:a,tree:l})=>({...s,targetSnapshot:a,urlAfterRedirects:l}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,t.config,this.urlSerializer,this.paramsInheritanceStrategy),rt(d=>{i.targetSnapshot=d.targetSnapshot,i.urlAfterRedirects=d.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:d.urlAfterRedirects};const g=new _E(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(g)}));if(c&&this.urlHandlingStrategy.shouldProcessUrl(l.currentRawUrl)){const{id:d,extractedUrl:g,source:m,restoredState:v,extras:_}=l,D=new bc(d,this.urlSerializer.serialize(g),m,v);this.events.next(D);const I=bE(0,this.rootComponentType).snapshot;return this.currentTransition=i={...l,targetSnapshot:I,urlAfterRedirects:g,extras:{..._,skipLocationChange:!1,replaceUrl:!1}},this.currentNavigation.finalUrl=g,F(i)}{const d="";return this.events.next(new si(l.id,this.urlSerializer.serialize(l.extractedUrl),d,1)),l.resolve(null),an}}),rt(l=>{const c=new u3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot);this.events.next(c)}),K(l=>(this.currentTransition=i={...l,guards:P3(l.targetSnapshot,l.currentSnapshot,this.rootContexts)},i)),function z3(e,n){return Xe(t=>{const{targetSnapshot:r,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=t;return 0===s.length&&0===i.length?F({...t,guardsResult:!0}):function q3(e,n,t,r){return Oe(e).pipe(Xe(o=>function J3(e,n,t,r,o){const i=n&&n.routeConfig?n.routeConfig.canDeactivate:null;return i&&0!==i.length?F(i.map(a=>{const l=qs(n)??o,c=li(a,l);return ur(function B3(e){return e&&Ys(e.canDeactivate)}(c)?c.canDeactivate(e,n,t,r):l.runInContext(()=>c(e,n,t,r))).pipe(Vr())})).pipe(ci()):F(!0)}(o.component,o.route,t,n,r)),Vr(o=>!0!==o,!0))}(s,r,o,e).pipe(Xe(a=>a&&function V3(e){return"boolean"==typeof e}(a)?function W3(e,n,t,r){return Oe(n).pipe(ei(o=>Zh(function Y3(e,n){return null!==e&&n&&n(new m3(e)),F(!0)}(o.route.parent,r),function Z3(e,n){return null!==e&&n&&n(new y3(e)),F(!0)}(o.route,r),function X3(e,n,t){const r=n[n.length-1],i=n.slice(0,n.length-1).reverse().map(s=>function k3(e){const n=e.routeConfig?e.routeConfig.canActivateChild:null;return n&&0!==n.length?{node:e,guards:n}:null}(s)).filter(s=>null!==s).map(s=>kb(()=>F(s.guards.map(l=>{const c=qs(s.node)??t,u=li(l,c);return ur(function U3(e){return e&&Ys(e.canActivateChild)}(u)?u.canActivateChild(r,e):c.runInContext(()=>u(r,e))).pipe(Vr())})).pipe(ci())));return F(i).pipe(ci())}(e,o.path,t),function Q3(e,n,t){const r=n.routeConfig?n.routeConfig.canActivate:null;if(!r||0===r.length)return F(!0);const o=r.map(i=>kb(()=>{const s=qs(n)??t,a=li(i,s);return ur(function H3(e){return e&&Ys(e.canActivate)}(a)?a.canActivate(n,e):s.runInContext(()=>a(n,e))).pipe(Vr())}));return F(o).pipe(ci())}(e,o.route,t))),Vr(o=>!0!==o,!0))}(r,i,e,n):F(a)),K(a=>({...t,guardsResult:a})))})}(this.environmentInjector,l=>this.events.next(l)),rt(l=>{if(i.guardsResult=l.guardsResult,Hr(l.guardsResult))throw TE(0,l.guardsResult);const c=new d3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot,!!l.guardsResult);this.events.next(c)}),rn(l=>!!l.guardsResult||(this.cancelNavigationTransition(l,"",3),!1)),Sp(l=>{if(l.guards.canActivateChecks.length)return F(l).pipe(rt(c=>{const u=new f3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),Ft(c=>{let u=!1;return F(c).pipe(Cj(this.paramsInheritanceStrategy,this.environmentInjector),rt({next:()=>u=!0,complete:()=>{u||this.cancelNavigationTransition(c,"",2)}}))}),rt(c=>{const u=new h3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}))}),Sp(l=>{const c=u=>{const d=[];u.routeConfig?.loadComponent&&!u.routeConfig._loadedComponent&&d.push(this.configLoader.loadComponent(u.routeConfig).pipe(rt(g=>{u.component=g}),K(()=>{})));for(const g of u.children)d.push(...c(g));return d};return Wh(c(l.targetSnapshot.root)).pipe(gc(),_r(1))}),Sp(()=>this.afterPreactivation()),Ft(()=>{const{currentSnapshot:l,targetSnapshot:c}=i,u=this.createViewTransition?.(this.environmentInjector,l.root,c.root);return u?Oe(u).pipe(K(()=>i)):F(i)}),K(l=>{const c=function b3(e,n,t){const r=zs(e,n._root,t?t._root:void 0);return new wE(r,n)}(t.routeReuseStrategy,l.targetSnapshot,l.currentRouterState);return this.currentTransition=i={...l,targetRouterState:c},this.currentNavigation.targetRouterState=c,i}),rt(()=>{this.events.next(new dp)}),((e,n,t,r)=>K(o=>(new O3(n,o.targetRouterState,o.currentRouterState,t,r).activate(e),o)))(this.rootContexts,t.routeReuseStrategy,l=>this.events.next(l),this.inputBindingEnabled),_r(1),rt({next:l=>{s=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new En(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects))),this.titleStrategy?.updateTitle(l.targetRouterState.snapshot),l.resolve(!0)},complete:()=>{s=!0}}),function iV(e){return $e((n,t)=>{qt(e).subscribe(Ve(t,()=>t.complete(),lu)),!t.closed&&n.subscribe(t)})}(this.transitionAbortSubject.pipe(rt(l=>{throw l}))),Fs(()=>{s||a||this.cancelNavigationTransition(i,"",1),this.currentNavigation?.id===i.id&&(this.currentNavigation=null)}),ti(l=>{if(a=!0,xE(l))this.events.next(new ii(i.id,this.urlSerializer.serialize(i.extractedUrl),l.message,l.cancellationCode)),function M3(e){return xE(e)&&Hr(e.url)}(l)?this.events.next(new fp(l.url)):i.resolve(!1);else{this.events.next(new Ec(i.id,this.urlSerializer.serialize(i.extractedUrl),l,i.targetSnapshot??void 0));try{i.resolve(t.errorHandler(l))}catch(c){i.reject(c)}}return an}))}))}cancelNavigationTransition(t,r,o){const i=new ii(t.id,this.urlSerializer.serialize(t.extractedUrl),r,o);this.events.next(i),t.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#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function xj(e){return e!==$s}let Nj=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Oj),providedIn:"root"})}return e})();class Rj{shouldDetach(n){return!1}store(n,t){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,t){return n.routeConfig===t.routeConfig}}let Oj=(()=>{class e extends Rj{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),$E=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Pj),providedIn:"root"})}return e})(),Pj=(()=>{class e extends $E{constructor(){super(...arguments),this.location=A(Rs),this.urlSerializer=A(oi),this.options=A(di,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=A(Ap),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new ri,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=bE(0,null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(t){return this.location.subscribe(r=>{"popstate"===r.type&&t(r.url,r.state)})}handleRouterEvent(t,r){if(t instanceof bc)this.stateMemento=this.createStateMemento();else if(t instanceof si)this.rawUrlTree=r.initialUrl;else if(t instanceof _E){if("eager"===this.urlUpdateStrategy&&!r.extras.skipLocationChange){const o=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl);this.setBrowserUrl(o,r)}}else t instanceof dp?(this.currentUrlTree=r.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl),this.routerState=r.targetRouterState,"deferred"===this.urlUpdateStrategy&&(r.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,r))):t instanceof ii&&(3===t.code||2===t.code)?this.restoreHistory(r):t instanceof Ec?this.restoreHistory(r,!0):t instanceof En&&(this.lastSuccessfulId=t.id,this.currentPageId=this.browserPageId)}setBrowserUrl(t,r){const o=this.urlSerializer.serialize(t);if(this.location.isCurrentPathEqualTo(o)||r.extras.replaceUrl){const s={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId)};this.location.replaceState(o,"",s)}else{const i={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId+1)};this.location.go(o,"",i)}}restoreHistory(t,r=!1){if("computed"===this.canceledNavigationResolution){const i=this.currentPageId-this.browserPageId;0!==i?this.location.historyGo(i):this.currentUrlTree===t.finalUrl&&0===i&&(this.resetState(t),this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(r&&this.resetState(t),this.resetUrlToCurrentUrlTree())}resetState(t){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(t,r){return"computed"===this.canceledNavigationResolution?{navigationId:t,\u0275routerPageId:r}:{navigationId:t}}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var Qs=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(Qs||{});function GE(e,n){e.events.pipe(rn(t=>t instanceof En||t instanceof ii||t instanceof Ec||t instanceof si),K(t=>t instanceof En||t instanceof si?Qs.COMPLETE:t instanceof ii&&(0===t.code||1===t.code)?Qs.REDIRECTING:Qs.FAILED),rn(t=>t!==Qs.REDIRECTING),_r(1)).subscribe(()=>{n()})}function kj(e){throw e}const Fj={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Lj={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Bt=(()=>{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=A(_w),this.stateManager=A($E),this.options=A(di,{optional:!0})||{},this.pendingTasks=A(Bl),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=A(Ac),this.urlSerializer=A(oi),this.location=A(Rs),this.urlHandlingStrategy=A(Ap),this._events=new zt,this.errorHandler=this.options.errorHandler||kj,this.navigated=!1,this.routeReuseStrategy=A(Nj),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=A(fi,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!A(Ic,{optional:!0}),this.eventsSubscription=new Et,this.isNgZoneEnabled=A(ae)instanceof ae&&ae.isInAngularZone(),this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:t=>{this.console.warn(t)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const t=this.navigationTransitions.events.subscribe(r=>{try{const o=this.navigationTransitions.currentTransition,i=this.navigationTransitions.currentNavigation;if(null!==o&&null!==i)if(this.stateManager.handleRouterEvent(r,i),r instanceof ii&&0!==r.code&&1!==r.code)this.navigated=!0;else if(r instanceof En)this.navigated=!0;else if(r instanceof fp){const s=this.urlHandlingStrategy.merge(r.url,o.currentRawUrl),a={skipLocationChange:o.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||xj(o.source)};this.scheduleNavigation(s,$s,null,a,{resolve:o.resolve,reject:o.reject,promise:o.promise})}(function jj(e){return!(e instanceof dp||e instanceof fp)})(r)&&this._events.next(r)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(t)}resetRootComponentType(t){this.routerState.root.component=t,this.navigationTransitions.rootComponentType=t}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),$s,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription||(this.nonRouterCurrentEntryChangeSubscription=this.stateManager.registerNonRouterCurrentEntryChangeListener((t,r)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(t,"popstate",r)},0)}))}navigateToSyncWithBrowser(t,r,o){const i={replaceUrl:!0},s=o?.navigationId?o:null;if(o){const l={...o};delete l.navigationId,delete l.\u0275routerPageId,0!==Object.keys(l).length&&(i.state=l)}const a=this.parseUrl(t);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(t){this.config=t.map(wp),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(t,r={}){const{relativeTo:o,queryParams:i,fragment:s,queryParamsHandling:a,preserveFragment:l}=r,c=l?this.currentUrlTree.fragment:s;let d,u=null;switch(a){case"merge":u={...this.currentUrlTree.queryParams,...i};break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=i||null}null!==u&&(u=this.removeEmptyProps(u));try{d=fE(o?o.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof t[0]||!t[0].startsWith("/"))&&(t=[]),d=this.currentUrlTree.root}return hE(d,t,u,c??null)}navigateByUrl(t,r={skipLocationChange:!1}){const o=Hr(t)?t:this.parseUrl(t),i=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(i,$s,null,r)}navigate(t,r={skipLocationChange:!1}){return function Vj(e){for(let n=0;n{const i=t[o];return null!=i&&(r[o]=i),r},{})}scheduleNavigation(t,r,o,i,s){if(this.disposed)return Promise.resolve(!1);let a,l,c;s?(a=s.resolve,l=s.reject,c=s.promise):c=new Promise((d,g)=>{a=d,l=g});const u=this.pendingTasks.add();return GE(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(u))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:t,extras:i,resolve:a,reject:l,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(d=>Promise.reject(d))}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Mn=(()=>{class e{constructor(t,r,o,i,s,a){this.router=t,this.route=r,this.tabIndexAttribute=o,this.renderer=i,this.el=s,this.locationStrategy=a,this.href=null,this.commands=null,this.onChanges=new zt,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const l=s.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===l||"area"===l,this.isAnchorElement?this.subscription=t.events.subscribe(c=>{c instanceof En&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(t){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",t)}ngOnChanges(t){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(t){null!=t?(this.commands=Array.isArray(t)?t:[t],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(t,r,o,i,s){return!!(null===this.urlTree||this.isAnchorElement&&(0!==t||r||o||i||s||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const t=null===this.href?null:function cy(e,n,t){return function lA(e,n){return"src"===n&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===n&&("base"===e||"link"===e)?ly:bo}(n,t)(e)}(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",t)}applyAttributeValue(t,r){const o=this.renderer,i=this.el.nativeElement;null!==r?o.setAttribute(i,t,r):o.removeAttribute(i,t)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Ur),function Oa(e){return function cS(e,n){if("class"===n)return e.classes;if("style"===n)return e.styles;const t=e.attrs;if(t){const r=t.length;let o=0;for(;o{class e{get isActive(){return this._isActive}constructor(t,r,o,i,s){this.router=t,this.element=r,this.renderer=o,this.cdr=i,this.link=s,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new xe,this.routerEventsSubscription=t.events.subscribe(a=>{a instanceof En&&this.update()})}ngAfterContentInit(){F(this.links.changes,F(null)).pipe(Yr()).subscribe(t=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const t=[...this.links.toArray(),this.link].filter(r=>!!r).map(r=>r.onChanges);this.linkInputChangesSubscription=Oe(t).pipe(Yr()).subscribe(r=>{this._isActive!==this.isLinkActive(this.router)(r)&&this.update()})}set routerLinkActive(t){const r=Array.isArray(t)?t:t.split(" ");this.classes=r.filter(o=>!!o)}ngOnChanges(t){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const t=this.hasActiveLinks();this._isActive!==t&&(this._isActive=t,this.cdr.markForCheck(),this.classes.forEach(r=>{t?this.renderer.addClass(this.element.nativeElement,r):this.renderer.removeClass(this.element.nativeElement,r)}),t&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(t))})}isLinkActive(t){const r=function Hj(e){return!!e.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return o=>!!o.urlTree&&t.isActive(o.urlTree,r)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.links.some(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Nt),S(Fn),S(as),S(Mn,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(r,o,i){if(1&r&&KD(i,Mn,5),2&r){let s;JD(s=function ew(){return function ck(e,n){return e[dn].queries[n].queryList}(b(),xm())}())&&(o.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Lt]})}return e})();class qE{}let Uj=(()=>{class e{constructor(t,r,o,i,s){this.router=t,this.injector=o,this.preloadingStrategy=i,this.loader=s}setUpPreloading(){this.subscription=this.router.events.pipe(rn(t=>t instanceof En),ei(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(t,r){const o=[];for(const i of r){i.providers&&!i._injector&&(i._injector=Xf(i.providers,t,`Route: ${i.path}`));const s=i._injector??t,a=i._loadedInjector??s;(i.loadChildren&&!i._loadedRoutes&&void 0===i.canLoad||i.loadComponent&&!i._loadedComponent)&&o.push(this.preloadConfig(s,i)),(i.children||i._loadedRoutes)&&o.push(this.processRoutes(a,i.children??i._loadedRoutes))}return Oe(o).pipe(Yr())}preloadConfig(t,r){return this.preloadingStrategy.preload(r,()=>{let o;o=r.loadChildren&&void 0===r.canLoad?this.loader.loadChildren(t,r):F(null);const i=o.pipe(Xe(s=>null===s?F(void 0):(r._loadedRoutes=s.routes,r._loadedInjector=s.injector,this.processRoutes(s.injector??t,s.routes))));return r.loadComponent&&!r._loadedComponent?Oe([i,this.loader.loadComponent(r)]).pipe(Yr()):i})}static#e=this.\u0275fac=function(r){return new(r||e)(k(Bt),k(Dw),k(At),k(qE),k(Tp))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const xp=new N("");let WE=(()=>{class e{constructor(t,r,o,i,s={}){this.urlSerializer=t,this.transitions=r,this.viewportScroller=o,this.zone=i,this.options=s,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},s.scrollPositionRestoration=s.scrollPositionRestoration||"disabled",s.anchorScrolling=s.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof bc?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof En?(this.lastId=t.id,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.urlAfterRedirects).fragment)):t instanceof si&&0===t.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof CE&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,r){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new CE(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,r))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){!function Ry(){throw new Error("invalid")}()};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Sn(e,n){return{\u0275kind:e,\u0275providers:n}}function YE(){const e=A(_t);return n=>{const t=e.get(Qo);if(n!==t.components[0])return;const r=e.get(Bt),o=e.get(QE);1===e.get(Np)&&r.initialNavigation(),e.get(XE,null,X.Optional)?.setUpPreloading(),e.get(xp,null,X.Optional)?.init(),r.resetRootComponentType(t.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}const QE=new N("",{factory:()=>new zt}),Np=new N("",{providedIn:"root",factory:()=>1}),XE=new N("");function zj(e){return Sn(0,[{provide:XE,useExisting:Uj},{provide:qE,useExisting:e}])}function Wj(e){return Sn(9,[{provide:UE,useValue:Tj},{provide:BE,useValue:{skipNextTransition:!!e?.skipInitialTransition,...e}}])}const JE=new N("ROUTER_FORROOT_GUARD"),Zj=[Rs,{provide:oi,useClass:sp},Bt,Gs,{provide:Ur,useFactory:function ZE(e){return e.routerState.root},deps:[Bt]},Tp,[]];let KE=(()=>{class e{constructor(t){}static forRoot(t,r){return{ngModule:e,providers:[Zj,[],{provide:fi,multi:!0,useValue:t},{provide:JE,useFactory:Jj,deps:[[Bt,new Fa,new La]]},{provide:di,useValue:r||{}},r?.useHash?{provide:Lr,useClass:KF}:{provide:Lr,useClass:lb},{provide:xp,useFactory:()=>{const e=A(yL),n=A(ae),t=A(di),r=A(Ac),o=A(oi);return t.scrollOffset&&e.setOffset(t.scrollOffset),new WE(o,r,e,n,t)}},r?.preloadingStrategy?zj(r.preloadingStrategy).\u0275providers:[],r?.initialNavigation?Kj(r):[],r?.bindToComponentInputs?Sn(8,[SE,{provide:Ic,useExisting:SE}]).\u0275providers:[],r?.enableViewTransitions?Wj().\u0275providers:[],[{provide:eI,useFactory:YE},{provide:mh,multi:!0,useExisting:eI}]]}}static forChild(t){return{ngModule:e,providers:[{provide:fi,multi:!0,useValue:t}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(JE,8))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Jj(e){return"guarded"}function Kj(e){return["disabled"===e.initialNavigation?Sn(3,[{provide:ch,multi:!0,useFactory:()=>{const n=A(Bt);return()=>{n.setUpLocationChangeListener()}}},{provide:Np,useValue:2}]).\u0275providers:[],"enabledBlocking"===e.initialNavigation?Sn(2,[{provide:Np,useValue:0},{provide:ch,multi:!0,deps:[_t],useFactory:n=>{const t=n.get(XF,Promise.resolve());return()=>t.then(()=>new Promise(r=>{const o=n.get(Bt),i=n.get(QE);GE(o,()=>{r(!0)}),n.get(Ac).afterPreactivation=()=>(r(!0),i.closed?F(void 0):i),o.initialNavigation()}))}}]).\u0275providers:[]]}const eI=new N(""),tH=()=>["/pro"];let nH=(()=>{class e{constructor(){this.years=(new Date).getFullYear()-2009}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-footer"]],standalone:!0,features:[Ot],decls:94,vars:3,consts:[[1,"container-fluid","mt-5"],[1,"p-5"],[1,"container"],[1,"row"],[1,"col-xs-12","col-md-4","text-center"],["src","resources/portrait_600.jpg","alt","Portrait",1,"img-fluid","img-thumbnail","mb-5",2,"max-height","300px"],[1,"col-xs-12","col-md-8"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[3,"routerLink"],[1,"col-md-3","offset-md-2"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ","target","_blank"],[1,"col-md-4","mt-4","mt-md-0"],["href","https://www.nuget.org/packages/ReportGenerator","target","_blank"],["href","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool","target","_blank"],["href","https://www.nuget.org/packages/ReportGenerator.Core","target","_blank"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col-md-3","mt-4","mt-md-0"],[1,"fa-brands","fa-github"],["href","https://twitter.com/danielpalme","target","_blank"],[1,"fa-brands","fa-twitter"],["href","https://www.palmmedia.de/Privacy","target","_blank"],["href","https://www.palmmedia.de/Imprint","target","_blank"]],template:function(r,o){1&r&&(h(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),y(5,"img",5),p(),h(6,"div",6)(7,"h2"),f(8,"Who's behind"),p(),h(9,"p"),f(10,"My name is Daniel Palme. I'm a software developer from Germany."),p(),h(11,"p"),f(12," Back in 2009 I wanted to create a code coverage report based on "),h(13,"i"),f(14,"PartCover"),p(),f(15," files."),y(16,"br"),f(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),y(18,"br"),f(19),h(20,"i"),f(21,"ReportGenerator"),p(),f(22,". "),p(),h(23,"p"),f(24," You can support the ongoing maintenance by becoming a "),y(25,"i",7),f(26,"\xa0"),h(27,"a",8),f(28,"GitHub sponsor"),p(),f(29," or by buying a "),h(30,"a",9),f(31,"PRO license"),p(),f(32,". "),p()()()()(),h(33,"div",2)(34,"div",3),y(35,"hr"),p()(),h(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),f(42,"GitHub"),p()(),h(43,"a",11),f(44,"Source code"),p(),y(45,"br"),h(46,"a",12),f(47,"Wiki"),p(),y(48,"br"),h(49,"a",13),f(50,"FAQ"),p()(),h(51,"div",14)(52,"p")(53,"b"),f(54,"Download"),p()(),h(55,"i"),f(56,"NuGet"),p(),y(57,"br"),h(58,"a",15),f(59,"ReportGenerator"),p(),y(60,"br"),h(61,"a",16),f(62,"dotnet-reportgenerator-globaltool"),p(),y(63,"br"),h(64,"a",17),f(65,"ReportGenerator.Core"),p(),y(66,"br")(67,"br"),h(68,"i"),f(69,"Integration"),p(),y(70,"br"),h(71,"a",18),f(72,"GitHub actions"),p(),y(73,"br"),h(74,"a",19),f(75,"Azure DevOps"),p()(),h(76,"div",20)(77,"p")(78,"b"),f(79,"Community"),p()(),h(80,"a",11),y(81,"i",21),f(82," GitHub"),p(),y(83,"br"),h(84,"a",22),y(85,"i",23),f(86," Twitter"),p(),y(87,"br")(88,"br"),h(89,"a",24),f(90,"Privacy"),p(),y(91,"br"),h(92,"a",25),f(93,"Imprint"),p()()()()()()),2&r&&(C(19),Hn(" Fast forward ",o.years," years, I'm still maintaining "),C(11),E("routerLink",ee(2,tH)))},dependencies:[Mn],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}"]})}return e})();const tI=()=>["/"],rH=e=>({show:e}),hi=()=>["link-active"],nI=()=>({exact:!0}),oH=()=>["/features"],iH=()=>["/getstarted"],sH=()=>["/usage"],aH=()=>["/contact"],lH=()=>["/pro"];let cH=(()=>{class e{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[Ot],decls:42,vars:34,consts:[[1,"mb-5"],[1,"navbar","fixed-top","navbar-expand-sm","navbar-toggleable-sm","navbar-light","bg-white","border-bottom","box-shadow","mb-3"],[1,"container-xxl","flex-wrap","flex-md-nowrap"],[1,"navbar-brand",3,"routerLink"],["src","resources/logo.svg","height","40","alt","Icon",1,"me-2"],[1,"d-sm-none","d-md-none","d-lg-inline","ms-2"],["type","button","data-toggle","collapse","data-target",".navbar-collapse","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse","collapse","d-sm-inline-flex",3,"ngClass"],[1,"navbar-nav","flex-grow"],[1,"nav-item",3,"routerLinkActive","routerLinkActiveOptions"],[1,"nav-link","text-dark",3,"routerLink"],[1,"nav-item",3,"routerLinkActive"],[1,"nav-link","text-dark","text-nowrap",3,"routerLink"],[1,"pro-button"],[1,"d-md-none","text-secondary"],[1,"navbar-nav","flex-row","flex-wrap","ms-md-auto","d-sm-none","d-md-flex"],[1,"nav-item","col-6","col-md-auto"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank","title","GitHub",1,"nav-link","text-dark"],[1,"fa-brands","fa-github"],[1,"d-inline","d-sm-none","ms-2"],["href","https://twitter.com/danielpalme","target","_blank","title","Twitter",1,"nav-link","text-dark"],[1,"fa-brands","fa-twitter"]],template:function(r,o){1&r&&(h(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),y(4,"img",4),h(5,"span",5),f(6,"ReportGenerator"),p()(),h(7,"button",6),R("click",function(){return o.toggle()}),y(8,"span",7),p(),h(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),f(13,"Home"),p()(),h(14,"li",10)(15,"a",11),f(16,"Features"),p()(),h(17,"li",12)(18,"a",13),f(19,"Get started"),p()(),h(20,"li",12)(21,"a",11),f(22,"Usage"),p()(),h(23,"li",12)(24,"a",11),f(25,"Contact"),p()(),h(26,"li",12)(27,"a",11)(28,"span",14),f(29,"PRO"),p()()()(),y(30,"hr",15),h(31,"ul",16)(32,"li",17)(33,"a",18),y(34,"i",19),h(35,"span",20),f(36,"GitHub"),p()()(),h(37,"li",17)(38,"a",21),y(39,"i",22),h(40,"span",20),f(41,"Twitter"),p()()()()()()()()),2&r&&(C(3),E("routerLink",ee(17,tI)),C(4),Xt("aria-expanded",o.isExpanded),C(2),E("ngClass",Is(18,rH,o.isExpanded)),C(2),E("routerLinkActive",ee(20,hi))("routerLinkActiveOptions",ee(21,nI)),C(1),E("routerLink",ee(22,tI)),C(2),E("routerLinkActive",ee(23,hi))("routerLinkActiveOptions",ee(24,nI)),C(1),E("routerLink",ee(25,oH)),C(2),E("routerLinkActive",ee(26,hi)),C(1),E("routerLink",ee(27,iH)),C(2),E("routerLinkActive",ee(28,hi)),C(1),E("routerLink",ee(29,sH)),C(2),E("routerLinkActive",ee(30,hi)),C(1),E("routerLink",ee(31,aH)),C(2),E("routerLinkActive",ee(32,hi)),C(1),E("routerLink",ee(33,lH)))},dependencies:[Mn,cc,zE],styles:[".box-shadow[_ngcontent-%COMP%]{box-shadow:0 .25rem .75rem #0000000d}@keyframes _ngcontent-%COMP%_pro-button-animation{0%{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}50%{background-color:vvar(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}to{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}}.pro-button[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_pro-button-animation;animation-duration:2s;animation-iteration-count:2}.pro-button[_ngcontent-%COMP%]:hover, .link-active[_ngcontent-%COMP%] .pro-button[_ngcontent-%COMP%]{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}.nav-link[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500}.nav-link[_ngcontent-%COMP%]:hover{text-decoration:underline;text-underline-offset:2px}.link-active[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--rg-primary-hover-color)!important;font-weight:400}"]})}return e})(),uH=(()=>{class e{constructor(t,r,o){this.dom=t,this.router=r,this.activatedRoute=o}ngOnInit(){this.router.events.pipe(rn(t=>t instanceof En),K(()=>this.activatedRoute),K(t=>{for(;t.firstChild;)t=t.firstChild;return t}),rn(t=>"primary"===t.outlet),Xe(t=>t.data)).subscribe(t=>{const r=`${window.location.protocol}//${window.location.hostname}`;this.updateCanonicalUrl(t.canonical?r+t.canonical:r+this.router.url)})}updateCanonicalUrl(t){const r=this.dom.getElementsByTagName("head")[0];var o=this.dom.querySelector("link[rel='canonical']")||null;null==o&&(o=this.dom.createElement("link"),r.appendChild(o)),o.setAttribute("rel","canonical"),o.setAttribute("href",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(ft),S(Bt),S(Ur))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-root"]],standalone:!0,features:[Ot],decls:3,vars:0,template:function(r,o){1&r&&y(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[cH,Cp,nH],encapsulation:2})}return e})(),rI=(()=>{class e{constructor(t,r){this._renderer=t,this._elementRef=r,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(t,r){this._renderer.setProperty(this._elementRef.nativeElement,t,r)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt))};static#t=this.\u0275dir=$({type:e})}return e})(),Br=(()=>{class e extends rI{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,features:[ce]})}return e})();const Tn=new N("NgValueAccessor"),hH={provide:Tn,useExisting:he(()=>pi),multi:!0},gH=new N("CompositionEventMode");let pi=(()=>{class e extends rI{constructor(t,r,o){super(t,r),this._compositionMode=o,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function pH(){const e=lr()?lr().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(t){this.setProperty("value",t??"")}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(gH,8))};static#t=this.\u0275dir=$({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(r,o){1&r&&R("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[Ee([hH]),ce]})}return e})();function dr(e){return null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}const ot=new N("NgValidators"),fr=new N("NgAsyncValidators"),mH=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;function lI(e){return dr(e.value)?{required:!0}:null}function uI(e){return dr(e.value)||mH.test(e.value)?null:{email:!0}}function xc(e){return null}function pI(e){return null!=e}function gI(e){return Es(e)?Oe(e):e}function mI(e){let n={};return e.forEach(t=>{n=null!=t?{...n,...t}:n}),0===Object.keys(n).length?null:n}function vI(e,n){return n.map(t=>t(e))}function yI(e){return e.map(n=>function vH(e){return!e.validate}(n)?n:t=>n.validate(t))}function Rp(e){return null!=e?function _I(e){if(!e)return null;const n=e.filter(pI);return 0==n.length?null:function(t){return mI(vI(t,n))}}(yI(e)):null}function Op(e){return null!=e?function CI(e){if(!e)return null;const n=e.filter(pI);return 0==n.length?null:function(t){return function dH(...e){const n=Vg(e),{args:t,keys:r}=Nb(e),o=new Te(i=>{const{length:s}=t;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=g},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(r?Ob(r,a):a),i.complete())}))}});return n?o.pipe(Rb(n)):o}(vI(t,n).map(gI)).pipe(K(mI))}}(yI(e)):null}function DI(e,n){return null===e?[n]:Array.isArray(e)?[...e,n]:[e,n]}function Pp(e){return e?Array.isArray(e)?e:[e]:[]}function Nc(e,n){return Array.isArray(e)?e.includes(n):e===n}function EI(e,n){const t=Pp(n);return Pp(e).forEach(o=>{Nc(t,o)||t.push(o)}),t}function II(e,n){return Pp(n).filter(t=>!Nc(e,t))}class MI{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=Rp(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=Op(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control&&this.control.reset(n)}hasError(n,t){return!!this.control&&this.control.hasError(n,t)}getError(n,t){return this.control?this.control.getError(n,t):null}}class pt extends MI{get formDirective(){return null}get path(){return null}}class hr extends MI{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class SI{constructor(n){this._cd=n}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Rc=(()=>{class e extends SI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(hr,2))};static#t=this.\u0275dir=$({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(r,o){2&r&&bl("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[ce]})}return e})(),Oc=(()=>{class e extends SI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,10))};static#t=this.\u0275dir=$({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(r,o){2&r&&bl("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)("ng-submitted",o.isSubmitted)},features:[ce]})}return e})();const Xs="VALID",kc="INVALID",gi="PENDING",Js="DISABLED";function Lp(e){return(Fc(e)?e.validators:e)||null}function Vp(e,n){return(Fc(n)?n.asyncValidators:e)||null}function Fc(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class NI{constructor(n,t){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get valid(){return this.status===Xs}get invalid(){return this.status===kc}get pending(){return this.status==gi}get disabled(){return this.status===Js}get enabled(){return this.status!==Js}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(EI(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(EI(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(II(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(II(n,this._rawAsyncValidators))}hasValidator(n){return Nc(this._rawValidators,n)}hasAsyncValidator(n){return Nc(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){this.touched=!0,this._parent&&!n.onlySelf&&this._parent.markAsTouched(n)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(n=>n.markAllAsTouched())}markAsUntouched(n={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}markAsDirty(n={}){this.pristine=!1,this._parent&&!n.onlySelf&&this._parent.markAsDirty(n)}markAsPristine(n={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}markAsPending(n={}){this.status=gi,!1!==n.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!n.onlySelf&&this._parent.markAsPending(n)}disable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Js,this.errors=null,this._forEachChild(r=>{r.disable({...n,onlySelf:!0})}),this._updateValue(),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!0))}enable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Xs,this._forEachChild(r=>{r.enable({...n,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!1))}_updateAncestors(n){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Xs||this.status===gi)&&this._runAsyncValidator(n.emitEvent)),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.updateValueAndValidity(n)}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Js:Xs}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n){if(this.asyncValidator){this.status=gi,this._hasOwnPendingAsyncValidator=!0;const t=gI(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(r=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(r,{emitEvent:n})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(!1!==t.emitEvent)}get(n){let t=n;return null==t||(Array.isArray(t)||(t=t.split(".")),0===t.length)?null:t.reduce((r,o)=>r&&r._find(o),this)}getError(n,t){const r=t?this.get(t):this;return r&&r.errors?r.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(n)}_initObservables(){this.valueChanges=new xe,this.statusChanges=new xe}_calculateStatus(){return this._allControlsDisabled()?Js:this.errors?kc:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(gi)?gi:this._anyControlsHaveStatus(kc)?kc:Xs}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n={}){this.pristine=!this._anyControlsDirty(),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}_updateTouched(n={}){this.touched=this._anyControlsTouched(),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Fc(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=function DH(e){return Array.isArray(e)?Rp(e):e||null}(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=function wH(e){return Array.isArray(e)?Op(e):e||null}(this._rawAsyncValidators)}}class jp extends NI{constructor(n,t,r){super(Lp(t),Vp(r,t)),this.controls=n,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(n,t){return this.controls[n]?this.controls[n]:(this.controls[n]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}addControl(n,t,r={}){this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}removeControl(n,t={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}setControl(n,t,r={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],t&&this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,t={}){(function xI(e,n,t){e._forEachChild((r,o)=>{if(void 0===t[o])throw new M(1002,"")})})(this,0,n),Object.keys(n).forEach(r=>{(function AI(e,n,t){const r=e.controls;if(!(n?Object.keys(r):r).length)throw new M(1e3,"");if(!r[t])throw new M(1001,"")})(this,!0,r),this.controls[r].setValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(n,t={}){null!=n&&(Object.keys(n).forEach(r=>{const o=this.controls[r];o&&o.patchValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t))}reset(n={},t={}){this._forEachChild((r,o)=>{r.reset(n?n[o]:null,{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this._reduceChildren({},(n,t,r)=>(n[r]=t.getRawValue(),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(t,r)=>!!r._syncPendingControls()||t);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(t=>{const r=this.controls[t];r&&n(r,t)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(const[t,r]of Object.entries(this.controls))if(this.contains(t)&&n(r))return!0;return!1}_reduceValue(){return this._reduceChildren({},(t,r,o)=>((r.enabled||this.disabled)&&(t[o]=r.value),t))}_reduceChildren(n,t){let r=n;return this._forEachChild((o,i)=>{r=t(r,o,i)}),r}_allControlsDisabled(){for(const n of Object.keys(this.controls))if(this.controls[n].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(n){return this.controls.hasOwnProperty(n)?this.controls[n]:null}}const mi=new N("CallSetDisabledState",{providedIn:"root",factory:()=>Lc}),Lc="always";function Ks(e,n,t=Lc){Hp(e,n),n.valueAccessor.writeValue(e.value),(e.disabled||"always"===t)&&n.valueAccessor.setDisabledState?.(e.disabled),function IH(e,n){n.valueAccessor.registerOnChange(t=>{e._pendingValue=t,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&RI(e,n)})}(e,n),function SH(e,n){const t=(r,o)=>{n.valueAccessor.writeValue(r),o&&n.viewToModelUpdate(r)};e.registerOnChange(t),n._registerOnDestroy(()=>{e._unregisterOnChange(t)})}(e,n),function MH(e,n){n.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&RI(e,n),"submit"!==e.updateOn&&e.markAsTouched()})}(e,n),function EH(e,n){if(n.valueAccessor.setDisabledState){const t=r=>{n.valueAccessor.setDisabledState(r)};e.registerOnDisabledChange(t),n._registerOnDestroy(()=>{e._unregisterOnDisabledChange(t)})}}(e,n)}function Hc(e,n){e.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function Hp(e,n){const t=function wI(e){return e._rawValidators}(e);null!==n.validator?e.setValidators(DI(t,n.validator)):"function"==typeof t&&e.setValidators([t]);const r=function bI(e){return e._rawAsyncValidators}(e);null!==n.asyncValidator?e.setAsyncValidators(DI(r,n.asyncValidator)):"function"==typeof r&&e.setAsyncValidators([r]);const o=()=>e.updateValueAndValidity();Hc(n._rawValidators,o),Hc(n._rawAsyncValidators,o)}function RI(e,n){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}const RH={provide:pt,useExisting:he(()=>vi)},ea=(()=>Promise.resolve())();let vi=(()=>{class e extends pt{constructor(t,r,o){super(),this.callSetDisabledState=o,this.submitted=!1,this._directives=new Set,this.ngSubmit=new xe,this.form=new jp({},Rp(t),Op(r))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){ea.then(()=>{const r=this._findContainer(t.path);t.control=r.registerControl(t.name,t.control),Ks(t.control,t,this.callSetDisabledState),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){ea.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name),this._directives.delete(t)})}addFormGroup(t){ea.then(()=>{const r=this._findContainer(t.path),o=new jp({});(function OI(e,n){Hp(e,n)})(o,t),r.registerControl(t.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){ea.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,r){ea.then(()=>{this.form.get(t.path).setValue(r)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,function PI(e,n){e._syncPendingControls(),n.forEach(t=>{const r=t.control;"submit"===r.updateOn&&r._pendingChange&&(t.viewToModelUpdate(r._pendingValue),r._pendingChange=!1)})}(this.form,this._directives),this.ngSubmit.emit(t),"dialog"===t?.target?.method}onReset(){this.resetForm()}resetForm(t=void 0){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}static#e=this.\u0275fac=function(r){return new(r||e)(S(ot,10),S(fr,10),S(mi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(r,o){1&r&&R("submit",function(s){return o.onSubmit(s)})("reset",function(){return o.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Ee([RH]),ce]})}return e})();function kI(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}function FI(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const LI=class extends NI{constructor(n=null,t,r){super(Lp(t),Vp(r,t)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Fc(t)&&(t.nonNullable||t.initialValueIsDefault)&&(this.defaultValue=FI(n)?n.value:n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(r=>r(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){kI(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){kI(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(n){FI(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}},kH={provide:hr,useExisting:he(()=>ta)},HI=(()=>Promise.resolve())();let ta=(()=>{class e extends hr{constructor(t,r,o,i,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this.control=new LI,this._registered=!1,this.name="",this.update=new xe,this._parent=t,this._setValidators(r),this._setAsyncValidators(o),this.valueAccessor=function $p(e,n){if(!n)return null;let t,r,o;return Array.isArray(n),n.forEach(i=>{i.constructor===pi?t=i:function xH(e){return Object.getPrototypeOf(e.constructor)===Br}(i)?r=i:o=i}),o||r||t||null}(0,i)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){const r=t.name.previousValue;this.formDirective.removeControl({name:r,path:this._getPath(r)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),function Bp(e,n){if(!e.hasOwnProperty("model"))return!1;const t=e.model;return!!t.isFirstChange()||!Object.is(n,t.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Ks(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(t){HI.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){const r=t.isDisabled.currentValue,o=0!==r&&Jo(r);HI.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?function Vc(e,n){return[...n.path,e]}(t,this._parent):[t]}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,9),S(ot,10),S(fr,10),S(Tn,10),S(as,8),S(mi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[Ee([kH]),ce,Lt]})}return e})(),Bc=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]})}return e})();const LH={provide:Tn,useExisting:he(()=>Gp),multi:!0};let BI=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})(),VH=(()=>{class e{constructor(){this._accessors=[]}add(t,r){this._accessors.push([t,r])}remove(t){for(let r=this._accessors.length-1;r>=0;--r)if(this._accessors[r][1]===t)return void this._accessors.splice(r,1)}select(t){this._accessors.forEach(r=>{this._isSameGroup(r,t)&&r[1]!==t&&r[1].fireUncheck(t.value)})}_isSameGroup(t,r){return!!t[0].control&&t[0]._parent===r._control._parent&&t[1].name===r.name}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:BI})}return e})(),Gp=(()=>{class e extends Br{constructor(t,r,o,i){super(t,r),this._registry=o,this._injector=i,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=A(mi,{optional:!0})??Lc}ngOnInit(){this._control=this._injector.get(hr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this.setProperty("checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}setDisabledState(t){(this.setDisabledStateFired||t||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",t),this.setDisabledStateFired=!0}fireUncheck(t){this.writeValue(t)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(VH),S(_t))};static#t=this.\u0275dir=$({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[Ee([LH]),ce]})}return e})();const zH={provide:Tn,useExisting:he(()=>$c),multi:!0};function ZI(e,n){return null==e?`${n}`:(n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let $c=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){this.value=t;const o=ZI(this._getOptionId(t),t);this.setProperty("value",o)}registerOnChange(t){this.onChange=r=>{this.value=this._getOptionValue(r),t(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const r of this._optionMap.keys())if(this._compareWith(this._optionMap.get(r),t))return r;return null}_getOptionValue(t){const r=function qH(e){return e.split(":")[0]}(t);return this._optionMap.has(r)?this._optionMap.get(r):t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([zH]),ce]})}return e})(),YI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(ZI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S($c,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();const WH={provide:Tn,useExisting:he(()=>Zp),multi:!0};function QI(e,n){return null==e?`${n}`:("string"==typeof n&&(n=`'${n}'`),n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let Zp=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){let r;if(this.value=t,Array.isArray(t)){const o=t.map(i=>this._getOptionId(i));r=(i,s)=>{i._setSelected(o.indexOf(s.toString())>-1)}}else r=(o,i)=>{o._setSelected(!1)};this._optionMap.forEach(r)}registerOnChange(t){this.onChange=r=>{const o=[],i=r.selectedOptions;if(void 0!==i){const s=i;for(let a=0;a{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([WH]),ce]})}return e})(),XI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(QI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(QI(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S(Zp,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();let $r=(()=>{class e{constructor(){this._validator=xc}ngOnChanges(t){if(this.inputName in t){const r=this.normalizeInput(t[this.inputName].currentValue);this._enabled=this.enabled(r),this._validator=this._enabled?this.createValidator(r):xc,this._onChange&&this._onChange()}}validate(t){return this._validator(t)}registerOnValidatorChange(t){this._onChange=t}enabled(t){return null!=t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,features:[Lt]})}return e})();const XH={provide:ot,useExisting:he(()=>yi),multi:!0};let yi=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=Jo,this.createValidator=t=>lI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("required",o._enabled?"":null)},inputs:{required:"required"},features:[Ee([XH]),ce]})}return e})();const KH={provide:ot,useExisting:he(()=>Gc),multi:!0};let Gc=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=Jo,this.createValidator=t=>uI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[Ee([KH]),ce]})}return e})();const tU={provide:ot,useExisting:he(()=>Yp),multi:!0};let Yp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=t=>function JI(e){return"number"==typeof e?e:parseInt(e,10)}(t),this.createValidator=t=>function fI(e){return n=>function iI(e){return null!=e&&"number"==typeof e.length}(n.value)&&n.value.length>e?{maxlength:{requiredLength:e,actualLength:n.value.length}}:null}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[Ee([tU]),ce]})}return e})();const nU={provide:ot,useExisting:he(()=>Qp),multi:!0};let Qp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=t=>t,this.createValidator=t=>function hI(e){if(!e)return xc;let n,t;return"string"==typeof e?(t="","^"!==e.charAt(0)&&(t+="^"),t+=e,"$"!==e.charAt(e.length-1)&&(t+="$"),n=new RegExp(t)):(t=e.toString(),n=e),r=>{if(dr(r.value))return null;const o=r.value;return n.test(o)?null:{pattern:{requiredPattern:t,actualValue:o}}}}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[Ee([nU]),ce]})}return e})(),rU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[BI]})}return e})(),zc=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:mi,useValue:t.callSetDisabledState??Lc}]}}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[rU]})}return e})();class qc{}class Wc{}class $t{constructor(n){this.normalizedNames=new Map,this.lazyUpdate=null,n?"string"==typeof n?this.lazyInit=()=>{this.headers=new Map,n.split("\n").forEach(t=>{const r=t.indexOf(":");if(r>0){const o=t.slice(0,r),i=o.toLowerCase(),s=t.slice(r+1).trim();this.maybeSetNormalizedName(o,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:typeof Headers<"u"&&n instanceof Headers?(this.headers=new Map,n.forEach((t,r)=>{this.setHeaderEntries(r,t)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(n).forEach(([t,r])=>{this.setHeaderEntries(t,r)})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();const t=this.headers.get(n.toLowerCase());return t&&t.length>0?t[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,t){return this.clone({name:n,value:t,op:"a"})}set(n,t){return this.clone({name:n,value:t,op:"s"})}delete(n,t){return this.clone({name:n,value:t,op:"d"})}maybeSetNormalizedName(n,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,n)}init(){this.lazyInit&&(this.lazyInit instanceof $t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(n=>this.applyUpdate(n)),this.lazyUpdate=null))}copyFrom(n){n.init(),Array.from(n.headers.keys()).forEach(t=>{this.headers.set(t,n.headers.get(t)),this.normalizedNames.set(t,n.normalizedNames.get(t))})}clone(n){const t=new $t;return t.lazyInit=this.lazyInit&&this.lazyInit instanceof $t?this.lazyInit:this,t.lazyUpdate=(this.lazyUpdate||[]).concat([n]),t}applyUpdate(n){const t=n.name.toLowerCase();switch(n.op){case"a":case"s":let r=n.value;if("string"==typeof r&&(r=[r]),0===r.length)return;this.maybeSetNormalizedName(n.name,t);const o=("a"===n.op?this.headers.get(t):void 0)||[];o.push(...r),this.headers.set(t,o);break;case"d":const i=n.value;if(i){let s=this.headers.get(t);if(!s)return;s=s.filter(a=>-1===i.indexOf(a)),0===s.length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,s)}else this.headers.delete(t),this.normalizedNames.delete(t)}}setHeaderEntries(n,t){const r=(Array.isArray(t)?t:[t]).map(i=>i.toString()),o=n.toLowerCase();this.headers.set(o,r),this.maybeSetNormalizedName(n,o)}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(t=>n(this.normalizedNames.get(t),this.headers.get(t)))}}class iU{encodeKey(n){return sM(n)}encodeValue(n){return sM(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}}const aU=/%(\d[a-f0-9])/gi,lU={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function sM(e){return encodeURIComponent(e).replace(aU,(n,t)=>lU[t]??n)}function Zc(e){return`${e}`}class pr{constructor(n={}){if(this.updates=null,this.cloneFrom=null,this.encoder=n.encoder||new iU,n.fromString){if(n.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function sU(e,n){const t=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(o=>{const i=o.indexOf("="),[s,a]=-1==i?[n.decodeKey(o),""]:[n.decodeKey(o.slice(0,i)),n.decodeValue(o.slice(i+1))],l=t.get(s)||[];l.push(a),t.set(s,l)}),t}(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(t=>{const r=n.fromObject[t],o=Array.isArray(r)?r.map(Zc):[Zc(r)];this.map.set(t,o)})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();const t=this.map.get(n);return t?t[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,t){return this.clone({param:n,value:t,op:"a"})}appendAll(n){const t=[];return Object.keys(n).forEach(r=>{const o=n[r];Array.isArray(o)?o.forEach(i=>{t.push({param:r,value:i,op:"a"})}):t.push({param:r,value:o,op:"a"})}),this.clone(t)}set(n,t){return this.clone({param:n,value:t,op:"s"})}delete(n,t){return this.clone({param:n,value:t,op:"d"})}toString(){return this.init(),this.keys().map(n=>{const t=this.encoder.encodeKey(n);return this.map.get(n).map(r=>t+"="+this.encoder.encodeValue(r)).join("&")}).filter(n=>""!==n).join("&")}clone(n){const t=new pr({encoder:this.encoder});return t.cloneFrom=this.cloneFrom||this,t.updates=(this.updates||[]).concat(n),t}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(n=>this.map.set(n,this.cloneFrom.map.get(n))),this.updates.forEach(n=>{switch(n.op){case"a":case"s":const t=("a"===n.op?this.map.get(n.param):void 0)||[];t.push(Zc(n.value)),this.map.set(n.param,t);break;case"d":if(void 0===n.value){this.map.delete(n.param);break}{let r=this.map.get(n.param)||[];const o=r.indexOf(Zc(n.value));-1!==o&&r.splice(o,1),r.length>0?this.map.set(n.param,r):this.map.delete(n.param)}}}),this.cloneFrom=this.updates=null)}}class cU{constructor(){this.map=new Map}set(n,t){return this.map.set(n,t),this}get(n){return this.map.has(n)||this.map.set(n,n.defaultValue()),this.map.get(n)}delete(n){return this.map.delete(n),this}has(n){return this.map.has(n)}keys(){return this.map.keys()}}function aM(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer}function lM(e){return typeof Blob<"u"&&e instanceof Blob}function cM(e){return typeof FormData<"u"&&e instanceof FormData}class na{constructor(n,t,r,o){let i;if(this.url=t,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=n.toUpperCase(),function uU(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==r?r:null,i=o):i=r,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.context&&(this.context=i.context),i.params&&(this.params=i.params),this.transferCache=i.transferCache),this.headers||(this.headers=new $t),this.context||(this.context=new cU),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=t;else{const a=t.indexOf("?");this.urlWithParams=t+(-1===a?"?":ad.set(g,n.setHeaders[g]),l)),n.setParams&&(c=Object.keys(n.setParams).reduce((d,g)=>d.set(g,n.setParams[g]),c)),new na(t,r,i,{params:c,headers:l,context:u,reportProgress:a,responseType:o,withCredentials:s})}}var gr=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}(gr||{});class Xp{constructor(n,t=200,r="OK"){this.headers=n.headers||new $t,this.status=void 0!==n.status?n.status:t,this.statusText=n.statusText||r,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}}class Yc extends Xp{constructor(n={}){super(n),this.type=gr.ResponseHeader}clone(n={}){return new Yc({headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class Gr extends Xp{constructor(n={}){super(n),this.type=gr.Response,this.body=void 0!==n.body?n.body:null}clone(n={}){return new Gr({body:void 0!==n.body?n.body:this.body,headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class _i extends Xp{constructor(n){super(n,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${n.url||"(unknown url)"}`:`Http failure response for ${n.url||"(unknown url)"}: ${n.status} ${n.statusText}`,this.error=n.error||null}}function Jp(e,n){return{body:n,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials,transferCache:e.transferCache}}let Kp=(()=>{class e{constructor(t){this.handler=t}request(t,r,o={}){let i;if(t instanceof na)i=t;else{let l,c;l=o.headers instanceof $t?o.headers:new $t(o.headers),o.params&&(c=o.params instanceof pr?o.params:new pr({fromObject:o.params})),i=new na(t,r,void 0!==o.body?o.body:null,{headers:l,context:o.context,params:c,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache})}const s=F(i).pipe(ei(l=>this.handler.handle(l)));if(t instanceof na||"events"===o.observe)return s;const a=s.pipe(rn(l=>l instanceof Gr));switch(o.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return l.body}));case"blob":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof Blob))throw new Error("Response is not a Blob.");return l.body}));case"text":return a.pipe(K(l=>{if(null!==l.body&&"string"!=typeof l.body)throw new Error("Response is not a string.");return l.body}));default:return a.pipe(K(l=>l.body))}case"response":return a;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(t,r={}){return this.request("DELETE",t,r)}get(t,r={}){return this.request("GET",t,r)}head(t,r={}){return this.request("HEAD",t,r)}jsonp(t,r){return this.request("JSONP",t,{params:(new pr).append(r,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,r={}){return this.request("OPTIONS",t,r)}patch(t,r,o={}){return this.request("PATCH",t,Jp(o,r))}post(t,r,o={}){return this.request("POST",t,Jp(o,r))}put(t,r,o={}){return this.request("PUT",t,Jp(o,r))}static#e=this.\u0275fac=function(r){return new(r||e)(k(qc))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function dM(e,n){return n(e)}function mU(e,n){return(t,r)=>n.intercept(t,{handle:o=>e(o,r)})}const yU=new N(""),ra=new N(""),fM=new N(""),hM=new N("");function _U(){let e=null;return(n,t)=>{null===e&&(e=(A(yU,{optional:!0})??[]).reduceRight(mU,dM));const r=A(Bl),o=r.add();return e(n,t).pipe(Fs(()=>r.remove(o)))}}let pM=(()=>{class e extends qc{constructor(t,r){super(),this.backend=t,this.injector=r,this.chain=null,this.pendingTasks=A(Bl);const o=A(hM,{optional:!0});this.backend=o??t}handle(t){if(null===this.chain){const o=Array.from(new Set([...this.injector.get(ra),...this.injector.get(fM,[])]));this.chain=o.reduceRight((i,s)=>function vU(e,n,t){return(r,o)=>t.runInContext(()=>n(r,i=>e(i,o)))}(i,s,this.injector),dM)}const r=this.pendingTasks.add();return this.chain(t,o=>this.backend.handle(o)).pipe(Fs(()=>this.pendingTasks.remove(r)))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Wc),k(At))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const EU=/^\)\]\}',?\n/;let mM=(()=>{class e{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new M(-2800,!1);const r=this.xhrFactory;return(r.\u0275loadImpl?Oe(r.\u0275loadImpl()):F(null)).pipe(Ft(()=>new Te(i=>{const s=r.build();if(s.open(t.method,t.urlWithParams),t.withCredentials&&(s.withCredentials=!0),t.headers.forEach((_,D)=>s.setRequestHeader(_,D.join(","))),t.headers.has("Accept")||s.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const _=t.detectContentTypeHeader();null!==_&&s.setRequestHeader("Content-Type",_)}if(t.responseType){const _=t.responseType.toLowerCase();s.responseType="json"!==_?_:"text"}const a=t.serializeBody();let l=null;const c=()=>{if(null!==l)return l;const _=s.statusText||"OK",D=new $t(s.getAllResponseHeaders()),I=function IU(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(s)||t.url;return l=new Yc({headers:D,status:s.status,statusText:_,url:I}),l},u=()=>{let{headers:_,status:D,statusText:I,url:w}=c(),x=null;204!==D&&(x=typeof s.response>"u"?s.responseText:s.response),0===D&&(D=x?200:0);let V=D>=200&&D<300;if("json"===t.responseType&&"string"==typeof x){const Z=x;x=x.replace(EU,"");try{x=""!==x?JSON.parse(x):null}catch(Ie){x=Z,V&&(V=!1,x={error:Ie,text:x})}}V?(i.next(new Gr({body:x,headers:_,status:D,statusText:I,url:w||void 0})),i.complete()):i.error(new _i({error:x,headers:_,status:D,statusText:I,url:w||void 0}))},d=_=>{const{url:D}=c(),I=new _i({error:_,status:s.status||0,statusText:s.statusText||"Unknown Error",url:D||void 0});i.error(I)};let g=!1;const m=_=>{g||(i.next(c()),g=!0);let D={type:gr.DownloadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),"text"===t.responseType&&s.responseText&&(D.partialText=s.responseText),i.next(D)},v=_=>{let D={type:gr.UploadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),i.next(D)};return s.addEventListener("load",u),s.addEventListener("error",d),s.addEventListener("timeout",d),s.addEventListener("abort",d),t.reportProgress&&(s.addEventListener("progress",m),null!==a&&s.upload&&s.upload.addEventListener("progress",v)),s.send(a),i.next({type:gr.Sent}),()=>{s.removeEventListener("error",d),s.removeEventListener("abort",d),s.removeEventListener("load",u),s.removeEventListener("timeout",d),t.reportProgress&&(s.removeEventListener("progress",m),null!==a&&s.upload&&s.upload.removeEventListener("progress",v)),s.readyState!==s.DONE&&s.abort()}})))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Sb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const ng=new N("XSRF_ENABLED"),vM=new N("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),yM=new N("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class _M{}let TU=(()=>{class e{constructor(t,r,o){this.doc=t,this.platform=r,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=yb(t,this.cookieName),this.lastCookieString=t),this.lastToken}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(Sr),k(vM))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function AU(e,n){const t=e.url.toLowerCase();if(!A(ng)||"GET"===e.method||"HEAD"===e.method||t.startsWith("http://")||t.startsWith("https://"))return n(e);const r=A(_M).getToken(),o=A(yM);return null!=r&&!e.headers.has(o)&&(e=e.clone({headers:e.headers.set(o,r)})),n(e)}var mr=function(e){return e[e.Interceptors=0]="Interceptors",e[e.LegacyInterceptors=1]="LegacyInterceptors",e[e.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",e[e.NoXsrfProtection=3]="NoXsrfProtection",e[e.JsonpSupport=4]="JsonpSupport",e[e.RequestsMadeViaParent=5]="RequestsMadeViaParent",e[e.Fetch=6]="Fetch",e}(mr||{});const CM=new N("LEGACY_INTERCEPTOR_FN");class LU{constructor(){this.name="",this.email="",this.message=""}}let SM=(()=>{class e{constructor(t){this.httpClient=t}postContactForm(t){return this.httpClient.post(`${ye_apiBaseUrl}contact`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Kp))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function VU(e,n){if(1&e){const t=Fe();h(0,"form",5,6),R("ngSubmit",function(){return re(t),oe(P().submit())}),h(2,"div",7)(3,"label",8),f(4,"Name "),h(5,"span",9),f(6,"*"),p()(),h(7,"input",10),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.name=o)}),p()(),h(8,"div",7)(9,"label",11),f(10,"Email address "),h(11,"span",9),f(12,"*"),p()(),h(13,"input",12),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.email=o)}),p()(),h(14,"div",7)(15,"label",13),f(16,"Message "),h(17,"span",9),f(18,"*"),p()(),h(19,"textarea",14),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.message=o)}),p()(),h(20,"button",15),f(21,"Submit"),p()()}if(2&e){const t=Gf(1),r=P();C(7),E("ngModel",r.contactViewModel.name),C(6),E("ngModel",r.contactViewModel.email),C(6),E("ngModel",r.contactViewModel.message),C(1),E("disabled",!t.valid||r.enableFormCountDown>0)}}function jU(e,n){1&e&&(h(0,"p"),f(1,"Thanks for your message."),p())}function HU(e,n){1&e&&(h(0,"p",16),f(1,"Something went wrong. Please try again later."),p())}let UU=(()=>{class e{constructor(t){this.contactService=t,this.contactViewModel=new LU,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,0===this.enableFormCountDown&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:t=>{console.log("Submitted form"),this.success=!0},error:t=>{console.error(t),this.error=!0},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(SM))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[Ot],decls:6,vars:3,consts:[[1,"container"],[1,"mb-4"],["method","post",3,"ngSubmit",4,"ngIf"],[4,"ngIf"],["class","text-danger",4,"ngIf"],["method","post",3,"ngSubmit"],["contactForm","ngForm"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"text-danger"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Contact"),p(),q(3,VU,22,4,"form",2)(4,jU,2,0,"p",3)(5,HU,2,0,"p",4),p()),2&r&&(C(3),E("ngIf",!o.success&&!o.error),C(1),E("ngIf",o.success),C(1),E("ngIf",o.error))},dependencies:[uc,zc,Bc,pi,Rc,Oc,yi,Gc,ta,vi]})}return e})();const TM=()=>["/pro"];let BU=(()=>{class e{scrollToAnchor(t){return document.querySelector(t)?.scrollIntoView(!0),!1}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-features-component"]],standalone:!0,features:[Ot],decls:131,vars:4,consts:[[1,"container"],[1,"mb-4"],["id","coveragequota"],[1,"pro-text"],["href","https://en.wikipedia.org/wiki/Code_coverage","target","_blank"],[1,"fa-solid","fa-arrow-up-right-from-square"],[3,"routerLink"],[1,"pro-button","pro-button-tiny"],["loading","lazy","srcset","resources/features/quota@1x.webp 1x, resources/features/quota@2x.webp 2x","src","resources/features/quota1x.webp","alt","Coverage quotas",1,"img-fluid"],["id","coveragehistory",1,"mt-5"],["loading","lazy","srcset","resources/features/history@1x.webp 1x, resources/features/history@2x.webp 2x","src","resources/features/history@1x.webp","alt","Coverage history",1,"img-fluid"],["id","summary",1,"mt-5"],["loading","lazy","srcset","resources/features/summary@1x.webp 1x, resources/features/summary@2x.webp 2x","src","resources/features/summary.webp","alt","Summary table / Overview",1,"img-fluid"],["id","details",1,"mt-5"],["loading","lazy","srcset","resources/features/details@1x.webp 1x, resources/features/details@2x.webp 2x","src","resources/features/details.webp","alt","Details",1,"img-fluid"],["id","metrics",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ#which-coverage-tool-supports-which-features-in-the-html-report","target","_blank"],["href","",3,"click"],["loading","lazy","srcset","resources/features/metrics_details@1x.webp 1x, resources/features/metrics_details@2x.webp 2x","src","resources/features/metrics_details.webp","alt","Metrics - Details",1,"img-fluid"],["loading","lazy","srcset","resources/features/metrics_summary@1x.webp 1x, resources/features/metrics_summary@2x.webp 2x","src","resources/features/metrics_summary.webp","alt","Metrics - Summary",1,"img-fluid"],["id","riskhotspots",1,"mt-5"],["href","https://en.wikipedia.org/wiki/Cyclomatic_complexity","target","_blank"],["href","https://modess.io/npath-complexity-cyclomatic-complexity-explained","target","_blank"],["href","https://testing.googleblog.com/2011/02/this-code-is-crap.html","target","_blank"],["loading","lazy","srcset","resources/features/riskhotspots@1x.webp 1x, resources/features/riskhotspots@2x.webp 2x","src","resources/features/riskhotspots.webp","alt","Risk Hotspots",1,"img-fluid"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Features"),p(),h(3,"h2",2),f(4,"Coverage quotas"),p(),h(5,"p"),f(6," The overiew cards provide a quick "),h(7,"span",3),f(8,"overview"),p(),f(9," of your coverage quotas."),y(10,"br"),f(11," You can use them to get a glimpse into the different "),h(12,"a",4),f(13,"coverage metrics"),p(),f(14,"\xa0"),h(15,"a",4),y(16,"i",5),p(),f(17,": "),p(),h(18,"ul")(19,"li"),f(20,"Line coverage"),p(),h(21,"li"),f(22,"Branch coverage"),p(),h(23,"li"),f(24,"Method coverage "),h(25,"a",6)(26,"span",7),f(27,"PRO"),p()()()(),y(28,"img",8)(29,"br"),h(30,"h2",9),f(31,"Coverage history"),p(),h(32,"p"),f(33," The history chart helps you to understand how your coverage quotas are "),h(34,"span",3),f(35,"evolving over time"),p(),f(36,". "),p(),y(37,"img",10)(38,"br"),h(39,"h2",11),f(40,"Summary table / Overview"),p(),h(41,"p"),f(42," The summary table helps you to identify classes with "),h(43,"span",3),f(44,"low test coverage"),p(),f(45,"."),y(46,"br"),f(47," The table offers various "),h(48,"span",3),f(49,"filter and sorting"),p(),f(50," options for quick navigation. "),p(),y(51,"img",12)(52,"br"),h(53,"h2",13),f(54,"Details page"),p(),h(55,"p"),f(56," The details page visualizes your "),h(57,"span",3),f(58,"line and branch coverage"),p(),f(59,". "),p(),h(60,"ul")(61,"li"),f(62,"Colors indicate the coverage status of each line."),p(),h(63,"li"),f(64,"Branch indicators help you to identity uncovered conditions."),p()(),y(65,"img",14)(66,"br"),h(67,"h2",15),f(68,"Metrics"),p(),h(69,"p"),f(70," Depending on your "),h(71,"a",16),f(72,"coverage tool"),p(),f(73,", metrics are provided to get further insigths in your "),h(74,"span",3),f(75,"code quality"),p(),f(76,". "),p(),h(77,"ul")(78,"li"),f(79,"The "),h(80,"a",17),R("click",function(){return o.scrollToAnchor("#details")}),f(81,"details page"),p(),f(82," contains information about the metrics of all methods of a class."),p(),h(83,"li"),f(84,"The "),h(85,"a",17),R("click",function(){return o.scrollToAnchor("#summary")}),f(86,"summary table"),p(),f(87," shows the lowest metrics of all methods of a class "),h(88,"a",6)(89,"span",7),f(90,"PRO"),p()()()(),h(91,"b"),f(92,"Details page"),p(),y(93,"br")(94,"img",18)(95,"br")(96,"br"),h(97,"b"),f(98,"Summary table"),p(),y(99,"br")(100,"img",19)(101,"br"),h(102,"h2",20),f(103,"Risk Hotspots"),p(),h(104,"p"),f(105," Based on the "),h(106,"a",17),R("click",function(){return o.scrollToAnchor("#metrics")}),f(107,"metrics"),p(),f(108," you get a list of potential risk hotspots."),y(109,"br"),f(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),p(),h(111,"ul")(112,"li")(113,"a",21),f(114,"Cyclomatic complexity"),p(),f(115,"\xa0"),h(116,"a",21),y(117,"i",5),p()(),h(118,"li")(119,"a",22),f(120,"NPath complexity"),p(),f(121,"\xa0"),h(122,"a",22),y(123,"i",5),p()(),h(124,"li")(125,"a",23),f(126,"Crap score"),p(),f(127,"\xa0"),h(128,"a",23),y(129,"i",5),p()()(),y(130,"img",24),p()),2&r&&(C(25),E("routerLink",ee(2,TM)),C(63),E("routerLink",ee(3,TM)))},dependencies:[Mn]})}return e})();const Gt={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.2.0"},$U=()=>["/usage"];let GU=(()=>{class e{constructor(){this.versions=Gt}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[Ot],decls:72,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["href","https://github.com/coverlet-coverage/coverlet"],["href","https://github.com/SteveGilham/altcover"],[1,"text-dark","bg-light","p-2","border"],["id","java",1,"mt-5"],["href","https://github.com/jacoco/jacoco"],["id","nodejs",1,"mt-5"],["href","https://github.com/istanbuljs/nyc"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Get started"),p(),h(3,"h2"),f(4,"General"),p(),h(5,"p"),f(6,"In general you need a tool that instruments your test code and collects coverage information."),y(7,"br"),f(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),y(9,"br"),h(10,"em"),f(11,"ReportGenerator"),p(),f(12," uses this file and generates a report in HTML format (other formats are available)."),p(),h(13,"p"),f(14,"Use the online "),h(15,"a",2),f(16,"configuration tool"),p(),f(17," to get started quickly."),p(),h(18,"h2",3),f(19,".NET"),p(),h(20,"p"),f(21,"For .NET you can use "),h(22,"a",4),f(23,"coverlet"),p(),f(24," or "),h(25,"a",5),f(26,"altcover"),p(),f(27," for instrumenting your test code."),p(),h(28,"p"),f(29,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),p(),h(30,"p")(31,"strong"),f(32,"Add dependencies to your "),h(33,"code"),f(34,"*.csproj"),p(),f(35," file:"),p()(),h(36,"pre",6),f(37),p(),h(38,"p")(39,"strong"),f(40,"Execute tests and create coverage report"),p()(),h(41,"pre",6),f(42),p(),h(43,"h2",7),f(44,"Java"),p(),h(45,"p"),f(46,"For Java you can use "),h(47,"a",8),f(48,"JaCoCo"),p(),f(49," for instrumenting your test code.\nAfter adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report."),p(),h(50,"p")(51,"strong"),f(52,"Add dependencies to your "),h(53,"code"),f(54,"pom.xml"),p(),f(55," file:"),p()(),h(56,"pre",6),f(57,"\n \n \n \n org.jacoco\n jacoco-maven-plugin\n 0.8.6\n \n \n \n prepare-agent\n \n \n \n report\n prepare-package\n \n report\n \n \n \n \n \n \n \n \n \n org.jacoco\n jacoco-maven-plugin\n \n \n \n report\n \n \n \n \n \n \n\n"),p(),h(58,"p")(59,"strong"),f(60,"Execute tests and create coverage report"),p()(),h(61,"pre",6),f(62),p(),h(63,"h2",9),f(64,"NodeJS"),p(),h(65,"p"),f(66,"For NodeJS you can use "),h(67,"a",10),f(68,"Istanbul"),p(),f(69," for instrumenting your test code.\nAfter installing Istanbul, you can execute your tests and generate the coverage report."),p(),h(70,"pre",6),f(71),p()()),2&r&&(C(15),E("routerLink",ee(5,$U)),C(22),Hn('\n \n runtime; build; native; contentfiles; analyzers; buildtransitive\n all\n \n \n \n \n all\n runtime; build; native; contentfiles; analyzers\n \n\n'),C(5),Hn('dotnet test --collect:"XPlat Code Coverage"\n"%UserProfile%\\.nuget\\packages\\reportgenerator\\',o.versions.version,'\\tools\\net8.0\\ReportGenerator.exe" -reports:*\\TestResults\\*\\coverage.cobertura.xml -targetdir:coveragereport\n'),C(20),Hn("mvn test jacoco:report\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:target\\site\\jacoco\\jacoco.xml -targetdir:coveragereport -sourcedirs:src\\main\\java\n"),C(9),Hn("npm i nyc --save-dev\nnyc --reporter=coberatura mocha\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:coverage/cobertura-coverage.xml -targetdir:coveragereport\n"))},dependencies:[Mn]})}return e})(),AM=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-testimonials"]],standalone:!0,features:[Ot],decls:30,vars:0,consts:[[1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"container"],[1,"text-center"],[1,"row","mt-5"],[1,"col","text-center"],[1,"fa-brands","fa-microsoft","h1","text-secondary"],["href","https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/code-coverage.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-google","h1","text-secondary"],["href","https://github.com/GoogleCloudPlatform/iam-windows-authenticator","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-aws","h1","text-secondary"],["href","https://github.com/aws/aws-encryption-sdk-dafny/blob/mainline/aws-encryption-sdk-net/README.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"col","text-center","d-none","d-lg-block"],[1,"fa-solid","fa-heart","h1","text-secondary"],["href","https://github.com/danielpalme/ReportGenerator/network/dependents","target","_blank",1,"text-dark"],["href","https://www.nuget.org/packages?q=ReportGenerator+danielpalme","target","_blank",1,"btn","btn-outline-secondary"],[1,"fa-solid","fa-download"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"h2",2),f(3,"Trusted by"),p(),h(4,"div",3)(5,"div",4),y(6,"i",5)(7,"br"),h(8,"a",6),f(9,".NET Runtime"),p()(),h(10,"div",4),y(11,"i",7)(12,"br"),h(13,"a",8),f(14,"Google Cloud"),p()(),h(15,"div",4),y(16,"i",9)(17,"br"),h(18,"a",10),f(19,"AWS Encryption SDK"),p()(),h(20,"div",11),y(21,"i",12)(22,"br"),h(23,"a",13),f(24,"Many more"),p()()(),h(25,"div",3)(26,"div",4)(27,"a",14),y(28,"i",15),f(29," Over 60 million downloads on Nuget"),p()()()()())},encapsulation:2})}return e})();const zU=()=>["/pro"],qU=()=>["/usage"],WU=()=>["/getstarted"],ZU=()=>["/features"];let YU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-home"]],standalone:!0,features:[Ot],decls:114,vars:8,consts:[[1,"container"],[1,"row"],[1,"col-4","col-md-3"],["src","resources/logo.svg","alt","Logo ReportGenerator",1,"img-fluid"],[1,"col-xs-12","col-md-9","ps-4"],[1,"mt-5"],[1,"line","btn-primary"],[1,"mt-4","h5"],[1,"pro-text"],["href","resources/reports/Html/index.html","target","_blank",1,"btn","btn-primary","me-2","mb-2"],[1,"fa-solid","fa-eye"],[1,"row","mt-5"],[1,"col-sm-12","col-md-4"],[1,"icon"],[1,"fa-solid","fa-scale-balanced"],[1,"h5","ms-3","mt-3"],[1,"mt-3"],[3,"routerLink"],[1,"col-sm-12","col-md-4","mt-4","mt-md-0"],[1,"fa-solid","fa-lightbulb"],[1,"fa-solid","fa-plug"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col"],[1,"btn","btn-primary","me-2","mb-2",3,"routerLink"],[1,"fa-solid","fa-wrench"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank",1,"btn","btn-outline-dark","mb-2"],[1,"fa-brands","fa-github"],[1,"container-fluid","mt-5","pt-5","pb-5"],["href","resources/reports/Html/index.html","target","_blank"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"col-sm-12","col-md-6","pb-2"],["href","resources/screenshot1@2x.webp"],["loading","lazy","srcset","resources/screenshot1.webp 1x, resources/screenshot1@2x.webp 2x","src","resources/screenshot1.webp","alt","Screenshot",1,"img-fluid"],[1,"col-sm-12","col-md-6"],["href","resources/screenshot2@2x.webp"],["loading","lazy","srcset","resources/screenshot2.webp 1x, resources/screenshot2@2x.webp 2x","src","resources/screenshot2.webp","alt","Screenshot",1,"img-fluid"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"div",2),y(3,"img",3),p(),h(4,"div",4)(5,"h1"),f(6,"ReportGenerator"),p(),h(7,"h2",5),f(8,"Powerful code coverage visualization"),p(),h(9,"div",6),f(10,"\xa0"),p(),h(11,"div",7)(12,"p")(13,"i"),f(14,"ReportGenerator"),p(),f(15," converts "),h(16,"span",8),f(17,"coverage reports"),p(),f(18," generated by coverlet, OpenCover, dotCover, Visual Studio, NCover, Cobertura, JaCoCo, Clover, gcov or lcov into "),h(19,"span",8),f(20,"human readable reports in various formats"),p(),f(21,"."),p(),h(22,"p"),f(23,"The reports show the "),h(24,"span",8),f(25,"coverage quotas"),p(),f(26," and also visualize which lines of your source code have been covered."),p(),h(27,"p")(28,"a",9),y(29,"i",10),f(30," Browse example report"),p()()()()(),h(31,"div",11)(32,"div",12)(33,"div",13),y(34,"i",14),p(),h(35,"span",15),f(36,"Open source"),p(),h(37,"p",16)(38,"i"),f(39,"ReportGenerator"),p(),f(40," is open source under the permissive Apache License."),p(),h(41,"p"),f(42,"It's free to use."),y(43,"br"),f(44,"The "),h(45,"a",17),f(46,"PRO"),p(),f(47," version offers additional features."),p()(),h(48,"div",18)(49,"div",13),y(50,"i",19),p(),h(51,"span",15),f(52,"Easy to use"),p(),h(53,"p",16)(54,"i"),f(55,"ReportGenerator"),p(),f(56," is a command line tool which only requires a "),h(57,"a",17),f(58,"few parameters"),p(),f(59,"."),p(),h(60,"p"),f(61,"Integration into your build pipeline will only take a couple of minutes."),p()(),h(62,"div",18)(63,"div",13),y(64,"i",20),p(),h(65,"span",15),f(66,"Integration"),p(),h(67,"p",16)(68,"i"),f(69,"ReportGenerator"),p(),f(70," works on Windows, Linux and macOS."),p(),h(71,"p"),f(72,"Support for "),h(73,"a",21),f(74,"GitHub actions"),p(),f(75," and "),h(76,"a",22),f(77,"Azure DevOps"),p(),f(78," is available."),p()()(),h(79,"div",11)(80,"div",23)(81,"a",24),y(82,"i",25),f(83," Learn how to use"),p(),h(84,"a",26),y(85,"i",27),f(86," GitHub"),p()()()(),y(87,"app-testimonials"),h(88,"section",28)(89,"div",0)(90,"h2"),f(91,"Screenshots"),p(),h(92,"p"),f(93,"The screenshots show two snippets of the generated reports."),p(),h(94,"p"),f(95," Have a look the "),h(96,"a",17),f(97,"features page"),p(),f(98," to explore the elements in a coverage report or "),h(99,"a",29),f(100,"browse the example report"),p(),f(101,". "),y(102,"br"),f(103," You can also download "),h(104,"a",30),f(105,"sample reports"),p(),f(106," of all supported output formats."),p(),h(107,"div",1)(108,"div",31)(109,"a",32),y(110,"img",33),p()(),h(111,"div",34)(112,"a",35),y(113,"img",36),p()()()()()),2&r&&(C(45),E("routerLink",ee(4,zU)),C(12),E("routerLink",ee(5,qU)),C(24),E("routerLink",ee(6,WU)),C(15),E("routerLink",ee(7,ZU)))},dependencies:[Mn,AM],styles:[".h5[_ngcontent-%COMP%]{font-weight:300}section[_ngcontent-%COMP%]:first-of-type{padding-top:120px;min-height:calc(100vh - 171px)}.icon[_ngcontent-%COMP%]{background-color:#2e89df;background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);height:50px;width:50px;border-radius:8px;text-align:center;color:#fff;line-height:50px;font-size:1.5rem;display:inline-block}@media (max-width: 767px){section[_ngcontent-%COMP%]:first-of-type{padding-top:40px}}"]})}return e})(),QU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-not-found"]],standalone:!0,features:[Ot],decls:5,vars:0,consts:[[1,"container"],[1,"mb-4"],[1,"fa-solid","fa-triangle-exclamation","fs-1","me-4"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Not found"),p(),y(3,"i",2),f(4," The requested page does not exist.\n"),p())}})}return e})();class xM{constructor(){this.error=null,this.licenses=[]}}class XU{constructor(){this.error=null,this.isSponsor=!1,this.license=null}}let NM=(()=>{class e{initCodeFlow(){const o=`https://github.com/login/oauth/authorize?response_type=code&client_id=ecab9484932b59a12fd4&state=${this.createAndSaveNonce()}&redirect_uri=${window.location.origin}/pro`;console.log("Redirecting to: "+o),location.href=o}validateStateAndExtractCode(){let t=location.href;const r=t.indexOf("?");r>-1&&(t=t.substring(r+1));const o=this.parseQueryString(t);return o.state&&o.code&&this.validateNonce(o.state)?o.code:null}createAndSaveNonce(){const t=this.createNonce();return typeof window.localStorage<"u"&&localStorage.setItem("nonce",t),t}validateNonce(t){let r;return typeof window.localStorage<"u"&&(r=localStorage.getItem("nonce"),localStorage.removeItem("nonce")),r&&0!==r.length?r===t||(console.error("Validating nonce failed. Values do not match.",r,t),!1):(console.error("Validating nonce failed. No saved nonce available.",r,t),!1)}createNonce(){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let r=45,o="";const i=typeof self>"u"?null:self.crypto||self.msCrypto;if(i){let a=new Uint8Array(r);i.getRandomValues(a),a.map||(a.map=Array.prototype.map);const l=[];for(var s=0;s0&&(c=decodeURIComponent(a),u=decodeURIComponent(l),"/"===c.substring(0,1)&&(c=c.substring(1)),r[c]=u);return r}base64UrlEncode(t){return btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),RM=(()=>{class e{constructor(t){this.httpClient=t}getLicense(t){return this.httpClient.get(`${ye_apiBaseUrl}reportgenerator/license?code=${encodeURIComponent(t)}`)}getTrialLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/triallicense`,t)}getPaddleLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/paddlelicense`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Kp))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),JU=(()=>{class e{constructor(){this.isActive=!1,this.isActive=new Date["/contact"];function tB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(2);C(2),be(t.license.error),C(3),E("routerLink",ee(2,rg))}}function nB(e,n){1&e&&(h(0,"div")(1,"p"),f(2,"Please become a "),h(3,"a",74),f(4,"GitHub sponsor"),p(),f(5," first."),p()())}function rB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function oB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function iB(e,n){if(1&e){const t=Fe();h(0,"div")(1,"label",75),f(2,"Thank you for becoming a sponsor. Here's your license:"),p(),h(3,"textarea",76),f(4),p(),h(5,"button",77),R("click",function(){return re(t),oe(P(2).copy())}),q(6,rB,3,0,"span",34)(7,oB,3,0,"span",34),p()()}if(2&e){const t=P(2);C(4),be(t.license.license),C(2),E("ngIf",!t.licenseCopied),C(1),E("ngIf",t.licenseCopied)}}function sB(e,n){if(1&e&&(h(0,"div",20),q(1,tB,8,3,"div",34)(2,nB,6,0,"div",34)(3,iB,8,3,"div",34),p()),2&e){const t=P();C(1),E("ngIf",t.license.error),C(1),E("ngIf",!t.license.error&&!t.license.isSponsor),C(1),E("ngIf",!t.license.error&&t.license.isSponsor&&t.license.license)}}const OM=e=>({active:e});function aB(e,n){if(1&e){const t=Fe();h(0,"span",80)(1,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!1)}),y(2,"i",82),f(3," Annual subscription"),p(),h(4,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!0)}),y(5,"i",83),f(6," Lifetime license"),p()()}if(2&e){const t=P();C(1),E("ngClass",Is(2,OM,!t.lifetimeLicense)),C(3),E("ngClass",Is(4,OM,t.lifetimeLicense))}}function lB(e,n){if(1&e){const t=Fe();h(0,"button",103),R("click",function(){return re(t),oe(P(2).requestTrial())}),y(1,"i",25),f(2," Start trial"),p()}2&e&&E("disabled",P(2).trialDisabled)}function cB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function uB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function dB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function fB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("individual"))}),y(1,"i",106),f(2," Buy now"),p()}}function hB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function pB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function gB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function mB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("team"))}),y(1,"i",106),f(2," Buy now"),p()}}function vB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function yB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function _B(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function CB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("enterprise"))}),y(1,"i",106),f(2," Buy now"),p()}}function DB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function wB(e,n){if(1&e&&(h(0,"div",2)(1,"div",84)(2,"div",85),y(3,"img",86),h(4,"h4",87),f(5,"Free"),y(6,"br"),f(7,"Trial"),p(),h(8,"p"),y(9,"i",88),f(10," Get full access"),y(11,"br")(12,"i",89),f(13," 10 day trial period "),p(),q(14,lB,3,1,"button",90)(15,cB,2,0,"button",91),p()(),h(16,"div",92)(17,"div",93),y(18,"img",94),h(19,"h4",87),f(20,"Individual"),y(21,"br"),f(22),p(),h(23,"p"),y(24,"i",95),f(25," Per developer license."),y(26,"br"),q(27,uB,3,0,"ng-container",34)(28,dB,3,0,"ng-container",34),p(),q(29,fB,3,0,"button",96)(30,hB,2,0,"button",91),p()(),h(31,"div",97)(32,"div",93),y(33,"img",98),h(34,"h4",87),f(35,"Team"),y(36,"br"),f(37),p(),h(38,"p"),y(39,"i",99),f(40," Up to 10 developers."),y(41,"br"),q(42,pB,3,0,"ng-container",34)(43,gB,3,0,"ng-container",34),p(),q(44,mB,3,0,"button",96)(45,vB,2,0,"button",91),p()(),h(46,"div",100)(47,"div",93),y(48,"img",101),h(49,"h4",87),f(50,"Enterprise"),y(51,"br"),f(52),p(),h(53,"p"),y(54,"i",102),f(55," Unlimited developers."),y(56,"br"),q(57,yB,3,0,"ng-container",34)(58,_B,3,0,"ng-container",34),p(),q(59,CB,3,0,"button",96)(60,DB,2,0,"button",91),p()()()),2&e){const t=P();C(14),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleIndividualLifetimeLicensePrice:t.paddleIndividualLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleTeamLifetimeLicensePrice:t.paddleTeamLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleEnterpriseLifetimeLicensePrice:t.paddleEnterpriseLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle)}}function bB(e,n){1&e&&(Dt(0),h(1,"div",70)(2,"span",71),f(3,"Loading..."),p()(),h(4,"span",108),f(5,"Your license is being generated. Please wait."),p(),wt())}function EB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(3);C(2),be(t.paddleLicense.error),C(3),E("routerLink",ee(2,rg))}}function IB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function MB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function SB(e,n){if(1&e){const t=Fe();h(0,"div",112)(1,"textarea",113),f(2),p(),h(3,"button",77),R("click",function(){const i=re(t).$implicit;return oe(P(4).copyPaddle(i))}),q(4,IB,3,0,"span",34)(5,MB,3,0,"span",34),p()()}if(2&e){const t=n.$implicit,r=P(4);C(2),be(t),C(2),E("ngIf",-1===r.copiedPaddledLicenses.indexOf(t)),C(1),E("ngIf",r.copiedPaddledLicenses.indexOf(t)>-1)}}function TB(e,n){if(1&e&&(h(0,"div")(1,"label",110),f(2,"Thank you! Please save your license key persistently:"),p(),q(3,SB,6,3,"div",111),p()),2&e){const t=P(3);C(3),E("ngForOf",t.paddleLicense.licenses)}}function AB(e,n){if(1&e&&(h(0,"div",109),q(1,EB,8,3,"div",34)(2,TB,4,1,"div",34),p()),2&e){const t=P(2);C(1),E("ngIf",t.paddleLicense.error),C(1),E("ngIf",!t.paddleLicense.error)}}function xB(e,n){if(1&e&&(h(0,"div",2),q(1,bB,6,0,"ng-container",34)(2,AB,3,2,"div",107),p()),2&e){const t=P();C(1),E("ngIf",t.paddleLicenseRequested&&!t.paddleLicense),C(1),E("ngIf",t.paddleLicense)}}function NB(e,n){1&e&&(h(0,"p")(1,"i"),f(2,"ReportGenerator"),p(),f(3," subscription based licences are provided with a 30 day money back guarantee."),p())}const Ci=()=>["/features"];let RB=(()=>{class e{get lifetimeLicense(){return this._lifetimeLicense}set lifetimeLicense(t){this._lifetimeLicense=t,this.lifetimeLicenseChangeTracked||(this.lifetimeLicenseChangeTracked=!0,this.trackingService.track("Licensetype changed"))}constructor(t,r,o){this.oauthService=t,this.licenseService=r,this.trackingService=o,this.paddleIndividualLicensePrice="US$49",this.paddleTeamLicensePrice="US$149",this.paddleEnterpriseLicensePrice="US$299",this.paddleIndividualLifetimeLicensePrice="US$79",this.paddleTeamLifetimeLicensePrice="US$249",this.paddleEnterpriseLifetimeLicensePrice="US$449",this.licenseRequested=!1,this.licenseCopied=!1,this.license=null,this.enablePaddle=!0,this.trialDisabled=!1,this.requestTrialData={name:"",email:""},this.paddleLicenseRequested=!1,this.paddleLicense=null,this.copiedPaddledLicenses=[],this.self=this,this.lifetimeLicenseChangeTracked=!1,this._lifetimeLicense=!1,window.paddleCheckoutComplete=i=>{this.paddleCheckoutComplete(i)},window.Paddle.Setup({vendor:144162}),window.Paddle.Product.Prices(762579,i=>{this.paddleIndividualLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762580,i=>{this.paddleTeamLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762581,i=>{this.paddleEnterpriseLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(833943,i=>{this.paddleIndividualLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833944,i=>{this.paddleTeamLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833945,i=>{this.paddleEnterpriseLifetimeLicensePrice=i.price.gross})}ngOnInit(){const t=this.oauthService.validateStateAndExtractCode();null!==t?(console.log("Code received",t),this.licenseRequested=!0,this.licenseService.getLicense(t).subscribe({next:r=>{console.log("Received license response"),this.license=r,this.scrollToGithub()},error:r=>{console.error(r),this.license=new XU,this.license.error="Unable to generate license."},complete:()=>console.info("complete")})):console.log("No code available"),location.href.indexOf("?source=trial")>-1&&this.trackingService.track("Trial2Pro"),this.requestTrialModal=new window.bootstrap.Modal("#requestTrialModal");try{this.trialDisabled=null!==window.localStorage.getItem("trialRequested")}catch{}}requestLicense(){this.licenseRequested=!0,this.oauthService.initCodeFlow()}copy(){try{navigator.clipboard.writeText(this.license.license),this.licenseCopied=!0}catch(t){console.error("Failed to copy license",t)}}copyPaddle(t){try{navigator.clipboard.writeText(t),this.copiedPaddledLicenses.push(t)}catch(r){console.error("Failed to copy paddle license",r)}}scrollToGithub(){return document.querySelector("#github").scrollIntoView(!0),!1}scrollToPaddle(){return document.querySelector("#paddle").scrollIntoView(!0),!1}requestTrial(){this.requestTrialModal.show(),this.trackingService.track("Trial-Started")}completeTrial(){console.log("Trial completed"),this.requestTrialModal.hide(),this.paddleLicenseRequested=!0,this.licenseService.getTrialLicense(this.requestTrialData).subscribe({next:t=>{console.log("Received trial license response"),this.paddleLicense=t,this.scrollToPaddle();try{window.localStorage.setItem("trialRequested","true"),this.trialDisabled=!0}catch{}this.trackingService.track("Trial-Completed")},error:t=>{console.error(t),this.paddleLicense=new xM,this.paddleLicense.error="Unable to generate trial license."},complete:()=>{console.info("complete"),this.requestTrialData={name:"",email:""}}})}openPaddleCheckout(t){"enterprise"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833945:762581,successCallback:"paddleCheckoutComplete"}):"team"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833944:762580,successCallback:"paddleCheckoutComplete"}):window.Paddle.Checkout.open({product:this.lifetimeLicense?833943:762579,successCallback:"paddleCheckoutComplete"}),this.trackingService.track("Paddle-Started",{props:{product:t,lifetimeLicense:this.lifetimeLicense}})}paddleCheckoutComplete(t){console.log("Checkout completed",t),this.paddleLicenseRequested=!0,this.licenseService.getPaddleLicense(t).subscribe({next:r=>{console.log("Received paddle license response"),this.paddleLicense=r,this.scrollToPaddle(),this.trackingService.track("Paddle-Completed",{props:{product:t.product.name,lifetimeLicense:this.lifetimeLicense}})},error:r=>{console.error(r),this.paddleLicense=new xM,this.paddleLicense.error="Unable to generate Paddle license."},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(NM),S(RM),S(JU))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-pro-component"]],standalone:!0,features:[Ot],decls:229,vars:25,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-xs-12","col-md-6","order-2","order-md-1"],[1,"table"],["scope","col"],["scope","col",1,"text-center"],[1,"pro-button"],["scope","row"],["fragment","metrics","title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-info","text-secondary"],[1,"text-center"],[1,"fa-solid","fa-circle-check","text-secondary"],["fragment","riskhotspots","title","Show feature details",3,"routerLink"],["title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-check","pro-text"],[1,"col-xs-12","col-md-6","order-1","order-md-2"],["href","",3,"click"],[3,"routerLink"],["id","github",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"col-xs-12","col-md-6","pb-3"],[1,"fs-2","me-3","number"],["href","https://github.com/sponsors/danielpalme","target","_blank",1,"btn","btn-outline-dark"],[1,"fa-solid","fa-heart","githubheart"],["type","button",1,"btn","btn-primary","me-3",3,"disabled","click"],[1,"fa-solid","fa-rocket"],["class","spinner-border text-info","role","status",4,"ngIf"],["class","col-md-6 pb-3 d-none d-lg-block","style","position: relative;",4,"ngIf"],["class","col-xs-12 col-md-6 pb-3",4,"ngIf"],["id","paddle",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"text-center","mb-3"],["class","togglecontainer",4,"ngIf"],["class","row",4,"ngIf"],[1,"mt-5"],[4,"ngIf"],[1,"container-fluid","mt-4","pt-5","pb-5","bg-light"],[1,"container","text-center"],[1,"row","mt-5",2,"max-width","550px","margin","auto"],["href","https://twitter.com/fredyfx/status/1642807795828543488","target","_blank"],["loading","lazy","src","resources/twitter_light.webp","alt","Testimonial",1,"img-fluid"],["id","faq",1,"container","mt-5","pt-5","pb-5"],["id","accordionFaq",1,"accordion","accordion-flush"],[1,"accordion-item"],["id","headingOne",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseOne","aria-expanded","true","aria-controls","collapseOne",1,"accordion-button"],["id","collapseOne","aria-labelledby","headingOne","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse","show"],[1,"accordion-body"],["id","headingTwo",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseTwo","aria-expanded","false","aria-controls","collapseTwo",1,"accordion-button","collapsed"],["id","collapseTwo","aria-labelledby","headingTwo","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["id","headingThree",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseThree","aria-expanded","false","aria-controls","collapseThree",1,"accordion-button","collapsed"],["id","collapseThree","aria-labelledby","headingThree","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["tabindex","-1","id","requestTrialModal",1,"modal"],[1,"modal-dialog"],[1,"modal-content"],["method","post",3,"ngSubmit"],["trialForm","ngForm"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal","aria-label","Close",1,"btn-close"],[1,"modal-body"],[1,"form-floating","mb-3"],["type","text","id","name","name","name","required","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],["for","floatingInput"],[1,"required"],["type","email","id","email","name","email","required","","email","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-secondary"],["type","submit",1,"btn","btn-primary",3,"disabled"],["role","status",1,"spinner-border","text-info"],[1,"visually-hidden"],[1,"col-md-6","pb-3","d-none","d-lg-block",2,"position","relative"],[1,"fa-solid","fa-heart","githubheartlarge"],["href","https://github.com/sponsors/danielpalme","target","_blank"],["for","licensetext"],["id","licensetext","rows","5","readonly","",1,"form-control","mt-2"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"],[1,"togglecontainer"],[1,"option",3,"ngClass","click"],[1,"fa-solid","fa-rotate-right"],[1,"fa-solid","fa-infinity"],[1,"col-xs-12","col-md-6","col-lg-3","mt-0","pb-3","text-center","paddle-container"],[1,"paddle","trial"],["src","resources/trial.svg","alt","Trial",1,"img-fluid"],[1,"mt-3"],[1,"fa-solid","fa-magnifying-glass"],[1,"fa-solid","fa-calendar-days"],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],["type","button","class","btn btn-primary","disabled","",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-md-0","pb-3","text-center","paddle-container"],[1,"paddle"],["src","resources/individual.svg","alt","Individual",1,"img-fluid"],[1,"fa-solid","fa-user"],["type","button","class","btn btn-primary",3,"click",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/team.svg","alt","Team",1,"img-fluid"],[1,"fa-solid","fa-users"],[1,"col-xs-6","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/enterprise.svg","alt","Enterprise",1,"img-fluid"],[1,"fa-solid","fa-industry"],["type","button",1,"btn","btn-primary",3,"disabled","click"],["type","button","disabled","",1,"btn","btn-primary"],["type","button",1,"btn","btn-primary",3,"click"],[1,"fa-solid","fa-cart-shopping"],["class","col-xs-12 col-md-6",4,"ngIf"],[2,"position","relative","left","35px","top","-20px"],[1,"col-xs-12","col-md-6"],["for","paddlelicensetext"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-2"],["id","paddlelicensetext","rows","5","readonly","",1,"form-control"]],template:function(r,o){if(1&r&&(h(0,"div",0)(1,"h1",1),f(2,"PRO"),p(),h(3,"div",2)(4,"div",3)(5,"table",4)(6,"thead")(7,"tr"),y(8,"th",5),h(9,"th",6),f(10,"Free"),p(),h(11,"th",6)(12,"span",7),f(13,"PRO"),p()()()(),h(14,"tbody")(15,"tr")(16,"th",8),f(17,"Metrics "),h(18,"a",9),y(19,"i",10),p()(),h(20,"td",11),y(21,"i",12),p(),h(22,"td",11),y(23,"i",12),p()(),h(24,"tr")(25,"th",8),f(26,"Risk Hotspots "),h(27,"a",13),y(28,"i",10),p()(),h(29,"td",11),y(30,"i",12),p(),h(31,"td",11),y(32,"i",12),p()(),h(33,"tr")(34,"th",8),f(35,"Line coverage "),h(36,"a",14),y(37,"i",10),p()(),h(38,"td",11),y(39,"i",12),p(),h(40,"td",11),y(41,"i",12),p()(),h(42,"tr")(43,"th",8),f(44,"Branch coverage "),h(45,"a",14),y(46,"i",10),p()(),h(47,"td",11),y(48,"i",12),p(),h(49,"td",11),y(50,"i",12),p()(),h(51,"tr")(52,"th",8),f(53,"Method coverage "),h(54,"a",14),y(55,"i",10),p()(),y(56,"td",11),h(57,"td",11),y(58,"i",15),p()(),h(59,"tr")(60,"th",8),f(61,"Metrics on summary page "),h(62,"a",9),y(63,"i",10),p()(),y(64,"td",11),h(65,"td",11),y(66,"i",15),p()(),h(67,"tr")(68,"th",8)(69,"i"),f(70,"OpenCover"),p(),f(71," output format"),p(),y(72,"td",11),h(73,"td",11),y(74,"i",15),p()()()()(),h(75,"div",16)(76,"p")(77,"i"),f(78,"ReportGenerator"),p(),f(79," is Open Source and free to use."),y(80,"br"),f(81," Some of the advanced features require a PRO license. "),p(),h(82,"p"),f(83," You can either become a "),h(84,"a",17),R("click",function(){return o.scrollToGithub()}),f(85,"GitHub sponsor"),p(),f(86," or you can "),h(87,"a",17),R("click",function(){return o.scrollToPaddle()}),f(88,"buy a license"),p(),f(89,"."),y(90,"br"),f(91," A "),h(92,"a",17),R("click",function(){return o.scrollToPaddle()}),f(93,"free trial version"),p(),f(94," is available too. "),p(),h(95,"p"),f(96," Get "),h(97,"a",18),f(98,"in touch"),p(),f(99," if you have any issues and we will figure it out. "),p()()()(),h(100,"section",19)(101,"div",0)(102,"h2",1),f(103,"Get your license as a GitHub sponsor"),p(),h(104,"div",2)(105,"div",20)(106,"p"),f(107,"You can obtain your license in two easy steps (no sign up required):"),p(),h(108,"span",21),f(109,"1."),p(),h(110,"a",22),y(111,"i",23),f(112," Become a GitHub sponsor"),p(),y(113,"br"),h(114,"span",21),f(115,"2."),p(),h(116,"button",24),R("click",function(){return o.requestLicense()}),y(117,"i",25),f(118," Get license"),p(),q(119,KU,3,0,"div",26),p(),q(120,eB,2,0,"div",27)(121,sB,4,3,"div",28),p()()(),h(122,"section",29)(123,"div",0)(124,"h2",1),f(125,"Buy a license"),p(),h(126,"div",30),q(127,aB,7,6,"span",31),p(),q(128,wB,61,17,"div",32)(129,xB,3,2,"div",32),h(130,"div",33),q(131,NB,4,0,"p",34),h(132,"p"),f(133,"The order process is conducted by Paddle.com. Paddle.com is the Merchant of Record for all orders. Paddle provides all customer service inquiries and handles returns."),p()()()(),y(134,"app-testimonials"),h(135,"section",35)(136,"div",36)(137,"h3"),f(138,"Customers"),p(),h(139,"div",37)(140,"a",38),y(141,"img",39),p()()()(),h(142,"section",40)(143,"h2",1),f(144,"Frequently Asked Questions"),p(),h(145,"div",41)(146,"div",42)(147,"h2",43)(148,"button",44),f(149," How do I use/activate my license? "),p()(),h(150,"div",45)(151,"div",46),f(152," Your license key is passed to "),h(153,"i"),f(154,"ReportGenerator"),p(),f(155," via a command line parameter: "),h(156,"i"),f(157,"-license:YOUR_KEY"),p()()()(),h(158,"div",42)(159,"h2",47)(160,"button",48),f(161," Are there limitations on number of users? "),p()(),h(162,"div",49)(163,"div",46)(164,"b"),f(165,"GitHub sponsors"),p(),y(166,"br"),h(167,"p"),f(168,"There's no enforced limit. Please pick a sponsor level that fits your company size and budget."),p(),h(169,"b"),f(170,"Bought license"),p(),y(171,"br"),h(172,"p"),f(173,"There's no enforced limit. Please choose a plan that matches the number of developers using "),h(174,"i"),f(175,"ReportGenerator"),p(),f(176,"."),p()()()(),h(177,"div",42)(178,"h2",50)(179,"button",51),f(180," Will my license expire? "),p()(),h(181,"div",52)(182,"div",46)(183,"b"),f(184,"GitHub sponsors"),p(),y(185,"br"),h(186,"p"),f(187,"Your license will not expire."),p(),h(188,"b"),f(189,"Bought license"),p(),y(190,"br"),h(191,"p")(192,"b"),f(193,"Annual subscription"),p(),f(194,": Your license may get revoked for new releases of "),h(195,"i"),f(196,"ReportGenerator"),p(),f(197,", if you cancel your subscription."),y(198,"br"),h(199,"b"),f(200,"Lifetime licenses"),p(),f(201,": Lifetime licenses will not expire. "),p()()()()()(),h(202,"div",53)(203,"div",54)(204,"div",55)(205,"form",56,57),R("ngSubmit",function(){return o.completeTrial()}),h(207,"div",58)(208,"h5",59),f(209,"Free Trial"),p(),y(210,"button",60),p(),h(211,"div",61)(212,"div",62)(213,"input",63),R("ngModelChange",function(s){return o.requestTrialData.name=s}),p(),h(214,"label",64),f(215,"Name "),h(216,"span",65),f(217,"*"),p()()(),h(218,"div",62)(219,"input",66),R("ngModelChange",function(s){return o.requestTrialData.email=s}),p(),h(220,"label",64),f(221,"Email address "),h(222,"span",65),f(223,"*"),p()()()(),h(224,"div",67)(225,"button",68),f(226,"Close"),p(),h(227,"button",69),f(228,"Get trial license"),p()()()()()()),2&r){const i=Gf(206);C(18),E("routerLink",ee(18,Ci)),C(9),E("routerLink",ee(19,Ci)),C(9),E("routerLink",ee(20,Ci)),C(9),E("routerLink",ee(21,Ci)),C(9),E("routerLink",ee(22,Ci)),C(8),E("routerLink",ee(23,Ci)),C(35),E("routerLink",ee(24,rg)),C(19),E("disabled",o.licenseRequested),C(3),E("ngIf",o.licenseRequested&&!o.license),C(1),E("ngIf",!o.license),C(1),E("ngIf",o.license),C(6),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",o.paddleLicenseRequested),C(2),E("ngIf",!o.lifetimeLicense),C(82),E("ngModel",o.requestTrialData.name),C(6),E("ngModel",o.requestTrialData.email),C(8),E("disabled",!i.valid)}},dependencies:[Mn,Hh,uc,cc,zc,Bc,pi,Rc,Oc,yi,Yp,Gc,ta,vi,AM],styles:[".number[_ngcontent-%COMP%]{display:inline-block;position:relative;top:8px}.spinner-border[_ngcontent-%COMP%]{position:relative;top:9px}.paddle-container[_ngcontent-%COMP%]{padding:10px}.paddle[_ngcontent-%COMP%]{border:1px solid #8c8888;border-radius:20px;padding:20px;background-color:#d8e8f0}.trial[_ngcontent-%COMP%]{background-color:#b2cad7}.githubheartlarge[_ngcontent-%COMP%]{position:absolute;top:-120px;left:40%;font-size:20rem;color:#ffd2ed}.togglecontainer[_ngcontent-%COMP%]{background-color:#fff;display:inline-block;border-radius:20px;white-space:nowrap}.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{background-color:#fff;padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-block}.togglecontainer[_ngcontent-%COMP%] .option.active[_ngcontent-%COMP%]{color:#fff;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}@media only screen and (max-width: 400px){.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%] .fa-solid[_ngcontent-%COMP%]{display:none}}"]})}return e})();class Xc{constructor(n,t,r,o,i,s){this.name=n,this.url=t,this.runtimes=r,this.description=o,this.installOptions=i,this.executables=s}formatExecutable(n){return n.tool}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?'"':"";return`\r\n${r}-${n}:${t}${r}`}formatArguments(n,t){return this.formatArgument(n,t.filter(r=>null!=r&&0!==r.length&&0!==r.trim().length).join(";"))}}class OB extends Xc{formatExecutable(n){let t=`- task: ${n.tool}@${Gt.majorVersion}`;return t+="\r\n displayName: ReportGenerator",t+="\r\n inputs:",console.log("hello",t),t}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class PB{constructor(){this.verbosities=["Verbose","Info","Warning","Error","Off"],this.types=["Html","Coverage tool","Json","Markdown","Xml","Text","Image"],this.reports=["cobertura.xml"],this.targetdir="coveragereport",this.reporttypes=[{name:"Html",types:["Html"],description:"The default output format. Creates a summary overview (index.html) and detailed reports for each class.",requiresHistoryDir:!1,checked:!0,sampleReport:"resources/reports/Html/index.html"},{name:"Html_Light",types:["Html"],description:"Same as Html but with a light theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Light/index.html"},{name:"Html_Dark",types:["Html"],description:"Same as Html but with a dark theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Dark/index.html"},{name:"Html_BlueRed",types:["Html"],description:"Same as Html but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed/index.html"},{name:"HtmlSummary",types:["Html"],description:"Creates a single HTML file (summary.html) without links.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlSummary/summary.html"},{name:"Html_BlueRed_Summary",types:["Html"],description:"Same as HtmlSummary but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed_Summary/summary.html"},{name:"HtmlChart",types:["Html"],description:"Creates a single HTML file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/HtmlChart/CoverageHistory.html"},{name:"HtmlInline",types:["Html"],description:"Same as HTML but CSS and JavaScript is included in every HTML page. This results in larger file sizes, but can be useful for integration into build servers like Azure DevOps (VSTS), since they may block referenced CSS and JavaScript files.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline/index.html"},{name:"HtmlInline_AzurePipelines",types:["Html"],description:"Same as HtmlInline but with an adaptive light/dark theme matching the look and feel of Azure Pipelines",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines/index.html"},{name:"HtmlInline_AzurePipelines_Light",types:["Html"],description:"Same as HtmlInline but with a light theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Light/index.html"},{name:"HtmlInline_AzurePipelines_Dark",types:["Html"],description:"Same as HtmlInline but with a dark theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Dark/index.html"},{name:"MHtml",types:["Html"],description:"Same as HTML but packaged into a single MHTML file.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MHtml/Summary.mht"},{name:"Clover",types:["Coverage tool"],description:"Creates a XML file in Clover format. This format integrates with tools like Atlassian Bamboo.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Clover/Clover.xml"},{name:"Cobertura",types:["Coverage tool"],description:"Creates a XML file in Cobertura format. This format integrates with tools like Azure DevOps (VSTS) or Jenkins.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Cobertura/Cobertura.xml"},{name:"OpenCover",types:["Coverage tool"],description:"Creates a XML file in OpenCover format (PRO version only).",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/OpenCover/OpenCover.xml"},{name:"SonarQube",types:["Coverage tool"],description:"Creates a XML file in SonarQube 'Generic Test Data' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/SonarQube/SonarQube.xml"},{name:"lcov",types:["Coverage tool"],description:"Creates a text file in 'lcov' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/lcov/lcov.info"},{name:"XML",types:["Xml"],description:"Creates a XML file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Xml/Summary.xml"},{name:"XMLSummary",types:["Xml"],description:"Creates a single XML file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/XmlSummary/Summary.xml"},{name:"JsonSummary",types:["Json"],description:"Creates a single JSON file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/JsonSummary/Summary.json"},{name:"Latex",types:["Text"],description:"Creates a single TEX file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Summary/Summary.tex"},{name:"LatexSummary",types:["Text"],description:"Creates a single TEX file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/LatexSummary/Summary.tex"},{name:"TeamCitySummary",types:["Coverage tool"],description:"Command line output interpreted by TeamCity.",requiresHistoryDir:!1,checked:!1,sampleReport:null},{name:"TextSummary",types:["Text"],description:"Creates a single TXT file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/TextSummary/Summary.txt"},{name:"TextDeltaSummary",types:["Text"],description:"Creates a single TXT file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/TextDeltaSummary/DeltaSummary.txt"},{name:"CsvSummary",types:["Text"],description:"Creates a single CSV file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/CsvSummary/Summary.csv"},{name:"MarkdownSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummary/Summary.md"},{name:"MarkdownSummaryGithub",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class. The report is optimized for GitHub.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummaryGithub/SummaryGithub.md"},{name:"MarkdownDeltaSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/MarkdownDeltaSummary/DeltaSummary.md"},{name:"SvgChart",types:["Image"],description:"Creates a single SVG file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/SvgChart/CoverageHistory.svg"},{name:"Badges",types:["Image"],description:"Creates SVG files that show line and/or branch coverage information.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Badges/index.html"}],this.sourcedirectories=[],this.historydir="",this.plugins=[],this.assemblyfilters=[],this.classfilters=[],this.filefilters=[],this.selectedverbosity=this.verbosities[1],this.selectedType=null,this.title="",this.tag="",this.license=""}addSourceDirectory(){return this.sourcedirectories.push(""),!1}removeSourceDirectory(n){return this.sourcedirectories.splice(n,1),!1}addReport(){return this.reports.push(""),!1}removeReport(n){return this.reports.splice(n,1),!1}addPlugin(){return this.plugins.push(""),!1}removePlugin(n){return this.plugins.splice(n,1),!1}addAssemblyFilter(){return this.assemblyfilters.push(""),!1}removeAssemblyFilter(n){return this.assemblyfilters.splice(n,1),!1}addClassFilter(){return this.classfilters.push(""),!1}removeClassFilter(n){return this.classfilters.splice(n,1),!1}addFileFilter(){return this.filefilters.push(""),!1}removeFileFilter(n){return this.filefilters.splice(n,1),!1}getUsage(n,t){const r=n.executables.find(a=>a.runtime==t);let o=void 0!==r?n.formatExecutable(r):"";o+=n.formatArguments("reports",this.reports),o+=n.formatArgument("targetdir",this.targetdir);for(var i="",s=0;s0&&(i+=";"),i+=this.reporttypes[s].name);return i.length>0&&"Html"!==i&&(o+=n.formatArgument("reporttypes",i)),o+=n.formatArguments("sourcedirs",this.sourcedirectories),o+=n.formatArgument("historydir",this.historydir),o+=n.formatArguments("plugins",this.plugins),o+=n.formatArguments("assemblyfilters",this.assemblyfilters),o+=n.formatArguments("classfilters",this.classfilters),o+=n.formatArguments("filefilters",this.filefilters),"Info"!==this.selectedverbosity&&(o+=n.formatArgument("verbosity",this.selectedverbosity)),o+=n.formatArgument("title",this.title),o+=n.formatArgument("tag",this.tag),o+=n.formatArgument("license",this.license),o}historyDirRequired(){for(let n=0;n-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class og{constructor(n,t){this.tool=n,this.command=t}}function FB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",37),R("ngModelChange",function(o){return re(t),oe(P().selectedEnvironment=o)})("ngModelChange",function(){return re(t),oe(P().selectedEnvironmentChanged())}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=n.$implicit,r=P();C(2),E("ngModel",r.selectedEnvironment)("value",t)("checked",r.selectedEnvironment.name===t.name),C(2),be(t.name),C(3),be(t.description)}}function LB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",41),R("ngModelChange",function(o){return re(t),oe(P(3).selectedPackage=o)}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=P().$implicit,r=P(2);C(2),E("ngModel",r.selectedPackage)("value",t),C(2),be(t.name),C(3),be(t.description)}}function VB(e,n){if(1&e&&(Dt(0),q(1,LB,8,4,"div",40),wt()),2&e){const t=n.$implicit,r=P(2);C(1),E("ngIf",t.runtimes.indexOf(r.selectedEnvironment.name)>-1)}}function jB(e,n){if(1&e&&(Dt(0),h(1,"h4"),f(2,"NuGet Package"),p(),q(3,VB,2,1,"ng-container",39),wt()),2&e){const t=P();C(3),E("ngForOf",t.packages)}}function HB(e,n){if(1&e){const t=Fe();h(0,"span",45),R("click",function(){re(t);const o=P().index;return oe(P().configuration.removeReport(o))}),h(1,"a",46),y(2,"i",47),p()()}}const UB=e=>({"input-group":e});function BB(e,n){if(1&e){const t=Fe();h(0,"div",38)(1,"div",42)(2,"input",43),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.reports[s]=o)}),p(),q(3,HB,3,0,"span",44),p()()}if(2&e){const t=n.index,r=P();C(1),E("ngClass",Is(4,UB,t>0)),C(1),jn("name","report_",t,""),E("ngModel",r.configuration.reports[t]),C(1),E("ngIf",t>0)}}const $B=(e,n)=>({"btn-outline-primary":e,"btn-primary":n});function GB(e,n){if(1&e){const t=Fe();h(0,"button",48),R("click",function(){const i=re(t).$implicit,s=P();return oe(s.configuration.selectedType=s.configuration.selectedType===i?null:i)}),f(1),p()}if(2&e){const t=n.$implicit,r=P();E("ngClass",GD(2,$B,t!==r.configuration.selectedType,t===r.configuration.selectedType)),C(1),be(t)}}function zB(e,n){if(1&e){const t=Fe();h(0,"span",53),y(1,"i",54),f(2," Please specify a "),h(3,"a",9),R("click",function(){return re(t),oe(P(3).scrollToHistoryDir())}),f(4,"history directory"),p()()}}function qB(e,n){if(1&e&&(Dt(0),y(1,"br",55),h(2,"a",29),f(3,"Sample report"),p(),f(4,"\xa0"),h(5,"a",29),y(6,"i",56),p(),wt()),2&e){const t=P(2).$implicit;C(2),E("href",t.sampleReport,bo),C(3),E("href",t.sampleReport,bo)}}function WB(e,n){if(1&e){const t=Fe();h(0,"div",50)(1,"label",36)(2,"input",51),R("change",function(){re(t);const o=P().$implicit;return oe(o.checked=!o.checked)}),p(),h(3,"b"),f(4),p(),q(5,zB,5,0,"span",52),y(6,"br"),h(7,"div",38),f(8),q(9,qB,7,2,"ng-container",5),p()()()}if(2&e){const t=P().$implicit,r=P();C(2),E("checked",t.checked),C(2),be(t.name),C(1),E("ngIf",t.checked&&t.requiresHistoryDir&&!r.configuration.historydir),C(3),Hn("",t.description," "),C(1),E("ngIf",t.sampleReport)}}function ZB(e,n){if(1&e&&(Dt(0),q(1,WB,10,5,"div",49),wt()),2&e){const t=n.$implicit,r=P();C(1),E("ngIf",!r.configuration.selectedType||t.types.indexOf(r.configuration.selectedType)>-1)}}function YB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",58),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.sourcedirectories[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeSourceDirectory(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","sourcedir_",t,""),E("ngModel",r.configuration.sourcedirectories[t])}}function QB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",59),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.plugins[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removePlugin(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","plugin_",t,""),E("ngModel",r.configuration.plugins[t])}}function XB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",60),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.assemblyfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeAssemblyFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","assemblyfilter_",t,""),E("ngModel",r.configuration.assemblyfilters[t])}}function JB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",61),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.classfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeClassFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","classfilter_",t,""),E("ngModel",r.configuration.classfilters[t])}}function KB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",62),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.filefilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeFileFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","filefilter_",t,""),E("ngModel",r.configuration.filefilters[t])}}function e$(e,n){if(1&e&&(h(0,"option",63),f(1),p()),2&e){const t=n.$implicit;E("value",t),C(1),be(t)}}function t$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function n$(e,n){1&e&&(h(0,"span"),y(1,"i",65),f(2," Copy"),p())}function r$(e,n){1&e&&(h(0,"span"),y(1,"i",66),f(2," Copied"),p())}function o$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function i$(e,n){1&e&&(h(0,"span"),y(1,"i",65),f(2," Copy"),p())}function s$(e,n){1&e&&(h(0,"span"),y(1,"i",66),f(2," Copied"),p())}const a$=()=>["/pro"],l$=[{path:"",component:YU,pathMatch:"full",title:"Home",data:{canonical:"/"}},{path:"features",component:BU,title:"Features",data:{canonical:"/features"}},{path:"features.html",redirectTo:"/features"},{path:"getstarted",component:GU,title:"Get started",data:{canonical:"/getstarted"}},{path:"getstarted.html",redirectTo:"/getstarted"},{path:"usage",component:(()=>{class e{constructor(){this.versions=Gt,this.lastResult="",this.usageCopied=!1,this.configuration=new PB,this.environments=[new Jc(".NET Core",".NET Core"),new Jc(".NET Framework","The full .NET framework"),new Jc("Azure DevOps",null),new Jc("Github Action",null)],this.packages=[new Xc("ReportGenerator","https://www.nuget.org/packages/ReportGenerator",[".NET Framework",".NET Core"],"Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script.",[new og("Package Manager",`Install-Package ReportGenerator -Version ${Gt.version}`),new og(".NET CLI",`dotnet add package ReportGenerator --version ${Gt.version}`)],[new oa(".NET Framework",`$(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net47\\ReportGenerator.exe`),new oa(".NET Core",`dotnet $(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net6.0\\ReportGenerator.dll`)]),new Xc("dotnet-reportgenerator-globaltool","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool",[".NET Core"],"Use this package if your project is based on .NET Core and you want to use ReportGenerator as a (global) 'DotnetTool'.",[new og(".NET CLI",`dotnet tool install --global dotnet-reportgenerator-globaltool --version ${Gt.version}\r\n\r\ndotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version ${Gt.version}\r\n\r\ndotnet new tool-manifest\r\ndotnet tool install dotnet-reportgenerator-globaltool --version ${Gt.version}`)],[new oa(".NET Core","reportgenerator")]),new OB("Azure DevOps","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator",["Azure DevOps"],"Use this package within Azure DevOps",[],[new oa("Azure DevOps","reportgenerator")]),new kB("GitHub Action","https://github.com/marketplace/actions/reportgenerator",["Github Action"],"Use this package within Github Actions",[],[new oa("Github Action","danielpalme/ReportGenerator-GitHub-Action")])],this.selectedEnvironment=this.environments[0],this.selectedPackage=this.packages[0]}selectedEnvironmentChanged(){this.selectedPackage=this.packages.find(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1)}severalPackagesAvailable(){return this.packages.filter(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1).length>1}getUsage(){const t=this.configuration.getUsage(this.selectedPackage,this.selectedEnvironment.name);return this.lastResult!==t&&(this.lastResult=t,this.usageCopied=!1),t}copy(){try{navigator.clipboard.writeText(this.getUsage()),this.usageCopied=!0}catch(t){console.error("Failed to copy license",t)}}scrollToHistoryDir(){return document.querySelector("#historydir").scrollIntoView(!0),!1}trackByIndex(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-usage-component"]],standalone:!0,features:[Ot],decls:219,vars:41,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-md-7"],["class","form-check",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"alert","alert-info"],["class","mb-3",4,"ngFor","ngForOf","ngForTrackBy"],[1,"input-group","mb-3"],["href","",3,"click"],[1,"fa","fa-plus-circle"],["type","text","name","targetdir","placeholder","The target directory","required","",1,"form-control",3,"ngModel","ngModelChange"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"me-2"],["type","button","class","btn btn-sm me-1 mb-1",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[4,"ngFor","ngForOf","ngForTrackBy"],["class","input-group mb-3",4,"ngFor","ngForOf","ngForTrackBy"],["id","historydir"],["type","text","name","historydir","placeholder","The history directory",1,"form-control",3,"ngModel","required","ngModelChange"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage"],["name","verbosity",1,"form-select",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["type","text","name","title","placeholder","Title",1,"form-control",3,"ngModel","ngModelChange"],["type","text","name","tag","placeholder","Optional tag or build version",1,"form-control",3,"ngModel","ngModelChange"],[3,"routerLink"],["type","text","name","license","placeholder","Optional license for PRO version","rows","4",1,"form-control",3,"ngModel","ngModelChange"],[1,"col-md-5"],[1,"d-md-none","mt-5"],["target","_blank",3,"href"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-4"],[1,"text-dark","bg-light","p-2","border"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"d-none","d-md-block","sticky"],[1,"form-check"],[1,"form-check-label"],["type","radio","name","environment",1,"form-check-input",3,"ngModel","value","checked","ngModelChange"],[1,"mb-3"],[4,"ngFor","ngForOf"],["class","form-check",4,"ngIf"],["type","radio","name","package",1,"form-check-input",3,"ngModel","value","ngModelChange"],[3,"ngClass"],["type","text","placeholder","The path of the coverage file","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["class","input-group-text",3,"click",4,"ngIf"],[1,"input-group-text",3,"click"],["href",""],[1,"fa","fa-trash","text-danger"],["type","button",1,"btn","btn-sm","me-1","mb-1",3,"ngClass","click"],["class","form-check mt-1",4,"ngIf"],[1,"form-check","mt-1"],["type","checkbox","name","reporttype",1,"form-check-input",3,"checked","change"],["class","text-danger ms-2",4,"ngIf"],[1,"text-danger","ms-2"],[1,"fa-solid","fa-triangle-exclamation"],[1,"mt-1"],[1,"fa-solid","fa-arrow-up-right-from-square"],[1,"input-group"],["type","text","placeholder","The source directory","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The path of the plugin","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for assemlies","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for classes","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for files","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],[3,"value"],[1,"mt-2"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Usage"),p(),h(3,"div",2)(4,"div",3)(5,"form")(6,"h3"),f(7,"Environment"),p(),q(8,FB,8,5,"div",4),y(9,"hr"),q(10,jB,4,1,"ng-container",5),y(11,"hr"),h(12,"h3"),f(13,"Reports"),p(),h(14,"div",6),f(15,"Path to the coverage report(s) that should be parsed."),y(16,"br"),f(17,"Globbing is supported."),p(),q(18,BB,4,6,"div",7),h(19,"div",8)(20,"a",9),R("click",function(){return o.configuration.addReport()}),y(21,"i",10),f(22," Add report"),p()(),y(23,"br"),h(24,"h3"),f(25,"Target directory"),p(),h(26,"div",6),f(27,"The directory where the generated report(s) should be saved."),p(),h(28,"div",8)(29,"input",11),R("ngModelChange",function(s){return o.configuration.targetdir=s}),p()(),y(30,"br"),h(31,"h3"),f(32,"Report types"),p(),h(33,"div",6),f(34,"Download "),h(35,"a",12),f(36,"sample reports"),p()(),h(37,"span",13),f(38,"Filter:"),p(),q(39,GB,2,5,"button",14),y(40,"br"),q(41,ZB,2,1,"ng-container",15),h(42,"h3"),f(43,"Source directories"),p(),h(44,"div",6),f(45,"Optional directories which contain the corresponding source code."),y(46,"br"),f(47,"The source directories are used if coverage report contains classes without path information."),p(),q(48,YB,6,2,"div",16),h(49,"div",8)(50,"a",9),R("click",function(){return o.configuration.addSourceDirectory()}),y(51,"i",10),f(52," Add source directory"),p()(),y(53,"br"),h(54,"h3",17),f(55,"History directory"),p(),h(56,"div",6),f(57,"Optional directory for storing "),h(58,"b"),f(59,"persistent"),p(),f(60," coverage information. Choose a directory which does not get deleted between builds."),y(61,"br"),f(62,"Required to show the history chart in the HTML reports."),p(),h(63,"div",8)(64,"input",18),R("ngModelChange",function(s){return o.configuration.historydir=s}),p()(),y(65,"br"),h(66,"h3"),f(67,"Plugins"),p(),h(68,"div",6),f(69,"Optional plugin files for "),h(70,"a",19),f(71,"custom reports"),p(),f(72," or "),h(73,"a",20),f(74,"custom history storage"),p(),f(75,"."),p(),q(76,QB,6,2,"div",16),h(77,"div",8)(78,"a",9),R("click",function(){return o.configuration.addPlugin()}),y(79,"i",10),f(80," Add plugin"),p()(),y(81,"br"),h(82,"h3"),f(83,"Assembly filters"),p(),h(84,"div",6),f(85,"Optional list of "),h(86,"b"),f(87,"assemblies"),p(),f(88," that should be included or excluded in the report. "),y(89,"br"),f(90,"Exclusion filters take precedence over inclusion filters. "),y(91,"br"),f(92,"Wildcards are allowed."),y(93,"br"),h(94,"p"),f(95,"Examples:"),y(96,"br"),h(97,"code"),f(98,"+Included"),p(),y(99,"br"),h(100,"code"),f(101,"-Excluded"),p()()(),q(102,XB,6,2,"div",16),h(103,"div",8)(104,"a",9),R("click",function(){return o.configuration.addAssemblyFilter()}),y(105,"i",10),f(106," Add assembly filter"),p()(),y(107,"br"),h(108,"h3"),f(109,"Class filters"),p(),h(110,"div",6),f(111,"Optional list of "),h(112,"b"),f(113,"classes"),p(),f(114," that should be included or excluded in the report. "),y(115,"br"),f(116,"Exclusion filters take precedence over inclusion filters. "),y(117,"br"),f(118,"Wildcards are allowed."),y(119,"br"),h(120,"p"),f(121,"Examples:"),y(122,"br"),h(123,"code"),f(124,"+Included"),p(),y(125,"br"),h(126,"code"),f(127,"-Excluded"),p()()(),q(128,JB,6,2,"div",16),h(129,"div",8)(130,"a",9),R("click",function(){return o.configuration.addClassFilter()}),y(131,"i",10),f(132," Add class filter"),p()(),y(133,"br"),h(134,"h3"),f(135,"File filters"),p(),h(136,"div",6),f(137,"Optional list of "),h(138,"b"),f(139,"files"),p(),f(140," that should be included or excluded in the report. "),y(141,"br"),f(142,"Exclusion filters take precedence over inclusion filters. "),y(143,"br"),f(144,"Wildcards are allowed."),y(145,"br"),h(146,"p"),f(147,"Examples:"),y(148,"br"),h(149,"code"),f(150,"+Included"),p(),y(151,"br"),h(152,"code"),f(153,"-Excluded"),p()()(),q(154,KB,6,2,"div",16),h(155,"div",8)(156,"a",9),R("click",function(){return o.configuration.addFileFilter()}),y(157,"i",10),f(158," Add file filter"),p()(),y(159,"br"),h(160,"h3"),f(161,"Verbosity"),p(),h(162,"div",6),f(163,"The verbosity level of the log messages."),p(),h(164,"div",8)(165,"select",21),R("ngModelChange",function(s){return o.configuration.selectedverbosity=s}),q(166,e$,2,2,"option",22),p()(),y(167,"br"),h(168,"h3"),f(169,"Title"),p(),h(170,"div",6),f(171,"Optional title."),p(),h(172,"div",8)(173,"input",23),R("ngModelChange",function(s){return o.configuration.title=s}),p()(),y(174,"br"),h(175,"h3"),f(176,"Tag"),p(),h(177,"div",6),f(178,"Optional tag or build version."),p(),h(179,"div",8)(180,"input",24),R("ngModelChange",function(s){return o.configuration.tag=s}),p()(),y(181,"br"),h(182,"h3"),f(183,"License"),p(),h(184,"div",6),f(185,"Optional license. Get your license here: "),h(186,"a",25),f(187,"https://reportgenerator.io/pro"),p()(),h(188,"div",8)(189,"textarea",26),R("ngModelChange",function(s){return o.configuration.license=s}),p()()()(),h(190,"div",27)(191,"div",28)(192,"h3"),f(193,"Instructions"),p(),f(194," Install "),h(195,"a",29),f(196),p(),q(197,t$,6,2,"div",30),h(198,"h4",31),f(199,"Usage"),p(),h(200,"pre",32),f(201),p(),h(202,"button",33),R("click",function(){return o.copy()}),q(203,n$,3,0,"span",5)(204,r$,3,0,"span",5),p()(),h(205,"div",34)(206,"h3"),f(207,"Instructions"),p(),f(208," Install "),h(209,"a",29),f(210),p(),q(211,o$,6,2,"div",30),h(212,"h4",31),f(213,"Usage"),p(),h(214,"pre",32),f(215),p(),h(216,"button",33),R("click",function(){return o.copy()}),q(217,i$,3,0,"span",5)(218,s$,3,0,"span",5),p()()()()()),2&r&&(C(8),E("ngForOf",o.environments),C(2),E("ngIf",o.severalPackagesAvailable()),C(8),E("ngForOf",o.configuration.reports)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.targetdir),C(10),E("ngForOf",o.configuration.types)("ngForTrackBy",o.trackByIndex),C(2),E("ngForOf",o.configuration.reporttypes)("ngForTrackBy",o.trackByIndex),C(7),E("ngForOf",o.configuration.sourcedirectories)("ngForTrackBy",o.trackByIndex),C(16),E("ngModel",o.configuration.historydir)("required",o.configuration.historyDirRequired()),C(12),E("ngForOf",o.configuration.plugins)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.assemblyfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.classfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.filefilters)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.selectedverbosity),C(1),E("ngForOf",o.configuration.verbosities)("ngForTrackBy",o.trackByIndex),C(7),E("ngModel",o.configuration.title),C(7),E("ngModel",o.configuration.tag),C(6),E("routerLink",ee(40,a$)),C(3),E("ngModel",o.configuration.license),C(6),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),E("ngIf",!o.usageCopied),C(1),E("ngIf",o.usageCopied),C(5),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),E("ngIf",!o.usageCopied),C(1),E("ngIf",o.usageCopied))},dependencies:[zc,Bc,YI,XI,pi,$c,Gp,Rc,Oc,yi,Qp,ta,vi,Hh,uc,cc,Mn],styles:[".sticky[_ngcontent-%COMP%]{position:sticky;top:100px}"]})}return e})(),title:"Usage",data:{canonical:"/usage"}},{path:"usage.html",redirectTo:"/usage"},{path:"pro",component:RB,title:"PRO",data:{canonical:"/pro"}},{path:"pro.html",redirectTo:"/pro"},{path:"contact",component:UU,title:"Contact",data:{canonical:"/contact"}},{path:"contact.html",redirectTo:"/contact"},{path:"404",component:QU,title:"404 - Not found"},{path:"**",redirectTo:"/404"}];(function bV(e,n){return gF({rootComponent:e,...Wb(n)})})(uH,{providers:[ov(AV,(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[KE.forRoot(l$,{scrollPositionRestoration:"enabled",scrollOffset:[0,0],anchorScrolling:"enabled"}),KE]})}return e})(),zc),NM,RM,SM,function xU(...e){const n=[Kp,mM,pM,{provide:qc,useExisting:pM},{provide:Wc,useExisting:mM},{provide:ra,useValue:AU,multi:!0},{provide:ng,useValue:!0},{provide:_M,useClass:TU}];for(const t of e)n.push(...t.\u0275providers);return ud(n)}(function NU(){return function zr(e,n){return{\u0275kind:e,\u0275providers:n}}(mr.LegacyInterceptors,[{provide:CM,useFactory:_U},{provide:ra,useExisting:CM,multi:!0}])}())]}).catch(e=>console.error(e))}},Kc=>{Kc(Kc.s=139)}]); \ No newline at end of file diff --git a/docs/polyfills.e7f65988d152fe55.js b/docs/polyfills.e7f65988d152fe55.js new file mode 100644 index 00000000..fc703637 --- /dev/null +++ b/docs/polyfills.e7f65988d152fe55.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[429],{321:(ie,Ee,de)=>{de(332)},332:()=>{!function(e){const n=e.performance;function i(L){n&&n.mark&&n.mark(L)}function o(L,T){n&&n.measure&&n.measure(L,T)}i("Zone");const c=e.__Zone_symbol_prefix||"__zone_symbol__";function a(L){return c+L}const y=!0===e[a("forceDuplicateZoneCheck")];if(e.Zone){if(y||"function"!=typeof e.Zone.__symbol__)throw new Error("Zone already loaded.");return e.Zone}let d=(()=>{class L{static#e=this.__symbol__=a;static assertZonePatched(){if(e.Promise!==oe.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let t=L.current;for(;t.parent;)t=t.parent;return t}static get current(){return U.zone}static get currentTask(){return re}static __load_patch(t,r,k=!1){if(oe.hasOwnProperty(t)){if(!k&&y)throw Error("Already loaded patch: "+t)}else if(!e["__Zone_disable_"+t]){const C="Zone:"+t;i(C),oe[t]=r(e,L,z),o(C,C)}}get parent(){return this._parent}get name(){return this._name}constructor(t,r){this._parent=t,this._name=r?r.name||"unnamed":"",this._properties=r&&r.properties||{},this._zoneDelegate=new v(this,this._parent&&this._parent._zoneDelegate,r)}get(t){const r=this.getZoneWith(t);if(r)return r._properties[t]}getZoneWith(t){let r=this;for(;r;){if(r._properties.hasOwnProperty(t))return r;r=r._parent}return null}fork(t){if(!t)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,t)}wrap(t,r){if("function"!=typeof t)throw new Error("Expecting function got: "+t);const k=this._zoneDelegate.intercept(this,t,r),C=this;return function(){return C.runGuarded(k,this,arguments,r)}}run(t,r,k,C){U={parent:U,zone:this};try{return this._zoneDelegate.invoke(this,t,r,k,C)}finally{U=U.parent}}runGuarded(t,r=null,k,C){U={parent:U,zone:this};try{try{return this._zoneDelegate.invoke(this,t,r,k,C)}catch($){if(this._zoneDelegate.handleError(this,$))throw $}}finally{U=U.parent}}runTask(t,r,k){if(t.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(t.zone||K).name+"; Execution: "+this.name+")");if(t.state===x&&(t.type===Q||t.type===P))return;const C=t.state!=E;C&&t._transitionTo(E,A),t.runCount++;const $=re;re=t,U={parent:U,zone:this};try{t.type==P&&t.data&&!t.data.isPeriodic&&(t.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,t,r,k)}catch(l){if(this._zoneDelegate.handleError(this,l))throw l}}finally{t.state!==x&&t.state!==h&&(t.type==Q||t.data&&t.data.isPeriodic?C&&t._transitionTo(A,E):(t.runCount=0,this._updateTaskCount(t,-1),C&&t._transitionTo(x,E,x))),U=U.parent,re=$}}scheduleTask(t){if(t.zone&&t.zone!==this){let k=this;for(;k;){if(k===t.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${t.zone.name}`);k=k.parent}}t._transitionTo(X,x);const r=[];t._zoneDelegates=r,t._zone=this;try{t=this._zoneDelegate.scheduleTask(this,t)}catch(k){throw t._transitionTo(h,X,x),this._zoneDelegate.handleError(this,k),k}return t._zoneDelegates===r&&this._updateTaskCount(t,1),t.state==X&&t._transitionTo(A,X),t}scheduleMicroTask(t,r,k,C){return this.scheduleTask(new p(I,t,r,k,C,void 0))}scheduleMacroTask(t,r,k,C,$){return this.scheduleTask(new p(P,t,r,k,C,$))}scheduleEventTask(t,r,k,C,$){return this.scheduleTask(new p(Q,t,r,k,C,$))}cancelTask(t){if(t.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(t.zone||K).name+"; Execution: "+this.name+")");if(t.state===A||t.state===E){t._transitionTo(G,A,E);try{this._zoneDelegate.cancelTask(this,t)}catch(r){throw t._transitionTo(h,G),this._zoneDelegate.handleError(this,r),r}return this._updateTaskCount(t,-1),t._transitionTo(x,G),t.runCount=0,t}}_updateTaskCount(t,r){const k=t._zoneDelegates;-1==r&&(t._zoneDelegates=null);for(let C=0;CL.hasTask(t,r),onScheduleTask:(L,T,t,r)=>L.scheduleTask(t,r),onInvokeTask:(L,T,t,r,k,C)=>L.invokeTask(t,r,k,C),onCancelTask:(L,T,t,r)=>L.cancelTask(t,r)};class v{constructor(T,t,r){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=T,this._parentDelegate=t,this._forkZS=r&&(r&&r.onFork?r:t._forkZS),this._forkDlgt=r&&(r.onFork?t:t._forkDlgt),this._forkCurrZone=r&&(r.onFork?this.zone:t._forkCurrZone),this._interceptZS=r&&(r.onIntercept?r:t._interceptZS),this._interceptDlgt=r&&(r.onIntercept?t:t._interceptDlgt),this._interceptCurrZone=r&&(r.onIntercept?this.zone:t._interceptCurrZone),this._invokeZS=r&&(r.onInvoke?r:t._invokeZS),this._invokeDlgt=r&&(r.onInvoke?t:t._invokeDlgt),this._invokeCurrZone=r&&(r.onInvoke?this.zone:t._invokeCurrZone),this._handleErrorZS=r&&(r.onHandleError?r:t._handleErrorZS),this._handleErrorDlgt=r&&(r.onHandleError?t:t._handleErrorDlgt),this._handleErrorCurrZone=r&&(r.onHandleError?this.zone:t._handleErrorCurrZone),this._scheduleTaskZS=r&&(r.onScheduleTask?r:t._scheduleTaskZS),this._scheduleTaskDlgt=r&&(r.onScheduleTask?t:t._scheduleTaskDlgt),this._scheduleTaskCurrZone=r&&(r.onScheduleTask?this.zone:t._scheduleTaskCurrZone),this._invokeTaskZS=r&&(r.onInvokeTask?r:t._invokeTaskZS),this._invokeTaskDlgt=r&&(r.onInvokeTask?t:t._invokeTaskDlgt),this._invokeTaskCurrZone=r&&(r.onInvokeTask?this.zone:t._invokeTaskCurrZone),this._cancelTaskZS=r&&(r.onCancelTask?r:t._cancelTaskZS),this._cancelTaskDlgt=r&&(r.onCancelTask?t:t._cancelTaskDlgt),this._cancelTaskCurrZone=r&&(r.onCancelTask?this.zone:t._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const k=r&&r.onHasTask;(k||t&&t._hasTaskZS)&&(this._hasTaskZS=k?r:b,this._hasTaskDlgt=t,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=T,r.onScheduleTask||(this._scheduleTaskZS=b,this._scheduleTaskDlgt=t,this._scheduleTaskCurrZone=this.zone),r.onInvokeTask||(this._invokeTaskZS=b,this._invokeTaskDlgt=t,this._invokeTaskCurrZone=this.zone),r.onCancelTask||(this._cancelTaskZS=b,this._cancelTaskDlgt=t,this._cancelTaskCurrZone=this.zone))}fork(T,t){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,T,t):new d(T,t)}intercept(T,t,r){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,T,t,r):t}invoke(T,t,r,k,C){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,T,t,r,k,C):t.apply(r,k)}handleError(T,t){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,T,t)}scheduleTask(T,t){let r=t;if(this._scheduleTaskZS)this._hasTaskZS&&r._zoneDelegates.push(this._hasTaskDlgtOwner),r=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,T,t),r||(r=t);else if(t.scheduleFn)t.scheduleFn(t);else{if(t.type!=I)throw new Error("Task is missing scheduleFn.");R(t)}return r}invokeTask(T,t,r,k){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,T,t,r,k):t.callback.apply(r,k)}cancelTask(T,t){let r;if(this._cancelTaskZS)r=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,T,t);else{if(!t.cancelFn)throw Error("Task is not cancelable");r=t.cancelFn(t)}return r}hasTask(T,t){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,T,t)}catch(r){this.handleError(T,r)}}_updateTaskCount(T,t){const r=this._taskCounts,k=r[T],C=r[T]=k+t;if(C<0)throw new Error("More tasks executed then were scheduled.");0!=k&&0!=C||this.hasTask(this.zone,{microTask:r.microTask>0,macroTask:r.macroTask>0,eventTask:r.eventTask>0,change:T})}}class p{constructor(T,t,r,k,C,$){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=T,this.source=t,this.data=k,this.scheduleFn=C,this.cancelFn=$,!r)throw new Error("callback is not defined");this.callback=r;const l=this;this.invoke=T===Q&&k&&k.useG?p.invokeTask:function(){return p.invokeTask.call(e,l,this,arguments)}}static invokeTask(T,t,r){T||(T=this),ee++;try{return T.runCount++,T.zone.runTask(T,t,r)}finally{1==ee&&_(),ee--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(x,X)}_transitionTo(T,t,r){if(this._state!==t&&this._state!==r)throw new Error(`${this.type} '${this.source}': can not transition to '${T}', expecting state '${t}'${r?" or '"+r+"'":""}, was '${this._state}'.`);this._state=T,T==x&&(this._zoneDelegates=null)}toString(){return this.data&&typeof this.data.handleId<"u"?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const M=a("setTimeout"),Z=a("Promise"),N=a("then");let J,B=[],H=!1;function q(L){if(J||e[Z]&&(J=e[Z].resolve(0)),J){let T=J[N];T||(T=J.then),T.call(J,L)}else e[M](L,0)}function R(L){0===ee&&0===B.length&&q(_),L&&B.push(L)}function _(){if(!H){for(H=!0;B.length;){const L=B;B=[];for(let T=0;TU,onUnhandledError:W,microtaskDrainDone:W,scheduleMicroTask:R,showUncaughtError:()=>!d[a("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:W,patchMethod:()=>W,bindArguments:()=>[],patchThen:()=>W,patchMacroTask:()=>W,patchEventPrototype:()=>W,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>W,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>W,wrapWithCurrentZone:()=>W,filterProperties:()=>[],attachOriginToPatched:()=>W,_redefineProperty:()=>W,patchCallbacks:()=>W,nativeScheduleMicroTask:q};let U={parent:null,zone:new d(null,null)},re=null,ee=0;function W(){}o("Zone","Zone"),e.Zone=d}(globalThis);const ie=Object.getOwnPropertyDescriptor,Ee=Object.defineProperty,de=Object.getPrototypeOf,ge=Object.create,Ve=Array.prototype.slice,Se="addEventListener",Oe="removeEventListener",Ze=Zone.__symbol__(Se),Ne=Zone.__symbol__(Oe),ce="true",ae="false",ke=Zone.__symbol__("");function Ie(e,n){return Zone.current.wrap(e,n)}function Me(e,n,i,o,c){return Zone.current.scheduleMacroTask(e,n,i,o,c)}const j=Zone.__symbol__,Pe=typeof window<"u",Te=Pe?window:void 0,Y=Pe&&Te||globalThis,ct="removeAttribute";function Le(e,n){for(let i=e.length-1;i>=0;i--)"function"==typeof e[i]&&(e[i]=Ie(e[i],n+"_"+i));return e}function Fe(e){return!e||!1!==e.writable&&!("function"==typeof e.get&&typeof e.set>"u")}const Be=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,we=!("nw"in Y)&&typeof Y.process<"u"&&"[object process]"==={}.toString.call(Y.process),Ae=!we&&!Be&&!(!Pe||!Te.HTMLElement),Ue=typeof Y.process<"u"&&"[object process]"==={}.toString.call(Y.process)&&!Be&&!(!Pe||!Te.HTMLElement),Re={},We=function(e){if(!(e=e||Y.event))return;let n=Re[e.type];n||(n=Re[e.type]=j("ON_PROPERTY"+e.type));const i=this||e.target||Y,o=i[n];let c;return Ae&&i===Te&&"error"===e.type?(c=o&&o.call(this,e.message,e.filename,e.lineno,e.colno,e.error),!0===c&&e.preventDefault()):(c=o&&o.apply(this,arguments),null!=c&&!c&&e.preventDefault()),c};function qe(e,n,i){let o=ie(e,n);if(!o&&i&&ie(i,n)&&(o={enumerable:!0,configurable:!0}),!o||!o.configurable)return;const c=j("on"+n+"patched");if(e.hasOwnProperty(c)&&e[c])return;delete o.writable,delete o.value;const a=o.get,y=o.set,d=n.slice(2);let b=Re[d];b||(b=Re[d]=j("ON_PROPERTY"+d)),o.set=function(v){let p=this;!p&&e===Y&&(p=Y),p&&("function"==typeof p[b]&&p.removeEventListener(d,We),y&&y.call(p,null),p[b]=v,"function"==typeof v&&p.addEventListener(d,We,!1))},o.get=function(){let v=this;if(!v&&e===Y&&(v=Y),!v)return null;const p=v[b];if(p)return p;if(a){let M=a.call(this);if(M)return o.set.call(this,M),"function"==typeof v[ct]&&v.removeAttribute(n),M}return null},Ee(e,n,o),e[c]=!0}function Xe(e,n,i){if(n)for(let o=0;ofunction(y,d){const b=i(y,d);return b.cbIdx>=0&&"function"==typeof d[b.cbIdx]?Me(b.name,d[b.cbIdx],b,c):a.apply(y,d)})}function ue(e,n){e[j("OriginalDelegate")]=n}let ze=!1,je=!1;function ft(){if(ze)return je;ze=!0;try{const e=Te.navigator.userAgent;(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/")||-1!==e.indexOf("Edge/"))&&(je=!0)}catch{}return je}Zone.__load_patch("ZoneAwarePromise",(e,n,i)=>{const o=Object.getOwnPropertyDescriptor,c=Object.defineProperty,y=i.symbol,d=[],b=!1!==e[y("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],v=y("Promise"),p=y("then"),M="__creationTrace__";i.onUnhandledError=l=>{if(i.showUncaughtError()){const u=l&&l.rejection;u?console.error("Unhandled Promise rejection:",u instanceof Error?u.message:u,"; Zone:",l.zone.name,"; Task:",l.task&&l.task.source,"; Value:",u,u instanceof Error?u.stack:void 0):console.error(l)}},i.microtaskDrainDone=()=>{for(;d.length;){const l=d.shift();try{l.zone.runGuarded(()=>{throw l.throwOriginal?l.rejection:l})}catch(u){N(u)}}};const Z=y("unhandledPromiseRejectionHandler");function N(l){i.onUnhandledError(l);try{const u=n[Z];"function"==typeof u&&u.call(this,l)}catch{}}function B(l){return l&&l.then}function H(l){return l}function J(l){return t.reject(l)}const q=y("state"),R=y("value"),_=y("finally"),K=y("parentPromiseValue"),x=y("parentPromiseState"),X="Promise.then",A=null,E=!0,G=!1,h=0;function I(l,u){return s=>{try{z(l,u,s)}catch(f){z(l,!1,f)}}}const P=function(){let l=!1;return function(s){return function(){l||(l=!0,s.apply(null,arguments))}}},Q="Promise resolved with itself",oe=y("currentTaskTrace");function z(l,u,s){const f=P();if(l===s)throw new TypeError(Q);if(l[q]===A){let g=null;try{("object"==typeof s||"function"==typeof s)&&(g=s&&s.then)}catch(w){return f(()=>{z(l,!1,w)})(),l}if(u!==G&&s instanceof t&&s.hasOwnProperty(q)&&s.hasOwnProperty(R)&&s[q]!==A)re(s),z(l,s[q],s[R]);else if(u!==G&&"function"==typeof g)try{g.call(s,f(I(l,u)),f(I(l,!1)))}catch(w){f(()=>{z(l,!1,w)})()}else{l[q]=u;const w=l[R];if(l[R]=s,l[_]===_&&u===E&&(l[q]=l[x],l[R]=l[K]),u===G&&s instanceof Error){const m=n.currentTask&&n.currentTask.data&&n.currentTask.data[M];m&&c(s,oe,{configurable:!0,enumerable:!1,writable:!0,value:m})}for(let m=0;m{try{const D=l[R],S=!!s&&_===s[_];S&&(s[K]=D,s[x]=w);const O=u.run(m,void 0,S&&m!==J&&m!==H?[]:[D]);z(s,!0,O)}catch(D){z(s,!1,D)}},s)}const L=function(){},T=e.AggregateError;class t{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(u){return z(new this(null),E,u)}static reject(u){return z(new this(null),G,u)}static any(u){if(!u||"function"!=typeof u[Symbol.iterator])return Promise.reject(new T([],"All promises were rejected"));const s=[];let f=0;try{for(let m of u)f++,s.push(t.resolve(m))}catch{return Promise.reject(new T([],"All promises were rejected"))}if(0===f)return Promise.reject(new T([],"All promises were rejected"));let g=!1;const w=[];return new t((m,D)=>{for(let S=0;S{g||(g=!0,m(O))},O=>{w.push(O),f--,0===f&&(g=!0,D(new T(w,"All promises were rejected")))})})}static race(u){let s,f,g=new this((D,S)=>{s=D,f=S});function w(D){s(D)}function m(D){f(D)}for(let D of u)B(D)||(D=this.resolve(D)),D.then(w,m);return g}static all(u){return t.allWithCallback(u)}static allSettled(u){return(this&&this.prototype instanceof t?this:t).allWithCallback(u,{thenCallback:f=>({status:"fulfilled",value:f}),errorCallback:f=>({status:"rejected",reason:f})})}static allWithCallback(u,s){let f,g,w=new this((O,V)=>{f=O,g=V}),m=2,D=0;const S=[];for(let O of u){B(O)||(O=this.resolve(O));const V=D;try{O.then(F=>{S[V]=s?s.thenCallback(F):F,m--,0===m&&f(S)},F=>{s?(S[V]=s.errorCallback(F),m--,0===m&&f(S)):g(F)})}catch(F){g(F)}m++,D++}return m-=2,0===m&&f(S),w}constructor(u){const s=this;if(!(s instanceof t))throw new Error("Must be an instanceof Promise.");s[q]=A,s[R]=[];try{const f=P();u&&u(f(I(s,E)),f(I(s,G)))}catch(f){z(s,!1,f)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return t}then(u,s){let f=this.constructor?.[Symbol.species];(!f||"function"!=typeof f)&&(f=this.constructor||t);const g=new f(L),w=n.current;return this[q]==A?this[R].push(w,g,u,s):ee(this,w,g,u,s),g}catch(u){return this.then(null,u)}finally(u){let s=this.constructor?.[Symbol.species];(!s||"function"!=typeof s)&&(s=t);const f=new s(L);f[_]=_;const g=n.current;return this[q]==A?this[R].push(g,f,u,u):ee(this,g,f,u,u),f}}t.resolve=t.resolve,t.reject=t.reject,t.race=t.race,t.all=t.all;const r=e[v]=e.Promise;e.Promise=t;const k=y("thenPatched");function C(l){const u=l.prototype,s=o(u,"then");if(s&&(!1===s.writable||!s.configurable))return;const f=u.then;u[p]=f,l.prototype.then=function(g,w){return new t((D,S)=>{f.call(this,D,S)}).then(g,w)},l[k]=!0}return i.patchThen=C,r&&(C(r),le(e,"fetch",l=>function $(l){return function(u,s){let f=l.apply(u,s);if(f instanceof t)return f;let g=f.constructor;return g[k]||C(g),f}}(l))),Promise[n.__symbol__("uncaughtPromiseErrors")]=d,t}),Zone.__load_patch("toString",e=>{const n=Function.prototype.toString,i=j("OriginalDelegate"),o=j("Promise"),c=j("Error"),a=function(){if("function"==typeof this){const v=this[i];if(v)return"function"==typeof v?n.call(v):Object.prototype.toString.call(v);if(this===Promise){const p=e[o];if(p)return n.call(p)}if(this===Error){const p=e[c];if(p)return n.call(p)}}return n.call(this)};a[i]=n,Function.prototype.toString=a;const y=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":y.call(this)}});let ye=!1;if(typeof window<"u")try{const e=Object.defineProperty({},"passive",{get:function(){ye=!0}});window.addEventListener("test",e,e),window.removeEventListener("test",e,e)}catch{ye=!1}const ht={useG:!0},te={},Ye={},$e=new RegExp("^"+ke+"(\\w+)(true|false)$"),Ke=j("propagationStopped");function Je(e,n){const i=(n?n(e):e)+ae,o=(n?n(e):e)+ce,c=ke+i,a=ke+o;te[e]={},te[e][ae]=c,te[e][ce]=a}function dt(e,n,i,o){const c=o&&o.add||Se,a=o&&o.rm||Oe,y=o&&o.listeners||"eventListeners",d=o&&o.rmAll||"removeAllListeners",b=j(c),v="."+c+":",p="prependListener",M="."+p+":",Z=function(R,_,K){if(R.isRemoved)return;const x=R.callback;let X;"object"==typeof x&&x.handleEvent&&(R.callback=E=>x.handleEvent(E),R.originalDelegate=x);try{R.invoke(R,_,[K])}catch(E){X=E}const A=R.options;return A&&"object"==typeof A&&A.once&&_[a].call(_,K.type,R.originalDelegate?R.originalDelegate:R.callback,A),X};function N(R,_,K){if(!(_=_||e.event))return;const x=R||_.target||e,X=x[te[_.type][K?ce:ae]];if(X){const A=[];if(1===X.length){const E=Z(X[0],x,_);E&&A.push(E)}else{const E=X.slice();for(let G=0;G{throw G})}}}const B=function(R){return N(this,R,!1)},H=function(R){return N(this,R,!0)};function J(R,_){if(!R)return!1;let K=!0;_&&void 0!==_.useG&&(K=_.useG);const x=_&&_.vh;let X=!0;_&&void 0!==_.chkDup&&(X=_.chkDup);let A=!1;_&&void 0!==_.rt&&(A=_.rt);let E=R;for(;E&&!E.hasOwnProperty(c);)E=de(E);if(!E&&R[c]&&(E=R),!E||E[b])return!1;const G=_&&_.eventNameToString,h={},I=E[b]=E[c],P=E[j(a)]=E[a],Q=E[j(y)]=E[y],oe=E[j(d)]=E[d];let z;_&&_.prepend&&(z=E[j(_.prepend)]=E[_.prepend]);const t=K?function(s){if(!h.isExisting)return I.call(h.target,h.eventName,h.capture?H:B,h.options)}:function(s){return I.call(h.target,h.eventName,s.invoke,h.options)},r=K?function(s){if(!s.isRemoved){const f=te[s.eventName];let g;f&&(g=f[s.capture?ce:ae]);const w=g&&s.target[g];if(w)for(let m=0;mfunction(c,a){c[Ke]=!0,o&&o.apply(c,a)})}function Et(e,n,i,o,c){const a=Zone.__symbol__(o);if(n[a])return;const y=n[a]=n[o];n[o]=function(d,b,v){return b&&b.prototype&&c.forEach(function(p){const M=`${i}.${o}::`+p,Z=b.prototype;try{if(Z.hasOwnProperty(p)){const N=e.ObjectGetOwnPropertyDescriptor(Z,p);N&&N.value?(N.value=e.wrapWithCurrentZone(N.value,M),e._redefineProperty(b.prototype,p,N)):Z[p]&&(Z[p]=e.wrapWithCurrentZone(Z[p],M))}else Z[p]&&(Z[p]=e.wrapWithCurrentZone(Z[p],M))}catch{}}),y.call(n,d,b,v)},e.attachOriginToPatched(n[o],y)}function et(e,n,i){if(!i||0===i.length)return n;const o=i.filter(a=>a.target===e);if(!o||0===o.length)return n;const c=o[0].ignoreProperties;return n.filter(a=>-1===c.indexOf(a))}function tt(e,n,i,o){e&&Xe(e,et(e,n,i),o)}function He(e){return Object.getOwnPropertyNames(e).filter(n=>n.startsWith("on")&&n.length>2).map(n=>n.substring(2))}Zone.__load_patch("util",(e,n,i)=>{const o=He(e);i.patchOnProperties=Xe,i.patchMethod=le,i.bindArguments=Le,i.patchMacroTask=lt;const c=n.__symbol__("BLACK_LISTED_EVENTS"),a=n.__symbol__("UNPATCHED_EVENTS");e[a]&&(e[c]=e[a]),e[c]&&(n[c]=n[a]=e[c]),i.patchEventPrototype=_t,i.patchEventTarget=dt,i.isIEOrEdge=ft,i.ObjectDefineProperty=Ee,i.ObjectGetOwnPropertyDescriptor=ie,i.ObjectCreate=ge,i.ArraySlice=Ve,i.patchClass=ve,i.wrapWithCurrentZone=Ie,i.filterProperties=et,i.attachOriginToPatched=ue,i._redefineProperty=Object.defineProperty,i.patchCallbacks=Et,i.getGlobalObjects=()=>({globalSources:Ye,zoneSymbolEventNames:te,eventNames:o,isBrowser:Ae,isMix:Ue,isNode:we,TRUE_STR:ce,FALSE_STR:ae,ZONE_SYMBOL_PREFIX:ke,ADD_EVENT_LISTENER_STR:Se,REMOVE_EVENT_LISTENER_STR:Oe})});const Ce=j("zoneTask");function pe(e,n,i,o){let c=null,a=null;i+=o;const y={};function d(v){const p=v.data;return p.args[0]=function(){return v.invoke.apply(this,arguments)},p.handleId=c.apply(e,p.args),v}function b(v){return a.call(e,v.data.handleId)}c=le(e,n+=o,v=>function(p,M){if("function"==typeof M[0]){const Z={isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?M[1]||0:void 0,args:M},N=M[0];M[0]=function(){try{return N.apply(this,arguments)}finally{Z.isPeriodic||("number"==typeof Z.handleId?delete y[Z.handleId]:Z.handleId&&(Z.handleId[Ce]=null))}};const B=Me(n,M[0],Z,d,b);if(!B)return B;const H=B.data.handleId;return"number"==typeof H?y[H]=B:H&&(H[Ce]=B),H&&H.ref&&H.unref&&"function"==typeof H.ref&&"function"==typeof H.unref&&(B.ref=H.ref.bind(H),B.unref=H.unref.bind(H)),"number"==typeof H||H?H:B}return v.apply(e,M)}),a=le(e,i,v=>function(p,M){const Z=M[0];let N;"number"==typeof Z?N=y[Z]:(N=Z&&Z[Ce],N||(N=Z)),N&&"string"==typeof N.type?"notScheduled"!==N.state&&(N.cancelFn&&N.data.isPeriodic||0===N.runCount)&&("number"==typeof Z?delete y[Z]:Z&&(Z[Ce]=null),N.zone.cancelTask(N)):v.apply(e,M)})}Zone.__load_patch("legacy",e=>{const n=e[Zone.__symbol__("legacyPatch")];n&&n()}),Zone.__load_patch("timers",e=>{const n="set",i="clear";pe(e,n,i,"Timeout"),pe(e,n,i,"Interval"),pe(e,n,i,"Immediate")}),Zone.__load_patch("requestAnimationFrame",e=>{pe(e,"request","cancel","AnimationFrame"),pe(e,"mozRequest","mozCancel","AnimationFrame"),pe(e,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(e,n)=>{const i=["alert","prompt","confirm"];for(let o=0;ofunction(b,v){return n.current.run(a,e,v,d)})}),Zone.__load_patch("EventTarget",(e,n,i)=>{(function gt(e,n){n.patchEventPrototype(e,n)})(e,i),function mt(e,n){if(Zone[n.symbol("patchEventTarget")])return;const{eventNames:i,zoneSymbolEventNames:o,TRUE_STR:c,FALSE_STR:a,ZONE_SYMBOL_PREFIX:y}=n.getGlobalObjects();for(let b=0;b{ve("MutationObserver"),ve("WebKitMutationObserver")}),Zone.__load_patch("IntersectionObserver",(e,n,i)=>{ve("IntersectionObserver")}),Zone.__load_patch("FileReader",(e,n,i)=>{ve("FileReader")}),Zone.__load_patch("on_property",(e,n,i)=>{!function Tt(e,n){if(we&&!Ue||Zone[e.symbol("patchEvents")])return;const i=n.__Zone_ignore_on_properties;let o=[];if(Ae){const c=window;o=o.concat(["Document","SVGElement","Element","HTMLElement","HTMLBodyElement","HTMLMediaElement","HTMLFrameSetElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement","Worker"]);const a=function ut(){try{const e=Te.navigator.userAgent;if(-1!==e.indexOf("MSIE ")||-1!==e.indexOf("Trident/"))return!0}catch{}return!1}()?[{target:c,ignoreProperties:["error"]}]:[];tt(c,He(c),i&&i.concat(a),de(c))}o=o.concat(["XMLHttpRequest","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","WebSocket"]);for(let c=0;c{!function pt(e,n){const{isBrowser:i,isMix:o}=n.getGlobalObjects();(i||o)&&e.customElements&&"customElements"in e&&n.patchCallbacks(n,e.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(e,i)}),Zone.__load_patch("XHR",(e,n)=>{!function b(v){const p=v.XMLHttpRequest;if(!p)return;const M=p.prototype;let N=M[Ze],B=M[Ne];if(!N){const h=v.XMLHttpRequestEventTarget;if(h){const I=h.prototype;N=I[Ze],B=I[Ne]}}const H="readystatechange",J="scheduled";function q(h){const I=h.data,P=I.target;P[a]=!1,P[d]=!1;const Q=P[c];N||(N=P[Ze],B=P[Ne]),Q&&B.call(P,H,Q);const oe=P[c]=()=>{if(P.readyState===P.DONE)if(!I.aborted&&P[a]&&h.state===J){const U=P[n.__symbol__("loadfalse")];if(0!==P.status&&U&&U.length>0){const re=h.invoke;h.invoke=function(){const ee=P[n.__symbol__("loadfalse")];for(let W=0;Wfunction(h,I){return h[o]=0==I[2],h[y]=I[1],K.apply(h,I)}),X=j("fetchTaskAborting"),A=j("fetchTaskScheduling"),E=le(M,"send",()=>function(h,I){if(!0===n.current[A]||h[o])return E.apply(h,I);{const P={target:h,url:h[y],isPeriodic:!1,args:I,aborted:!1},Q=Me("XMLHttpRequest.send",R,P,q,_);h&&!0===h[d]&&!P.aborted&&Q.state===J&&Q.invoke()}}),G=le(M,"abort",()=>function(h,I){const P=function Z(h){return h[i]}(h);if(P&&"string"==typeof P.type){if(null==P.cancelFn||P.data&&P.data.aborted)return;P.zone.cancelTask(P)}else if(!0===n.current[X])return G.apply(h,I)})}(e);const i=j("xhrTask"),o=j("xhrSync"),c=j("xhrListener"),a=j("xhrScheduled"),y=j("xhrURL"),d=j("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",e=>{e.navigator&&e.navigator.geolocation&&function at(e,n){const i=e.constructor.name;for(let o=0;o{const b=function(){return d.apply(this,Le(arguments,i+"."+c))};return ue(b,d),b})(a)}}}(e.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(e,n)=>{function i(o){return function(c){Qe(e,o).forEach(y=>{const d=e.PromiseRejectionEvent;if(d){const b=new d(o,{promise:c.promise,reason:c.rejection});y.invoke(b)}})}}e.PromiseRejectionEvent&&(n[j("unhandledPromiseRejectionHandler")]=i("unhandledrejection"),n[j("rejectionHandledHandler")]=i("rejectionhandled"))}),Zone.__load_patch("queueMicrotask",(e,n,i)=>{!function yt(e,n){n.patchMethod(e,"queueMicrotask",i=>function(o,c){Zone.current.scheduleMicroTask("queueMicrotask",c[0])})}(e,i)})}},ie=>{ie(ie.s=321)}]); \ No newline at end of file diff --git a/docs/polyfills.f580ad6b6c609c91.js b/docs/polyfills.f580ad6b6c609c91.js deleted file mode 100644 index b3fc8280..00000000 --- a/docs/polyfills.f580ad6b6c609c91.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[429],{321:(ie,Ee,de)=>{de(332)},332:()=>{!function(t){const n=t.performance;function i(M){n&&n.mark&&n.mark(M)}function o(M,T){n&&n.measure&&n.measure(M,T)}i("Zone");const c=t.__Zone_symbol_prefix||"__zone_symbol__";function a(M){return c+M}const y=!0===t[a("forceDuplicateZoneCheck")];if(t.Zone){if(y||"function"!=typeof t.Zone.__symbol__)throw new Error("Zone already loaded.");return t.Zone}let d=(()=>{class M{static assertZonePatched(){if(t.Promise!==oe.ZoneAwarePromise)throw new Error("Zone.js has detected that ZoneAwarePromise `(window|global).Promise` has been overwritten.\nMost likely cause is that a Promise polyfill has been loaded after Zone.js (Polyfilling Promise api is not necessary when zone.js is loaded. If you must load one, do so before loading zone.js.)")}static get root(){let e=M.current;for(;e.parent;)e=e.parent;return e}static get current(){return U.zone}static get currentTask(){return re}static __load_patch(e,r,k=!1){if(oe.hasOwnProperty(e)){if(!k&&y)throw Error("Already loaded patch: "+e)}else if(!t["__Zone_disable_"+e]){const C="Zone:"+e;i(C),oe[e]=r(t,M,z),o(C,C)}}get parent(){return this._parent}get name(){return this._name}constructor(e,r){this._parent=e,this._name=r?r.name||"unnamed":"",this._properties=r&&r.properties||{},this._zoneDelegate=new v(this,this._parent&&this._parent._zoneDelegate,r)}get(e){const r=this.getZoneWith(e);if(r)return r._properties[e]}getZoneWith(e){let r=this;for(;r;){if(r._properties.hasOwnProperty(e))return r;r=r._parent}return null}fork(e){if(!e)throw new Error("ZoneSpec required!");return this._zoneDelegate.fork(this,e)}wrap(e,r){if("function"!=typeof e)throw new Error("Expecting function got: "+e);const k=this._zoneDelegate.intercept(this,e,r),C=this;return function(){return C.runGuarded(k,this,arguments,r)}}run(e,r,k,C){U={parent:U,zone:this};try{return this._zoneDelegate.invoke(this,e,r,k,C)}finally{U=U.parent}}runGuarded(e,r=null,k,C){U={parent:U,zone:this};try{try{return this._zoneDelegate.invoke(this,e,r,k,C)}catch($){if(this._zoneDelegate.handleError(this,$))throw $}}finally{U=U.parent}}runTask(e,r,k){if(e.zone!=this)throw new Error("A task can only be run in the zone of creation! (Creation: "+(e.zone||K).name+"; Execution: "+this.name+")");if(e.state===x&&(e.type===Q||e.type===P))return;const C=e.state!=E;C&&e._transitionTo(E,A),e.runCount++;const $=re;re=e,U={parent:U,zone:this};try{e.type==P&&e.data&&!e.data.isPeriodic&&(e.cancelFn=void 0);try{return this._zoneDelegate.invokeTask(this,e,r,k)}catch(l){if(this._zoneDelegate.handleError(this,l))throw l}}finally{e.state!==x&&e.state!==h&&(e.type==Q||e.data&&e.data.isPeriodic?C&&e._transitionTo(A,E):(e.runCount=0,this._updateTaskCount(e,-1),C&&e._transitionTo(x,E,x))),U=U.parent,re=$}}scheduleTask(e){if(e.zone&&e.zone!==this){let k=this;for(;k;){if(k===e.zone)throw Error(`can not reschedule task to ${this.name} which is descendants of the original zone ${e.zone.name}`);k=k.parent}}e._transitionTo(X,x);const r=[];e._zoneDelegates=r,e._zone=this;try{e=this._zoneDelegate.scheduleTask(this,e)}catch(k){throw e._transitionTo(h,X,x),this._zoneDelegate.handleError(this,k),k}return e._zoneDelegates===r&&this._updateTaskCount(e,1),e.state==X&&e._transitionTo(A,X),e}scheduleMicroTask(e,r,k,C){return this.scheduleTask(new p(I,e,r,k,C,void 0))}scheduleMacroTask(e,r,k,C,$){return this.scheduleTask(new p(P,e,r,k,C,$))}scheduleEventTask(e,r,k,C,$){return this.scheduleTask(new p(Q,e,r,k,C,$))}cancelTask(e){if(e.zone!=this)throw new Error("A task can only be cancelled in the zone of creation! (Creation: "+(e.zone||K).name+"; Execution: "+this.name+")");if(e.state===A||e.state===E){e._transitionTo(G,A,E);try{this._zoneDelegate.cancelTask(this,e)}catch(r){throw e._transitionTo(h,G),this._zoneDelegate.handleError(this,r),r}return this._updateTaskCount(e,-1),e._transitionTo(x,G),e.runCount=0,e}}_updateTaskCount(e,r){const k=e._zoneDelegates;-1==r&&(e._zoneDelegates=null);for(let C=0;CM.hasTask(e,r),onScheduleTask:(M,T,e,r)=>M.scheduleTask(e,r),onInvokeTask:(M,T,e,r,k,C)=>M.invokeTask(e,r,k,C),onCancelTask:(M,T,e,r)=>M.cancelTask(e,r)};class v{constructor(T,e,r){this._taskCounts={microTask:0,macroTask:0,eventTask:0},this.zone=T,this._parentDelegate=e,this._forkZS=r&&(r&&r.onFork?r:e._forkZS),this._forkDlgt=r&&(r.onFork?e:e._forkDlgt),this._forkCurrZone=r&&(r.onFork?this.zone:e._forkCurrZone),this._interceptZS=r&&(r.onIntercept?r:e._interceptZS),this._interceptDlgt=r&&(r.onIntercept?e:e._interceptDlgt),this._interceptCurrZone=r&&(r.onIntercept?this.zone:e._interceptCurrZone),this._invokeZS=r&&(r.onInvoke?r:e._invokeZS),this._invokeDlgt=r&&(r.onInvoke?e:e._invokeDlgt),this._invokeCurrZone=r&&(r.onInvoke?this.zone:e._invokeCurrZone),this._handleErrorZS=r&&(r.onHandleError?r:e._handleErrorZS),this._handleErrorDlgt=r&&(r.onHandleError?e:e._handleErrorDlgt),this._handleErrorCurrZone=r&&(r.onHandleError?this.zone:e._handleErrorCurrZone),this._scheduleTaskZS=r&&(r.onScheduleTask?r:e._scheduleTaskZS),this._scheduleTaskDlgt=r&&(r.onScheduleTask?e:e._scheduleTaskDlgt),this._scheduleTaskCurrZone=r&&(r.onScheduleTask?this.zone:e._scheduleTaskCurrZone),this._invokeTaskZS=r&&(r.onInvokeTask?r:e._invokeTaskZS),this._invokeTaskDlgt=r&&(r.onInvokeTask?e:e._invokeTaskDlgt),this._invokeTaskCurrZone=r&&(r.onInvokeTask?this.zone:e._invokeTaskCurrZone),this._cancelTaskZS=r&&(r.onCancelTask?r:e._cancelTaskZS),this._cancelTaskDlgt=r&&(r.onCancelTask?e:e._cancelTaskDlgt),this._cancelTaskCurrZone=r&&(r.onCancelTask?this.zone:e._cancelTaskCurrZone),this._hasTaskZS=null,this._hasTaskDlgt=null,this._hasTaskDlgtOwner=null,this._hasTaskCurrZone=null;const k=r&&r.onHasTask;(k||e&&e._hasTaskZS)&&(this._hasTaskZS=k?r:b,this._hasTaskDlgt=e,this._hasTaskDlgtOwner=this,this._hasTaskCurrZone=T,r.onScheduleTask||(this._scheduleTaskZS=b,this._scheduleTaskDlgt=e,this._scheduleTaskCurrZone=this.zone),r.onInvokeTask||(this._invokeTaskZS=b,this._invokeTaskDlgt=e,this._invokeTaskCurrZone=this.zone),r.onCancelTask||(this._cancelTaskZS=b,this._cancelTaskDlgt=e,this._cancelTaskCurrZone=this.zone))}fork(T,e){return this._forkZS?this._forkZS.onFork(this._forkDlgt,this.zone,T,e):new d(T,e)}intercept(T,e,r){return this._interceptZS?this._interceptZS.onIntercept(this._interceptDlgt,this._interceptCurrZone,T,e,r):e}invoke(T,e,r,k,C){return this._invokeZS?this._invokeZS.onInvoke(this._invokeDlgt,this._invokeCurrZone,T,e,r,k,C):e.apply(r,k)}handleError(T,e){return!this._handleErrorZS||this._handleErrorZS.onHandleError(this._handleErrorDlgt,this._handleErrorCurrZone,T,e)}scheduleTask(T,e){let r=e;if(this._scheduleTaskZS)this._hasTaskZS&&r._zoneDelegates.push(this._hasTaskDlgtOwner),r=this._scheduleTaskZS.onScheduleTask(this._scheduleTaskDlgt,this._scheduleTaskCurrZone,T,e),r||(r=e);else if(e.scheduleFn)e.scheduleFn(e);else{if(e.type!=I)throw new Error("Task is missing scheduleFn.");R(e)}return r}invokeTask(T,e,r,k){return this._invokeTaskZS?this._invokeTaskZS.onInvokeTask(this._invokeTaskDlgt,this._invokeTaskCurrZone,T,e,r,k):e.callback.apply(r,k)}cancelTask(T,e){let r;if(this._cancelTaskZS)r=this._cancelTaskZS.onCancelTask(this._cancelTaskDlgt,this._cancelTaskCurrZone,T,e);else{if(!e.cancelFn)throw Error("Task is not cancelable");r=e.cancelFn(e)}return r}hasTask(T,e){try{this._hasTaskZS&&this._hasTaskZS.onHasTask(this._hasTaskDlgt,this._hasTaskCurrZone,T,e)}catch(r){this.handleError(T,r)}}_updateTaskCount(T,e){const r=this._taskCounts,k=r[T],C=r[T]=k+e;if(C<0)throw new Error("More tasks executed then were scheduled.");0!=k&&0!=C||this.hasTask(this.zone,{microTask:r.microTask>0,macroTask:r.macroTask>0,eventTask:r.eventTask>0,change:T})}}class p{constructor(T,e,r,k,C,$){if(this._zone=null,this.runCount=0,this._zoneDelegates=null,this._state="notScheduled",this.type=T,this.source=e,this.data=k,this.scheduleFn=C,this.cancelFn=$,!r)throw new Error("callback is not defined");this.callback=r;const l=this;this.invoke=T===Q&&k&&k.useG?p.invokeTask:function(){return p.invokeTask.call(t,l,this,arguments)}}static invokeTask(T,e,r){T||(T=this),ee++;try{return T.runCount++,T.zone.runTask(T,e,r)}finally{1==ee&&_(),ee--}}get zone(){return this._zone}get state(){return this._state}cancelScheduleRequest(){this._transitionTo(x,X)}_transitionTo(T,e,r){if(this._state!==e&&this._state!==r)throw new Error(`${this.type} '${this.source}': can not transition to '${T}', expecting state '${e}'${r?" or '"+r+"'":""}, was '${this._state}'.`);this._state=T,T==x&&(this._zoneDelegates=null)}toString(){return this.data&&typeof this.data.handleId<"u"?this.data.handleId.toString():Object.prototype.toString.call(this)}toJSON(){return{type:this.type,state:this.state,source:this.source,zone:this.zone.name,runCount:this.runCount}}}const L=a("setTimeout"),Z=a("Promise"),N=a("then");let J,B=[],H=!1;function q(M){if(J||t[Z]&&(J=t[Z].resolve(0)),J){let T=J[N];T||(T=J.then),T.call(J,M)}else t[L](M,0)}function R(M){0===ee&&0===B.length&&q(_),M&&B.push(M)}function _(){if(!H){for(H=!0;B.length;){const M=B;B=[];for(let T=0;TU,onUnhandledError:W,microtaskDrainDone:W,scheduleMicroTask:R,showUncaughtError:()=>!d[a("ignoreConsoleErrorUncaughtError")],patchEventTarget:()=>[],patchOnProperties:W,patchMethod:()=>W,bindArguments:()=>[],patchThen:()=>W,patchMacroTask:()=>W,patchEventPrototype:()=>W,isIEOrEdge:()=>!1,getGlobalObjects:()=>{},ObjectDefineProperty:()=>W,ObjectGetOwnPropertyDescriptor:()=>{},ObjectCreate:()=>{},ArraySlice:()=>[],patchClass:()=>W,wrapWithCurrentZone:()=>W,filterProperties:()=>[],attachOriginToPatched:()=>W,_redefineProperty:()=>W,patchCallbacks:()=>W,nativeScheduleMicroTask:q};let U={parent:null,zone:new d(null,null)},re=null,ee=0;function W(){}o("Zone","Zone"),t.Zone=d}(typeof window<"u"&&window||typeof self<"u"&&self||global);const ie=Object.getOwnPropertyDescriptor,Ee=Object.defineProperty,de=Object.getPrototypeOf,ge=Object.create,Ve=Array.prototype.slice,Se="addEventListener",Oe="removeEventListener",Ze=Zone.__symbol__(Se),Ne=Zone.__symbol__(Oe),ce="true",ae="false",ke=Zone.__symbol__("");function Ie(t,n){return Zone.current.wrap(t,n)}function Me(t,n,i,o,c){return Zone.current.scheduleMacroTask(t,n,i,o,c)}const j=Zone.__symbol__,Pe=typeof window<"u",Te=Pe?window:void 0,Y=Pe&&Te||"object"==typeof self&&self||global,ct="removeAttribute";function Le(t,n){for(let i=t.length-1;i>=0;i--)"function"==typeof t[i]&&(t[i]=Ie(t[i],n+"_"+i));return t}function Fe(t){return!t||!1!==t.writable&&!("function"==typeof t.get&&typeof t.set>"u")}const Be=typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope,we=!("nw"in Y)&&typeof Y.process<"u"&&"[object process]"==={}.toString.call(Y.process),Ae=!we&&!Be&&!(!Pe||!Te.HTMLElement),Ue=typeof Y.process<"u"&&"[object process]"==={}.toString.call(Y.process)&&!Be&&!(!Pe||!Te.HTMLElement),Re={},We=function(t){if(!(t=t||Y.event))return;let n=Re[t.type];n||(n=Re[t.type]=j("ON_PROPERTY"+t.type));const i=this||t.target||Y,o=i[n];let c;return Ae&&i===Te&&"error"===t.type?(c=o&&o.call(this,t.message,t.filename,t.lineno,t.colno,t.error),!0===c&&t.preventDefault()):(c=o&&o.apply(this,arguments),null!=c&&!c&&t.preventDefault()),c};function qe(t,n,i){let o=ie(t,n);if(!o&&i&&ie(i,n)&&(o={enumerable:!0,configurable:!0}),!o||!o.configurable)return;const c=j("on"+n+"patched");if(t.hasOwnProperty(c)&&t[c])return;delete o.writable,delete o.value;const a=o.get,y=o.set,d=n.slice(2);let b=Re[d];b||(b=Re[d]=j("ON_PROPERTY"+d)),o.set=function(v){let p=this;!p&&t===Y&&(p=Y),p&&("function"==typeof p[b]&&p.removeEventListener(d,We),y&&y.call(p,null),p[b]=v,"function"==typeof v&&p.addEventListener(d,We,!1))},o.get=function(){let v=this;if(!v&&t===Y&&(v=Y),!v)return null;const p=v[b];if(p)return p;if(a){let L=a.call(this);if(L)return o.set.call(this,L),"function"==typeof v[ct]&&v.removeAttribute(n),L}return null},Ee(t,n,o),t[c]=!0}function Xe(t,n,i){if(n)for(let o=0;ofunction(y,d){const b=i(y,d);return b.cbIdx>=0&&"function"==typeof d[b.cbIdx]?Me(b.name,d[b.cbIdx],b,c):a.apply(y,d)})}function ue(t,n){t[j("OriginalDelegate")]=n}let ze=!1,je=!1;function ft(){if(ze)return je;ze=!0;try{const t=Te.navigator.userAgent;(-1!==t.indexOf("MSIE ")||-1!==t.indexOf("Trident/")||-1!==t.indexOf("Edge/"))&&(je=!0)}catch{}return je}Zone.__load_patch("ZoneAwarePromise",(t,n,i)=>{const o=Object.getOwnPropertyDescriptor,c=Object.defineProperty,y=i.symbol,d=[],b=!0===t[y("DISABLE_WRAPPING_UNCAUGHT_PROMISE_REJECTION")],v=y("Promise"),p=y("then"),L="__creationTrace__";i.onUnhandledError=l=>{if(i.showUncaughtError()){const u=l&&l.rejection;u?console.error("Unhandled Promise rejection:",u instanceof Error?u.message:u,"; Zone:",l.zone.name,"; Task:",l.task&&l.task.source,"; Value:",u,u instanceof Error?u.stack:void 0):console.error(l)}},i.microtaskDrainDone=()=>{for(;d.length;){const l=d.shift();try{l.zone.runGuarded(()=>{throw l.throwOriginal?l.rejection:l})}catch(u){N(u)}}};const Z=y("unhandledPromiseRejectionHandler");function N(l){i.onUnhandledError(l);try{const u=n[Z];"function"==typeof u&&u.call(this,l)}catch{}}function B(l){return l&&l.then}function H(l){return l}function J(l){return e.reject(l)}const q=y("state"),R=y("value"),_=y("finally"),K=y("parentPromiseValue"),x=y("parentPromiseState"),X="Promise.then",A=null,E=!0,G=!1,h=0;function I(l,u){return s=>{try{z(l,u,s)}catch(f){z(l,!1,f)}}}const P=function(){let l=!1;return function(s){return function(){l||(l=!0,s.apply(null,arguments))}}},Q="Promise resolved with itself",oe=y("currentTaskTrace");function z(l,u,s){const f=P();if(l===s)throw new TypeError(Q);if(l[q]===A){let g=null;try{("object"==typeof s||"function"==typeof s)&&(g=s&&s.then)}catch(w){return f(()=>{z(l,!1,w)})(),l}if(u!==G&&s instanceof e&&s.hasOwnProperty(q)&&s.hasOwnProperty(R)&&s[q]!==A)re(s),z(l,s[q],s[R]);else if(u!==G&&"function"==typeof g)try{g.call(s,f(I(l,u)),f(I(l,!1)))}catch(w){f(()=>{z(l,!1,w)})()}else{l[q]=u;const w=l[R];if(l[R]=s,l[_]===_&&u===E&&(l[q]=l[x],l[R]=l[K]),u===G&&s instanceof Error){const m=n.currentTask&&n.currentTask.data&&n.currentTask.data[L];m&&c(s,oe,{configurable:!0,enumerable:!1,writable:!0,value:m})}for(let m=0;m{try{const D=l[R],S=!!s&&_===s[_];S&&(s[K]=D,s[x]=w);const O=u.run(m,void 0,S&&m!==J&&m!==H?[]:[D]);z(s,!0,O)}catch(D){z(s,!1,D)}},s)}const M=function(){},T=t.AggregateError;class e{static toString(){return"function ZoneAwarePromise() { [native code] }"}static resolve(u){return z(new this(null),E,u)}static reject(u){return z(new this(null),G,u)}static any(u){if(!u||"function"!=typeof u[Symbol.iterator])return Promise.reject(new T([],"All promises were rejected"));const s=[];let f=0;try{for(let m of u)f++,s.push(e.resolve(m))}catch{return Promise.reject(new T([],"All promises were rejected"))}if(0===f)return Promise.reject(new T([],"All promises were rejected"));let g=!1;const w=[];return new e((m,D)=>{for(let S=0;S{g||(g=!0,m(O))},O=>{w.push(O),f--,0===f&&(g=!0,D(new T(w,"All promises were rejected")))})})}static race(u){let s,f,g=new this((D,S)=>{s=D,f=S});function w(D){s(D)}function m(D){f(D)}for(let D of u)B(D)||(D=this.resolve(D)),D.then(w,m);return g}static all(u){return e.allWithCallback(u)}static allSettled(u){return(this&&this.prototype instanceof e?this:e).allWithCallback(u,{thenCallback:f=>({status:"fulfilled",value:f}),errorCallback:f=>({status:"rejected",reason:f})})}static allWithCallback(u,s){let f,g,w=new this((O,V)=>{f=O,g=V}),m=2,D=0;const S=[];for(let O of u){B(O)||(O=this.resolve(O));const V=D;try{O.then(F=>{S[V]=s?s.thenCallback(F):F,m--,0===m&&f(S)},F=>{s?(S[V]=s.errorCallback(F),m--,0===m&&f(S)):g(F)})}catch(F){g(F)}m++,D++}return m-=2,0===m&&f(S),w}constructor(u){const s=this;if(!(s instanceof e))throw new Error("Must be an instanceof Promise.");s[q]=A,s[R]=[];try{const f=P();u&&u(f(I(s,E)),f(I(s,G)))}catch(f){z(s,!1,f)}}get[Symbol.toStringTag](){return"Promise"}get[Symbol.species](){return e}then(u,s){let f=this.constructor?.[Symbol.species];(!f||"function"!=typeof f)&&(f=this.constructor||e);const g=new f(M),w=n.current;return this[q]==A?this[R].push(w,g,u,s):ee(this,w,g,u,s),g}catch(u){return this.then(null,u)}finally(u){let s=this.constructor?.[Symbol.species];(!s||"function"!=typeof s)&&(s=e);const f=new s(M);f[_]=_;const g=n.current;return this[q]==A?this[R].push(g,f,u,u):ee(this,g,f,u,u),f}}e.resolve=e.resolve,e.reject=e.reject,e.race=e.race,e.all=e.all;const r=t[v]=t.Promise;t.Promise=e;const k=y("thenPatched");function C(l){const u=l.prototype,s=o(u,"then");if(s&&(!1===s.writable||!s.configurable))return;const f=u.then;u[p]=f,l.prototype.then=function(g,w){return new e((D,S)=>{f.call(this,D,S)}).then(g,w)},l[k]=!0}return i.patchThen=C,r&&(C(r),le(t,"fetch",l=>function $(l){return function(u,s){let f=l.apply(u,s);if(f instanceof e)return f;let g=f.constructor;return g[k]||C(g),f}}(l))),Promise[n.__symbol__("uncaughtPromiseErrors")]=d,e}),Zone.__load_patch("toString",t=>{const n=Function.prototype.toString,i=j("OriginalDelegate"),o=j("Promise"),c=j("Error"),a=function(){if("function"==typeof this){const v=this[i];if(v)return"function"==typeof v?n.call(v):Object.prototype.toString.call(v);if(this===Promise){const p=t[o];if(p)return n.call(p)}if(this===Error){const p=t[c];if(p)return n.call(p)}}return n.call(this)};a[i]=n,Function.prototype.toString=a;const y=Object.prototype.toString;Object.prototype.toString=function(){return"function"==typeof Promise&&this instanceof Promise?"[object Promise]":y.call(this)}});let ye=!1;if(typeof window<"u")try{const t=Object.defineProperty({},"passive",{get:function(){ye=!0}});window.addEventListener("test",t,t),window.removeEventListener("test",t,t)}catch{ye=!1}const ht={useG:!0},te={},Ye={},$e=new RegExp("^"+ke+"(\\w+)(true|false)$"),Ke=j("propagationStopped");function Je(t,n){const i=(n?n(t):t)+ae,o=(n?n(t):t)+ce,c=ke+i,a=ke+o;te[t]={},te[t][ae]=c,te[t][ce]=a}function dt(t,n,i,o){const c=o&&o.add||Se,a=o&&o.rm||Oe,y=o&&o.listeners||"eventListeners",d=o&&o.rmAll||"removeAllListeners",b=j(c),v="."+c+":",p="prependListener",L="."+p+":",Z=function(R,_,K){if(R.isRemoved)return;const x=R.callback;let X;"object"==typeof x&&x.handleEvent&&(R.callback=E=>x.handleEvent(E),R.originalDelegate=x);try{R.invoke(R,_,[K])}catch(E){X=E}const A=R.options;return A&&"object"==typeof A&&A.once&&_[a].call(_,K.type,R.originalDelegate?R.originalDelegate:R.callback,A),X};function N(R,_,K){if(!(_=_||t.event))return;const x=R||_.target||t,X=x[te[_.type][K?ce:ae]];if(X){const A=[];if(1===X.length){const E=Z(X[0],x,_);E&&A.push(E)}else{const E=X.slice();for(let G=0;G{throw G})}}}const B=function(R){return N(this,R,!1)},H=function(R){return N(this,R,!0)};function J(R,_){if(!R)return!1;let K=!0;_&&void 0!==_.useG&&(K=_.useG);const x=_&&_.vh;let X=!0;_&&void 0!==_.chkDup&&(X=_.chkDup);let A=!1;_&&void 0!==_.rt&&(A=_.rt);let E=R;for(;E&&!E.hasOwnProperty(c);)E=de(E);if(!E&&R[c]&&(E=R),!E||E[b])return!1;const G=_&&_.eventNameToString,h={},I=E[b]=E[c],P=E[j(a)]=E[a],Q=E[j(y)]=E[y],oe=E[j(d)]=E[d];let z;_&&_.prepend&&(z=E[j(_.prepend)]=E[_.prepend]);const e=K?function(s){if(!h.isExisting)return I.call(h.target,h.eventName,h.capture?H:B,h.options)}:function(s){return I.call(h.target,h.eventName,s.invoke,h.options)},r=K?function(s){if(!s.isRemoved){const f=te[s.eventName];let g;f&&(g=f[s.capture?ce:ae]);const w=g&&s.target[g];if(w)for(let m=0;mfunction(c,a){c[Ke]=!0,o&&o.apply(c,a)})}function Et(t,n,i,o,c){const a=Zone.__symbol__(o);if(n[a])return;const y=n[a]=n[o];n[o]=function(d,b,v){return b&&b.prototype&&c.forEach(function(p){const L=`${i}.${o}::`+p,Z=b.prototype;try{if(Z.hasOwnProperty(p)){const N=t.ObjectGetOwnPropertyDescriptor(Z,p);N&&N.value?(N.value=t.wrapWithCurrentZone(N.value,L),t._redefineProperty(b.prototype,p,N)):Z[p]&&(Z[p]=t.wrapWithCurrentZone(Z[p],L))}else Z[p]&&(Z[p]=t.wrapWithCurrentZone(Z[p],L))}catch{}}),y.call(n,d,b,v)},t.attachOriginToPatched(n[o],y)}function et(t,n,i){if(!i||0===i.length)return n;const o=i.filter(a=>a.target===t);if(!o||0===o.length)return n;const c=o[0].ignoreProperties;return n.filter(a=>-1===c.indexOf(a))}function tt(t,n,i,o){t&&Xe(t,et(t,n,i),o)}function He(t){return Object.getOwnPropertyNames(t).filter(n=>n.startsWith("on")&&n.length>2).map(n=>n.substring(2))}Zone.__load_patch("util",(t,n,i)=>{const o=He(t);i.patchOnProperties=Xe,i.patchMethod=le,i.bindArguments=Le,i.patchMacroTask=lt;const c=n.__symbol__("BLACK_LISTED_EVENTS"),a=n.__symbol__("UNPATCHED_EVENTS");t[a]&&(t[c]=t[a]),t[c]&&(n[c]=n[a]=t[c]),i.patchEventPrototype=_t,i.patchEventTarget=dt,i.isIEOrEdge=ft,i.ObjectDefineProperty=Ee,i.ObjectGetOwnPropertyDescriptor=ie,i.ObjectCreate=ge,i.ArraySlice=Ve,i.patchClass=ve,i.wrapWithCurrentZone=Ie,i.filterProperties=et,i.attachOriginToPatched=ue,i._redefineProperty=Object.defineProperty,i.patchCallbacks=Et,i.getGlobalObjects=()=>({globalSources:Ye,zoneSymbolEventNames:te,eventNames:o,isBrowser:Ae,isMix:Ue,isNode:we,TRUE_STR:ce,FALSE_STR:ae,ZONE_SYMBOL_PREFIX:ke,ADD_EVENT_LISTENER_STR:Se,REMOVE_EVENT_LISTENER_STR:Oe})});const Ce=j("zoneTask");function pe(t,n,i,o){let c=null,a=null;i+=o;const y={};function d(v){const p=v.data;return p.args[0]=function(){return v.invoke.apply(this,arguments)},p.handleId=c.apply(t,p.args),v}function b(v){return a.call(t,v.data.handleId)}c=le(t,n+=o,v=>function(p,L){if("function"==typeof L[0]){const Z={isPeriodic:"Interval"===o,delay:"Timeout"===o||"Interval"===o?L[1]||0:void 0,args:L},N=L[0];L[0]=function(){try{return N.apply(this,arguments)}finally{Z.isPeriodic||("number"==typeof Z.handleId?delete y[Z.handleId]:Z.handleId&&(Z.handleId[Ce]=null))}};const B=Me(n,L[0],Z,d,b);if(!B)return B;const H=B.data.handleId;return"number"==typeof H?y[H]=B:H&&(H[Ce]=B),H&&H.ref&&H.unref&&"function"==typeof H.ref&&"function"==typeof H.unref&&(B.ref=H.ref.bind(H),B.unref=H.unref.bind(H)),"number"==typeof H||H?H:B}return v.apply(t,L)}),a=le(t,i,v=>function(p,L){const Z=L[0];let N;"number"==typeof Z?N=y[Z]:(N=Z&&Z[Ce],N||(N=Z)),N&&"string"==typeof N.type?"notScheduled"!==N.state&&(N.cancelFn&&N.data.isPeriodic||0===N.runCount)&&("number"==typeof Z?delete y[Z]:Z&&(Z[Ce]=null),N.zone.cancelTask(N)):v.apply(t,L)})}Zone.__load_patch("legacy",t=>{const n=t[Zone.__symbol__("legacyPatch")];n&&n()}),Zone.__load_patch("queueMicrotask",(t,n,i)=>{i.patchMethod(t,"queueMicrotask",o=>function(c,a){n.current.scheduleMicroTask("queueMicrotask",a[0])})}),Zone.__load_patch("timers",t=>{const n="set",i="clear";pe(t,n,i,"Timeout"),pe(t,n,i,"Interval"),pe(t,n,i,"Immediate")}),Zone.__load_patch("requestAnimationFrame",t=>{pe(t,"request","cancel","AnimationFrame"),pe(t,"mozRequest","mozCancel","AnimationFrame"),pe(t,"webkitRequest","webkitCancel","AnimationFrame")}),Zone.__load_patch("blocking",(t,n)=>{const i=["alert","prompt","confirm"];for(let o=0;ofunction(b,v){return n.current.run(a,t,v,d)})}),Zone.__load_patch("EventTarget",(t,n,i)=>{(function mt(t,n){n.patchEventPrototype(t,n)})(t,i),function pt(t,n){if(Zone[n.symbol("patchEventTarget")])return;const{eventNames:i,zoneSymbolEventNames:o,TRUE_STR:c,FALSE_STR:a,ZONE_SYMBOL_PREFIX:y}=n.getGlobalObjects();for(let b=0;b{ve("MutationObserver"),ve("WebKitMutationObserver")}),Zone.__load_patch("IntersectionObserver",(t,n,i)=>{ve("IntersectionObserver")}),Zone.__load_patch("FileReader",(t,n,i)=>{ve("FileReader")}),Zone.__load_patch("on_property",(t,n,i)=>{!function Tt(t,n){if(we&&!Ue||Zone[t.symbol("patchEvents")])return;const i=n.__Zone_ignore_on_properties;let o=[];if(Ae){const c=window;o=o.concat(["Document","SVGElement","Element","HTMLElement","HTMLBodyElement","HTMLMediaElement","HTMLFrameSetElement","HTMLFrameElement","HTMLIFrameElement","HTMLMarqueeElement","Worker"]);const a=function ut(){try{const t=Te.navigator.userAgent;if(-1!==t.indexOf("MSIE ")||-1!==t.indexOf("Trident/"))return!0}catch{}return!1}()?[{target:c,ignoreProperties:["error"]}]:[];tt(c,He(c),i&&i.concat(a),de(c))}o=o.concat(["XMLHttpRequest","XMLHttpRequestEventTarget","IDBIndex","IDBRequest","IDBOpenDBRequest","IDBDatabase","IDBTransaction","IDBCursor","WebSocket"]);for(let c=0;c{!function yt(t,n){const{isBrowser:i,isMix:o}=n.getGlobalObjects();(i||o)&&t.customElements&&"customElements"in t&&n.patchCallbacks(n,t.customElements,"customElements","define",["connectedCallback","disconnectedCallback","adoptedCallback","attributeChangedCallback"])}(t,i)}),Zone.__load_patch("XHR",(t,n)=>{!function b(v){const p=v.XMLHttpRequest;if(!p)return;const L=p.prototype;let N=L[Ze],B=L[Ne];if(!N){const h=v.XMLHttpRequestEventTarget;if(h){const I=h.prototype;N=I[Ze],B=I[Ne]}}const H="readystatechange",J="scheduled";function q(h){const I=h.data,P=I.target;P[a]=!1,P[d]=!1;const Q=P[c];N||(N=P[Ze],B=P[Ne]),Q&&B.call(P,H,Q);const oe=P[c]=()=>{if(P.readyState===P.DONE)if(!I.aborted&&P[a]&&h.state===J){const U=P[n.__symbol__("loadfalse")];if(0!==P.status&&U&&U.length>0){const re=h.invoke;h.invoke=function(){const ee=P[n.__symbol__("loadfalse")];for(let W=0;Wfunction(h,I){return h[o]=0==I[2],h[y]=I[1],K.apply(h,I)}),X=j("fetchTaskAborting"),A=j("fetchTaskScheduling"),E=le(L,"send",()=>function(h,I){if(!0===n.current[A]||h[o])return E.apply(h,I);{const P={target:h,url:h[y],isPeriodic:!1,args:I,aborted:!1},Q=Me("XMLHttpRequest.send",R,P,q,_);h&&!0===h[d]&&!P.aborted&&Q.state===J&&Q.invoke()}}),G=le(L,"abort",()=>function(h,I){const P=function Z(h){return h[i]}(h);if(P&&"string"==typeof P.type){if(null==P.cancelFn||P.data&&P.data.aborted)return;P.zone.cancelTask(P)}else if(!0===n.current[X])return G.apply(h,I)})}(t);const i=j("xhrTask"),o=j("xhrSync"),c=j("xhrListener"),a=j("xhrScheduled"),y=j("xhrURL"),d=j("xhrErrorBeforeScheduled")}),Zone.__load_patch("geolocation",t=>{t.navigator&&t.navigator.geolocation&&function at(t,n){const i=t.constructor.name;for(let o=0;o{const b=function(){return d.apply(this,Le(arguments,i+"."+c))};return ue(b,d),b})(a)}}}(t.navigator.geolocation,["getCurrentPosition","watchPosition"])}),Zone.__load_patch("PromiseRejectionEvent",(t,n)=>{function i(o){return function(c){Qe(t,o).forEach(y=>{const d=t.PromiseRejectionEvent;if(d){const b=new d(o,{promise:c.promise,reason:c.rejection});y.invoke(b)}})}}t.PromiseRejectionEvent&&(n[j("unhandledPromiseRejectionHandler")]=i("unhandledrejection"),n[j("rejectionHandledHandler")]=i("rejectionhandled"))})}},ie=>{ie(ie.s=321)}]); \ No newline at end of file diff --git a/docs/pro.html b/docs/pro.html index 09b68adf..f14fced6 100644 --- a/docs/pro.html +++ b/docs/pro.html @@ -9,7 +9,7 @@ - + - + \ No newline at end of file diff --git a/docs/styles.0857a5ff7ab55c61.css b/docs/styles.0857a5ff7ab55c61.css new file mode 100644 index 00000000..d2d48e3e --- /dev/null +++ b/docs/styles.0857a5ff7ab55c61.css @@ -0,0 +1,10 @@ +@charset "UTF-8";/*! +* Bootstrap v5.2.3 (https://getbootstrap.com/) +* Copyright 2011-2022 The Bootstrap Authors +* Copyright 2011-2022 Twitter, Inc. +* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) +*/:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, .15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, .175);--bs-border-radius:.375rem;--bs-border-radius-sm:.25rem;--bs-border-radius-lg:.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-2xl:2rem;--bs-border-radius-pill:50rem;--bs-link-color:#0d6efd;--bs-link-hover-color:#0a58ca;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd}*,:after,:before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:1px solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:var(--bs-link-color);text-decoration:underline}a:hover{color:var(--bs-link-hover-color)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled,.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer:before{content:"\2014\a0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid var(--bs-border-color);border-radius:.375rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:#6c757d}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:.25rem}.g-1,.gy-1{--bs-gutter-y:.25rem}.g-2,.gx-2{--bs-gutter-x:.5rem}.g-2,.gy-2{--bs-gutter-y:.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-color:var(--bs-body-color);--bs-table-bg:transparent;--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-body-color);--bs-table-striped-bg:rgba(0, 0, 0, .05);--bs-table-active-color:var(--bs-body-color);--bs-table-active-bg:rgba(0, 0, 0, .1);--bs-table-hover-color:var(--bs-body-color);--bs-table-hover-bg:rgba(0, 0, 0, .075);width:100%;margin-bottom:1rem;color:var(--bs-table-color);vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:2px solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg:var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-striped-columns>:not(caption)>tr>:nth-child(2n){--bs-table-accent-bg:var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg:var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover>*{--bs-table-accent-bg:var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#bacbe6;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#000;--bs-table-bg:#e2e3e5;--bs-table-border-color:#cbccce;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color:#000;--bs-table-bg:#d1e7dd;--bs-table-border-color:#bcd0c7;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#000;--bs-table-bg:#cff4fc;--bs-table-border-color:#badce3;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color:#000;--bs-table-bg:#fff3cd;--bs-table-border-color:#e6dbb9;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#000;--bs-table-bg:#f8d7da;--bs-table-border-color:#dfc2c4;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color:#000;--bs-table-bg:#f8f9fa;--bs-table-border-color:#dfe0e1;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#373b3e;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:#6c757d}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;appearance:none;border-radius:.375rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#212529;background-color:#fff;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;border-radius:.25rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{width:3rem;height:calc(1.5em + .75rem + 2px);padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:.375rem}.form-control-color::-webkit-color-swatch{border-radius:.375rem}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + 2px)}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + 2px)}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #ced4da;border-radius:.375rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #212529}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:.25rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:.5rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);appearance:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:transparent;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem #0d6efd40}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem #0d6efd40}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;width:100%;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:1px solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown),.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:-webkit-autofill,.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext~label,.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>.form-control-plaintext~label{border-width:1px 0}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.375rem}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:.25rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:#198754e6;border-radius:.375rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#198754;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem #19875440}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:#198754}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem #19875440}.form-control-color.is-valid,.was-validated .form-control-color:valid{width:calc(3.75rem + 1.5em)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:#198754}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:#198754}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem #19875440}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:#dc3545e6;border-radius:.375rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem #dc354540}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:#dc3545}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem #dc354540}.form-control-color.is-invalid,.was-validated .form-control-color:invalid{width:calc(3.75rem + 1.5em)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:#dc3545}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:#dc3545}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem #dc354540}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid{z-index:4}.btn{--bs-btn-padding-x:.75rem;--bs-btn-padding-y:.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:#212529;--bs-btn-bg:transparent;--bs-btn-border-width:1px;--bs-btn-border-color:transparent;--bs-btn-border-radius:.375rem;--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 rgba(255, 255, 255, .15),0 1px 1px rgba(0, 0, 0, .075);--bs-btn-disabled-opacity:.65;--bs-btn-focus-box-shadow:0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#5c636a;--bs-btn-hover-border-color:#565e64;--bs-btn-focus-shadow-rgb:130,138,145;--bs-btn-active-color:#fff;--bs-btn-active-bg:#565e64;--bs-btn-active-border-color:#51585e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#6c757d;--bs-btn-disabled-border-color:#6c757d}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#157347;--bs-btn-hover-border-color:#146c43;--bs-btn-focus-shadow-rgb:60,153,110;--bs-btn-active-color:#fff;--bs-btn-active-bg:#146c43;--bs-btn-active-border-color:#13653f;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#198754;--bs-btn-disabled-border-color:#198754}.btn-info{--bs-btn-color:#000;--bs-btn-bg:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#31d2f2;--bs-btn-hover-border-color:#25cff2;--bs-btn-focus-shadow-rgb:11,172,204;--bs-btn-active-color:#000;--bs-btn-active-bg:#3dd5f3;--bs-btn-active-border-color:#25cff2;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#0dcaf0;--bs-btn-disabled-border-color:#0dcaf0}.btn-warning{--bs-btn-color:#000;--bs-btn-bg:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffca2c;--bs-btn-hover-border-color:#ffc720;--bs-btn-focus-shadow-rgb:217,164,6;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffcd39;--bs-btn-active-border-color:#ffc720;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#ffc107;--bs-btn-disabled-border-color:#ffc107}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#bb2d3b;--bs-btn-hover-border-color:#b02a37;--bs-btn-focus-shadow-rgb:225,83,97;--bs-btn-active-color:#fff;--bs-btn-active-bg:#b02a37;--bs-btn-active-border-color:#a52834;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#dc3545;--bs-btn-disabled-border-color:#dc3545}.btn-light{--bs-btn-color:#000;--bs-btn-bg:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#d3d4d5;--bs-btn-hover-border-color:#c6c7c8;--bs-btn-focus-shadow-rgb:211,212,213;--bs-btn-active-color:#000;--bs-btn-active-bg:#c6c7c8;--bs-btn-active-border-color:#babbbc;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-primary{--bs-btn-color:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0d6efd;--bs-btn-hover-border-color:#0d6efd;--bs-btn-focus-shadow-rgb:13,110,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0d6efd;--bs-btn-active-border-color:#0d6efd;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#0d6efd;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0d6efd;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#6c757d;--bs-btn-hover-border-color:#6c757d;--bs-btn-focus-shadow-rgb:108,117,125;--bs-btn-active-color:#fff;--bs-btn-active-bg:#6c757d;--bs-btn-active-border-color:#6c757d;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#6c757d;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#198754;--bs-btn-hover-border-color:#198754;--bs-btn-focus-shadow-rgb:25,135,84;--bs-btn-active-color:#fff;--bs-btn-active-bg:#198754;--bs-btn-active-border-color:#198754;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#198754;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#198754;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#0dcaf0;--bs-btn-hover-border-color:#0dcaf0;--bs-btn-focus-shadow-rgb:13,202,240;--bs-btn-active-color:#000;--bs-btn-active-bg:#0dcaf0;--bs-btn-active-border-color:#0dcaf0;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#0dcaf0;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0dcaf0;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffc107;--bs-btn-hover-border-color:#ffc107;--bs-btn-focus-shadow-rgb:255,193,7;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffc107;--bs-btn-active-border-color:#ffc107;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#ffc107;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#ffc107;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#dc3545;--bs-btn-hover-border-color:#dc3545;--bs-btn-focus-shadow-rgb:220,53,69;--bs-btn-active-color:#fff;--bs-btn-active-bg:#dc3545;--bs-btn-active-border-color:#dc3545;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#dc3545;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#dc3545;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#212529;--bs-btn-hover-border-color:#212529;--bs-btn-focus-shadow-rgb:33,37,41;--bs-btn-active-color:#fff;--bs-btn-active-bg:#212529;--bs-btn-active-border-color:#212529;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#212529;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#212529;--bs-gradient:none}.btn-link{--bs-btn-font-weight:400;--bs-btn-color:var(--bs-link-color);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-color:var(--bs-link-hover-color);--bs-btn-hover-border-color:transparent;--bs-btn-active-color:var(--bs-link-hover-color);--bs-btn-active-border-color:transparent;--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:none;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-group-lg>.btn,.btn-lg{--bs-btn-padding-y:.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius:.5rem}.btn-group-sm>.btn,.btn-sm{--bs-btn-padding-y:.25rem;--bs-btn-padding-x:.5rem;--bs-btn-font-size:.875rem;--bs-btn-border-radius:.25rem}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:.5rem;--bs-dropdown-spacer:.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:#212529;--bs-dropdown-bg:#fff;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:.375rem;--bs-dropdown-border-width:1px;--bs-dropdown-inner-border-radius:calc(.375rem - 1px);--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:.5rem;--bs-dropdown-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-dropdown-link-color:#212529;--bs-dropdown-link-hover-color:#1e2125;--bs-dropdown-link-hover-bg:#e9ecef;--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-toggle:after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle:after{display:none}.dropstart .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty:after{margin-left:0}.dropstart .dropdown-toggle:before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:rgba(255, 255, 255, .15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:.375rem}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropend .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropstart .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:#6c757d;display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:1px;--bs-nav-tabs-border-color:#dee2e6;--bs-nav-tabs-border-radius:.375rem;--bs-nav-tabs-link-hover-border-color:#e9ecef #e9ecef #dee2e6;--bs-nav-tabs-link-active-color:#495057;--bs-nav-tabs-link-active-bg:#fff;--bs-nav-tabs-link-active-border-color:#dee2e6 #dee2e6 #fff;border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));background:0 0;border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius:.375rem;--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-pills .nav-link{background:0 0;border:0;border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:.5rem;--bs-navbar-color:rgba(0, 0, 0, .55);--bs-navbar-hover-color:rgba(0, 0, 0, .7);--bs-navbar-disabled-color:rgba(0, 0, 0, .3);--bs-navbar-active-color:rgba(0, 0, 0, .9);--bs-navbar-brand-padding-y:.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(0, 0, 0, .9);--bs-navbar-brand-hover-color:rgba(0, 0, 0, .9);--bs-navbar-nav-link-padding-x:.5rem;--bs-navbar-toggler-padding-y:.25rem;--bs-navbar-toggler-padding-x:.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color:rgba(0, 0, 0, .1);--bs-navbar-toggler-border-radius:.375rem;--bs-navbar-toggler-focus-width:.25rem;--bs-navbar-toggler-transition:box-shadow .15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .show>.nav-link{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark{--bs-navbar-color:rgba(255, 255, 255, .55);--bs-navbar-hover-color:rgba(255, 255, 255, .75);--bs-navbar-disabled-color:rgba(255, 255, 255, .25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255, 255, 255, .1);--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:.5rem;--bs-card-border-width:1px;--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:.375rem;--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(.375rem - 1px);--bs-card-cap-padding-y:.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(0, 0, 0, .03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:#fff;--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;inset:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion{--bs-accordion-color:#212529;--bs-accordion-bg:#fff;--bs-accordion-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease;--bs-accordion-border-color:var(--bs-border-color);--bs-accordion-border-width:1px;--bs-accordion-border-radius:.375rem;--bs-accordion-inner-border-radius:calc(.375rem - 1px);--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:#212529;--bs-accordion-btn-bg:var(--bs-accordion-bg);--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width:1.25rem;--bs-accordion-btn-icon-transform:rotate(-180deg);--bs-accordion-btn-icon-transition:transform .2s ease-in-out;--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color:#86b7fe;--bs-accordion-btn-focus-box-shadow:0 0 0 .25rem rgba(13, 110, 253, .25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:#0c63e4;--bs-accordion-active-bg:#e7f1ff}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed):after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button:after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion:reduce){.accordion-button:after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}.breadcrumb{--bs-breadcrumb-padding-x:0;--bs-breadcrumb-padding-y:0;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color:#6c757d;--bs-breadcrumb-item-padding-x:.5rem;--bs-breadcrumb-item-active-color:#6c757d;display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item:before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/")}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x:.75rem;--bs-pagination-padding-y:.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color:var(--bs-link-color);--bs-pagination-bg:#fff;--bs-pagination-border-width:1px;--bs-pagination-border-color:#dee2e6;--bs-pagination-border-radius:.375rem;--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:#e9ecef;--bs-pagination-hover-border-color:#dee2e6;--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:#e9ecef;--bs-pagination-focus-box-shadow:0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#0d6efd;--bs-pagination-active-border-color:#0d6efd;--bs-pagination-disabled-color:#6c757d;--bs-pagination-disabled-bg:#fff;--bs-pagination-disabled-border-color:#dee2e6;display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.active>.page-link,.page-link.active{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.disabled>.page-link,.page-link.disabled{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x:1.5rem;--bs-pagination-padding-y:.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius:.5rem}.pagination-sm{--bs-pagination-padding-x:.5rem;--bs-pagination-padding-y:.25rem;--bs-pagination-font-size:.875rem;--bs-pagination-border-radius:.25rem}.badge{--bs-badge-padding-x:.65em;--bs-badge-padding-y:.35em;--bs-badge-font-size:.75em;--bs-badge-font-weight:700;--bs-badge-color:#fff;--bs-badge-border-radius:.375rem;display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:1px solid var(--bs-alert-border-color);--bs-alert-border-radius:.375rem;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{--bs-alert-color:#084298;--bs-alert-bg:#cfe2ff;--bs-alert-border-color:#b6d4fe}.alert-primary .alert-link{color:#06357a}.alert-secondary{--bs-alert-color:#41464b;--bs-alert-bg:#e2e3e5;--bs-alert-border-color:#d3d6d8}.alert-secondary .alert-link{color:#34383c}.alert-success{--bs-alert-color:#0f5132;--bs-alert-bg:#d1e7dd;--bs-alert-border-color:#badbcc}.alert-success .alert-link{color:#0c4128}.alert-info{--bs-alert-color:#055160;--bs-alert-bg:#cff4fc;--bs-alert-border-color:#b6effb}.alert-info .alert-link{color:#04414d}.alert-warning{--bs-alert-color:#664d03;--bs-alert-bg:#fff3cd;--bs-alert-border-color:#ffecb5}.alert-warning .alert-link{color:#523e02}.alert-danger{--bs-alert-color:#842029;--bs-alert-bg:#f8d7da;--bs-alert-border-color:#f5c2c7}.alert-danger .alert-link{color:#6a1a21}.alert-light{--bs-alert-color:#636464;--bs-alert-bg:#fefefe;--bs-alert-border-color:#fdfdfe}.alert-light .alert-link{color:#4f5050}.alert-dark{--bs-alert-color:#141619;--bs-alert-bg:#d3d3d4;--bs-alert-border-color:#bcbebf}.alert-dark .alert-link{color:#101214}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{--bs-progress-height:1rem;--bs-progress-font-size:.75rem;--bs-progress-bg:#e9ecef;--bs-progress-border-radius:.375rem;--bs-progress-box-shadow:inset 0 1px 2px rgba(0, 0, 0, .075);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#0d6efd;--bs-progress-bar-transition:width .6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color:#212529;--bs-list-group-bg:#fff;--bs-list-group-border-color:rgba(0, 0, 0, .125);--bs-list-group-border-width:1px;--bs-list-group-border-radius:.375rem;--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:.5rem;--bs-list-group-action-color:#495057;--bs-list-group-action-hover-color:#495057;--bs-list-group-action-hover-bg:#f8f9fa;--bs-list-group-action-active-color:#212529;--bs-list-group-action-active-bg:#e9ecef;--bs-list-group-disabled-color:#6c757d;--bs-list-group-disabled-bg:#fff;--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item:before{content:counters(section,".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#084298;background-color:#cfe2ff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#084298;background-color:#bacbe6}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#084298;border-color:#084298}.list-group-item-secondary{color:#41464b;background-color:#e2e3e5}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#41464b;background-color:#cbccce}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#41464b;border-color:#41464b}.list-group-item-success{color:#0f5132;background-color:#d1e7dd}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#0f5132;background-color:#bcd0c7}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#0f5132;border-color:#0f5132}.list-group-item-info{color:#055160;background-color:#cff4fc}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#055160;background-color:#badce3}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#055160;border-color:#055160}.list-group-item-warning{color:#664d03;background-color:#fff3cd}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#664d03;background-color:#e6dbb9}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#664d03;border-color:#664d03}.list-group-item-danger{color:#842029;background-color:#f8d7da}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#842029;background-color:#dfc2c4}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#842029;border-color:#842029}.list-group-item-light{color:#636464;background-color:#fefefe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#636464;background-color:#e5e5e5}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#636464;border-color:#636464}.list-group-item-dark{color:#141619;background-color:#d3d3d4}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#141619;background-color:#bebebf}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#141619;border-color:#141619}.btn-close{box-sizing:content-box;width:1em;height:1em;padding:.25em;color:#000;background:transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:.5}.btn-close:hover{color:#000;text-decoration:none;opacity:.75}.btn-close:focus{outline:0;box-shadow:0 0 0 .25rem #0d6efd40;opacity:1}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:.75rem;--bs-toast-padding-y:.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:.875rem;--bs-toast-color: ;--bs-toast-bg:rgba(255, 255, 255, .85);--bs-toast-border-width:1px;--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:.375rem;--bs-toast-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-toast-header-color:#6c757d;--bs-toast-header-bg:rgba(255, 255, 255, .85);--bs-toast-header-border-color:rgba(0, 0, 0, .05);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex:1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:.5rem;--bs-modal-color: ;--bs-modal-bg:#fff;--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:1px;--bs-modal-border-radius:.5rem;--bs-modal-box-shadow:0 .125rem .25rem rgba(0, 0, 0, .075);--bs-modal-inner-border-radius:calc(.5rem - 1px);--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:1px;--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:1px;position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{--bs-modal-width:800px}}@media (min-width:1200px){.modal-xl{--bs-modal-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-footer,.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-footer,.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-footer,.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-footer,.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-footer,.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-footer,.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:.5rem;--bs-tooltip-padding-y:.25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:.875rem;--bs-tooltip-color:#fff;--bs-tooltip-bg:#000;--bs-tooltip-border-radius:.375rem;--bs-tooltip-opacity:.9;--bs-tooltip-arrow-width:.8rem;--bs-tooltip-arrow-height:.4rem;z-index:var(--bs-tooltip-zindex);display:block;padding:var(--bs-tooltip-arrow-height);margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before,.bs-tooltip-top .tooltip-arrow:before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:0;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before,.bs-tooltip-end .tooltip-arrow:before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before,.bs-tooltip-bottom .tooltip-arrow:before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:0;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before,.bs-tooltip-start .tooltip-arrow:before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:.875rem;--bs-popover-bg:#fff;--bs-popover-border-width:1px;--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:.5rem;--bs-popover-inner-border-radius:calc(.5rem - 1px);--bs-popover-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: ;--bs-popover-header-bg:#f0f0f0;--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:#212529;--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow:after,.popover .popover-arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:after,.bs-popover-top>.popover-arrow:before{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-top>.popover-arrow:after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:after,.bs-popover-end>.popover-arrow:before{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-end>.popover-arrow:after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:before{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:after,.bs-popover-start>.popover-arrow:before{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-start>.popover-arrow:after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translate(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translate(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%;list-style:none}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}.spinner-border,.spinner-grow{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-.125em;--bs-spinner-border-width:.25em;--bs-spinner-animation-speed:.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-.125em;--bs-spinner-animation-speed:.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.offcanvas,.offcanvas-lg,.offcanvas-md,.offcanvas-sm,.offcanvas-xl,.offcanvas-xxl{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color: ;--bs-offcanvas-bg:#fff;--bs-offcanvas-border-width:1px;--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:0 .125rem .25rem rgba(0, 0, 0, .075)}@media (max-width:575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:575.98px) and (prefers-reduced-motion:reduce){.offcanvas-sm{transition:none}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:575.98px){.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{transform:none}}@media (max-width:575.98px){.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.showing{visibility:visible}}@media (min-width:576px){.offcanvas-sm{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:767.98px) and (prefers-reduced-motion:reduce){.offcanvas-md{transition:none}}@media (max-width:767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:767.98px){.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{transform:none}}@media (max-width:767.98px){.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.showing{visibility:visible}}@media (min-width:768px){.offcanvas-md{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:991.98px) and (prefers-reduced-motion:reduce){.offcanvas-lg{transition:none}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:991.98px){.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{transform:none}}@media (max-width:991.98px){.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.showing{visibility:visible}}@media (min-width:992px){.offcanvas-lg{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:1199.98px) and (prefers-reduced-motion:reduce){.offcanvas-xl{transition:none}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:1199.98px){.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{transform:none}}@media (max-width:1199.98px){.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.showing{visibility:visible}}@media (min-width:1200px){.offcanvas-xl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:1399.98px) and (prefers-reduced-motion:reduce){.offcanvas-xxl{transition:none}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:1399.98px){.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{transform:none}}@media (max-width:1399.98px){.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.showing{visibility:visible}}@media (min-width:1400px){.offcanvas-xxl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.show:not(.hiding),.offcanvas.showing{transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin-top:calc(-.5 * var(--bs-offcanvas-padding-y));margin-right:calc(-.5 * var(--bs-offcanvas-padding-x));margin-bottom:calc(-.5 * var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn:before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{to{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.clearfix:after{display:block;clear:both;content:""}.text-bg-primary{color:#fff!important;background-color:RGBA(13,110,253,var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(108,117,125,var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(25,135,84,var(--bs-bg-opacity,1))!important}.text-bg-info{color:#000!important;background-color:RGBA(13,202,240,var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(255,193,7,var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(220,53,69,var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(248,249,250,var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(33,37,41,var(--bs-bg-opacity,1))!important}.link-primary{color:#0d6efd!important}.link-primary:focus,.link-primary:hover{color:#0a58ca!important}.link-secondary{color:#6c757d!important}.link-secondary:focus,.link-secondary:hover{color:#565e64!important}.link-success{color:#198754!important}.link-success:focus,.link-success:hover{color:#146c43!important}.link-info{color:#0dcaf0!important}.link-info:focus,.link-info:hover{color:#3dd5f3!important}.link-warning{color:#ffc107!important}.link-warning:focus,.link-warning:hover{color:#ffcd39!important}.link-danger{color:#dc3545!important}.link-danger:focus,.link-danger:hover{color:#b02a37!important}.link-light{color:#f8f9fa!important}.link-light:focus,.link-light:hover{color:#f9fafb!important}.link-dark{color:#212529!important}.link-dark:focus,.link-dark:hover{color:#1a1e21!important}.ratio{position:relative;width:100%}.ratio:before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.stretched-link:after{position:absolute;inset:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:0 .5rem 1rem #00000026!important}.shadow-sm{box-shadow:0 .125rem .25rem #00000013!important}.shadow-lg{box-shadow:0 1rem 3rem #0000002d!important}.shadow-none{box-shadow:none!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translate(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{--bs-border-opacity:1;border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-secondary{--bs-border-opacity:1;border-color:rgba(var(--bs-secondary-rgb),var(--bs-border-opacity))!important}.border-success{--bs-border-opacity:1;border-color:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important}.border-info{--bs-border-opacity:1;border-color:rgba(var(--bs-info-rgb),var(--bs-border-opacity))!important}.border-warning{--bs-border-opacity:1;border-color:rgba(var(--bs-warning-rgb),var(--bs-border-opacity))!important}.border-danger{--bs-border-opacity:1;border-color:rgba(var(--bs-danger-rgb),var(--bs-border-opacity))!important}.border-light{--bs-border-opacity:1;border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{--bs-border-opacity:1;border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-white{--bs-border-opacity:1;border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-1{--bs-border-width:1px}.border-2{--bs-border-width:2px}.border-3{--bs-border-width:3px}.border-4{--bs-border-width:4px}.border-5{--bs-border-width:5px}.border-opacity-10{--bs-border-opacity:.1}.border-opacity-25{--bs-border-opacity:.25}.border-opacity-50{--bs-border-opacity:.5}.border-opacity-75{--bs-border-opacity:.75}.border-opacity-100{--bs-border-opacity:1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-light{font-weight:300!important}.fw-lighter{font-weight:lighter!important}.fw-normal{font-weight:400!important}.fw-bold{font-weight:700!important}.fw-semibold{font-weight:600!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:#6c757d!important}.text-black-50{--bs-text-opacity:1;color:#00000080!important}.text-white-50{--bs-text-opacity:1;color:#ffffff80!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:.25}.text-opacity-50{--bs-text-opacity:.5}.text-opacity-75{--bs-text-opacity:.75}.text-opacity-100{--bs-text-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-opacity-10{--bs-bg-opacity:.1}.bg-opacity-25{--bs-bg-opacity:.25}.bg-opacity-50{--bs-bg-opacity:.5}.bg-opacity-75{--bs-bg-opacity:.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-2xl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.rounded-top{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}/*! + * Font Awesome Free 6.0.0 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2022 Fonticons, Inc. + */.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-duotone,.fa-light,.fa-regular,.fa-solid,.fa-thin,.fab,.fad,.fal,.far,.fas,.fat{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0:before{content:"0"}.fa-1:before{content:"1"}.fa-2:before{content:"2"}.fa-3:before{content:"3"}.fa-4:before{content:"4"}.fa-5:before{content:"5"}.fa-6:before{content:"6"}.fa-7:before{content:"7"}.fa-8:before{content:"8"}.fa-9:before{content:"9"}.fa-a:before{content:"A"}.fa-address-book:before,.fa-contact-book:before{content:"\f2b9"}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:"\f2bb"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-anchor:before{content:"\f13d"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-double-down:before,.fa-angles-down:before{content:"\f103"}.fa-angle-double-left:before,.fa-angles-left:before{content:"\f100"}.fa-angle-double-right:before,.fa-angles-right:before{content:"\f101"}.fa-angle-double-up:before,.fa-angles-up:before{content:"\f102"}.fa-ankh:before{content:"\f644"}.fa-apple-alt:before,.fa-apple-whole:before{content:"\f5d1"}.fa-archway:before{content:"\f557"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:"\f162"}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:"\f15d"}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:"\f175"}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:"\f884"}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:"\f160"}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:"\f177"}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:"\f245"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:"\f0ec"}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:"\f08b"}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:"\f178"}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:"\f090"}.fa-arrow-left-rotate:before,.fa-arrow-rotate-back:before,.fa-arrow-rotate-backward:before,.fa-arrow-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:"\f01e"}.fa-arrow-trend-down:before{content:"\e097"}.fa-arrow-trend-up:before{content:"\e098"}.fa-arrow-turn-down:before,.fa-level-down:before{content:"\f149"}.fa-arrow-turn-up:before,.fa-level-up:before{content:"\f148"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:"\f163"}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:"\f15e"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:"\f176"}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:"\f08e"}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:"\f885"}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:"\f161"}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-arrows-h:before,.fa-arrows-left-right:before{content:"\f07e"}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:"\f021"}.fa-arrows-up-down:before,.fa-arrows-v:before{content:"\f07d"}.fa-arrows-up-down-left-right:before,.fa-arrows:before{content:"\f047"}.fa-asterisk:before{content:"*"}.fa-at:before{content:"@"}.fa-atom:before{content:"\f5d2"}.fa-audio-description:before{content:"\f29e"}.fa-austral-sign:before{content:"\e0a9"}.fa-award:before{content:"\f559"}.fa-b:before{content:"B"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before,.fa-carriage-baby:before{content:"\f77d"}.fa-backward:before{content:"\f04a"}.fa-backward-fast:before,.fa-fast-backward:before{content:"\f049"}.fa-backward-step:before,.fa-step-backward:before{content:"\f048"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\e059"}.fa-bacterium:before{content:"\e05a"}.fa-bag-shopping:before,.fa-shopping-bag:before{content:"\f290"}.fa-bahai:before{content:"\f666"}.fa-baht-sign:before{content:"\e0ac"}.fa-ban:before,.fa-cancel:before{content:"\f05e"}.fa-ban-smoking:before,.fa-smoking-ban:before{content:"\f54d"}.fa-band-aid:before,.fa-bandage:before{content:"\f462"}.fa-barcode:before{content:"\f02a"}.fa-bars:before,.fa-navicon:before{content:"\f0c9"}.fa-bars-progress:before,.fa-tasks-alt:before{content:"\f828"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-baseball-ball:before,.fa-baseball:before{content:"\f433"}.fa-baseball-bat-ball:before{content:"\f432"}.fa-basket-shopping:before,.fa-shopping-basket:before{content:"\f291"}.fa-basketball-ball:before,.fa-basketball:before{content:"\f434"}.fa-bath:before,.fa-bathtub:before{content:"\f2cd"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-battery-5:before,.fa-battery-full:before,.fa-battery:before{content:"\f240"}.fa-battery-3:before,.fa-battery-half:before{content:"\f242"}.fa-battery-2:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-4:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-bed:before{content:"\f236"}.fa-bed-pulse:before,.fa-procedures:before{content:"\f487"}.fa-beer-mug-empty:before,.fa-beer:before{content:"\f0fc"}.fa-bell:before{content:"\f0f3"}.fa-bell-concierge:before,.fa-concierge-bell:before{content:"\f562"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bicycle:before{content:"\f206"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-bitcoin-sign:before{content:"\e0b4"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blog:before{content:"\f781"}.fa-bold:before{content:"\f032"}.fa-bolt:before,.fa-zap:before{content:"\f0e7"}.fa-bolt-lightning:before{content:"\e0b7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-atlas:before,.fa-book-atlas:before{content:"\f558"}.fa-bible:before,.fa-book-bible:before{content:"\f647"}.fa-book-journal-whills:before,.fa-journal-whills:before{content:"\f66a"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-open-reader:before,.fa-book-reader:before{content:"\f5da"}.fa-book-quran:before,.fa-quran:before{content:"\f687"}.fa-book-dead:before,.fa-book-skull:before{content:"\f6b7"}.fa-bookmark:before{content:"\f02e"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before,.fa-border-top-left:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-archive:before,.fa-box-archive:before{content:"\f187"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\e05b"}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-brazilian-real-sign:before{content:"\e46c"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broom:before{content:"\f51a"}.fa-broom-ball:before,.fa-quidditch-broom-ball:before,.fa-quidditch:before{content:"\f458"}.fa-brush:before{content:"\f55d"}.fa-bug:before{content:"\f188"}.fa-bug-slash:before{content:"\e490"}.fa-building:before{content:"\f1ad"}.fa-bank:before,.fa-building-columns:before,.fa-institution:before,.fa-museum:before,.fa-university:before{content:"\f19c"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burger:before,.fa-hamburger:before{content:"\f805"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before,.fa-bus-simple:before{content:"\f55e"}.fa-briefcase-clock:before,.fa-business-time:before{content:"\f64a"}.fa-c:before{content:"C"}.fa-birthday-cake:before,.fa-cake-candles:before,.fa-cake:before{content:"\f1fd"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-alt:before,.fa-calendar-days:before{content:"\f073"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-week:before{content:"\f784"}.fa-calendar-times:before,.fa-calendar-xmark:before{content:"\f273"}.fa-camera-alt:before,.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-camera-rotate:before{content:"\e0d8"}.fa-campground:before{content:"\f6bb"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-battery-car:before,.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-alt:before,.fa-car-rear:before{content:"\f5de"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-flatbed:before,.fa-dolly-flatbed:before{content:"\f474"}.fa-cart-flatbed-suitcase:before,.fa-luggage-cart:before{content:"\f59d"}.fa-cart-plus:before{content:"\f217"}.fa-cart-shopping:before,.fa-shopping-cart:before{content:"\f07a"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cedi-sign:before{content:"\e0df"}.fa-cent-sign:before{content:"\e3f5"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-blackboard:before,.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before,.fa-chalkboard-user:before{content:"\f51c"}.fa-champagne-glasses:before,.fa-glass-cheers:before{content:"\f79f"}.fa-charging-station:before{content:"\f5e7"}.fa-area-chart:before,.fa-chart-area:before{content:"\f1fe"}.fa-bar-chart:before,.fa-chart-bar:before{content:"\f080"}.fa-chart-column:before{content:"\e0e3"}.fa-chart-gantt:before{content:"\e0e4"}.fa-chart-line:before,.fa-line-chart:before{content:"\f201"}.fa-chart-pie:before,.fa-pie-chart:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-double:before{content:"\f560"}.fa-check-to-slot:before,.fa-vote-yea:before{content:"\f772"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:"\f0ab"}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:"\f0a8"}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:"\f0a9"}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:"\f0aa"}.fa-check-circle:before,.fa-circle-check:before{content:"\f058"}.fa-chevron-circle-down:before,.fa-circle-chevron-down:before{content:"\f13a"}.fa-chevron-circle-left:before,.fa-circle-chevron-left:before{content:"\f137"}.fa-chevron-circle-right:before,.fa-circle-chevron-right:before{content:"\f138"}.fa-chevron-circle-up:before,.fa-circle-chevron-up:before{content:"\f139"}.fa-circle-dollar-to-slot:before,.fa-donate:before{content:"\f4b9"}.fa-circle-dot:before,.fa-dot-circle:before{content:"\f192"}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:"\f358"}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:"\f06a"}.fa-circle-h:before,.fa-hospital-symbol:before{content:"\f47e"}.fa-adjust:before,.fa-circle-half-stroke:before{content:"\f042"}.fa-circle-info:before,.fa-info-circle:before{content:"\f05a"}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:"\f359"}.fa-circle-minus:before,.fa-minus-circle:before{content:"\f056"}.fa-circle-notch:before{content:"\f1ce"}.fa-circle-pause:before,.fa-pause-circle:before{content:"\f28b"}.fa-circle-play:before,.fa-play-circle:before{content:"\f144"}.fa-circle-plus:before,.fa-plus-circle:before{content:"\f055"}.fa-circle-question:before,.fa-question-circle:before{content:"\f059"}.fa-circle-radiation:before,.fa-radiation-alt:before{content:"\f7ba"}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:"\f35a"}.fa-circle-stop:before,.fa-stop-circle:before{content:"\f28d"}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:"\f35b"}.fa-circle-user:before,.fa-user-circle:before{content:"\f2bd"}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:"\f057"}.fa-city:before{content:"\f64f"}.fa-clapperboard:before{content:"\e131"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock-four:before,.fa-clock:before{content:"\f017"}.fa-clock-rotate-left:before,.fa-history:before{content:"\f1da"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:"\f0ee"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-clover:before{content:"\e139"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-code-commit:before{content:"\f386"}.fa-code-compare:before{content:"\e13a"}.fa-code-fork:before{content:"\e13b"}.fa-code-merge:before{content:"\f387"}.fa-code-pull-request:before{content:"\e13c"}.fa-coins:before{content:"\f51e"}.fa-colon-sign:before{content:"\e140"}.fa-comment:before{content:"\f075"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before,.fa-commenting:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comment-sms:before,.fa-sms:before{content:"\f7cd"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compass-drafting:before,.fa-drafting-compass:before{content:"\f568"}.fa-compress:before{content:"\f066"}.fa-computer-mouse:before,.fa-mouse:before{content:"\f8cc"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-couch:before{content:"\f4b8"}.fa-credit-card-alt:before,.fa-credit-card:before{content:"\f09d"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before,.fa-crop-simple:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-cruzeiro-sign:before{content:"\e152"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-d:before{content:"D"}.fa-database:before{content:"\f1c0"}.fa-backspace:before,.fa-delete-left:before{content:"\f55a"}.fa-democrat:before{content:"\f747"}.fa-desktop-alt:before,.fa-desktop:before{content:"\f390"}.fa-dharmachakra:before{content:"\f655"}.fa-diagram-next:before{content:"\e476"}.fa-diagram-predecessor:before{content:"\e477"}.fa-diagram-project:before,.fa-project-diagram:before{content:"\f542"}.fa-diagram-successor:before{content:"\e47a"}.fa-diamond:before{content:"\f219"}.fa-diamond-turn-right:before,.fa-directions:before{content:"\f5eb"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dna:before{content:"\f471"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before,.fa-dollar:before,.fa-usd:before{content:"$"}.fa-dolly-box:before,.fa-dolly:before{content:"\f472"}.fa-dong-sign:before{content:"\e169"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dove:before{content:"\f4ba"}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:"\f422"}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:"\f309"}.fa-download:before{content:"\f019"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-droplet:before,.fa-tint:before{content:"\f043"}.fa-droplet-slash:before,.fa-tint-slash:before{content:"\f5c7"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-e:before{content:"E"}.fa-deaf:before,.fa-deafness:before,.fa-ear-deaf:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-assistive-listening-systems:before,.fa-ear-listen:before{content:"\f2a2"}.fa-earth-africa:before,.fa-globe-africa:before{content:"\f57c"}.fa-earth-america:before,.fa-earth-americas:before,.fa-earth:before,.fa-globe-americas:before{content:"\f57d"}.fa-earth-asia:before,.fa-globe-asia:before{content:"\f57e"}.fa-earth-europe:before,.fa-globe-europe:before{content:"\f7a2"}.fa-earth-oceania:before,.fa-globe-oceania:before{content:"\e47b"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elevator:before{content:"\e16d"}.fa-ellipsis-h:before,.fa-ellipsis:before{content:"\f141"}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:"\f142"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:"\f674"}.fa-equals:before{content:"="}.fa-eraser:before{content:"\f12d"}.fa-ethernet:before{content:"\f796"}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:"\f153"}.fa-exclamation:before{content:"!"}.fa-expand:before{content:"\f065"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:"\f1fb"}.fa-eye-low-vision:before,.fa-low-vision:before{content:"\f2a8"}.fa-eye-slash:before{content:"\f070"}.fa-f:before{content:"F"}.fa-angry:before,.fa-face-angry:before{content:"\f556"}.fa-dizzy:before,.fa-face-dizzy:before{content:"\f567"}.fa-face-flushed:before,.fa-flushed:before{content:"\f579"}.fa-face-frown:before,.fa-frown:before{content:"\f119"}.fa-face-frown-open:before,.fa-frown-open:before{content:"\f57a"}.fa-face-grimace:before,.fa-grimace:before{content:"\f57f"}.fa-face-grin:before,.fa-grin:before{content:"\f580"}.fa-face-grin-beam:before,.fa-grin-beam:before{content:"\f582"}.fa-face-grin-beam-sweat:before,.fa-grin-beam-sweat:before{content:"\f583"}.fa-face-grin-hearts:before,.fa-grin-hearts:before{content:"\f584"}.fa-face-grin-squint:before,.fa-grin-squint:before{content:"\f585"}.fa-face-grin-squint-tears:before,.fa-grin-squint-tears:before{content:"\f586"}.fa-face-grin-stars:before,.fa-grin-stars:before{content:"\f587"}.fa-face-grin-tears:before,.fa-grin-tears:before{content:"\f588"}.fa-face-grin-tongue:before,.fa-grin-tongue:before{content:"\f589"}.fa-face-grin-tongue-squint:before,.fa-grin-tongue-squint:before{content:"\f58a"}.fa-face-grin-tongue-wink:before,.fa-grin-tongue-wink:before{content:"\f58b"}.fa-face-grin-wide:before,.fa-grin-alt:before{content:"\f581"}.fa-face-grin-wink:before,.fa-grin-wink:before{content:"\f58c"}.fa-face-kiss:before,.fa-kiss:before{content:"\f596"}.fa-face-kiss-beam:before,.fa-kiss-beam:before{content:"\f597"}.fa-face-kiss-wink-heart:before,.fa-kiss-wink-heart:before{content:"\f598"}.fa-face-laugh:before,.fa-laugh:before{content:"\f599"}.fa-face-laugh-beam:before,.fa-laugh-beam:before{content:"\f59a"}.fa-face-laugh-squint:before,.fa-laugh-squint:before{content:"\f59b"}.fa-face-laugh-wink:before,.fa-laugh-wink:before{content:"\f59c"}.fa-face-meh:before,.fa-meh:before{content:"\f11a"}.fa-face-meh-blank:before,.fa-meh-blank:before{content:"\f5a4"}.fa-face-rolling-eyes:before,.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-face-sad-cry:before,.fa-sad-cry:before{content:"\f5b3"}.fa-face-sad-tear:before,.fa-sad-tear:before{content:"\f5b4"}.fa-face-smile:before,.fa-smile:before{content:"\f118"}.fa-face-smile-beam:before,.fa-smile-beam:before{content:"\f5b8"}.fa-face-smile-wink:before,.fa-smile-wink:before{content:"\f4da"}.fa-face-surprise:before,.fa-surprise:before{content:"\f5c2"}.fa-face-tired:before,.fa-tired:before{content:"\f5c8"}.fa-fan:before{content:"\f863"}.fa-faucet:before{content:"\e005"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before,.fa-feather-pointed:before{content:"\f56b"}.fa-file:before{content:"\f15b"}.fa-file-arrow-down:before,.fa-file-download:before{content:"\f56d"}.fa-file-arrow-up:before,.fa-file-upload:before{content:"\f574"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-excel:before{content:"\f1c3"}.fa-arrow-right-from-file:before,.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-arrow-right-to-file:before,.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:"\f15c"}.fa-file-medical:before{content:"\f477"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-video:before{content:"\f1c8"}.fa-file-medical-alt:before,.fa-file-waveform:before{content:"\f478"}.fa-file-word:before{content:"\f1c2"}.fa-file-archive:before,.fa-file-zipper:before{content:"\f1c6"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-filter-circle-dollar:before,.fa-funnel-dollar:before{content:"\f662"}.fa-filter-circle-xmark:before{content:"\e17b"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-extinguisher:before{content:"\f134"}.fa-fire-alt:before,.fa-fire-flame-curved:before{content:"\f7e4"}.fa-burn:before,.fa-fire-flame-simple:before{content:"\f46a"}.fa-fish:before{content:"\f578"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-floppy-disk:before,.fa-save:before{content:"\f0c7"}.fa-florin-sign:before{content:"\e184"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-folder-tree:before{content:"\f802"}.fa-font:before{content:"\f031"}.fa-football-ball:before,.fa-football:before{content:"\f44e"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before,.fa-forward-fast:before{content:"\f050"}.fa-forward-step:before,.fa-step-forward:before{content:"\f051"}.fa-franc-sign:before{content:"\e18f"}.fa-frog:before{content:"\f52e"}.fa-futbol-ball:before,.fa-futbol:before,.fa-soccer-ball:before{content:"\f1e3"}.fa-g:before{content:"G"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-dashboard:before,.fa-gauge-med:before,.fa-gauge:before,.fa-tachometer-alt-average:before{content:"\f624"}.fa-gauge-high:before,.fa-tachometer-alt-fast:before,.fa-tachometer-alt:before{content:"\f625"}.fa-gauge-simple-med:before,.fa-gauge-simple:before,.fa-tachometer-average:before{content:"\f629"}.fa-gauge-simple-high:before,.fa-tachometer-fast:before,.fa-tachometer:before{content:"\f62a"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-glasses:before{content:"\f530"}.fa-globe:before{content:"\f0ac"}.fa-golf-ball-tee:before,.fa-golf-ball:before{content:"\f450"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-greater-than:before{content:">"}.fa-greater-than-equal:before{content:"\f532"}.fa-grip-horizontal:before,.fa-grip:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-guarani-sign:before{content:"\e19a"}.fa-guitar:before{content:"\f7a6"}.fa-gun:before{content:"\e19b"}.fa-h:before{content:"H"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-paper:before,.fa-hand:before{content:"\f256"}.fa-hand-back-fist:before,.fa-hand-rock:before{content:"\f255"}.fa-allergies:before,.fa-hand-dots:before{content:"\f461"}.fa-fist-raised:before,.fa-hand-fist:before{content:"\f6de"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-dollar:before,.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-droplet:before,.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\e05d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before,.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before,.fa-hands-american-sign-language-interpreting:before,.fa-hands-asl-interpreting:before{content:"\f2a3"}.fa-hands-bubbles:before,.fa-hands-wash:before{content:"\e05e"}.fa-hands-clapping:before{content:"\e1a8"}.fa-hands-holding:before{content:"\f4c2"}.fa-hands-praying:before,.fa-praying-hands:before{content:"\f684"}.fa-handshake:before{content:"\f2b5"}.fa-hands-helping:before,.fa-handshake-angle:before{content:"\f4c4"}.fa-handshake-alt-slash:before,.fa-handshake-simple-slash:before{content:"\e05f"}.fa-handshake-slash:before{content:"\e060"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-drive:before,.fa-hdd:before{content:"\f0a0"}.fa-hashtag:before{content:"#"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-head-side-cough:before{content:"\e061"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-head-side-mask:before{content:"\e063"}.fa-head-side-virus:before{content:"\e064"}.fa-header:before,.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before,.fa-headphones-simple:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before,.fa-heart-crack:before{content:"\f7a9"}.fa-heart-pulse:before,.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-hard-hat:before,.fa-hat-hard:before,.fa-helmet-safety:before{content:"\f807"}.fa-highlighter:before{content:"\f591"}.fa-hippo:before{content:"\f6ed"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital-alt:before,.fa-hospital-wide:before,.fa-hospital:before{content:"\f0f8"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub-person:before,.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hourglass-2:before,.fa-hourglass-half:before,.fa-hourglass:before{content:"\f254"}.fa-hourglass-empty:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-home-alt:before,.fa-home-lg-alt:before,.fa-home:before,.fa-house:before{content:"\f015"}.fa-home-lg:before,.fa-house-chimney:before{content:"\e3af"}.fa-house-chimney-crack:before,.fa-house-damage:before{content:"\f6f1"}.fa-clinic-medical:before,.fa-house-chimney-medical:before{content:"\f7f2"}.fa-house-chimney-user:before{content:"\e065"}.fa-house-chimney-window:before{content:"\e00d"}.fa-house-crack:before{content:"\e3b1"}.fa-house-laptop:before,.fa-laptop-house:before{content:"\e066"}.fa-house-medical:before{content:"\e3b2"}.fa-home-user:before,.fa-house-user:before{content:"\e1b0"}.fa-hryvnia-sign:before,.fa-hryvnia:before{content:"\f6f2"}.fa-i:before{content:"I"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before,.fa-id-card-clip:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-image-portrait:before,.fa-portrait:before{content:"\f3e0"}.fa-images:before{content:"\f302"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-indian-rupee-sign:before,.fa-indian-rupee:before,.fa-inr:before{content:"\e1bc"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-italic:before{content:"\f033"}.fa-j:before{content:"J"}.fa-jedi:before{content:"\f669"}.fa-fighter-jet:before,.fa-jet-fighter:before{content:"\f0fb"}.fa-joint:before{content:"\f595"}.fa-k:before{content:"K"}.fa-kaaba:before{content:"\f66b"}.fa-key:before{content:"\f084"}.fa-keyboard:before{content:"\f11c"}.fa-khanda:before{content:"\f66d"}.fa-kip-sign:before{content:"\e1c4"}.fa-first-aid:before,.fa-kit-medical:before{content:"\f479"}.fa-kiwi-bird:before{content:"\f535"}.fa-l:before{content:"L"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-lari-sign:before{content:"\e1c8"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-arrows-alt-h:before,.fa-left-right:before{content:"\f337"}.fa-lemon:before{content:"\f094"}.fa-less-than:before{content:"<"}.fa-less-than-equal:before{content:"\f537"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:"\f127"}.fa-lira-sign:before{content:"\f195"}.fa-list-squares:before,.fa-list:before{content:"\f03a"}.fa-list-check:before,.fa-tasks:before{content:"\f0ae"}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:"\f0cb"}.fa-list-dots:before,.fa-list-ul:before{content:"\f0ca"}.fa-litecoin-sign:before{content:"\e1d3"}.fa-location-arrow:before{content:"\f124"}.fa-location-crosshairs:before,.fa-location:before{content:"\f601"}.fa-location-dot:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-location-pin:before,.fa-map-marker:before{content:"\f041"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\e067"}.fa-m:before{content:"M"}.fa-magnet:before{content:"\f076"}.fa-magnifying-glass:before,.fa-search:before{content:"\f002"}.fa-magnifying-glass-dollar:before,.fa-search-dollar:before{content:"\f688"}.fa-magnifying-glass-location:before,.fa-search-location:before{content:"\f689"}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:"\f010"}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:"\f00e"}.fa-manat-sign:before{content:"\e1d5"}.fa-map:before{content:"\f279"}.fa-map-location:before,.fa-map-marked:before{content:"\f59f"}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-pin:before{content:"\f276"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-and-venus:before{content:"\f224"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before,.fa-mars-stroke-right:before{content:"\f22b"}.fa-mars-stroke-up:before,.fa-mars-stroke-v:before{content:"\f22a"}.fa-glass-martini-alt:before,.fa-martini-glass:before{content:"\f57b"}.fa-cocktail:before,.fa-martini-glass-citrus:before{content:"\f561"}.fa-glass-martini:before,.fa-martini-glass-empty:before{content:"\f000"}.fa-mask:before{content:"\f6fa"}.fa-mask-face:before{content:"\e1d7"}.fa-masks-theater:before,.fa-theater-masks:before{content:"\f630"}.fa-expand-arrows-alt:before,.fa-maximize:before{content:"\f31e"}.fa-medal:before{content:"\f5a2"}.fa-memory:before{content:"\f538"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-comment-alt:before,.fa-message:before{content:"\f27a"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before,.fa-microphone-lines:before{content:"\f3c9"}.fa-microphone-alt-slash:before,.fa-microphone-lines-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-mill-sign:before{content:"\e1ed"}.fa-compress-arrows-alt:before,.fa-minimize:before{content:"\f78c"}.fa-minus:before,.fa-subtract:before{content:"\f068"}.fa-mitten:before{content:"\f7b5"}.fa-mobile-android:before,.fa-mobile-phone:before,.fa-mobile:before{content:"\f3ce"}.fa-mobile-button:before{content:"\f10b"}.fa-mobile-alt:before,.fa-mobile-screen-button:before{content:"\f3cd"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-1:before,.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-1-wave:before,.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before,.fa-money-check-dollar:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mug-hot:before{content:"\f7b6"}.fa-coffee:before,.fa-mug-saucer:before{content:"\f0f4"}.fa-music:before{content:"\f001"}.fa-n:before{content:"N"}.fa-naira-sign:before{content:"\e1f6"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-not-equal:before{content:"\f53e"}.fa-note-sticky:before,.fa-sticky-note:before{content:"\f249"}.fa-notes-medical:before{content:"\f481"}.fa-o:before{content:"O"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-oil-can:before{content:"\f613"}.fa-om:before{content:"\f679"}.fa-otter:before{content:"\f700"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-p:before{content:"P"}.fa-pager:before{content:"\f815"}.fa-paint-roller:before{content:"\f5aa"}.fa-paint-brush:before,.fa-paintbrush:before{content:"\f1fc"}.fa-palette:before{content:"\f53f"}.fa-pallet:before{content:"\f482"}.fa-panorama:before{content:"\e209"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-passport:before{content:"\f5ab"}.fa-file-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-pause:before{content:"\f04c"}.fa-paw:before{content:"\f1b0"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before,.fa-pen-clip:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-ruler:before,.fa-pencil-ruler:before{content:"\f5ae"}.fa-edit:before,.fa-pen-to-square:before{content:"\f044"}.fa-pencil-alt:before,.fa-pencil:before{content:"\f303"}.fa-people-arrows-left-right:before,.fa-people-arrows:before{content:"\e068"}.fa-people-carry-box:before,.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before,.fa-percentage:before{content:"%"}.fa-male:before,.fa-person:before{content:"\f183"}.fa-biking:before,.fa-person-biking:before{content:"\f84a"}.fa-person-booth:before{content:"\f756"}.fa-diagnoses:before,.fa-person-dots-from-line:before{content:"\f470"}.fa-female:before,.fa-person-dress:before{content:"\f182"}.fa-hiking:before,.fa-person-hiking:before{content:"\f6ec"}.fa-person-praying:before,.fa-pray:before{content:"\f683"}.fa-person-running:before,.fa-running:before{content:"\f70c"}.fa-person-skating:before,.fa-skating:before{content:"\f7c5"}.fa-person-skiing:before,.fa-skiing:before{content:"\f7c9"}.fa-person-skiing-nordic:before,.fa-skiing-nordic:before{content:"\f7ca"}.fa-person-snowboarding:before,.fa-snowboarding:before{content:"\f7ce"}.fa-person-swimming:before,.fa-swimmer:before{content:"\f5c4"}.fa-person-walking:before,.fa-walking:before{content:"\f554"}.fa-blind:before,.fa-person-walking-with-cane:before{content:"\f29d"}.fa-peseta-sign:before{content:"\e221"}.fa-peso-sign:before{content:"\e222"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before,.fa-phone-flip:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-volume:before,.fa-volume-control-phone:before{content:"\f2a0"}.fa-photo-film:before,.fa-photo-video:before{content:"\f87c"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\e069"}.fa-play:before{content:"\f04b"}.fa-plug:before{content:"\f1e6"}.fa-add:before,.fa-plus:before{content:"+"}.fa-plus-minus:before{content:"\e43c"}.fa-podcast:before{content:"\f2ce"}.fa-poo:before{content:"\f2fe"}.fa-poo-bolt:before,.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-power-off:before{content:"\f011"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before,.fa-prescription-bottle-medical:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-pump-medical:before{content:"\e06a"}.fa-pump-soap:before{content:"\e06b"}.fa-puzzle-piece:before{content:"\f12e"}.fa-q:before{content:"Q"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"?"}.fa-quote-left-alt:before,.fa-quote-left:before{content:"\f10d"}.fa-quote-right-alt:before,.fa-quote-right:before{content:"\f10e"}.fa-r:before{content:"R"}.fa-radiation:before{content:"\f7b9"}.fa-rainbow:before{content:"\f75b"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-ad:before,.fa-rectangle-ad:before{content:"\f641"}.fa-list-alt:before,.fa-rectangle-list:before{content:"\f022"}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:"\f410"}.fa-recycle:before{content:"\f1b8"}.fa-registered:before{content:"\f25d"}.fa-repeat:before{content:"\f363"}.fa-mail-reply:before,.fa-reply:before{content:"\f3e5"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-republican:before{content:"\f75e"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-ribbon:before{content:"\f4d6"}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:"\f2f5"}.fa-exchange-alt:before,.fa-right-left:before{content:"\f362"}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:"\f30b"}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:"\f2f6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rotate:before,.fa-sync-alt:before{content:"\f2f1"}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:"\f2ea"}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:"\f2f9"}.fa-route:before{content:"\f4d7"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-rouble:before,.fa-rub:before,.fa-ruble-sign:before,.fa-ruble:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-rupee-sign:before,.fa-rupee:before{content:"\f156"}.fa-rupiah-sign:before{content:"\e23d"}.fa-s:before{content:"S"}.fa-sailboat:before{content:"\e445"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-balance-scale:before,.fa-scale-balanced:before{content:"\f24e"}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:"\f515"}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:"\f516"}.fa-school:before{content:"\f549"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-screwdriver:before{content:"\f54a"}.fa-screwdriver-wrench:before,.fa-tools:before{content:"\f7d9"}.fa-scroll:before{content:"\f70e"}.fa-scroll-torah:before,.fa-torah:before{content:"\f6a0"}.fa-sd-card:before{content:"\f7c2"}.fa-section:before{content:"\e447"}.fa-seedling:before,.fa-sprout:before{content:"\f4d8"}.fa-server:before{content:"\f233"}.fa-shapes:before,.fa-triangle-circle-square:before{content:"\f61f"}.fa-arrow-turn-right:before,.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-share-from-square:before,.fa-share-square:before{content:"\f14d"}.fa-share-alt:before,.fa-share-nodes:before{content:"\f1e0"}.fa-ils:before,.fa-shekel-sign:before,.fa-shekel:before,.fa-sheqel-sign:before,.fa-sheqel:before{content:"\f20b"}.fa-shield:before{content:"\f132"}.fa-shield-alt:before,.fa-shield-blank:before{content:"\f3ed"}.fa-shield-virus:before{content:"\e06c"}.fa-ship:before{content:"\f21a"}.fa-shirt:before,.fa-t-shirt:before,.fa-tshirt:before{content:"\f553"}.fa-shoe-prints:before{content:"\f54b"}.fa-shop:before,.fa-store-alt:before{content:"\f54f"}.fa-shop-slash:before,.fa-store-alt-slash:before{content:"\e070"}.fa-shower:before{content:"\f2cc"}.fa-shrimp:before{content:"\e448"}.fa-random:before,.fa-shuffle:before{content:"\f074"}.fa-shuttle-space:before,.fa-space-shuttle:before{content:"\f197"}.fa-sign-hanging:before,.fa-sign:before{content:"\f4d9"}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-map-signs:before,.fa-signs-post:before{content:"\f277"}.fa-sim-card:before{content:"\f7c4"}.fa-sink:before{content:"\e06d"}.fa-sitemap:before{content:"\f0e8"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\e06e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-spa:before{content:"\f5bb"}.fa-pastafarianism:before,.fa-spaghetti-monster-flying:before{content:"\f67b"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spoon:before,.fa-utensil-spoon:before{content:"\f2e5"}.fa-spray-can:before{content:"\f5bd"}.fa-air-freshener:before,.fa-spray-can-sparkles:before{content:"\f5d0"}.fa-square:before{content:"\f0c8"}.fa-external-link-square:before,.fa-square-arrow-up-right:before{content:"\f14c"}.fa-caret-square-down:before,.fa-square-caret-down:before{content:"\f150"}.fa-caret-square-left:before,.fa-square-caret-left:before{content:"\f191"}.fa-caret-square-right:before,.fa-square-caret-right:before{content:"\f152"}.fa-caret-square-up:before,.fa-square-caret-up:before{content:"\f151"}.fa-check-square:before,.fa-square-check:before{content:"\f14a"}.fa-envelope-square:before,.fa-square-envelope:before{content:"\f199"}.fa-square-full:before{content:"\f45c"}.fa-h-square:before,.fa-square-h:before{content:"\f0fd"}.fa-minus-square:before,.fa-square-minus:before{content:"\f146"}.fa-parking:before,.fa-square-parking:before{content:"\f540"}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:"\f14b"}.fa-phone-square:before,.fa-square-phone:before{content:"\f098"}.fa-phone-square-alt:before,.fa-square-phone-flip:before{content:"\f87b"}.fa-plus-square:before,.fa-square-plus:before{content:"\f0fe"}.fa-poll-h:before,.fa-square-poll-horizontal:before{content:"\f682"}.fa-poll:before,.fa-square-poll-vertical:before{content:"\f681"}.fa-square-root-alt:before,.fa-square-root-variable:before{content:"\f698"}.fa-rss-square:before,.fa-square-rss:before{content:"\f143"}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:"\f1e1"}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:"\f360"}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:"\f2d3"}.fa-stairs:before{content:"\e289"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-gbp:before,.fa-pound-sign:before,.fa-sterling-sign:before{content:"\f154"}.fa-stethoscope:before{content:"\f0f1"}.fa-stop:before{content:"\f04d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\e06f"}.fa-store:before{content:"\f54e"}.fa-store-slash:before{content:"\e071"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stroopwafel:before{content:"\f551"}.fa-subscript:before{content:"\f12c"}.fa-suitcase:before{content:"\f0f2"}.fa-medkit:before,.fa-suitcase-medical:before{content:"\f0fa"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superscript:before{content:"\f12b"}.fa-swatchbook:before{content:"\f5c3"}.fa-synagogue:before{content:"\f69b"}.fa-syringe:before{content:"\f48e"}.fa-t:before{content:"T"}.fa-table:before{content:"\f0ce"}.fa-table-cells:before,.fa-th:before{content:"\f00a"}.fa-table-cells-large:before,.fa-th-large:before{content:"\f009"}.fa-columns:before,.fa-table-columns:before{content:"\f0db"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}.fa-ping-pong-paddle-ball:before,.fa-table-tennis-paddle-ball:before,.fa-table-tennis:before{content:"\f45d"}.fa-tablet-android:before,.fa-tablet:before{content:"\f3fb"}.fa-tablet-button:before{content:"\f10a"}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:"\f566"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-temperature-0:before,.fa-temperature-empty:before,.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-temperature-4:before,.fa-temperature-full:before,.fa-thermometer-4:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-temperature-2:before,.fa-temperature-half:before,.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-temperature-1:before,.fa-temperature-quarter:before,.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-temperature-3:before,.fa-temperature-three-quarters:before,.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-tenge-sign:before,.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-remove-format:before,.fa-text-slash:before{content:"\f87d"}.fa-text-width:before{content:"\f035"}.fa-thermometer:before{content:"\f491"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumb-tack:before,.fa-thumbtack:before{content:"\f08d"}.fa-ticket:before{content:"\f145"}.fa-ticket-alt:before,.fa-ticket-simple:before{content:"\f3ff"}.fa-timeline:before{content:"\e29c"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-toolbox:before{content:"\f552"}.fa-tooth:before{content:"\f5c9"}.fa-torii-gate:before{content:"\f6a1"}.fa-broadcast-tower:before,.fa-tower-broadcast:before{content:"\f519"}.fa-tractor:before{content:"\f722"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\e041"}.fa-train:before{content:"\f238"}.fa-subway:before,.fa-train-subway:before{content:"\f239"}.fa-train-tram:before,.fa-tram:before{content:"\f7da"}.fa-transgender-alt:before,.fa-transgender:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:"\f829"}.fa-trash-alt:before,.fa-trash-can:before{content:"\f2ed"}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:"\f071"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-shipping-fast:before,.fa-truck-fast:before{content:"\f48b"}.fa-ambulance:before,.fa-truck-medical:before{content:"\f0f9"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-truck-loading:before,.fa-truck-ramp-box:before{content:"\f4de"}.fa-teletype:before,.fa-tty:before{content:"\f1e4"}.fa-try:before,.fa-turkish-lira-sign:before,.fa-turkish-lira:before{content:"\e2bb"}.fa-level-down-alt:before,.fa-turn-down:before{content:"\f3be"}.fa-level-up-alt:before,.fa-turn-up:before{content:"\f3bf"}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:"\f26c"}.fa-u:before{content:"U"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-universal-access:before{content:"\f29a"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:"\f13e"}.fa-arrows-alt-v:before,.fa-up-down:before{content:"\f338"}.fa-arrows-alt:before,.fa-up-down-left-right:before{content:"\f0b2"}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:"\f30c"}.fa-expand-alt:before,.fa-up-right-and-down-left-from-center:before{content:"\f424"}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:"\f35d"}.fa-upload:before{content:"\f093"}.fa-user:before{content:"\f007"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-clock:before{content:"\f4fd"}.fa-user-doctor:before,.fa-user-md:before{content:"\f0f0"}.fa-user-cog:before,.fa-user-gear:before{content:"\f4fe"}.fa-user-graduate:before{content:"\f501"}.fa-user-friends:before,.fa-user-group:before{content:"\f500"}.fa-user-injured:before{content:"\f728"}.fa-user-alt:before,.fa-user-large:before{content:"\f406"}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:"\f4fa"}.fa-user-lock:before{content:"\f502"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-edit:before,.fa-user-pen:before{content:"\f4ff"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before,.fa-user-xmark:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before,.fa-users-gear:before{content:"\f509"}.fa-users-slash:before{content:"\e073"}.fa-cutlery:before,.fa-utensils:before{content:"\f2e7"}.fa-v:before{content:"V"}.fa-shuttle-van:before,.fa-van-shuttle:before{content:"\f5b6"}.fa-vault:before{content:"\e2c5"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-vest:before{content:"\e085"}.fa-vest-patches:before{content:"\e086"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-video-camera:before,.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-virus:before{content:"\e074"}.fa-virus-covid:before{content:"\e4a8"}.fa-virus-covid-slash:before{content:"\e4a9"}.fa-virus-slash:before{content:"\e075"}.fa-viruses:before{content:"\e076"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before,.fa-volleyball:before{content:"\f45f"}.fa-volume-high:before,.fa-volume-up:before{content:"\f028"}.fa-volume-down:before,.fa-volume-low:before{content:"\f027"}.fa-volume-off:before{content:"\f026"}.fa-volume-mute:before,.fa-volume-times:before,.fa-volume-xmark:before{content:"\f6a9"}.fa-vr-cardboard:before{content:"\f729"}.fa-w:before{content:"W"}.fa-wallet:before{content:"\f555"}.fa-magic:before,.fa-wand-magic:before{content:"\f0d0"}.fa-magic-wand-sparkles:before,.fa-wand-magic-sparkles:before{content:"\e2ca"}.fa-wand-sparkles:before{content:"\f72b"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-ladder-water:before,.fa-swimming-pool:before,.fa-water-ladder:before{content:"\f5c5"}.fa-wave-square:before{content:"\f83e"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weight-scale:before,.fa-weight:before{content:"\f496"}.fa-wheelchair:before{content:"\f193"}.fa-glass-whiskey:before,.fa-whiskey-glass:before{content:"\f7a0"}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:"\f1eb"}.fa-wind:before{content:"\f72e"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before,.fa-wine-glass-empty:before{content:"\f5ce"}.fa-krw:before,.fa-won-sign:before,.fa-won:before{content:"\f159"}.fa-wrench:before{content:"\f0ad"}.fa-x:before{content:"X"}.fa-x-ray:before{content:"\f497"}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:"\f00d"}.fa-y:before{content:"Y"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen-sign:before,.fa-yen:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-z:before{content:"Z"}.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(fa-brands-400.5d5236fb45973c81.woff2) format("woff2"),url(fa-brands-400.1fd0b4d72d4586e5.ttf) format("truetype")}.fa-brands,.fab{font-family:"Font Awesome 6 Brands";font-weight:400}.fa-42-group:before,.fa-innosoft:before{content:"\e080"}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-alipay:before{content:"\f642"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-amilia:before{content:"\f36d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-pay:before{content:"\f415"}.fa-artstation:before{content:"\f77a"}.fa-asymmetrik:before{content:"\f372"}.fa-atlassian:before{content:"\f77b"}.fa-audible:before{content:"\f373"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-aws:before{content:"\f375"}.fa-bandcamp:before{content:"\f2d5"}.fa-battle-net:before{content:"\f835"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bilibili:before{content:"\e3d9"}.fa-bimobject:before{content:"\f378"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bootstrap:before{content:"\f836"}.fa-bots:before{content:"\e340"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-buromobelexperte:before{content:"\f37f"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-cloudflare:before{content:"\e07d"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cmplid:before{content:"\e360"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cotton-bureau:before{content:"\f89e"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-critical-role:before{content:"\f6c9"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\e052"}.fa-dashcube:before{content:"\f210"}.fa-deezer:before{content:"\e077"}.fa-delicious:before{content:"\f1a5"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dhl:before{content:"\f790"}.fa-diaspora:before{content:"\f791"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-draft2digital:before{content:"\f396"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drupal:before{content:"\f1a9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\e078"}.fa-elementor:before{content:"\f430"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envira:before{content:"\f299"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-etsy:before{content:"\f2d7"}.fa-evernote:before{content:"\f839"}.fa-expeditedssl:before{content:"\f23e"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-figma:before{content:"\f799"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\e007"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-fly:before{content:"\f417"}.fa-font-awesome-flag:before,.fa-font-awesome-logo-full:before,.fa-font-awesome:before{content:"\f2b4"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-fulcrum:before{content:"\f50b"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-gofore:before{content:"\f3a7"}.fa-golang:before{content:"\e40f"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\e079"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guilded:before{content:"\e07e"}.fa-gulp:before{content:"\f3ae"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hashnode:before{content:"\e499"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-hive:before{content:"\e07f"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-hotjar:before{content:"\f3b1"}.fa-houzz:before{content:"\f27c"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-ideal:before{content:"\e013"}.fa-imdb:before{content:"\f2d8"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\e055"}.fa-instalod:before{content:"\e081"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joomla:before{content:"\f1aa"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaggle:before{content:"\f5fa"}.fa-keybase:before{content:"\f4f5"}.fa-keycdn:before{content:"\f3ba"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-korvue:before{content:"\f42f"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-leanpub:before{content:"\f212"}.fa-less:before{content:"\f41d"}.fa-line:before{content:"\f3c0"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-mailchimp:before{content:"\f59e"}.fa-mandalorian:before{content:"\f50f"}.fa-markdown:before{content:"\f60f"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medapps:before{content:"\f3c6"}.fa-medium-m:before,.fa-medium:before{content:"\f23a"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-mendeley:before{content:"\f7b3"}.fa-microblog:before{content:"\e01a"}.fa-microsoft:before{content:"\f3ca"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\e056"}.fa-mizuni:before{content:"\f3cc"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-octopus-deploy:before{content:"\e082"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-old-republic:before{content:"\f510"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-padlet:before{content:"\e4a0"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-palfed:before{content:"\f3d8"}.fa-patreon:before{content:"\f3d9"}.fa-paypal:before{content:"\f1ed"}.fa-perbyte:before{content:"\e083"}.fa-periscope:before{content:"\f3da"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\e01e"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pix:before{content:"\e43a"}.fa-playstation:before{content:"\f3df"}.fa-product-hunt:before{content:"\f288"}.fa-pushed:before{content:"\f3e1"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-r-project:before{content:"\f4f7"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-renren:before{content:"\f18b"}.fa-replyd:before{content:"\f3e6"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-rev:before{content:"\f5b2"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-rust:before{content:"\e07a"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-schlix:before{content:"\f3ea"}.fa-scribd:before{content:"\f28a"}.fa-searchengin:before{content:"\f3eb"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-servicestack:before{content:"\f3ec"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shopify:before{content:"\e057"}.fa-shopware:before{content:"\f5b5"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sith:before{content:"\f512"}.fa-sitrox:before{content:"\e44a"}.fa-sketch:before{content:"\f7c6"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack-hash:before,.fa-slack:before{content:"\f198"}.fa-slideshare:before{content:"\f1e7"}.fa-snapchat-ghost:before,.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-square:before{content:"\f2ad"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spotify:before{content:"\f1bc"}.fa-square-font-awesome:before{content:"\f425"}.fa-font-awesome-alt:before,.fa-square-font-awesome-stroke:before{content:"\f35c"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-sticker-mule:before{content:"\f3f7"}.fa-strava:before{content:"\f428"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-superpowers:before{content:"\f2dd"}.fa-supple:before{content:"\f3f9"}.fa-suse:before{content:"\f7d6"}.fa-swift:before{content:"\f8e1"}.fa-symfony:before{content:"\f83d"}.fa-teamspeak:before{content:"\f4f9"}.fa-telegram-plane:before,.fa-telegram:before{content:"\f2c6"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-the-red-yeti:before{content:"\f69d"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-think-peaks:before{content:"\f731"}.fa-tiktok:before{content:"\e07b"}.fa-trade-federation:before{content:"\f513"}.fa-trello:before{content:"\f181"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-uncharted:before{content:"\e084"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\e049"}.fa-unsplash:before{content:"\e07c"}.fa-untappd:before{content:"\f405"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-vaadin:before{content:"\f408"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-viber:before{content:"\f409"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-vuejs:before{content:"\f41f"}.fa-watchman-monitoring:before{content:"\e087"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-whmcs:before{content:"\f40d"}.fa-wikipedia-w:before{content:"\f266"}.fa-windows:before{content:"\f17a"}.fa-wirsindhandwerk:before,.fa-wsh:before{content:"\e2d0"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wodu:before{content:"\e088"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(fa-regular-400.64b3730eae64a402.woff2) format("woff2"),url(fa-regular-400.95a8a8afa5b1c983.ttf) format("truetype")}.fa-regular,.far{font-family:"Font Awesome 6 Free";font-weight:400}:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(fa-solid-900.6115ad710dfd16d9.woff2) format("woff2"),url(fa-solid-900.f0203cfcf963d9a2.ttf) format("truetype")}.fa-solid,.fas{font-family:"Font Awesome 6 Free";font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(fa-brands-400.5d5236fb45973c81.woff2) format("woff2"),url(fa-brands-400.1fd0b4d72d4586e5.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(fa-solid-900.6115ad710dfd16d9.woff2) format("woff2"),url(fa-solid-900.f0203cfcf963d9a2.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(fa-regular-400.64b3730eae64a402.woff2) format("woff2"),url(fa-regular-400.95a8a8afa5b1c983.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(fa-solid-900.6115ad710dfd16d9.woff2) format("woff2"),url(fa-solid-900.f0203cfcf963d9a2.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(fa-brands-400.5d5236fb45973c81.woff2) format("woff2"),url(fa-brands-400.1fd0b4d72d4586e5.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(fa-regular-400.64b3730eae64a402.woff2) format("woff2"),url(fa-regular-400.95a8a8afa5b1c983.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:FontAwesome;font-display:block;src:url(fa-v4compatibility.c71d2ee3696c4af7.woff2) format("woff2"),url(fa-v4compatibility.e1023515330639b1.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f250,u+f252,u+f27a}@font-face{font-family:Open Sans;font-style:normal;font-weight:300;src:url(open-sans-v27-latin-300.dab7b16667a2ab8f.eot);src:local(""),url(open-sans-v27-latin-300.dab7b16667a2ab8f.eot?#iefix) format("embedded-opentype"),url(open-sans-v27-latin-300.91a50b4f841cade2.woff2) format("woff2"),url(open-sans-v27-latin-300.3374e4fded2ba693.woff) format("woff"),url(open-sans-v27-latin-300.4bb85106c5cb0f8e.ttf) format("truetype"),url(open-sans-v27-latin-300.95e680376cf7637b.svg#OpenSans) format("svg")}@font-face{font-family:Open Sans;font-style:normal;font-weight:400;src:url(open-sans-v27-latin-regular.6ba65a2e7d0ff6d7.eot);src:local(""),url(open-sans-v27-latin-regular.6ba65a2e7d0ff6d7.eot?#iefix) format("embedded-opentype"),url(open-sans-v27-latin-regular.45a6d40a1181e19e.woff2) format("woff2"),url(open-sans-v27-latin-regular.74a7ffc06ea8d562.woff) format("woff"),url(open-sans-v27-latin-regular.664f90551769c759.ttf) format("truetype"),url(open-sans-v27-latin-regular.32bf0b0a6b06932b.svg#OpenSans) format("svg")}@font-face{font-family:Open Sans;font-style:normal;font-weight:700;src:url(open-sans-v27-latin-700.5562d80051c99638.eot);src:local(""),url(open-sans-v27-latin-700.5562d80051c99638.eot?#iefix) format("embedded-opentype"),url(open-sans-v27-latin-700.dff9eb1f9b52ed3c.woff2) format("woff2"),url(open-sans-v27-latin-700.314b5ebcfab954af.woff) format("woff"),url(open-sans-v27-latin-700.3fee31b1d5bd88d8.ttf) format("truetype"),url(open-sans-v27-latin-700.2774daabdd503125.svg#OpenSans) format("svg")}:root{--rg-primary-color: #20A0D2;--rg-primary-hover-color: #1C8EB7;--rg-gradient-from: #1c7ed6;--rg-gradient-to: #23b8cf;--rg-gradient-hover-from: #1A6FBA;--rg-gradient-hover-to: #1EA1B5}html,body{font-family:Open Sans,sans-serif;font-weight:300;scroll-padding-top:75px}body{padding-top:80px}h1,h2,h3,h4,h5,h6{font-weight:300}.pro-button{color:#fff!important;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);padding:3px 8px;border-radius:10px;font-weight:700;margin-top:-3px;display:inline-block}.pro-button-tiny{font-size:.8rem;padding:2px 6px}.pro-text{color:var(--rg-primary-color)}.line{width:250px;max-width:80%;height:2px;margin-top:18px}.btn-primary{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);border-color:var(--rg-primary-color)}.btn-primary:hover{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);border-color:var(--rg-primary-hover-color)}input.ng-invalid,textarea.ng-invalid{border-color:#c00;background-color:#ffc4c4}.bg-light{background-color:#e9e9e9!important}.navbar-light .navbar-toggler{border:none}.githubheart{color:#ec6cb9}.required{color:var(--rg-primary-hover-color)} diff --git a/docs/styles.efc28ac814ce3de3.css b/docs/styles.efc28ac814ce3de3.css deleted file mode 100644 index c8a239f9..00000000 --- a/docs/styles.efc28ac814ce3de3.css +++ /dev/null @@ -1,10 +0,0 @@ -@charset "UTF-8";/*! -* Bootstrap v5.2.3 (https://getbootstrap.com/) -* Copyright 2011-2022 The Bootstrap Authors -* Copyright 2011-2022 Twitter, Inc. -* Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) -*/:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans","Liberation Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, .15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, .175);--bs-border-radius:.375rem;--bs-border-radius-sm:.25rem;--bs-border-radius-lg:.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-2xl:2rem;--bs-border-radius-pill:50rem;--bs-link-color:#0d6efd;--bs-link-hover-color:#0a58ca;--bs-code-color:#d63384;--bs-highlight-bg:#fff3cd}*,:after,:before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;border:0;border-top:1px solid;opacity:.25}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.1875em;background-color:var(--bs-highlight-bg)}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:var(--bs-link-color);text-decoration:underline}a:hover{color:var(--bs-link-hover-color)}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:var(--bs-code-color);word-wrap:break-word}a>code{color:inherit}kbd{padding:.1875rem .375rem;font-size:.875em;color:var(--bs-body-bg);background-color:var(--bs-body-color);border-radius:.25rem}kbd kbd{padding:0;font-size:1em}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]:not([type=date]):not([type=datetime-local]):not([type=month]):not([type=week]):not([type=time])::-webkit-calendar-picker-indicator{display:none!important}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled,.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer:before{content:"\2014\a0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid var(--bs-border-color);border-radius:.375rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:#6c757d}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{--bs-gutter-x:1.5rem;--bs-gutter-y:0;width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:.25rem}.g-1,.gy-1{--bs-gutter-y:.25rem}.g-2,.gx-2{--bs-gutter-x:.5rem}.g-2,.gy-2{--bs-gutter-y:.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-color:var(--bs-body-color);--bs-table-bg:transparent;--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-body-color);--bs-table-striped-bg:rgba(0, 0, 0, .05);--bs-table-active-color:var(--bs-body-color);--bs-table-active-bg:rgba(0, 0, 0, .1);--bs-table-hover-color:var(--bs-body-color);--bs-table-hover-bg:rgba(0, 0, 0, .075);width:100%;margin-bottom:1rem;color:var(--bs-table-color);vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:2px solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg:var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-striped-columns>:not(caption)>tr>:nth-child(2n){--bs-table-accent-bg:var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg:var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover>*{--bs-table-accent-bg:var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#bacbe6;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#000;--bs-table-bg:#e2e3e5;--bs-table-border-color:#cbccce;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color:#000;--bs-table-bg:#d1e7dd;--bs-table-border-color:#bcd0c7;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#000;--bs-table-bg:#cff4fc;--bs-table-border-color:#badce3;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color:#000;--bs-table-bg:#fff3cd;--bs-table-border-color:#e6dbb9;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#000;--bs-table-bg:#f8d7da;--bs-table-border-color:#dfc2c4;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color:#000;--bs-table-bg:#f8f9fa;--bs-table-border-color:#dfe0e1;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#fff;--bs-table-bg:#212529;--bs-table-border-color:#373b3e;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:#6c757d}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;-webkit-appearance:none;appearance:none;border-radius:.375rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#212529;background-color:#fff;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled{background-color:#e9ecef;opacity:1}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext:focus{outline:0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;border-radius:.25rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{width:3rem;height:calc(1.5em + .75rem + 2px);padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:.375rem}.form-control-color::-webkit-color-swatch{border-radius:.375rem}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + 2px)}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + 2px)}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #ced4da;border-radius:.375rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #212529}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:.25rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:.5rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-reverse{padding-right:1.5em;padding-left:0;text-align:right}.form-check-reverse .form-check-input{float:right;margin-right:-1.5em;margin-left:0}.form-check-input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);-webkit-appearance:none;appearance:none;-webkit-print-color-adjust:exact;print-color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='m6 10 3 3 6-6'/%3e%3c/svg%3e")}.form-check-input:checked[type=radio]{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{cursor:default;opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e")}.form-switch.form-check-reverse{padding-right:2.5em;padding-left:0}.form-switch.form-check-reverse .form-check-input{margin-right:-2.5em;margin-left:0}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:transparent;-webkit-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem #0d6efd40}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem #0d6efd40}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;width:100%;height:100%;padding:1rem .75rem;overflow:hidden;text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:1px solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{transition:none}}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:focus,.form-floating>.form-control-plaintext:not(:placeholder-shown),.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext:-webkit-autofill,.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control-plaintext~label,.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>.form-control-plaintext~label{border-width:1px 0}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-floating,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-floating:focus-within,.input-group>.form-select:focus{z-index:5}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:5}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.375rem}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:.5rem}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:.25rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-control,.input-group:not(.has-validation)>.form-floating:not(:last-child)>.form-select,.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-control,.input-group.has-validation>.form-floating:nth-last-child(n+3)>.form-select,.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu):not(.form-floating){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.form-floating:not(:first-child)>.form-control,.input-group>.form-floating:not(:first-child)>.form-select{border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:#198754e6;border-radius:.375rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#198754;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem #19875440}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:#198754}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size="1"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem #19875440}.form-control-color.is-valid,.was-validated .form-control-color:valid{width:calc(3.75rem + 1.5em)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:#198754}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:#198754}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem #19875440}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-valid,.input-group>.form-floating:not(:focus-within).is-valid,.input-group>.form-select:not(:focus).is-valid,.was-validated .input-group>.form-control:not(:focus):valid,.was-validated .input-group>.form-floating:not(:focus-within):valid,.was-validated .input-group>.form-select:not(:focus):valid{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:#dc3545e6;border-radius:.375rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem #dc354540}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:#dc3545}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size="1"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size="1"]{padding-right:4.125rem;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e"),url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem #dc354540}.form-control-color.is-invalid,.was-validated .form-control-color:invalid{width:calc(3.75rem + 1.5em)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:#dc3545}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:#dc3545}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem #dc354540}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group>.form-control:not(:focus).is-invalid,.input-group>.form-floating:not(:focus-within).is-invalid,.input-group>.form-select:not(:focus).is-invalid,.was-validated .input-group>.form-control:not(:focus):invalid,.was-validated .input-group>.form-floating:not(:focus-within):invalid,.was-validated .input-group>.form-select:not(:focus):invalid{z-index:4}.btn{--bs-btn-padding-x:.75rem;--bs-btn-padding-y:.375rem;--bs-btn-font-family: ;--bs-btn-font-size:1rem;--bs-btn-font-weight:400;--bs-btn-line-height:1.5;--bs-btn-color:#212529;--bs-btn-bg:transparent;--bs-btn-border-width:1px;--bs-btn-border-color:transparent;--bs-btn-border-radius:.375rem;--bs-btn-hover-border-color:transparent;--bs-btn-box-shadow:inset 0 1px 0 rgba(255, 255, 255, .15),0 1px 1px rgba(0, 0, 0, .075);--bs-btn-disabled-opacity:.65;--bs-btn-focus-box-shadow:0 0 0 .25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);display:inline-block;padding:var(--bs-btn-padding-y) var(--bs-btn-padding-x);font-family:var(--bs-btn-font-family);font-size:var(--bs-btn-font-size);font-weight:var(--bs-btn-font-weight);line-height:var(--bs-btn-line-height);color:var(--bs-btn-color);text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;user-select:none;border:var(--bs-btn-border-width) solid var(--bs-btn-border-color);border-radius:var(--bs-btn-border-radius);background-color:var(--bs-btn-bg);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color)}.btn-check+.btn:hover{color:var(--bs-btn-color);background-color:var(--bs-btn-bg);border-color:var(--bs-btn-border-color)}.btn:focus-visible{color:var(--bs-btn-hover-color);background-color:var(--bs-btn-hover-bg);border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:focus-visible+.btn{border-color:var(--bs-btn-hover-border-color);outline:0;box-shadow:var(--bs-btn-focus-box-shadow)}.btn-check:checked+.btn,.btn.active,.btn.show,.btn:first-child:active,:not(.btn-check)+.btn:active{color:var(--bs-btn-active-color);background-color:var(--bs-btn-active-bg);border-color:var(--bs-btn-active-border-color)}.btn-check:checked+.btn:focus-visible,.btn.active:focus-visible,.btn.show:focus-visible,.btn:first-child:active:focus-visible,:not(.btn-check)+.btn:active:focus-visible{box-shadow:var(--bs-btn-focus-box-shadow)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{color:var(--bs-btn-disabled-color);pointer-events:none;background-color:var(--bs-btn-disabled-bg);border-color:var(--bs-btn-disabled-border-color);opacity:var(--bs-btn-disabled-opacity)}.btn-primary{--bs-btn-color:#fff;--bs-btn-bg:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0b5ed7;--bs-btn-hover-border-color:#0a58ca;--bs-btn-focus-shadow-rgb:49,132,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0a58ca;--bs-btn-active-border-color:#0a53be;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#0d6efd;--bs-btn-disabled-border-color:#0d6efd}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#5c636a;--bs-btn-hover-border-color:#565e64;--bs-btn-focus-shadow-rgb:130,138,145;--bs-btn-active-color:#fff;--bs-btn-active-bg:#565e64;--bs-btn-active-border-color:#51585e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#6c757d;--bs-btn-disabled-border-color:#6c757d}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#157347;--bs-btn-hover-border-color:#146c43;--bs-btn-focus-shadow-rgb:60,153,110;--bs-btn-active-color:#fff;--bs-btn-active-bg:#146c43;--bs-btn-active-border-color:#13653f;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#198754;--bs-btn-disabled-border-color:#198754}.btn-info{--bs-btn-color:#000;--bs-btn-bg:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#31d2f2;--bs-btn-hover-border-color:#25cff2;--bs-btn-focus-shadow-rgb:11,172,204;--bs-btn-active-color:#000;--bs-btn-active-bg:#3dd5f3;--bs-btn-active-border-color:#25cff2;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#0dcaf0;--bs-btn-disabled-border-color:#0dcaf0}.btn-warning{--bs-btn-color:#000;--bs-btn-bg:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffca2c;--bs-btn-hover-border-color:#ffc720;--bs-btn-focus-shadow-rgb:217,164,6;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffcd39;--bs-btn-active-border-color:#ffc720;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#ffc107;--bs-btn-disabled-border-color:#ffc107}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#bb2d3b;--bs-btn-hover-border-color:#b02a37;--bs-btn-focus-shadow-rgb:225,83,97;--bs-btn-active-color:#fff;--bs-btn-active-bg:#b02a37;--bs-btn-active-border-color:#a52834;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#dc3545;--bs-btn-disabled-border-color:#dc3545}.btn-light{--bs-btn-color:#000;--bs-btn-bg:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#d3d4d5;--bs-btn-hover-border-color:#c6c7c8;--bs-btn-focus-shadow-rgb:211,212,213;--bs-btn-active-color:#000;--bs-btn-active-bg:#c6c7c8;--bs-btn-active-border-color:#babbbc;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#f8f9fa;--bs-btn-disabled-border-color:#f8f9fa}.btn-dark{--bs-btn-color:#fff;--bs-btn-bg:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#424649;--bs-btn-hover-border-color:#373b3e;--bs-btn-focus-shadow-rgb:66,70,73;--bs-btn-active-color:#fff;--bs-btn-active-bg:#4d5154;--bs-btn-active-border-color:#373b3e;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#212529;--bs-btn-disabled-border-color:#212529}.btn-outline-primary{--bs-btn-color:#0d6efd;--bs-btn-border-color:#0d6efd;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#0d6efd;--bs-btn-hover-border-color:#0d6efd;--bs-btn-focus-shadow-rgb:13,110,253;--bs-btn-active-color:#fff;--bs-btn-active-bg:#0d6efd;--bs-btn-active-border-color:#0d6efd;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#0d6efd;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0d6efd;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#6c757d;--bs-btn-border-color:#6c757d;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#6c757d;--bs-btn-hover-border-color:#6c757d;--bs-btn-focus-shadow-rgb:108,117,125;--bs-btn-active-color:#fff;--bs-btn-active-bg:#6c757d;--bs-btn-active-border-color:#6c757d;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#6c757d;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#198754;--bs-btn-border-color:#198754;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#198754;--bs-btn-hover-border-color:#198754;--bs-btn-focus-shadow-rgb:25,135,84;--bs-btn-active-color:#fff;--bs-btn-active-bg:#198754;--bs-btn-active-border-color:#198754;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#198754;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#198754;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#0dcaf0;--bs-btn-border-color:#0dcaf0;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#0dcaf0;--bs-btn-hover-border-color:#0dcaf0;--bs-btn-focus-shadow-rgb:13,202,240;--bs-btn-active-color:#000;--bs-btn-active-bg:#0dcaf0;--bs-btn-active-border-color:#0dcaf0;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#0dcaf0;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#0dcaf0;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#ffc107;--bs-btn-border-color:#ffc107;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#ffc107;--bs-btn-hover-border-color:#ffc107;--bs-btn-focus-shadow-rgb:255,193,7;--bs-btn-active-color:#000;--bs-btn-active-bg:#ffc107;--bs-btn-active-border-color:#ffc107;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#ffc107;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#ffc107;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#dc3545;--bs-btn-border-color:#dc3545;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#dc3545;--bs-btn-hover-border-color:#dc3545;--bs-btn-focus-shadow-rgb:220,53,69;--bs-btn-active-color:#fff;--bs-btn-active-bg:#dc3545;--bs-btn-active-border-color:#dc3545;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#dc3545;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#dc3545;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#f8f9fa;--bs-btn-border-color:#f8f9fa;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#f8f9fa;--bs-btn-hover-border-color:#f8f9fa;--bs-btn-focus-shadow-rgb:248,249,250;--bs-btn-active-color:#000;--bs-btn-active-bg:#f8f9fa;--bs-btn-active-border-color:#f8f9fa;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#f8f9fa;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f8f9fa;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#212529;--bs-btn-border-color:#212529;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#212529;--bs-btn-hover-border-color:#212529;--bs-btn-focus-shadow-rgb:33,37,41;--bs-btn-active-color:#fff;--bs-btn-active-bg:#212529;--bs-btn-active-border-color:#212529;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#212529;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#212529;--bs-gradient:none}.btn-link{--bs-btn-font-weight:400;--bs-btn-color:var(--bs-link-color);--bs-btn-bg:transparent;--bs-btn-border-color:transparent;--bs-btn-hover-color:var(--bs-link-hover-color);--bs-btn-hover-border-color:transparent;--bs-btn-active-color:var(--bs-link-hover-color);--bs-btn-active-border-color:transparent;--bs-btn-disabled-color:#6c757d;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:none;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.btn-link:focus-visible{color:var(--bs-btn-color)}.btn-link:hover{color:var(--bs-btn-hover-color)}.btn-group-lg>.btn,.btn-lg{--bs-btn-padding-y:.5rem;--bs-btn-padding-x:1rem;--bs-btn-font-size:1.25rem;--bs-btn-border-radius:.5rem}.btn-group-sm>.btn,.btn-sm{--bs-btn-padding-y:.25rem;--bs-btn-padding-x:.5rem;--bs-btn-font-size:.875rem;--bs-btn-border-radius:.25rem}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropdown-center,.dropend,.dropstart,.dropup,.dropup-center{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty:after{margin-left:0}.dropdown-menu{--bs-dropdown-zindex:1000;--bs-dropdown-min-width:10rem;--bs-dropdown-padding-x:0;--bs-dropdown-padding-y:.5rem;--bs-dropdown-spacer:.125rem;--bs-dropdown-font-size:1rem;--bs-dropdown-color:#212529;--bs-dropdown-bg:#fff;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:.375rem;--bs-dropdown-border-width:1px;--bs-dropdown-inner-border-radius:calc(.375rem - 1px);--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:.5rem;--bs-dropdown-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-dropdown-link-color:#212529;--bs-dropdown-link-hover-color:#1e2125;--bs-dropdown-link-hover-bg:#e9ecef;--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:.25rem;--bs-dropdown-header-color:#6c757d;--bs-dropdown-header-padding-x:1rem;--bs-dropdown-header-padding-y:.5rem;position:absolute;z-index:var(--bs-dropdown-zindex);display:none;min-width:var(--bs-dropdown-min-width);padding:var(--bs-dropdown-padding-y) var(--bs-dropdown-padding-x);margin:0;font-size:var(--bs-dropdown-font-size);color:var(--bs-dropdown-color);text-align:left;list-style:none;background-color:var(--bs-dropdown-bg);background-clip:padding-box;border:var(--bs-dropdown-border-width) solid var(--bs-dropdown-border-color);border-radius:var(--bs-dropdown-border-radius)}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:var(--bs-dropdown-spacer)}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:var(--bs-dropdown-spacer)}.dropup .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:var(--bs-dropdown-spacer)}.dropend .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty:after{margin-left:0}.dropend .dropdown-toggle:after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:var(--bs-dropdown-spacer)}.dropstart .dropdown-toggle:after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:""}.dropstart .dropdown-toggle:after{display:none}.dropstart .dropdown-toggle:before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:"";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty:after{margin-left:0}.dropstart .dropdown-toggle:before{vertical-align:0}.dropdown-divider{height:0;margin:var(--bs-dropdown-divider-margin-y) 0;overflow:hidden;border-top:1px solid var(--bs-dropdown-divider-bg);opacity:1}.dropdown-item{display:block;width:100%;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);clear:both;font-weight:400;color:var(--bs-dropdown-link-color);text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:var(--bs-dropdown-link-hover-color);background-color:var(--bs-dropdown-link-hover-bg)}.dropdown-item.active,.dropdown-item:active{color:var(--bs-dropdown-link-active-color);text-decoration:none;background-color:var(--bs-dropdown-link-active-bg)}.dropdown-item.disabled,.dropdown-item:disabled{color:var(--bs-dropdown-link-disabled-color);pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:var(--bs-dropdown-header-padding-y) var(--bs-dropdown-header-padding-x);margin-bottom:0;font-size:.875rem;color:var(--bs-dropdown-header-color);white-space:nowrap}.dropdown-item-text{display:block;padding:var(--bs-dropdown-item-padding-y) var(--bs-dropdown-item-padding-x);color:var(--bs-dropdown-link-color)}.dropdown-menu-dark{--bs-dropdown-color:#dee2e6;--bs-dropdown-bg:#343a40;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-box-shadow: ;--bs-dropdown-link-color:#dee2e6;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-link-hover-bg:rgba(255, 255, 255, .15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:#adb5bd;--bs-dropdown-header-color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group{border-radius:.375rem}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn.dropdown-toggle-split:first-child,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split:after,.dropend .dropdown-toggle-split:after,.dropup .dropdown-toggle-split:after{margin-left:0}.dropstart .dropdown-toggle-split:before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{--bs-nav-link-padding-x:1rem;--bs-nav-link-padding-y:.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-link-color);--bs-nav-link-hover-color:var(--bs-link-hover-color);--bs-nav-link-disabled-color:#6c757d;display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:var(--bs-nav-link-padding-y) var(--bs-nav-link-padding-x);font-size:var(--bs-nav-link-font-size);font-weight:var(--bs-nav-link-font-weight);color:var(--bs-nav-link-color);text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:var(--bs-nav-link-hover-color)}.nav-link.disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:1px;--bs-nav-tabs-border-color:#dee2e6;--bs-nav-tabs-border-radius:.375rem;--bs-nav-tabs-link-hover-border-color:#e9ecef #e9ecef #dee2e6;--bs-nav-tabs-link-active-color:#495057;--bs-nav-tabs-link-active-bg:#fff;--bs-nav-tabs-link-active-border-color:#dee2e6 #dee2e6 #fff;border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-tabs .nav-link{margin-bottom:calc(-1 * var(--bs-nav-tabs-border-width));background:0 0;border:var(--bs-nav-tabs-border-width) solid transparent;border-top-left-radius:var(--bs-nav-tabs-border-radius);border-top-right-radius:var(--bs-nav-tabs-border-radius)}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{isolation:isolate;border-color:var(--bs-nav-tabs-link-hover-border-color)}.nav-tabs .nav-link.disabled,.nav-tabs .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:var(--bs-nav-tabs-link-active-color);background-color:var(--bs-nav-tabs-link-active-bg);border-color:var(--bs-nav-tabs-link-active-border-color)}.nav-tabs .dropdown-menu{margin-top:calc(-1 * var(--bs-nav-tabs-border-width));border-top-left-radius:0;border-top-right-radius:0}.nav-pills{--bs-nav-pills-border-radius:.375rem;--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-pills .nav-link{background:0 0;border:0;border-radius:var(--bs-nav-pills-border-radius)}.nav-pills .nav-link:disabled{color:var(--bs-nav-link-disabled-color);background-color:transparent;border-color:transparent}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:var(--bs-nav-pills-link-active-color);background-color:var(--bs-nav-pills-link-active-bg)}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:.5rem;--bs-navbar-color:rgba(0, 0, 0, .55);--bs-navbar-hover-color:rgba(0, 0, 0, .7);--bs-navbar-disabled-color:rgba(0, 0, 0, .3);--bs-navbar-active-color:rgba(0, 0, 0, .9);--bs-navbar-brand-padding-y:.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(0, 0, 0, .9);--bs-navbar-brand-hover-color:rgba(0, 0, 0, .9);--bs-navbar-nav-link-padding-x:.5rem;--bs-navbar-toggler-padding-y:.25rem;--bs-navbar-toggler-padding-x:.75rem;--bs-navbar-toggler-font-size:1.25rem;--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");--bs-navbar-toggler-border-color:rgba(0, 0, 0, .1);--bs-navbar-toggler-border-radius:.375rem;--bs-navbar-toggler-focus-width:.25rem;--bs-navbar-toggler-transition:box-shadow .15s ease-in-out;position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:var(--bs-navbar-padding-y) var(--bs-navbar-padding-x)}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:var(--bs-navbar-brand-padding-y);padding-bottom:var(--bs-navbar-brand-padding-y);margin-right:var(--bs-navbar-brand-margin-end);font-size:var(--bs-navbar-brand-font-size);color:var(--bs-navbar-brand-color);text-decoration:none;white-space:nowrap}.navbar-brand:focus,.navbar-brand:hover{color:var(--bs-navbar-brand-hover-color)}.navbar-nav{--bs-nav-link-padding-x:0;--bs-nav-link-padding-y:.5rem;--bs-nav-link-font-weight: ;--bs-nav-link-color:var(--bs-navbar-color);--bs-nav-link-hover-color:var(--bs-navbar-hover-color);--bs-nav-link-disabled-color:var(--bs-navbar-disabled-color);display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link.active,.navbar-nav .show>.nav-link{color:var(--bs-navbar-active-color)}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem;color:var(--bs-navbar-color)}.navbar-text a,.navbar-text a:focus,.navbar-text a:hover{color:var(--bs-navbar-active-color)}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:var(--bs-navbar-toggler-padding-y) var(--bs-navbar-toggler-padding-x);font-size:var(--bs-navbar-toggler-font-size);line-height:1;color:var(--bs-navbar-color);background-color:transparent;border:var(--bs-border-width) solid var(--bs-navbar-toggler-border-color);border-radius:var(--bs-navbar-toggler-border-radius);transition:var(--bs-navbar-toggler-transition)}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 var(--bs-navbar-toggler-focus-width)}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-image:var(--bs-navbar-toggler-icon-bg);background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-sm .offcanvas .offcanvas-header{display:none}.navbar-expand-sm .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-md .offcanvas .offcanvas-header{display:none}.navbar-expand-md .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-lg .offcanvas .offcanvas-header{display:none}.navbar-expand-lg .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xl .offcanvas .offcanvas-header{display:none}.navbar-expand-xl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand-xxl .offcanvas .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:var(--bs-navbar-nav-link-padding-x);padding-left:var(--bs-navbar-nav-link-padding-x)}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas{position:static;z-index:auto;flex-grow:1;width:auto!important;height:auto!important;visibility:visible!important;background-color:transparent!important;border:0!important;transform:none!important;transition:none}.navbar-expand .offcanvas .offcanvas-header{display:none}.navbar-expand .offcanvas .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-dark{--bs-navbar-color:rgba(255, 255, 255, .55);--bs-navbar-hover-color:rgba(255, 255, 255, .75);--bs-navbar-disabled-color:rgba(255, 255, 255, .25);--bs-navbar-active-color:#fff;--bs-navbar-brand-color:#fff;--bs-navbar-brand-hover-color:#fff;--bs-navbar-toggler-border-color:rgba(255, 255, 255, .1);--bs-navbar-toggler-icon-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e")}.card{--bs-card-spacer-y:1rem;--bs-card-spacer-x:1rem;--bs-card-title-spacer-y:.5rem;--bs-card-border-width:1px;--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:.375rem;--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(.375rem - 1px);--bs-card-cap-padding-y:.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(0, 0, 0, .03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:#fff;--bs-card-img-overlay-padding:1rem;--bs-card-group-margin:.75rem;position:relative;display:flex;flex-direction:column;min-width:0;height:var(--bs-card-height);word-wrap:break-word;background-color:var(--bs-card-bg);background-clip:border-box;border:var(--bs-card-border-width) solid var(--bs-card-border-color);border-radius:var(--bs-card-border-radius)}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:var(--bs-card-spacer-y) var(--bs-card-spacer-x);color:var(--bs-card-color)}.card-title{margin-bottom:var(--bs-card-title-spacer-y)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:var(--bs-card-spacer-x)}.card-header{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);margin-bottom:0;color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-bottom:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-header:first-child{border-radius:var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius) 0 0}.card-footer{padding:var(--bs-card-cap-padding-y) var(--bs-card-cap-padding-x);color:var(--bs-card-cap-color);background-color:var(--bs-card-cap-bg);border-top:var(--bs-card-border-width) solid var(--bs-card-border-color)}.card-footer:last-child{border-radius:0 0 var(--bs-card-inner-border-radius) var(--bs-card-inner-border-radius)}.card-header-tabs{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-bottom:calc(-1 * var(--bs-card-cap-padding-y));margin-left:calc(-.5 * var(--bs-card-cap-padding-x));border-bottom:0}.card-header-tabs .nav-link.active{background-color:var(--bs-card-bg);border-bottom-color:var(--bs-card-bg)}.card-header-pills{margin-right:calc(-.5 * var(--bs-card-cap-padding-x));margin-left:calc(-.5 * var(--bs-card-cap-padding-x))}.card-img-overlay{position:absolute;inset:0;padding:var(--bs-card-img-overlay-padding);border-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:var(--bs-card-inner-border-radius);border-top-right-radius:var(--bs-card-inner-border-radius)}.card-img,.card-img-bottom{border-bottom-right-radius:var(--bs-card-inner-border-radius);border-bottom-left-radius:var(--bs-card-inner-border-radius)}.card-group>.card{margin-bottom:var(--bs-card-group-margin)}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion{--bs-accordion-color:#212529;--bs-accordion-bg:#fff;--bs-accordion-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease;--bs-accordion-border-color:var(--bs-border-color);--bs-accordion-border-width:1px;--bs-accordion-border-radius:.375rem;--bs-accordion-inner-border-radius:calc(.375rem - 1px);--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:#212529;--bs-accordion-btn-bg:var(--bs-accordion-bg);--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-icon-width:1.25rem;--bs-accordion-btn-icon-transform:rotate(-180deg);--bs-accordion-btn-icon-transition:transform .2s ease-in-out;--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");--bs-accordion-btn-focus-border-color:#86b7fe;--bs-accordion-btn-focus-box-shadow:0 0 0 .25rem rgba(13, 110, 253, .25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:#0c63e4;--bs-accordion-active-bg:#e7f1ff}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:var(--bs-accordion-btn-padding-y) var(--bs-accordion-btn-padding-x);font-size:1rem;color:var(--bs-accordion-btn-color);text-align:left;background-color:var(--bs-accordion-btn-bg);border:0;border-radius:0;overflow-anchor:none;transition:var(--bs-accordion-transition)}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:var(--bs-accordion-active-color);background-color:var(--bs-accordion-active-bg);box-shadow:inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color)}.accordion-button:not(.collapsed):after{background-image:var(--bs-accordion-btn-active-icon);transform:var(--bs-accordion-btn-icon-transform)}.accordion-button:after{flex-shrink:0;width:var(--bs-accordion-btn-icon-width);height:var(--bs-accordion-btn-icon-width);margin-left:auto;content:"";background-image:var(--bs-accordion-btn-icon);background-repeat:no-repeat;background-size:var(--bs-accordion-btn-icon-width);transition:var(--bs-accordion-btn-icon-transition)}@media (prefers-reduced-motion:reduce){.accordion-button:after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:var(--bs-accordion-btn-focus-border-color);outline:0;box-shadow:var(--bs-accordion-btn-focus-box-shadow)}.accordion-header{margin-bottom:0}.accordion-item{color:var(--bs-accordion-color);background-color:var(--bs-accordion-bg);border:var(--bs-accordion-border-width) solid var(--bs-accordion-border-color)}.accordion-item:first-of-type{border-top-left-radius:var(--bs-accordion-border-radius);border-top-right-radius:var(--bs-accordion-border-radius)}.accordion-item:first-of-type .accordion-button{border-top-left-radius:var(--bs-accordion-inner-border-radius);border-top-right-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:var(--bs-accordion-inner-border-radius);border-bottom-left-radius:var(--bs-accordion-inner-border-radius)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:var(--bs-accordion-border-radius);border-bottom-left-radius:var(--bs-accordion-border-radius)}.accordion-body{padding:var(--bs-accordion-body-padding-y) var(--bs-accordion-body-padding-x)}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button,.accordion-flush .accordion-item .accordion-button.collapsed{border-radius:0}.breadcrumb{--bs-breadcrumb-padding-x:0;--bs-breadcrumb-padding-y:0;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-bg: ;--bs-breadcrumb-border-radius: ;--bs-breadcrumb-divider-color:#6c757d;--bs-breadcrumb-item-padding-x:.5rem;--bs-breadcrumb-item-active-color:#6c757d;display:flex;flex-wrap:wrap;padding:var(--bs-breadcrumb-padding-y) var(--bs-breadcrumb-padding-x);margin-bottom:var(--bs-breadcrumb-margin-bottom);font-size:var(--bs-breadcrumb-font-size);list-style:none;background-color:var(--bs-breadcrumb-bg);border-radius:var(--bs-breadcrumb-border-radius)}.breadcrumb-item+.breadcrumb-item{padding-left:var(--bs-breadcrumb-item-padding-x)}.breadcrumb-item+.breadcrumb-item:before{float:left;padding-right:var(--bs-breadcrumb-item-padding-x);color:var(--bs-breadcrumb-divider-color);content:var(--bs-breadcrumb-divider, "/")}.breadcrumb-item.active{color:var(--bs-breadcrumb-item-active-color)}.pagination{--bs-pagination-padding-x:.75rem;--bs-pagination-padding-y:.375rem;--bs-pagination-font-size:1rem;--bs-pagination-color:var(--bs-link-color);--bs-pagination-bg:#fff;--bs-pagination-border-width:1px;--bs-pagination-border-color:#dee2e6;--bs-pagination-border-radius:.375rem;--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:#e9ecef;--bs-pagination-hover-border-color:#dee2e6;--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:#e9ecef;--bs-pagination-focus-box-shadow:0 0 0 .25rem rgba(13, 110, 253, .25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#0d6efd;--bs-pagination-active-border-color:#0d6efd;--bs-pagination-disabled-color:#6c757d;--bs-pagination-disabled-bg:#fff;--bs-pagination-disabled-border-color:#dee2e6;display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;padding:var(--bs-pagination-padding-y) var(--bs-pagination-padding-x);font-size:var(--bs-pagination-font-size);color:var(--bs-pagination-color);text-decoration:none;background-color:var(--bs-pagination-bg);border:var(--bs-pagination-border-width) solid var(--bs-pagination-border-color);transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:var(--bs-pagination-hover-color);background-color:var(--bs-pagination-hover-bg);border-color:var(--bs-pagination-hover-border-color)}.page-link:focus{z-index:3;color:var(--bs-pagination-focus-color);background-color:var(--bs-pagination-focus-bg);outline:0;box-shadow:var(--bs-pagination-focus-box-shadow)}.active>.page-link,.page-link.active{z-index:3;color:var(--bs-pagination-active-color);background-color:var(--bs-pagination-active-bg);border-color:var(--bs-pagination-active-border-color)}.disabled>.page-link,.page-link.disabled{color:var(--bs-pagination-disabled-color);pointer-events:none;background-color:var(--bs-pagination-disabled-bg);border-color:var(--bs-pagination-disabled-border-color)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item:first-child .page-link{border-top-left-radius:var(--bs-pagination-border-radius);border-bottom-left-radius:var(--bs-pagination-border-radius)}.page-item:last-child .page-link{border-top-right-radius:var(--bs-pagination-border-radius);border-bottom-right-radius:var(--bs-pagination-border-radius)}.pagination-lg{--bs-pagination-padding-x:1.5rem;--bs-pagination-padding-y:.75rem;--bs-pagination-font-size:1.25rem;--bs-pagination-border-radius:.5rem}.pagination-sm{--bs-pagination-padding-x:.5rem;--bs-pagination-padding-y:.25rem;--bs-pagination-font-size:.875rem;--bs-pagination-border-radius:.25rem}.badge{--bs-badge-padding-x:.65em;--bs-badge-padding-y:.35em;--bs-badge-font-size:.75em;--bs-badge-font-weight:700;--bs-badge-color:#fff;--bs-badge-border-radius:.375rem;display:inline-block;padding:var(--bs-badge-padding-y) var(--bs-badge-padding-x);font-size:var(--bs-badge-font-size);font-weight:var(--bs-badge-font-weight);line-height:1;color:var(--bs-badge-color);text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:var(--bs-badge-border-radius)}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{--bs-alert-bg:transparent;--bs-alert-padding-x:1rem;--bs-alert-padding-y:1rem;--bs-alert-margin-bottom:1rem;--bs-alert-color:inherit;--bs-alert-border-color:transparent;--bs-alert-border:1px solid var(--bs-alert-border-color);--bs-alert-border-radius:.375rem;position:relative;padding:var(--bs-alert-padding-y) var(--bs-alert-padding-x);margin-bottom:var(--bs-alert-margin-bottom);color:var(--bs-alert-color);background-color:var(--bs-alert-bg);border:var(--bs-alert-border);border-radius:var(--bs-alert-border-radius)}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{--bs-alert-color:#084298;--bs-alert-bg:#cfe2ff;--bs-alert-border-color:#b6d4fe}.alert-primary .alert-link{color:#06357a}.alert-secondary{--bs-alert-color:#41464b;--bs-alert-bg:#e2e3e5;--bs-alert-border-color:#d3d6d8}.alert-secondary .alert-link{color:#34383c}.alert-success{--bs-alert-color:#0f5132;--bs-alert-bg:#d1e7dd;--bs-alert-border-color:#badbcc}.alert-success .alert-link{color:#0c4128}.alert-info{--bs-alert-color:#055160;--bs-alert-bg:#cff4fc;--bs-alert-border-color:#b6effb}.alert-info .alert-link{color:#04414d}.alert-warning{--bs-alert-color:#664d03;--bs-alert-bg:#fff3cd;--bs-alert-border-color:#ffecb5}.alert-warning .alert-link{color:#523e02}.alert-danger{--bs-alert-color:#842029;--bs-alert-bg:#f8d7da;--bs-alert-border-color:#f5c2c7}.alert-danger .alert-link{color:#6a1a21}.alert-light{--bs-alert-color:#636464;--bs-alert-bg:#fefefe;--bs-alert-border-color:#fdfdfe}.alert-light .alert-link{color:#4f5050}.alert-dark{--bs-alert-color:#141619;--bs-alert-bg:#d3d3d4;--bs-alert-border-color:#bcbebf}.alert-dark .alert-link{color:#101214}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{--bs-progress-height:1rem;--bs-progress-font-size:.75rem;--bs-progress-bg:#e9ecef;--bs-progress-border-radius:.375rem;--bs-progress-box-shadow:inset 0 1px 2px rgba(0, 0, 0, .075);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#0d6efd;--bs-progress-bar-transition:width .6s ease;display:flex;height:var(--bs-progress-height);overflow:hidden;font-size:var(--bs-progress-font-size);background-color:var(--bs-progress-bg);border-radius:var(--bs-progress-border-radius)}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:var(--bs-progress-bar-color);text-align:center;white-space:nowrap;background-color:var(--bs-progress-bar-bg);transition:var(--bs-progress-bar-transition)}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:var(--bs-progress-height) var(--bs-progress-height)}.progress-bar-animated{animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{animation:none}}.list-group{--bs-list-group-color:#212529;--bs-list-group-bg:#fff;--bs-list-group-border-color:rgba(0, 0, 0, .125);--bs-list-group-border-width:1px;--bs-list-group-border-radius:.375rem;--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:.5rem;--bs-list-group-action-color:#495057;--bs-list-group-action-hover-color:#495057;--bs-list-group-action-hover-bg:#f8f9fa;--bs-list-group-action-active-color:#212529;--bs-list-group-action-active-bg:#e9ecef;--bs-list-group-disabled-color:#6c757d;--bs-list-group-disabled-bg:#fff;--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#0d6efd;--bs-list-group-active-border-color:#0d6efd;display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:var(--bs-list-group-border-radius)}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>.list-group-item:before{content:counters(section,".") ". ";counter-increment:section}.list-group-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:var(--bs-list-group-action-hover-color);text-decoration:none;background-color:var(--bs-list-group-action-hover-bg)}.list-group-item-action:active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.list-group-item{position:relative;display:block;padding:var(--bs-list-group-item-padding-y) var(--bs-list-group-item-padding-x);color:var(--bs-list-group-color);text-decoration:none;background-color:var(--bs-list-group-bg);border:var(--bs-list-group-border-width) solid var(--bs-list-group-border-color)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:var(--bs-list-group-disabled-color);pointer-events:none;background-color:var(--bs-list-group-disabled-bg)}.list-group-item.active{z-index:2;color:var(--bs-list-group-active-color);background-color:var(--bs-list-group-active-bg);border-color:var(--bs-list-group-active-border-color)}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:calc(-1 * var(--bs-list-group-border-width));border-top-width:var(--bs-list-group-border-width)}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}@media (min-width:1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child:not(:last-child){border-bottom-left-radius:var(--bs-list-group-border-radius);border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child:not(:first-child){border-top-right-radius:var(--bs-list-group-border-radius);border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:var(--bs-list-group-border-width);border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:calc(-1 * var(--bs-list-group-border-width));border-left-width:var(--bs-list-group-border-width)}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 var(--bs-list-group-border-width)}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#084298;background-color:#cfe2ff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#084298;background-color:#bacbe6}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#084298;border-color:#084298}.list-group-item-secondary{color:#41464b;background-color:#e2e3e5}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#41464b;background-color:#cbccce}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#41464b;border-color:#41464b}.list-group-item-success{color:#0f5132;background-color:#d1e7dd}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#0f5132;background-color:#bcd0c7}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#0f5132;border-color:#0f5132}.list-group-item-info{color:#055160;background-color:#cff4fc}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#055160;background-color:#badce3}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#055160;border-color:#055160}.list-group-item-warning{color:#664d03;background-color:#fff3cd}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#664d03;background-color:#e6dbb9}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#664d03;border-color:#664d03}.list-group-item-danger{color:#842029;background-color:#f8d7da}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#842029;background-color:#dfc2c4}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#842029;border-color:#842029}.list-group-item-light{color:#636464;background-color:#fefefe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#636464;background-color:#e5e5e5}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#636464;border-color:#636464}.list-group-item-dark{color:#141619;background-color:#d3d3d4}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#141619;background-color:#bebebf}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#141619;border-color:#141619}.btn-close{box-sizing:content-box;width:1em;height:1em;padding:.25em;color:#000;background:transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707a1 1 0 0 1 0-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat;border:0;border-radius:.375rem;opacity:.5}.btn-close:hover{color:#000;text-decoration:none;opacity:.75}.btn-close:focus{outline:0;box-shadow:0 0 0 .25rem #0d6efd40;opacity:1}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{--bs-toast-zindex:1090;--bs-toast-padding-x:.75rem;--bs-toast-padding-y:.5rem;--bs-toast-spacing:1.5rem;--bs-toast-max-width:350px;--bs-toast-font-size:.875rem;--bs-toast-color: ;--bs-toast-bg:rgba(255, 255, 255, .85);--bs-toast-border-width:1px;--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:.375rem;--bs-toast-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-toast-header-color:#6c757d;--bs-toast-header-bg:rgba(255, 255, 255, .85);--bs-toast-header-border-color:rgba(0, 0, 0, .05);width:var(--bs-toast-max-width);max-width:100%;font-size:var(--bs-toast-font-size);color:var(--bs-toast-color);pointer-events:auto;background-color:var(--bs-toast-bg);background-clip:padding-box;border:var(--bs-toast-border-width) solid var(--bs-toast-border-color);box-shadow:var(--bs-toast-box-shadow);border-radius:var(--bs-toast-border-radius)}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{--bs-toast-zindex:1090;position:absolute;z-index:var(--bs-toast-zindex);width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:var(--bs-toast-spacing)}.toast-header{display:flex;align-items:center;padding:var(--bs-toast-padding-y) var(--bs-toast-padding-x);color:var(--bs-toast-header-color);background-color:var(--bs-toast-header-bg);background-clip:padding-box;border-bottom:var(--bs-toast-border-width) solid var(--bs-toast-header-border-color);border-top-left-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width));border-top-right-radius:calc(var(--bs-toast-border-radius) - var(--bs-toast-border-width))}.toast-header .btn-close{margin-right:calc(-.5 * var(--bs-toast-padding-x));margin-left:var(--bs-toast-padding-x)}.toast-body{padding:var(--bs-toast-padding-x);word-wrap:break-word}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:.5rem;--bs-modal-color: ;--bs-modal-bg:#fff;--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:1px;--bs-modal-border-radius:.5rem;--bs-modal-box-shadow:0 .125rem .25rem rgba(0, 0, 0, .075);--bs-modal-inner-border-radius:calc(.5rem - 1px);--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:var(--bs-border-color);--bs-modal-header-border-width:1px;--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:var(--bs-border-color);--bs-modal-footer-border-width:1px;position:fixed;top:0;left:0;z-index:var(--bs-modal-zindex);display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:var(--bs-modal-margin);pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translateY(-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - var(--bs-modal-margin) * 2)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - var(--bs-modal-margin) * 2)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;color:var(--bs-modal-color);pointer-events:auto;background-color:var(--bs-modal-bg);background-clip:padding-box;border:var(--bs-modal-border-width) solid var(--bs-modal-border-color);border-radius:var(--bs-modal-border-radius);outline:0}.modal-backdrop{--bs-backdrop-zindex:1050;--bs-backdrop-bg:#000;--bs-backdrop-opacity:.5;position:fixed;top:0;left:0;z-index:var(--bs-backdrop-zindex);width:100vw;height:100vh;background-color:var(--bs-backdrop-bg)}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:var(--bs-backdrop-opacity)}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:var(--bs-modal-header-padding);border-bottom:var(--bs-modal-header-border-width) solid var(--bs-modal-header-border-color);border-top-left-radius:var(--bs-modal-inner-border-radius);border-top-right-radius:var(--bs-modal-inner-border-radius)}.modal-header .btn-close{padding:calc(var(--bs-modal-header-padding-y) * .5) calc(var(--bs-modal-header-padding-x) * .5);margin:calc(-.5 * var(--bs-modal-header-padding-y)) calc(-.5 * var(--bs-modal-header-padding-x)) calc(-.5 * var(--bs-modal-header-padding-y)) auto}.modal-title{margin-bottom:0;line-height:var(--bs-modal-title-line-height)}.modal-body{position:relative;flex:1 1 auto;padding:var(--bs-modal-padding)}.modal-footer{display:flex;flex-shrink:0;flex-wrap:wrap;align-items:center;justify-content:flex-end;padding:calc(var(--bs-modal-padding) - var(--bs-modal-footer-gap) * .5);background-color:var(--bs-modal-footer-bg);border-top:var(--bs-modal-footer-border-width) solid var(--bs-modal-footer-border-color);border-bottom-right-radius:var(--bs-modal-inner-border-radius);border-bottom-left-radius:var(--bs-modal-inner-border-radius)}.modal-footer>*{margin:calc(var(--bs-modal-footer-gap) * .5)}@media (min-width:576px){.modal{--bs-modal-margin:1.75rem;--bs-modal-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15)}.modal-dialog{max-width:var(--bs-modal-width);margin-right:auto;margin-left:auto}.modal-sm{--bs-modal-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{--bs-modal-width:800px}}@media (min-width:1200px){.modal-xl{--bs-modal-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-footer,.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-footer,.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-footer,.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-footer,.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-footer,.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-footer,.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}}.tooltip{--bs-tooltip-zindex:1080;--bs-tooltip-max-width:200px;--bs-tooltip-padding-x:.5rem;--bs-tooltip-padding-y:.25rem;--bs-tooltip-margin: ;--bs-tooltip-font-size:.875rem;--bs-tooltip-color:#fff;--bs-tooltip-bg:#000;--bs-tooltip-border-radius:.375rem;--bs-tooltip-opacity:.9;--bs-tooltip-arrow-width:.8rem;--bs-tooltip-arrow-height:.4rem;z-index:var(--bs-tooltip-zindex);display:block;padding:var(--bs-tooltip-arrow-height);margin:var(--bs-tooltip-margin);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-tooltip-font-size);word-wrap:break-word;opacity:0}.tooltip.show{opacity:var(--bs-tooltip-opacity)}.tooltip .tooltip-arrow{display:block;width:var(--bs-tooltip-arrow-width);height:var(--bs-tooltip-arrow-height)}.tooltip .tooltip-arrow:before{position:absolute;content:"";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow:before,.bs-tooltip-top .tooltip-arrow:before{top:-1px;border-width:var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-top-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:0;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow:before,.bs-tooltip-end .tooltip-arrow:before{right:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height) calc(var(--bs-tooltip-arrow-width) * .5) 0;border-right-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow:before,.bs-tooltip-bottom .tooltip-arrow:before{bottom:-1px;border-width:0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-bottom-color:var(--bs-tooltip-bg)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:0;width:var(--bs-tooltip-arrow-height);height:var(--bs-tooltip-arrow-width)}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow:before,.bs-tooltip-start .tooltip-arrow:before{left:-1px;border-width:calc(var(--bs-tooltip-arrow-width) * .5) 0 calc(var(--bs-tooltip-arrow-width) * .5) var(--bs-tooltip-arrow-height);border-left-color:var(--bs-tooltip-bg)}.tooltip-inner{max-width:var(--bs-tooltip-max-width);padding:var(--bs-tooltip-padding-y) var(--bs-tooltip-padding-x);color:var(--bs-tooltip-color);text-align:center;background-color:var(--bs-tooltip-bg);border-radius:var(--bs-tooltip-border-radius)}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:.875rem;--bs-popover-bg:#fff;--bs-popover-border-width:1px;--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:.5rem;--bs-popover-inner-border-radius:calc(.5rem - 1px);--bs-popover-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color: ;--bs-popover-header-bg:#f0f0f0;--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:#212529;--bs-popover-arrow-width:1rem;--bs-popover-arrow-height:.5rem;--bs-popover-arrow-border:var(--bs-popover-border-color);z-index:var(--bs-popover-zindex);display:block;max-width:var(--bs-popover-max-width);font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;white-space:normal;word-spacing:normal;line-break:auto;font-size:var(--bs-popover-font-size);word-wrap:break-word;background-color:var(--bs-popover-bg);background-clip:padding-box;border:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-radius:var(--bs-popover-border-radius)}.popover .popover-arrow{display:block;width:var(--bs-popover-arrow-width);height:var(--bs-popover-arrow-height)}.popover .popover-arrow:after,.popover .popover-arrow:before{position:absolute;display:block;content:"";border-color:transparent;border-style:solid;border-width:0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:after,.bs-popover-top>.popover-arrow:before{border-width:var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:before,.bs-popover-top>.popover-arrow:before{bottom:0;border-top-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow:after,.bs-popover-top>.popover-arrow:after{bottom:var(--bs-popover-border-width);border-top-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:after,.bs-popover-end>.popover-arrow:before{border-width:calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height) calc(var(--bs-popover-arrow-width) * .5) 0}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:before,.bs-popover-end>.popover-arrow:before{left:0;border-right-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow:after,.bs-popover-end>.popover-arrow:after{left:var(--bs-popover-border-width);border-right-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width))}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:before{border-width:0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:before,.bs-popover-bottom>.popover-arrow:before{top:0;border-bottom-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow:after,.bs-popover-bottom>.popover-arrow:after{top:var(--bs-popover-border-width);border-bottom-color:var(--bs-popover-bg)}.bs-popover-auto[data-popper-placement^=bottom] .popover-header:before,.bs-popover-bottom .popover-header:before{position:absolute;top:0;left:50%;display:block;width:var(--bs-popover-arrow-width);margin-left:calc(-.5 * var(--bs-popover-arrow-width));content:"";border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-header-bg)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-1 * (var(--bs-popover-arrow-height)) - var(--bs-popover-border-width));width:var(--bs-popover-arrow-height);height:var(--bs-popover-arrow-width)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:after,.bs-popover-start>.popover-arrow:before{border-width:calc(var(--bs-popover-arrow-width) * .5) 0 calc(var(--bs-popover-arrow-width) * .5) var(--bs-popover-arrow-height)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:before,.bs-popover-start>.popover-arrow:before{right:0;border-left-color:var(--bs-popover-arrow-border)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow:after,.bs-popover-start>.popover-arrow:after{right:var(--bs-popover-border-width);border-left-color:var(--bs-popover-bg)}.popover-header{padding:var(--bs-popover-header-padding-y) var(--bs-popover-header-padding-x);margin-bottom:0;font-size:var(--bs-popover-header-font-size);color:var(--bs-popover-header-color);background-color:var(--bs-popover-header-bg);border-bottom:var(--bs-popover-border-width) solid var(--bs-popover-border-color);border-top-left-radius:var(--bs-popover-inner-border-radius);border-top-right-radius:var(--bs-popover-inner-border-radius)}.popover-header:empty{display:none}.popover-body{padding:var(--bs-popover-body-padding-y) var(--bs-popover-body-padding-x);color:var(--bs-popover-body-color)}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner:after{display:block;clear:both;content:""}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translate(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translate(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e")}.carousel-control-next-icon{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%;list-style:none}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}.spinner-border,.spinner-grow{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-.125em;--bs-spinner-border-width:.25em;--bs-spinner-animation-speed:.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-.125em;--bs-spinner-animation-speed:.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.offcanvas,.offcanvas-lg,.offcanvas-md,.offcanvas-sm,.offcanvas-xl,.offcanvas-xxl{--bs-offcanvas-zindex:1045;--bs-offcanvas-width:400px;--bs-offcanvas-height:30vh;--bs-offcanvas-padding-x:1rem;--bs-offcanvas-padding-y:1rem;--bs-offcanvas-color: ;--bs-offcanvas-bg:#fff;--bs-offcanvas-border-width:1px;--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:0 .125rem .25rem rgba(0, 0, 0, .075)}@media (max-width:575.98px){.offcanvas-sm{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:575.98px) and (prefers-reduced-motion:reduce){.offcanvas-sm{transition:none}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:575.98px){.offcanvas-sm.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:575.98px){.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{transform:none}}@media (max-width:575.98px){.offcanvas-sm.hiding,.offcanvas-sm.show,.offcanvas-sm.showing{visibility:visible}}@media (min-width:576px){.offcanvas-sm{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-sm .offcanvas-header{display:none}.offcanvas-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:767.98px){.offcanvas-md{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:767.98px) and (prefers-reduced-motion:reduce){.offcanvas-md{transition:none}}@media (max-width:767.98px){.offcanvas-md.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:767.98px){.offcanvas-md.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:767.98px){.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{transform:none}}@media (max-width:767.98px){.offcanvas-md.hiding,.offcanvas-md.show,.offcanvas-md.showing{visibility:visible}}@media (min-width:768px){.offcanvas-md{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-md .offcanvas-header{display:none}.offcanvas-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:991.98px){.offcanvas-lg{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:991.98px) and (prefers-reduced-motion:reduce){.offcanvas-lg{transition:none}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:991.98px){.offcanvas-lg.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:991.98px){.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{transform:none}}@media (max-width:991.98px){.offcanvas-lg.hiding,.offcanvas-lg.show,.offcanvas-lg.showing{visibility:visible}}@media (min-width:992px){.offcanvas-lg{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-lg .offcanvas-header{display:none}.offcanvas-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1199.98px){.offcanvas-xl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:1199.98px) and (prefers-reduced-motion:reduce){.offcanvas-xl{transition:none}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:1199.98px){.offcanvas-xl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:1199.98px){.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{transform:none}}@media (max-width:1199.98px){.offcanvas-xl.hiding,.offcanvas-xl.show,.offcanvas-xl.showing{visibility:visible}}@media (min-width:1200px){.offcanvas-xl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xl .offcanvas-header{display:none}.offcanvas-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}@media (max-width:1399.98px){.offcanvas-xxl{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}}@media (max-width:1399.98px) and (prefers-reduced-motion:reduce){.offcanvas-xxl{transition:none}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}}@media (max-width:1399.98px){.offcanvas-xxl.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}}@media (max-width:1399.98px){.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{transform:none}}@media (max-width:1399.98px){.offcanvas-xxl.hiding,.offcanvas-xxl.show,.offcanvas-xxl.showing{visibility:visible}}@media (min-width:1400px){.offcanvas-xxl{--bs-offcanvas-height:auto;--bs-offcanvas-border-width:0;background-color:transparent!important}.offcanvas-xxl .offcanvas-header{display:none}.offcanvas-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible;background-color:transparent!important}}.offcanvas{position:fixed;bottom:0;z-index:var(--bs-offcanvas-zindex);display:flex;flex-direction:column;max-width:100%;color:var(--bs-offcanvas-color);visibility:hidden;background-color:var(--bs-offcanvas-bg);background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas.offcanvas-start{top:0;left:0;width:var(--bs-offcanvas-width);border-right:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(-100%)}.offcanvas.offcanvas-end{top:0;right:0;width:var(--bs-offcanvas-width);border-left:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translate(100%)}.offcanvas.offcanvas-top{top:0;right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-bottom:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(-100%)}.offcanvas.offcanvas-bottom{right:0;left:0;height:var(--bs-offcanvas-height);max-height:100%;border-top:var(--bs-offcanvas-border-width) solid var(--bs-offcanvas-border-color);transform:translateY(100%)}.offcanvas.show:not(.hiding),.offcanvas.showing{transform:none}.offcanvas.hiding,.offcanvas.show,.offcanvas.showing{visibility:visible}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x)}.offcanvas-header .btn-close{padding:calc(var(--bs-offcanvas-padding-y) * .5) calc(var(--bs-offcanvas-padding-x) * .5);margin-top:calc(-.5 * var(--bs-offcanvas-padding-y));margin-right:calc(-.5 * var(--bs-offcanvas-padding-x));margin-bottom:calc(-.5 * var(--bs-offcanvas-padding-y))}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:var(--bs-offcanvas-padding-y) var(--bs-offcanvas-padding-x);overflow-y:auto}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentcolor;opacity:.5}.placeholder.btn:before{display:inline-block;content:""}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{animation:placeholder-glow 2s ease-in-out infinite}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;animation:placeholder-wave 2s linear infinite}@keyframes placeholder-wave{to{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.clearfix:after{display:block;clear:both;content:""}.text-bg-primary{color:#fff!important;background-color:RGBA(13,110,253,var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(108,117,125,var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(25,135,84,var(--bs-bg-opacity,1))!important}.text-bg-info{color:#000!important;background-color:RGBA(13,202,240,var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(255,193,7,var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(220,53,69,var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(248,249,250,var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(33,37,41,var(--bs-bg-opacity,1))!important}.link-primary{color:#0d6efd!important}.link-primary:focus,.link-primary:hover{color:#0a58ca!important}.link-secondary{color:#6c757d!important}.link-secondary:focus,.link-secondary:hover{color:#565e64!important}.link-success{color:#198754!important}.link-success:focus,.link-success:hover{color:#146c43!important}.link-info{color:#0dcaf0!important}.link-info:focus,.link-info:hover{color:#3dd5f3!important}.link-warning{color:#ffc107!important}.link-warning:focus,.link-warning:hover{color:#ffcd39!important}.link-danger{color:#dc3545!important}.link-danger:focus,.link-danger:hover{color:#b02a37!important}.link-light{color:#f8f9fa!important}.link-light:focus,.link-light:hover{color:#f9fafb!important}.link-dark{color:#212529!important}.link-dark:focus,.link-dark:hover{color:#1a1e21!important}.ratio{position:relative;width:100%}.ratio:before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.stretched-link:after{position:absolute;inset:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:1px;min-height:1em;background-color:currentcolor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:0 .5rem 1rem #00000026!important}.shadow-sm{box-shadow:0 .125rem .25rem #00000013!important}.shadow-lg{box-shadow:0 1rem 3rem #0000002d!important}.shadow-none{box-shadow:none!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translate(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-0{border:0!important}.border-top{border-top:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-top-0{border-top:0!important}.border-end{border-right:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:var(--bs-border-width) var(--bs-border-style) var(--bs-border-color)!important}.border-start-0{border-left:0!important}.border-primary{--bs-border-opacity:1;border-color:rgba(var(--bs-primary-rgb),var(--bs-border-opacity))!important}.border-secondary{--bs-border-opacity:1;border-color:rgba(var(--bs-secondary-rgb),var(--bs-border-opacity))!important}.border-success{--bs-border-opacity:1;border-color:rgba(var(--bs-success-rgb),var(--bs-border-opacity))!important}.border-info{--bs-border-opacity:1;border-color:rgba(var(--bs-info-rgb),var(--bs-border-opacity))!important}.border-warning{--bs-border-opacity:1;border-color:rgba(var(--bs-warning-rgb),var(--bs-border-opacity))!important}.border-danger{--bs-border-opacity:1;border-color:rgba(var(--bs-danger-rgb),var(--bs-border-opacity))!important}.border-light{--bs-border-opacity:1;border-color:rgba(var(--bs-light-rgb),var(--bs-border-opacity))!important}.border-dark{--bs-border-opacity:1;border-color:rgba(var(--bs-dark-rgb),var(--bs-border-opacity))!important}.border-white{--bs-border-opacity:1;border-color:rgba(var(--bs-white-rgb),var(--bs-border-opacity))!important}.border-1{--bs-border-width:1px}.border-2{--bs-border-width:2px}.border-3{--bs-border-width:3px}.border-4{--bs-border-width:4px}.border-5{--bs-border-width:5px}.border-opacity-10{--bs-border-opacity:.1}.border-opacity-25{--bs-border-opacity:.25}.border-opacity-50{--bs-border-opacity:.5}.border-opacity-75{--bs-border-opacity:.75}.border-opacity-100{--bs-border-opacity:1}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-light{font-weight:300!important}.fw-lighter{font-weight:lighter!important}.fw-normal{font-weight:400!important}.fw-bold{font-weight:700!important}.fw-semibold{font-weight:600!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:#6c757d!important}.text-black-50{--bs-text-opacity:1;color:#00000080!important}.text-white-50{--bs-text-opacity:1;color:#ffffff80!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:.25}.text-opacity-50{--bs-text-opacity:.5}.text-opacity-75{--bs-text-opacity:.75}.text-opacity-100{--bs-text-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-opacity-10{--bs-bg-opacity:.1}.bg-opacity-25{--bs-bg-opacity:.25}.bg-opacity-50{--bs-bg-opacity:.5}.bg-opacity-75{--bs-bg-opacity:.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:var(--bs-border-radius)!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:var(--bs-border-radius-sm)!important}.rounded-2{border-radius:var(--bs-border-radius)!important}.rounded-3{border-radius:var(--bs-border-radius-lg)!important}.rounded-4{border-radius:var(--bs-border-radius-xl)!important}.rounded-5{border-radius:var(--bs-border-radius-2xl)!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:var(--bs-border-radius-pill)!important}.rounded-top{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}/*! - * Font Awesome Free 6.0.0 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - * Copyright 2022 Fonticons, Inc. - */.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-duotone,.fa-light,.fa-regular,.fa-solid,.fa-thin,.fab,.fad,.fal,.far,.fas,.fat{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,none))}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%;z-index:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)}.fa-0:before{content:"0"}.fa-1:before{content:"1"}.fa-2:before{content:"2"}.fa-3:before{content:"3"}.fa-4:before{content:"4"}.fa-5:before{content:"5"}.fa-6:before{content:"6"}.fa-7:before{content:"7"}.fa-8:before{content:"8"}.fa-9:before{content:"9"}.fa-a:before{content:"A"}.fa-address-book:before,.fa-contact-book:before{content:"\f2b9"}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:"\f2bb"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-anchor:before{content:"\f13d"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-double-down:before,.fa-angles-down:before{content:"\f103"}.fa-angle-double-left:before,.fa-angles-left:before{content:"\f100"}.fa-angle-double-right:before,.fa-angles-right:before{content:"\f101"}.fa-angle-double-up:before,.fa-angles-up:before{content:"\f102"}.fa-ankh:before{content:"\f644"}.fa-apple-alt:before,.fa-apple-whole:before{content:"\f5d1"}.fa-archway:before{content:"\f557"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:"\f162"}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:"\f15d"}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:"\f175"}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:"\f884"}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:"\f160"}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:"\f177"}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:"\f245"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:"\f0ec"}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:"\f08b"}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:"\f178"}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:"\f090"}.fa-arrow-left-rotate:before,.fa-arrow-rotate-back:before,.fa-arrow-rotate-backward:before,.fa-arrow-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:"\f01e"}.fa-arrow-trend-down:before{content:"\e097"}.fa-arrow-trend-up:before{content:"\e098"}.fa-arrow-turn-down:before,.fa-level-down:before{content:"\f149"}.fa-arrow-turn-up:before,.fa-level-up:before{content:"\f148"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:"\f163"}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:"\f15e"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:"\f176"}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:"\f08e"}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:"\f885"}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:"\f161"}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-arrows-h:before,.fa-arrows-left-right:before{content:"\f07e"}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:"\f021"}.fa-arrows-up-down:before,.fa-arrows-v:before{content:"\f07d"}.fa-arrows-up-down-left-right:before,.fa-arrows:before{content:"\f047"}.fa-asterisk:before{content:"*"}.fa-at:before{content:"@"}.fa-atom:before{content:"\f5d2"}.fa-audio-description:before{content:"\f29e"}.fa-austral-sign:before{content:"\e0a9"}.fa-award:before{content:"\f559"}.fa-b:before{content:"B"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before,.fa-carriage-baby:before{content:"\f77d"}.fa-backward:before{content:"\f04a"}.fa-backward-fast:before,.fa-fast-backward:before{content:"\f049"}.fa-backward-step:before,.fa-step-backward:before{content:"\f048"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\e059"}.fa-bacterium:before{content:"\e05a"}.fa-bag-shopping:before,.fa-shopping-bag:before{content:"\f290"}.fa-bahai:before{content:"\f666"}.fa-baht-sign:before{content:"\e0ac"}.fa-ban:before,.fa-cancel:before{content:"\f05e"}.fa-ban-smoking:before,.fa-smoking-ban:before{content:"\f54d"}.fa-band-aid:before,.fa-bandage:before{content:"\f462"}.fa-barcode:before{content:"\f02a"}.fa-bars:before,.fa-navicon:before{content:"\f0c9"}.fa-bars-progress:before,.fa-tasks-alt:before{content:"\f828"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-baseball-ball:before,.fa-baseball:before{content:"\f433"}.fa-baseball-bat-ball:before{content:"\f432"}.fa-basket-shopping:before,.fa-shopping-basket:before{content:"\f291"}.fa-basketball-ball:before,.fa-basketball:before{content:"\f434"}.fa-bath:before,.fa-bathtub:before{content:"\f2cd"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-battery-5:before,.fa-battery-full:before,.fa-battery:before{content:"\f240"}.fa-battery-3:before,.fa-battery-half:before{content:"\f242"}.fa-battery-2:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-4:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-bed:before{content:"\f236"}.fa-bed-pulse:before,.fa-procedures:before{content:"\f487"}.fa-beer-mug-empty:before,.fa-beer:before{content:"\f0fc"}.fa-bell:before{content:"\f0f3"}.fa-bell-concierge:before,.fa-concierge-bell:before{content:"\f562"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bicycle:before{content:"\f206"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-bitcoin-sign:before{content:"\e0b4"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blog:before{content:"\f781"}.fa-bold:before{content:"\f032"}.fa-bolt:before,.fa-zap:before{content:"\f0e7"}.fa-bolt-lightning:before{content:"\e0b7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-atlas:before,.fa-book-atlas:before{content:"\f558"}.fa-bible:before,.fa-book-bible:before{content:"\f647"}.fa-book-journal-whills:before,.fa-journal-whills:before{content:"\f66a"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-open-reader:before,.fa-book-reader:before{content:"\f5da"}.fa-book-quran:before,.fa-quran:before{content:"\f687"}.fa-book-dead:before,.fa-book-skull:before{content:"\f6b7"}.fa-bookmark:before{content:"\f02e"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before,.fa-border-top-left:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-archive:before,.fa-box-archive:before{content:"\f187"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\e05b"}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-brazilian-real-sign:before{content:"\e46c"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broom:before{content:"\f51a"}.fa-broom-ball:before,.fa-quidditch-broom-ball:before,.fa-quidditch:before{content:"\f458"}.fa-brush:before{content:"\f55d"}.fa-bug:before{content:"\f188"}.fa-bug-slash:before{content:"\e490"}.fa-building:before{content:"\f1ad"}.fa-bank:before,.fa-building-columns:before,.fa-institution:before,.fa-museum:before,.fa-university:before{content:"\f19c"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burger:before,.fa-hamburger:before{content:"\f805"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before,.fa-bus-simple:before{content:"\f55e"}.fa-briefcase-clock:before,.fa-business-time:before{content:"\f64a"}.fa-c:before{content:"C"}.fa-birthday-cake:before,.fa-cake-candles:before,.fa-cake:before{content:"\f1fd"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-alt:before,.fa-calendar-days:before{content:"\f073"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-week:before{content:"\f784"}.fa-calendar-times:before,.fa-calendar-xmark:before{content:"\f273"}.fa-camera-alt:before,.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-camera-rotate:before{content:"\e0d8"}.fa-campground:before{content:"\f6bb"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-battery-car:before,.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-alt:before,.fa-car-rear:before{content:"\f5de"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-flatbed:before,.fa-dolly-flatbed:before{content:"\f474"}.fa-cart-flatbed-suitcase:before,.fa-luggage-cart:before{content:"\f59d"}.fa-cart-plus:before{content:"\f217"}.fa-cart-shopping:before,.fa-shopping-cart:before{content:"\f07a"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cedi-sign:before{content:"\e0df"}.fa-cent-sign:before{content:"\e3f5"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-blackboard:before,.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before,.fa-chalkboard-user:before{content:"\f51c"}.fa-champagne-glasses:before,.fa-glass-cheers:before{content:"\f79f"}.fa-charging-station:before{content:"\f5e7"}.fa-area-chart:before,.fa-chart-area:before{content:"\f1fe"}.fa-bar-chart:before,.fa-chart-bar:before{content:"\f080"}.fa-chart-column:before{content:"\e0e3"}.fa-chart-gantt:before{content:"\e0e4"}.fa-chart-line:before,.fa-line-chart:before{content:"\f201"}.fa-chart-pie:before,.fa-pie-chart:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-double:before{content:"\f560"}.fa-check-to-slot:before,.fa-vote-yea:before{content:"\f772"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:"\f0ab"}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:"\f0a8"}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:"\f0a9"}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:"\f0aa"}.fa-check-circle:before,.fa-circle-check:before{content:"\f058"}.fa-chevron-circle-down:before,.fa-circle-chevron-down:before{content:"\f13a"}.fa-chevron-circle-left:before,.fa-circle-chevron-left:before{content:"\f137"}.fa-chevron-circle-right:before,.fa-circle-chevron-right:before{content:"\f138"}.fa-chevron-circle-up:before,.fa-circle-chevron-up:before{content:"\f139"}.fa-circle-dollar-to-slot:before,.fa-donate:before{content:"\f4b9"}.fa-circle-dot:before,.fa-dot-circle:before{content:"\f192"}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:"\f358"}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:"\f06a"}.fa-circle-h:before,.fa-hospital-symbol:before{content:"\f47e"}.fa-adjust:before,.fa-circle-half-stroke:before{content:"\f042"}.fa-circle-info:before,.fa-info-circle:before{content:"\f05a"}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:"\f359"}.fa-circle-minus:before,.fa-minus-circle:before{content:"\f056"}.fa-circle-notch:before{content:"\f1ce"}.fa-circle-pause:before,.fa-pause-circle:before{content:"\f28b"}.fa-circle-play:before,.fa-play-circle:before{content:"\f144"}.fa-circle-plus:before,.fa-plus-circle:before{content:"\f055"}.fa-circle-question:before,.fa-question-circle:before{content:"\f059"}.fa-circle-radiation:before,.fa-radiation-alt:before{content:"\f7ba"}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:"\f35a"}.fa-circle-stop:before,.fa-stop-circle:before{content:"\f28d"}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:"\f35b"}.fa-circle-user:before,.fa-user-circle:before{content:"\f2bd"}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:"\f057"}.fa-city:before{content:"\f64f"}.fa-clapperboard:before{content:"\e131"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock-four:before,.fa-clock:before{content:"\f017"}.fa-clock-rotate-left:before,.fa-history:before{content:"\f1da"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:"\f0ee"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-clover:before{content:"\e139"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-code-commit:before{content:"\f386"}.fa-code-compare:before{content:"\e13a"}.fa-code-fork:before{content:"\e13b"}.fa-code-merge:before{content:"\f387"}.fa-code-pull-request:before{content:"\e13c"}.fa-coins:before{content:"\f51e"}.fa-colon-sign:before{content:"\e140"}.fa-comment:before{content:"\f075"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before,.fa-commenting:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comment-sms:before,.fa-sms:before{content:"\f7cd"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compass-drafting:before,.fa-drafting-compass:before{content:"\f568"}.fa-compress:before{content:"\f066"}.fa-computer-mouse:before,.fa-mouse:before{content:"\f8cc"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-couch:before{content:"\f4b8"}.fa-credit-card-alt:before,.fa-credit-card:before{content:"\f09d"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before,.fa-crop-simple:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-cruzeiro-sign:before{content:"\e152"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-d:before{content:"D"}.fa-database:before{content:"\f1c0"}.fa-backspace:before,.fa-delete-left:before{content:"\f55a"}.fa-democrat:before{content:"\f747"}.fa-desktop-alt:before,.fa-desktop:before{content:"\f390"}.fa-dharmachakra:before{content:"\f655"}.fa-diagram-next:before{content:"\e476"}.fa-diagram-predecessor:before{content:"\e477"}.fa-diagram-project:before,.fa-project-diagram:before{content:"\f542"}.fa-diagram-successor:before{content:"\e47a"}.fa-diamond:before{content:"\f219"}.fa-diamond-turn-right:before,.fa-directions:before{content:"\f5eb"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dna:before{content:"\f471"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before,.fa-dollar:before,.fa-usd:before{content:"$"}.fa-dolly-box:before,.fa-dolly:before{content:"\f472"}.fa-dong-sign:before{content:"\e169"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dove:before{content:"\f4ba"}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:"\f422"}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:"\f309"}.fa-download:before{content:"\f019"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-droplet:before,.fa-tint:before{content:"\f043"}.fa-droplet-slash:before,.fa-tint-slash:before{content:"\f5c7"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-e:before{content:"E"}.fa-deaf:before,.fa-deafness:before,.fa-ear-deaf:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-assistive-listening-systems:before,.fa-ear-listen:before{content:"\f2a2"}.fa-earth-africa:before,.fa-globe-africa:before{content:"\f57c"}.fa-earth-america:before,.fa-earth-americas:before,.fa-earth:before,.fa-globe-americas:before{content:"\f57d"}.fa-earth-asia:before,.fa-globe-asia:before{content:"\f57e"}.fa-earth-europe:before,.fa-globe-europe:before{content:"\f7a2"}.fa-earth-oceania:before,.fa-globe-oceania:before{content:"\e47b"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elevator:before{content:"\e16d"}.fa-ellipsis-h:before,.fa-ellipsis:before{content:"\f141"}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:"\f142"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:"\f674"}.fa-equals:before{content:"="}.fa-eraser:before{content:"\f12d"}.fa-ethernet:before{content:"\f796"}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:"\f153"}.fa-exclamation:before{content:"!"}.fa-expand:before{content:"\f065"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:"\f1fb"}.fa-eye-low-vision:before,.fa-low-vision:before{content:"\f2a8"}.fa-eye-slash:before{content:"\f070"}.fa-f:before{content:"F"}.fa-angry:before,.fa-face-angry:before{content:"\f556"}.fa-dizzy:before,.fa-face-dizzy:before{content:"\f567"}.fa-face-flushed:before,.fa-flushed:before{content:"\f579"}.fa-face-frown:before,.fa-frown:before{content:"\f119"}.fa-face-frown-open:before,.fa-frown-open:before{content:"\f57a"}.fa-face-grimace:before,.fa-grimace:before{content:"\f57f"}.fa-face-grin:before,.fa-grin:before{content:"\f580"}.fa-face-grin-beam:before,.fa-grin-beam:before{content:"\f582"}.fa-face-grin-beam-sweat:before,.fa-grin-beam-sweat:before{content:"\f583"}.fa-face-grin-hearts:before,.fa-grin-hearts:before{content:"\f584"}.fa-face-grin-squint:before,.fa-grin-squint:before{content:"\f585"}.fa-face-grin-squint-tears:before,.fa-grin-squint-tears:before{content:"\f586"}.fa-face-grin-stars:before,.fa-grin-stars:before{content:"\f587"}.fa-face-grin-tears:before,.fa-grin-tears:before{content:"\f588"}.fa-face-grin-tongue:before,.fa-grin-tongue:before{content:"\f589"}.fa-face-grin-tongue-squint:before,.fa-grin-tongue-squint:before{content:"\f58a"}.fa-face-grin-tongue-wink:before,.fa-grin-tongue-wink:before{content:"\f58b"}.fa-face-grin-wide:before,.fa-grin-alt:before{content:"\f581"}.fa-face-grin-wink:before,.fa-grin-wink:before{content:"\f58c"}.fa-face-kiss:before,.fa-kiss:before{content:"\f596"}.fa-face-kiss-beam:before,.fa-kiss-beam:before{content:"\f597"}.fa-face-kiss-wink-heart:before,.fa-kiss-wink-heart:before{content:"\f598"}.fa-face-laugh:before,.fa-laugh:before{content:"\f599"}.fa-face-laugh-beam:before,.fa-laugh-beam:before{content:"\f59a"}.fa-face-laugh-squint:before,.fa-laugh-squint:before{content:"\f59b"}.fa-face-laugh-wink:before,.fa-laugh-wink:before{content:"\f59c"}.fa-face-meh:before,.fa-meh:before{content:"\f11a"}.fa-face-meh-blank:before,.fa-meh-blank:before{content:"\f5a4"}.fa-face-rolling-eyes:before,.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-face-sad-cry:before,.fa-sad-cry:before{content:"\f5b3"}.fa-face-sad-tear:before,.fa-sad-tear:before{content:"\f5b4"}.fa-face-smile:before,.fa-smile:before{content:"\f118"}.fa-face-smile-beam:before,.fa-smile-beam:before{content:"\f5b8"}.fa-face-smile-wink:before,.fa-smile-wink:before{content:"\f4da"}.fa-face-surprise:before,.fa-surprise:before{content:"\f5c2"}.fa-face-tired:before,.fa-tired:before{content:"\f5c8"}.fa-fan:before{content:"\f863"}.fa-faucet:before{content:"\e005"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before,.fa-feather-pointed:before{content:"\f56b"}.fa-file:before{content:"\f15b"}.fa-file-arrow-down:before,.fa-file-download:before{content:"\f56d"}.fa-file-arrow-up:before,.fa-file-upload:before{content:"\f574"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-excel:before{content:"\f1c3"}.fa-arrow-right-from-file:before,.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-arrow-right-to-file:before,.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:"\f15c"}.fa-file-medical:before{content:"\f477"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-video:before{content:"\f1c8"}.fa-file-medical-alt:before,.fa-file-waveform:before{content:"\f478"}.fa-file-word:before{content:"\f1c2"}.fa-file-archive:before,.fa-file-zipper:before{content:"\f1c6"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-filter-circle-dollar:before,.fa-funnel-dollar:before{content:"\f662"}.fa-filter-circle-xmark:before{content:"\e17b"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-extinguisher:before{content:"\f134"}.fa-fire-alt:before,.fa-fire-flame-curved:before{content:"\f7e4"}.fa-burn:before,.fa-fire-flame-simple:before{content:"\f46a"}.fa-fish:before{content:"\f578"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-floppy-disk:before,.fa-save:before{content:"\f0c7"}.fa-florin-sign:before{content:"\e184"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-folder-tree:before{content:"\f802"}.fa-font:before{content:"\f031"}.fa-football-ball:before,.fa-football:before{content:"\f44e"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before,.fa-forward-fast:before{content:"\f050"}.fa-forward-step:before,.fa-step-forward:before{content:"\f051"}.fa-franc-sign:before{content:"\e18f"}.fa-frog:before{content:"\f52e"}.fa-futbol-ball:before,.fa-futbol:before,.fa-soccer-ball:before{content:"\f1e3"}.fa-g:before{content:"G"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-dashboard:before,.fa-gauge-med:before,.fa-gauge:before,.fa-tachometer-alt-average:before{content:"\f624"}.fa-gauge-high:before,.fa-tachometer-alt-fast:before,.fa-tachometer-alt:before{content:"\f625"}.fa-gauge-simple-med:before,.fa-gauge-simple:before,.fa-tachometer-average:before{content:"\f629"}.fa-gauge-simple-high:before,.fa-tachometer-fast:before,.fa-tachometer:before{content:"\f62a"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-cog:before,.fa-gear:before{content:"\f013"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-glasses:before{content:"\f530"}.fa-globe:before{content:"\f0ac"}.fa-golf-ball-tee:before,.fa-golf-ball:before{content:"\f450"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-greater-than:before{content:">"}.fa-greater-than-equal:before{content:"\f532"}.fa-grip-horizontal:before,.fa-grip:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-guarani-sign:before{content:"\e19a"}.fa-guitar:before{content:"\f7a6"}.fa-gun:before{content:"\e19b"}.fa-h:before{content:"H"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-paper:before,.fa-hand:before{content:"\f256"}.fa-hand-back-fist:before,.fa-hand-rock:before{content:"\f255"}.fa-allergies:before,.fa-hand-dots:before{content:"\f461"}.fa-fist-raised:before,.fa-hand-fist:before{content:"\f6de"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-dollar:before,.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-droplet:before,.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\e05d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before,.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-american-sign-language-interpreting:before,.fa-asl-interpreting:before,.fa-hands-american-sign-language-interpreting:before,.fa-hands-asl-interpreting:before{content:"\f2a3"}.fa-hands-bubbles:before,.fa-hands-wash:before{content:"\e05e"}.fa-hands-clapping:before{content:"\e1a8"}.fa-hands-holding:before{content:"\f4c2"}.fa-hands-praying:before,.fa-praying-hands:before{content:"\f684"}.fa-handshake:before{content:"\f2b5"}.fa-hands-helping:before,.fa-handshake-angle:before{content:"\f4c4"}.fa-handshake-alt-slash:before,.fa-handshake-simple-slash:before{content:"\e05f"}.fa-handshake-slash:before{content:"\e060"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-drive:before,.fa-hdd:before{content:"\f0a0"}.fa-hashtag:before{content:"#"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-head-side-cough:before{content:"\e061"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-head-side-mask:before{content:"\e063"}.fa-head-side-virus:before{content:"\e064"}.fa-header:before,.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before,.fa-headphones-simple:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before,.fa-heart-crack:before{content:"\f7a9"}.fa-heart-pulse:before,.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-hard-hat:before,.fa-hat-hard:before,.fa-helmet-safety:before{content:"\f807"}.fa-highlighter:before{content:"\f591"}.fa-hippo:before{content:"\f6ed"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital-alt:before,.fa-hospital-wide:before,.fa-hospital:before{content:"\f0f8"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub-person:before,.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hourglass-2:before,.fa-hourglass-half:before,.fa-hourglass:before{content:"\f254"}.fa-hourglass-empty:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-home-alt:before,.fa-home-lg-alt:before,.fa-home:before,.fa-house:before{content:"\f015"}.fa-home-lg:before,.fa-house-chimney:before{content:"\e3af"}.fa-house-chimney-crack:before,.fa-house-damage:before{content:"\f6f1"}.fa-clinic-medical:before,.fa-house-chimney-medical:before{content:"\f7f2"}.fa-house-chimney-user:before{content:"\e065"}.fa-house-chimney-window:before{content:"\e00d"}.fa-house-crack:before{content:"\e3b1"}.fa-house-laptop:before,.fa-laptop-house:before{content:"\e066"}.fa-house-medical:before{content:"\e3b2"}.fa-home-user:before,.fa-house-user:before{content:"\e1b0"}.fa-hryvnia-sign:before,.fa-hryvnia:before{content:"\f6f2"}.fa-i:before{content:"I"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before,.fa-id-card-clip:before{content:"\f47f"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-image-portrait:before,.fa-portrait:before{content:"\f3e0"}.fa-images:before{content:"\f302"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-indian-rupee-sign:before,.fa-indian-rupee:before,.fa-inr:before{content:"\e1bc"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-italic:before{content:"\f033"}.fa-j:before{content:"J"}.fa-jedi:before{content:"\f669"}.fa-fighter-jet:before,.fa-jet-fighter:before{content:"\f0fb"}.fa-joint:before{content:"\f595"}.fa-k:before{content:"K"}.fa-kaaba:before{content:"\f66b"}.fa-key:before{content:"\f084"}.fa-keyboard:before{content:"\f11c"}.fa-khanda:before{content:"\f66d"}.fa-kip-sign:before{content:"\e1c4"}.fa-first-aid:before,.fa-kit-medical:before{content:"\f479"}.fa-kiwi-bird:before{content:"\f535"}.fa-l:before{content:"L"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-medical:before{content:"\f812"}.fa-lari-sign:before{content:"\e1c8"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-arrows-alt-h:before,.fa-left-right:before{content:"\f337"}.fa-lemon:before{content:"\f094"}.fa-less-than:before{content:"<"}.fa-less-than-equal:before{content:"\f537"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:"\f127"}.fa-lira-sign:before{content:"\f195"}.fa-list-squares:before,.fa-list:before{content:"\f03a"}.fa-list-check:before,.fa-tasks:before{content:"\f0ae"}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:"\f0cb"}.fa-list-dots:before,.fa-list-ul:before{content:"\f0ca"}.fa-litecoin-sign:before{content:"\e1d3"}.fa-location-arrow:before{content:"\f124"}.fa-location-crosshairs:before,.fa-location:before{content:"\f601"}.fa-location-dot:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-location-pin:before,.fa-map-marker:before{content:"\f041"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\e067"}.fa-m:before{content:"M"}.fa-magnet:before{content:"\f076"}.fa-magnifying-glass:before,.fa-search:before{content:"\f002"}.fa-magnifying-glass-dollar:before,.fa-search-dollar:before{content:"\f688"}.fa-magnifying-glass-location:before,.fa-search-location:before{content:"\f689"}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:"\f010"}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:"\f00e"}.fa-manat-sign:before{content:"\e1d5"}.fa-map:before{content:"\f279"}.fa-map-location:before,.fa-map-marked:before{content:"\f59f"}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-pin:before{content:"\f276"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-and-venus:before{content:"\f224"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before,.fa-mars-stroke-right:before{content:"\f22b"}.fa-mars-stroke-up:before,.fa-mars-stroke-v:before{content:"\f22a"}.fa-glass-martini-alt:before,.fa-martini-glass:before{content:"\f57b"}.fa-cocktail:before,.fa-martini-glass-citrus:before{content:"\f561"}.fa-glass-martini:before,.fa-martini-glass-empty:before{content:"\f000"}.fa-mask:before{content:"\f6fa"}.fa-mask-face:before{content:"\e1d7"}.fa-masks-theater:before,.fa-theater-masks:before{content:"\f630"}.fa-expand-arrows-alt:before,.fa-maximize:before{content:"\f31e"}.fa-medal:before{content:"\f5a2"}.fa-memory:before{content:"\f538"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-comment-alt:before,.fa-message:before{content:"\f27a"}.fa-meteor:before{content:"\f753"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before,.fa-microphone-lines:before{content:"\f3c9"}.fa-microphone-alt-slash:before,.fa-microphone-lines-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-mill-sign:before{content:"\e1ed"}.fa-compress-arrows-alt:before,.fa-minimize:before{content:"\f78c"}.fa-minus:before,.fa-subtract:before{content:"\f068"}.fa-mitten:before{content:"\f7b5"}.fa-mobile-android:before,.fa-mobile-phone:before,.fa-mobile:before{content:"\f3ce"}.fa-mobile-button:before{content:"\f10b"}.fa-mobile-alt:before,.fa-mobile-screen-button:before{content:"\f3cd"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-1:before,.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-1-wave:before,.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before,.fa-money-check-dollar:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mug-hot:before{content:"\f7b6"}.fa-coffee:before,.fa-mug-saucer:before{content:"\f0f4"}.fa-music:before{content:"\f001"}.fa-n:before{content:"N"}.fa-naira-sign:before{content:"\e1f6"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-not-equal:before{content:"\f53e"}.fa-note-sticky:before,.fa-sticky-note:before{content:"\f249"}.fa-notes-medical:before{content:"\f481"}.fa-o:before{content:"O"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-oil-can:before{content:"\f613"}.fa-om:before{content:"\f679"}.fa-otter:before{content:"\f700"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-p:before{content:"P"}.fa-pager:before{content:"\f815"}.fa-paint-roller:before{content:"\f5aa"}.fa-paint-brush:before,.fa-paintbrush:before{content:"\f1fc"}.fa-palette:before{content:"\f53f"}.fa-pallet:before{content:"\f482"}.fa-panorama:before{content:"\e209"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-passport:before{content:"\f5ab"}.fa-file-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-pause:before{content:"\f04c"}.fa-paw:before{content:"\f1b0"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before,.fa-pen-clip:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-ruler:before,.fa-pencil-ruler:before{content:"\f5ae"}.fa-edit:before,.fa-pen-to-square:before{content:"\f044"}.fa-pencil-alt:before,.fa-pencil:before{content:"\f303"}.fa-people-arrows-left-right:before,.fa-people-arrows:before{content:"\e068"}.fa-people-carry-box:before,.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before,.fa-percentage:before{content:"%"}.fa-male:before,.fa-person:before{content:"\f183"}.fa-biking:before,.fa-person-biking:before{content:"\f84a"}.fa-person-booth:before{content:"\f756"}.fa-diagnoses:before,.fa-person-dots-from-line:before{content:"\f470"}.fa-female:before,.fa-person-dress:before{content:"\f182"}.fa-hiking:before,.fa-person-hiking:before{content:"\f6ec"}.fa-person-praying:before,.fa-pray:before{content:"\f683"}.fa-person-running:before,.fa-running:before{content:"\f70c"}.fa-person-skating:before,.fa-skating:before{content:"\f7c5"}.fa-person-skiing:before,.fa-skiing:before{content:"\f7c9"}.fa-person-skiing-nordic:before,.fa-skiing-nordic:before{content:"\f7ca"}.fa-person-snowboarding:before,.fa-snowboarding:before{content:"\f7ce"}.fa-person-swimming:before,.fa-swimmer:before{content:"\f5c4"}.fa-person-walking:before,.fa-walking:before{content:"\f554"}.fa-blind:before,.fa-person-walking-with-cane:before{content:"\f29d"}.fa-peseta-sign:before{content:"\e221"}.fa-peso-sign:before{content:"\e222"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before,.fa-phone-flip:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-volume:before,.fa-volume-control-phone:before{content:"\f2a0"}.fa-photo-film:before,.fa-photo-video:before{content:"\f87c"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\e069"}.fa-play:before{content:"\f04b"}.fa-plug:before{content:"\f1e6"}.fa-add:before,.fa-plus:before{content:"+"}.fa-plus-minus:before{content:"\e43c"}.fa-podcast:before{content:"\f2ce"}.fa-poo:before{content:"\f2fe"}.fa-poo-bolt:before,.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-power-off:before{content:"\f011"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before,.fa-prescription-bottle-medical:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-pump-medical:before{content:"\e06a"}.fa-pump-soap:before{content:"\e06b"}.fa-puzzle-piece:before{content:"\f12e"}.fa-q:before{content:"Q"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"?"}.fa-quote-left-alt:before,.fa-quote-left:before{content:"\f10d"}.fa-quote-right-alt:before,.fa-quote-right:before{content:"\f10e"}.fa-r:before{content:"R"}.fa-radiation:before{content:"\f7b9"}.fa-rainbow:before{content:"\f75b"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-ad:before,.fa-rectangle-ad:before{content:"\f641"}.fa-list-alt:before,.fa-rectangle-list:before{content:"\f022"}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:"\f410"}.fa-recycle:before{content:"\f1b8"}.fa-registered:before{content:"\f25d"}.fa-repeat:before{content:"\f363"}.fa-mail-reply:before,.fa-reply:before{content:"\f3e5"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-republican:before{content:"\f75e"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-ribbon:before{content:"\f4d6"}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:"\f2f5"}.fa-exchange-alt:before,.fa-right-left:before{content:"\f362"}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:"\f30b"}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:"\f2f6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rotate:before,.fa-sync-alt:before{content:"\f2f1"}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:"\f2ea"}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:"\f2f9"}.fa-route:before{content:"\f4d7"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-rouble:before,.fa-rub:before,.fa-ruble-sign:before,.fa-ruble:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-rupee-sign:before,.fa-rupee:before{content:"\f156"}.fa-rupiah-sign:before{content:"\e23d"}.fa-s:before{content:"S"}.fa-sailboat:before{content:"\e445"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-balance-scale:before,.fa-scale-balanced:before{content:"\f24e"}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:"\f515"}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:"\f516"}.fa-school:before{content:"\f549"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-screwdriver:before{content:"\f54a"}.fa-screwdriver-wrench:before,.fa-tools:before{content:"\f7d9"}.fa-scroll:before{content:"\f70e"}.fa-scroll-torah:before,.fa-torah:before{content:"\f6a0"}.fa-sd-card:before{content:"\f7c2"}.fa-section:before{content:"\e447"}.fa-seedling:before,.fa-sprout:before{content:"\f4d8"}.fa-server:before{content:"\f233"}.fa-shapes:before,.fa-triangle-circle-square:before{content:"\f61f"}.fa-arrow-turn-right:before,.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-share-from-square:before,.fa-share-square:before{content:"\f14d"}.fa-share-alt:before,.fa-share-nodes:before{content:"\f1e0"}.fa-ils:before,.fa-shekel-sign:before,.fa-shekel:before,.fa-sheqel-sign:before,.fa-sheqel:before{content:"\f20b"}.fa-shield:before{content:"\f132"}.fa-shield-alt:before,.fa-shield-blank:before{content:"\f3ed"}.fa-shield-virus:before{content:"\e06c"}.fa-ship:before{content:"\f21a"}.fa-shirt:before,.fa-t-shirt:before,.fa-tshirt:before{content:"\f553"}.fa-shoe-prints:before{content:"\f54b"}.fa-shop:before,.fa-store-alt:before{content:"\f54f"}.fa-shop-slash:before,.fa-store-alt-slash:before{content:"\e070"}.fa-shower:before{content:"\f2cc"}.fa-shrimp:before{content:"\e448"}.fa-random:before,.fa-shuffle:before{content:"\f074"}.fa-shuttle-space:before,.fa-space-shuttle:before{content:"\f197"}.fa-sign-hanging:before,.fa-sign:before{content:"\f4d9"}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-map-signs:before,.fa-signs-post:before{content:"\f277"}.fa-sim-card:before{content:"\f7c4"}.fa-sink:before{content:"\e06d"}.fa-sitemap:before{content:"\f0e8"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\e06e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-spa:before{content:"\f5bb"}.fa-pastafarianism:before,.fa-spaghetti-monster-flying:before{content:"\f67b"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spoon:before,.fa-utensil-spoon:before{content:"\f2e5"}.fa-spray-can:before{content:"\f5bd"}.fa-air-freshener:before,.fa-spray-can-sparkles:before{content:"\f5d0"}.fa-square:before{content:"\f0c8"}.fa-external-link-square:before,.fa-square-arrow-up-right:before{content:"\f14c"}.fa-caret-square-down:before,.fa-square-caret-down:before{content:"\f150"}.fa-caret-square-left:before,.fa-square-caret-left:before{content:"\f191"}.fa-caret-square-right:before,.fa-square-caret-right:before{content:"\f152"}.fa-caret-square-up:before,.fa-square-caret-up:before{content:"\f151"}.fa-check-square:before,.fa-square-check:before{content:"\f14a"}.fa-envelope-square:before,.fa-square-envelope:before{content:"\f199"}.fa-square-full:before{content:"\f45c"}.fa-h-square:before,.fa-square-h:before{content:"\f0fd"}.fa-minus-square:before,.fa-square-minus:before{content:"\f146"}.fa-parking:before,.fa-square-parking:before{content:"\f540"}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:"\f14b"}.fa-phone-square:before,.fa-square-phone:before{content:"\f098"}.fa-phone-square-alt:before,.fa-square-phone-flip:before{content:"\f87b"}.fa-plus-square:before,.fa-square-plus:before{content:"\f0fe"}.fa-poll-h:before,.fa-square-poll-horizontal:before{content:"\f682"}.fa-poll:before,.fa-square-poll-vertical:before{content:"\f681"}.fa-square-root-alt:before,.fa-square-root-variable:before{content:"\f698"}.fa-rss-square:before,.fa-square-rss:before{content:"\f143"}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:"\f1e1"}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:"\f360"}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:"\f2d3"}.fa-stairs:before{content:"\e289"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-gbp:before,.fa-pound-sign:before,.fa-sterling-sign:before{content:"\f154"}.fa-stethoscope:before{content:"\f0f1"}.fa-stop:before{content:"\f04d"}.fa-stopwatch:before{content:"\f2f2"}.fa-stopwatch-20:before{content:"\e06f"}.fa-store:before{content:"\f54e"}.fa-store-slash:before{content:"\e071"}.fa-street-view:before{content:"\f21d"}.fa-strikethrough:before{content:"\f0cc"}.fa-stroopwafel:before{content:"\f551"}.fa-subscript:before{content:"\f12c"}.fa-suitcase:before{content:"\f0f2"}.fa-medkit:before,.fa-suitcase-medical:before{content:"\f0fa"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-sun:before{content:"\f185"}.fa-superscript:before{content:"\f12b"}.fa-swatchbook:before{content:"\f5c3"}.fa-synagogue:before{content:"\f69b"}.fa-syringe:before{content:"\f48e"}.fa-t:before{content:"T"}.fa-table:before{content:"\f0ce"}.fa-table-cells:before,.fa-th:before{content:"\f00a"}.fa-table-cells-large:before,.fa-th-large:before{content:"\f009"}.fa-columns:before,.fa-table-columns:before{content:"\f0db"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}.fa-ping-pong-paddle-ball:before,.fa-table-tennis-paddle-ball:before,.fa-table-tennis:before{content:"\f45d"}.fa-tablet-android:before,.fa-tablet:before{content:"\f3fb"}.fa-tablet-button:before{content:"\f10a"}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:"\f3fa"}.fa-tablets:before{content:"\f490"}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:"\f566"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-tape:before{content:"\f4db"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-teeth:before{content:"\f62e"}.fa-teeth-open:before{content:"\f62f"}.fa-temperature-0:before,.fa-temperature-empty:before,.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-temperature-4:before,.fa-temperature-full:before,.fa-thermometer-4:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-temperature-2:before,.fa-temperature-half:before,.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-temperature-high:before{content:"\f769"}.fa-temperature-low:before{content:"\f76b"}.fa-temperature-1:before,.fa-temperature-quarter:before,.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-temperature-3:before,.fa-temperature-three-quarters:before,.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-tenge-sign:before,.fa-tenge:before{content:"\f7d7"}.fa-terminal:before{content:"\f120"}.fa-text-height:before{content:"\f034"}.fa-remove-format:before,.fa-text-slash:before{content:"\f87d"}.fa-text-width:before{content:"\f035"}.fa-thermometer:before{content:"\f491"}.fa-thumbs-down:before{content:"\f165"}.fa-thumbs-up:before{content:"\f164"}.fa-thumb-tack:before,.fa-thumbtack:before{content:"\f08d"}.fa-ticket:before{content:"\f145"}.fa-ticket-alt:before,.fa-ticket-simple:before{content:"\f3ff"}.fa-timeline:before{content:"\e29c"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-toilet:before{content:"\f7d8"}.fa-toilet-paper:before{content:"\f71e"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-toolbox:before{content:"\f552"}.fa-tooth:before{content:"\f5c9"}.fa-torii-gate:before{content:"\f6a1"}.fa-broadcast-tower:before,.fa-tower-broadcast:before{content:"\f519"}.fa-tractor:before{content:"\f722"}.fa-trademark:before{content:"\f25c"}.fa-traffic-light:before{content:"\f637"}.fa-trailer:before{content:"\e041"}.fa-train:before{content:"\f238"}.fa-subway:before,.fa-train-subway:before{content:"\f239"}.fa-train-tram:before,.fa-tram:before{content:"\f7da"}.fa-transgender-alt:before,.fa-transgender:before{content:"\f225"}.fa-trash:before{content:"\f1f8"}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:"\f829"}.fa-trash-alt:before,.fa-trash-can:before{content:"\f2ed"}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:"\f82a"}.fa-tree:before{content:"\f1bb"}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:"\f071"}.fa-trophy:before{content:"\f091"}.fa-truck:before{content:"\f0d1"}.fa-shipping-fast:before,.fa-truck-fast:before{content:"\f48b"}.fa-ambulance:before,.fa-truck-medical:before{content:"\f0f9"}.fa-truck-monster:before{content:"\f63b"}.fa-truck-moving:before{content:"\f4df"}.fa-truck-pickup:before{content:"\f63c"}.fa-truck-loading:before,.fa-truck-ramp-box:before{content:"\f4de"}.fa-teletype:before,.fa-tty:before{content:"\f1e4"}.fa-try:before,.fa-turkish-lira-sign:before,.fa-turkish-lira:before{content:"\e2bb"}.fa-level-down-alt:before,.fa-turn-down:before{content:"\f3be"}.fa-level-up-alt:before,.fa-turn-up:before{content:"\f3bf"}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:"\f26c"}.fa-u:before{content:"U"}.fa-umbrella:before{content:"\f0e9"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-underline:before{content:"\f0cd"}.fa-universal-access:before{content:"\f29a"}.fa-unlock:before{content:"\f09c"}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:"\f13e"}.fa-arrows-alt-v:before,.fa-up-down:before{content:"\f338"}.fa-arrows-alt:before,.fa-up-down-left-right:before{content:"\f0b2"}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:"\f30c"}.fa-expand-alt:before,.fa-up-right-and-down-left-from-center:before{content:"\f424"}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:"\f35d"}.fa-upload:before{content:"\f093"}.fa-user:before{content:"\f007"}.fa-user-astronaut:before{content:"\f4fb"}.fa-user-check:before{content:"\f4fc"}.fa-user-clock:before{content:"\f4fd"}.fa-user-doctor:before,.fa-user-md:before{content:"\f0f0"}.fa-user-cog:before,.fa-user-gear:before{content:"\f4fe"}.fa-user-graduate:before{content:"\f501"}.fa-user-friends:before,.fa-user-group:before{content:"\f500"}.fa-user-injured:before{content:"\f728"}.fa-user-alt:before,.fa-user-large:before{content:"\f406"}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:"\f4fa"}.fa-user-lock:before{content:"\f502"}.fa-user-minus:before{content:"\f503"}.fa-user-ninja:before{content:"\f504"}.fa-user-nurse:before{content:"\f82f"}.fa-user-edit:before,.fa-user-pen:before{content:"\f4ff"}.fa-user-plus:before{content:"\f234"}.fa-user-secret:before{content:"\f21b"}.fa-user-shield:before{content:"\f505"}.fa-user-slash:before{content:"\f506"}.fa-user-tag:before{content:"\f507"}.fa-user-tie:before{content:"\f508"}.fa-user-times:before,.fa-user-xmark:before{content:"\f235"}.fa-users:before{content:"\f0c0"}.fa-users-cog:before,.fa-users-gear:before{content:"\f509"}.fa-users-slash:before{content:"\e073"}.fa-cutlery:before,.fa-utensils:before{content:"\f2e7"}.fa-v:before{content:"V"}.fa-shuttle-van:before,.fa-van-shuttle:before{content:"\f5b6"}.fa-vault:before{content:"\e2c5"}.fa-vector-square:before{content:"\f5cb"}.fa-venus:before{content:"\f221"}.fa-venus-double:before{content:"\f226"}.fa-venus-mars:before{content:"\f228"}.fa-vest:before{content:"\e085"}.fa-vest-patches:before{content:"\e086"}.fa-vial:before{content:"\f492"}.fa-vials:before{content:"\f493"}.fa-video-camera:before,.fa-video:before{content:"\f03d"}.fa-video-slash:before{content:"\f4e2"}.fa-vihara:before{content:"\f6a7"}.fa-virus:before{content:"\e074"}.fa-virus-covid:before{content:"\e4a8"}.fa-virus-covid-slash:before{content:"\e4a9"}.fa-virus-slash:before{content:"\e075"}.fa-viruses:before{content:"\e076"}.fa-voicemail:before{content:"\f897"}.fa-volleyball-ball:before,.fa-volleyball:before{content:"\f45f"}.fa-volume-high:before,.fa-volume-up:before{content:"\f028"}.fa-volume-down:before,.fa-volume-low:before{content:"\f027"}.fa-volume-off:before{content:"\f026"}.fa-volume-mute:before,.fa-volume-times:before,.fa-volume-xmark:before{content:"\f6a9"}.fa-vr-cardboard:before{content:"\f729"}.fa-w:before{content:"W"}.fa-wallet:before{content:"\f555"}.fa-magic:before,.fa-wand-magic:before{content:"\f0d0"}.fa-magic-wand-sparkles:before,.fa-wand-magic-sparkles:before{content:"\e2ca"}.fa-wand-sparkles:before{content:"\f72b"}.fa-warehouse:before{content:"\f494"}.fa-water:before{content:"\f773"}.fa-ladder-water:before,.fa-swimming-pool:before,.fa-water-ladder:before{content:"\f5c5"}.fa-wave-square:before{content:"\f83e"}.fa-weight-hanging:before{content:"\f5cd"}.fa-weight-scale:before,.fa-weight:before{content:"\f496"}.fa-wheelchair:before{content:"\f193"}.fa-glass-whiskey:before,.fa-whiskey-glass:before{content:"\f7a0"}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:"\f1eb"}.fa-wind:before{content:"\f72e"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-wine-bottle:before{content:"\f72f"}.fa-wine-glass:before{content:"\f4e3"}.fa-wine-glass-alt:before,.fa-wine-glass-empty:before{content:"\f5ce"}.fa-krw:before,.fa-won-sign:before,.fa-won:before{content:"\f159"}.fa-wrench:before{content:"\f0ad"}.fa-x:before{content:"X"}.fa-x-ray:before{content:"\f497"}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:"\f00d"}.fa-y:before{content:"Y"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen-sign:before,.fa-yen:before{content:"\f157"}.fa-yin-yang:before{content:"\f6ad"}.fa-z:before{content:"Z"}.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(fa-brands-400.5d5236fb45973c81.woff2) format("woff2"),url(fa-brands-400.1fd0b4d72d4586e5.ttf) format("truetype")}.fa-brands,.fab{font-family:"Font Awesome 6 Brands";font-weight:400}.fa-42-group:before,.fa-innosoft:before{content:"\e080"}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-adn:before{content:"\f170"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-alipay:before{content:"\f642"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-amilia:before{content:"\f36d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-pay:before{content:"\f415"}.fa-artstation:before{content:"\f77a"}.fa-asymmetrik:before{content:"\f372"}.fa-atlassian:before{content:"\f77b"}.fa-audible:before{content:"\f373"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-aws:before{content:"\f375"}.fa-bandcamp:before{content:"\f2d5"}.fa-battle-net:before{content:"\f835"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bilibili:before{content:"\e3d9"}.fa-bimobject:before{content:"\f378"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bootstrap:before{content:"\f836"}.fa-bots:before{content:"\e340"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-buromobelexperte:before{content:"\f37f"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-cloudflare:before{content:"\e07d"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cmplid:before{content:"\e360"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cotton-bureau:before{content:"\f89e"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-critical-role:before{content:"\f6c9"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\e052"}.fa-dashcube:before{content:"\f210"}.fa-deezer:before{content:"\e077"}.fa-delicious:before{content:"\f1a5"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dhl:before{content:"\f790"}.fa-diaspora:before{content:"\f791"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-draft2digital:before{content:"\f396"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drupal:before{content:"\f1a9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\e078"}.fa-elementor:before{content:"\f430"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envira:before{content:"\f299"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-etsy:before{content:"\f2d7"}.fa-evernote:before{content:"\f839"}.fa-expeditedssl:before{content:"\f23e"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-figma:before{content:"\f799"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\e007"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-fly:before{content:"\f417"}.fa-font-awesome-flag:before,.fa-font-awesome-logo-full:before,.fa-font-awesome:before{content:"\f2b4"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-fulcrum:before{content:"\f50b"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-gofore:before{content:"\f3a7"}.fa-golang:before{content:"\e40f"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\e079"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guilded:before{content:"\e07e"}.fa-gulp:before{content:"\f3ae"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hashnode:before{content:"\e499"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-hive:before{content:"\e07f"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-hotjar:before{content:"\f3b1"}.fa-houzz:before{content:"\f27c"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-ideal:before{content:"\e013"}.fa-imdb:before{content:"\f2d8"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\e055"}.fa-instalod:before{content:"\e081"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joomla:before{content:"\f1aa"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaggle:before{content:"\f5fa"}.fa-keybase:before{content:"\f4f5"}.fa-keycdn:before{content:"\f3ba"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-korvue:before{content:"\f42f"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-leanpub:before{content:"\f212"}.fa-less:before{content:"\f41d"}.fa-line:before{content:"\f3c0"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-mailchimp:before{content:"\f59e"}.fa-mandalorian:before{content:"\f50f"}.fa-markdown:before{content:"\f60f"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medapps:before{content:"\f3c6"}.fa-medium-m:before,.fa-medium:before{content:"\f23a"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-mendeley:before{content:"\f7b3"}.fa-microblog:before{content:"\e01a"}.fa-microsoft:before{content:"\f3ca"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\e056"}.fa-mizuni:before{content:"\f3cc"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-octopus-deploy:before{content:"\e082"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-old-republic:before{content:"\f510"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-padlet:before{content:"\e4a0"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-palfed:before{content:"\f3d8"}.fa-patreon:before{content:"\f3d9"}.fa-paypal:before{content:"\f1ed"}.fa-perbyte:before{content:"\e083"}.fa-periscope:before{content:"\f3da"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\e01e"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pix:before{content:"\e43a"}.fa-playstation:before{content:"\f3df"}.fa-product-hunt:before{content:"\f288"}.fa-pushed:before{content:"\f3e1"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-r-project:before{content:"\f4f7"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-renren:before{content:"\f18b"}.fa-replyd:before{content:"\f3e6"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-rev:before{content:"\f5b2"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-rust:before{content:"\e07a"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-schlix:before{content:"\f3ea"}.fa-scribd:before{content:"\f28a"}.fa-searchengin:before{content:"\f3eb"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-servicestack:before{content:"\f3ec"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shopify:before{content:"\e057"}.fa-shopware:before{content:"\f5b5"}.fa-simplybuilt:before{content:"\f215"}.fa-sistrix:before{content:"\f3ee"}.fa-sith:before{content:"\f512"}.fa-sitrox:before{content:"\e44a"}.fa-sketch:before{content:"\f7c6"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack-hash:before,.fa-slack:before{content:"\f198"}.fa-slideshare:before{content:"\f1e7"}.fa-snapchat-ghost:before,.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-square:before{content:"\f2ad"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spotify:before{content:"\f1bc"}.fa-square-font-awesome:before{content:"\f425"}.fa-font-awesome-alt:before,.fa-square-font-awesome-stroke:before{content:"\f35c"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-sticker-mule:before{content:"\f3f7"}.fa-strava:before{content:"\f428"}.fa-stripe:before{content:"\f429"}.fa-stripe-s:before{content:"\f42a"}.fa-studiovinari:before{content:"\f3f8"}.fa-stumbleupon:before{content:"\f1a4"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-superpowers:before{content:"\f2dd"}.fa-supple:before{content:"\f3f9"}.fa-suse:before{content:"\f7d6"}.fa-swift:before{content:"\f8e1"}.fa-symfony:before{content:"\f83d"}.fa-teamspeak:before{content:"\f4f9"}.fa-telegram-plane:before,.fa-telegram:before{content:"\f2c6"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-the-red-yeti:before{content:"\f69d"}.fa-themeco:before{content:"\f5c6"}.fa-themeisle:before{content:"\f2b2"}.fa-think-peaks:before{content:"\f731"}.fa-tiktok:before{content:"\e07b"}.fa-trade-federation:before{content:"\f513"}.fa-trello:before{content:"\f181"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-twitch:before{content:"\f1e8"}.fa-twitter:before{content:"\f099"}.fa-twitter-square:before{content:"\f081"}.fa-typo3:before{content:"\f42b"}.fa-uber:before{content:"\f402"}.fa-ubuntu:before{content:"\f7df"}.fa-uikit:before{content:"\f403"}.fa-umbraco:before{content:"\f8e8"}.fa-uncharted:before{content:"\e084"}.fa-uniregistry:before{content:"\f404"}.fa-unity:before{content:"\e049"}.fa-unsplash:before{content:"\e07c"}.fa-untappd:before{content:"\f405"}.fa-ups:before{content:"\f7e0"}.fa-usb:before{content:"\f287"}.fa-usps:before{content:"\f7e1"}.fa-ussunnah:before{content:"\f407"}.fa-vaadin:before{content:"\f408"}.fa-viacoin:before{content:"\f237"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-viber:before{content:"\f409"}.fa-vimeo:before{content:"\f40a"}.fa-vimeo-square:before{content:"\f194"}.fa-vimeo-v:before{content:"\f27d"}.fa-vine:before{content:"\f1ca"}.fa-vk:before{content:"\f189"}.fa-vnv:before{content:"\f40b"}.fa-vuejs:before{content:"\f41f"}.fa-watchman-monitoring:before{content:"\e087"}.fa-waze:before{content:"\f83f"}.fa-weebly:before{content:"\f5cc"}.fa-weibo:before{content:"\f18a"}.fa-weixin:before{content:"\f1d7"}.fa-whatsapp:before{content:"\f232"}.fa-whatsapp-square:before{content:"\f40c"}.fa-whmcs:before{content:"\f40d"}.fa-wikipedia-w:before{content:"\f266"}.fa-windows:before{content:"\f17a"}.fa-wirsindhandwerk:before,.fa-wsh:before{content:"\e2d0"}.fa-wix:before{content:"\f5cf"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-wodu:before{content:"\e088"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-wordpress:before{content:"\f19a"}.fa-wordpress-simple:before{content:"\f411"}.fa-wpbeginner:before{content:"\f297"}.fa-wpexplorer:before{content:"\f2de"}.fa-wpforms:before{content:"\f298"}.fa-wpressr:before{content:"\f3e4"}.fa-xbox:before{content:"\f412"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-y-combinator:before{content:"\f23b"}.fa-yahoo:before{content:"\f19e"}.fa-yammer:before{content:"\f840"}.fa-yandex:before{content:"\f413"}.fa-yandex-international:before{content:"\f414"}.fa-yarn:before{content:"\f7e3"}.fa-yelp:before{content:"\f1e9"}.fa-yoast:before{content:"\f2b1"}.fa-youtube:before{content:"\f167"}.fa-youtube-square:before{content:"\f431"}.fa-zhihu:before{content:"\f63f"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(fa-regular-400.64b3730eae64a402.woff2) format("woff2"),url(fa-regular-400.95a8a8afa5b1c983.ttf) format("truetype")}.fa-regular,.far{font-family:"Font Awesome 6 Free";font-weight:400}:host,:root{--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(fa-solid-900.6115ad710dfd16d9.woff2) format("woff2"),url(fa-solid-900.f0203cfcf963d9a2.ttf) format("truetype")}.fa-solid,.fas{font-family:"Font Awesome 6 Free";font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(fa-brands-400.5d5236fb45973c81.woff2) format("woff2"),url(fa-brands-400.1fd0b4d72d4586e5.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(fa-solid-900.6115ad710dfd16d9.woff2) format("woff2"),url(fa-solid-900.f0203cfcf963d9a2.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(fa-regular-400.64b3730eae64a402.woff2) format("woff2"),url(fa-regular-400.95a8a8afa5b1c983.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(fa-solid-900.6115ad710dfd16d9.woff2) format("woff2"),url(fa-solid-900.f0203cfcf963d9a2.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(fa-brands-400.5d5236fb45973c81.woff2) format("woff2"),url(fa-brands-400.1fd0b4d72d4586e5.ttf) format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url(fa-regular-400.64b3730eae64a402.woff2) format("woff2"),url(fa-regular-400.95a8a8afa5b1c983.ttf) format("truetype");unicode-range:u+f003,u+f006,u+f014,u+f016-f017,u+f01a-f01b,u+f01d,u+f022,u+f03e,u+f044,u+f046,u+f05c-f05d,u+f06e,u+f070,u+f087-f088,u+f08a,u+f094,u+f096-f097,u+f09d,u+f0a0,u+f0a2,u+f0a4-f0a7,u+f0c5,u+f0c7,u+f0e5-f0e6,u+f0eb,u+f0f6-f0f8,u+f10c,u+f114-f115,u+f118-f11a,u+f11c-f11d,u+f133,u+f147,u+f14e,u+f150-f152,u+f185-f186,u+f18e,u+f190-f192,u+f196,u+f1c1-f1c9,u+f1d9,u+f1db,u+f1e3,u+f1ea,u+f1f7,u+f1f9,u+f20a,u+f247-f248,u+f24a,u+f24d,u+f255-f25b,u+f25d,u+f271-f274,u+f278,u+f27b,u+f28c,u+f28e,u+f29c,u+f2b5,u+f2b7,u+f2ba,u+f2bc,u+f2be,u+f2c0-f2c1,u+f2c3,u+f2d0,u+f2d2,u+f2d4,u+f2dc}@font-face{font-family:FontAwesome;font-display:block;src:url(fa-v4compatibility.c71d2ee3696c4af7.woff2) format("woff2"),url(fa-v4compatibility.e1023515330639b1.ttf) format("truetype");unicode-range:u+f041,u+f047,u+f065-f066,u+f07d-f07e,u+f080,u+f08b,u+f08e,u+f090,u+f09a,u+f0ac,u+f0ae,u+f0b2,u+f0d0,u+f0d6,u+f0e4,u+f0ec,u+f10a-f10b,u+f123,u+f13e,u+f148-f149,u+f14c,u+f156,u+f15e,u+f160-f161,u+f163,u+f175-f178,u+f195,u+f1f8,u+f219,u+f250,u+f252,u+f27a}@font-face{font-family:Open Sans;font-style:normal;font-weight:300;src:url(open-sans-v27-latin-300.dab7b16667a2ab8f.eot);src:local(""),url(open-sans-v27-latin-300.dab7b16667a2ab8f.eot?#iefix) format("embedded-opentype"),url(open-sans-v27-latin-300.91a50b4f841cade2.woff2) format("woff2"),url(open-sans-v27-latin-300.3374e4fded2ba693.woff) format("woff"),url(open-sans-v27-latin-300.4bb85106c5cb0f8e.ttf) format("truetype"),url(open-sans-v27-latin-300.95e680376cf7637b.svg#OpenSans) format("svg")}@font-face{font-family:Open Sans;font-style:normal;font-weight:400;src:url(open-sans-v27-latin-regular.6ba65a2e7d0ff6d7.eot);src:local(""),url(open-sans-v27-latin-regular.6ba65a2e7d0ff6d7.eot?#iefix) format("embedded-opentype"),url(open-sans-v27-latin-regular.45a6d40a1181e19e.woff2) format("woff2"),url(open-sans-v27-latin-regular.74a7ffc06ea8d562.woff) format("woff"),url(open-sans-v27-latin-regular.664f90551769c759.ttf) format("truetype"),url(open-sans-v27-latin-regular.32bf0b0a6b06932b.svg#OpenSans) format("svg")}@font-face{font-family:Open Sans;font-style:normal;font-weight:700;src:url(open-sans-v27-latin-700.5562d80051c99638.eot);src:local(""),url(open-sans-v27-latin-700.5562d80051c99638.eot?#iefix) format("embedded-opentype"),url(open-sans-v27-latin-700.dff9eb1f9b52ed3c.woff2) format("woff2"),url(open-sans-v27-latin-700.314b5ebcfab954af.woff) format("woff"),url(open-sans-v27-latin-700.3fee31b1d5bd88d8.ttf) format("truetype"),url(open-sans-v27-latin-700.2774daabdd503125.svg#OpenSans) format("svg")}:root{--rg-primary-color: #20A0D2;--rg-primary-hover-color: #1C8EB7;--rg-gradient-from: #1c7ed6;--rg-gradient-to: #23b8cf;--rg-gradient-hover-from: #1A6FBA;--rg-gradient-hover-to: #1EA1B5}html,body{font-family:Open Sans,sans-serif;font-weight:300;scroll-padding-top:75px}body{padding-top:80px}h1,h2,h3,h4,h5,h6{font-weight:300}.pro-button{color:#fff!important;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);padding:3px 8px;border-radius:10px;font-weight:700;margin-top:-3px;display:inline-block}.pro-button-tiny{font-size:.8rem;padding:2px 6px}.pro-text{color:var(--rg-primary-color)}.line{width:250px;max-width:80%;height:2px;margin-top:18px}.btn-primary{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);border-color:var(--rg-primary-color)}.btn-primary:hover{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);border-color:var(--rg-primary-hover-color)}input.ng-invalid,textarea.ng-invalid{border-color:#c00;background-color:#ffc4c4}.bg-light{background-color:#e9e9e9!important}.navbar-light .navbar-toggler{border:none}.githubheart{color:#ec6cb9}.required{color:var(--rg-primary-hover-color)} diff --git a/docs/usage.html b/docs/usage.html index 7ee3772c..a3db7420 100644 --- a/docs/usage.html +++ b/docs/usage.html @@ -9,7 +9,7 @@ - + - + \ No newline at end of file From 75b4cda1cdf64e58c24d4be6c700844b8ddbc148 Mon Sep 17 00:00:00 2001 From: Daniel Palme Date: Sun, 12 Nov 2023 18:20:19 +0100 Subject: [PATCH 5/6] Update Angular --- docs/404.html | 17 +---------------- docs/contact.html | 17 +---------------- docs/features.html | 17 +---------------- docs/getstarted.html | 17 +---------------- docs/index.html | 17 +---------------- docs/main.4bcb4ed2cf277f51.js | 1 + docs/main.ffb8fee3758b850b.js | 1 - docs/pro.html | 17 +---------------- docs/usage.html | 17 +---------------- 9 files changed, 8 insertions(+), 113 deletions(-) create mode 100644 docs/main.4bcb4ed2cf277f51.js delete mode 100644 docs/main.ffb8fee3758b850b.js diff --git a/docs/404.html b/docs/404.html index 42cb2be5..b379617e 100644 --- a/docs/404.html +++ b/docs/404.html @@ -7,25 +7,10 @@ - - - + \ No newline at end of file diff --git a/docs/contact.html b/docs/contact.html index f9e7892a..364e6ad9 100644 --- a/docs/contact.html +++ b/docs/contact.html @@ -7,25 +7,10 @@ - - - + \ No newline at end of file diff --git a/docs/features.html b/docs/features.html index 22c76d2e..b11094bf 100644 --- a/docs/features.html +++ b/docs/features.html @@ -7,25 +7,10 @@ - - - + \ No newline at end of file diff --git a/docs/getstarted.html b/docs/getstarted.html index 9edc7991..88b277d3 100644 --- a/docs/getstarted.html +++ b/docs/getstarted.html @@ -7,25 +7,10 @@ - - - + \ No newline at end of file diff --git a/docs/index.html b/docs/index.html index b3b92d61..686fe41c 100644 --- a/docs/index.html +++ b/docs/index.html @@ -7,25 +7,10 @@ - - - + \ No newline at end of file diff --git a/docs/main.4bcb4ed2cf277f51.js b/docs/main.4bcb4ed2cf277f51.js new file mode 100644 index 00000000..a94dfa82 --- /dev/null +++ b/docs/main.4bcb4ed2cf277f51.js @@ -0,0 +1 @@ +"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[179],{139:()=>{let Re=null,Wr=1;function Se(e){const n=Re;return Re=e,n}function sg(e){if((!bi(e)||e.dirty)&&(e.dirty||e.lastCleanEpoch!==Wr)){if(!e.producerMustRecompute(e)&&!nu(e))return e.dirty=!1,void(e.lastCleanEpoch=Wr);e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=Wr}}function nu(e){Zr(e);for(let n=0;n0}function Zr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let pg=null;function Ce(e){return"function"==typeof e}function iu(e){const t=e(r=>{Error.call(r),r.stack=(new Error).stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}const su=iu(e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((r,o)=>`${o+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t});function au(e,n){if(e){const t=e.indexOf(n);0<=t&&e.splice(t,1)}}class Et{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const i of t)i.remove(this);else t.remove(this);const{initialTeardown:r}=this;if(Ce(r))try{r()}catch(i){n=i instanceof su?i.errors:[i]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const i of o)try{_g(i)}catch(s){n=n??[],s instanceof su?n=[...n,...s.errors]:n.push(s)}}if(n)throw new su(n)}}add(n){var t;if(n&&n!==this)if(this.closed)_g(n);else{if(n instanceof Et){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(t=this._finalizers)&&void 0!==t?t:[]).push(n)}}_hasParent(n){const{_parentage:t}=this;return t===n||Array.isArray(t)&&t.includes(n)}_addParent(n){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(n),t):t?[t,n]:n}_removeParent(n){const{_parentage:t}=this;t===n?this._parentage=null:Array.isArray(t)&&au(t,n)}remove(n){const{_finalizers:t}=this;t&&au(t,n),n instanceof Et&&n._removeParent(this)}}Et.EMPTY=(()=>{const e=new Et;return e.closed=!0,e})();const vg=Et.EMPTY;function yg(e){return e instanceof Et||e&&"closed"in e&&Ce(e.remove)&&Ce(e.add)&&Ce(e.unsubscribe)}function _g(e){Ce(e)?e():e.unsubscribe()}const vr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},la={setTimeout(e,n,...t){const{delegate:r}=la;return r?.setTimeout?r.setTimeout(e,n,...t):setTimeout(e,n,...t)},clearTimeout(e){const{delegate:n}=la;return(n?.clearTimeout||clearTimeout)(e)},delegate:void 0};function Cg(e){la.setTimeout(()=>{const{onUnhandledError:n}=vr;if(!n)throw e;n(e)})}function lu(){}const GM=cu("C",void 0,void 0);function cu(e,n,t){return{kind:e,value:n,error:t}}let yr=null;function ca(e){if(vr.useDeprecatedSynchronousErrorHandling){const n=!yr;if(n&&(yr={errorThrown:!1,error:null}),e(),n){const{errorThrown:t,error:r}=yr;if(yr=null,t)throw r}}else e()}class uu extends Et{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,yg(n)&&n.add(this)):this.destination=XM}static create(n,t,r){return new ua(n,t,r)}next(n){this.isStopped?fu(function qM(e){return cu("N",e,void 0)}(n),this):this._next(n)}error(n){this.isStopped?fu(function zM(e){return cu("E",void 0,e)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?fu(GM,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(n){this.destination.next(n)}_error(n){try{this.destination.error(n)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const ZM=Function.prototype.bind;function du(e,n){return ZM.call(e,n)}class YM{constructor(n){this.partialObserver=n}next(n){const{partialObserver:t}=this;if(t.next)try{t.next(n)}catch(r){da(r)}}error(n){const{partialObserver:t}=this;if(t.error)try{t.error(n)}catch(r){da(r)}else da(n)}complete(){const{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(t){da(t)}}}class ua extends uu{constructor(n,t,r){let o;if(super(),Ce(n)||!n)o={next:n??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&vr.useDeprecatedNextContext?(i=Object.create(n),i.unsubscribe=()=>this.unsubscribe(),o={next:n.next&&du(n.next,i),error:n.error&&du(n.error,i),complete:n.complete&&du(n.complete,i)}):o=n}this.destination=new YM(o)}}function da(e){vr.useDeprecatedSynchronousErrorHandling?function WM(e){vr.useDeprecatedSynchronousErrorHandling&&yr&&(yr.errorThrown=!0,yr.error=e)}(e):Cg(e)}function fu(e,n){const{onStoppedNotification:t}=vr;t&&la.setTimeout(()=>t(e,n))}const XM={closed:!0,next:lu,error:function QM(e){throw e},complete:lu},hu="function"==typeof Symbol&&Symbol.observable||"@@observable";function qn(e){return e}function Dg(e){return 0===e.length?qn:1===e.length?e[0]:function(t){return e.reduce((r,o)=>o(r),t)}}let Te=(()=>{class e{constructor(t){t&&(this._subscribe=t)}lift(t){const r=new e;return r.source=this,r.operator=t,r}subscribe(t,r,o){const i=function e1(e){return e&&e instanceof uu||function KM(e){return e&&Ce(e.next)&&Ce(e.error)&&Ce(e.complete)}(e)&&yg(e)}(t)?t:new ua(t,r,o);return ca(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(t){try{return this._subscribe(t)}catch(r){t.error(r)}}forEach(t,r){return new(r=wg(r))((o,i)=>{const s=new ua({next:a=>{try{t(a)}catch(l){i(l),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(t){var r;return null===(r=this.source)||void 0===r?void 0:r.subscribe(t)}[hu](){return this}pipe(...t){return Dg(t)(this)}toPromise(t){return new(t=wg(t))((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=n=>new e(n),e})();function wg(e){var n;return null!==(n=e??vr.Promise)&&void 0!==n?n:Promise}const t1=iu(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let zt=(()=>{class e extends Te{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){const r=new bg(this,this);return r.operator=t,r}_throwIfClosed(){if(this.closed)throw new t1}next(t){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const r of this.currentObservers)r.next(t)}})}error(t){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;const{observers:r}=this;for(;r.length;)r.shift().error(t)}})}complete(){ca(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:t}=this;for(;t.length;)t.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){const{hasError:r,isStopped:o,observers:i}=this;return r||o?vg:(this.currentObservers=null,i.push(t),new Et(()=>{this.currentObservers=null,au(i,t)}))}_checkFinalizedStatuses(t){const{hasError:r,thrownError:o,isStopped:i}=this;r?t.error(o):i&&t.complete()}asObservable(){const t=new Te;return t.source=this,t}}return e.create=(n,t)=>new bg(n,t),e})();class bg extends zt{constructor(n,t){super(),this.destination=n,this.source=t}next(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,n)}error(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,n)}complete(){var n,t;null===(t=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===t||t.call(n)}_subscribe(n){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(n))&&void 0!==r?r:vg}}function Eg(e){return Ce(e?.lift)}function $e(e){return n=>{if(Eg(n))return n.lift(function(t){try{return e(t,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function Ve(e,n,t,r,o){return new n1(e,n,t,r,o)}class n1 extends uu{constructor(n,t,r,o,i,s){super(n),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=t?function(a){try{t(a)}catch(l){n.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){n.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:t}=this;super.unsubscribe(),!t&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}}function K(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>{r.next(e.call(n,i,o++))}))})}function Wn(e){return this instanceof Wn?(this.v=e,this):new Wn(e)}function Tg(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=function vu(e){var n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(i){t[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Ag=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function xg(e){return Ce(e?.then)}function Ng(e){return Ce(e[hu])}function Rg(e){return Symbol.asyncIterator&&Ce(e?.[Symbol.asyncIterator])}function Og(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Pg=function E1(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function kg(e){return Ce(e?.[Pg])}function Fg(e){return function Sg(e,n,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,r=t.apply(e,n||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(g){r[g]&&(o[g]=function(m){return new Promise(function(v,_){i.push([g,m,v,_])>1||a(g,m)})})}function a(g,m){try{!function l(g){g.value instanceof Wn?Promise.resolve(g.value.v).then(c,u):d(i[0][2],g)}(r[g](m))}catch(v){d(i[0][3],v)}}function c(g){a("next",g)}function u(g){a("throw",g)}function d(g,m){g(m),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const t=e.getReader();try{for(;;){const{value:r,done:o}=yield Wn(t.read());if(o)return yield Wn(void 0);yield yield Wn(r)}}finally{t.releaseLock()}})}function Lg(e){return Ce(e?.getReader)}function qt(e){if(e instanceof Te)return e;if(null!=e){if(Ng(e))return function I1(e){return new Te(n=>{const t=e[hu]();if(Ce(t.subscribe))return t.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Ag(e))return function M1(e){return new Te(n=>{for(let t=0;t{e.then(t=>{n.closed||(n.next(t),n.complete())},t=>n.error(t)).then(null,Cg)})}(e);if(Rg(e))return Vg(e);if(kg(e))return function T1(e){return new Te(n=>{for(const t of e)if(n.next(t),n.closed)return;n.complete()})}(e);if(Lg(e))return function A1(e){return Vg(Fg(e))}(e)}throw Og(e)}function Vg(e){return new Te(n=>{(function x1(e,n){var t,r,o,i;return function Ig(e,n,t,r){return new(t||(t=Promise))(function(i,s){function a(u){try{c(r.next(u))}catch(d){s(d)}}function l(u){try{c(r.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof t?i:new t(function(s){s(i)})}(u.value).then(a,l)}c((r=r.apply(e,n||[])).next())})}(this,void 0,void 0,function*(){try{for(t=Tg(e);!(r=yield t.next()).done;)if(n.next(r.value),n.closed)return}catch(s){o={error:s}}finally{try{r&&!r.done&&(i=t.return)&&(yield i.call(t))}finally{if(o)throw o.error}}n.complete()})})(e,n).catch(t=>n.error(t))})}function An(e,n,t,r=0,o=!1){const i=n.schedule(function(){t(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function Xe(e,n,t=1/0){return Ce(n)?Xe((r,o)=>K((i,s)=>n(r,i,o,s))(qt(e(r,o))),t):("number"==typeof n&&(t=n),$e((r,o)=>function N1(e,n,t,r,o,i,s,a){const l=[];let c=0,u=0,d=!1;const g=()=>{d&&!l.length&&!c&&n.complete()},m=_=>c{i&&n.next(_),c++;let D=!1;qt(t(_,u++)).subscribe(Ve(n,I=>{o?.(I),i?m(I):n.next(I)},()=>{D=!0},void 0,()=>{if(D)try{for(c--;l.length&&cv(I)):v(I)}g()}catch(I){n.error(I)}}))};return e.subscribe(Ve(n,m,()=>{d=!0,g()})),()=>{a?.()}}(r,o,e,t)))}function Yr(e=1/0){return Xe(qn,e)}const an=new Te(e=>e.complete());function yu(e){return e[e.length-1]}function jg(e){return Ce(yu(e))?e.pop():void 0}function Ei(e){return function O1(e){return e&&Ce(e.schedule)}(yu(e))?e.pop():void 0}function Hg(e,n=0){return $e((t,r)=>{t.subscribe(Ve(r,o=>An(r,e,()=>r.next(o),n),()=>An(r,e,()=>r.complete(),n),o=>An(r,e,()=>r.error(o),n)))})}function Ug(e,n=0){return $e((t,r)=>{r.add(e.schedule(()=>t.subscribe(r),n))})}function Bg(e,n){if(!e)throw new Error("Iterable cannot be null");return new Te(t=>{An(t,n,()=>{const r=e[Symbol.asyncIterator]();An(t,n,()=>{r.next().then(o=>{o.done?t.complete():t.next(o.value)})},0,!0)})})}function Oe(e,n){return n?function H1(e,n){if(null!=e){if(Ng(e))return function k1(e,n){return qt(e).pipe(Ug(n),Hg(n))}(e,n);if(Ag(e))return function L1(e,n){return new Te(t=>{let r=0;return n.schedule(function(){r===e.length?t.complete():(t.next(e[r++]),t.closed||this.schedule())})})}(e,n);if(xg(e))return function F1(e,n){return qt(e).pipe(Ug(n),Hg(n))}(e,n);if(Rg(e))return Bg(e,n);if(kg(e))return function V1(e,n){return new Te(t=>{let r;return An(t,n,()=>{r=e[Pg](),An(t,n,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){return void t.error(s)}i?t.complete():t.next(o)},0,!0)}),()=>Ce(r?.return)&&r.return()})}(e,n);if(Lg(e))return function j1(e,n){return Bg(Fg(e),n)}(e,n)}throw Og(e)}(e,n):qt(e)}class kt extends zt{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const t=super._subscribe(n);return!t.closed&&n.next(this._value),t}getValue(){const{hasError:n,thrownError:t,_value:r}=this;if(n)throw t;return this._throwIfClosed(),r}next(n){super.next(this._value=n)}}function F(...e){return Oe(e,Ei(e))}function _r(e){return e<=0?()=>an:$e((n,t)=>{let r=0;n.subscribe(Ve(t,o=>{++r<=e&&(t.next(o),e<=r&&t.complete())}))})}function $g(e={}){const{connector:n=(()=>new zt),resetOnError:t=!0,resetOnComplete:r=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const g=()=>{a?.unsubscribe(),a=null},m=()=>{g(),s=l=null,u=d=!1},v=()=>{const _=s;m(),_?.unsubscribe()};return $e((_,D)=>{c++,!d&&!u&&g();const I=l=l??n();D.add(()=>{c--,0===c&&!d&&!u&&(a=_u(v,o))}),I.subscribe(D),s||(s=new ua({next:w=>I.next(w),error:w=>{d=!0,g(),a=_u(m,t,w),I.error(w)},complete:()=>{u=!0,g(),a=_u(m,r),I.complete()}}),Oe(_).subscribe(s))})(i)}}function _u(e,n,...t){return!0===n?(e(),null):!1===n?null:n(...t).pipe(_r(1)).subscribe(()=>e())}function Ft(e,n){return $e((t,r)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&r.complete();t.subscribe(Ve(r,l=>{o?.unsubscribe();let c=0;const u=i++;qt(e(l,u)).subscribe(o=Ve(r,d=>r.next(n?n(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function $1(e,n){return e===n}function le(e){for(let n in e)if(e[n]===le)return n;throw Error("Could not find renamed property on target object.")}function fa(e,n){for(const t in n)n.hasOwnProperty(t)&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function je(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(je).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const n=e.toString();if(null==n)return""+n;const t=n.indexOf("\n");return-1===t?n:n.substring(0,t)}function Cu(e,n){return null==e||""===e?null===n?"":n:null==n||""===n?e:e+" "+n}const G1=le({__forward_ref__:le});function he(e){return e.__forward_ref__=he,e.toString=function(){return je(this())},e}function j(e){return ha(e)?e():e}function ha(e){return"function"==typeof e&&e.hasOwnProperty(G1)&&e.__forward_ref__===he}function Du(e){return e&&!!e.\u0275providers}const Gg="https://g.co/ng/security#xss";class M extends Error{constructor(n,t){super(function Qr(e,n){return`NG0${Math.abs(e)}${n?": "+n:""}`}(n,t)),this.code=n}}const Ii=le({\u0275cmp:le}),wu=le({\u0275dir:le}),bu=le({\u0275pipe:le}),zg=le({\u0275mod:le}),xn=le({\u0275fac:le}),Mi=le({__NG_ELEMENT_ID__:le}),qg=le({__NG_ENV_ID__:le});function G(e){return"string"==typeof e?e:null==e?"":String(e)}function Eu(e,n){throw new M(-201,!1)}function gt(e,n){null==e&&function L(e,n,t,r){throw new Error(`ASSERTION ERROR: ${e}`+(null==r?"":` [Expected=> ${t} ${r} ${n} <=Actual]`))}(n,e,null,"!=")}function O(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function ln(e){return{providers:e.providers||[],imports:e.imports||[]}}function pa(e){return Wg(e,ma)||Wg(e,Zg)}function Wg(e,n){return e.hasOwnProperty(n)?e[n]:null}function ga(e){return e&&(e.hasOwnProperty(Iu)||e.hasOwnProperty(K1))?e[Iu]:null}const ma=le({\u0275prov:le}),Iu=le({\u0275inj:le}),Zg=le({ngInjectableDef:le}),K1=le({ngInjectorDef:le});var X=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}(X||{});let Mu;function Yg(){return Mu}function mt(e){const n=Mu;return Mu=e,n}function Qg(e,n,t){const r=pa(e);return r&&"root"==r.providedIn?void 0===r.value?r.value=r.factory():r.value:t&X.Optional?null:void 0!==n?n:void Eu(je(e))}const pe=globalThis;class N{constructor(n,t){this._desc=n,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=O({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Si={},Nu="__NG_DI_FLAG__",va="ngTempTokenPath",n0=/\n/gm,Jg="__source";let Xr;function Yn(e){const n=Xr;return Xr=e,n}function s0(e,n=X.Default){if(void 0===Xr)throw new M(-203,!1);return null===Xr?Qg(e,void 0,n):Xr.get(e,n&X.Optional?null:void 0,n)}function k(e,n=X.Default){return(Yg()||s0)(j(e),n)}function A(e,n=X.Default){return k(e,ya(n))}function ya(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Ru(e){const n=[];for(let t=0;tn){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const m=8&r?g:null;if(m&&-1!==em(m,c,0)||2&r&&c!==g){if(Zt(r))return!1;s=!0}}}}else{if(!s&&!Zt(r)&&!Zt(l))return!1;if(s&&Zt(l))continue;s=!1,r=l|1&r}}return Zt(r)||s}function Zt(e){return 0==(1&e)}function h0(e,n,t,r){if(null===n)return-1;let o=0;if(r||!t){let i=!1;for(;o-1)for(t++;t0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""!==o&&!Zt(s)&&(n+=am(i,o),o=""),r=s,i=i||!Zt(r);t++}return""!==o&&(n+=am(i,o)),n}function Mt(e){return Nn(()=>{const n=cm(e),t={...n,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===_a.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Wt.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};um(t);const r=e.dependencies;return t.directiveDefs=Ca(r,!1),t.pipeDefs=Ca(r,!0),t.id=function E0(e){let n=0;const t=[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(const o of t)n=Math.imul(31,n)+o.charCodeAt(0)<<0;return n+=2147483648,"c"+n}(t),t})}function D0(e){return Q(e)||Ge(e)}function w0(e){return null!==e}function Rn(e){return Nn(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function lm(e,n){if(null==e)return cn;const t={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),t[o]=r,n&&(n[o]=i)}return t}function $(e){return Nn(()=>{const n=cm(e);return um(n),n})}function Q(e){return e[Ii]||null}function Ge(e){return e[wu]||null}function Je(e){return e[bu]||null}function et(e,n){const t=e[zg]||null;if(!t&&!0===n)throw new Error(`Type ${je(e)} does not have '\u0275mod' property.`);return t}function cm(e){const n={};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:n,inputTransforms:null,inputConfig:e.inputs||cn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:lm(e.inputs,n),outputs:lm(e.outputs),debugInfo:null}}function um(e){e.features?.forEach(n=>n(e))}function Ca(e,n){if(!e)return null;const t=n?Je:D0;return()=>("function"==typeof e?e():e).map(r=>t(r)).filter(w0)}const Ae=0,T=1,H=2,we=3,Yt=4,tt=5,un=6,Jr=7,ge=8,it=9,Kr=10,z=11,xi=12,dm=13,eo=14,Me=15,Ni=16,to=17,dn=18,Ri=19,fm=20,Xn=21,Da=22,Cr=23,U=25,Pu=1,hm=2,ku=6,fn=7,no=9,Pe=11;function Ke(e){return Array.isArray(e)&&"object"==typeof e[Pu]}function Ye(e){return Array.isArray(e)&&!0===e[Pu]}function Fu(e){return 0!=(4&e.flags)}function Dr(e){return e.componentOffset>-1}function ba(e){return 1==(1&e.flags)}function Qt(e){return!!e.template}function Lu(e){return 0!=(512&e[H])}function wr(e,n){return e.hasOwnProperty(xn)?e[xn]:null}class T0{constructor(n,t,r){this.previousValue=n,this.currentValue=t,this.firstChange=r}isFirstChange(){return this.firstChange}}function Lt(){return vm}function vm(e){return e.type.prototype.ngOnChanges&&(e.setInput=x0),A0}function A0(){const e=_m(this),n=e?.current;if(n){const t=e.previous;if(t===cn)e.previous=n;else for(let r in n)t[r]=n[r];e.current=null,this.ngOnChanges(n)}}function x0(e,n,t,r){const o=this.declaredInputs[t],i=_m(e)||function N0(e,n){return e[ym]=n}(e,{previous:cn,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new T0(l&&l.currentValue,n,a===cn),e[r]=n}Lt.ngInherit=!0;const ym="__ngSimpleChanges__";function _m(e){return e[ym]||null}const hn=function(e,n,t){};function me(e){for(;Array.isArray(e);)e=e[Ae];return e}function Pi(e,n){return me(n[e])}function st(e,n){return me(n[e.index])}function ki(e,n){return e.data[n]}function St(e,n){const t=n[e];return Ke(t)?t:t[Ae]}function Bu(e){return 128==(128&e[H])}function pn(e,n){return null==n?null:e[n]}function wm(e){e[to]=0}function F0(e){1024&e[H]||(e[H]|=1024,Bu(e)&&Ea(e))}function Em(e){9216&e[H]&&Ea(e)}function Ea(e){let n=e[we];for(;null!==n&&!(Ye(n)&&n[ku]||Ke(n)&&8192&n[H]);){if(Ye(n))n[ku]=!0;else if(n[H]|=8192,!Bu(n))break;n=n[we]}}function Ia(e,n){if(256==(256&e[H]))throw new M(911,!1);null===e[Xn]&&(e[Xn]=[]),e[Xn].push(n)}const B={lFrame:Pm(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function Mm(){return B.bindingsEnabled}function b(){return B.lFrame.lView}function J(){return B.lFrame.tView}function re(e){return B.lFrame.contextLView=e,e[ge]}function oe(e){return B.lFrame.contextLView=null,e}function ue(){let e=Sm();for(;null!==e&&64===e.type;)e=e.parent;return e}function Sm(){return B.lFrame.currentTNode}function gn(e,n){const t=B.lFrame;t.currentTNode=e,t.isParent=n}function Gu(){return B.lFrame.isParent}function zu(){B.lFrame.isParent=!1}function at(){const e=B.lFrame;let n=e.bindingRootIndex;return-1===n&&(n=e.bindingRootIndex=e.tView.bindingStartIndex),n}function mn(){return B.lFrame.bindingIndex++}function W0(e,n){const t=B.lFrame;t.bindingIndex=t.bindingRootIndex=e,qu(n)}function qu(e){B.lFrame.currentDirectiveIndex=e}function Nm(){return B.lFrame.currentQueryIndex}function Zu(e){B.lFrame.currentQueryIndex=e}function Y0(e){const n=e[T];return 2===n.type?n.declTNode:1===n.type?e[tt]:null}function Rm(e,n,t){if(t&X.SkipSelf){let o=n,i=e;for(;!(o=o.parent,null!==o||t&X.Host||(o=Y0(i),null===o||(i=i[eo],10&o.type))););if(null===o)return!1;n=o,e=i}const r=B.lFrame=Om();return r.currentTNode=n,r.lView=e,!0}function Yu(e){const n=Om(),t=e[T];B.lFrame=n,n.currentTNode=t.firstChild,n.lView=e,n.tView=t,n.contextLView=e,n.bindingIndex=t.bindingStartIndex,n.inI18n=!1}function Om(){const e=B.lFrame,n=null===e?null:e.child;return null===n?Pm(e):n}function Pm(e){const n={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 null!==e&&(e.child=n),n}function km(){const e=B.lFrame;return B.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const Fm=km;function Qu(){const e=km();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 lt(){return B.lFrame.selectedIndex}function br(e){B.lFrame.selectedIndex=e}function De(){const e=B.lFrame;return ki(e.tView,e.selectedIndex)}let Vm=!0;function Ma(){return Vm}function Jn(e){Vm=e}function Sa(e,n){for(let t=n.directiveStart,r=n.directiveEnd;t=r)break}else n[l]<0&&(e[to]+=65536),(a>14>16&&(3&e[H])===n&&(e[H]+=16384,Hm(a,i)):Hm(a,i)}const io=-1;class Li{constructor(n,t,r){this.factory=n,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=r}}function Ku(e){return e!==io}function Vi(e){return 32767&e}function ji(e,n){let t=function aS(e){return e>>16}(e),r=n;for(;t>0;)r=r[eo],t--;return r}let ed=!0;function xa(e){const n=ed;return ed=e,n}const Um=255,Bm=5;let lS=0;const vn={};function Na(e,n){const t=$m(e,n);if(-1!==t)return t;const r=n[T];r.firstCreatePass&&(e.injectorIndex=n.length,td(r.data,e),td(n,null),td(r.blueprint,null));const o=Ra(e,n),i=e.injectorIndex;if(Ku(o)){const s=Vi(o),a=ji(o,n),l=a[T].data;for(let c=0;c<8;c++)n[i+c]=a[s+c]|l[s+c]}return n[i+8]=o,i}function td(e,n){e.push(0,0,0,0,0,0,0,0,n)}function $m(e,n){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===n[e.injectorIndex+8]?-1:e.injectorIndex}function Ra(e,n){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let t=0,r=null,o=n;for(;null!==o;){if(r=Qm(o),null===r)return io;if(t++,o=o[eo],-1!==r.injectorIndex)return r.injectorIndex|t<<16}return io}function nd(e,n,t){!function cS(e,n,t){let r;"string"==typeof t?r=t.charCodeAt(0)||0:t.hasOwnProperty(Mi)&&(r=t[Mi]),null==r&&(r=t[Mi]=lS++);const o=r&Um;n.data[e+(o>>Bm)]|=1<=0?n&Um:hS:n}(t);if("function"==typeof i){if(!Rm(n,e,r))return r&X.Host?Gm(o,0,r):zm(n,t,r,o);try{let s;if(s=i(r),null!=s||r&X.Optional)return s;Eu()}finally{Fm()}}else if("number"==typeof i){let s=null,a=$m(e,n),l=io,c=r&X.Host?n[Me][tt]:null;for((-1===a||r&X.SkipSelf)&&(l=-1===a?Ra(e,n):n[a+8],l!==io&&Ym(r,!1)?(s=n[T],a=Vi(l),n=ji(l,n)):a=-1);-1!==a;){const u=n[T];if(Zm(i,a,u.data)){const d=dS(a,n,t,s,r,c);if(d!==vn)return d}l=n[a+8],l!==io&&Ym(r,n[T].data[a+8]===c)&&Zm(i,a,n)?(s=u,a=Vi(l),n=ji(l,n)):a=-1}}return o}function dS(e,n,t,r,o,i){const s=n[T],a=s.data[e+8],u=Oa(a,s,t,null==r?Dr(a)&&ed:r!=s&&0!=(3&a.type),o&X.Host&&i===a);return null!==u?Er(n,s,u,a):vn}function Oa(e,n,t,r,o){const i=e.providerIndexes,s=n.data,a=1048575&i,l=e.directiveStart,u=i>>20,g=o?a+u:e.directiveEnd;for(let m=r?a:a+u;m=l&&v.type===t)return m}if(o){const m=s[l];if(m&&Qt(m)&&m.type===t)return l}return null}function Er(e,n,t,r){let o=e[t];const i=n.data;if(function rS(e){return e instanceof Li}(o)){const s=o;s.resolving&&function q1(e,n){const t=n?`. Dependency path: ${n.join(" > ")} > ${e}`:"";throw new M(-200,`Circular dependency in DI detected for ${e}${t}`)}(function ne(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():G(e)}(i[t]));const a=xa(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?mt(s.injectImpl):null;Rm(e,r,X.Default);try{o=e[t]=s.factory(void 0,i,e,r),n.firstCreatePass&&t>=r.directiveStart&&function tS(e,n,t){const{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=n.type.prototype;if(r){const s=vm(n);(t.preOrderHooks??=[]).push(e,s),(t.preOrderCheckHooks??=[]).push(e,s)}o&&(t.preOrderHooks??=[]).push(0-e,o),i&&((t.preOrderHooks??=[]).push(e,i),(t.preOrderCheckHooks??=[]).push(e,i))}(t,i[t],n)}finally{null!==c&&mt(c),xa(a),s.resolving=!1,Fm()}}return o}function Zm(e,n,t){return!!(t[n+(e>>Bm)]&1<{const n=e.prototype.constructor,t=n[xn]||rd(n),r=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){const i=o[xn]||rd(o);if(i&&i!==t)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function rd(e){return ha(e)?()=>{const n=rd(j(e));return n&&n()}:wr(e)}function Qm(e){const n=e[T],t=n.type;return 2===t?n.declTNode:1===t?e[tt]:null}const co="__parameters__";function fo(e,n,t){return Nn(()=>{const r=function od(e){return function(...t){if(e){const r=e(...t);for(const o in r)this[o]=r[o]}}}(n);function o(...i){if(this instanceof o)return r.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(co)?l[co]:Object.defineProperty(l,co,{value:[]})[co];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return t&&(o.prototype=Object.create(t.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function po(e,n){e.forEach(t=>Array.isArray(t)?po(t,n):n(t))}function Jm(e,n,t){n>=e.length?e.push(t):e.splice(n,0,t)}function ka(e,n){return n>=e.length-1?e.pop():e.splice(n,1)[0]}function Tt(e,n,t){let r=go(e,n);return r>=0?e[1|r]=t:(r=~r,function Km(e,n,t,r){let o=e.length;if(o==n)e.push(t,r);else if(1===o)e.push(r,e[0]),e[0]=t;else{for(o--,e.push(e[o-1],e[o]);o>n;)e[o]=e[o-2],o--;e[n]=t,e[n+1]=r}}(e,r,n,t)),r}function sd(e,n){const t=go(e,n);if(t>=0)return e[1|t]}function go(e,n){return function ev(e,n,t){let r=0,o=e.length>>t;for(;o!==r;){const i=r+(o-r>>1),s=e[i<n?o=i:r=i+1}return~(o<{t.push(s)};return po(n,s=>{const a=s;Ua(a,i,[],r)&&(o||=[],o.push(a))}),void 0!==o&&av(o,i),t}function av(e,n){for(let t=0;t{n(i,r)})}}function Ua(e,n,t,r){if(!(e=j(e)))return!1;let o=null,i=ga(e);const s=!i&&Q(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=ga(l),!i)return!1;o=l}const a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)Ua(c,n,t,r)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;r.add(o);try{po(i.imports,u=>{Ua(u,n,t,r)&&(c||=[],c.push(u))})}finally{}void 0!==c&&av(c,n)}if(!a){const c=wr(o)||(()=>new o);n({provide:o,useFactory:c,deps:te},o),n({provide:cd,useValue:o,multi:!0},o),n({provide:vo,useValue:()=>k(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;dd(l,u=>{n(u,c)})}}}return o!==e&&void 0!==e.providers}function dd(e,n){for(let t of e)Du(t)&&(t=t.\u0275providers),Array.isArray(t)?dd(t,n):n(t)}const FS=le({provide:String,useValue:le});function fd(e){return null!==e&&"object"==typeof e&&FS in e}function Ir(e){return"function"==typeof e}const hd=new N("Set Injector scope."),Ba={},VS={};let pd;function $a(){return void 0===pd&&(pd=new Ha),pd}class At{}class Mr extends At{get destroyed(){return this._destroyed}constructor(n,t,r,o){super(),this.parent=t,this.source=r,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,md(n,s=>this.processProvider(s)),this.records.set(ov,yo(void 0,this)),o.has("environment")&&this.records.set(At,yo(void 0,this));const i=this.records.get(hd);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(cd,te,X.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const t of this._ngOnDestroyHooks)t.ngOnDestroy();const n=this._onDestroyHooks;this._onDestroyHooks=[];for(const t of n)t()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(n){return this.assertNotDestroyed(),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){this.assertNotDestroyed();const t=Yn(this),r=mt(void 0);try{return n()}finally{Yn(t),mt(r)}}get(n,t=Si,r=X.Default){if(this.assertNotDestroyed(),n.hasOwnProperty(qg))return n[qg](this);r=ya(r);const i=Yn(this),s=mt(void 0);try{if(!(r&X.SkipSelf)){let l=this.records.get(n);if(void 0===l){const c=function $S(e){return"function"==typeof e||"object"==typeof e&&e instanceof N}(n)&&pa(n);l=c&&this.injectableDefInScope(c)?yo(gd(n),Ba):null,this.records.set(n,l)}if(null!=l)return this.hydrate(n,l)}return(r&X.Self?$a():this.parent).get(n,t=r&X.Optional&&t===Si?null:t)}catch(a){if("NullInjectorError"===a.name){if((a[va]=a[va]||[]).unshift(je(n)),i)throw a;return function l0(e,n,t,r){const o=e[va];throw n[Jg]&&o.unshift(n[Jg]),e.message=function c0(e,n,t,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=je(n);if(Array.isArray(n))o=n.map(je).join(" -> ");else if("object"==typeof n){let i=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):je(a)))}o=`{${i.join(", ")}}`}return`${t}${r?"("+r+")":""}[${o}]: ${e.replace(n0,"\n ")}`}("\n"+e.message,o,t,r),e.ngTokenPath=o,e[va]=null,e}(a,n,"R3InjectorError",this.source)}throw a}finally{mt(s),Yn(i)}}resolveInjectorInitializers(){const n=Yn(this),t=mt(void 0);try{const o=this.get(vo,te,X.Self);for(const i of o)i()}finally{Yn(n),mt(t)}}toString(){const n=[],t=this.records;for(const r of t.keys())n.push(je(r));return`R3Injector[${n.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new M(205,!1)}processProvider(n){let t=Ir(n=j(n))?n:j(n&&n.provide);const r=function HS(e){return fd(e)?yo(void 0,e.useValue):yo(uv(e),Ba)}(n);if(Ir(n)||!0!==n.multi)this.records.get(t);else{let o=this.records.get(t);o||(o=yo(void 0,Ba,!0),o.factory=()=>Ru(o.multi),this.records.set(t,o)),t=n,o.multi.push(n)}this.records.set(t,r)}hydrate(n,t){return t.value===Ba&&(t.value=VS,t.value=t.factory()),"object"==typeof t.value&&t.value&&function BS(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(t.value)&&this._ngOnDestroyHooks.add(t.value),t.value}injectableDefInScope(n){if(!n.providedIn)return!1;const t=j(n.providedIn);return"string"==typeof t?"any"===t||this.scopes.has(t):this.injectorDefTypes.has(t)}removeOnDestroy(n){const t=this._onDestroyHooks.indexOf(n);-1!==t&&this._onDestroyHooks.splice(t,1)}}function gd(e){const n=pa(e),t=null!==n?n.factory:wr(e);if(null!==t)return t;if(e instanceof N)throw new M(204,!1);if(e instanceof Function)return function jS(e){const n=e.length;if(n>0)throw function Ui(e,n){const t=[];for(let r=0;rt.factory(e):()=>new e}(e);throw new M(204,!1)}function uv(e,n,t){let r;if(Ir(e)){const o=j(e);return wr(o)||gd(o)}if(fd(e))r=()=>j(e.useValue);else if(function cv(e){return!(!e||!e.useFactory)}(e))r=()=>e.useFactory(...Ru(e.deps||[]));else if(function lv(e){return!(!e||!e.useExisting)}(e))r=()=>k(j(e.useExisting));else{const o=j(e&&(e.useClass||e.provide));if(!function US(e){return!!e.deps}(e))return wr(o)||gd(o);r=()=>new o(...Ru(e.deps))}return r}function yo(e,n,t=!1){return{factory:e,value:n,multi:t?[]:void 0}}function md(e,n){for(const t of e)Array.isArray(t)?md(t,n):t&&Du(t)?md(t.\u0275providers,n):n(t)}function pv(e,n=null,t=null,r){const o=gv(e,n,t,r);return o.resolveInjectorInitializers(),o}function gv(e,n=null,t=null,r,o=new Set){const i=[t||te,iv(e)];return r=r||("object"==typeof e?void 0:je(e)),new Mr(i,n||$a(),r||null,o)}let _d,_t=(()=>{class e{static#e=this.THROW_IF_NOT_FOUND=Si;static#t=this.NULL=new Ha;static create(t,r){if(Array.isArray(t))return pv({name:""},r,t,"");{const o=t.name??"";return pv({name:o},t.parent,t.providers,o)}}static#n=this.\u0275prov=O({token:e,providedIn:"any",factory:()=>k(ov)});static#r=this.__NG_ELEMENT_ID__=-1}return e})();const za=new N("AppId",{providedIn:"root",factory:()=>KS}),KS="ng",vv=new N("Platform Initializer"),Sr=new N("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),yv=new N("CSP nonce",{providedIn:"root",factory:()=>function er(){if(void 0!==_d)return _d;if(typeof document<"u")return document;throw new M(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});function xt(e){return e instanceof Function?e():e}function Ya(e){return 128==(128&e.flags)}var rr=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(rr||{});const cT=/^>|^->||--!>|)/g,dT="\u200b$1\u200b";const Ed=new Map;let fT=0;const Md="__ngContext__";function nt(e,n){Ke(n)?(e[Md]=n[Ri],function pT(e){Ed.set(e[Ri],e)}(n)):e[Md]=n}let Sd;function Td(e,n){return Sd(e,n)}function Wi(e){const n=e[we];return Ye(n)?n[we]:n}function Fv(e){return Vv(e[xi])}function Lv(e){return Vv(e[Yt])}function Vv(e){for(;null!==e&&!Ye(e);)e=e[Yt];return e}function Co(e,n,t,r,o){if(null!=r){let i,s=!1;Ye(r)?i=r:Ke(r)&&(s=!0,r=r[Ae]);const a=me(r);0===e&&null!==t?null==o?Bv(n,t,a):Tr(n,t,a,o||null,!0):1===e&&null!==t?Tr(n,t,a,o||null,!0):2===e?function nl(e,n,t){const r=el(e,n);r&&function OT(e,n,t,r){e.removeChild(n,t,r)}(e,r,n,t)}(n,a,s):3===e&&n.destroyNode(a),null!=i&&function FT(e,n,t,r,o){const i=t[fn];i!==me(t)&&Co(n,e,r,i,o);for(let a=Pe;an.replace(uT,dT))}(n))}function Ja(e,n,t){return e.createElement(n,t)}function Hv(e,n){const t=e[no],r=t.indexOf(n);t.splice(r,1)}function Zi(e,n){if(e.length<=Pe)return;const t=Pe+n,r=e[t];if(r){const o=r[Ni];null!==o&&o!==e&&Hv(o,r),n>0&&(e[t-1][Yt]=r[Yt]);const i=ka(e,Pe+n);!function IT(e,n){Qi(e,n,n[z],2,null,null),n[Ae]=null,n[tt]=null}(r[T],r);const s=i[dn];null!==s&&s.detachView(i[T]),r[we]=null,r[Yt]=null,r[H]&=-129}return r}function Ka(e,n){if(!(256&n[H])){const t=n[z];n[Cr]&&function dg(e){if(Zr(e),bi(e))for(let n=0;n=0?r[s]():r[-s].unsubscribe(),i+=2}else t[i].call(r[t[i+1]]);null!==r&&(n[Jr]=null);const o=n[Xn];if(null!==o){n[Xn]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[r.directiveStart+o];if(i===Wt.None||i===Wt.Emulated)return null}return st(r,t)}}(e,n.parent,t)}function Tr(e,n,t,r,o){e.insertBefore(n,t,r,o)}function Bv(e,n,t){e.appendChild(n,t)}function $v(e,n,t,r,o){null!==r?Tr(e,n,t,r,o):Bv(e,n,t)}function el(e,n){return e.parentNode(n)}let Rd,ol,qv=function zv(e,n,t){return 40&e.type?st(e,t):null};function tl(e,n,t,r){const o=Nd(e,r,n),i=n[z],a=function Gv(e,n,t){return qv(e,n,t)}(r.parent||n[tt],r,n);if(null!=o)if(Array.isArray(t))for(let l=0;le,createScript:e=>e,createScriptURL:e=>e})}catch{}return ol}()?.createScriptURL(e)||e}class ny{constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${Gg})`}}function or(e){return e instanceof ny?e.changingThisBreaksApplicationSecurity:e}function Xi(e,n){const t=function WT(e){return e instanceof ny&&e.getTypeName()||null}(e);if(null!=t&&t!==n){if("ResourceURL"===t&&"URL"===n)return!0;throw new Error(`Required a safe ${n}, got a ${t} (see ${Gg})`)}return t===n}const XT=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;var wo=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}(wo||{});function bo(e){const n=Ki();return n?n.sanitize(wo.URL,e)||"":Xi(e,"URL")?or(e):function Ld(e){return(e=String(e)).match(XT)?e:"unsafe:"+e}(G(e))}function cy(e){const n=Ki();if(n)return ty(n.sanitize(wo.RESOURCE_URL,e)||"");if(Xi(e,"ResourceURL"))return ty(or(e));throw new M(904,!1)}function Ki(){const e=b();return e&&e[Kr].sanitizer}let dy=(e,n,t)=>null;function Zd(e,n,t=!1){return dy(e,n,t)}class yA{}class py{}class CA{resolveComponentFactory(n){throw function _A(e){const n=Error(`No component factory found for ${je(e)}.`);return n.ngComponent=e,n}(n)}}let dl=(()=>{class e{static#e=this.NULL=new CA}return e})();function DA(){return Mo(ue(),b())}function Mo(e,n){return new Nt(st(e,n))}let Nt=(()=>{class e{constructor(t){this.nativeElement=t}static#e=this.__NG_ELEMENT_ID__=DA}return e})();function wA(e){return e instanceof Nt?e.nativeElement:e}class my{}let Fn=(()=>{class e{constructor(){this.destroyNode=null}static#e=this.__NG_ELEMENT_ID__=()=>function bA(){const e=b(),t=St(ue().index,e);return(Ke(t)?t:e)[z]}()}return e})(),EA=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>null})}return e})();class ns{constructor(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}const IA=new ns("17.0.1"),Xd={};function fl(e){return!!Jd(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function Jd(e){return null!==e&&("function"==typeof e||"object"==typeof e)}class yy{constructor(){}supports(n){return fl(n)}create(n){return new xA(n)}}const AA=(e,n)=>n;class xA{constructor(n){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=n||AA}forEachItem(n){let t;for(t=this._itHead;null!==t;t=t._next)n(t)}forEachOperation(n){let t=this._itHead,r=this._removalsHead,o=0,i=null;for(;t||r;){const s=!r||t&&t.currentIndex{s=this._trackByFn(o,a),null!==t&&Object.is(t.trackById,s)?(r&&(t=this._verifyReinsertion(t,a,s,o)),Object.is(t.item,a)||this._addIdentityChange(t,a)):(t=this._mismatch(t,a,s,o),r=!0),t=t._next,o++}),this.length=o;return this._truncate(t),this.collection=n,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let n;for(n=this._previousItHead=this._itHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;null!==n;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;null!==n;n=n._nextMoved)n.previousIndex=n.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(n,t,r,o){let i;return null===n?i=this._itTail:(i=n._prev,this._remove(n)),null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._reinsertAfter(n,i,o)):null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(r,o))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._moveAfter(n,i,o)):n=this._addAfter(new NA(t,r),i,o),n}_verifyReinsertion(n,t,r,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null);return null!==i?n=this._reinsertAfter(i,n._prev,o):n.currentIndex!=o&&(n.currentIndex=o,this._addToMoves(n,o)),n}_truncate(n){for(;null!==n;){const t=n._next;this._addToRemovals(this._unlink(n)),n=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(n,t,r){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);const o=n._prevRemoved,i=n._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(n,t,r),this._addToMoves(n,r),n}_moveAfter(n,t,r){return this._unlink(n),this._insertAfter(n,t,r),this._addToMoves(n,r),n}_addAfter(n,t,r){return this._insertAfter(n,t,r),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n}_insertAfter(n,t,r){const o=null===t?this._itHead:t._next;return n._next=o,n._prev=t,null===o?this._itTail=n:o._prev=n,null===t?this._itHead=n:t._next=n,null===this._linkedRecords&&(this._linkedRecords=new _y),this._linkedRecords.put(n),n.currentIndex=r,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);const t=n._prev,r=n._next;return null===t?this._itHead=r:t._next=r,null===r?this._itTail=t:r._prev=t,n}_addToMoves(n,t){return n.previousIndex===t||(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n),n}_addToRemovals(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new _y),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n}_addIdentityChange(n,t){return n.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n}}class NA{constructor(n,t){this.item=n,this.trackById=t,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}}class RA{constructor(){this._head=null,this._tail=null}add(n){null===this._head?(this._head=this._tail=n,n._nextDup=null,n._prevDup=null):(this._tail._nextDup=n,n._prevDup=this._tail,n._nextDup=null,this._tail=n)}get(n,t){let r;for(r=this._head;null!==r;r=r._nextDup)if((null===t||t<=r.currentIndex)&&Object.is(r.trackById,n))return r;return null}remove(n){const t=n._prevDup,r=n._nextDup;return null===t?this._head=r:t._nextDup=r,null===r?this._tail=t:r._prevDup=t,null===this._head}}class _y{constructor(){this.map=new Map}put(n){const t=n.trackById;let r=this.map.get(t);r||(r=new RA,this.map.set(t,r)),r.add(n)}get(n,t){const o=this.map.get(n);return o?o.get(n,t):null}remove(n){const t=n.trackById;return this.map.get(t).remove(n)&&this.map.delete(t),n}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function Cy(e,n,t){const r=e.previousIndex;if(null===r)return r;let o=0;return t&&r{if(t&&t.key===o)this._maybeAddToChanges(t,r),this._appendAfter=t,t=t._next;else{const i=this._getOrCreateRecordForKey(o,r);t=this._insertBeforeOrAppend(t,i)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let r=t;null!==r;r=r._nextRemoved)r===this._mapHead&&(this._mapHead=null),this._records.delete(r.key),r._nextRemoved=r._next,r.previousValue=r.currentValue,r.currentValue=null,r._prev=null,r._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,t){if(n){const r=n._prev;return t._next=n,t._prev=r,n._prev=t,r&&(r._next=t),n===this._mapHead&&(this._mapHead=t),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(n,t){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,t);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const r=new PA(n);return this._records.set(n,r),r.currentValue=t,this._addToAdditions(r),r}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;null!==n;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;null!=n;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,t){Object.is(t,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=t,this._addToChanges(n))}_addToAdditions(n){null===this._additionsHead?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){null===this._changesHead?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,t){n instanceof Map?n.forEach(t):Object.keys(n).forEach(r=>t(n[r],r))}}class PA{constructor(n){this.key=n,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function wy(){return new hl([new yy])}let hl=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:wy});constructor(t){this.factories=t}static create(t,r){if(null!=r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||wy()),deps:[[e,new Va,new La]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(null!=r)return r;throw new M(901,!1)}}return e})();function by(){return new rs([new Dy])}let rs=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:by});constructor(t){this.factories=t}static create(t,r){if(r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||by()),deps:[[e,new Va,new La]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(r)return r;throw new M(901,!1)}}return e})();function os(e,n,t,r,o=!1){for(;null!==t;){const i=n[t.index];null!==i&&r.push(me(i)),Ye(i)&&Ey(i,r);const s=t.type;if(8&s)os(e,n,t.child,r);else if(32&s){const a=Td(t,n);let l;for(;l=a();)r.push(l)}else if(16&s){const a=Zv(n,t);if(Array.isArray(a))r.push(...a);else{const l=Wi(n[Me]);os(l[T],l,a,r,!0)}}t=o?t.projectionNext:t.next}return r}function Ey(e,n){for(let t=Pe;t!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{},consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{Ea(e.lView)},consumerOnSignalRead(){this.lView[Cr]=this}};function Kd(e){return e.ngOriginalError}class Ln{constructor(){this._console=console}handleError(n){const t=this._findOriginalError(n);this._console.error("ERROR",n),t&&this._console.error("ORIGINAL ERROR",t)}_findOriginalError(n){let t=n&&Kd(n);for(;t&&Kd(t);)t=Kd(t);return t||null}}const Ty=new N("",{providedIn:"root",factory:()=>!1}),W={};function C(e){Ry(J(),b(),lt()+e,!1)}function Ry(e,n,t,r){if(!r)if(3==(3&n[H])){const i=e.preOrderCheckHooks;null!==i&&Ta(n,i,t)}else{const i=e.preOrderHooks;null!==i&&Aa(n,i,0,t)}br(t)}function S(e,n=X.Default){const t=b();return null===t?k(e,n):qm(ue(),t,j(e),n)}function gl(e,n,t,r,o,i,s,a,l,c,u){const d=n.blueprint.slice();return d[Ae]=o,d[H]=140|r,(null!==c||e&&2048&e[H])&&(d[H]|=2048),wm(d),d[we]=d[eo]=e,d[ge]=t,d[Kr]=s||e&&e[Kr],d[z]=a||e&&e[z],d[it]=l||e&&e[it]||null,d[tt]=i,d[Ri]=function hT(){return fT++}(),d[un]=u,d[fm]=c,d[Me]=2==n.type?e[Me]:d,d}function So(e,n,t,r,o){let i=e.data[n];if(null===i)i=function ef(e,n,t,r,o){const i=Sm(),s=Gu(),l=e.data[n]=function JA(e,n,t,r,o,i){let s=n?n.injectorIndex:-1,a=0;return function oo(){return null!==B.skipHydrationRootTNode}()&&(a|=128),{type:t,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:n,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,s?i:i&&i.parent,t,n,r,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,n,t,r,o),function q0(){return B.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=t,i.value=r,i.attrs=o;const s=function Fi(){const e=B.lFrame,n=e.currentTNode;return e.isParent?n:n.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return gn(i,!0),i}function is(e,n,t,r){if(0===t)return-1;const o=n.length;for(let i=0;iU&&Ry(e,n,U,!1),hn(s?2:0,o),t(r,o)}finally{br(i),hn(s?3:1,o)}}function tf(e,n,t){if(Fu(n)){const r=Se(null);try{const i=n.directiveEnd;for(let s=n.directiveStart;snull;function Ly(e,n,t,r){for(let o in e)if(e.hasOwnProperty(o)){t=null===t?{}:t;const i=e[o];null===r?Vy(t,n,o,i):r.hasOwnProperty(o)&&Vy(t,n,r[o],i)}return t}function Vy(e,n,t,r){e.hasOwnProperty(t)?e[t].push(n,r):e[t]=[n,r]}function Rt(e,n,t,r,o,i,s,a){const l=st(n,t);let u,c=n.inputs;!a&&null!=c&&(u=c[r])?(df(e,t,u,r,o),Dr(n)&&function tx(e,n){const t=St(n,e);16&t[H]||(t[H]|=64)}(t,n.index)):3&n.type&&(r=function ex(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(r),o=null!=s?s(o,n.value||"",r):o,i.setProperty(l,r,o))}function af(e,n,t,r){if(Mm()){const o=null===r?null:{"":-1},i=function ax(e,n){const t=e.directiveRegistry;let r=null,o=null;if(t)for(let i=0;i0;){const t=e[--n];if("number"==typeof t&&t<0)return t}return 0})(s)!=a&&s.push(a),s.push(t,r,i)}}(e,n,r,is(e,t,o.hostVars,W),o)}function yn(e,n,t,r,o,i){const s=st(e,n);!function cf(e,n,t,r,o,i,s){if(null==i)e.removeAttribute(n,o,t);else{const a=null==s?G(i):s(i,r||"",o);e.setAttribute(n,o,a,t)}}(n[z],s,i,e.value,t,r,o)}function hx(e,n,t,r,o,i){const s=i[n];if(null!==s)for(let a=0;ae.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}(a,s),function VA(e){e.lView[Cr]!==e&&(e.lView=null,Iy.push(e))}(a)),Qu()}}function Zy(e,n){for(let t=Fv(e);null!==t;t=Lv(t)){t[ku]=!1;for(let r=Pe;r-1&&(Zi(n,r),ka(t,r))}this._attachedToViewContainer=!1}Ka(this._lView[T],this._lView)}onDestroy(n){Ia(this._lView,n)}markForCheck(){ss(this._cdRefInjectingView||this._lView)}detach(){this._lView[H]&=-129}reattach(){Em(this._lView),this._lView[H]|=128}detectChanges(){!function ff(e,n,t,r=!0){const o=n[Kr],i=o.rendererFactory,s=o.afterRenderEventManager;i.begin?.(),s?.begin();try{Wy(e,n,e.template,t),function mx(e){let n=0;for(;9216&e[H]||e[Cr]?.dirty;){if(100===n)throw new M(103,!1);n++,Qy(e,1)}}(n)}catch(l){throw r&&vl(n,l),l}finally{i.end?.(),o.inlineEffectRunner?.flush(),s?.end()}}(this._lView[T],this._lView,this.context,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new M(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function ST(e,n){Qi(e,n,n[z],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new M(902,!1);this._appRef=n}}let ls=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Dx}return e})();function Dx(e){return function wx(e,n,t){if(Dr(e)&&!t){const r=St(e.index,n);return new as(r,r)}return 47&e.type?new as(n[Me],n):null}(ue(),b(),16==(16&e))}let yl=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Mx;static#t=this.__NG_ENV_ID__=t=>t}return e})();class Ix extends yl{constructor(n){super(),this._lView=n}onDestroy(n){return Ia(this._lView,n),()=>function $u(e,n){if(null===e[Xn])return;const t=e[Xn].indexOf(n);-1!==t&&e[Xn].splice(t,1)}(this._lView,n)}}function Mx(){return new Ix(b())}function Ar(e,n){return performance?.mark?.(e,n)}function hf(e){return n=>{setTimeout(e,void 0,n)}}const xe=class Ox extends zt{constructor(n=!1){super(),this.__isAsync=n}emit(n){super.next(n)}subscribe(n,t,r){let o=n,i=t||(()=>null),s=r;if(n&&"object"==typeof n){const l=n;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=hf(i),o&&(o=hf(o)),s&&(s=hf(s)));const a=super.subscribe({next:o,error:i,complete:s});return n instanceof Et&&n.add(a),a}};function Jy(...e){}class ae{constructor({enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:t=!1,shouldCoalesceRunChangeDetection:r=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new xe(!1),this.onMicrotaskEmpty=new xe(!1),this.onStable=new xe(!1),this.onError=new xe(!1),typeof Zone>"u")throw new M(908,!1);Zone.assertZonePatched();const o=this;o._nesting=0,o._outer=o._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(o._inner=o._inner.fork(new Zone.TaskTrackingZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(o._inner=o._inner.fork(Zone.longStackTraceZoneSpec)),o.shouldCoalesceEventChangeDetection=!r&&t,o.shouldCoalesceRunChangeDetection=r,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function Px(){const e="function"==typeof pe.requestAnimationFrame;let n=pe[e?"requestAnimationFrame":"setTimeout"],t=pe[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&n&&t){const r=n[Zone.__symbol__("OriginalDelegate")];r&&(n=r);const o=t[Zone.__symbol__("OriginalDelegate")];o&&(t=o)}return{nativeRequestAnimationFrame:n,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function Lx(e){const n=()=>{!function Fx(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(pe,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,gf(e),e.isCheckStableRunning=!0,pf(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),gf(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,r,o,i,s,a)=>{if(function jx(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return t.invokeTask(o,i,s,a);try{return Ky(e),t.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&n(),e_(e)}},onInvoke:(t,r,o,i,s,a,l)=>{try{return Ky(e),t.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&n(),e_(e)}},onHasTask:(t,r,o,i)=>{t.hasTask(o,i),r===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,gf(e),pf(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,r,o,i)=>(t.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ae.isInAngularZone())throw new M(909,!1)}static assertNotInAngularZone(){if(ae.isInAngularZone())throw new M(909,!1)}run(n,t,r){return this._inner.run(n,t,r)}runTask(n,t,r,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,n,kx,Jy,Jy);try{return i.runTask(s,t,r)}finally{i.cancelTask(s)}}runGuarded(n,t,r){return this._inner.runGuarded(n,t,r)}runOutsideAngular(n){return this._outer.run(n)}}const kx={};function pf(e){if(0==e._nesting&&!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 gf(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function Ky(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function e_(e){e._nesting--,pf(e)}const t_=new N("",{providedIn:"root",factory:n_});function n_(){const e=A(ae);let n=!0;return function U1(...e){const n=Ei(e),t=function P1(e,n){return"number"==typeof yu(e)?e.pop():n}(e,1/0),r=e;return r.length?1===r.length?qt(r[0]):Yr(t)(Oe(r,n)):an}(new Te(o=>{n=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(n),o.complete()})}),new Te(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{!n&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(n=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ae.assertInAngularZone(),n&&(n=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe($g()))}var xr=function(e){return e[e.EarlyRead=0]="EarlyRead",e[e.Write=1]="Write",e[e.MixedReadWrite=2]="MixedReadWrite",e[e.Read=3]="Read",e}(xr||{});const r_={destroy(){}};function i_(e,n){!n&&function vd(e){if(!Yg()&&!function o0(){return Xr}())throw new M(-203,!1)}();const t=n?.injector??A(_t);if(!function tr(e){return"browser"===(e??A(_t)).get(Sr)}(t))return r_;Ar("mark_use_counter",{detail:{feature:"NgAfterNextRender"}});const r=t.get(_l),o=r.handler??=new a_,i=n?.phase??xr.MixedReadWrite,s=()=>{o.unregister(l),a()},a=t.get(yl).onDestroy(s),l=new s_(t,i,()=>{s(),e()});return o.register(l),{destroy:s}}class s_{constructor(n,t,r){this.phase=t,this.callbackFn=r,this.zone=n.get(ae),this.errorHandler=n.get(Ln,null,{optional:!0})}invoke(){try{this.zone.runOutsideAngular(this.callbackFn)}catch(n){this.errorHandler?.handleError(n)}}}class a_{constructor(){this.executingCallbacks=!1,this.buckets={[xr.EarlyRead]:new Set,[xr.Write]:new Set,[xr.MixedReadWrite]:new Set,[xr.Read]:new Set},this.deferredCallbacks=new Set}validateBegin(){if(this.executingCallbacks)throw new M(102,!1)}register(n){(this.executingCallbacks?this.deferredCallbacks:this.buckets[n.phase]).add(n)}unregister(n){this.buckets[n.phase].delete(n),this.deferredCallbacks.delete(n)}execute(){this.executingCallbacks=!0;for(const n of Object.values(this.buckets))for(const t of n)t.invoke();this.executingCallbacks=!1;for(const n of this.deferredCallbacks)this.buckets[n.phase].add(n);this.deferredCallbacks.clear()}destroy(){for(const n of Object.values(this.buckets))n.clear();this.deferredCallbacks.clear()}}let _l=(()=>{class e{constructor(){this.renderDepth=0,this.handler=null,this.internalCallbacks=[]}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){if(this.renderDepth--,0===this.renderDepth){for(const t of this.internalCallbacks)t();this.internalCallbacks.length=0,this.handler?.execute()}}ngOnDestroy(){this.handler?.destroy(),this.handler=null,this.internalCallbacks.length=0}static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new e})}return e})();function Ux(e,n){const t=St(n,e),r=t[T];!function Bx(e,n){for(let t=n.length;t0&&Xv(e,t,i.join(" "))}}(d,Ie,m,r),void 0!==t&&function Jx(e,n,t){const r=e.projection=[];for(let o=0;o=0;r--){const o=e[r];o.hostVars=n+=o.hostVars,o.hostAttrs=Ai(o.hostAttrs,t=Ai(t,o.hostAttrs))}}(r)}function Dl(e){return e===cn?{}:e===te?[]:e}function tN(e,n){const t=e.viewQuery;e.viewQuery=t?(r,o)=>{n(r,o),t(r,o)}:n}function nN(e,n){const t=e.contentQueries;e.contentQueries=t?(r,o,i)=>{n(r,o,i),t(r,o,i)}:n}function rN(e,n){const t=e.hostBindings;e.hostBindings=t?(r,o)=>{n(r,o),t(r,o)}:n}function p_(e){const n=e.inputConfig,t={};for(const r in n)if(n.hasOwnProperty(r)){const o=n[r];Array.isArray(o)&&o[2]&&(t[r]=o[2])}e.inputTransforms=t}function _n(e,n,t){return e[n]=t}function He(e,n,t){return!Object.is(e[n],t)&&(e[n]=t,!0)}function Xt(e,n,t,r){const o=b();return He(o,mn(),n)&&(J(),yn(De(),o,e,n,t,r)),Xt}function Ao(e,n,t,r){return He(e,mn(),t)?n+G(t)+r:W}function bl(e,n){return e<<17|n<<2}function ir(e){return e>>17&32767}function vf(e){return 2|e}function Rr(e){return(131068&e)>>2}function yf(e,n){return-131069&e|n<<2}function _f(e){return 1|e}function E_(e,n,t,r,o){const i=e[t+1],s=null===n;let a=r?ir(i):Rr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];pN(e[a],n)&&(l=!0,e[a+1]=r?_f(u):vf(u)),a=r?ir(u):Rr(u)}l&&(e[t+1]=r?vf(i):_f(i))}function pN(e,n){return null===e||null==n||(Array.isArray(e)?e[1]:e)===n||!(!Array.isArray(e)||"string"!=typeof n)&&go(e,n)>=0}function E(e,n,t){const r=b();return He(r,mn(),n)&&Rt(J(),De(),r,e,n,r[z],t,!1),E}function Cf(e,n,t,r,o){const s=o?"class":"style";df(e,t,n.inputs[s],s,r)}function El(e,n){return function Jt(e,n,t,r){const o=b(),i=J(),s=function Pn(e){const n=B.lFrame,t=n.bindingIndex;return n.bindingIndex=n.bindingIndex+e,t}(2);i.firstUpdatePass&&function O_(e,n,t,r){const o=e.data;if(null===o[t+1]){const i=o[lt()],s=function R_(e,n){return n>=e.expandoStartIndex}(e,t);(function L_(e,n){return 0!=(e.flags&(n?8:16))})(i,r)&&null===n&&!s&&(n=!1),n=function bN(e,n,t,r){const o=function Wu(e){const n=B.lFrame.currentDirectiveIndex;return-1===n?null:e[n]}(e);let i=r?n.residualClasses:n.residualStyles;if(null===o)0===(r?n.classBindings:n.styleBindings)&&(t=ds(t=Df(null,e,n,t,r),n.attrs,r),i=null);else{const s=n.directiveStylingLast;if(-1===s||e[s]!==o)if(t=Df(o,e,n,t,r),null===i){let l=function EN(e,n,t){const r=t?n.classBindings:n.styleBindings;if(0!==Rr(r))return e[ir(r)]}(e,n,r);void 0!==l&&Array.isArray(l)&&(l=Df(null,e,n,l[1],r),l=ds(l,n.attrs,r),function IN(e,n,t,r){e[ir(t?n.classBindings:n.styleBindings)]=r}(e,n,r,l))}else i=function MN(e,n,t){let r;const o=n.directiveEnd;for(let i=1+n.directiveStylingLast;i0)&&(c=!0)):u=t,o)if(0!==l){const g=ir(e[a+1]);e[r+1]=bl(g,a),0!==g&&(e[g+1]=yf(e[g+1],r)),e[a+1]=function uN(e,n){return 131071&e|n<<17}(e[a+1],r)}else e[r+1]=bl(a,0),0!==a&&(e[a+1]=yf(e[a+1],r)),a=r;else e[r+1]=bl(l,0),0===a?a=r:e[l+1]=yf(e[l+1],r),l=r;c&&(e[r+1]=vf(e[r+1])),E_(e,u,r,!0),E_(e,u,r,!1),function hN(e,n,t,r,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof n&&go(i,n)>=0&&(t[r+1]=_f(t[r+1]))}(n,u,e,r,i),s=bl(a,l),i?n.classBindings=s:n.styleBindings=s}(o,i,n,t,s,r)}}(i,e,s,r),n!==W&&He(o,s,n)&&function k_(e,n,t,r,o,i,s,a){if(!(3&n.type))return;const l=e.data,c=l[a+1],u=function dN(e){return 1==(1&e)}(c)?F_(l,n,t,o,Rr(c),s):void 0;Il(u)||(Il(i)||function cN(e){return 2==(2&e)}(c)&&(i=F_(l,null,t,o,a,s)),function LT(e,n,t,r,o){if(n)o?e.addClass(t,r):e.removeClass(t,r);else{let i=-1===r.indexOf("-")?void 0:rr.DashCase;null==o?e.removeStyle(t,r,i):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),i|=rr.Important),e.setStyle(t,r,o,i))}}(r,s,Pi(lt(),t),o,i))}(i,i.data[lt()],o,o[z],e,o[s+1]=function xN(e,n){return null==e||""===e||("string"==typeof n?e+=n:"object"==typeof e&&(e=je(or(e)))),e}(n,t),r,s)}(e,n,null,!0),El}function Df(e,n,t,r,o){let i=null;const s=t.directiveEnd;let a=t.directiveStylingLast;for(-1===a?a=t.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let g=t[o+1];g===W&&(g=d?te:void 0);let m=d?sd(g,r):u===r?g:void 0;if(c&&!Il(m)&&(m=sd(l,r)),Il(m)&&(a=m,s))return a;const v=e[o+1];o=s?ir(v):Rr(v)}if(null!==n){let l=i?n.residualClasses:n.residualStyles;null!=l&&(a=sd(l,r))}return a}function Il(e){return void 0!==e}let $_=(e,n)=>null;function Vo(e,n){return $_(e,n)}function gs(e,n,t,r){const o=n.tView,a=gl(e,o,t,4096&e[H]?4096:16,null,n,null,null,null,r?.injector??null,r?.dehydratedView??null);a[Ni]=e[n.index];const c=e[dn];return null!==c&&(a[dn]=c.createEmbeddedView(o)),mf(o,a,t),a}function jo(e,n){return!n||Ya(e)}function ms(e,n,t,r=!0){const o=n[T];if(function AT(e,n,t,r){const o=Pe+r,i=t.length;r>0&&(t[o-1][Yt]=n),r{class e{static#e=this.__NG_ELEMENT_ID__=uR}return e})();function uR(){return Q_(ue(),b())}const dR=en,Z_=class extends dR{constructor(n,t,r){super(),this._lContainer=n,this._hostTNode=t,this._hostLView=r}get element(){return Mo(this._hostTNode,this._hostLView)}get injector(){return new ze(this._hostTNode,this._hostLView)}get parentInjector(){const n=Ra(this._hostTNode,this._hostLView);if(Ku(n)){const t=ji(n,this._hostLView),r=Vi(n);return new ze(t[T].data[r+8],t)}return new ze(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const t=Y_(this._lContainer);return null!==t&&t[n]||null}get length(){return this._lContainer.length-Pe}createEmbeddedView(n,t,r){let o,i;"number"==typeof r?o=r:null!=r&&(o=r.index,i=r.injector);const s=Vo(this._lContainer,n.ssrId),a=n.createEmbeddedViewImpl(t||{},i,s);return this.insertImpl(a,o,jo(this._hostTNode,s)),a}createComponent(n,t,r,o,i){const s=n&&!function Hi(e){return"function"==typeof e}(n);let a;if(s)a=t;else{const v=t||{};a=v.index,r=v.injector,o=v.projectableNodes,i=v.environmentInjector||v.ngModuleRef}const l=s?n:new cs(Q(n)),c=r||this.parentInjector;if(!i&&null==l.ngModule){const _=(s?c:this.parentInjector).get(At,null);_&&(i=_)}const u=Q(l.componentType??{}),d=Vo(this._lContainer,u?.id??null),m=l.create(c,o,d?.firstChild??null,i);return this.insertImpl(m.hostView,a,jo(this._hostTNode,d)),m}insert(n,t){return this.insertImpl(n,t,!0)}insertImpl(n,t,r){const o=n._lView;if(function k0(e){return Ye(e[we])}(o)){const a=this.indexOf(n);if(-1!==a)this.detach(a);else{const l=o[we],c=new Z_(l,l[tt],l[we]);c.detach(c.indexOf(n))}}const i=this._adjustIndex(t),s=this._lContainer;return ms(s,o,i,r),n.attachToViewContainerRef(),Jm(xf(s),i,n),n}move(n,t){return this.insert(n,t)}indexOf(n){const t=Y_(this._lContainer);return null!==t?t.indexOf(n):-1}remove(n){const t=this._adjustIndex(n,-1),r=Zi(this._lContainer,t);r&&(ka(xf(this._lContainer),t),Ka(r[T],r))}detach(n){const t=this._adjustIndex(n,-1),r=Zi(this._lContainer,t);return r&&null!=ka(xf(this._lContainer),t)?new as(r):null}_adjustIndex(n,t=0){return n??this.length+t}};function Y_(e){return e[8]}function xf(e){return e[8]||(e[8]=[])}function Q_(e,n){let t;const r=n[e.index];return Ye(r)?t=r:(t=By(r,n,null,e),n[e.index]=t,ml(n,t)),X_(t,n,e,r),new Z_(t,e,n)}let X_=function K_(e,n,t,r){if(e[fn])return;let o;o=8&t.type?me(r):function fR(e,n){const t=e[z],r=t.createComment(""),o=st(n,e);return Tr(t,el(t,o),r,function PT(e,n){return e.nextSibling(n)}(t,o),!1),r}(n,t),e[fn]=o},Nf=(e,n,t)=>!1;function q(e,n,t,r,o,i,s,a){const l=b(),c=J(),u=e+U,d=c.firstCreatePass?function mR(e,n,t,r,o,i,s,a,l){const c=n.consts,u=So(n,e,4,s||null,pn(c,a));af(n,t,u,pn(c,l)),Sa(n,u);const d=u.tView=sf(2,u,r,o,i,n.directiveRegistry,n.pipeRegistry,null,n.schemas,c,null);return null!==n.queries&&(n.queries.template(n,u),d.queries=n.queries.embeddedTView(u)),u}(u,c,l,n,t,r,o,i,s):c.data[u];gn(d,!1);const g=eC(c,l,d,e);Ma()&&tl(c,l,g,d),nt(g,l);const m=By(g,l,g,d);return l[u]=m,ml(l,m),function J_(e,n,t){return Nf(e,n,t)}(m,d,l),ba(d)&&nf(c,l,d),null!=s&&rf(l,d,a),q}let eC=function tC(e,n,t,r){return Jn(!0),n[z].createComment("")};const nC={detail:{feature:"NgControlFlow"}};function Ho(e,n,t){Ar("mark_use_counter",nC);const r=b(),o=mn(),i=function Rf(e,n){return e[n]}(r,U+e);if(He(r,o,n)){const a=Se(null);try{if(function Af(e,n){const t=Zi(e,n);return void 0!==t&&Ka(t[T],t),t}(i,0),-1!==n){const l=function Of(e,n){return ki(e,n+U)}(r[T],n),c=Vo(i,l.tView.ssrId);ms(i,gs(r,l,t,{dehydratedView:c}),0,jo(l,c))}}finally{Se(a)}}else{const a=function W_(e,n){const t=Pe+n;if(t(Jn(!0),Ja(r,o,function Lm(){return B.lFrame.currentNamespace}()));function Dt(e,n,t){const r=b(),o=J(),i=e+U,s=o.firstCreatePass?function aO(e,n,t,r,o){const i=n.consts,s=pn(i,r),a=So(n,e,8,"ng-container",s);return null!==s&&Cl(a,s,!0),af(n,t,a,pn(i,o)),null!==n.queries&&n.queries.elementStart(n,a),a}(i,o,r,n,t):o.data[i];gn(s,!0);const a=SC(o,r,s,e);return r[i]=a,Ma()&&tl(o,r,a,s),nt(a,r),ba(s)&&(nf(o,r,s),tf(o,s,r)),null!=t&&rf(r,s),Dt}function wt(){let e=ue();const n=J();return Gu()?zu():(e=e.parent,gn(e,!1)),n.firstCreatePass&&(Sa(n,e),Fu(e)&&n.queries.elementEnd(e)),wt}let SC=(e,n,t,r)=>(Jn(!0),Ad(n[z],""));function Fe(){return b()}const Zo="en-US";let RC=Zo;function Is(e){return!!e&&"function"==typeof e.then}function rD(e){return!!e&&"function"==typeof e.subscribe}function R(e,n,t,r){const o=b(),i=J(),s=ue();return function iD(e,n,t,r,o,i,s){const a=ba(r),c=e.firstCreatePass&&zy(e),u=n[ge],d=Gy(n);let g=!0;if(3&r.type||s){const _=st(r,n),D=s?s(_):_,I=d.length,w=s?V=>s(me(V[r.index])):r.index;let x=null;if(!s&&a&&(x=function sP(e,n,t,r){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,n,o,r.index)),null!==x)(x.__ngLastListenerFn__||x).__ngNextListenerFn__=i,x.__ngLastListenerFn__=i,g=!1;else{i=aD(r,n,u,i,!1);const V=t.listen(D,o,i);d.push(i,V),c&&c.push(o,w,I,I+1)}}else i=aD(r,n,u,i,!1);const m=r.outputs;let v;if(g&&null!==m&&(v=m[o])){const _=v.length;if(_)for(let D=0;D<_;D+=2){const Z=n[v[D]][v[D+1]].subscribe(i),Ie=d.length;d.push(i,Z),c&&c.push(o,r.index,Ie,-(Ie+1))}}}(i,o,o[z],s,e,n,r),R}function sD(e,n,t,r){try{return hn(6,n,t),!1!==t(r)}catch(o){return vl(e,o),!1}finally{hn(7,n,t)}}function aD(e,n,t,r,o){return function i(s){if(s===Function)return r;ss(e.componentOffset>-1?St(e.index,n):n);let l=sD(n,t,r,s),c=i.__ngNextListenerFn__;for(;c;)l=sD(n,t,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function P(e=1){return function Q0(e){return(B.lFrame.contextLView=function bm(e,n){for(;e>0;)n=n[eo],e--;return n}(e,B.lFrame.contextLView))[ge]}(e)}function jn(e,n,t,r,o){const i=b(),s=Ao(i,n,t,r);return s!==W&&Rt(J(),De(),i,e,s,i[z],o,!1),jn}function Gf(e){return function ro(e,n){return e[n]}(function z0(){return B.lFrame.contextLView}(),U+e)}function f(e,n=""){const t=b(),r=J(),o=e+U,i=r.firstCreatePass?So(r,o,1,n,null):r.data[o],s=MD(r,t,i,n,e);t[o]=s,Ma()&&tl(r,t,s,i),gn(i,!1)}let MD=(e,n,t,r,o)=>(Jn(!0),function Xa(e,n){return e.createText(n)}(n[z],r));function be(e){return Hn("",e,""),be}function Hn(e,n,t){const r=b(),o=Ao(r,e,n,t);return o!==W&&function Vn(e,n,t){const r=Pi(n,e);!function jv(e,n,t){e.setValue(n,t)}(e[z],r,t)}(r,lt(),o),Hn}function zf(e,n,t,r,o){if(e=j(e),Array.isArray(e))for(let i=0;i>20;if(Ir(e)||!e.multi){const m=new Li(c,o,S),v=Wf(l,n,o?u:u+g,d);-1===v?(nd(Na(a,s),i,l),qf(i,e,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(m),s.push(m)):(t[v]=m,s[v]=m)}else{const m=Wf(l,n,u+g,d),v=Wf(l,n,u,u+g),D=v>=0&&t[v];if(o&&!D||!o&&!(m>=0&&t[m])){nd(Na(a,s),i,l);const I=function IP(e,n,t,r,o){const i=new Li(e,t,S);return i.multi=[],i.index=n,i.componentProviders=0,kD(i,o,r&&!t),i}(o?EP:bP,t.length,o,r,c);!o&&D&&(t[v].providerFactory=I),qf(i,e,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(I),s.push(I)}else qf(i,e,m>-1?m:v,kD(t[o?v:m],c,!o&&r));!o&&r&&D&&t[v].componentProviders++}}}function qf(e,n,t,r){const o=Ir(n),i=function LS(e){return!!e.useClass}(n);if(o||i){const l=(i?j(n.useClass):n).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&n.multi){const u=c.indexOf(t);-1===u?c.push(t,[r,l]):c[u+1].push(r,l)}else c.push(t,l)}}}function kD(e,n,t){return t&&e.componentProviders++,e.multi.push(n)-1}function Wf(e,n,t,r){for(let o=t;o{t.providersResolver=(r,o)=>function wP(e,n,t){const r=J();if(r.firstCreatePass){const o=Qt(e);zf(t,r.data,r.blueprint,o,!0),zf(n,r.data,r.blueprint,o,!1)}}(r,o?o(e):e,n)}}class kr{}class FD{}class Yf extends kr{constructor(n,t,r){super(),this._parent=t,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new l_(this);const o=et(n);this._bootstrapComponents=xt(o.bootstrap),this._r3Injector=gv(n,t,[{provide:kr,useValue:this},{provide:dl,useValue:this.componentFactoryResolver},...r],je(n),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(n)}get injector(){return this._r3Injector}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class Qf extends FD{constructor(n){super(),this.moduleType=n}create(n){return new Yf(this.moduleType,n,[])}}class LD extends kr{constructor(n){super(),this.componentFactoryResolver=new l_(this),this.instance=null;const t=new Mr([...n.providers,{provide:kr,useValue:this},{provide:dl,useValue:this.componentFactoryResolver}],n.parent||$a(),n.debugName,new Set(["environment"]));this.injector=t,n.runEnvironmentInitializers&&t.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(n){this.injector.onDestroy(n)}}function Xf(e,n,t=null){return new LD({providers:e,parent:n,debugName:t,runEnvironmentInitializers:!0}).injector}let TP=(()=>{class e{constructor(t){this._injector=t,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(t){if(!t.standalone)return null;if(!this.cachedInjectors.has(t)){const r=sv(0,t.type),o=r.length>0?Xf([r],this._injector,`Standalone[${t.type.name}]`):null;this.cachedInjectors.set(t,o)}return this.cachedInjectors.get(t)}ngOnDestroy(){try{for(const t of this.cachedInjectors.values())null!==t&&t.destroy()}finally{this.cachedInjectors.clear()}}static#e=this.\u0275prov=O({token:e,providedIn:"environment",factory:()=>new e(k(At))})}return e})();const AP={detail:{feature:"NgStandalone"}};function Ot(e){Ar("mark_use_counter",AP),e.getStandaloneInjector=n=>n.get(TP).getOrCreateStandaloneInjector(e)}function ee(e,n,t){const r=at()+e,o=b();return o[r]===W?_n(o,r,t?n.call(t):n()):function us(e,n){return e[n]}(o,r)}function Ms(e,n,t,r){return function qD(e,n,t,r,o,i){const s=n+t;return He(e,s,o)?_n(e,s+1,i?r.call(i,o):r(o)):Ss(e,s+1)}(b(),at(),e,n,t,r)}function zD(e,n,t,r,o){return function WD(e,n,t,r,o,i,s){const a=n+t;return function Nr(e,n,t,r){const o=He(e,n,t);return He(e,n+1,r)||o}(e,a,o,i)?_n(e,a+2,s?r.call(s,o,i):r(o,i)):Ss(e,a+2)}(b(),at(),e,n,t,r,o)}function Ss(e,n){const t=e[n];return t===W?void 0:t}function ek(){return this._results[Symbol.iterator]()}class Kf{static#e=Symbol.iterator;get changes(){return this._changes||(this._changes=new xe)}constructor(n=!1){this._emitDistinctChangesOnly=n,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const t=Kf.prototype;t[Symbol.iterator]||(t[Symbol.iterator]=ek)}get(n){return this._results[n]}map(n){return this._results.map(n)}filter(n){return this._results.filter(n)}find(n){return this._results.find(n)}reduce(n,t){return this._results.reduce(n,t)}forEach(n){this._results.forEach(n)}some(n){return this._results.some(n)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(n,t){this.dirty=!1;const r=function yt(e){return e.flat(Number.POSITIVE_INFINITY)}(n);(this._changesDetected=!function _S(e,n,t){if(e.length!==n.length)return!1;for(let r=0;r{class e{static#e=this.__NG_ELEMENT_ID__=rk}return e})();const tk=Un,nk=class extends tk{constructor(n,t,r){super(),this._declarationLView=n,this._declarationTContainer=t,this.elementRef=r}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(n,t){return this.createEmbeddedViewImpl(n,t)}createEmbeddedViewImpl(n,t,r){const o=gs(this._declarationLView,this._declarationTContainer,n,{injector:t,dehydratedView:r});return new as(o)}};function rk(){return Ul(ue(),b())}function Ul(e,n){return 4&e.type?new nk(n,e,Mo(e,n)):null}class eh{constructor(n){this.queryList=n,this.matches=null}clone(){return new eh(this.queryList)}setDirty(){this.queryList.setDirty()}}class th{constructor(n=[]){this.queries=n}createEmbeddedView(n){const t=n.queries;if(null!==t){const r=null!==n.contentQueries?n.contentQueries[0]:t.length,o=[];for(let i=0;i0)r.push(s[a/2]);else{const c=i[a+1],u=n[-l];for(let d=Pe;d{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,r)=>{this.resolve=t,this.reject=r}),this.appInits=A(ch,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const t=[];for(const o of this.appInits){const i=o();if(Is(i))t.push(i);else if(rD(i)){const s=new Promise((a,l)=>{i.subscribe({complete:a,error:l})});t.push(s)}}const r=()=>{this.done=!0,this.resolve()};Promise.all(t).then(()=>{r()}).catch(o=>{this.reject(o)}),0===t.length&&r(),this.initialized=!0}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Cw=(()=>{class e{log(t){console.log(t)}warn(t){console.warn(t)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})();const Bn=new N("LocaleId",{providedIn:"root",factory:()=>A(Bn,X.Optional|X.SkipSelf)||function Ok(){return typeof $localize<"u"&&$localize.locale||Zo}()});let $l=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new kt(!1)}add(){this.hasPendingTasks.next(!0);const t=this.taskId++;return this.pendingTasks.add(t),t}remove(t){this.pendingTasks.delete(t),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class jk{constructor(n,t){this.ngModuleFactory=n,this.componentFactories=t}}let ww=(()=>{class e{compileModuleSync(t){return new Qf(t)}compileModuleAsync(t){return Promise.resolve(this.compileModuleSync(t))}compileModuleAndAllComponentsSync(t){const r=this.compileModuleSync(t),i=xt(et(t).declarations).reduce((s,a)=>{const l=Q(a);return l&&s.push(new cs(l)),s},[]);return new jk(r,i)}compileModuleAndAllComponentsAsync(t){return Promise.resolve(this.compileModuleAndAllComponentsSync(t))}clearCache(){}clearCacheFor(t){}getModuleId(t){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Sw=new N(""),zl=new N("");let ph,fh=(()=>{class e{constructor(t,r,o){this._ngZone=t,this.registry=r,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,ph||(function uF(e){ph=e}(o),o.addToWindow(r)),this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(r=>!r.updateCb||!r.updateCb(t)||(clearTimeout(r.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,r,o){let i=-1;r&&r>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==i),t(this._didWork,this.getPendingTasks())},r)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:o})}whenStable(t,r,o){if(o&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(t,r,o),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(t){this.registry.registerApplication(t,this)}unregisterApplication(t){this.registry.unregisterApplication(t)}findProviders(t,r,o){return[]}static#e=this.\u0275fac=function(r){return new(r||e)(k(ae),k(hh),k(zl))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),hh=(()=>{class e{constructor(){this._applications=new Map}registerApplication(t,r){this._applications.set(t,r)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,r=!0){return ph?.findTestabilityInTree(this,t,r)??null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})(),ar=null;const gh=new N("PlatformDestroyListeners"),mh=new N("appBootstrapListener");function gF(e){try{const{rootComponent:n,appProviders:t,platformProviders:r}=e,o=function pF(e=[]){if(ar)return ar;const n=function Nw(e=[],n){return _t.create({name:n,providers:[{provide:hd,useValue:"platform"},{provide:gh,useValue:new Set([()=>ar=null])},...e]})}(e);return ar=n,function Aw(){!function HM(e){pg=e}(()=>{throw new M(600,!1)})}(),function xw(e){e.get(vv,null)?.forEach(t=>t())}(n),n}(r),i=[CF(),...t||[]],a=new LD({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,l=a.get(ae);return l.run(()=>{a.resolveInjectorInitializers();const c=a.get(Ln,null);let u;l.runOutsideAngular(()=>{u=l.onError.subscribe({next:m=>{c.handleError(m)}})});const d=()=>a.destroy(),g=o.get(gh);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),function Pw(e,n,t){try{const r=t();return Is(r)?r.catch(o=>{throw n.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw n.runOutsideAngular(()=>e.handleError(r)),r}}(c,l,()=>{const m=a.get(uh);return m.runInitializers(),m.donePromise.then(()=>{!function OC(e){gt(e,"Expected localeId to be defined"),"string"==typeof e&&(RC=e.toLowerCase().replace(/_/g,"-"))}(a.get(Bn,Zo)||Zo);const _=a.get(Xo);return void 0!==n&&_.bootstrap(n),_})})})}catch(n){return Promise.reject(n)}}let Xo=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=A(Lw),this.zoneIsStable=A(t_),this.componentTypes=[],this.components=[],this.isStable=A($l).hasPendingTasks.pipe(Ft(t=>t?F(!1):this.zoneIsStable),function B1(e,n=qn){return e=e??$1,$e((t,r)=>{let o,i=!0;t.subscribe(Ve(r,s=>{const a=n(s);(i||!e(o,a))&&(i=!1,o=a,r.next(s))}))})}(),$g()),this._injector=A(At)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(t,r){const o=t instanceof py;if(!this._injector.get(uh).done)throw!o&&function Qn(e){const n=Q(e)||Ge(e)||Je(e);return null!==n&&n.standalone}(t),new M(405,!1);let s;s=o?t:this._injector.get(dl).resolveComponentFactory(t),this.componentTypes.push(s.componentType);const a=function fF(e){return e.isBoundToModule}(s)?void 0:this._injector.get(kr),c=s.create(_t.NULL,[],r||s.selector,a),u=c.location.nativeElement,d=c.injector.get(Sw,null);return d?.registerApplication(u),c.onDestroy(()=>{this.detachView(c.hostView),ql(this.components,c),d?.unregisterApplication(u)}),this._loadComponent(c),c}tick(){if(this._runningTick)throw new M(101,!1);try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}catch(t){this.internalErrorHandler(t)}finally{this._runningTick=!1}}attachView(t){const r=t;this._views.push(r),r.attachToAppRef(this)}detachView(t){const r=t;ql(this._views,r),r.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t);const r=this._injector.get(mh,[]);[...this._bootstrapListeners,...r].forEach(o=>o(t))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(t=>t()),this._views.slice().forEach(t=>t.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(t){return this._destroyListeners.push(t),()=>ql(this._destroyListeners,t)}destroy(){if(this._destroyed)throw new M(406,!1);const t=this._injector;t.destroy&&!t.destroyed&&t.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function ql(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}const Lw=new N("",{providedIn:"root",factory:()=>A(Ln).handleError.bind(void 0)});function yF(){const e=A(ae),n=A(Ln);return t=>e.runOutsideAngular(()=>n.handleError(t))}let _F=(()=>{class e{constructor(){this.zone=A(ae),this.applicationRef=A(Xo)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Vw(e){return[{provide:ae,useFactory:e},{provide:vo,multi:!0,useFactory:()=>{const n=A(_F,{optional:!0});return()=>n.initialize()}},{provide:Lw,useFactory:yF},{provide:t_,useFactory:n_}]}function CF(e){return ud([[],Vw(()=>new ae(function Ow(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}(e)))])}let MF=(()=>{class e{constructor(t){}static#e=this.\u0275fac=function(r){return new(r||e)(k(Xo))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Ko(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}const ye_apiBaseUrl="https://www.palmmedia.de/api/";let Sh=null;function lr(){return Sh}class QF{}const ft=new N("DocumentToken");let Th=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(JF),providedIn:"platform"})}return e})();const XF=new N("Location Initialized");let JF=(()=>{class e extends Th{constructor(){super(),this._doc=A(ft),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return lr().getBaseHref(this._doc)}onPopState(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",t,!1),()=>r.removeEventListener("popstate",t)}onHashChange(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("hashchange",t,!1),()=>r.removeEventListener("hashchange",t)}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(t){this._location.pathname=t}pushState(t,r,o){this._history.pushState(t,r,o)}replaceState(t,r,o){this._history.replaceState(t,r,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new e,providedIn:"platform"})}return e})();function Ah(e,n){if(0==e.length)return n;if(0==n.length)return e;let t=0;return e.endsWith("/")&&t++,n.startsWith("/")&&t++,2==t?e+n.substring(1):1==t?e+n:e+"/"+n}function ab(e){const n=e.match(/#|\?|$/),t=n&&n.index||e.length;return e.slice(0,t-("/"===e[t-1]?1:0))+e.slice(t)}function $n(e){return e&&"?"!==e[0]?"?"+e:e}let Lr=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(cb),providedIn:"root"})}return e})();const lb=new N("appBaseHref");let cb=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._removeListenerFns=[],this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??A(ft).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return Ah(this._baseHref,t)}path(t=!1){const r=this._platformLocation.pathname+$n(this._platformLocation.search),o=this._platformLocation.hash;return o&&t?`${r}${o}`:r}pushState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(lb,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),KF=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._baseHref="",this._removeListenerFns=[],null!=r&&(this._baseHref=r)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}path(t=!1){let r=this._platformLocation.hash;return null==r&&(r="#"),r.length>0?r.substring(1):r}prepareExternalUrl(t){const r=Ah(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(lb,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),Os=(()=>{class e{constructor(t){this._subject=new xe,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=t;const r=this._locationStrategy.getBaseHref();this._basePath=function n2(e){if(new RegExp("^(https?:)?//").test(e)){const[,t]=e.split(/\/\/[^\/]+/);return t}return e}(ab(ub(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(t=!1){return this.normalize(this._locationStrategy.path(t))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(t,r=""){return this.path()==this.normalize(t+$n(r))}normalize(t){return e.stripTrailingSlash(function t2(e,n){if(!e||!n.startsWith(e))return n;const t=n.substring(e.length);return""===t||["/",";","?","#"].includes(t[0])?t:n}(this._basePath,ub(t)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._locationStrategy.prepareExternalUrl(t)}go(t,r="",o=null){this._locationStrategy.pushState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}replaceState(t,r="",o=null){this._locationStrategy.replaceState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(t=0){this._locationStrategy.historyGo?.(t)}onUrlChange(t){return this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(r=>{this._notifyUrlChangeListeners(r.url,r.state)})),()=>{const r=this._urlChangeListeners.indexOf(t);this._urlChangeListeners.splice(r,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(t="",r){this._urlChangeListeners.forEach(o=>o(t,r))}subscribe(t,r,o){return this._subject.subscribe({next:t,error:r,complete:o})}static#e=this.normalizeQueryParams=$n;static#t=this.joinWithSlash=Ah;static#n=this.stripTrailingSlash=ab;static#r=this.\u0275fac=function(r){return new(r||e)(k(Lr))};static#o=this.\u0275prov=O({token:e,factory:()=>function e2(){return new Os(k(Lr))}(),providedIn:"root"})}return e})();function ub(e){return e.replace(/\/index.html$/,"")}function _b(e,n){n=encodeURIComponent(n);for(const t of e.split(";")){const r=t.indexOf("="),[o,i]=-1==r?[t,""]:[t.slice(0,r),t.slice(r+1)];if(o.trim()===n)return decodeURIComponent(i)}return null}const jh=/\s+/,Cb=[];let uc=(()=>{class e{constructor(t,r,o,i){this._iterableDiffers=t,this._keyValueDiffers=r,this._ngEl=o,this._renderer=i,this.initialClasses=Cb,this.stateMap=new Map}set klass(t){this.initialClasses=null!=t?t.trim().split(jh):Cb}set ngClass(t){this.rawClass="string"==typeof t?t.trim().split(jh):t}ngDoCheck(){for(const r of this.initialClasses)this._updateState(r,!0);const t=this.rawClass;if(Array.isArray(t)||t instanceof Set)for(const r of t)this._updateState(r,!0);else if(null!=t)for(const r of Object.keys(t))this._updateState(r,!!t[r]);this._applyStateDiff()}_updateState(t,r){const o=this.stateMap.get(t);void 0!==o?(o.enabled!==r&&(o.changed=!0,o.enabled=r),o.touched=!0):this.stateMap.set(t,{enabled:r,changed:!0,touched:!0})}_applyStateDiff(){for(const t of this.stateMap){const r=t[0],o=t[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(t,r){(t=t.trim()).length>0&&t.split(jh).forEach(o=>{r?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}static#e=this.\u0275fac=function(r){return new(r||e)(S(hl),S(rs),S(Nt),S(Fn))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0})}return e})();class U2{constructor(n,t,r,o){this.$implicit=n,this.ngForOf=t,this.index=r,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Hh=(()=>{class e{set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}constructor(t,r,o){this._viewContainer=t,this._template=r,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const t=this._ngForOf;!this._differ&&t&&(this._differ=this._differs.find(t).create(this.ngForTrackBy))}if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const r=this._viewContainer;t.forEachOperation((o,i,s)=>{if(null==o.previousIndex)r.createEmbeddedView(this._template,new U2(o.item,this._ngForOf,-1,-1),null===s?void 0:s);else if(null==s)r.remove(null===i?void 0:i);else if(null!==i){const a=r.get(i);r.move(a,s),wb(a,o)}});for(let o=0,i=r.length;o{wb(r.get(o.currentIndex),o)})}static ngTemplateContextGuard(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un),S(hl))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}return e})();function wb(e,n){e.context.$implicit=n.item}let Uh=(()=>{class e{constructor(t,r){this._viewContainer=t,this._context=new B2,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=r}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){bb("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){bb("ngIfElse",t),this._elseTemplateRef=t,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(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}return e})();class B2{constructor(){this.$implicit=null,this.ngIf=null}}function bb(e,n){if(n&&!n.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${je(n)}'.`)}let pL=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Sb(e){return"server"===e}let yL=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new _L(k(ft),window)})}return e})();class _L{constructor(n,t){this.document=n,this.window=t,this.offset=()=>[0,0]}setOffset(n){this.offset=Array.isArray(n)?()=>n:n}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(n){this.supportsScrolling()&&this.window.scrollTo(n[0],n[1])}scrollToAnchor(n){if(!this.supportsScrolling())return;const t=function CL(e,n){const t=e.getElementById(n)||e.getElementsByName(n)[0];if(t)return t;if("function"==typeof e.createTreeWalker&&e.body&&"function"==typeof e.body.attachShadow){const r=e.createTreeWalker(e.body,NodeFilter.SHOW_ELEMENT);let o=r.currentNode;for(;o;){const i=o.shadowRoot;if(i){const s=i.getElementById(n)||i.querySelector(`[name="${n}"]`);if(s)return s}o=r.nextNode()}}return null}(this.document,n);t&&(this.scrollToElement(t),t.focus())}setHistoryScrollRestoration(n){this.supportsScrolling()&&(this.window.history.scrollRestoration=n)}scrollToElement(n){const t=n.getBoundingClientRect(),r=t.left+this.window.pageXOffset,o=t.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(r-i[0],o-i[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class Tb{}const{isArray:GL}=Array,{getPrototypeOf:zL,prototype:qL,keys:WL}=Object;function Rb(e){if(1===e.length){const n=e[0];if(GL(n))return{args:n,keys:null};if(function ZL(e){return e&&"object"==typeof e&&zL(e)===qL}(n)){const t=WL(n);return{args:t.map(r=>n[r]),keys:t}}}return{args:e,keys:null}}const{isArray:YL}=Array;function Ob(e){return K(n=>function QL(e,n){return YL(n)?e(...n):e(n)}(e,n))}function Pb(e,n){return e.reduce((t,r,o)=>(t[r]=n[o],t),{})}function Zh(...e){const n=Ei(e),t=jg(e),{args:r,keys:o}=Rb(e);if(0===r.length)return Oe([],n);const i=new Te(function XL(e,n,t=qn){return r=>{kb(n,()=>{const{length:o}=e,i=new Array(o);let s=o,a=o;for(let l=0;l{const c=Oe(e[l],n);let u=!1;c.subscribe(Ve(r,d=>{i[l]=d,u||(u=!0,a--),a||r.next(t(i.slice()))},()=>{--s||r.complete()}))},r)},r)}}(r,n,o?s=>Pb(o,s):qn));return t?i.pipe(Ob(t)):i}function kb(e,n,t){e?An(t,e,n):n()}const hc=iu(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function Yh(...e){return function JL(){return Yr(1)}()(Oe(e,Ei(e)))}function Fb(e){return new Te(n=>{qt(e()).subscribe(n)})}function pc(e,n){const t=Ce(e)?e:()=>e,r=o=>o.error(t());return new Te(n?o=>n.schedule(r,0,o):r)}function Qh(){return $e((e,n)=>{let t=null;e._refCount++;const r=Ve(n,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount)return void(t=null);const o=e._connection,i=t;t=null,o&&(!i||o===i)&&o.unsubscribe(),n.unsubscribe()});e.subscribe(r),r.closed||(t=e.connect())})}class Lb extends Te{constructor(n,t){super(),this.source=n,this.subjectFactory=t,this._subject=null,this._refCount=0,this._connection=null,Eg(n)&&(this.lift=n.lift)}_subscribe(n){return this.getSubject().subscribe(n)}getSubject(){const n=this._subject;return(!n||n.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:n}=this;this._subject=this._connection=null,n?.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new Et;const t=this.getSubject();n.add(this.source.subscribe(Ve(t,void 0,()=>{this._teardown(),t.complete()},r=>{this._teardown(),t.error(r)},()=>this._teardown()))),n.closed&&(this._connection=null,n=Et.EMPTY)}return n}refCount(){return Qh()(this)}}function rn(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>e.call(n,i,o++)&&r.next(i)))})}function gc(e){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>{r||t.next(e),t.complete()}))})}function Vb(e=eV){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>r?t.complete():t.error(e())))})}function eV(){return new hc}function Vr(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,_r(1),t?gc(n):Vb(()=>new hc))}function ti(e,n){return Ce(n)?Xe(e,n,1):Xe(e,1)}function rt(e,n,t){const r=Ce(e)||n||t?{next:e,error:n,complete:t}:e;return r?$e((o,i)=>{var s;null===(s=r.subscribe)||void 0===s||s.call(r);let a=!0;o.subscribe(Ve(i,l=>{var c;null===(c=r.next)||void 0===c||c.call(r,l),i.next(l)},()=>{var l;a=!1,null===(l=r.complete)||void 0===l||l.call(r),i.complete()},l=>{var c;a=!1,null===(c=r.error)||void 0===c||c.call(r,l),i.error(l)},()=>{var l,c;a&&(null===(l=r.unsubscribe)||void 0===l||l.call(r)),null===(c=r.finalize)||void 0===c||c.call(r)}))}):qn}function ni(e){return $e((n,t)=>{let i,r=null,o=!1;r=n.subscribe(Ve(t,void 0,void 0,s=>{i=qt(e(s,ni(e)(n))),r?(r.unsubscribe(),r=null,i.subscribe(t)):o=!0})),o&&(r.unsubscribe(),r=null,i.subscribe(t))})}function Xh(e){return e<=0?()=>an:$e((n,t)=>{let r=[];n.subscribe(Ve(t,o=>{r.push(o),e{for(const o of r)t.next(o);t.complete()},void 0,()=>{r=null}))})}function Ls(e){return $e((n,t)=>{try{n.subscribe(t)}finally{t.add(e)}})}class sV extends QF{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class Jh extends sV{static makeCurrent(){!function YF(e){Sh||(Sh=e)}(new Jh)}onAndCancel(n,t,r){return n.addEventListener(t,r),()=>{n.removeEventListener(t,r)}}dispatchEvent(n,t){n.dispatchEvent(t)}remove(n){n.parentNode&&n.parentNode.removeChild(n)}createElement(n,t){return(t=t||this.getDefaultDocument()).createElement(n)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(n){return n.nodeType===Node.ELEMENT_NODE}isShadowRoot(n){return n instanceof DocumentFragment}getGlobalEventTarget(n,t){return"window"===t?window:"document"===t?n:"body"===t?n.body:null}getBaseHref(n){const t=function aV(){return Vs=Vs||document.querySelector("base"),Vs?Vs.getAttribute("href"):null}();return null==t?null:function lV(e){mc=mc||document.createElement("a"),mc.setAttribute("href",e);const n=mc.pathname;return"/"===n.charAt(0)?n:`/${n}`}(t)}resetBaseElement(){Vs=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return _b(document.cookie,n)}}let mc,Vs=null,uV=(()=>{class e{build(){return new XMLHttpRequest}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const Kh=new N("EventManagerPlugins");let jb=(()=>{class e{constructor(t,r){this._zone=r,this._eventNameToPlugin=new Map,t.forEach(o=>{o.manager=this}),this._plugins=t.slice().reverse()}addEventListener(t,r,o){return this._findPluginFor(r).addEventListener(t,r,o)}getZone(){return this._zone}_findPluginFor(t){let r=this._eventNameToPlugin.get(t);if(r)return r;if(r=this._plugins.find(i=>i.supports(t)),!r)throw new M(5101,!1);return this._eventNameToPlugin.set(t,r),r}static#e=this.\u0275fac=function(r){return new(r||e)(k(Kh),k(ae))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class Hb{constructor(n){this._doc=n}}const ep="ng-app-id";let Ub=(()=>{class e{constructor(t,r,o,i={}){this.doc=t,this.appId=r,this.nonce=o,this.platformId=i,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Sb(i),this.resetHostNodes()}addStyles(t){for(const r of t)1===this.changeUsageCount(r,1)&&this.onStyleAdded(r)}removeStyles(t){for(const r of t)this.changeUsageCount(r,-1)<=0&&this.onStyleRemoved(r)}ngOnDestroy(){const t=this.styleNodesInDOM;t&&(t.forEach(r=>r.remove()),t.clear());for(const r of this.getAllStyles())this.onStyleRemoved(r);this.resetHostNodes()}addHost(t){this.hostNodes.add(t);for(const r of this.getAllStyles())this.addStyleToHost(t,r)}removeHost(t){this.hostNodes.delete(t)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(t){for(const r of this.hostNodes)this.addStyleToHost(r,t)}onStyleRemoved(t){const r=this.styleRef;r.get(t)?.elements?.forEach(o=>o.remove()),r.delete(t)}collectServerRenderedStyles(){const t=this.doc.head?.querySelectorAll(`style[${ep}="${this.appId}"]`);if(t?.length){const r=new Map;return t.forEach(o=>{null!=o.textContent&&r.set(o.textContent,o)}),r}return null}changeUsageCount(t,r){const o=this.styleRef;if(o.has(t)){const i=o.get(t);return i.usage+=r,i.usage}return o.set(t,{usage:r,elements:[]}),r}getStyleElement(t,r){const o=this.styleNodesInDOM,i=o?.get(r);if(i?.parentNode===t)return o.delete(r),i.removeAttribute(ep),i;{const s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(ep,this.appId),t.appendChild(s),s}}addStyleToHost(t,r){const o=this.getStyleElement(t,r),i=this.styleRef,s=i.get(r)?.elements;s?s.push(o):i.set(r,{elements:[o],usage:1})}resetHostNodes(){const t=this.hostNodes;t.clear(),t.add(this.doc.head)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(za),k(yv,8),k(Sr))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const tp={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/"},np=/%COMP%/g,pV=new N("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!0});function $b(e,n){return n.map(t=>t.replace(np,e))}let Gb=(()=>{class e{constructor(t,r,o,i,s,a,l,c=null){this.eventManager=t,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=l,this.nonce=c,this.rendererByCompId=new Map,this.platformIsServer=Sb(a),this.defaultRenderer=new rp(t,s,l,this.platformIsServer)}createRenderer(t,r){if(!t||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===Wt.ShadowDom&&(r={...r,encapsulation:Wt.Emulated});const o=this.getOrCreateRenderer(t,r);return o instanceof qb?o.applyToHost(t):o instanceof op&&o.applyStyles(),o}getOrCreateRenderer(t,r){const o=this.rendererByCompId;let i=o.get(r.id);if(!i){const s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case Wt.Emulated:i=new qb(l,c,r,this.appId,u,s,a,d);break;case Wt.ShadowDom:return new yV(l,c,t,r,s,a,this.nonce,d);default:i=new op(l,c,r,u,s,a,d)}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static#e=this.\u0275fac=function(r){return new(r||e)(k(jb),k(Ub),k(za),k(pV),k(ft),k(Sr),k(ae),k(yv))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class rp{constructor(n,t,r,o){this.eventManager=n,this.doc=t,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(n,t){return t?this.doc.createElementNS(tp[t]||t,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,t){(zb(n)?n.content:n).appendChild(t)}insertBefore(n,t,r){n&&(zb(n)?n.content:n).insertBefore(t,r)}removeChild(n,t){n&&n.removeChild(t)}selectRootElement(n,t){let r="string"==typeof n?this.doc.querySelector(n):n;if(!r)throw new M(-5104,!1);return t||(r.textContent=""),r}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,t,r,o){if(o){t=o+":"+t;const i=tp[o];i?n.setAttributeNS(i,t,r):n.setAttribute(t,r)}else n.setAttribute(t,r)}removeAttribute(n,t,r){if(r){const o=tp[r];o?n.removeAttributeNS(o,t):n.removeAttribute(`${r}:${t}`)}else n.removeAttribute(t)}addClass(n,t){n.classList.add(t)}removeClass(n,t){n.classList.remove(t)}setStyle(n,t,r,o){o&(rr.DashCase|rr.Important)?n.style.setProperty(t,r,o&rr.Important?"important":""):n.style[t]=r}removeStyle(n,t,r){r&rr.DashCase?n.style.removeProperty(t):n.style[t]=""}setProperty(n,t,r){n[t]=r}setValue(n,t){n.nodeValue=t}listen(n,t,r){if("string"==typeof n&&!(n=lr().getGlobalEventTarget(this.doc,n)))throw new Error(`Unsupported event target ${n} for event ${t}`);return this.eventManager.addEventListener(n,t,this.decoratePreventDefault(r))}decoratePreventDefault(n){return t=>{if("__ngUnwrap__"===t)return n;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>n(t)):n(t))&&t.preventDefault()}}}function zb(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class yV extends rp{constructor(n,t,r,o,i,s,a,l){super(n,i,s,l),this.sharedStylesHost=t,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=$b(o.id,o.styles);for(const u of c){const d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=u,this.shadowRoot.appendChild(d)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,t){return super.appendChild(this.nodeOrShadowRoot(n),t)}insertBefore(n,t,r){return super.insertBefore(this.nodeOrShadowRoot(n),t,r)}removeChild(n,t){return super.removeChild(this.nodeOrShadowRoot(n),t)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class op extends rp{constructor(n,t,r,o,i,s,a,l){super(n,i,s,a),this.sharedStylesHost=t,this.removeStylesOnCompDestroy=o,this.styles=l?$b(l,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class qb extends op{constructor(n,t,r,o,i,s,a,l){const c=o+"-"+r.id;super(n,t,r,i,s,a,l,c),this.contentAttr=function gV(e){return"_ngcontent-%COMP%".replace(np,e)}(c),this.hostAttr=function mV(e){return"_nghost-%COMP%".replace(np,e)}(c)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,t){const r=super.createElement(n,t);return super.setAttribute(r,this.contentAttr,""),r}}let _V=(()=>{class e extends Hb{constructor(t){super(t)}supports(t){return!0}addEventListener(t,r,o){return t.addEventListener(r,o,!1),()=>this.removeEventListener(t,r,o)}removeEventListener(t,r,o){return t.removeEventListener(r,o)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const Wb=["alt","control","meta","shift"],CV={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},DV={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let wV=(()=>{class e extends Hb{constructor(t){super(t)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,r,o){const i=e.parseEventName(r),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>lr().onAndCancel(t,i.domEventName,s))}static parseEventName(t){const r=t.toLowerCase().split("."),o=r.shift();if(0===r.length||"keydown"!==o&&"keyup"!==o)return null;const i=e._normalizeKey(r.pop());let s="",a=r.indexOf("code");if(a>-1&&(r.splice(a,1),s="code."),Wb.forEach(c=>{const u=r.indexOf(c);u>-1&&(r.splice(u,1),s+=c+".")}),s+=i,0!=r.length||0===i.length)return null;const l={};return l.domEventName=o,l.fullKey=s,l}static matchEventFullKeyCode(t,r){let o=CV[t.key]||t.key,i="";return r.indexOf("code.")>-1&&(o=t.code,i="code."),!(null==o||!o)&&(o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),Wb.forEach(s=>{s!==o&&(0,DV[s])(t)&&(i+=s+".")}),i+=o,i===r)}static eventCallback(t,r,o){return i=>{e.matchEventFullKeyCode(i,t)&&o.runGuarded(()=>r(i))}}static _normalizeKey(t){return"esc"===t?"escape":t}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Zb(e){return{appProviders:[...Qb,...e?.providers??[]],platformProviders:SV}}const SV=[{provide:Sr,useValue:"browser"},{provide:vv,useValue:function EV(){Jh.makeCurrent()},multi:!0},{provide:ft,useFactory:function MV(){return function JS(e){_d=e}(document),document},deps:[]}],TV=new N(""),Yb=[{provide:zl,useClass:class cV{addToWindow(n){pe.getAngularTestability=(r,o=!0)=>{const i=n.findTestabilityInTree(r,o);if(null==i)throw new M(5103,!1);return i},pe.getAllAngularTestabilities=()=>n.getAllTestabilities(),pe.getAllAngularRootElements=()=>n.getAllRootElements(),pe.frameworkStabilizers||(pe.frameworkStabilizers=[]),pe.frameworkStabilizers.push(r=>{const o=pe.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&r(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(n,t,r){return null==t?null:n.getTestability(t)??(r?lr().isShadowRoot(t)?this.findTestabilityInTree(n,t.host,!0):this.findTestabilityInTree(n,t.parentElement,!0):null)}},deps:[]},{provide:Sw,useClass:fh,deps:[ae,hh,zl]},{provide:fh,useClass:fh,deps:[ae,hh,zl]}],Qb=[{provide:hd,useValue:"root"},{provide:Ln,useFactory:function IV(){return new Ln},deps:[]},{provide:Kh,useClass:_V,multi:!0,deps:[ft,ae,Sr]},{provide:Kh,useClass:wV,multi:!0,deps:[ft]},Gb,Ub,jb,{provide:my,useExisting:Gb},{provide:Tb,useClass:uV,deps:[]},[]];let AV=(()=>{class e{constructor(t){}static withServerTransition(t){return{ngModule:e,providers:[{provide:za,useValue:t.appId}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(TV,12))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({providers:[...Qb,...Yb],imports:[pL,MF]})}return e})(),Xb=(()=>{class e{constructor(t){this._doc=t}getTitle(){return this._doc.title}setTitle(t){this._doc.title=t||""}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:function(r){let o=null;return o=r?new r:function NV(){return new Xb(k(ft))}(),o},providedIn:"root"})}return e})();typeof window<"u"&&window;const Y="primary",js=Symbol("RouteTitle");class FV{constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t[0]:t}return null}getAll(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t:[t]}return[]}get keys(){return Object.keys(this.params)}}function ri(e){return new FV(e)}function LV(e,n,t){const r=t.path.split("/");if(r.length>e.length||"full"===t.pathMatch&&(n.hasChildren()||r.lengthr[i]===o)}return e===n}function nE(e){return e.length>0?e[e.length-1]:null}function ur(e){return function $L(e){return!!e&&(e instanceof Te||Ce(e.lift)&&Ce(e.subscribe))}(e)?e:Is(e)?Oe(Promise.resolve(e)):F(e)}const jV={exact:function iE(e,n,t){if(!jr(e.segments,n.segments)||!vc(e.segments,n.segments,t)||e.numberOfChildren!==n.numberOfChildren)return!1;for(const r in n.children)if(!e.children[r]||!iE(e.children[r],n.children[r],t))return!1;return!0},subset:sE},rE={exact:function HV(e,n){return wn(e,n)},subset:function UV(e,n){return Object.keys(n).length<=Object.keys(e).length&&Object.keys(n).every(t=>tE(e[t],n[t]))},ignored:()=>!0};function oE(e,n,t){return jV[t.paths](e.root,n.root,t.matrixParams)&&rE[t.queryParams](e.queryParams,n.queryParams)&&!("exact"===t.fragment&&e.fragment!==n.fragment)}function sE(e,n,t){return aE(e,n,n.segments,t)}function aE(e,n,t,r){if(e.segments.length>t.length){const o=e.segments.slice(0,t.length);return!(!jr(o,t)||n.hasChildren()||!vc(o,t,r))}if(e.segments.length===t.length){if(!jr(e.segments,t)||!vc(e.segments,t,r))return!1;for(const o in n.children)if(!e.children[o]||!sE(e.children[o],n.children[o],r))return!1;return!0}{const o=t.slice(0,e.segments.length),i=t.slice(e.segments.length);return!!(jr(e.segments,o)&&vc(e.segments,o,r)&&e.children[Y])&&aE(e.children[Y],n,i,r)}}function vc(e,n,t){return n.every((r,o)=>rE[t](e[o].parameters,r.parameters))}class oi{constructor(n=new de([],{}),t={},r=null){this.root=n,this.queryParams=t,this.fragment=r}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ri(this.queryParams)),this._queryParamMap}toString(){return GV.serialize(this)}}class de{constructor(n,t){this.segments=n,this.children=t,this.parent=null,Object.values(t).forEach(r=>r.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return yc(this)}}class Hs{constructor(n,t){this.path=n,this.parameters=t}get parameterMap(){return this._parameterMap||(this._parameterMap=ri(this.parameters)),this._parameterMap}toString(){return uE(this)}}function jr(e,n){return e.length===n.length&&e.every((t,r)=>t.path===n[r].path)}let ii=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new ap,providedIn:"root"})}return e})();class ap{parse(n){const t=new t3(n);return new oi(t.parseRootSegment(),t.parseQueryParams(),t.parseFragment())}serialize(n){const t=`/${Us(n.root,!0)}`,r=function WV(e){const n=Object.keys(e).map(t=>{const r=e[t];return Array.isArray(r)?r.map(o=>`${_c(t)}=${_c(o)}`).join("&"):`${_c(t)}=${_c(r)}`}).filter(t=>!!t);return n.length?`?${n.join("&")}`:""}(n.queryParams);return`${t}${r}${"string"==typeof n.fragment?`#${function zV(e){return encodeURI(e)}(n.fragment)}`:""}`}}const GV=new ap;function yc(e){return e.segments.map(n=>uE(n)).join("/")}function Us(e,n){if(!e.hasChildren())return yc(e);if(n){const t=e.children[Y]?Us(e.children[Y],!1):"",r=[];return Object.entries(e.children).forEach(([o,i])=>{o!==Y&&r.push(`${o}:${Us(i,!1)}`)}),r.length>0?`${t}(${r.join("//")})`:t}{const t=function $V(e,n){let t=[];return Object.entries(e.children).forEach(([r,o])=>{r===Y&&(t=t.concat(n(o,r)))}),Object.entries(e.children).forEach(([r,o])=>{r!==Y&&(t=t.concat(n(o,r)))}),t}(e,(r,o)=>o===Y?[Us(e.children[Y],!1)]:[`${o}:${Us(r,!1)}`]);return 1===Object.keys(e.children).length&&null!=e.children[Y]?`${yc(e)}/${t[0]}`:`${yc(e)}/(${t.join("//")})`}}function lE(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function _c(e){return lE(e).replace(/%3B/gi,";")}function lp(e){return lE(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Cc(e){return decodeURIComponent(e)}function cE(e){return Cc(e.replace(/\+/g,"%20"))}function uE(e){return`${lp(e.path)}${function qV(e){return Object.keys(e).map(n=>`;${lp(n)}=${lp(e[n])}`).join("")}(e.parameters)}`}const ZV=/^[^\/()?;#]+/;function cp(e){const n=e.match(ZV);return n?n[0]:""}const YV=/^[^\/()?;=#]+/,XV=/^[^=?&#]+/,KV=/^[^&#]+/;class t3{constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new de([],{}):new de([],this.parseChildren())}parseQueryParams(){const n={};if(this.consumeOptional("?"))do{this.parseQueryParam(n)}while(this.consumeOptional("&"));return n}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());let t={};this.peekStartsWith("/(")&&(this.capture("/"),t=this.parseParens(!0));let r={};return this.peekStartsWith("(")&&(r=this.parseParens(!1)),(n.length>0||Object.keys(t).length>0)&&(r[Y]=new de(n,t)),r}parseSegment(){const n=cp(this.remaining);if(""===n&&this.peekStartsWith(";"))throw new M(4009,!1);return this.capture(n),new Hs(Cc(n),this.parseMatrixParams())}parseMatrixParams(){const n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){const t=function QV(e){const n=e.match(YV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const o=cp(this.remaining);o&&(r=o,this.capture(r))}n[Cc(t)]=Cc(r)}parseQueryParam(n){const t=function JV(e){const n=e.match(XV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const s=function e3(e){const n=e.match(KV);return n?n[0]:""}(this.remaining);s&&(r=s,this.capture(r))}const o=cE(t),i=cE(r);if(n.hasOwnProperty(o)){let s=n[o];Array.isArray(s)||(s=[s],n[o]=s),s.push(i)}else n[o]=i}parseParens(n){const t={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const r=cp(this.remaining),o=this.remaining[r.length];if("/"!==o&&")"!==o&&";"!==o)throw new M(4010,!1);let i;r.indexOf(":")>-1?(i=r.slice(0,r.indexOf(":")),this.capture(i),this.capture(":")):n&&(i=Y);const s=this.parseChildren();t[i]=1===Object.keys(s).length?s[Y]:new de([],s),this.consumeOptional("//")}return t}peekStartsWith(n){return this.remaining.startsWith(n)}consumeOptional(n){return!!this.peekStartsWith(n)&&(this.remaining=this.remaining.substring(n.length),!0)}capture(n){if(!this.consumeOptional(n))throw new M(4011,!1)}}function dE(e){return e.segments.length>0?new de([],{[Y]:e}):e}function fE(e){const n={};for(const r of Object.keys(e.children)){const i=fE(e.children[r]);if(r===Y&&0===i.segments.length&&i.hasChildren())for(const[s,a]of Object.entries(i.children))n[s]=a;else(i.segments.length>0||i.hasChildren())&&(n[r]=i)}return function n3(e){if(1===e.numberOfChildren&&e.children[Y]){const n=e.children[Y];return new de(e.segments.concat(n.segments),n.children)}return e}(new de(e.segments,n))}function Hr(e){return e instanceof oi}function hE(e){let n;const o=dE(function t(i){const s={};for(const l of i.children){const c=t(l);s[l.outlet]=c}const a=new de(i.url,s);return i===e&&(n=a),a}(e.root));return n??o}function pE(e,n,t,r){let o=e;for(;o.parent;)o=o.parent;if(0===n.length)return up(o,o,o,t,r);const i=function o3(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new mE(!0,0,e);let n=0,t=!1;const r=e.reduce((o,i,s)=>{if("object"==typeof i&&null!=i){if(i.outlets){const a={};return Object.entries(i.outlets).forEach(([l,c])=>{a[l]="string"==typeof c?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return"string"!=typeof i?[...o,i]:0===s?(i.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?t=!0:".."===a?n++:""!=a&&o.push(a))}),o):[...o,i]},[]);return new mE(t,n,r)}(n);if(i.toRoot())return up(o,o,new de([],{}),t,r);const s=function i3(e,n,t){if(e.isAbsolute)return new wc(n,!0,0);if(!t)return new wc(n,!1,NaN);if(null===t.parent)return new wc(t,!0,0);const r=Dc(e.commands[0])?0:1;return function s3(e,n,t){let r=e,o=n,i=t;for(;i>o;){if(i-=o,r=r.parent,!r)throw new M(4005,!1);o=r.segments.length}return new wc(r,!1,o-i)}(t,t.segments.length-1+r,e.numberOfDoubleDots)}(i,o,e),a=s.processChildren?$s(s.segmentGroup,s.index,i.commands):vE(s.segmentGroup,s.index,i.commands);return up(o,s.segmentGroup,a,t,r)}function Dc(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function Bs(e){return"object"==typeof e&&null!=e&&e.outlets}function up(e,n,t,r,o){let s,i={};r&&Object.entries(r).forEach(([l,c])=>{i[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`}),s=e===n?t:gE(e,n,t);const a=dE(fE(s));return new oi(a,i,o)}function gE(e,n,t){const r={};return Object.entries(e.children).forEach(([o,i])=>{r[o]=i===n?t:gE(i,n,t)}),new de(e.segments,r)}class mE{constructor(n,t,r){if(this.isAbsolute=n,this.numberOfDoubleDots=t,this.commands=r,n&&r.length>0&&Dc(r[0]))throw new M(4003,!1);const o=r.find(Bs);if(o&&o!==nE(r))throw new M(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wc{constructor(n,t,r){this.segmentGroup=n,this.processChildren=t,this.index=r}}function vE(e,n,t){if(e||(e=new de([],{})),0===e.segments.length&&e.hasChildren())return $s(e,n,t);const r=function l3(e,n,t){let r=0,o=n;const i={match:!1,pathIndex:0,commandIndex:0};for(;o=t.length)return i;const s=e.segments[o],a=t[r];if(Bs(a))break;const l=`${a}`,c=r0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!_E(l,c,s))return i;r+=2}else{if(!_E(l,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(e,n,t),o=t.slice(r.commandIndex);if(r.match&&r.pathIndexi!==Y)&&e.children[Y]&&1===e.numberOfChildren&&0===e.children[Y].segments.length){const i=$s(e.children[Y],n,t);return new de(e.segments,i.children)}return Object.entries(r).forEach(([i,s])=>{"string"==typeof s&&(s=[s]),null!==s&&(o[i]=vE(e.children[i],n,s))}),Object.entries(e.children).forEach(([i,s])=>{void 0===r[i]&&(o[i]=s)}),new de(e.segments,o)}}function dp(e,n,t){const r=e.segments.slice(0,n);let o=0;for(;o{"string"==typeof r&&(r=[r]),null!==r&&(n[t]=dp(new de([],{}),0,r))}),n}function yE(e){const n={};return Object.entries(e).forEach(([t,r])=>n[t]=`${r}`),n}function _E(e,n,t){return e==t.path&&wn(n,t.parameters)}const Gs="imperative";class bn{constructor(n,t){this.id=n,this.url=t}}class bc extends bn{constructor(n,t,r="imperative",o=null){super(n,t),this.type=0,this.navigationTrigger=r,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class En extends bn{constructor(n,t,r){super(n,t),this.urlAfterRedirects=r,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class si extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class ai extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=16}}class Ec extends bn{constructor(n,t,r,o){super(n,t),this.error=r,this.target=o,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class CE extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class u3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class d3 extends bn{constructor(n,t,r,o,i){super(n,t),this.urlAfterRedirects=r,this.state=o,this.shouldActivate=i,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class f3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class h3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class p3{constructor(n){this.route=n,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class g3{constructor(n){this.route=n,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class m3{constructor(n){this.snapshot=n,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class v3{constructor(n){this.snapshot=n,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class y3{constructor(n){this.snapshot=n,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _3{constructor(n){this.snapshot=n,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class DE{constructor(n,t,r){this.routerEvent=n,this.position=t,this.anchor=r,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class fp{}class hp{constructor(n){this.url=n}}class C3{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new zs,this.attachRef=null}}let zs=(()=>{class e{constructor(){this.contexts=new Map}onChildOutletCreated(t,r){const o=this.getOrCreateContext(t);o.outlet=r,this.contexts.set(t,o)}onChildOutletDestroyed(t){const r=this.getContext(t);r&&(r.outlet=null,r.attachRef=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let r=this.getContext(t);return r||(r=new C3,this.contexts.set(t,r)),r}getContext(t){return this.contexts.get(t)||null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class wE{constructor(n){this._root=n}get root(){return this._root.value}parent(n){const t=this.pathFromRoot(n);return t.length>1?t[t.length-2]:null}children(n){const t=pp(n,this._root);return t?t.children.map(r=>r.value):[]}firstChild(n){const t=pp(n,this._root);return t&&t.children.length>0?t.children[0].value:null}siblings(n){const t=gp(n,this._root);return t.length<2?[]:t[t.length-2].children.map(o=>o.value).filter(o=>o!==n)}pathFromRoot(n){return gp(n,this._root).map(t=>t.value)}}function pp(e,n){if(e===n.value)return n;for(const t of n.children){const r=pp(e,t);if(r)return r}return null}function gp(e,n){if(e===n.value)return[n];for(const t of n.children){const r=gp(e,t);if(r.length)return r.unshift(n),r}return[]}class on{constructor(n,t){this.value=n,this.children=t}toString(){return`TreeNode(${this.value})`}}function li(e){const n={};return e&&e.children.forEach(t=>n[t.value.outlet]=t),n}class bE extends wE{constructor(n,t){super(n),this.snapshot=t,yp(this,n)}toString(){return this.snapshot.toString()}}function EE(e,n){const t=function D3(e,n){const s=new vp([],{},{},"",{},Y,n,null,{});return new IE("",new on(s,[]))}(0,n),r=new kt([new Hs("",{})]),o=new kt({}),i=new kt({}),s=new kt({}),a=new kt(""),l=new Ur(r,o,s,a,i,Y,n,t.root);return l.snapshot=t.root,new bE(new on(l,[]),t)}class Ur{constructor(n,t,r,o,i,s,a,l){this.urlSubject=n,this.paramsSubject=t,this.queryParamsSubject=r,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(K(c=>c[js]))??F(void 0),this.url=n,this.params=t,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._paramMap=this.params.pipe(K(n=>ri(n)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(n=>ri(n)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function mp(e,n,t="emptyOnly"){let r;const{routeConfig:o}=e;return r=null===n||"always"!==t&&""!==o?.path&&(n.component||n.routeConfig?.loadComponent)?{params:e.params,data:e.data,resolve:{...e.data,...e._resolvedData??{}}}:{params:{...n.params,...e.params},data:{...n.data,...e.data},resolve:{...e.data,...n.data,...o?.data,...e._resolvedData}},o&&SE(o)&&(r.resolve[js]=o.title),r}class vp{get title(){return this.data?.[js]}constructor(n,t,r,o,i,s,a,l,c){this.url=n,this.params=t,this.queryParams=r,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=ri(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ri(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(r=>r.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class IE extends wE{constructor(n,t){super(t),this.url=n,yp(this,t)}toString(){return ME(this._root)}}function yp(e,n){n.value._routerState=e,n.children.forEach(t=>yp(e,t))}function ME(e){const n=e.children.length>0?` { ${e.children.map(ME).join(", ")} } `:"";return`${e.value}${n}`}function _p(e){if(e.snapshot){const n=e.snapshot,t=e._futureSnapshot;e.snapshot=t,wn(n.queryParams,t.queryParams)||e.queryParamsSubject.next(t.queryParams),n.fragment!==t.fragment&&e.fragmentSubject.next(t.fragment),wn(n.params,t.params)||e.paramsSubject.next(t.params),function VV(e,n){if(e.length!==n.length)return!1;for(let t=0;twn(t.parameters,n[r].parameters))}(e.url,n.url);return t&&!(!e.parent!=!n.parent)&&(!e.parent||Cp(e.parent,n.parent))}function SE(e){return"string"==typeof e.title||null===e.title}let Dp=(()=>{class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=Y,this.activateEvents=new xe,this.deactivateEvents=new xe,this.attachEvents=new xe,this.detachEvents=new xe,this.parentContexts=A(zs),this.location=A(en),this.changeDetector=A(ls),this.environmentInjector=A(At),this.inputBinder=A(Ic,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(t){if(t.name){const{firstChange:r,previousValue:o}=t.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(t){return this.parentContexts.getContext(t)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const t=this.parentContexts.getContext(this.name);t?.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new M(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new M(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new M(4012,!1);this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(t.instance),t}attach(t,r){this.activated=t,this._activatedRoute=r,this.location.insert(t.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(t.instance)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,r){if(this.isActivated)throw new M(4013,!1);this._activatedRoute=t;const o=this.location,s=t.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,l=new w3(t,a,o.injector);this.activated=o.createComponent(s,{index:o.length,injector:l,environmentInjector:r??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Lt]})}return e})();class w3{constructor(n,t,r){this.route=n,this.childContexts=t,this.parent=r}get(n,t){return n===Ur?this.route:n===zs?this.childContexts:this.parent.get(n,t)}}const Ic=new N("");let TE=(()=>{class e{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(t){this.unsubscribeFromRouteData(t),this.subscribeToRouteData(t)}unsubscribeFromRouteData(t){this.outletDataSubscriptions.get(t)?.unsubscribe(),this.outletDataSubscriptions.delete(t)}subscribeToRouteData(t){const{activatedRoute:r}=t,o=Zh([r.queryParams,r.params,r.data]).pipe(Ft(([i,s,a],l)=>(a={...i,...s,...a},0===l?F(a):Promise.resolve(a)))).subscribe(i=>{if(!t.isActivated||!t.activatedComponentRef||t.activatedRoute!==r||null===r.component)return void this.unsubscribeFromRouteData(t);const s=function ZF(e){const n=Q(e);if(!n)return null;const t=new cs(n);return{get selector(){return t.selector},get type(){return t.componentType},get inputs(){return t.inputs},get outputs(){return t.outputs},get ngContentSelectors(){return t.ngContentSelectors},get isStandalone(){return n.standalone},get isSignal(){return n.signals}}}(r.component);if(s)for(const{templateName:a}of s.inputs)t.activatedComponentRef.setInput(a,i[a]);else this.unsubscribeFromRouteData(t)});this.outletDataSubscriptions.set(t,o)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function qs(e,n,t){if(t&&e.shouldReuseRoute(n.value,t.value.snapshot)){const r=t.value;r._futureSnapshot=n.value;const o=function E3(e,n,t){return n.children.map(r=>{for(const o of t.children)if(e.shouldReuseRoute(r.value,o.value.snapshot))return qs(e,r,o);return qs(e,r)})}(e,n,t);return new on(r,o)}{if(e.shouldAttach(n.value)){const i=e.retrieve(n.value);if(null!==i){const s=i.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>qs(e,a)),s}}const r=function I3(e){return new Ur(new kt(e.url),new kt(e.params),new kt(e.queryParams),new kt(e.fragment),new kt(e.data),e.outlet,e.component,e)}(n.value),o=n.children.map(i=>qs(e,i));return new on(r,o)}}const wp="ngNavigationCancelingError";function AE(e,n){const{redirectTo:t,navigationBehaviorOptions:r}=Hr(n)?{redirectTo:n,navigationBehaviorOptions:void 0}:n,o=xE(!1,0,n);return o.url=t,o.navigationBehaviorOptions=r,o}function xE(e,n,t){const r=new Error("NavigationCancelingError: "+(e||""));return r[wp]=!0,r.cancellationCode=n,t&&(r.url=t),r}function NE(e){return e&&e[wp]}let RE=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["ng-component"]],standalone:!0,features:[Ot],decls:1,vars:0,template:function(r,o){1&r&&y(0,"router-outlet")},dependencies:[Dp],encapsulation:2})}return e})();function bp(e){const n=e.children&&e.children.map(bp),t=n?{...e,children:n}:{...e};return!t.component&&!t.loadComponent&&(n||t.loadChildren)&&t.outlet&&t.outlet!==Y&&(t.component=RE),t}function In(e){return e.outlet||Y}function Ws(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let n=e.parent;n;n=n.parent){const t=n.routeConfig;if(t?._loadedInjector)return t._loadedInjector;if(t?._injector)return t._injector}return null}class O3{constructor(n,t,r,o,i){this.routeReuseStrategy=n,this.futureState=t,this.currState=r,this.forwardEvent=o,this.inputBindingEnabled=i}activate(n){const t=this.futureState._root,r=this.currState?this.currState._root:null;this.deactivateChildRoutes(t,r,n),_p(this.futureState.root),this.activateChildRoutes(t,r,n)}deactivateChildRoutes(n,t,r){const o=li(t);n.children.forEach(i=>{const s=i.value.outlet;this.deactivateRoutes(i,o[s],r),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,r)})}deactivateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(o===i)if(o.component){const s=r.getContext(o.outlet);s&&this.deactivateChildRoutes(n,t,s.children)}else this.deactivateChildRoutes(n,t,r);else i&&this.deactivateRouteAndItsChildren(t,r)}deactivateRouteAndItsChildren(n,t){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,t):this.deactivateRouteAndOutlet(n,t)}detachAndStoreRouteSubtree(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=li(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);if(r&&r.outlet){const s=r.outlet.detach(),a=r.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=li(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);r&&(r.outlet&&(r.outlet.deactivate(),r.children.onOutletDeactivated()),r.attachRef=null,r.route=null)}activateChildRoutes(n,t,r){const o=li(t);n.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],r),this.forwardEvent(new _3(i.value.snapshot))}),n.children.length&&this.forwardEvent(new v3(n.value.snapshot))}activateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(_p(o),o===i)if(o.component){const s=r.getOrCreateContext(o.outlet);this.activateChildRoutes(n,t,s.children)}else this.activateChildRoutes(n,t,r);else if(o.component){const s=r.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){const 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),_p(a.route.value),this.activateChildRoutes(n,null,s.children)}else{const a=Ws(o.snapshot);s.attachRef=null,s.route=o,s.injector=a,s.outlet&&s.outlet.activateWith(o,s.injector),this.activateChildRoutes(n,null,s.children)}}else this.activateChildRoutes(n,null,r)}}class OE{constructor(n){this.path=n,this.route=this.path[this.path.length-1]}}class Mc{constructor(n,t){this.component=n,this.route=t}}function P3(e,n,t){const r=e._root;return Zs(r,n?n._root:null,t,[r.value])}function ci(e,n){const t=Symbol(),r=n.get(e,t);return r===t?"function"!=typeof e||function X1(e){return null!==pa(e)}(e)?n.get(e):e:r}function Zs(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=li(n);return e.children.forEach(s=>{(function F3(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=e.value,s=n?n.value:null,a=t?t.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){const l=function L3(e,n,t){if("function"==typeof t)return t(e,n);switch(t){case"pathParamsChange":return!jr(e.url,n.url);case"pathParamsOrQueryParamsChange":return!jr(e.url,n.url)||!wn(e.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!Cp(e,n)||!wn(e.queryParams,n.queryParams);default:return!Cp(e,n)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new OE(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Zs(e,n,i.component?a?a.children:null:t,r,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Mc(a.outlet.component,s))}else s&&Ys(n,a,o),o.canActivateChecks.push(new OE(r)),Zs(e,null,i.component?a?a.children:null:t,r,o)})(s,i[s.value.outlet],t,r.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>Ys(a,t.getContext(s),o)),o}function Ys(e,n,t){const r=li(e),o=e.value;Object.entries(r).forEach(([i,s])=>{Ys(s,o.component?n?n.children.getContext(i):null:n,t)}),t.canDeactivateChecks.push(new Mc(o.component&&n&&n.outlet&&n.outlet.isActivated?n.outlet.component:null,o))}function Qs(e){return"function"==typeof e}function PE(e){return e instanceof hc||"EmptyError"===e?.name}const Sc=Symbol("INITIAL_VALUE");function ui(){return Ft(e=>Zh(e.map(n=>n.pipe(_r(1),function KL(...e){const n=Ei(e);return $e((t,r)=>{(n?Yh(e,t,n):Yh(e,t)).subscribe(r)})}(Sc)))).pipe(K(n=>{for(const t of n)if(!0!==t){if(t===Sc)return Sc;if(!1===t||t instanceof oi)return t}return!0}),rn(n=>n!==Sc),_r(1)))}function kE(e){return function JM(...e){return Dg(e)}(rt(n=>{if(Hr(n))throw AE(0,n)}),K(n=>!0===n))}class Ep{constructor(n){this.segmentGroup=n||null}}class Ip extends Error{constructor(n){super(),this.urlTree=n}}function di(e){return pc(new Ep(e))}class rj{constructor(n,t){this.urlSerializer=n,this.urlTree=t}noMatchError(n){return new M(4002,!1)}lineralizeSegments(n,t){let r=[],o=t.root;for(;;){if(r=r.concat(o.segments),0===o.numberOfChildren)return F(r);if(o.numberOfChildren>1||!o.children[Y])return pc(new M(4e3,!1));o=o.children[Y]}}applyRedirectCommands(n,t,r){const o=this.applyRedirectCreateUrlTree(t,this.urlSerializer.parse(t),n,r);if(t.startsWith("/"))throw new Ip(o);return o}applyRedirectCreateUrlTree(n,t,r,o){const i=this.createSegmentGroup(n,t.root,r,o);return new oi(i,this.createQueryParams(t.queryParams,this.urlTree.queryParams),t.fragment)}createQueryParams(n,t){const r={};return Object.entries(n).forEach(([o,i])=>{if("string"==typeof i&&i.startsWith(":")){const a=i.substring(1);r[o]=t[a]}else r[o]=i}),r}createSegmentGroup(n,t,r,o){const i=this.createSegments(n,t.segments,r,o);let s={};return Object.entries(t.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(n,l,r,o)}),new de(i,s)}createSegments(n,t,r,o){return t.map(i=>i.path.startsWith(":")?this.findPosParam(n,i,o):this.findOrReturn(i,r))}findPosParam(n,t,r){const o=r[t.path.substring(1)];if(!o)throw new M(4001,!1);return o}findOrReturn(n,t){let r=0;for(const o of t){if(o.path===n.path)return t.splice(r),o;r++}return n}}const Mp={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function oj(e,n,t,r,o){const i=Sp(e,n,t);return i.matched?(r=function S3(e,n){return e.providers&&!e._injector&&(e._injector=Xf(e.providers,n,`Route: ${e.path}`)),e._injector??n}(n,r),function ej(e,n,t,r){const o=n.canMatch;return o&&0!==o.length?F(o.map(s=>{const a=ci(s,e);return ur(function $3(e){return e&&Qs(e.canMatch)}(a)?a.canMatch(n,t):e.runInContext(()=>a(n,t)))})).pipe(ui(),kE()):F(!0)}(r,n,t).pipe(K(s=>!0===s?i:{...Mp}))):F(i)}function Sp(e,n,t){if(""===n.path)return"full"===n.pathMatch&&(e.hasChildren()||t.length>0)?{...Mp}:{matched:!0,consumedSegments:[],remainingSegments:t,parameters:{},positionalParamSegments:{}};const o=(n.matcher||LV)(t,e,n);if(!o)return{...Mp};const i={};Object.entries(o.posParams??{}).forEach(([a,l])=>{i[a]=l.path});const s=o.consumed.length>0?{...i,...o.consumed[o.consumed.length-1].parameters}:i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:t.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function FE(e,n,t,r){return t.length>0&&function aj(e,n,t){return t.some(r=>Tc(e,n,r)&&In(r)!==Y)}(e,t,r)?{segmentGroup:new de(n,sj(r,new de(t,e.children))),slicedSegments:[]}:0===t.length&&function lj(e,n,t){return t.some(r=>Tc(e,n,r))}(e,t,r)?{segmentGroup:new de(e.segments,ij(e,0,t,r,e.children)),slicedSegments:t}:{segmentGroup:new de(e.segments,e.children),slicedSegments:t}}function ij(e,n,t,r,o){const i={};for(const s of r)if(Tc(e,t,s)&&!o[In(s)]){const a=new de([],{});i[In(s)]=a}return{...o,...i}}function sj(e,n){const t={};t[Y]=n;for(const r of e)if(""===r.path&&In(r)!==Y){const o=new de([],{});t[In(r)]=o}return t}function Tc(e,n,t){return(!(e.hasChildren()||n.length>0)||"full"!==t.pathMatch)&&""===t.path}class dj{}class pj{constructor(n,t,r,o,i,s,a){this.injector=n,this.configLoader=t,this.rootComponentType=r,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new rj(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(n){return new M(4002,!1)}recognize(){const n=FE(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(n).pipe(K(t=>{const r=new vp([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},Y,this.rootComponentType,null,{}),o=new on(r,t),i=new IE("",o),s=function r3(e,n,t=null,r=null){return pE(hE(e),n,t,r)}(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(n){return this.processSegmentGroup(this.injector,this.config,n,Y).pipe(ni(r=>{if(r instanceof Ip)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof Ep?this.noMatchError(r):r}))}inheritParamsAndData(n,t){const r=n.value,o=mp(r,t,this.paramsInheritanceStrategy);r.params=Object.freeze(o.params),r.data=Object.freeze(o.data),n.children.forEach(i=>this.inheritParamsAndData(i,r))}processSegmentGroup(n,t,r,o){return 0===r.segments.length&&r.hasChildren()?this.processChildren(n,t,r):this.processSegment(n,t,r,r.segments,o,!0).pipe(K(i=>i instanceof on?[i]:[]))}processChildren(n,t,r){const o=[];for(const i of Object.keys(r.children))"primary"===i?o.unshift(i):o.push(i);return Oe(o).pipe(ti(i=>{const s=r.children[i],a=function N3(e,n){const t=e.filter(r=>In(r)===n);return t.push(...e.filter(r=>In(r)!==n)),t}(t,i);return this.processSegmentGroup(n,a,s,i)}),function nV(e,n){return $e(function tV(e,n,t,r,o){return(i,s)=>{let a=t,l=n,c=0;i.subscribe(Ve(s,u=>{const d=c++;l=a?e(l,u,d):(a=!0,u),r&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}(e,n,arguments.length>=2,!0))}((i,s)=>(i.push(...s),i)),gc(null),function rV(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,Xh(1),t?gc(n):Vb(()=>new hc))}(),Xe(i=>{if(null===i)return di(r);const s=LE(i);return function gj(e){e.sort((n,t)=>n.value.outlet===Y?-1:t.value.outlet===Y?1:n.value.outlet.localeCompare(t.value.outlet))}(s),F(s)}))}processSegment(n,t,r,o,i,s){return Oe(t).pipe(ti(a=>this.processSegmentAgainstRoute(a._injector??n,t,a,r,o,i,s).pipe(ni(l=>{if(l instanceof Ep)return F(null);throw l}))),Vr(a=>!!a),ni(a=>{if(PE(a))return function uj(e,n,t){return 0===n.length&&!e.children[t]}(r,o,i)?F(new dj):di(r);throw a}))}processSegmentAgainstRoute(n,t,r,o,i,s,a){return function cj(e,n,t,r){return!!(In(e)===r||r!==Y&&Tc(n,t,e))&&("**"===e.path||Sp(n,e,t).matched)}(r,o,i,s)?void 0===r.redirectTo?this.matchSegmentAgainstRoute(n,o,r,i,s):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(n,o,t,r,i,s):di(o):di(o)}expandSegmentAgainstRouteUsingRedirect(n,t,r,o,i,s){const{matched:a,consumedSegments:l,positionalParamSegments:c,remainingSegments:u}="**"===o.path?VE(i):Sp(t,o,i);if(!a)return di(t);o.redirectTo.startsWith("/")&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>31&&(this.allowRedirects=!1));const d=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,c);return this.applyRedirects.lineralizeSegments(o,d).pipe(Xe(g=>this.processSegment(n,r,t,g.concat(u),s,!1)))}matchSegmentAgainstRoute(n,t,r,o,i){let s;return"**"===r.path?(s=F(VE(o)),t.children={}):s=oj(t,r,o,n),s.pipe(Ft(a=>a.matched?this.getChildConfig(n=r._injector??n,r,o).pipe(Ft(({routes:l})=>{const c=r._loadedInjector??n,{consumedSegments:u,remainingSegments:d,parameters:g}=a,m=new vp(u,g,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,function vj(e){return e.data||{}}(r),In(r),r.component??r._loadedComponent??null,r,function yj(e){return e.resolve||{}}(r)),{segmentGroup:v,slicedSegments:_}=FE(t,u,d,l);if(0===_.length&&v.hasChildren())return this.processChildren(c,l,v).pipe(K(I=>null===I?null:new on(m,I)));if(0===l.length&&0===_.length)return F(new on(m,[]));const D=In(r)===i;return this.processSegment(c,l,v,_,D?Y:i,!0).pipe(K(I=>new on(m,I instanceof on?[I]:[])))})):di(t)))}getChildConfig(n,t,r){return t.children?F({routes:t.children,injector:n}):t.loadChildren?void 0!==t._loadedRoutes?F({routes:t._loadedRoutes,injector:t._loadedInjector}):function K3(e,n,t,r){const o=n.canLoad;return void 0===o||0===o.length?F(!0):F(o.map(s=>{const a=ci(s,e);return ur(function j3(e){return e&&Qs(e.canLoad)}(a)?a.canLoad(n,t):e.runInContext(()=>a(n,t)))})).pipe(ui(),kE())}(n,t,r).pipe(Xe(o=>o?this.configLoader.loadChildren(n,t).pipe(rt(i=>{t._loadedRoutes=i.routes,t._loadedInjector=i.injector})):function nj(e){return pc(xE(!1,3))}())):F({routes:[],injector:n})}}function mj(e){const n=e.value.routeConfig;return n&&""===n.path}function LE(e){const n=[],t=new Set;for(const r of e){if(!mj(r)){n.push(r);continue}const o=n.find(i=>r.value.routeConfig===i.value.routeConfig);void 0!==o?(o.children.push(...r.children),t.add(o)):n.push(r)}for(const r of t){const o=LE(r.children);n.push(new on(r.value,o))}return n.filter(r=>!t.has(r))}function VE(e){return{matched:!0,parameters:e.length>0?nE(e).parameters:{},consumedSegments:e,remainingSegments:[],positionalParamSegments:{}}}function Cj(e,n){return Xe(t=>{const{targetSnapshot:r,guards:{canActivateChecks:o}}=t;if(!o.length)return F(t);const i=o.map(c=>c.route),s=new Set(i),a=jE(i[0].parent).slice(1);let l=0;return Oe(a).pipe(ti(c=>s.has(c)?function Dj(e,n,t,r){const o=e.routeConfig,i=e._resolve;return void 0!==o?.title&&!SE(o)&&(i[js]=o.title),function wj(e,n,t,r){const o=sp(e);if(0===o.length)return F({});const i={};return Oe(o).pipe(Xe(s=>function bj(e,n,t,r){const o=Ws(n)??r,i=ci(e,o);return ur(i.resolve?i.resolve(n,t):o.runInContext(()=>i(n,t)))}(e[s],n,t,r).pipe(Vr(),rt(a=>{i[s]=a}))),Xh(1),function oV(e){return K(()=>e)}(i),ni(s=>PE(s)?an:pc(s)))}(i,e,n,r).pipe(K(s=>(e._resolvedData=s,e.data=mp(e,e.parent,t).resolve,null)))}(c,r,e,n):(c.data=mp(c,c.parent,e).resolve,F(void 0))),rt(()=>l++),Xh(1),Xe(c=>l===a.length?F(t):an))})}function jE(e){const n=e.children.map(t=>jE(t)).flat();return[e,...n]}function Tp(e){return Ft(n=>{const t=e(n);return t?Oe(t).pipe(K(()=>n)):F(n)})}let HE=(()=>{class e{buildTitle(t){let r,o=t.root;for(;void 0!==o;)r=this.getResolvedTitleForRoute(o)??r,o=o.children.find(i=>i.outlet===Y);return r}getResolvedTitleForRoute(t){return t.data[js]}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Ej),providedIn:"root"})}return e})(),Ej=(()=>{class e extends HE{constructor(t){super(),this.title=t}updateTitle(t){const r=this.buildTitle(t);void 0!==r&&this.title.setTitle(r)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Xb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const fi=new N("",{providedIn:"root",factory:()=>({})}),hi=new N("ROUTES");let Ap=(()=>{class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=A(ww)}loadComponent(t){if(this.componentLoaders.get(t))return this.componentLoaders.get(t);if(t._loadedComponent)return F(t._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(t);const r=ur(t.loadComponent()).pipe(K(UE),rt(i=>{this.onLoadEndListener&&this.onLoadEndListener(t),t._loadedComponent=i}),Ls(()=>{this.componentLoaders.delete(t)})),o=new Lb(r,()=>new zt).pipe(Qh());return this.componentLoaders.set(t,o),o}loadChildren(t,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return F({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);const i=function Ij(e,n,t,r){return ur(e.loadChildren()).pipe(K(UE),Xe(o=>o instanceof FD||Array.isArray(o)?F(o):Oe(n.compileModuleAsync(o))),K(o=>{r&&r(e);let i,s,a=!1;return Array.isArray(o)?(s=o,!0):(i=o.create(t).injector,s=i.get(hi,[],{optional:!0,self:!0}).flat()),{routes:s.map(bp),injector:i}}))}(r,this.compiler,t,this.onLoadEndListener).pipe(Ls(()=>{this.childrenLoaders.delete(r)})),s=new Lb(i,()=>new zt).pipe(Qh());return this.childrenLoaders.set(r,s),s}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function UE(e){return function Mj(e){return e&&"object"==typeof e&&"default"in e}(e)?e.default:e}let xp=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Sj),providedIn:"root"})}return e})(),Sj=(()=>{class e{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const BE=new N(""),$E=new N("");function Tj(e,n,t){const r=e.get($E),o=e.get(ft);return e.get(ae).runOutsideAngular(()=>{if(!o.startViewTransition||r.skipNextTransition)return r.skipNextTransition=!1,Promise.resolve();let i;const s=new Promise(c=>{i=c}),a=o.startViewTransition(()=>(i(),function Aj(e){return new Promise(n=>{i_(n,{injector:e})})}(e))),{onViewTransitionCreated:l}=r;return l&&function GS(e,n){e instanceof Mr&&e.assertNotDestroyed();const r=Yn(e),o=mt(void 0);try{return n()}finally{Yn(r),mt(o)}}(e,()=>l({transition:a,from:n,to:t})),s})}let Ac=(()=>{class e{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new zt,this.transitionAbortSubject=new zt,this.configLoader=A(Ap),this.environmentInjector=A(At),this.urlSerializer=A(ii),this.rootContexts=A(zs),this.location=A(Os),this.inputBindingEnabled=null!==A(Ic,{optional:!0}),this.titleStrategy=A(HE),this.options=A(fi,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=A(xp),this.createViewTransition=A(BE,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>F(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=o=>this.events.next(new g3(o)),this.configLoader.onLoadStartListener=o=>this.events.next(new p3(o))}complete(){this.transitions?.complete()}handleNavigationRequest(t){const r=++this.navigationId;this.transitions?.next({...this.transitions.value,...t,id:r})}setupNavigations(t,r,o){return this.transitions=new kt({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:Gs,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(rn(i=>0!==i.id),K(i=>({...i,extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl)})),Ft(i=>{this.currentTransition=i;let s=!1,a=!1;return F(i).pipe(rt(l=>{this.currentNavigation={id:l.id,initialUrl:l.rawUrl,extractedUrl:l.extractedUrl,trigger:l.source,extras:l.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),Ft(l=>{const c=!t.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl();if(!c&&"reload"!==(l.extras.onSameUrlNavigation??t.onSameUrlNavigation)){const d="";return this.events.next(new ai(l.id,this.urlSerializer.serialize(l.rawUrl),d,0)),l.resolve(null),an}if(this.urlHandlingStrategy.shouldProcessUrl(l.rawUrl))return F(l).pipe(Ft(d=>{const g=this.transitions?.getValue();return this.events.next(new bc(d.id,this.urlSerializer.serialize(d.extractedUrl),d.source,d.restoredState)),g!==this.transitions?.getValue()?an:Promise.resolve(d)}),function _j(e,n,t,r,o,i){return Xe(s=>function fj(e,n,t,r,o,i,s="emptyOnly"){return new pj(e,n,t,r,o,s,i).recognize()}(e,n,t,r,s.extractedUrl,o,i).pipe(K(({state:a,tree:l})=>({...s,targetSnapshot:a,urlAfterRedirects:l}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,t.config,this.urlSerializer,this.paramsInheritanceStrategy),rt(d=>{i.targetSnapshot=d.targetSnapshot,i.urlAfterRedirects=d.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:d.urlAfterRedirects};const g=new CE(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(g)}));if(c&&this.urlHandlingStrategy.shouldProcessUrl(l.currentRawUrl)){const{id:d,extractedUrl:g,source:m,restoredState:v,extras:_}=l,D=new bc(d,this.urlSerializer.serialize(g),m,v);this.events.next(D);const I=EE(0,this.rootComponentType).snapshot;return this.currentTransition=i={...l,targetSnapshot:I,urlAfterRedirects:g,extras:{..._,skipLocationChange:!1,replaceUrl:!1}},this.currentNavigation.finalUrl=g,F(i)}{const d="";return this.events.next(new ai(l.id,this.urlSerializer.serialize(l.extractedUrl),d,1)),l.resolve(null),an}}),rt(l=>{const c=new u3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot);this.events.next(c)}),K(l=>(this.currentTransition=i={...l,guards:P3(l.targetSnapshot,l.currentSnapshot,this.rootContexts)},i)),function z3(e,n){return Xe(t=>{const{targetSnapshot:r,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=t;return 0===s.length&&0===i.length?F({...t,guardsResult:!0}):function q3(e,n,t,r){return Oe(e).pipe(Xe(o=>function J3(e,n,t,r,o){const i=n&&n.routeConfig?n.routeConfig.canDeactivate:null;return i&&0!==i.length?F(i.map(a=>{const l=Ws(n)??o,c=ci(a,l);return ur(function B3(e){return e&&Qs(e.canDeactivate)}(c)?c.canDeactivate(e,n,t,r):l.runInContext(()=>c(e,n,t,r))).pipe(Vr())})).pipe(ui()):F(!0)}(o.component,o.route,t,n,r)),Vr(o=>!0!==o,!0))}(s,r,o,e).pipe(Xe(a=>a&&function V3(e){return"boolean"==typeof e}(a)?function W3(e,n,t,r){return Oe(n).pipe(ti(o=>Yh(function Y3(e,n){return null!==e&&n&&n(new m3(e)),F(!0)}(o.route.parent,r),function Z3(e,n){return null!==e&&n&&n(new y3(e)),F(!0)}(o.route,r),function X3(e,n,t){const r=n[n.length-1],i=n.slice(0,n.length-1).reverse().map(s=>function k3(e){const n=e.routeConfig?e.routeConfig.canActivateChild:null;return n&&0!==n.length?{node:e,guards:n}:null}(s)).filter(s=>null!==s).map(s=>Fb(()=>F(s.guards.map(l=>{const c=Ws(s.node)??t,u=ci(l,c);return ur(function U3(e){return e&&Qs(e.canActivateChild)}(u)?u.canActivateChild(r,e):c.runInContext(()=>u(r,e))).pipe(Vr())})).pipe(ui())));return F(i).pipe(ui())}(e,o.path,t),function Q3(e,n,t){const r=n.routeConfig?n.routeConfig.canActivate:null;if(!r||0===r.length)return F(!0);const o=r.map(i=>Fb(()=>{const s=Ws(n)??t,a=ci(i,s);return ur(function H3(e){return e&&Qs(e.canActivate)}(a)?a.canActivate(n,e):s.runInContext(()=>a(n,e))).pipe(Vr())}));return F(o).pipe(ui())}(e,o.route,t))),Vr(o=>!0!==o,!0))}(r,i,e,n):F(a)),K(a=>({...t,guardsResult:a})))})}(this.environmentInjector,l=>this.events.next(l)),rt(l=>{if(i.guardsResult=l.guardsResult,Hr(l.guardsResult))throw AE(0,l.guardsResult);const c=new d3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot,!!l.guardsResult);this.events.next(c)}),rn(l=>!!l.guardsResult||(this.cancelNavigationTransition(l,"",3),!1)),Tp(l=>{if(l.guards.canActivateChecks.length)return F(l).pipe(rt(c=>{const u=new f3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),Ft(c=>{let u=!1;return F(c).pipe(Cj(this.paramsInheritanceStrategy,this.environmentInjector),rt({next:()=>u=!0,complete:()=>{u||this.cancelNavigationTransition(c,"",2)}}))}),rt(c=>{const u=new h3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}))}),Tp(l=>{const c=u=>{const d=[];u.routeConfig?.loadComponent&&!u.routeConfig._loadedComponent&&d.push(this.configLoader.loadComponent(u.routeConfig).pipe(rt(g=>{u.component=g}),K(()=>{})));for(const g of u.children)d.push(...c(g));return d};return Zh(c(l.targetSnapshot.root)).pipe(gc(),_r(1))}),Tp(()=>this.afterPreactivation()),Ft(()=>{const{currentSnapshot:l,targetSnapshot:c}=i,u=this.createViewTransition?.(this.environmentInjector,l.root,c.root);return u?Oe(u).pipe(K(()=>i)):F(i)}),K(l=>{const c=function b3(e,n,t){const r=qs(e,n._root,t?t._root:void 0);return new bE(r,n)}(t.routeReuseStrategy,l.targetSnapshot,l.currentRouterState);return this.currentTransition=i={...l,targetRouterState:c},this.currentNavigation.targetRouterState=c,i}),rt(()=>{this.events.next(new fp)}),((e,n,t,r)=>K(o=>(new O3(n,o.targetRouterState,o.currentRouterState,t,r).activate(e),o)))(this.rootContexts,t.routeReuseStrategy,l=>this.events.next(l),this.inputBindingEnabled),_r(1),rt({next:l=>{s=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new En(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects))),this.titleStrategy?.updateTitle(l.targetRouterState.snapshot),l.resolve(!0)},complete:()=>{s=!0}}),function iV(e){return $e((n,t)=>{qt(e).subscribe(Ve(t,()=>t.complete(),lu)),!t.closed&&n.subscribe(t)})}(this.transitionAbortSubject.pipe(rt(l=>{throw l}))),Ls(()=>{s||a||this.cancelNavigationTransition(i,"",1),this.currentNavigation?.id===i.id&&(this.currentNavigation=null)}),ni(l=>{if(a=!0,NE(l))this.events.next(new si(i.id,this.urlSerializer.serialize(i.extractedUrl),l.message,l.cancellationCode)),function M3(e){return NE(e)&&Hr(e.url)}(l)?this.events.next(new hp(l.url)):i.resolve(!1);else{this.events.next(new Ec(i.id,this.urlSerializer.serialize(i.extractedUrl),l,i.targetSnapshot??void 0));try{i.resolve(t.errorHandler(l))}catch(c){i.reject(c)}}return an}))}))}cancelNavigationTransition(t,r,o){const i=new si(t.id,this.urlSerializer.serialize(t.extractedUrl),r,o);this.events.next(i),t.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#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function xj(e){return e!==Gs}let Nj=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Oj),providedIn:"root"})}return e})();class Rj{shouldDetach(n){return!1}store(n,t){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,t){return n.routeConfig===t.routeConfig}}let Oj=(()=>{class e extends Rj{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),GE=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Pj),providedIn:"root"})}return e})(),Pj=(()=>{class e extends GE{constructor(){super(...arguments),this.location=A(Os),this.urlSerializer=A(ii),this.options=A(fi,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=A(xp),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new oi,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=EE(0,null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(t){return this.location.subscribe(r=>{"popstate"===r.type&&t(r.url,r.state)})}handleRouterEvent(t,r){if(t instanceof bc)this.stateMemento=this.createStateMemento();else if(t instanceof ai)this.rawUrlTree=r.initialUrl;else if(t instanceof CE){if("eager"===this.urlUpdateStrategy&&!r.extras.skipLocationChange){const o=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl);this.setBrowserUrl(o,r)}}else t instanceof fp?(this.currentUrlTree=r.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl),this.routerState=r.targetRouterState,"deferred"===this.urlUpdateStrategy&&(r.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,r))):t instanceof si&&(3===t.code||2===t.code)?this.restoreHistory(r):t instanceof Ec?this.restoreHistory(r,!0):t instanceof En&&(this.lastSuccessfulId=t.id,this.currentPageId=this.browserPageId)}setBrowserUrl(t,r){const o=this.urlSerializer.serialize(t);if(this.location.isCurrentPathEqualTo(o)||r.extras.replaceUrl){const s={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId)};this.location.replaceState(o,"",s)}else{const i={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId+1)};this.location.go(o,"",i)}}restoreHistory(t,r=!1){if("computed"===this.canceledNavigationResolution){const i=this.currentPageId-this.browserPageId;0!==i?this.location.historyGo(i):this.currentUrlTree===t.finalUrl&&0===i&&(this.resetState(t),this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(r&&this.resetState(t),this.resetUrlToCurrentUrlTree())}resetState(t){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(t,r){return"computed"===this.canceledNavigationResolution?{navigationId:t,\u0275routerPageId:r}:{navigationId:t}}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var Xs=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(Xs||{});function zE(e,n){e.events.pipe(rn(t=>t instanceof En||t instanceof si||t instanceof Ec||t instanceof ai),K(t=>t instanceof En||t instanceof ai?Xs.COMPLETE:t instanceof si&&(0===t.code||1===t.code)?Xs.REDIRECTING:Xs.FAILED),rn(t=>t!==Xs.REDIRECTING),_r(1)).subscribe(()=>{n()})}function kj(e){throw e}const Fj={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Lj={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Bt=(()=>{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=A(Cw),this.stateManager=A(GE),this.options=A(fi,{optional:!0})||{},this.pendingTasks=A($l),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=A(Ac),this.urlSerializer=A(ii),this.location=A(Os),this.urlHandlingStrategy=A(xp),this._events=new zt,this.errorHandler=this.options.errorHandler||kj,this.navigated=!1,this.routeReuseStrategy=A(Nj),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=A(hi,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!A(Ic,{optional:!0}),this.eventsSubscription=new Et,this.isNgZoneEnabled=A(ae)instanceof ae&&ae.isInAngularZone(),this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:t=>{this.console.warn(t)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const t=this.navigationTransitions.events.subscribe(r=>{try{const o=this.navigationTransitions.currentTransition,i=this.navigationTransitions.currentNavigation;if(null!==o&&null!==i)if(this.stateManager.handleRouterEvent(r,i),r instanceof si&&0!==r.code&&1!==r.code)this.navigated=!0;else if(r instanceof En)this.navigated=!0;else if(r instanceof hp){const s=this.urlHandlingStrategy.merge(r.url,o.currentRawUrl),a={skipLocationChange:o.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||xj(o.source)};this.scheduleNavigation(s,Gs,null,a,{resolve:o.resolve,reject:o.reject,promise:o.promise})}(function jj(e){return!(e instanceof fp||e instanceof hp)})(r)&&this._events.next(r)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(t)}resetRootComponentType(t){this.routerState.root.component=t,this.navigationTransitions.rootComponentType=t}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Gs,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription||(this.nonRouterCurrentEntryChangeSubscription=this.stateManager.registerNonRouterCurrentEntryChangeListener((t,r)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(t,"popstate",r)},0)}))}navigateToSyncWithBrowser(t,r,o){const i={replaceUrl:!0},s=o?.navigationId?o:null;if(o){const l={...o};delete l.navigationId,delete l.\u0275routerPageId,0!==Object.keys(l).length&&(i.state=l)}const a=this.parseUrl(t);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(t){this.config=t.map(bp),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(t,r={}){const{relativeTo:o,queryParams:i,fragment:s,queryParamsHandling:a,preserveFragment:l}=r,c=l?this.currentUrlTree.fragment:s;let d,u=null;switch(a){case"merge":u={...this.currentUrlTree.queryParams,...i};break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=i||null}null!==u&&(u=this.removeEmptyProps(u));try{d=hE(o?o.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof t[0]||!t[0].startsWith("/"))&&(t=[]),d=this.currentUrlTree.root}return pE(d,t,u,c??null)}navigateByUrl(t,r={skipLocationChange:!1}){const o=Hr(t)?t:this.parseUrl(t),i=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(i,Gs,null,r)}navigate(t,r={skipLocationChange:!1}){return function Vj(e){for(let n=0;n{const i=t[o];return null!=i&&(r[o]=i),r},{})}scheduleNavigation(t,r,o,i,s){if(this.disposed)return Promise.resolve(!1);let a,l,c;s?(a=s.resolve,l=s.reject,c=s.promise):c=new Promise((d,g)=>{a=d,l=g});const u=this.pendingTasks.add();return zE(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(u))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:t,extras:i,resolve:a,reject:l,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(d=>Promise.reject(d))}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Mn=(()=>{class e{constructor(t,r,o,i,s,a){this.router=t,this.route=r,this.tabIndexAttribute=o,this.renderer=i,this.el=s,this.locationStrategy=a,this.href=null,this.commands=null,this.onChanges=new zt,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const l=s.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===l||"area"===l,this.isAnchorElement?this.subscription=t.events.subscribe(c=>{c instanceof En&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(t){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",t)}ngOnChanges(t){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(t){null!=t?(this.commands=Array.isArray(t)?t:[t],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(t,r,o,i,s){return!!(null===this.urlTree||this.isAnchorElement&&(0!==t||r||o||i||s||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const t=null===this.href?null:function uy(e,n,t){return function cA(e,n){return"src"===n&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===n&&("base"===e||"link"===e)?cy:bo}(n,t)(e)}(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",t)}applyAttributeValue(t,r){const o=this.renderer,i=this.el.nativeElement;null!==r?o.setAttribute(i,t,r):o.removeAttribute(i,t)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Ur),function Pa(e){return function uS(e,n){if("class"===n)return e.classes;if("style"===n)return e.styles;const t=e.attrs;if(t){const r=t.length;let o=0;for(;o{class e{get isActive(){return this._isActive}constructor(t,r,o,i,s){this.router=t,this.element=r,this.renderer=o,this.cdr=i,this.link=s,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new xe,this.routerEventsSubscription=t.events.subscribe(a=>{a instanceof En&&this.update()})}ngAfterContentInit(){F(this.links.changes,F(null)).pipe(Yr()).subscribe(t=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const t=[...this.links.toArray(),this.link].filter(r=>!!r).map(r=>r.onChanges);this.linkInputChangesSubscription=Oe(t).pipe(Yr()).subscribe(r=>{this._isActive!==this.isLinkActive(this.router)(r)&&this.update()})}set routerLinkActive(t){const r=Array.isArray(t)?t:t.split(" ");this.classes=r.filter(o=>!!o)}ngOnChanges(t){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const t=this.hasActiveLinks();this._isActive!==t&&(this._isActive=t,this.cdr.markForCheck(),this.classes.forEach(r=>{t?this.renderer.addClass(this.element.nativeElement,r):this.renderer.removeClass(this.element.nativeElement,r)}),t&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(t))})}isLinkActive(t){const r=function Hj(e){return!!e.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return o=>!!o.urlTree&&t.isActive(o.urlTree,r)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.links.some(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Nt),S(Fn),S(ls),S(Mn,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(r,o,i){if(1&r&&ew(i,Mn,5),2&r){let s;KD(s=function tw(){return function ck(e,n){return e[dn].queries[n].queryList}(b(),Nm())}())&&(o.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Lt]})}return e})();class WE{}let Uj=(()=>{class e{constructor(t,r,o,i,s){this.router=t,this.injector=o,this.preloadingStrategy=i,this.loader=s}setUpPreloading(){this.subscription=this.router.events.pipe(rn(t=>t instanceof En),ti(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(t,r){const o=[];for(const i of r){i.providers&&!i._injector&&(i._injector=Xf(i.providers,t,`Route: ${i.path}`));const s=i._injector??t,a=i._loadedInjector??s;(i.loadChildren&&!i._loadedRoutes&&void 0===i.canLoad||i.loadComponent&&!i._loadedComponent)&&o.push(this.preloadConfig(s,i)),(i.children||i._loadedRoutes)&&o.push(this.processRoutes(a,i.children??i._loadedRoutes))}return Oe(o).pipe(Yr())}preloadConfig(t,r){return this.preloadingStrategy.preload(r,()=>{let o;o=r.loadChildren&&void 0===r.canLoad?this.loader.loadChildren(t,r):F(null);const i=o.pipe(Xe(s=>null===s?F(void 0):(r._loadedRoutes=s.routes,r._loadedInjector=s.injector,this.processRoutes(s.injector??t,s.routes))));return r.loadComponent&&!r._loadedComponent?Oe([i,this.loader.loadComponent(r)]).pipe(Yr()):i})}static#e=this.\u0275fac=function(r){return new(r||e)(k(Bt),k(ww),k(At),k(WE),k(Ap))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Np=new N("");let ZE=(()=>{class e{constructor(t,r,o,i,s={}){this.urlSerializer=t,this.transitions=r,this.viewportScroller=o,this.zone=i,this.options=s,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},s.scrollPositionRestoration=s.scrollPositionRestoration||"disabled",s.anchorScrolling=s.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof bc?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof En?(this.lastId=t.id,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.urlAfterRedirects).fragment)):t instanceof ai&&0===t.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof DE&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,r){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new DE(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,r))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){!function Oy(){throw new Error("invalid")}()};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Sn(e,n){return{\u0275kind:e,\u0275providers:n}}function QE(){const e=A(_t);return n=>{const t=e.get(Xo);if(n!==t.components[0])return;const r=e.get(Bt),o=e.get(XE);1===e.get(Rp)&&r.initialNavigation(),e.get(JE,null,X.Optional)?.setUpPreloading(),e.get(Np,null,X.Optional)?.init(),r.resetRootComponentType(t.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}const XE=new N("",{factory:()=>new zt}),Rp=new N("",{providedIn:"root",factory:()=>1}),JE=new N("");function zj(e){return Sn(0,[{provide:JE,useExisting:Uj},{provide:WE,useExisting:e}])}function Wj(e){return Sn(9,[{provide:BE,useValue:Tj},{provide:$E,useValue:{skipNextTransition:!!e?.skipInitialTransition,...e}}])}const KE=new N("ROUTER_FORROOT_GUARD"),Zj=[Os,{provide:ii,useClass:ap},Bt,zs,{provide:Ur,useFactory:function YE(e){return e.routerState.root},deps:[Bt]},Ap,[]];let eI=(()=>{class e{constructor(t){}static forRoot(t,r){return{ngModule:e,providers:[Zj,[],{provide:hi,multi:!0,useValue:t},{provide:KE,useFactory:Jj,deps:[[Bt,new La,new Va]]},{provide:fi,useValue:r||{}},r?.useHash?{provide:Lr,useClass:KF}:{provide:Lr,useClass:cb},{provide:Np,useFactory:()=>{const e=A(yL),n=A(ae),t=A(fi),r=A(Ac),o=A(ii);return t.scrollOffset&&e.setOffset(t.scrollOffset),new ZE(o,r,e,n,t)}},r?.preloadingStrategy?zj(r.preloadingStrategy).\u0275providers:[],r?.initialNavigation?Kj(r):[],r?.bindToComponentInputs?Sn(8,[TE,{provide:Ic,useExisting:TE}]).\u0275providers:[],r?.enableViewTransitions?Wj().\u0275providers:[],[{provide:tI,useFactory:QE},{provide:mh,multi:!0,useExisting:tI}]]}}static forChild(t){return{ngModule:e,providers:[{provide:hi,multi:!0,useValue:t}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(KE,8))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Jj(e){return"guarded"}function Kj(e){return["disabled"===e.initialNavigation?Sn(3,[{provide:ch,multi:!0,useFactory:()=>{const n=A(Bt);return()=>{n.setUpLocationChangeListener()}}},{provide:Rp,useValue:2}]).\u0275providers:[],"enabledBlocking"===e.initialNavigation?Sn(2,[{provide:Rp,useValue:0},{provide:ch,multi:!0,deps:[_t],useFactory:n=>{const t=n.get(XF,Promise.resolve());return()=>t.then(()=>new Promise(r=>{const o=n.get(Bt),i=n.get(XE);zE(o,()=>{r(!0)}),n.get(Ac).afterPreactivation=()=>(r(!0),i.closed?F(void 0):i),o.initialNavigation()}))}}]).\u0275providers:[]]}const tI=new N(""),tH=()=>["/pro"];let nH=(()=>{class e{constructor(){this.years=(new Date).getFullYear()-2009}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-footer"]],standalone:!0,features:[Ot],decls:94,vars:3,consts:[[1,"container-fluid","mt-5"],[1,"p-5"],[1,"container"],[1,"row"],[1,"col-xs-12","col-md-4","text-center"],["src","resources/portrait_600.jpg","alt","Portrait",1,"img-fluid","img-thumbnail","mb-5","portrait"],[1,"col-xs-12","col-md-8"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[3,"routerLink"],[1,"col-md-3","offset-md-2"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ","target","_blank"],[1,"col-md-4","mt-4","mt-md-0"],["href","https://www.nuget.org/packages/ReportGenerator","target","_blank"],["href","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool","target","_blank"],["href","https://www.nuget.org/packages/ReportGenerator.Core","target","_blank"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col-md-3","mt-4","mt-md-0"],[1,"fa-brands","fa-github"],["href","https://twitter.com/danielpalme","target","_blank"],[1,"fa-brands","fa-twitter"],["href","https://www.palmmedia.de/Privacy","target","_blank"],["href","https://www.palmmedia.de/Imprint","target","_blank"]],template:function(r,o){1&r&&(h(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),y(5,"img",5),p(),h(6,"div",6)(7,"h2"),f(8,"Who's behind"),p(),h(9,"p"),f(10,"My name is Daniel Palme. I'm a software developer from Germany."),p(),h(11,"p"),f(12," Back in 2009 I wanted to create a code coverage report based on "),h(13,"i"),f(14,"PartCover"),p(),f(15," files."),y(16,"br"),f(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),y(18,"br"),f(19),h(20,"i"),f(21,"ReportGenerator"),p(),f(22,". "),p(),h(23,"p"),f(24," You can support the ongoing maintenance by becoming a "),y(25,"i",7),f(26,"\xa0"),h(27,"a",8),f(28,"GitHub sponsor"),p(),f(29," or by buying a "),h(30,"a",9),f(31,"PRO license"),p(),f(32,". "),p()()()()(),h(33,"div",2)(34,"div",3),y(35,"hr"),p()(),h(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),f(42,"GitHub"),p()(),h(43,"a",11),f(44,"Source code"),p(),y(45,"br"),h(46,"a",12),f(47,"Wiki"),p(),y(48,"br"),h(49,"a",13),f(50,"FAQ"),p()(),h(51,"div",14)(52,"p")(53,"b"),f(54,"Download"),p()(),h(55,"i"),f(56,"NuGet"),p(),y(57,"br"),h(58,"a",15),f(59,"ReportGenerator"),p(),y(60,"br"),h(61,"a",16),f(62,"dotnet-reportgenerator-globaltool"),p(),y(63,"br"),h(64,"a",17),f(65,"ReportGenerator.Core"),p(),y(66,"br")(67,"br"),h(68,"i"),f(69,"Integration"),p(),y(70,"br"),h(71,"a",18),f(72,"GitHub actions"),p(),y(73,"br"),h(74,"a",19),f(75,"Azure DevOps"),p()(),h(76,"div",20)(77,"p")(78,"b"),f(79,"Community"),p()(),h(80,"a",11),y(81,"i",21),f(82," GitHub"),p(),y(83,"br"),h(84,"a",22),y(85,"i",23),f(86," Twitter"),p(),y(87,"br")(88,"br"),h(89,"a",24),f(90,"Privacy"),p(),y(91,"br"),h(92,"a",25),f(93,"Imprint"),p()()()()()()),2&r&&(C(19),Hn(" Fast forward ",o.years," years, I'm still maintaining "),C(11),E("routerLink",ee(2,tH)))},dependencies:[Mn],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}.portrait[_ngcontent-%COMP%]{max-height:300px}"]})}return e})();const nI=()=>["/"],rH=e=>({show:e}),pi=()=>["link-active"],rI=()=>({exact:!0}),oH=()=>["/features"],iH=()=>["/getstarted"],sH=()=>["/usage"],aH=()=>["/contact"],lH=()=>["/pro"];let cH=(()=>{class e{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[Ot],decls:42,vars:34,consts:[[1,"mb-5"],[1,"navbar","fixed-top","navbar-expand-sm","navbar-toggleable-sm","navbar-light","bg-white","border-bottom","box-shadow","mb-3"],[1,"container-xxl","flex-wrap","flex-md-nowrap"],[1,"navbar-brand",3,"routerLink"],["src","resources/logo.svg","height","40","alt","Icon",1,"me-2"],[1,"d-sm-none","d-md-none","d-lg-inline","ms-2"],["type","button","data-toggle","collapse","data-target",".navbar-collapse","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse","collapse","d-sm-inline-flex",3,"ngClass"],[1,"navbar-nav","flex-grow"],[1,"nav-item",3,"routerLinkActive","routerLinkActiveOptions"],[1,"nav-link","text-dark",3,"routerLink"],[1,"nav-item",3,"routerLinkActive"],[1,"nav-link","text-dark","text-nowrap",3,"routerLink"],[1,"pro-button"],[1,"d-md-none","text-secondary"],[1,"navbar-nav","flex-row","flex-wrap","ms-md-auto","d-sm-none","d-md-flex"],[1,"nav-item","col-6","col-md-auto"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank","title","GitHub",1,"nav-link","text-dark"],[1,"fa-brands","fa-github"],[1,"d-inline","d-sm-none","ms-2"],["href","https://twitter.com/danielpalme","target","_blank","title","Twitter",1,"nav-link","text-dark"],[1,"fa-brands","fa-twitter"]],template:function(r,o){1&r&&(h(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),y(4,"img",4),h(5,"span",5),f(6,"ReportGenerator"),p()(),h(7,"button",6),R("click",function(){return o.toggle()}),y(8,"span",7),p(),h(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),f(13,"Home"),p()(),h(14,"li",10)(15,"a",11),f(16,"Features"),p()(),h(17,"li",12)(18,"a",13),f(19,"Get started"),p()(),h(20,"li",12)(21,"a",11),f(22,"Usage"),p()(),h(23,"li",12)(24,"a",11),f(25,"Contact"),p()(),h(26,"li",12)(27,"a",11)(28,"span",14),f(29,"PRO"),p()()()(),y(30,"hr",15),h(31,"ul",16)(32,"li",17)(33,"a",18),y(34,"i",19),h(35,"span",20),f(36,"GitHub"),p()()(),h(37,"li",17)(38,"a",21),y(39,"i",22),h(40,"span",20),f(41,"Twitter"),p()()()()()()()()),2&r&&(C(3),E("routerLink",ee(17,nI)),C(4),Xt("aria-expanded",o.isExpanded),C(2),E("ngClass",Ms(18,rH,o.isExpanded)),C(2),E("routerLinkActive",ee(20,pi))("routerLinkActiveOptions",ee(21,rI)),C(1),E("routerLink",ee(22,nI)),C(2),E("routerLinkActive",ee(23,pi))("routerLinkActiveOptions",ee(24,rI)),C(1),E("routerLink",ee(25,oH)),C(2),E("routerLinkActive",ee(26,pi)),C(1),E("routerLink",ee(27,iH)),C(2),E("routerLinkActive",ee(28,pi)),C(1),E("routerLink",ee(29,sH)),C(2),E("routerLinkActive",ee(30,pi)),C(1),E("routerLink",ee(31,aH)),C(2),E("routerLinkActive",ee(32,pi)),C(1),E("routerLink",ee(33,lH)))},dependencies:[Mn,uc,qE],styles:[".box-shadow[_ngcontent-%COMP%]{box-shadow:0 .25rem .75rem #0000000d}@keyframes _ngcontent-%COMP%_pro-button-animation{0%{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}50%{background-color:vvar(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}to{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}}.pro-button[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_pro-button-animation;animation-duration:2s;animation-iteration-count:2}.pro-button[_ngcontent-%COMP%]:hover, .link-active[_ngcontent-%COMP%] .pro-button[_ngcontent-%COMP%]{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}.nav-link[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500}.nav-link[_ngcontent-%COMP%]:hover{text-decoration:underline;text-underline-offset:2px}.link-active[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--rg-primary-hover-color)!important;font-weight:400}"]})}return e})(),uH=(()=>{class e{constructor(t,r,o){this.dom=t,this.router=r,this.activatedRoute=o}ngOnInit(){this.router.events.pipe(rn(t=>t instanceof En),K(()=>this.activatedRoute),K(t=>{for(;t.firstChild;)t=t.firstChild;return t}),rn(t=>"primary"===t.outlet),Xe(t=>t.data)).subscribe(t=>{const r=`${window.location.protocol}//${window.location.hostname}`;this.updateCanonicalUrl(t.canonical?r+t.canonical:r+this.router.url)})}updateCanonicalUrl(t){const r=this.dom.getElementsByTagName("head")[0];var o=this.dom.querySelector("link[rel='canonical']")||null;null==o&&(o=this.dom.createElement("link"),r.appendChild(o)),o.setAttribute("rel","canonical"),o.setAttribute("href",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(ft),S(Bt),S(Ur))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-root"]],standalone:!0,features:[Ot],decls:3,vars:0,template:function(r,o){1&r&&y(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[cH,Dp,nH],encapsulation:2})}return e})(),oI=(()=>{class e{constructor(t,r){this._renderer=t,this._elementRef=r,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(t,r){this._renderer.setProperty(this._elementRef.nativeElement,t,r)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt))};static#t=this.\u0275dir=$({type:e})}return e})(),Br=(()=>{class e extends oI{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,features:[ce]})}return e})();const Tn=new N("NgValueAccessor"),hH={provide:Tn,useExisting:he(()=>gi),multi:!0},gH=new N("CompositionEventMode");let gi=(()=>{class e extends oI{constructor(t,r,o){super(t,r),this._compositionMode=o,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function pH(){const e=lr()?lr().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(t){this.setProperty("value",t??"")}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(gH,8))};static#t=this.\u0275dir=$({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(r,o){1&r&&R("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[Ee([hH]),ce]})}return e})();function dr(e){return null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}const ot=new N("NgValidators"),fr=new N("NgAsyncValidators"),mH=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;function cI(e){return dr(e.value)?{required:!0}:null}function dI(e){return dr(e.value)||mH.test(e.value)?null:{email:!0}}function xc(e){return null}function gI(e){return null!=e}function mI(e){return Is(e)?Oe(e):e}function vI(e){let n={};return e.forEach(t=>{n=null!=t?{...n,...t}:n}),0===Object.keys(n).length?null:n}function yI(e,n){return n.map(t=>t(e))}function _I(e){return e.map(n=>function vH(e){return!e.validate}(n)?n:t=>n.validate(t))}function Op(e){return null!=e?function CI(e){if(!e)return null;const n=e.filter(gI);return 0==n.length?null:function(t){return vI(yI(t,n))}}(_I(e)):null}function Pp(e){return null!=e?function DI(e){if(!e)return null;const n=e.filter(gI);return 0==n.length?null:function(t){return function dH(...e){const n=jg(e),{args:t,keys:r}=Rb(e),o=new Te(i=>{const{length:s}=t;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=g},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(r?Pb(r,a):a),i.complete())}))}});return n?o.pipe(Ob(n)):o}(yI(t,n).map(mI)).pipe(K(vI))}}(_I(e)):null}function wI(e,n){return null===e?[n]:Array.isArray(e)?[...e,n]:[e,n]}function kp(e){return e?Array.isArray(e)?e:[e]:[]}function Nc(e,n){return Array.isArray(e)?e.includes(n):e===n}function II(e,n){const t=kp(n);return kp(e).forEach(o=>{Nc(t,o)||t.push(o)}),t}function MI(e,n){return kp(n).filter(t=>!Nc(e,t))}class SI{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=Op(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=Pp(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control&&this.control.reset(n)}hasError(n,t){return!!this.control&&this.control.hasError(n,t)}getError(n,t){return this.control?this.control.getError(n,t):null}}class pt extends SI{get formDirective(){return null}get path(){return null}}class hr extends SI{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class TI{constructor(n){this._cd=n}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Rc=(()=>{class e extends TI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(hr,2))};static#t=this.\u0275dir=$({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(r,o){2&r&&El("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[ce]})}return e})(),Oc=(()=>{class e extends TI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,10))};static#t=this.\u0275dir=$({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(r,o){2&r&&El("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)("ng-submitted",o.isSubmitted)},features:[ce]})}return e})();const Js="VALID",kc="INVALID",mi="PENDING",Ks="DISABLED";function Vp(e){return(Fc(e)?e.validators:e)||null}function jp(e,n){return(Fc(n)?n.asyncValidators:e)||null}function Fc(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class RI{constructor(n,t){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get valid(){return this.status===Js}get invalid(){return this.status===kc}get pending(){return this.status==mi}get disabled(){return this.status===Ks}get enabled(){return this.status!==Ks}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(II(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(II(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(MI(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(MI(n,this._rawAsyncValidators))}hasValidator(n){return Nc(this._rawValidators,n)}hasAsyncValidator(n){return Nc(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){this.touched=!0,this._parent&&!n.onlySelf&&this._parent.markAsTouched(n)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(n=>n.markAllAsTouched())}markAsUntouched(n={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}markAsDirty(n={}){this.pristine=!1,this._parent&&!n.onlySelf&&this._parent.markAsDirty(n)}markAsPristine(n={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}markAsPending(n={}){this.status=mi,!1!==n.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!n.onlySelf&&this._parent.markAsPending(n)}disable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Ks,this.errors=null,this._forEachChild(r=>{r.disable({...n,onlySelf:!0})}),this._updateValue(),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!0))}enable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Js,this._forEachChild(r=>{r.enable({...n,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!1))}_updateAncestors(n){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Js||this.status===mi)&&this._runAsyncValidator(n.emitEvent)),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.updateValueAndValidity(n)}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Ks:Js}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n){if(this.asyncValidator){this.status=mi,this._hasOwnPendingAsyncValidator=!0;const t=mI(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(r=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(r,{emitEvent:n})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(!1!==t.emitEvent)}get(n){let t=n;return null==t||(Array.isArray(t)||(t=t.split(".")),0===t.length)?null:t.reduce((r,o)=>r&&r._find(o),this)}getError(n,t){const r=t?this.get(t):this;return r&&r.errors?r.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(n)}_initObservables(){this.valueChanges=new xe,this.statusChanges=new xe}_calculateStatus(){return this._allControlsDisabled()?Ks:this.errors?kc:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(mi)?mi:this._anyControlsHaveStatus(kc)?kc:Js}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n={}){this.pristine=!this._anyControlsDirty(),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}_updateTouched(n={}){this.touched=this._anyControlsTouched(),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Fc(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=function DH(e){return Array.isArray(e)?Op(e):e||null}(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=function wH(e){return Array.isArray(e)?Pp(e):e||null}(this._rawAsyncValidators)}}class Hp extends RI{constructor(n,t,r){super(Vp(t),jp(r,t)),this.controls=n,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(n,t){return this.controls[n]?this.controls[n]:(this.controls[n]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}addControl(n,t,r={}){this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}removeControl(n,t={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}setControl(n,t,r={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],t&&this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,t={}){(function NI(e,n,t){e._forEachChild((r,o)=>{if(void 0===t[o])throw new M(1002,"")})})(this,0,n),Object.keys(n).forEach(r=>{(function xI(e,n,t){const r=e.controls;if(!(n?Object.keys(r):r).length)throw new M(1e3,"");if(!r[t])throw new M(1001,"")})(this,!0,r),this.controls[r].setValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(n,t={}){null!=n&&(Object.keys(n).forEach(r=>{const o=this.controls[r];o&&o.patchValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t))}reset(n={},t={}){this._forEachChild((r,o)=>{r.reset(n?n[o]:null,{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this._reduceChildren({},(n,t,r)=>(n[r]=t.getRawValue(),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(t,r)=>!!r._syncPendingControls()||t);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(t=>{const r=this.controls[t];r&&n(r,t)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(const[t,r]of Object.entries(this.controls))if(this.contains(t)&&n(r))return!0;return!1}_reduceValue(){return this._reduceChildren({},(t,r,o)=>((r.enabled||this.disabled)&&(t[o]=r.value),t))}_reduceChildren(n,t){let r=n;return this._forEachChild((o,i)=>{r=t(r,o,i)}),r}_allControlsDisabled(){for(const n of Object.keys(this.controls))if(this.controls[n].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(n){return this.controls.hasOwnProperty(n)?this.controls[n]:null}}const vi=new N("CallSetDisabledState",{providedIn:"root",factory:()=>Lc}),Lc="always";function ea(e,n,t=Lc){Up(e,n),n.valueAccessor.writeValue(e.value),(e.disabled||"always"===t)&&n.valueAccessor.setDisabledState?.(e.disabled),function IH(e,n){n.valueAccessor.registerOnChange(t=>{e._pendingValue=t,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&OI(e,n)})}(e,n),function SH(e,n){const t=(r,o)=>{n.valueAccessor.writeValue(r),o&&n.viewToModelUpdate(r)};e.registerOnChange(t),n._registerOnDestroy(()=>{e._unregisterOnChange(t)})}(e,n),function MH(e,n){n.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&OI(e,n),"submit"!==e.updateOn&&e.markAsTouched()})}(e,n),function EH(e,n){if(n.valueAccessor.setDisabledState){const t=r=>{n.valueAccessor.setDisabledState(r)};e.registerOnDisabledChange(t),n._registerOnDestroy(()=>{e._unregisterOnDisabledChange(t)})}}(e,n)}function Hc(e,n){e.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function Up(e,n){const t=function bI(e){return e._rawValidators}(e);null!==n.validator?e.setValidators(wI(t,n.validator)):"function"==typeof t&&e.setValidators([t]);const r=function EI(e){return e._rawAsyncValidators}(e);null!==n.asyncValidator?e.setAsyncValidators(wI(r,n.asyncValidator)):"function"==typeof r&&e.setAsyncValidators([r]);const o=()=>e.updateValueAndValidity();Hc(n._rawValidators,o),Hc(n._rawAsyncValidators,o)}function OI(e,n){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}const RH={provide:pt,useExisting:he(()=>yi)},ta=(()=>Promise.resolve())();let yi=(()=>{class e extends pt{constructor(t,r,o){super(),this.callSetDisabledState=o,this.submitted=!1,this._directives=new Set,this.ngSubmit=new xe,this.form=new Hp({},Op(t),Pp(r))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){ta.then(()=>{const r=this._findContainer(t.path);t.control=r.registerControl(t.name,t.control),ea(t.control,t,this.callSetDisabledState),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){ta.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name),this._directives.delete(t)})}addFormGroup(t){ta.then(()=>{const r=this._findContainer(t.path),o=new Hp({});(function PI(e,n){Up(e,n)})(o,t),r.registerControl(t.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){ta.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,r){ta.then(()=>{this.form.get(t.path).setValue(r)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,function kI(e,n){e._syncPendingControls(),n.forEach(t=>{const r=t.control;"submit"===r.updateOn&&r._pendingChange&&(t.viewToModelUpdate(r._pendingValue),r._pendingChange=!1)})}(this.form,this._directives),this.ngSubmit.emit(t),"dialog"===t?.target?.method}onReset(){this.resetForm()}resetForm(t=void 0){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}static#e=this.\u0275fac=function(r){return new(r||e)(S(ot,10),S(fr,10),S(vi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(r,o){1&r&&R("submit",function(s){return o.onSubmit(s)})("reset",function(){return o.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Ee([RH]),ce]})}return e})();function FI(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}function LI(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const VI=class extends RI{constructor(n=null,t,r){super(Vp(t),jp(r,t)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Fc(t)&&(t.nonNullable||t.initialValueIsDefault)&&(this.defaultValue=LI(n)?n.value:n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(r=>r(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){FI(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){FI(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(n){LI(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}},kH={provide:hr,useExisting:he(()=>na)},UI=(()=>Promise.resolve())();let na=(()=>{class e extends hr{constructor(t,r,o,i,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this.control=new VI,this._registered=!1,this.name="",this.update=new xe,this._parent=t,this._setValidators(r),this._setAsyncValidators(o),this.valueAccessor=function Gp(e,n){if(!n)return null;let t,r,o;return Array.isArray(n),n.forEach(i=>{i.constructor===gi?t=i:function xH(e){return Object.getPrototypeOf(e.constructor)===Br}(i)?r=i:o=i}),o||r||t||null}(0,i)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){const r=t.name.previousValue;this.formDirective.removeControl({name:r,path:this._getPath(r)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),function $p(e,n){if(!e.hasOwnProperty("model"))return!1;const t=e.model;return!!t.isFirstChange()||!Object.is(n,t.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){ea(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(t){UI.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){const r=t.isDisabled.currentValue,o=0!==r&&Ko(r);UI.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?function Vc(e,n){return[...n.path,e]}(t,this._parent):[t]}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,9),S(ot,10),S(fr,10),S(Tn,10),S(ls,8),S(vi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[Ee([kH]),ce,Lt]})}return e})(),Bc=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]})}return e})();const LH={provide:Tn,useExisting:he(()=>zp),multi:!0};let $I=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})(),VH=(()=>{class e{constructor(){this._accessors=[]}add(t,r){this._accessors.push([t,r])}remove(t){for(let r=this._accessors.length-1;r>=0;--r)if(this._accessors[r][1]===t)return void this._accessors.splice(r,1)}select(t){this._accessors.forEach(r=>{this._isSameGroup(r,t)&&r[1]!==t&&r[1].fireUncheck(t.value)})}_isSameGroup(t,r){return!!t[0].control&&t[0]._parent===r._control._parent&&t[1].name===r.name}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:$I})}return e})(),zp=(()=>{class e extends Br{constructor(t,r,o,i){super(t,r),this._registry=o,this._injector=i,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=A(vi,{optional:!0})??Lc}ngOnInit(){this._control=this._injector.get(hr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this.setProperty("checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}setDisabledState(t){(this.setDisabledStateFired||t||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",t),this.setDisabledStateFired=!0}fireUncheck(t){this.writeValue(t)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(VH),S(_t))};static#t=this.\u0275dir=$({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[Ee([LH]),ce]})}return e})();const zH={provide:Tn,useExisting:he(()=>$c),multi:!0};function YI(e,n){return null==e?`${n}`:(n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let $c=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){this.value=t;const o=YI(this._getOptionId(t),t);this.setProperty("value",o)}registerOnChange(t){this.onChange=r=>{this.value=this._getOptionValue(r),t(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const r of this._optionMap.keys())if(this._compareWith(this._optionMap.get(r),t))return r;return null}_getOptionValue(t){const r=function qH(e){return e.split(":")[0]}(t);return this._optionMap.has(r)?this._optionMap.get(r):t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([zH]),ce]})}return e})(),QI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(YI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S($c,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();const WH={provide:Tn,useExisting:he(()=>Yp),multi:!0};function XI(e,n){return null==e?`${n}`:("string"==typeof n&&(n=`'${n}'`),n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let Yp=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){let r;if(this.value=t,Array.isArray(t)){const o=t.map(i=>this._getOptionId(i));r=(i,s)=>{i._setSelected(o.indexOf(s.toString())>-1)}}else r=(o,i)=>{o._setSelected(!1)};this._optionMap.forEach(r)}registerOnChange(t){this.onChange=r=>{const o=[],i=r.selectedOptions;if(void 0!==i){const s=i;for(let a=0;a{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([WH]),ce]})}return e})(),JI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(XI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(XI(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S(Yp,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();let $r=(()=>{class e{constructor(){this._validator=xc}ngOnChanges(t){if(this.inputName in t){const r=this.normalizeInput(t[this.inputName].currentValue);this._enabled=this.enabled(r),this._validator=this._enabled?this.createValidator(r):xc,this._onChange&&this._onChange()}}validate(t){return this._validator(t)}registerOnValidatorChange(t){this._onChange=t}enabled(t){return null!=t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,features:[Lt]})}return e})();const XH={provide:ot,useExisting:he(()=>_i),multi:!0};let _i=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=Ko,this.createValidator=t=>cI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("required",o._enabled?"":null)},inputs:{required:"required"},features:[Ee([XH]),ce]})}return e})();const KH={provide:ot,useExisting:he(()=>Gc),multi:!0};let Gc=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=Ko,this.createValidator=t=>dI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[Ee([KH]),ce]})}return e})();const tU={provide:ot,useExisting:he(()=>Qp),multi:!0};let Qp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=t=>function KI(e){return"number"==typeof e?e:parseInt(e,10)}(t),this.createValidator=t=>function hI(e){return n=>function sI(e){return null!=e&&"number"==typeof e.length}(n.value)&&n.value.length>e?{maxlength:{requiredLength:e,actualLength:n.value.length}}:null}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[Ee([tU]),ce]})}return e})();const nU={provide:ot,useExisting:he(()=>Xp),multi:!0};let Xp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=t=>t,this.createValidator=t=>function pI(e){if(!e)return xc;let n,t;return"string"==typeof e?(t="","^"!==e.charAt(0)&&(t+="^"),t+=e,"$"!==e.charAt(e.length-1)&&(t+="$"),n=new RegExp(t)):(t=e.toString(),n=e),r=>{if(dr(r.value))return null;const o=r.value;return n.test(o)?null:{pattern:{requiredPattern:t,actualValue:o}}}}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[Ee([nU]),ce]})}return e})(),rU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[$I]})}return e})(),zc=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:vi,useValue:t.callSetDisabledState??Lc}]}}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[rU]})}return e})();class qc{}class Wc{}class $t{constructor(n){this.normalizedNames=new Map,this.lazyUpdate=null,n?"string"==typeof n?this.lazyInit=()=>{this.headers=new Map,n.split("\n").forEach(t=>{const r=t.indexOf(":");if(r>0){const o=t.slice(0,r),i=o.toLowerCase(),s=t.slice(r+1).trim();this.maybeSetNormalizedName(o,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:typeof Headers<"u"&&n instanceof Headers?(this.headers=new Map,n.forEach((t,r)=>{this.setHeaderEntries(r,t)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(n).forEach(([t,r])=>{this.setHeaderEntries(t,r)})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();const t=this.headers.get(n.toLowerCase());return t&&t.length>0?t[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,t){return this.clone({name:n,value:t,op:"a"})}set(n,t){return this.clone({name:n,value:t,op:"s"})}delete(n,t){return this.clone({name:n,value:t,op:"d"})}maybeSetNormalizedName(n,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,n)}init(){this.lazyInit&&(this.lazyInit instanceof $t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(n=>this.applyUpdate(n)),this.lazyUpdate=null))}copyFrom(n){n.init(),Array.from(n.headers.keys()).forEach(t=>{this.headers.set(t,n.headers.get(t)),this.normalizedNames.set(t,n.normalizedNames.get(t))})}clone(n){const t=new $t;return t.lazyInit=this.lazyInit&&this.lazyInit instanceof $t?this.lazyInit:this,t.lazyUpdate=(this.lazyUpdate||[]).concat([n]),t}applyUpdate(n){const t=n.name.toLowerCase();switch(n.op){case"a":case"s":let r=n.value;if("string"==typeof r&&(r=[r]),0===r.length)return;this.maybeSetNormalizedName(n.name,t);const o=("a"===n.op?this.headers.get(t):void 0)||[];o.push(...r),this.headers.set(t,o);break;case"d":const i=n.value;if(i){let s=this.headers.get(t);if(!s)return;s=s.filter(a=>-1===i.indexOf(a)),0===s.length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,s)}else this.headers.delete(t),this.normalizedNames.delete(t)}}setHeaderEntries(n,t){const r=(Array.isArray(t)?t:[t]).map(i=>i.toString()),o=n.toLowerCase();this.headers.set(o,r),this.maybeSetNormalizedName(n,o)}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(t=>n(this.normalizedNames.get(t),this.headers.get(t)))}}class iU{encodeKey(n){return aM(n)}encodeValue(n){return aM(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}}const aU=/%(\d[a-f0-9])/gi,lU={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function aM(e){return encodeURIComponent(e).replace(aU,(n,t)=>lU[t]??n)}function Zc(e){return`${e}`}class pr{constructor(n={}){if(this.updates=null,this.cloneFrom=null,this.encoder=n.encoder||new iU,n.fromString){if(n.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function sU(e,n){const t=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(o=>{const i=o.indexOf("="),[s,a]=-1==i?[n.decodeKey(o),""]:[n.decodeKey(o.slice(0,i)),n.decodeValue(o.slice(i+1))],l=t.get(s)||[];l.push(a),t.set(s,l)}),t}(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(t=>{const r=n.fromObject[t],o=Array.isArray(r)?r.map(Zc):[Zc(r)];this.map.set(t,o)})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();const t=this.map.get(n);return t?t[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,t){return this.clone({param:n,value:t,op:"a"})}appendAll(n){const t=[];return Object.keys(n).forEach(r=>{const o=n[r];Array.isArray(o)?o.forEach(i=>{t.push({param:r,value:i,op:"a"})}):t.push({param:r,value:o,op:"a"})}),this.clone(t)}set(n,t){return this.clone({param:n,value:t,op:"s"})}delete(n,t){return this.clone({param:n,value:t,op:"d"})}toString(){return this.init(),this.keys().map(n=>{const t=this.encoder.encodeKey(n);return this.map.get(n).map(r=>t+"="+this.encoder.encodeValue(r)).join("&")}).filter(n=>""!==n).join("&")}clone(n){const t=new pr({encoder:this.encoder});return t.cloneFrom=this.cloneFrom||this,t.updates=(this.updates||[]).concat(n),t}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(n=>this.map.set(n,this.cloneFrom.map.get(n))),this.updates.forEach(n=>{switch(n.op){case"a":case"s":const t=("a"===n.op?this.map.get(n.param):void 0)||[];t.push(Zc(n.value)),this.map.set(n.param,t);break;case"d":if(void 0===n.value){this.map.delete(n.param);break}{let r=this.map.get(n.param)||[];const o=r.indexOf(Zc(n.value));-1!==o&&r.splice(o,1),r.length>0?this.map.set(n.param,r):this.map.delete(n.param)}}}),this.cloneFrom=this.updates=null)}}class cU{constructor(){this.map=new Map}set(n,t){return this.map.set(n,t),this}get(n){return this.map.has(n)||this.map.set(n,n.defaultValue()),this.map.get(n)}delete(n){return this.map.delete(n),this}has(n){return this.map.has(n)}keys(){return this.map.keys()}}function lM(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer}function cM(e){return typeof Blob<"u"&&e instanceof Blob}function uM(e){return typeof FormData<"u"&&e instanceof FormData}class ra{constructor(n,t,r,o){let i;if(this.url=t,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=n.toUpperCase(),function uU(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==r?r:null,i=o):i=r,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.context&&(this.context=i.context),i.params&&(this.params=i.params),this.transferCache=i.transferCache),this.headers||(this.headers=new $t),this.context||(this.context=new cU),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=t;else{const a=t.indexOf("?");this.urlWithParams=t+(-1===a?"?":ad.set(g,n.setHeaders[g]),l)),n.setParams&&(c=Object.keys(n.setParams).reduce((d,g)=>d.set(g,n.setParams[g]),c)),new ra(t,r,i,{params:c,headers:l,context:u,reportProgress:a,responseType:o,withCredentials:s})}}var gr=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}(gr||{});class Jp{constructor(n,t=200,r="OK"){this.headers=n.headers||new $t,this.status=void 0!==n.status?n.status:t,this.statusText=n.statusText||r,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}}class Yc extends Jp{constructor(n={}){super(n),this.type=gr.ResponseHeader}clone(n={}){return new Yc({headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class Gr extends Jp{constructor(n={}){super(n),this.type=gr.Response,this.body=void 0!==n.body?n.body:null}clone(n={}){return new Gr({body:void 0!==n.body?n.body:this.body,headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class Ci extends Jp{constructor(n){super(n,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${n.url||"(unknown url)"}`:`Http failure response for ${n.url||"(unknown url)"}: ${n.status} ${n.statusText}`,this.error=n.error||null}}function Kp(e,n){return{body:n,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials,transferCache:e.transferCache}}let eg=(()=>{class e{constructor(t){this.handler=t}request(t,r,o={}){let i;if(t instanceof ra)i=t;else{let l,c;l=o.headers instanceof $t?o.headers:new $t(o.headers),o.params&&(c=o.params instanceof pr?o.params:new pr({fromObject:o.params})),i=new ra(t,r,void 0!==o.body?o.body:null,{headers:l,context:o.context,params:c,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache})}const s=F(i).pipe(ti(l=>this.handler.handle(l)));if(t instanceof ra||"events"===o.observe)return s;const a=s.pipe(rn(l=>l instanceof Gr));switch(o.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return l.body}));case"blob":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof Blob))throw new Error("Response is not a Blob.");return l.body}));case"text":return a.pipe(K(l=>{if(null!==l.body&&"string"!=typeof l.body)throw new Error("Response is not a string.");return l.body}));default:return a.pipe(K(l=>l.body))}case"response":return a;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(t,r={}){return this.request("DELETE",t,r)}get(t,r={}){return this.request("GET",t,r)}head(t,r={}){return this.request("HEAD",t,r)}jsonp(t,r){return this.request("JSONP",t,{params:(new pr).append(r,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,r={}){return this.request("OPTIONS",t,r)}patch(t,r,o={}){return this.request("PATCH",t,Kp(o,r))}post(t,r,o={}){return this.request("POST",t,Kp(o,r))}put(t,r,o={}){return this.request("PUT",t,Kp(o,r))}static#e=this.\u0275fac=function(r){return new(r||e)(k(qc))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function fM(e,n){return n(e)}function mU(e,n){return(t,r)=>n.intercept(t,{handle:o=>e(o,r)})}const yU=new N(""),oa=new N(""),hM=new N(""),pM=new N("");function _U(){let e=null;return(n,t)=>{null===e&&(e=(A(yU,{optional:!0})??[]).reduceRight(mU,fM));const r=A($l),o=r.add();return e(n,t).pipe(Ls(()=>r.remove(o)))}}let gM=(()=>{class e extends qc{constructor(t,r){super(),this.backend=t,this.injector=r,this.chain=null,this.pendingTasks=A($l);const o=A(pM,{optional:!0});this.backend=o??t}handle(t){if(null===this.chain){const o=Array.from(new Set([...this.injector.get(oa),...this.injector.get(hM,[])]));this.chain=o.reduceRight((i,s)=>function vU(e,n,t){return(r,o)=>t.runInContext(()=>n(r,i=>e(i,o)))}(i,s,this.injector),fM)}const r=this.pendingTasks.add();return this.chain(t,o=>this.backend.handle(o)).pipe(Ls(()=>this.pendingTasks.remove(r)))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Wc),k(At))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const EU=/^\)\]\}',?\n/;let vM=(()=>{class e{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new M(-2800,!1);const r=this.xhrFactory;return(r.\u0275loadImpl?Oe(r.\u0275loadImpl()):F(null)).pipe(Ft(()=>new Te(i=>{const s=r.build();if(s.open(t.method,t.urlWithParams),t.withCredentials&&(s.withCredentials=!0),t.headers.forEach((_,D)=>s.setRequestHeader(_,D.join(","))),t.headers.has("Accept")||s.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const _=t.detectContentTypeHeader();null!==_&&s.setRequestHeader("Content-Type",_)}if(t.responseType){const _=t.responseType.toLowerCase();s.responseType="json"!==_?_:"text"}const a=t.serializeBody();let l=null;const c=()=>{if(null!==l)return l;const _=s.statusText||"OK",D=new $t(s.getAllResponseHeaders()),I=function IU(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(s)||t.url;return l=new Yc({headers:D,status:s.status,statusText:_,url:I}),l},u=()=>{let{headers:_,status:D,statusText:I,url:w}=c(),x=null;204!==D&&(x=typeof s.response>"u"?s.responseText:s.response),0===D&&(D=x?200:0);let V=D>=200&&D<300;if("json"===t.responseType&&"string"==typeof x){const Z=x;x=x.replace(EU,"");try{x=""!==x?JSON.parse(x):null}catch(Ie){x=Z,V&&(V=!1,x={error:Ie,text:x})}}V?(i.next(new Gr({body:x,headers:_,status:D,statusText:I,url:w||void 0})),i.complete()):i.error(new Ci({error:x,headers:_,status:D,statusText:I,url:w||void 0}))},d=_=>{const{url:D}=c(),I=new Ci({error:_,status:s.status||0,statusText:s.statusText||"Unknown Error",url:D||void 0});i.error(I)};let g=!1;const m=_=>{g||(i.next(c()),g=!0);let D={type:gr.DownloadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),"text"===t.responseType&&s.responseText&&(D.partialText=s.responseText),i.next(D)},v=_=>{let D={type:gr.UploadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),i.next(D)};return s.addEventListener("load",u),s.addEventListener("error",d),s.addEventListener("timeout",d),s.addEventListener("abort",d),t.reportProgress&&(s.addEventListener("progress",m),null!==a&&s.upload&&s.upload.addEventListener("progress",v)),s.send(a),i.next({type:gr.Sent}),()=>{s.removeEventListener("error",d),s.removeEventListener("abort",d),s.removeEventListener("load",u),s.removeEventListener("timeout",d),t.reportProgress&&(s.removeEventListener("progress",m),null!==a&&s.upload&&s.upload.removeEventListener("progress",v)),s.readyState!==s.DONE&&s.abort()}})))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Tb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const rg=new N("XSRF_ENABLED"),yM=new N("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),_M=new N("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class CM{}let TU=(()=>{class e{constructor(t,r,o){this.doc=t,this.platform=r,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=_b(t,this.cookieName),this.lastCookieString=t),this.lastToken}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(Sr),k(yM))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function AU(e,n){const t=e.url.toLowerCase();if(!A(rg)||"GET"===e.method||"HEAD"===e.method||t.startsWith("http://")||t.startsWith("https://"))return n(e);const r=A(CM).getToken(),o=A(_M);return null!=r&&!e.headers.has(o)&&(e=e.clone({headers:e.headers.set(o,r)})),n(e)}var mr=function(e){return e[e.Interceptors=0]="Interceptors",e[e.LegacyInterceptors=1]="LegacyInterceptors",e[e.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",e[e.NoXsrfProtection=3]="NoXsrfProtection",e[e.JsonpSupport=4]="JsonpSupport",e[e.RequestsMadeViaParent=5]="RequestsMadeViaParent",e[e.Fetch=6]="Fetch",e}(mr||{});const DM=new N("LEGACY_INTERCEPTOR_FN");class LU{constructor(){this.name="",this.email="",this.message=""}}let TM=(()=>{class e{constructor(t){this.httpClient=t}postContactForm(t){return this.httpClient.post(`${ye_apiBaseUrl}contact`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(eg))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function VU(e,n){if(1&e){const t=Fe();h(0,"form",4,5),R("ngSubmit",function(){return re(t),oe(P().submit())}),h(2,"div",6)(3,"label",7),f(4,"Name "),h(5,"span",8),f(6,"*"),p()(),h(7,"input",9),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.name=o)}),p()(),h(8,"div",6)(9,"label",10),f(10,"Email address "),h(11,"span",8),f(12,"*"),p()(),h(13,"input",11),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.email=o)}),p()(),h(14,"div",6)(15,"label",12),f(16,"Message "),h(17,"span",8),f(18,"*"),p()(),h(19,"textarea",13),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.message=o)}),p()(),h(20,"button",14),f(21,"Submit"),p()()}if(2&e){const t=Gf(1),r=P();C(7),E("ngModel",r.contactViewModel.name),C(6),E("ngModel",r.contactViewModel.email),C(6),E("ngModel",r.contactViewModel.message),C(1),E("disabled",!t.valid||r.enableFormCountDown>0)}}function jU(e,n){1&e&&(h(0,"p"),f(1,"Thanks for your message."),p())}function HU(e,n){1&e&&(h(0,"p",15),f(1,"Something went wrong. Please try again later."),p())}let UU=(()=>{class e{constructor(t){this.contactService=t,this.contactViewModel=new LU,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,0===this.enableFormCountDown&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:t=>{console.log("Submitted form"),this.success=!0},error:t=>{console.error(t),this.error=!0},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(TM))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[Ot],decls:6,vars:3,consts:[[1,"container"],[1,"mb-4"],["method","post"],["class","text-danger"],["method","post",3,"ngSubmit"],["contactForm","ngForm"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"text-danger"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Contact"),p(),q(3,VU,22,4,"form",2)(4,jU,2,0,"p")(5,HU,2,0,"p",3),p()),2&r&&(C(3),Ho(3,o.success||o.error?-1:3),C(1),Ho(4,o.success?4:-1),C(1),Ho(5,o.error?5:-1))},dependencies:[zc,Bc,gi,Rc,Oc,_i,Gc,na,yi]})}return e})();const AM=()=>["/pro"];let BU=(()=>{class e{scrollToAnchor(t){return document.querySelector(t)?.scrollIntoView(!0),!1}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-features-component"]],standalone:!0,features:[Ot],decls:131,vars:4,consts:[[1,"container"],[1,"mb-4"],["id","coveragequota"],[1,"pro-text"],["href","https://en.wikipedia.org/wiki/Code_coverage","target","_blank"],[1,"fa-solid","fa-arrow-up-right-from-square"],[3,"routerLink"],[1,"pro-button","pro-button-tiny"],["loading","lazy","srcset","resources/features/quota@1x.webp 1x, resources/features/quota@2x.webp 2x","src","resources/features/quota1x.webp","alt","Coverage quotas",1,"img-fluid"],["id","coveragehistory",1,"mt-5"],["loading","lazy","srcset","resources/features/history@1x.webp 1x, resources/features/history@2x.webp 2x","src","resources/features/history@1x.webp","alt","Coverage history",1,"img-fluid"],["id","summary",1,"mt-5"],["loading","lazy","srcset","resources/features/summary@1x.webp 1x, resources/features/summary@2x.webp 2x","src","resources/features/summary.webp","alt","Summary table / Overview",1,"img-fluid"],["id","details",1,"mt-5"],["loading","lazy","srcset","resources/features/details@1x.webp 1x, resources/features/details@2x.webp 2x","src","resources/features/details.webp","alt","Details",1,"img-fluid"],["id","metrics",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ#which-coverage-tool-supports-which-features-in-the-html-report","target","_blank"],["href","",3,"click"],["loading","lazy","srcset","resources/features/metrics_details@1x.webp 1x, resources/features/metrics_details@2x.webp 2x","src","resources/features/metrics_details.webp","alt","Metrics - Details",1,"img-fluid"],["loading","lazy","srcset","resources/features/metrics_summary@1x.webp 1x, resources/features/metrics_summary@2x.webp 2x","src","resources/features/metrics_summary.webp","alt","Metrics - Summary",1,"img-fluid"],["id","riskhotspots",1,"mt-5"],["href","https://en.wikipedia.org/wiki/Cyclomatic_complexity","target","_blank"],["href","https://modess.io/npath-complexity-cyclomatic-complexity-explained","target","_blank"],["href","https://testing.googleblog.com/2011/02/this-code-is-crap.html","target","_blank"],["loading","lazy","srcset","resources/features/riskhotspots@1x.webp 1x, resources/features/riskhotspots@2x.webp 2x","src","resources/features/riskhotspots.webp","alt","Risk Hotspots",1,"img-fluid"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Features"),p(),h(3,"h2",2),f(4,"Coverage quotas"),p(),h(5,"p"),f(6," The overiew cards provide a quick "),h(7,"span",3),f(8,"overview"),p(),f(9," of your coverage quotas."),y(10,"br"),f(11," You can use them to get a glimpse into the different "),h(12,"a",4),f(13,"coverage metrics"),p(),f(14,"\xa0"),h(15,"a",4),y(16,"i",5),p(),f(17,": "),p(),h(18,"ul")(19,"li"),f(20,"Line coverage"),p(),h(21,"li"),f(22,"Branch coverage"),p(),h(23,"li"),f(24,"Method coverage "),h(25,"a",6)(26,"span",7),f(27,"PRO"),p()()()(),y(28,"img",8)(29,"br"),h(30,"h2",9),f(31,"Coverage history"),p(),h(32,"p"),f(33," The history chart helps you to understand how your coverage quotas are "),h(34,"span",3),f(35,"evolving over time"),p(),f(36,". "),p(),y(37,"img",10)(38,"br"),h(39,"h2",11),f(40,"Summary table / Overview"),p(),h(41,"p"),f(42," The summary table helps you to identify classes with "),h(43,"span",3),f(44,"low test coverage"),p(),f(45,"."),y(46,"br"),f(47," The table offers various "),h(48,"span",3),f(49,"filter and sorting"),p(),f(50," options for quick navigation. "),p(),y(51,"img",12)(52,"br"),h(53,"h2",13),f(54,"Details page"),p(),h(55,"p"),f(56," The details page visualizes your "),h(57,"span",3),f(58,"line and branch coverage"),p(),f(59,". "),p(),h(60,"ul")(61,"li"),f(62,"Colors indicate the coverage status of each line."),p(),h(63,"li"),f(64,"Branch indicators help you to identity uncovered conditions."),p()(),y(65,"img",14)(66,"br"),h(67,"h2",15),f(68,"Metrics"),p(),h(69,"p"),f(70," Depending on your "),h(71,"a",16),f(72,"coverage tool"),p(),f(73,", metrics are provided to get further insigths in your "),h(74,"span",3),f(75,"code quality"),p(),f(76,". "),p(),h(77,"ul")(78,"li"),f(79,"The "),h(80,"a",17),R("click",function(){return o.scrollToAnchor("#details")}),f(81,"details page"),p(),f(82," contains information about the metrics of all methods of a class."),p(),h(83,"li"),f(84,"The "),h(85,"a",17),R("click",function(){return o.scrollToAnchor("#summary")}),f(86,"summary table"),p(),f(87," shows the lowest metrics of all methods of a class "),h(88,"a",6)(89,"span",7),f(90,"PRO"),p()()()(),h(91,"b"),f(92,"Details page"),p(),y(93,"br")(94,"img",18)(95,"br")(96,"br"),h(97,"b"),f(98,"Summary table"),p(),y(99,"br")(100,"img",19)(101,"br"),h(102,"h2",20),f(103,"Risk Hotspots"),p(),h(104,"p"),f(105," Based on the "),h(106,"a",17),R("click",function(){return o.scrollToAnchor("#metrics")}),f(107,"metrics"),p(),f(108," you get a list of potential risk hotspots."),y(109,"br"),f(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),p(),h(111,"ul")(112,"li")(113,"a",21),f(114,"Cyclomatic complexity"),p(),f(115,"\xa0"),h(116,"a",21),y(117,"i",5),p()(),h(118,"li")(119,"a",22),f(120,"NPath complexity"),p(),f(121,"\xa0"),h(122,"a",22),y(123,"i",5),p()(),h(124,"li")(125,"a",23),f(126,"Crap score"),p(),f(127,"\xa0"),h(128,"a",23),y(129,"i",5),p()()(),y(130,"img",24),p()),2&r&&(C(25),E("routerLink",ee(2,AM)),C(63),E("routerLink",ee(3,AM)))},dependencies:[Mn]})}return e})();const Gt={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.2.0"},$U=()=>["/usage"];let GU=(()=>{class e{constructor(){this.versions=Gt}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[Ot],decls:72,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["href","https://github.com/coverlet-coverage/coverlet"],["href","https://github.com/SteveGilham/altcover"],[1,"text-dark","bg-light","p-2","border"],["id","java",1,"mt-5"],["href","https://github.com/jacoco/jacoco"],["id","nodejs",1,"mt-5"],["href","https://github.com/istanbuljs/nyc"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Get started"),p(),h(3,"h2"),f(4,"General"),p(),h(5,"p"),f(6,"In general you need a tool that instruments your test code and collects coverage information."),y(7,"br"),f(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),y(9,"br"),h(10,"em"),f(11,"ReportGenerator"),p(),f(12," uses this file and generates a report in HTML format (other formats are available)."),p(),h(13,"p"),f(14,"Use the online "),h(15,"a",2),f(16,"configuration tool"),p(),f(17," to get started quickly."),p(),h(18,"h2",3),f(19,".NET"),p(),h(20,"p"),f(21,"For .NET you can use "),h(22,"a",4),f(23,"coverlet"),p(),f(24," or "),h(25,"a",5),f(26,"altcover"),p(),f(27," for instrumenting your test code."),p(),h(28,"p"),f(29,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),p(),h(30,"p")(31,"strong"),f(32,"Add dependencies to your "),h(33,"code"),f(34,"*.csproj"),p(),f(35," file:"),p()(),h(36,"pre",6),f(37),p(),h(38,"p")(39,"strong"),f(40,"Execute tests and create coverage report"),p()(),h(41,"pre",6),f(42),p(),h(43,"h2",7),f(44,"Java"),p(),h(45,"p"),f(46,"For Java you can use "),h(47,"a",8),f(48,"JaCoCo"),p(),f(49," for instrumenting your test code.\nAfter adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report."),p(),h(50,"p")(51,"strong"),f(52,"Add dependencies to your "),h(53,"code"),f(54,"pom.xml"),p(),f(55," file:"),p()(),h(56,"pre",6),f(57,"\n \n \n \n org.jacoco\n jacoco-maven-plugin\n 0.8.6\n \n \n \n prepare-agent\n \n \n \n report\n prepare-package\n \n report\n \n \n \n \n \n \n \n \n \n org.jacoco\n jacoco-maven-plugin\n \n \n \n report\n \n \n \n \n \n \n\n"),p(),h(58,"p")(59,"strong"),f(60,"Execute tests and create coverage report"),p()(),h(61,"pre",6),f(62),p(),h(63,"h2",9),f(64,"NodeJS"),p(),h(65,"p"),f(66,"For NodeJS you can use "),h(67,"a",10),f(68,"Istanbul"),p(),f(69," for instrumenting your test code.\nAfter installing Istanbul, you can execute your tests and generate the coverage report."),p(),h(70,"pre",6),f(71),p()()),2&r&&(C(15),E("routerLink",ee(5,$U)),C(22),Hn('\n \n runtime; build; native; contentfiles; analyzers; buildtransitive\n all\n \n \n \n \n all\n runtime; build; native; contentfiles; analyzers\n \n\n'),C(5),Hn('dotnet test --collect:"XPlat Code Coverage"\n"%UserProfile%\\.nuget\\packages\\reportgenerator\\',o.versions.version,'\\tools\\net8.0\\ReportGenerator.exe" -reports:*\\TestResults\\*\\coverage.cobertura.xml -targetdir:coveragereport\n'),C(20),Hn("mvn test jacoco:report\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:target\\site\\jacoco\\jacoco.xml -targetdir:coveragereport -sourcedirs:src\\main\\java\n"),C(9),Hn("npm i nyc --save-dev\nnyc --reporter=coberatura mocha\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:coverage/cobertura-coverage.xml -targetdir:coveragereport\n"))},dependencies:[Mn]})}return e})(),xM=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-testimonials"]],standalone:!0,features:[Ot],decls:30,vars:0,consts:[[1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"container"],[1,"text-center"],[1,"row","mt-5"],[1,"col","text-center"],[1,"fa-brands","fa-microsoft","h1","text-secondary"],["href","https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/code-coverage.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-google","h1","text-secondary"],["href","https://github.com/GoogleCloudPlatform/iam-windows-authenticator","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-aws","h1","text-secondary"],["href","https://github.com/aws/aws-encryption-sdk-dafny/blob/mainline/aws-encryption-sdk-net/README.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"col","text-center","d-none","d-lg-block"],[1,"fa-solid","fa-heart","h1","text-secondary"],["href","https://github.com/danielpalme/ReportGenerator/network/dependents","target","_blank",1,"text-dark"],["href","https://www.nuget.org/packages?q=ReportGenerator+danielpalme","target","_blank",1,"btn","btn-outline-secondary"],[1,"fa-solid","fa-download"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"h2",2),f(3,"Trusted by"),p(),h(4,"div",3)(5,"div",4),y(6,"i",5)(7,"br"),h(8,"a",6),f(9,".NET Runtime"),p()(),h(10,"div",4),y(11,"i",7)(12,"br"),h(13,"a",8),f(14,"Google Cloud"),p()(),h(15,"div",4),y(16,"i",9)(17,"br"),h(18,"a",10),f(19,"AWS Encryption SDK"),p()(),h(20,"div",11),y(21,"i",12)(22,"br"),h(23,"a",13),f(24,"Many more"),p()()(),h(25,"div",3)(26,"div",4)(27,"a",14),y(28,"i",15),f(29," Over 60 million downloads on Nuget"),p()()()()())},encapsulation:2})}return e})();const zU=()=>["/pro"],qU=()=>["/usage"],WU=()=>["/getstarted"],ZU=()=>["/features"];let YU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-home"]],standalone:!0,features:[Ot],decls:114,vars:8,consts:[[1,"container"],[1,"row"],[1,"col-4","col-md-3"],["src","resources/logo.svg","alt","Logo ReportGenerator",1,"img-fluid"],[1,"col-xs-12","col-md-9","ps-4"],[1,"mt-5"],[1,"line","btn-primary"],[1,"mt-4","h5"],[1,"pro-text"],["href","resources/reports/Html/index.html","target","_blank",1,"btn","btn-primary","me-2","mb-2"],[1,"fa-solid","fa-eye"],[1,"row","mt-5"],[1,"col-sm-12","col-md-4"],[1,"icon"],[1,"fa-solid","fa-scale-balanced"],[1,"h5","ms-3","mt-3"],[1,"mt-3"],[3,"routerLink"],[1,"col-sm-12","col-md-4","mt-4","mt-md-0"],[1,"fa-solid","fa-lightbulb"],[1,"fa-solid","fa-plug"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col"],[1,"btn","btn-primary","me-2","mb-2",3,"routerLink"],[1,"fa-solid","fa-wrench"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank",1,"btn","btn-outline-dark","mb-2"],[1,"fa-brands","fa-github"],[1,"container-fluid","mt-5","pt-5","pb-5"],["href","resources/reports/Html/index.html","target","_blank"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"col-sm-12","col-md-6","pb-2"],["href","resources/screenshot1@2x.webp"],["loading","lazy","srcset","resources/screenshot1.webp 1x, resources/screenshot1@2x.webp 2x","src","resources/screenshot1.webp","alt","Screenshot",1,"img-fluid"],[1,"col-sm-12","col-md-6"],["href","resources/screenshot2@2x.webp"],["loading","lazy","srcset","resources/screenshot2.webp 1x, resources/screenshot2@2x.webp 2x","src","resources/screenshot2.webp","alt","Screenshot",1,"img-fluid"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"div",2),y(3,"img",3),p(),h(4,"div",4)(5,"h1"),f(6,"ReportGenerator"),p(),h(7,"h2",5),f(8,"Powerful code coverage visualization"),p(),h(9,"div",6),f(10,"\xa0"),p(),h(11,"div",7)(12,"p")(13,"i"),f(14,"ReportGenerator"),p(),f(15," converts "),h(16,"span",8),f(17,"coverage reports"),p(),f(18," generated by coverlet, OpenCover, dotCover, Visual Studio, NCover, Cobertura, JaCoCo, Clover, gcov or lcov into "),h(19,"span",8),f(20,"human readable reports in various formats"),p(),f(21,"."),p(),h(22,"p"),f(23,"The reports show the "),h(24,"span",8),f(25,"coverage quotas"),p(),f(26," and also visualize which lines of your source code have been covered."),p(),h(27,"p")(28,"a",9),y(29,"i",10),f(30," Browse example report"),p()()()()(),h(31,"div",11)(32,"div",12)(33,"div",13),y(34,"i",14),p(),h(35,"span",15),f(36,"Open source"),p(),h(37,"p",16)(38,"i"),f(39,"ReportGenerator"),p(),f(40," is open source under the permissive Apache License."),p(),h(41,"p"),f(42,"It's free to use."),y(43,"br"),f(44,"The "),h(45,"a",17),f(46,"PRO"),p(),f(47," version offers additional features."),p()(),h(48,"div",18)(49,"div",13),y(50,"i",19),p(),h(51,"span",15),f(52,"Easy to use"),p(),h(53,"p",16)(54,"i"),f(55,"ReportGenerator"),p(),f(56," is a command line tool which only requires a "),h(57,"a",17),f(58,"few parameters"),p(),f(59,"."),p(),h(60,"p"),f(61,"Integration into your build pipeline will only take a couple of minutes."),p()(),h(62,"div",18)(63,"div",13),y(64,"i",20),p(),h(65,"span",15),f(66,"Integration"),p(),h(67,"p",16)(68,"i"),f(69,"ReportGenerator"),p(),f(70," works on Windows, Linux and macOS."),p(),h(71,"p"),f(72,"Support for "),h(73,"a",21),f(74,"GitHub actions"),p(),f(75," and "),h(76,"a",22),f(77,"Azure DevOps"),p(),f(78," is available."),p()()(),h(79,"div",11)(80,"div",23)(81,"a",24),y(82,"i",25),f(83," Learn how to use"),p(),h(84,"a",26),y(85,"i",27),f(86," GitHub"),p()()()(),y(87,"app-testimonials"),h(88,"section",28)(89,"div",0)(90,"h2"),f(91,"Screenshots"),p(),h(92,"p"),f(93,"The screenshots show two snippets of the generated reports."),p(),h(94,"p"),f(95," Have a look the "),h(96,"a",17),f(97,"features page"),p(),f(98," to explore the elements in a coverage report or "),h(99,"a",29),f(100,"browse the example report"),p(),f(101,". "),y(102,"br"),f(103," You can also download "),h(104,"a",30),f(105,"sample reports"),p(),f(106," of all supported output formats."),p(),h(107,"div",1)(108,"div",31)(109,"a",32),y(110,"img",33),p()(),h(111,"div",34)(112,"a",35),y(113,"img",36),p()()()()()),2&r&&(C(45),E("routerLink",ee(4,zU)),C(12),E("routerLink",ee(5,qU)),C(24),E("routerLink",ee(6,WU)),C(15),E("routerLink",ee(7,ZU)))},dependencies:[Mn,xM],styles:[".h5[_ngcontent-%COMP%]{font-weight:300}section[_ngcontent-%COMP%]:first-of-type{padding-top:120px;min-height:calc(100vh - 171px)}.icon[_ngcontent-%COMP%]{background-color:#2e89df;background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);height:50px;width:50px;border-radius:8px;text-align:center;color:#fff;line-height:50px;font-size:1.5rem;display:inline-block}@media (max-width: 767px){section[_ngcontent-%COMP%]:first-of-type{padding-top:40px}}"]})}return e})(),QU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-not-found"]],standalone:!0,features:[Ot],decls:5,vars:0,consts:[[1,"container"],[1,"mb-4"],[1,"fa-solid","fa-triangle-exclamation","fs-1","me-4"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Not found"),p(),y(3,"i",2),f(4," The requested page does not exist.\n"),p())}})}return e})();class NM{constructor(){this.error=null,this.licenses=[]}}class XU{constructor(){this.error=null,this.isSponsor=!1,this.license=null}}let RM=(()=>{class e{initCodeFlow(){const o=`https://github.com/login/oauth/authorize?response_type=code&client_id=ecab9484932b59a12fd4&state=${this.createAndSaveNonce()}&redirect_uri=${window.location.origin}/pro`;console.log("Redirecting to: "+o),location.href=o}validateStateAndExtractCode(){let t=location.href;const r=t.indexOf("?");r>-1&&(t=t.substring(r+1));const o=this.parseQueryString(t);return o.state&&o.code&&this.validateNonce(o.state)?o.code:null}createAndSaveNonce(){const t=this.createNonce();return typeof window.localStorage<"u"&&localStorage.setItem("nonce",t),t}validateNonce(t){let r;return typeof window.localStorage<"u"&&(r=localStorage.getItem("nonce"),localStorage.removeItem("nonce")),r&&0!==r.length?r===t||(console.error("Validating nonce failed. Values do not match.",r,t),!1):(console.error("Validating nonce failed. No saved nonce available.",r,t),!1)}createNonce(){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let r=45,o="";const i=typeof self>"u"?null:self.crypto||self.msCrypto;if(i){let a=new Uint8Array(r);i.getRandomValues(a),a.map||(a.map=Array.prototype.map);const l=[];for(var s=0;s0&&(c=decodeURIComponent(a),u=decodeURIComponent(l),"/"===c.substring(0,1)&&(c=c.substring(1)),r[c]=u);return r}base64UrlEncode(t){return btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),OM=(()=>{class e{constructor(t){this.httpClient=t}getLicense(t){return this.httpClient.get(`${ye_apiBaseUrl}reportgenerator/license?code=${encodeURIComponent(t)}`)}getTrialLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/triallicense`,t)}getPaddleLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/paddlelicense`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(eg))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),JU=(()=>{class e{constructor(){this.isActive=!1,this.isActive=new Date["/contact"];function tB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(2);C(2),be(t.license.error),C(3),E("routerLink",ee(2,og))}}function nB(e,n){1&e&&(h(0,"div")(1,"p"),f(2,"Please become a "),h(3,"a",74),f(4,"GitHub sponsor"),p(),f(5," first."),p()())}function rB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function oB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function iB(e,n){if(1&e){const t=Fe();h(0,"div")(1,"label",75),f(2,"Thank you for becoming a sponsor. Here's your license:"),p(),h(3,"textarea",76),f(4),p(),h(5,"button",77),R("click",function(){return re(t),oe(P(2).copy())}),q(6,rB,3,0,"span",34)(7,oB,3,0,"span",34),p()()}if(2&e){const t=P(2);C(4),be(t.license.license),C(2),E("ngIf",!t.licenseCopied),C(1),E("ngIf",t.licenseCopied)}}function sB(e,n){if(1&e&&(h(0,"div",20),q(1,tB,8,3,"div",34)(2,nB,6,0,"div",34)(3,iB,8,3,"div",34),p()),2&e){const t=P();C(1),E("ngIf",t.license.error),C(1),E("ngIf",!t.license.error&&!t.license.isSponsor),C(1),E("ngIf",!t.license.error&&t.license.isSponsor&&t.license.license)}}const PM=e=>({active:e});function aB(e,n){if(1&e){const t=Fe();h(0,"span",80)(1,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!1)}),y(2,"i",82),f(3," Annual subscription"),p(),h(4,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!0)}),y(5,"i",83),f(6," Lifetime license"),p()()}if(2&e){const t=P();C(1),E("ngClass",Ms(2,PM,!t.lifetimeLicense)),C(3),E("ngClass",Ms(4,PM,t.lifetimeLicense))}}function lB(e,n){if(1&e){const t=Fe();h(0,"button",103),R("click",function(){return re(t),oe(P(2).requestTrial())}),y(1,"i",25),f(2," Start trial"),p()}2&e&&E("disabled",P(2).trialDisabled)}function cB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function uB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function dB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function fB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("individual"))}),y(1,"i",106),f(2," Buy now"),p()}}function hB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function pB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function gB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function mB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("team"))}),y(1,"i",106),f(2," Buy now"),p()}}function vB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function yB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function _B(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function CB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("enterprise"))}),y(1,"i",106),f(2," Buy now"),p()}}function DB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function wB(e,n){if(1&e&&(h(0,"div",2)(1,"div",84)(2,"div",85),y(3,"img",86),h(4,"h4",87),f(5,"Free"),y(6,"br"),f(7,"Trial"),p(),h(8,"p"),y(9,"i",88),f(10," Get full access"),y(11,"br")(12,"i",89),f(13," 10 day trial period "),p(),q(14,lB,3,1,"button",90)(15,cB,2,0,"button",91),p()(),h(16,"div",92)(17,"div",93),y(18,"img",94),h(19,"h4",87),f(20,"Individual"),y(21,"br"),f(22),p(),h(23,"p"),y(24,"i",95),f(25," Per developer license."),y(26,"br"),q(27,uB,3,0,"ng-container",34)(28,dB,3,0,"ng-container",34),p(),q(29,fB,3,0,"button",96)(30,hB,2,0,"button",91),p()(),h(31,"div",97)(32,"div",93),y(33,"img",98),h(34,"h4",87),f(35,"Team"),y(36,"br"),f(37),p(),h(38,"p"),y(39,"i",99),f(40," Up to 10 developers."),y(41,"br"),q(42,pB,3,0,"ng-container",34)(43,gB,3,0,"ng-container",34),p(),q(44,mB,3,0,"button",96)(45,vB,2,0,"button",91),p()(),h(46,"div",100)(47,"div",93),y(48,"img",101),h(49,"h4",87),f(50,"Enterprise"),y(51,"br"),f(52),p(),h(53,"p"),y(54,"i",102),f(55," Unlimited developers."),y(56,"br"),q(57,yB,3,0,"ng-container",34)(58,_B,3,0,"ng-container",34),p(),q(59,CB,3,0,"button",96)(60,DB,2,0,"button",91),p()()()),2&e){const t=P();C(14),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleIndividualLifetimeLicensePrice:t.paddleIndividualLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleTeamLifetimeLicensePrice:t.paddleTeamLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleEnterpriseLifetimeLicensePrice:t.paddleEnterpriseLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle)}}function bB(e,n){1&e&&(Dt(0),h(1,"div",70)(2,"span",71),f(3,"Loading..."),p()(),h(4,"span",108),f(5,"Your license is being generated. Please wait."),p(),wt())}function EB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(3);C(2),be(t.paddleLicense.error),C(3),E("routerLink",ee(2,og))}}function IB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function MB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function SB(e,n){if(1&e){const t=Fe();h(0,"div",112)(1,"textarea",113),f(2),p(),h(3,"button",77),R("click",function(){const i=re(t).$implicit;return oe(P(4).copyPaddle(i))}),q(4,IB,3,0,"span",34)(5,MB,3,0,"span",34),p()()}if(2&e){const t=n.$implicit,r=P(4);C(2),be(t),C(2),E("ngIf",-1===r.copiedPaddledLicenses.indexOf(t)),C(1),E("ngIf",r.copiedPaddledLicenses.indexOf(t)>-1)}}function TB(e,n){if(1&e&&(h(0,"div")(1,"label",110),f(2,"Thank you! Please save your license key persistently:"),p(),q(3,SB,6,3,"div",111),p()),2&e){const t=P(3);C(3),E("ngForOf",t.paddleLicense.licenses)}}function AB(e,n){if(1&e&&(h(0,"div",109),q(1,EB,8,3,"div",34)(2,TB,4,1,"div",34),p()),2&e){const t=P(2);C(1),E("ngIf",t.paddleLicense.error),C(1),E("ngIf",!t.paddleLicense.error)}}function xB(e,n){if(1&e&&(h(0,"div",2),q(1,bB,6,0,"ng-container",34)(2,AB,3,2,"div",107),p()),2&e){const t=P();C(1),E("ngIf",t.paddleLicenseRequested&&!t.paddleLicense),C(1),E("ngIf",t.paddleLicense)}}function NB(e,n){1&e&&(h(0,"p")(1,"i"),f(2,"ReportGenerator"),p(),f(3," subscription based licences are provided with a 30 day money back guarantee."),p())}const Di=()=>["/features"];let RB=(()=>{class e{get lifetimeLicense(){return this._lifetimeLicense}set lifetimeLicense(t){this._lifetimeLicense=t,this.lifetimeLicenseChangeTracked||(this.lifetimeLicenseChangeTracked=!0,this.trackingService.track("Licensetype changed"))}constructor(t,r,o){this.oauthService=t,this.licenseService=r,this.trackingService=o,this.paddleIndividualLicensePrice="US$49",this.paddleTeamLicensePrice="US$149",this.paddleEnterpriseLicensePrice="US$299",this.paddleIndividualLifetimeLicensePrice="US$79",this.paddleTeamLifetimeLicensePrice="US$249",this.paddleEnterpriseLifetimeLicensePrice="US$449",this.licenseRequested=!1,this.licenseCopied=!1,this.license=null,this.enablePaddle=!0,this.trialDisabled=!1,this.requestTrialData={name:"",email:""},this.paddleLicenseRequested=!1,this.paddleLicense=null,this.copiedPaddledLicenses=[],this.self=this,this.lifetimeLicenseChangeTracked=!1,this._lifetimeLicense=!1,window.paddleCheckoutComplete=i=>{this.paddleCheckoutComplete(i)},window.Paddle.Setup({vendor:144162}),window.Paddle.Product.Prices(762579,i=>{this.paddleIndividualLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762580,i=>{this.paddleTeamLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762581,i=>{this.paddleEnterpriseLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(833943,i=>{this.paddleIndividualLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833944,i=>{this.paddleTeamLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833945,i=>{this.paddleEnterpriseLifetimeLicensePrice=i.price.gross})}ngOnInit(){const t=this.oauthService.validateStateAndExtractCode();null!==t?(console.log("Code received",t),this.licenseRequested=!0,this.licenseService.getLicense(t).subscribe({next:r=>{console.log("Received license response"),this.license=r,this.scrollToGithub()},error:r=>{console.error(r),this.license=new XU,this.license.error="Unable to generate license."},complete:()=>console.info("complete")})):console.log("No code available"),location.href.indexOf("?source=trial")>-1&&this.trackingService.track("Trial2Pro"),this.requestTrialModal=new window.bootstrap.Modal("#requestTrialModal");try{this.trialDisabled=null!==window.localStorage.getItem("trialRequested")}catch{}}requestLicense(){this.licenseRequested=!0,this.oauthService.initCodeFlow()}copy(){try{navigator.clipboard.writeText(this.license.license),this.licenseCopied=!0}catch(t){console.error("Failed to copy license",t)}}copyPaddle(t){try{navigator.clipboard.writeText(t),this.copiedPaddledLicenses.push(t)}catch(r){console.error("Failed to copy paddle license",r)}}scrollToGithub(){return document.querySelector("#github").scrollIntoView(!0),!1}scrollToPaddle(){return document.querySelector("#paddle").scrollIntoView(!0),!1}requestTrial(){this.requestTrialModal.show(),this.trackingService.track("Trial-Started")}completeTrial(){console.log("Trial completed"),this.requestTrialModal.hide(),this.paddleLicenseRequested=!0,this.licenseService.getTrialLicense(this.requestTrialData).subscribe({next:t=>{console.log("Received trial license response"),this.paddleLicense=t,this.scrollToPaddle();try{window.localStorage.setItem("trialRequested","true"),this.trialDisabled=!0}catch{}this.trackingService.track("Trial-Completed")},error:t=>{console.error(t),this.paddleLicense=new NM,this.paddleLicense.error="Unable to generate trial license."},complete:()=>{console.info("complete"),this.requestTrialData={name:"",email:""}}})}openPaddleCheckout(t){"enterprise"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833945:762581,successCallback:"paddleCheckoutComplete"}):"team"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833944:762580,successCallback:"paddleCheckoutComplete"}):window.Paddle.Checkout.open({product:this.lifetimeLicense?833943:762579,successCallback:"paddleCheckoutComplete"}),this.trackingService.track("Paddle-Started",{props:{product:t,lifetimeLicense:this.lifetimeLicense}})}paddleCheckoutComplete(t){console.log("Checkout completed",t),this.paddleLicenseRequested=!0,this.licenseService.getPaddleLicense(t).subscribe({next:r=>{console.log("Received paddle license response"),this.paddleLicense=r,this.scrollToPaddle(),this.trackingService.track("Paddle-Completed",{props:{product:t.product.name,lifetimeLicense:this.lifetimeLicense}})},error:r=>{console.error(r),this.paddleLicense=new NM,this.paddleLicense.error="Unable to generate Paddle license."},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(RM),S(OM),S(JU))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-pro-component"]],standalone:!0,features:[Ot],decls:229,vars:25,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-xs-12","col-md-6","order-2","order-md-1"],[1,"table"],["scope","col"],["scope","col",1,"text-center"],[1,"pro-button"],["scope","row"],["fragment","metrics","title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-info","text-secondary"],[1,"text-center"],[1,"fa-solid","fa-circle-check","text-secondary"],["fragment","riskhotspots","title","Show feature details",3,"routerLink"],["title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-check","pro-text"],[1,"col-xs-12","col-md-6","order-1","order-md-2"],["href","",3,"click"],[3,"routerLink"],["id","github",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"col-xs-12","col-md-6","pb-3"],[1,"fs-2","me-3","number"],["href","https://github.com/sponsors/danielpalme","target","_blank",1,"btn","btn-outline-dark"],[1,"fa-solid","fa-heart","githubheart"],["type","button",1,"btn","btn-primary","me-3",3,"disabled","click"],[1,"fa-solid","fa-rocket"],["class","spinner-border text-info","role","status",4,"ngIf"],["class","col-md-6 pb-3 d-none d-lg-block position-relative",4,"ngIf"],["class","col-xs-12 col-md-6 pb-3",4,"ngIf"],["id","paddle",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"text-center","mb-3"],["class","togglecontainer",4,"ngIf"],["class","row",4,"ngIf"],[1,"mt-5"],[4,"ngIf"],[1,"container-fluid","mt-4","pt-5","pb-5","bg-light"],[1,"container","text-center"],[1,"row","mt-5","testimonial"],["href","https://twitter.com/fredyfx/status/1642807795828543488","target","_blank"],["loading","lazy","src","resources/twitter_light.webp","alt","Testimonial",1,"img-fluid"],["id","faq",1,"container","mt-5","pt-5","pb-5"],["id","accordionFaq",1,"accordion","accordion-flush"],[1,"accordion-item"],["id","headingOne",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseOne","aria-expanded","true","aria-controls","collapseOne",1,"accordion-button"],["id","collapseOne","aria-labelledby","headingOne","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse","show"],[1,"accordion-body"],["id","headingTwo",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseTwo","aria-expanded","false","aria-controls","collapseTwo",1,"accordion-button","collapsed"],["id","collapseTwo","aria-labelledby","headingTwo","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["id","headingThree",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseThree","aria-expanded","false","aria-controls","collapseThree",1,"accordion-button","collapsed"],["id","collapseThree","aria-labelledby","headingThree","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["tabindex","-1","id","requestTrialModal",1,"modal"],[1,"modal-dialog"],[1,"modal-content"],["method","post",3,"ngSubmit"],["trialForm","ngForm"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal","aria-label","Close",1,"btn-close"],[1,"modal-body"],[1,"form-floating","mb-3"],["type","text","id","name","name","name","required","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],["for","floatingInput"],[1,"required"],["type","email","id","email","name","email","required","","email","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-secondary"],["type","submit",1,"btn","btn-primary",3,"disabled"],["role","status",1,"spinner-border","text-info"],[1,"visually-hidden"],[1,"col-md-6","pb-3","d-none","d-lg-block","position-relative"],[1,"fa-solid","fa-heart","githubheartlarge"],["href","https://github.com/sponsors/danielpalme","target","_blank"],["for","licensetext"],["id","licensetext","rows","5","readonly","",1,"form-control","mt-2"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"],[1,"togglecontainer"],[1,"option",3,"ngClass","click"],[1,"fa-solid","fa-rotate-right"],[1,"fa-solid","fa-infinity"],[1,"col-xs-12","col-md-6","col-lg-3","mt-0","pb-3","text-center","paddle-container"],[1,"paddle","trial"],["src","resources/trial.svg","alt","Trial",1,"img-fluid"],[1,"mt-3"],[1,"fa-solid","fa-magnifying-glass"],[1,"fa-solid","fa-calendar-days"],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],["type","button","class","btn btn-primary","disabled","",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-md-0","pb-3","text-center","paddle-container"],[1,"paddle"],["src","resources/individual.svg","alt","Individual",1,"img-fluid"],[1,"fa-solid","fa-user"],["type","button","class","btn btn-primary",3,"click",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/team.svg","alt","Team",1,"img-fluid"],[1,"fa-solid","fa-users"],[1,"col-xs-6","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/enterprise.svg","alt","Enterprise",1,"img-fluid"],[1,"fa-solid","fa-industry"],["type","button",1,"btn","btn-primary",3,"disabled","click"],["type","button","disabled","",1,"btn","btn-primary"],["type","button",1,"btn","btn-primary",3,"click"],[1,"fa-solid","fa-cart-shopping"],["class","col-xs-12 col-md-6",4,"ngIf"],[1,"position-relative","paddle-loading"],[1,"col-xs-12","col-md-6"],["for","paddlelicensetext"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-2"],["id","paddlelicensetext","rows","5","readonly","",1,"form-control"]],template:function(r,o){if(1&r&&(h(0,"div",0)(1,"h1",1),f(2,"PRO"),p(),h(3,"div",2)(4,"div",3)(5,"table",4)(6,"thead")(7,"tr"),y(8,"th",5),h(9,"th",6),f(10,"Free"),p(),h(11,"th",6)(12,"span",7),f(13,"PRO"),p()()()(),h(14,"tbody")(15,"tr")(16,"th",8),f(17,"Metrics "),h(18,"a",9),y(19,"i",10),p()(),h(20,"td",11),y(21,"i",12),p(),h(22,"td",11),y(23,"i",12),p()(),h(24,"tr")(25,"th",8),f(26,"Risk Hotspots "),h(27,"a",13),y(28,"i",10),p()(),h(29,"td",11),y(30,"i",12),p(),h(31,"td",11),y(32,"i",12),p()(),h(33,"tr")(34,"th",8),f(35,"Line coverage "),h(36,"a",14),y(37,"i",10),p()(),h(38,"td",11),y(39,"i",12),p(),h(40,"td",11),y(41,"i",12),p()(),h(42,"tr")(43,"th",8),f(44,"Branch coverage "),h(45,"a",14),y(46,"i",10),p()(),h(47,"td",11),y(48,"i",12),p(),h(49,"td",11),y(50,"i",12),p()(),h(51,"tr")(52,"th",8),f(53,"Method coverage "),h(54,"a",14),y(55,"i",10),p()(),y(56,"td",11),h(57,"td",11),y(58,"i",15),p()(),h(59,"tr")(60,"th",8),f(61,"Metrics on summary page "),h(62,"a",9),y(63,"i",10),p()(),y(64,"td",11),h(65,"td",11),y(66,"i",15),p()(),h(67,"tr")(68,"th",8)(69,"i"),f(70,"OpenCover"),p(),f(71," output format"),p(),y(72,"td",11),h(73,"td",11),y(74,"i",15),p()()()()(),h(75,"div",16)(76,"p")(77,"i"),f(78,"ReportGenerator"),p(),f(79," is Open Source and free to use."),y(80,"br"),f(81," Some of the advanced features require a PRO license. "),p(),h(82,"p"),f(83," You can either become a "),h(84,"a",17),R("click",function(){return o.scrollToGithub()}),f(85,"GitHub sponsor"),p(),f(86," or you can "),h(87,"a",17),R("click",function(){return o.scrollToPaddle()}),f(88,"buy a license"),p(),f(89,"."),y(90,"br"),f(91," A "),h(92,"a",17),R("click",function(){return o.scrollToPaddle()}),f(93,"free trial version"),p(),f(94," is available too. "),p(),h(95,"p"),f(96," Get "),h(97,"a",18),f(98,"in touch"),p(),f(99," if you have any issues and we will figure it out. "),p()()()(),h(100,"section",19)(101,"div",0)(102,"h2",1),f(103,"Get your license as a GitHub sponsor"),p(),h(104,"div",2)(105,"div",20)(106,"p"),f(107,"You can obtain your license in two easy steps (no sign up required):"),p(),h(108,"span",21),f(109,"1."),p(),h(110,"a",22),y(111,"i",23),f(112," Become a GitHub sponsor"),p(),y(113,"br"),h(114,"span",21),f(115,"2."),p(),h(116,"button",24),R("click",function(){return o.requestLicense()}),y(117,"i",25),f(118," Get license"),p(),q(119,KU,3,0,"div",26),p(),q(120,eB,2,0,"div",27)(121,sB,4,3,"div",28),p()()(),h(122,"section",29)(123,"div",0)(124,"h2",1),f(125,"Buy a license"),p(),h(126,"div",30),q(127,aB,7,6,"span",31),p(),q(128,wB,61,17,"div",32)(129,xB,3,2,"div",32),h(130,"div",33),q(131,NB,4,0,"p",34),h(132,"p"),f(133,"The order process is conducted by Paddle.com. Paddle.com is the Merchant of Record for all orders. Paddle provides all customer service inquiries and handles returns."),p()()()(),y(134,"app-testimonials"),h(135,"section",35)(136,"div",36)(137,"h3"),f(138,"Customers"),p(),h(139,"div",37)(140,"a",38),y(141,"img",39),p()()()(),h(142,"section",40)(143,"h2",1),f(144,"Frequently Asked Questions"),p(),h(145,"div",41)(146,"div",42)(147,"h2",43)(148,"button",44),f(149," How do I use/activate my license? "),p()(),h(150,"div",45)(151,"div",46),f(152," Your license key is passed to "),h(153,"i"),f(154,"ReportGenerator"),p(),f(155," via a command line parameter: "),h(156,"i"),f(157,"-license:YOUR_KEY"),p()()()(),h(158,"div",42)(159,"h2",47)(160,"button",48),f(161," Are there limitations on number of users? "),p()(),h(162,"div",49)(163,"div",46)(164,"b"),f(165,"GitHub sponsors"),p(),y(166,"br"),h(167,"p"),f(168,"There's no enforced limit. Please pick a sponsor level that fits your company size and budget."),p(),h(169,"b"),f(170,"Bought license"),p(),y(171,"br"),h(172,"p"),f(173,"There's no enforced limit. Please choose a plan that matches the number of developers using "),h(174,"i"),f(175,"ReportGenerator"),p(),f(176,"."),p()()()(),h(177,"div",42)(178,"h2",50)(179,"button",51),f(180," Will my license expire? "),p()(),h(181,"div",52)(182,"div",46)(183,"b"),f(184,"GitHub sponsors"),p(),y(185,"br"),h(186,"p"),f(187,"Your license will not expire."),p(),h(188,"b"),f(189,"Bought license"),p(),y(190,"br"),h(191,"p")(192,"b"),f(193,"Annual subscription"),p(),f(194,": Your license may get revoked for new releases of "),h(195,"i"),f(196,"ReportGenerator"),p(),f(197,", if you cancel your subscription."),y(198,"br"),h(199,"b"),f(200,"Lifetime licenses"),p(),f(201,": Lifetime licenses will not expire. "),p()()()()()(),h(202,"div",53)(203,"div",54)(204,"div",55)(205,"form",56,57),R("ngSubmit",function(){return o.completeTrial()}),h(207,"div",58)(208,"h5",59),f(209,"Free Trial"),p(),y(210,"button",60),p(),h(211,"div",61)(212,"div",62)(213,"input",63),R("ngModelChange",function(s){return o.requestTrialData.name=s}),p(),h(214,"label",64),f(215,"Name "),h(216,"span",65),f(217,"*"),p()()(),h(218,"div",62)(219,"input",66),R("ngModelChange",function(s){return o.requestTrialData.email=s}),p(),h(220,"label",64),f(221,"Email address "),h(222,"span",65),f(223,"*"),p()()()(),h(224,"div",67)(225,"button",68),f(226,"Close"),p(),h(227,"button",69),f(228,"Get trial license"),p()()()()()()),2&r){const i=Gf(206);C(18),E("routerLink",ee(18,Di)),C(9),E("routerLink",ee(19,Di)),C(9),E("routerLink",ee(20,Di)),C(9),E("routerLink",ee(21,Di)),C(9),E("routerLink",ee(22,Di)),C(8),E("routerLink",ee(23,Di)),C(35),E("routerLink",ee(24,og)),C(19),E("disabled",o.licenseRequested),C(3),E("ngIf",o.licenseRequested&&!o.license),C(1),E("ngIf",!o.license),C(1),E("ngIf",o.license),C(6),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",o.paddleLicenseRequested),C(2),E("ngIf",!o.lifetimeLicense),C(82),E("ngModel",o.requestTrialData.name),C(6),E("ngModel",o.requestTrialData.email),C(8),E("disabled",!i.valid)}},dependencies:[Mn,Hh,Uh,uc,zc,Bc,gi,Rc,Oc,_i,Qp,Gc,na,yi,xM],styles:[".number[_ngcontent-%COMP%]{display:inline-block;position:relative;top:8px}.spinner-border[_ngcontent-%COMP%]{position:relative;top:9px}.paddle-container[_ngcontent-%COMP%]{padding:10px}.paddle[_ngcontent-%COMP%]{border:1px solid #8c8888;border-radius:20px;padding:20px;background-color:#d8e8f0}.trial[_ngcontent-%COMP%]{background-color:#b2cad7}.githubheartlarge[_ngcontent-%COMP%]{position:absolute;top:-120px;left:40%;font-size:20rem;color:#ffd2ed}.togglecontainer[_ngcontent-%COMP%]{background-color:#fff;display:inline-block;border-radius:20px;white-space:nowrap}.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{background-color:#fff;padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-block}.togglecontainer[_ngcontent-%COMP%] .option.active[_ngcontent-%COMP%]{color:#fff;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}@media only screen and (max-width: 400px){.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%] .fa-solid[_ngcontent-%COMP%]{display:none}}.paddle-loading[_ngcontent-%COMP%]{position:relative;left:35px;top:-20px}.testimonial[_ngcontent-%COMP%]{max-width:550px;margin:auto}"]})}return e})();class Xc{constructor(n,t,r,o,i,s){this.name=n,this.url=t,this.runtimes=r,this.description=o,this.installOptions=i,this.executables=s}formatExecutable(n){return n.tool}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?'"':"";return`\r\n${r}-${n}:${t}${r}`}formatArguments(n,t){return this.formatArgument(n,t.filter(r=>null!=r&&0!==r.length&&0!==r.trim().length).join(";"))}}class OB extends Xc{formatExecutable(n){let t=`- task: ${n.tool}@${Gt.majorVersion}`;return t+="\r\n displayName: ReportGenerator",t+="\r\n inputs:",console.log("hello",t),t}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class PB{constructor(){this.verbosities=["Verbose","Info","Warning","Error","Off"],this.types=["Html","Coverage tool","Json","Markdown","Xml","Text","Image"],this.reports=["cobertura.xml"],this.targetdir="coveragereport",this.reporttypes=[{name:"Html",types:["Html"],description:"The default output format. Creates a summary overview (index.html) and detailed reports for each class.",requiresHistoryDir:!1,checked:!0,sampleReport:"resources/reports/Html/index.html"},{name:"Html_Light",types:["Html"],description:"Same as Html but with a light theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Light/index.html"},{name:"Html_Dark",types:["Html"],description:"Same as Html but with a dark theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Dark/index.html"},{name:"Html_BlueRed",types:["Html"],description:"Same as Html but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed/index.html"},{name:"HtmlSummary",types:["Html"],description:"Creates a single HTML file (summary.html) without links.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlSummary/summary.html"},{name:"Html_BlueRed_Summary",types:["Html"],description:"Same as HtmlSummary but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed_Summary/summary.html"},{name:"HtmlChart",types:["Html"],description:"Creates a single HTML file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/HtmlChart/CoverageHistory.html"},{name:"HtmlInline",types:["Html"],description:"Same as HTML but CSS and JavaScript is included in every HTML page. This results in larger file sizes, but can be useful for integration into build servers like Azure DevOps (VSTS), since they may block referenced CSS and JavaScript files.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline/index.html"},{name:"HtmlInline_AzurePipelines",types:["Html"],description:"Same as HtmlInline but with an adaptive light/dark theme matching the look and feel of Azure Pipelines",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines/index.html"},{name:"HtmlInline_AzurePipelines_Light",types:["Html"],description:"Same as HtmlInline but with a light theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Light/index.html"},{name:"HtmlInline_AzurePipelines_Dark",types:["Html"],description:"Same as HtmlInline but with a dark theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Dark/index.html"},{name:"MHtml",types:["Html"],description:"Same as HTML but packaged into a single MHTML file.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MHtml/Summary.mht"},{name:"Clover",types:["Coverage tool"],description:"Creates a XML file in Clover format. This format integrates with tools like Atlassian Bamboo.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Clover/Clover.xml"},{name:"Cobertura",types:["Coverage tool"],description:"Creates a XML file in Cobertura format. This format integrates with tools like Azure DevOps (VSTS) or Jenkins.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Cobertura/Cobertura.xml"},{name:"OpenCover",types:["Coverage tool"],description:"Creates a XML file in OpenCover format (PRO version only).",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/OpenCover/OpenCover.xml"},{name:"SonarQube",types:["Coverage tool"],description:"Creates a XML file in SonarQube 'Generic Test Data' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/SonarQube/SonarQube.xml"},{name:"lcov",types:["Coverage tool"],description:"Creates a text file in 'lcov' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/lcov/lcov.info"},{name:"XML",types:["Xml"],description:"Creates a XML file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Xml/Summary.xml"},{name:"XMLSummary",types:["Xml"],description:"Creates a single XML file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/XmlSummary/Summary.xml"},{name:"JsonSummary",types:["Json"],description:"Creates a single JSON file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/JsonSummary/Summary.json"},{name:"Latex",types:["Text"],description:"Creates a single TEX file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Summary/Summary.tex"},{name:"LatexSummary",types:["Text"],description:"Creates a single TEX file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/LatexSummary/Summary.tex"},{name:"TeamCitySummary",types:["Coverage tool"],description:"Command line output interpreted by TeamCity.",requiresHistoryDir:!1,checked:!1,sampleReport:null},{name:"TextSummary",types:["Text"],description:"Creates a single TXT file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/TextSummary/Summary.txt"},{name:"TextDeltaSummary",types:["Text"],description:"Creates a single TXT file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/TextDeltaSummary/DeltaSummary.txt"},{name:"CsvSummary",types:["Text"],description:"Creates a single CSV file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/CsvSummary/Summary.csv"},{name:"MarkdownSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummary/Summary.md"},{name:"MarkdownSummaryGithub",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class. The report is optimized for GitHub.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummaryGithub/SummaryGithub.md"},{name:"MarkdownDeltaSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/MarkdownDeltaSummary/DeltaSummary.md"},{name:"SvgChart",types:["Image"],description:"Creates a single SVG file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/SvgChart/CoverageHistory.svg"},{name:"Badges",types:["Image"],description:"Creates SVG files that show line and/or branch coverage information.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Badges/index.html"}],this.sourcedirectories=[],this.historydir="",this.plugins=[],this.assemblyfilters=[],this.classfilters=[],this.filefilters=[],this.selectedverbosity=this.verbosities[1],this.selectedType=null,this.title="",this.tag="",this.license=""}addSourceDirectory(){return this.sourcedirectories.push(""),!1}removeSourceDirectory(n){return this.sourcedirectories.splice(n,1),!1}addReport(){return this.reports.push(""),!1}removeReport(n){return this.reports.splice(n,1),!1}addPlugin(){return this.plugins.push(""),!1}removePlugin(n){return this.plugins.splice(n,1),!1}addAssemblyFilter(){return this.assemblyfilters.push(""),!1}removeAssemblyFilter(n){return this.assemblyfilters.splice(n,1),!1}addClassFilter(){return this.classfilters.push(""),!1}removeClassFilter(n){return this.classfilters.splice(n,1),!1}addFileFilter(){return this.filefilters.push(""),!1}removeFileFilter(n){return this.filefilters.splice(n,1),!1}getUsage(n,t){const r=n.executables.find(a=>a.runtime==t);let o=void 0!==r?n.formatExecutable(r):"";o+=n.formatArguments("reports",this.reports),o+=n.formatArgument("targetdir",this.targetdir);for(var i="",s=0;s0&&(i+=";"),i+=this.reporttypes[s].name);return i.length>0&&"Html"!==i&&(o+=n.formatArgument("reporttypes",i)),o+=n.formatArguments("sourcedirs",this.sourcedirectories),o+=n.formatArgument("historydir",this.historydir),o+=n.formatArguments("plugins",this.plugins),o+=n.formatArguments("assemblyfilters",this.assemblyfilters),o+=n.formatArguments("classfilters",this.classfilters),o+=n.formatArguments("filefilters",this.filefilters),"Info"!==this.selectedverbosity&&(o+=n.formatArgument("verbosity",this.selectedverbosity)),o+=n.formatArgument("title",this.title),o+=n.formatArgument("tag",this.tag),o+=n.formatArgument("license",this.license),o}historyDirRequired(){for(let n=0;n-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class ig{constructor(n,t){this.tool=n,this.command=t}}function FB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",37),R("ngModelChange",function(o){return re(t),oe(P().selectedEnvironment=o)})("ngModelChange",function(){return re(t),oe(P().selectedEnvironmentChanged())}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=n.$implicit,r=P();C(2),E("ngModel",r.selectedEnvironment)("value",t)("checked",r.selectedEnvironment.name===t.name),C(2),be(t.name),C(3),be(t.description)}}function LB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",41),R("ngModelChange",function(o){return re(t),oe(P(3).selectedPackage=o)}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=P().$implicit,r=P(2);C(2),E("ngModel",r.selectedPackage)("value",t),C(2),be(t.name),C(3),be(t.description)}}function VB(e,n){if(1&e&&(Dt(0),q(1,LB,8,4,"div",40),wt()),2&e){const t=n.$implicit,r=P(2);C(1),E("ngIf",t.runtimes.indexOf(r.selectedEnvironment.name)>-1)}}function jB(e,n){if(1&e&&(Dt(0),h(1,"h4"),f(2,"NuGet Package"),p(),q(3,VB,2,1,"ng-container",39),wt()),2&e){const t=P();C(3),E("ngForOf",t.packages)}}function HB(e,n){if(1&e){const t=Fe();h(0,"span",45),R("click",function(){re(t);const o=P().index;return oe(P().configuration.removeReport(o))}),h(1,"a",46),y(2,"i",47),p()()}}const UB=e=>({"input-group":e});function BB(e,n){if(1&e){const t=Fe();h(0,"div",38)(1,"div",42)(2,"input",43),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.reports[s]=o)}),p(),q(3,HB,3,0,"span",44),p()()}if(2&e){const t=n.index,r=P();C(1),E("ngClass",Ms(4,UB,t>0)),C(1),jn("name","report_",t,""),E("ngModel",r.configuration.reports[t]),C(1),E("ngIf",t>0)}}const $B=(e,n)=>({"btn-outline-primary":e,"btn-primary":n});function GB(e,n){if(1&e){const t=Fe();h(0,"button",48),R("click",function(){const i=re(t).$implicit,s=P();return oe(s.configuration.selectedType=s.configuration.selectedType===i?null:i)}),f(1),p()}if(2&e){const t=n.$implicit,r=P();E("ngClass",zD(2,$B,t!==r.configuration.selectedType,t===r.configuration.selectedType)),C(1),be(t)}}function zB(e,n){if(1&e){const t=Fe();h(0,"span",53),y(1,"i",54),f(2," Please specify a "),h(3,"a",9),R("click",function(){return re(t),oe(P(3).scrollToHistoryDir())}),f(4,"history directory"),p()()}}function qB(e,n){if(1&e&&(Dt(0),y(1,"br",55),h(2,"a",29),f(3,"Sample report"),p(),f(4,"\xa0"),h(5,"a",29),y(6,"i",56),p(),wt()),2&e){const t=P(2).$implicit;C(2),E("href",t.sampleReport,bo),C(3),E("href",t.sampleReport,bo)}}function WB(e,n){if(1&e){const t=Fe();h(0,"div",50)(1,"label",36)(2,"input",51),R("change",function(){re(t);const o=P().$implicit;return oe(o.checked=!o.checked)}),p(),h(3,"b"),f(4),p(),q(5,zB,5,0,"span",52),y(6,"br"),h(7,"div",38),f(8),q(9,qB,7,2,"ng-container",5),p()()()}if(2&e){const t=P().$implicit,r=P();C(2),E("checked",t.checked),C(2),be(t.name),C(1),E("ngIf",t.checked&&t.requiresHistoryDir&&!r.configuration.historydir),C(3),Hn("",t.description," "),C(1),E("ngIf",t.sampleReport)}}function ZB(e,n){if(1&e&&(Dt(0),q(1,WB,10,5,"div",49),wt()),2&e){const t=n.$implicit,r=P();C(1),E("ngIf",!r.configuration.selectedType||t.types.indexOf(r.configuration.selectedType)>-1)}}function YB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",58),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.sourcedirectories[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeSourceDirectory(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","sourcedir_",t,""),E("ngModel",r.configuration.sourcedirectories[t])}}function QB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",59),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.plugins[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removePlugin(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","plugin_",t,""),E("ngModel",r.configuration.plugins[t])}}function XB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",60),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.assemblyfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeAssemblyFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","assemblyfilter_",t,""),E("ngModel",r.configuration.assemblyfilters[t])}}function JB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",61),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.classfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeClassFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","classfilter_",t,""),E("ngModel",r.configuration.classfilters[t])}}function KB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",62),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.filefilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeFileFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","filefilter_",t,""),E("ngModel",r.configuration.filefilters[t])}}function e$(e,n){if(1&e&&(h(0,"option",63),f(1),p()),2&e){const t=n.$implicit;E("value",t),C(1),be(t)}}function t$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function n$(e,n){1&e&&(y(0,"i",65),f(1," Copied "))}function r$(e,n){1&e&&(y(0,"i",66),f(1," Copy "))}function o$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function i$(e,n){1&e&&(y(0,"i",65),f(1," Copied "))}function s$(e,n){1&e&&(y(0,"i",66),f(1," Copy "))}const a$=()=>["/pro"],l$=[{path:"",component:YU,pathMatch:"full",title:"Home",data:{canonical:"/"}},{path:"features",component:BU,title:"Features",data:{canonical:"/features"}},{path:"features.html",redirectTo:"/features"},{path:"getstarted",component:GU,title:"Get started",data:{canonical:"/getstarted"}},{path:"getstarted.html",redirectTo:"/getstarted"},{path:"usage",component:(()=>{class e{constructor(){this.versions=Gt,this.lastResult="",this.usageCopied=!1,this.configuration=new PB,this.environments=[new Jc(".NET Core",".NET Core"),new Jc(".NET Framework","The full .NET framework"),new Jc("Azure DevOps",null),new Jc("Github Action",null)],this.packages=[new Xc("ReportGenerator","https://www.nuget.org/packages/ReportGenerator",[".NET Framework",".NET Core"],"Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script.",[new ig("Package Manager",`Install-Package ReportGenerator -Version ${Gt.version}`),new ig(".NET CLI",`dotnet add package ReportGenerator --version ${Gt.version}`)],[new ia(".NET Framework",`$(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net47\\ReportGenerator.exe`),new ia(".NET Core",`dotnet $(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net6.0\\ReportGenerator.dll`)]),new Xc("dotnet-reportgenerator-globaltool","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool",[".NET Core"],"Use this package if your project is based on .NET Core and you want to use ReportGenerator as a (global) 'DotnetTool'.",[new ig(".NET CLI",`dotnet tool install --global dotnet-reportgenerator-globaltool --version ${Gt.version}\r\n\r\ndotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version ${Gt.version}\r\n\r\ndotnet new tool-manifest\r\ndotnet tool install dotnet-reportgenerator-globaltool --version ${Gt.version}`)],[new ia(".NET Core","reportgenerator")]),new OB("Azure DevOps","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator",["Azure DevOps"],"Use this package within Azure DevOps",[],[new ia("Azure DevOps","reportgenerator")]),new kB("GitHub Action","https://github.com/marketplace/actions/reportgenerator",["Github Action"],"Use this package within Github Actions",[],[new ia("Github Action","danielpalme/ReportGenerator-GitHub-Action")])],this.selectedEnvironment=this.environments[0],this.selectedPackage=this.packages[0]}selectedEnvironmentChanged(){this.selectedPackage=this.packages.find(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1)}severalPackagesAvailable(){return this.packages.filter(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1).length>1}getUsage(){const t=this.configuration.getUsage(this.selectedPackage,this.selectedEnvironment.name);return this.lastResult!==t&&(this.lastResult=t,this.usageCopied=!1),t}copy(){try{navigator.clipboard.writeText(this.getUsage()),this.usageCopied=!0}catch(t){console.error("Failed to copy license",t)}}scrollToHistoryDir(){return document.querySelector("#historydir").scrollIntoView(!0),!1}trackByIndex(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-usage-component"]],standalone:!0,features:[Ot],decls:219,vars:39,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-md-7"],["class","form-check",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"alert","alert-info"],["class","mb-3",4,"ngFor","ngForOf","ngForTrackBy"],[1,"input-group","mb-3"],["href","",3,"click"],[1,"fa","fa-plus-circle"],["type","text","name","targetdir","placeholder","The target directory","required","",1,"form-control",3,"ngModel","ngModelChange"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"me-2"],["type","button","class","btn btn-sm me-1 mb-1",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[4,"ngFor","ngForOf","ngForTrackBy"],["class","input-group mb-3",4,"ngFor","ngForOf","ngForTrackBy"],["id","historydir"],["type","text","name","historydir","placeholder","The history directory",1,"form-control",3,"ngModel","required","ngModelChange"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage"],["name","verbosity",1,"form-select",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["type","text","name","title","placeholder","Title",1,"form-control",3,"ngModel","ngModelChange"],["type","text","name","tag","placeholder","Optional tag or build version",1,"form-control",3,"ngModel","ngModelChange"],[3,"routerLink"],["type","text","name","license","placeholder","Optional license for PRO version","rows","4",1,"form-control",3,"ngModel","ngModelChange"],[1,"col-md-5"],[1,"d-md-none","mt-5"],["target","_blank",3,"href"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-4"],[1,"text-dark","bg-light","p-2","border"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"d-none","d-md-block","sticky"],[1,"form-check"],[1,"form-check-label"],["type","radio","name","environment",1,"form-check-input",3,"ngModel","value","checked","ngModelChange"],[1,"mb-3"],[4,"ngFor","ngForOf"],["class","form-check",4,"ngIf"],["type","radio","name","package",1,"form-check-input",3,"ngModel","value","ngModelChange"],[3,"ngClass"],["type","text","placeholder","The path of the coverage file","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["class","input-group-text",3,"click",4,"ngIf"],[1,"input-group-text",3,"click"],["href",""],[1,"fa","fa-trash","text-danger"],["type","button",1,"btn","btn-sm","me-1","mb-1",3,"ngClass","click"],["class","form-check mt-1",4,"ngIf"],[1,"form-check","mt-1"],["type","checkbox","name","reporttype",1,"form-check-input",3,"checked","change"],["class","text-danger ms-2",4,"ngIf"],[1,"text-danger","ms-2"],[1,"fa-solid","fa-triangle-exclamation"],[1,"mt-1"],[1,"fa-solid","fa-arrow-up-right-from-square"],[1,"input-group"],["type","text","placeholder","The source directory","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The path of the plugin","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for assemlies","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for classes","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for files","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],[3,"value"],[1,"mt-2"],[1,"fa-solid","fa-check","text-success"],[1,"fa-solid","fa-copy"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Usage"),p(),h(3,"div",2)(4,"div",3)(5,"form")(6,"h3"),f(7,"Environment"),p(),q(8,FB,8,5,"div",4),y(9,"hr"),q(10,jB,4,1,"ng-container",5),y(11,"hr"),h(12,"h3"),f(13,"Reports"),p(),h(14,"div",6),f(15,"Path to the coverage report(s) that should be parsed."),y(16,"br"),f(17,"Globbing is supported."),p(),q(18,BB,4,6,"div",7),h(19,"div",8)(20,"a",9),R("click",function(){return o.configuration.addReport()}),y(21,"i",10),f(22," Add report"),p()(),y(23,"br"),h(24,"h3"),f(25,"Target directory"),p(),h(26,"div",6),f(27,"The directory where the generated report(s) should be saved."),p(),h(28,"div",8)(29,"input",11),R("ngModelChange",function(s){return o.configuration.targetdir=s}),p()(),y(30,"br"),h(31,"h3"),f(32,"Report types"),p(),h(33,"div",6),f(34,"Download "),h(35,"a",12),f(36,"sample reports"),p()(),h(37,"span",13),f(38,"Filter:"),p(),q(39,GB,2,5,"button",14),y(40,"br"),q(41,ZB,2,1,"ng-container",15),h(42,"h3"),f(43,"Source directories"),p(),h(44,"div",6),f(45,"Optional directories which contain the corresponding source code."),y(46,"br"),f(47,"The source directories are used if coverage report contains classes without path information."),p(),q(48,YB,6,2,"div",16),h(49,"div",8)(50,"a",9),R("click",function(){return o.configuration.addSourceDirectory()}),y(51,"i",10),f(52," Add source directory"),p()(),y(53,"br"),h(54,"h3",17),f(55,"History directory"),p(),h(56,"div",6),f(57,"Optional directory for storing "),h(58,"b"),f(59,"persistent"),p(),f(60," coverage information. Choose a directory which does not get deleted between builds."),y(61,"br"),f(62,"Required to show the history chart in the HTML reports."),p(),h(63,"div",8)(64,"input",18),R("ngModelChange",function(s){return o.configuration.historydir=s}),p()(),y(65,"br"),h(66,"h3"),f(67,"Plugins"),p(),h(68,"div",6),f(69,"Optional plugin files for "),h(70,"a",19),f(71,"custom reports"),p(),f(72," or "),h(73,"a",20),f(74,"custom history storage"),p(),f(75,"."),p(),q(76,QB,6,2,"div",16),h(77,"div",8)(78,"a",9),R("click",function(){return o.configuration.addPlugin()}),y(79,"i",10),f(80," Add plugin"),p()(),y(81,"br"),h(82,"h3"),f(83,"Assembly filters"),p(),h(84,"div",6),f(85,"Optional list of "),h(86,"b"),f(87,"assemblies"),p(),f(88," that should be included or excluded in the report. "),y(89,"br"),f(90,"Exclusion filters take precedence over inclusion filters. "),y(91,"br"),f(92,"Wildcards are allowed."),y(93,"br"),h(94,"p"),f(95,"Examples:"),y(96,"br"),h(97,"code"),f(98,"+Included"),p(),y(99,"br"),h(100,"code"),f(101,"-Excluded"),p()()(),q(102,XB,6,2,"div",16),h(103,"div",8)(104,"a",9),R("click",function(){return o.configuration.addAssemblyFilter()}),y(105,"i",10),f(106," Add assembly filter"),p()(),y(107,"br"),h(108,"h3"),f(109,"Class filters"),p(),h(110,"div",6),f(111,"Optional list of "),h(112,"b"),f(113,"classes"),p(),f(114," that should be included or excluded in the report. "),y(115,"br"),f(116,"Exclusion filters take precedence over inclusion filters. "),y(117,"br"),f(118,"Wildcards are allowed."),y(119,"br"),h(120,"p"),f(121,"Examples:"),y(122,"br"),h(123,"code"),f(124,"+Included"),p(),y(125,"br"),h(126,"code"),f(127,"-Excluded"),p()()(),q(128,JB,6,2,"div",16),h(129,"div",8)(130,"a",9),R("click",function(){return o.configuration.addClassFilter()}),y(131,"i",10),f(132," Add class filter"),p()(),y(133,"br"),h(134,"h3"),f(135,"File filters"),p(),h(136,"div",6),f(137,"Optional list of "),h(138,"b"),f(139,"files"),p(),f(140," that should be included or excluded in the report. "),y(141,"br"),f(142,"Exclusion filters take precedence over inclusion filters. "),y(143,"br"),f(144,"Wildcards are allowed."),y(145,"br"),h(146,"p"),f(147,"Examples:"),y(148,"br"),h(149,"code"),f(150,"+Included"),p(),y(151,"br"),h(152,"code"),f(153,"-Excluded"),p()()(),q(154,KB,6,2,"div",16),h(155,"div",8)(156,"a",9),R("click",function(){return o.configuration.addFileFilter()}),y(157,"i",10),f(158," Add file filter"),p()(),y(159,"br"),h(160,"h3"),f(161,"Verbosity"),p(),h(162,"div",6),f(163,"The verbosity level of the log messages."),p(),h(164,"div",8)(165,"select",21),R("ngModelChange",function(s){return o.configuration.selectedverbosity=s}),q(166,e$,2,2,"option",22),p()(),y(167,"br"),h(168,"h3"),f(169,"Title"),p(),h(170,"div",6),f(171,"Optional title."),p(),h(172,"div",8)(173,"input",23),R("ngModelChange",function(s){return o.configuration.title=s}),p()(),y(174,"br"),h(175,"h3"),f(176,"Tag"),p(),h(177,"div",6),f(178,"Optional tag or build version."),p(),h(179,"div",8)(180,"input",24),R("ngModelChange",function(s){return o.configuration.tag=s}),p()(),y(181,"br"),h(182,"h3"),f(183,"License"),p(),h(184,"div",6),f(185,"Optional license. Get your license here: "),h(186,"a",25),f(187,"https://reportgenerator.io/pro"),p()(),h(188,"div",8)(189,"textarea",26),R("ngModelChange",function(s){return o.configuration.license=s}),p()()()(),h(190,"div",27)(191,"div",28)(192,"h3"),f(193,"Instructions"),p(),f(194," Install "),h(195,"a",29),f(196),p(),q(197,t$,6,2,"div",30),h(198,"h4",31),f(199,"Usage"),p(),h(200,"pre",32),f(201),p(),h(202,"button",33),R("click",function(){return o.copy()}),q(203,n$,2,0)(204,r$,2,0),p()(),h(205,"div",34)(206,"h3"),f(207,"Instructions"),p(),f(208," Install "),h(209,"a",29),f(210),p(),q(211,o$,6,2,"div",30),h(212,"h4",31),f(213,"Usage"),p(),h(214,"pre",32),f(215),p(),h(216,"button",33),R("click",function(){return o.copy()}),q(217,i$,2,0)(218,s$,2,0),p()()()()()),2&r&&(C(8),E("ngForOf",o.environments),C(2),E("ngIf",o.severalPackagesAvailable()),C(8),E("ngForOf",o.configuration.reports)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.targetdir),C(10),E("ngForOf",o.configuration.types)("ngForTrackBy",o.trackByIndex),C(2),E("ngForOf",o.configuration.reporttypes)("ngForTrackBy",o.trackByIndex),C(7),E("ngForOf",o.configuration.sourcedirectories)("ngForTrackBy",o.trackByIndex),C(16),E("ngModel",o.configuration.historydir)("required",o.configuration.historyDirRequired()),C(12),E("ngForOf",o.configuration.plugins)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.assemblyfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.classfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.filefilters)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.selectedverbosity),C(1),E("ngForOf",o.configuration.verbosities)("ngForTrackBy",o.trackByIndex),C(7),E("ngModel",o.configuration.title),C(7),E("ngModel",o.configuration.tag),C(6),E("routerLink",ee(38,a$)),C(3),E("ngModel",o.configuration.license),C(6),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),Ho(203,o.usageCopied?203:204),C(6),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),Ho(217,o.usageCopied?217:218))},dependencies:[zc,Bc,QI,JI,gi,$c,zp,Rc,Oc,_i,Xp,na,yi,Hh,Uh,uc,Mn],styles:[".sticky[_ngcontent-%COMP%]{position:sticky;top:100px}"]})}return e})(),title:"Usage",data:{canonical:"/usage"}},{path:"usage.html",redirectTo:"/usage"},{path:"pro",component:RB,title:"PRO",data:{canonical:"/pro"}},{path:"pro.html",redirectTo:"/pro"},{path:"contact",component:UU,title:"Contact",data:{canonical:"/contact"}},{path:"contact.html",redirectTo:"/contact"},{path:"404",component:QU,title:"404 - Not found"},{path:"**",redirectTo:"/404"}];(function bV(e,n){return gF({rootComponent:e,...Zb(n)})})(uH,{providers:[iv(AV,(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[eI.forRoot(l$,{scrollPositionRestoration:"enabled",scrollOffset:[0,0],anchorScrolling:"enabled"}),eI]})}return e})(),zc),RM,OM,TM,function xU(...e){const n=[eg,vM,gM,{provide:qc,useExisting:gM},{provide:Wc,useExisting:vM},{provide:oa,useValue:AU,multi:!0},{provide:rg,useValue:!0},{provide:CM,useClass:TU}];for(const t of e)n.push(...t.\u0275providers);return ud(n)}(function NU(){return function zr(e,n){return{\u0275kind:e,\u0275providers:n}}(mr.LegacyInterceptors,[{provide:DM,useFactory:_U},{provide:oa,useExisting:DM,multi:!0}])}())]}).catch(e=>console.error(e))}},Kc=>{Kc(Kc.s=139)}]); \ No newline at end of file diff --git a/docs/main.ffb8fee3758b850b.js b/docs/main.ffb8fee3758b850b.js deleted file mode 100644 index b41dcfd1..00000000 --- a/docs/main.ffb8fee3758b850b.js +++ /dev/null @@ -1 +0,0 @@ -"use strict";(self.webpackChunkReportGenerator_io=self.webpackChunkReportGenerator_io||[]).push([[179],{139:()=>{let Re=null,Wr=1;function Se(e){const n=Re;return Re=e,n}function ig(e){if((!wi(e)||e.dirty)&&(e.dirty||e.lastCleanEpoch!==Wr)){if(!e.producerMustRecompute(e)&&!nu(e))return e.dirty=!1,void(e.lastCleanEpoch=Wr);e.producerRecomputeValue(e),e.dirty=!1,e.lastCleanEpoch=Wr}}function nu(e){Zr(e);for(let n=0;n0}function Zr(e){e.producerNode??=[],e.producerIndexOfThis??=[],e.producerLastReadVersion??=[]}let hg=null;function Ce(e){return"function"==typeof e}function iu(e){const t=e(r=>{Error.call(r),r.stack=(new Error).stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}const su=iu(e=>function(t){e(this),this.message=t?`${t.length} errors occurred during unsubscription:\n${t.map((r,o)=>`${o+1}) ${r.toString()}`).join("\n ")}`:"",this.name="UnsubscriptionError",this.errors=t});function au(e,n){if(e){const t=e.indexOf(n);0<=t&&e.splice(t,1)}}class Et{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;const{_parentage:t}=this;if(t)if(this._parentage=null,Array.isArray(t))for(const i of t)i.remove(this);else t.remove(this);const{initialTeardown:r}=this;if(Ce(r))try{r()}catch(i){n=i instanceof su?i.errors:[i]}const{_finalizers:o}=this;if(o){this._finalizers=null;for(const i of o)try{yg(i)}catch(s){n=n??[],s instanceof su?n=[...n,...s.errors]:n.push(s)}}if(n)throw new su(n)}}add(n){var t;if(n&&n!==this)if(this.closed)yg(n);else{if(n instanceof Et){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=null!==(t=this._finalizers)&&void 0!==t?t:[]).push(n)}}_hasParent(n){const{_parentage:t}=this;return t===n||Array.isArray(t)&&t.includes(n)}_addParent(n){const{_parentage:t}=this;this._parentage=Array.isArray(t)?(t.push(n),t):t?[t,n]:n}_removeParent(n){const{_parentage:t}=this;t===n?this._parentage=null:Array.isArray(t)&&au(t,n)}remove(n){const{_finalizers:t}=this;t&&au(t,n),n instanceof Et&&n._removeParent(this)}}Et.EMPTY=(()=>{const e=new Et;return e.closed=!0,e})();const mg=Et.EMPTY;function vg(e){return e instanceof Et||e&&"closed"in e&&Ce(e.remove)&&Ce(e.add)&&Ce(e.unsubscribe)}function yg(e){Ce(e)?e():e.unsubscribe()}const vr={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1},aa={setTimeout(e,n,...t){const{delegate:r}=aa;return r?.setTimeout?r.setTimeout(e,n,...t):setTimeout(e,n,...t)},clearTimeout(e){const{delegate:n}=aa;return(n?.clearTimeout||clearTimeout)(e)},delegate:void 0};function _g(e){aa.setTimeout(()=>{const{onUnhandledError:n}=vr;if(!n)throw e;n(e)})}function lu(){}const $M=cu("C",void 0,void 0);function cu(e,n,t){return{kind:e,value:n,error:t}}let yr=null;function la(e){if(vr.useDeprecatedSynchronousErrorHandling){const n=!yr;if(n&&(yr={errorThrown:!1,error:null}),e(),n){const{errorThrown:t,error:r}=yr;if(yr=null,t)throw r}}else e()}class uu extends Et{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,vg(n)&&n.add(this)):this.destination=QM}static create(n,t,r){return new ca(n,t,r)}next(n){this.isStopped?fu(function zM(e){return cu("N",e,void 0)}(n),this):this._next(n)}error(n){this.isStopped?fu(function GM(e){return cu("E",void 0,e)}(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?fu($M,this):(this.isStopped=!0,this._complete())}unsubscribe(){this.closed||(this.isStopped=!0,super.unsubscribe(),this.destination=null)}_next(n){this.destination.next(n)}_error(n){try{this.destination.error(n)}finally{this.unsubscribe()}}_complete(){try{this.destination.complete()}finally{this.unsubscribe()}}}const WM=Function.prototype.bind;function du(e,n){return WM.call(e,n)}class ZM{constructor(n){this.partialObserver=n}next(n){const{partialObserver:t}=this;if(t.next)try{t.next(n)}catch(r){ua(r)}}error(n){const{partialObserver:t}=this;if(t.error)try{t.error(n)}catch(r){ua(r)}else ua(n)}complete(){const{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(t){ua(t)}}}class ca extends uu{constructor(n,t,r){let o;if(super(),Ce(n)||!n)o={next:n??void 0,error:t??void 0,complete:r??void 0};else{let i;this&&vr.useDeprecatedNextContext?(i=Object.create(n),i.unsubscribe=()=>this.unsubscribe(),o={next:n.next&&du(n.next,i),error:n.error&&du(n.error,i),complete:n.complete&&du(n.complete,i)}):o=n}this.destination=new ZM(o)}}function ua(e){vr.useDeprecatedSynchronousErrorHandling?function qM(e){vr.useDeprecatedSynchronousErrorHandling&&yr&&(yr.errorThrown=!0,yr.error=e)}(e):_g(e)}function fu(e,n){const{onStoppedNotification:t}=vr;t&&aa.setTimeout(()=>t(e,n))}const QM={closed:!0,next:lu,error:function YM(e){throw e},complete:lu},hu="function"==typeof Symbol&&Symbol.observable||"@@observable";function qn(e){return e}function Cg(e){return 0===e.length?qn:1===e.length?e[0]:function(t){return e.reduce((r,o)=>o(r),t)}}let Te=(()=>{class e{constructor(t){t&&(this._subscribe=t)}lift(t){const r=new e;return r.source=this,r.operator=t,r}subscribe(t,r,o){const i=function KM(e){return e&&e instanceof uu||function JM(e){return e&&Ce(e.next)&&Ce(e.error)&&Ce(e.complete)}(e)&&vg(e)}(t)?t:new ca(t,r,o);return la(()=>{const{operator:s,source:a}=this;i.add(s?s.call(i,a):a?this._subscribe(i):this._trySubscribe(i))}),i}_trySubscribe(t){try{return this._subscribe(t)}catch(r){t.error(r)}}forEach(t,r){return new(r=Dg(r))((o,i)=>{const s=new ca({next:a=>{try{t(a)}catch(l){i(l),s.unsubscribe()}},error:i,complete:o});this.subscribe(s)})}_subscribe(t){var r;return null===(r=this.source)||void 0===r?void 0:r.subscribe(t)}[hu](){return this}pipe(...t){return Cg(t)(this)}toPromise(t){return new(t=Dg(t))((r,o)=>{let i;this.subscribe(s=>i=s,s=>o(s),()=>r(i))})}}return e.create=n=>new e(n),e})();function Dg(e){var n;return null!==(n=e??vr.Promise)&&void 0!==n?n:Promise}const e1=iu(e=>function(){e(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});let zt=(()=>{class e extends Te{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(t){const r=new wg(this,this);return r.operator=t,r}_throwIfClosed(){if(this.closed)throw new e1}next(t){la(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(const r of this.currentObservers)r.next(t)}})}error(t){la(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=t;const{observers:r}=this;for(;r.length;)r.shift().error(t)}})}complete(){la(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;const{observers:t}=this;for(;t.length;)t.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var t;return(null===(t=this.observers)||void 0===t?void 0:t.length)>0}_trySubscribe(t){return this._throwIfClosed(),super._trySubscribe(t)}_subscribe(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)}_innerSubscribe(t){const{hasError:r,isStopped:o,observers:i}=this;return r||o?mg:(this.currentObservers=null,i.push(t),new Et(()=>{this.currentObservers=null,au(i,t)}))}_checkFinalizedStatuses(t){const{hasError:r,thrownError:o,isStopped:i}=this;r?t.error(o):i&&t.complete()}asObservable(){const t=new Te;return t.source=this,t}}return e.create=(n,t)=>new wg(n,t),e})();class wg extends zt{constructor(n,t){super(),this.destination=n,this.source=t}next(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.next)||void 0===r||r.call(t,n)}error(n){var t,r;null===(r=null===(t=this.destination)||void 0===t?void 0:t.error)||void 0===r||r.call(t,n)}complete(){var n,t;null===(t=null===(n=this.destination)||void 0===n?void 0:n.complete)||void 0===t||t.call(n)}_subscribe(n){var t,r;return null!==(r=null===(t=this.source)||void 0===t?void 0:t.subscribe(n))&&void 0!==r?r:mg}}function bg(e){return Ce(e?.lift)}function $e(e){return n=>{if(bg(n))return n.lift(function(t){try{return e(t,this)}catch(r){this.error(r)}});throw new TypeError("Unable to lift unknown Observable type")}}function Ve(e,n,t,r,o){return new t1(e,n,t,r,o)}class t1 extends uu{constructor(n,t,r,o,i,s){super(n),this.onFinalize=i,this.shouldUnsubscribe=s,this._next=t?function(a){try{t(a)}catch(l){n.error(l)}}:super._next,this._error=o?function(a){try{o(a)}catch(l){n.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=r?function(){try{r()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){const{closed:t}=this;super.unsubscribe(),!t&&(null===(n=this.onFinalize)||void 0===n||n.call(this))}}}function K(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>{r.next(e.call(n,i,o++))}))})}function Wn(e){return this instanceof Wn?(this.v=e,this):new Wn(e)}function Sg(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,n=e[Symbol.asyncIterator];return n?n.call(e):(e=function vu(e){var n="function"==typeof Symbol&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}(e),t={},r("next"),r("throw"),r("return"),t[Symbol.asyncIterator]=function(){return this},t);function r(i){t[i]=e[i]&&function(s){return new Promise(function(a,l){!function o(i,s,a,l){Promise.resolve(l).then(function(c){i({value:c,done:a})},s)}(a,l,(s=e[i](s)).done,s.value)})}}}"function"==typeof SuppressedError&&SuppressedError;const Tg=e=>e&&"number"==typeof e.length&&"function"!=typeof e;function Ag(e){return Ce(e?.then)}function xg(e){return Ce(e[hu])}function Ng(e){return Symbol.asyncIterator&&Ce(e?.[Symbol.asyncIterator])}function Rg(e){return new TypeError(`You provided ${null!==e&&"object"==typeof e?"an invalid object":`'${e}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}const Og=function b1(){return"function"==typeof Symbol&&Symbol.iterator?Symbol.iterator:"@@iterator"}();function Pg(e){return Ce(e?.[Og])}function kg(e){return function Mg(e,n,t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var o,r=t.apply(e,n||[]),i=[];return o={},s("next"),s("throw"),s("return"),o[Symbol.asyncIterator]=function(){return this},o;function s(g){r[g]&&(o[g]=function(m){return new Promise(function(v,_){i.push([g,m,v,_])>1||a(g,m)})})}function a(g,m){try{!function l(g){g.value instanceof Wn?Promise.resolve(g.value.v).then(c,u):d(i[0][2],g)}(r[g](m))}catch(v){d(i[0][3],v)}}function c(g){a("next",g)}function u(g){a("throw",g)}function d(g,m){g(m),i.shift(),i.length&&a(i[0][0],i[0][1])}}(this,arguments,function*(){const t=e.getReader();try{for(;;){const{value:r,done:o}=yield Wn(t.read());if(o)return yield Wn(void 0);yield yield Wn(r)}}finally{t.releaseLock()}})}function Fg(e){return Ce(e?.getReader)}function qt(e){if(e instanceof Te)return e;if(null!=e){if(xg(e))return function E1(e){return new Te(n=>{const t=e[hu]();if(Ce(t.subscribe))return t.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}(e);if(Tg(e))return function I1(e){return new Te(n=>{for(let t=0;t{e.then(t=>{n.closed||(n.next(t),n.complete())},t=>n.error(t)).then(null,_g)})}(e);if(Ng(e))return Lg(e);if(Pg(e))return function S1(e){return new Te(n=>{for(const t of e)if(n.next(t),n.closed)return;n.complete()})}(e);if(Fg(e))return function T1(e){return Lg(kg(e))}(e)}throw Rg(e)}function Lg(e){return new Te(n=>{(function A1(e,n){var t,r,o,i;return function Eg(e,n,t,r){return new(t||(t=Promise))(function(i,s){function a(u){try{c(r.next(u))}catch(d){s(d)}}function l(u){try{c(r.throw(u))}catch(d){s(d)}}function c(u){u.done?i(u.value):function o(i){return i instanceof t?i:new t(function(s){s(i)})}(u.value).then(a,l)}c((r=r.apply(e,n||[])).next())})}(this,void 0,void 0,function*(){try{for(t=Sg(e);!(r=yield t.next()).done;)if(n.next(r.value),n.closed)return}catch(s){o={error:s}}finally{try{r&&!r.done&&(i=t.return)&&(yield i.call(t))}finally{if(o)throw o.error}}n.complete()})})(e,n).catch(t=>n.error(t))})}function An(e,n,t,r=0,o=!1){const i=n.schedule(function(){t(),o?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(i),!o)return i}function Xe(e,n,t=1/0){return Ce(n)?Xe((r,o)=>K((i,s)=>n(r,i,o,s))(qt(e(r,o))),t):("number"==typeof n&&(t=n),$e((r,o)=>function x1(e,n,t,r,o,i,s,a){const l=[];let c=0,u=0,d=!1;const g=()=>{d&&!l.length&&!c&&n.complete()},m=_=>c{i&&n.next(_),c++;let D=!1;qt(t(_,u++)).subscribe(Ve(n,I=>{o?.(I),i?m(I):n.next(I)},()=>{D=!0},void 0,()=>{if(D)try{for(c--;l.length&&cv(I)):v(I)}g()}catch(I){n.error(I)}}))};return e.subscribe(Ve(n,m,()=>{d=!0,g()})),()=>{a?.()}}(r,o,e,t)))}function Yr(e=1/0){return Xe(qn,e)}const an=new Te(e=>e.complete());function yu(e){return e[e.length-1]}function Vg(e){return Ce(yu(e))?e.pop():void 0}function bi(e){return function R1(e){return e&&Ce(e.schedule)}(yu(e))?e.pop():void 0}function jg(e,n=0){return $e((t,r)=>{t.subscribe(Ve(r,o=>An(r,e,()=>r.next(o),n),()=>An(r,e,()=>r.complete(),n),o=>An(r,e,()=>r.error(o),n)))})}function Hg(e,n=0){return $e((t,r)=>{r.add(e.schedule(()=>t.subscribe(r),n))})}function Ug(e,n){if(!e)throw new Error("Iterable cannot be null");return new Te(t=>{An(t,n,()=>{const r=e[Symbol.asyncIterator]();An(t,n,()=>{r.next().then(o=>{o.done?t.complete():t.next(o.value)})},0,!0)})})}function Oe(e,n){return n?function j1(e,n){if(null!=e){if(xg(e))return function P1(e,n){return qt(e).pipe(Hg(n),jg(n))}(e,n);if(Tg(e))return function F1(e,n){return new Te(t=>{let r=0;return n.schedule(function(){r===e.length?t.complete():(t.next(e[r++]),t.closed||this.schedule())})})}(e,n);if(Ag(e))return function k1(e,n){return qt(e).pipe(Hg(n),jg(n))}(e,n);if(Ng(e))return Ug(e,n);if(Pg(e))return function L1(e,n){return new Te(t=>{let r;return An(t,n,()=>{r=e[Og](),An(t,n,()=>{let o,i;try{({value:o,done:i}=r.next())}catch(s){return void t.error(s)}i?t.complete():t.next(o)},0,!0)}),()=>Ce(r?.return)&&r.return()})}(e,n);if(Fg(e))return function V1(e,n){return Ug(kg(e),n)}(e,n)}throw Rg(e)}(e,n):qt(e)}class kt extends zt{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){const t=super._subscribe(n);return!t.closed&&n.next(this._value),t}getValue(){const{hasError:n,thrownError:t,_value:r}=this;if(n)throw t;return this._throwIfClosed(),r}next(n){super.next(this._value=n)}}function F(...e){return Oe(e,bi(e))}function _r(e){return e<=0?()=>an:$e((n,t)=>{let r=0;n.subscribe(Ve(t,o=>{++r<=e&&(t.next(o),e<=r&&t.complete())}))})}function Bg(e={}){const{connector:n=(()=>new zt),resetOnError:t=!0,resetOnComplete:r=!0,resetOnRefCountZero:o=!0}=e;return i=>{let s=null,a=null,l=null,c=0,u=!1,d=!1;const g=()=>{a?.unsubscribe(),a=null},m=()=>{g(),s=l=null,u=d=!1},v=()=>{const _=s;m(),_?.unsubscribe()};return $e((_,D)=>{c++,!d&&!u&&g();const I=l=l??n();D.add(()=>{c--,0===c&&!d&&!u&&(a=_u(v,o))}),I.subscribe(D),s||(s=new ca({next:w=>I.next(w),error:w=>{d=!0,g(),a=_u(m,t,w),I.error(w)},complete:()=>{u=!0,g(),a=_u(m,r),I.complete()}}),Oe(_).subscribe(s))})(i)}}function _u(e,n,...t){return!0===n?(e(),null):!1===n?null:n(...t).pipe(_r(1)).subscribe(()=>e())}function Ft(e,n){return $e((t,r)=>{let o=null,i=0,s=!1;const a=()=>s&&!o&&r.complete();t.subscribe(Ve(r,l=>{o?.unsubscribe();let c=0;const u=i++;qt(e(l,u)).subscribe(o=Ve(r,d=>r.next(n?n(l,d,u,c++):d),()=>{o=null,a()}))},()=>{s=!0,a()}))})}function B1(e,n){return e===n}function le(e){for(let n in e)if(e[n]===le)return n;throw Error("Could not find renamed property on target object.")}function da(e,n){for(const t in n)n.hasOwnProperty(t)&&!e.hasOwnProperty(t)&&(e[t]=n[t])}function je(e){if("string"==typeof e)return e;if(Array.isArray(e))return"["+e.map(je).join(", ")+"]";if(null==e)return""+e;if(e.overriddenName)return`${e.overriddenName}`;if(e.name)return`${e.name}`;const n=e.toString();if(null==n)return""+n;const t=n.indexOf("\n");return-1===t?n:n.substring(0,t)}function Cu(e,n){return null==e||""===e?null===n?"":n:null==n||""===n?e:e+" "+n}const $1=le({__forward_ref__:le});function he(e){return e.__forward_ref__=he,e.toString=function(){return je(this())},e}function j(e){return fa(e)?e():e}function fa(e){return"function"==typeof e&&e.hasOwnProperty($1)&&e.__forward_ref__===he}function Du(e){return e&&!!e.\u0275providers}const $g="https://g.co/ng/security#xss";class M extends Error{constructor(n,t){super(function Qr(e,n){return`NG0${Math.abs(e)}${n?": "+n:""}`}(n,t)),this.code=n}}const Ei=le({\u0275cmp:le}),wu=le({\u0275dir:le}),bu=le({\u0275pipe:le}),Gg=le({\u0275mod:le}),xn=le({\u0275fac:le}),Ii=le({__NG_ELEMENT_ID__:le}),zg=le({__NG_ENV_ID__:le});function G(e){return"string"==typeof e?e:null==e?"":String(e)}function Eu(e,n){throw new M(-201,!1)}function gt(e,n){null==e&&function L(e,n,t,r){throw new Error(`ASSERTION ERROR: ${e}`+(null==r?"":` [Expected=> ${t} ${r} ${n} <=Actual]`))}(n,e,null,"!=")}function O(e){return{token:e.token,providedIn:e.providedIn||null,factory:e.factory,value:void 0}}function ln(e){return{providers:e.providers||[],imports:e.imports||[]}}function ha(e){return qg(e,ga)||qg(e,Wg)}function qg(e,n){return e.hasOwnProperty(n)?e[n]:null}function pa(e){return e&&(e.hasOwnProperty(Iu)||e.hasOwnProperty(J1))?e[Iu]:null}const ga=le({\u0275prov:le}),Iu=le({\u0275inj:le}),Wg=le({ngInjectableDef:le}),J1=le({ngInjectorDef:le});var X=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}(X||{});let Mu;function Zg(){return Mu}function mt(e){const n=Mu;return Mu=e,n}function Yg(e,n,t){const r=ha(e);return r&&"root"==r.providedIn?void 0===r.value?r.value=r.factory():r.value:t&X.Optional?null:void 0!==n?n:void Eu(je(e))}const pe=globalThis;class N{constructor(n,t){this._desc=n,this.ngMetadataName="InjectionToken",this.\u0275prov=void 0,"number"==typeof t?this.__NG_ELEMENT_ID__=t:void 0!==t&&(this.\u0275prov=O({token:this,providedIn:t.providedIn||"root",factory:t.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}}const Mi={},Nu="__NG_DI_FLAG__",ma="ngTempTokenPath",t0=/\n/gm,Xg="__source";let Xr;function Yn(e){const n=Xr;return Xr=e,n}function o0(e,n=X.Default){if(void 0===Xr)throw new M(-203,!1);return null===Xr?Yg(e,void 0,n):Xr.get(e,n&X.Optional?null:void 0,n)}function k(e,n=X.Default){return(Zg()||o0)(j(e),n)}function A(e,n=X.Default){return k(e,va(n))}function va(e){return typeof e>"u"||"number"==typeof e?e:0|(e.optional&&8)|(e.host&&1)|(e.self&&2)|(e.skipSelf&&4)}function Ru(e){const n=[];for(let t=0;tn){s=i-1;break}}}for(;ii?"":o[d+1].toLowerCase();const m=8&r?g:null;if(m&&-1!==Kg(m,c,0)||2&r&&c!==g){if(Zt(r))return!1;s=!0}}}}else{if(!s&&!Zt(r)&&!Zt(l))return!1;if(s&&Zt(l))continue;s=!1,r=l|1&r}}return Zt(r)||s}function Zt(e){return 0==(1&e)}function f0(e,n,t,r){if(null===n)return-1;let o=0;if(r||!t){let i=!1;for(;o-1)for(t++;t0?'="'+a+'"':"")+"]"}else 8&r?o+="."+s:4&r&&(o+=" "+s);else""!==o&&!Zt(s)&&(n+=sm(i,o),o=""),r=s,i=i||!Zt(r);t++}return""!==o&&(n+=sm(i,o)),n}function Mt(e){return Nn(()=>{const n=lm(e),t={...n,decls:e.decls,vars:e.vars,template:e.template,consts:e.consts||null,ngContentSelectors:e.ngContentSelectors,onPush:e.changeDetection===ya.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&e.dependencies||null,getStandaloneInjector:null,signals:e.signals??!1,data:e.data||{},encapsulation:e.encapsulation||Wt.Emulated,styles:e.styles||te,_:null,schemas:e.schemas||null,tView:null,id:""};cm(t);const r=e.dependencies;return t.directiveDefs=_a(r,!1),t.pipeDefs=_a(r,!0),t.id=function b0(e){let n=0;const t=[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(const o of t)n=Math.imul(31,n)+o.charCodeAt(0)<<0;return n+=2147483648,"c"+n}(t),t})}function C0(e){return Q(e)||Ge(e)}function D0(e){return null!==e}function Rn(e){return Nn(()=>({type:e.type,bootstrap:e.bootstrap||te,declarations:e.declarations||te,imports:e.imports||te,exports:e.exports||te,transitiveCompileScopes:null,schemas:e.schemas||null,id:e.id||null}))}function am(e,n){if(null==e)return cn;const t={};for(const r in e)if(e.hasOwnProperty(r)){let o=e[r],i=o;Array.isArray(o)&&(i=o[1],o=o[0]),t[o]=r,n&&(n[o]=i)}return t}function $(e){return Nn(()=>{const n=lm(e);return cm(n),n})}function Q(e){return e[Ei]||null}function Ge(e){return e[wu]||null}function Je(e){return e[bu]||null}function et(e,n){const t=e[Gg]||null;if(!t&&!0===n)throw new Error(`Type ${je(e)} does not have '\u0275mod' property.`);return t}function lm(e){const n={};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:n,inputTransforms:null,inputConfig:e.inputs||cn,exportAs:e.exportAs||null,standalone:!0===e.standalone,signals:!0===e.signals,selectors:e.selectors||te,viewQuery:e.viewQuery||null,features:e.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:am(e.inputs,n),outputs:am(e.outputs),debugInfo:null}}function cm(e){e.features?.forEach(n=>n(e))}function _a(e,n){if(!e)return null;const t=n?Je:C0;return()=>("function"==typeof e?e():e).map(r=>t(r)).filter(D0)}const Ae=0,T=1,H=2,we=3,Yt=4,tt=5,un=6,Jr=7,ge=8,it=9,Kr=10,z=11,Ai=12,um=13,eo=14,Me=15,xi=16,to=17,dn=18,Ni=19,dm=20,Xn=21,Ca=22,Cr=23,U=25,Pu=1,fm=2,ku=6,fn=7,no=9,Pe=11;function Ke(e){return Array.isArray(e)&&"object"==typeof e[Pu]}function Ye(e){return Array.isArray(e)&&!0===e[Pu]}function Fu(e){return 0!=(4&e.flags)}function Dr(e){return e.componentOffset>-1}function wa(e){return 1==(1&e.flags)}function Qt(e){return!!e.template}function Lu(e){return 0!=(512&e[H])}function wr(e,n){return e.hasOwnProperty(xn)?e[xn]:null}class S0{constructor(n,t,r){this.previousValue=n,this.currentValue=t,this.firstChange=r}isFirstChange(){return this.firstChange}}function Lt(){return mm}function mm(e){return e.type.prototype.ngOnChanges&&(e.setInput=A0),T0}function T0(){const e=ym(this),n=e?.current;if(n){const t=e.previous;if(t===cn)e.previous=n;else for(let r in n)t[r]=n[r];e.current=null,this.ngOnChanges(n)}}function A0(e,n,t,r){const o=this.declaredInputs[t],i=ym(e)||function x0(e,n){return e[vm]=n}(e,{previous:cn,current:null}),s=i.current||(i.current={}),a=i.previous,l=a[o];s[o]=new S0(l&&l.currentValue,n,a===cn),e[r]=n}Lt.ngInherit=!0;const vm="__ngSimpleChanges__";function ym(e){return e[vm]||null}const hn=function(e,n,t){};function me(e){for(;Array.isArray(e);)e=e[Ae];return e}function Oi(e,n){return me(n[e])}function st(e,n){return me(n[e.index])}function Pi(e,n){return e.data[n]}function St(e,n){const t=n[e];return Ke(t)?t:t[Ae]}function Bu(e){return 128==(128&e[H])}function pn(e,n){return null==n?null:e[n]}function Dm(e){e[to]=0}function k0(e){1024&e[H]||(e[H]|=1024,Bu(e)&&ba(e))}function bm(e){9216&e[H]&&ba(e)}function ba(e){let n=e[we];for(;null!==n&&!(Ye(n)&&n[ku]||Ke(n)&&8192&n[H]);){if(Ye(n))n[ku]=!0;else if(n[H]|=8192,!Bu(n))break;n=n[we]}}function Ea(e,n){if(256==(256&e[H]))throw new M(911,!1);null===e[Xn]&&(e[Xn]=[]),e[Xn].push(n)}const B={lFrame:Om(null),bindingsEnabled:!0,skipHydrationRootTNode:null};function Im(){return B.bindingsEnabled}function b(){return B.lFrame.lView}function J(){return B.lFrame.tView}function re(e){return B.lFrame.contextLView=e,e[ge]}function oe(e){return B.lFrame.contextLView=null,e}function ue(){let e=Mm();for(;null!==e&&64===e.type;)e=e.parent;return e}function Mm(){return B.lFrame.currentTNode}function gn(e,n){const t=B.lFrame;t.currentTNode=e,t.isParent=n}function Gu(){return B.lFrame.isParent}function zu(){B.lFrame.isParent=!1}function at(){const e=B.lFrame;let n=e.bindingRootIndex;return-1===n&&(n=e.bindingRootIndex=e.tView.bindingStartIndex),n}function mn(){return B.lFrame.bindingIndex++}function q0(e,n){const t=B.lFrame;t.bindingIndex=t.bindingRootIndex=e,qu(n)}function qu(e){B.lFrame.currentDirectiveIndex=e}function xm(){return B.lFrame.currentQueryIndex}function Zu(e){B.lFrame.currentQueryIndex=e}function Z0(e){const n=e[T];return 2===n.type?n.declTNode:1===n.type?e[tt]:null}function Nm(e,n,t){if(t&X.SkipSelf){let o=n,i=e;for(;!(o=o.parent,null!==o||t&X.Host||(o=Z0(i),null===o||(i=i[eo],10&o.type))););if(null===o)return!1;n=o,e=i}const r=B.lFrame=Rm();return r.currentTNode=n,r.lView=e,!0}function Yu(e){const n=Rm(),t=e[T];B.lFrame=n,n.currentTNode=t.firstChild,n.lView=e,n.tView=t,n.contextLView=e,n.bindingIndex=t.bindingStartIndex,n.inI18n=!1}function Rm(){const e=B.lFrame,n=null===e?null:e.child;return null===n?Om(e):n}function Om(e){const n={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 null!==e&&(e.child=n),n}function Pm(){const e=B.lFrame;return B.lFrame=e.parent,e.currentTNode=null,e.lView=null,e}const km=Pm;function Qu(){const e=Pm();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 lt(){return B.lFrame.selectedIndex}function br(e){B.lFrame.selectedIndex=e}function De(){const e=B.lFrame;return Pi(e.tView,e.selectedIndex)}let Lm=!0;function Ia(){return Lm}function Jn(e){Lm=e}function Ma(e,n){for(let t=n.directiveStart,r=n.directiveEnd;t=r)break}else n[l]<0&&(e[to]+=65536),(a>14>16&&(3&e[H])===n&&(e[H]+=16384,jm(a,i)):jm(a,i)}const io=-1;class Fi{constructor(n,t,r){this.factory=n,this.resolving=!1,this.canSeeViewProviders=t,this.injectImpl=r}}function Ku(e){return e!==io}function Li(e){return 32767&e}function Vi(e,n){let t=function sS(e){return e>>16}(e),r=n;for(;t>0;)r=r[eo],t--;return r}let ed=!0;function Aa(e){const n=ed;return ed=e,n}const Hm=255,Um=5;let aS=0;const vn={};function xa(e,n){const t=Bm(e,n);if(-1!==t)return t;const r=n[T];r.firstCreatePass&&(e.injectorIndex=n.length,td(r.data,e),td(n,null),td(r.blueprint,null));const o=Na(e,n),i=e.injectorIndex;if(Ku(o)){const s=Li(o),a=Vi(o,n),l=a[T].data;for(let c=0;c<8;c++)n[i+c]=a[s+c]|l[s+c]}return n[i+8]=o,i}function td(e,n){e.push(0,0,0,0,0,0,0,0,n)}function Bm(e,n){return-1===e.injectorIndex||e.parent&&e.parent.injectorIndex===e.injectorIndex||null===n[e.injectorIndex+8]?-1:e.injectorIndex}function Na(e,n){if(e.parent&&-1!==e.parent.injectorIndex)return e.parent.injectorIndex;let t=0,r=null,o=n;for(;null!==o;){if(r=Ym(o),null===r)return io;if(t++,o=o[eo],-1!==r.injectorIndex)return r.injectorIndex|t<<16}return io}function nd(e,n,t){!function lS(e,n,t){let r;"string"==typeof t?r=t.charCodeAt(0)||0:t.hasOwnProperty(Ii)&&(r=t[Ii]),null==r&&(r=t[Ii]=aS++);const o=r&Hm;n.data[e+(o>>Um)]|=1<=0?n&Hm:fS:n}(t);if("function"==typeof i){if(!Nm(n,e,r))return r&X.Host?$m(o,0,r):Gm(n,t,r,o);try{let s;if(s=i(r),null!=s||r&X.Optional)return s;Eu()}finally{km()}}else if("number"==typeof i){let s=null,a=Bm(e,n),l=io,c=r&X.Host?n[Me][tt]:null;for((-1===a||r&X.SkipSelf)&&(l=-1===a?Na(e,n):n[a+8],l!==io&&Zm(r,!1)?(s=n[T],a=Li(l),n=Vi(l,n)):a=-1);-1!==a;){const u=n[T];if(Wm(i,a,u.data)){const d=uS(a,n,t,s,r,c);if(d!==vn)return d}l=n[a+8],l!==io&&Zm(r,n[T].data[a+8]===c)&&Wm(i,a,n)?(s=u,a=Li(l),n=Vi(l,n)):a=-1}}return o}function uS(e,n,t,r,o,i){const s=n[T],a=s.data[e+8],u=Ra(a,s,t,null==r?Dr(a)&&ed:r!=s&&0!=(3&a.type),o&X.Host&&i===a);return null!==u?Er(n,s,u,a):vn}function Ra(e,n,t,r,o){const i=e.providerIndexes,s=n.data,a=1048575&i,l=e.directiveStart,u=i>>20,g=o?a+u:e.directiveEnd;for(let m=r?a:a+u;m=l&&v.type===t)return m}if(o){const m=s[l];if(m&&Qt(m)&&m.type===t)return l}return null}function Er(e,n,t,r){let o=e[t];const i=n.data;if(function nS(e){return e instanceof Fi}(o)){const s=o;s.resolving&&function z1(e,n){const t=n?`. Dependency path: ${n.join(" > ")} > ${e}`:"";throw new M(-200,`Circular dependency in DI detected for ${e}${t}`)}(function ne(e){return"function"==typeof e?e.name||e.toString():"object"==typeof e&&null!=e&&"function"==typeof e.type?e.type.name||e.type.toString():G(e)}(i[t]));const a=Aa(s.canSeeViewProviders);s.resolving=!0;const c=s.injectImpl?mt(s.injectImpl):null;Nm(e,r,X.Default);try{o=e[t]=s.factory(void 0,i,e,r),n.firstCreatePass&&t>=r.directiveStart&&function eS(e,n,t){const{ngOnChanges:r,ngOnInit:o,ngDoCheck:i}=n.type.prototype;if(r){const s=mm(n);(t.preOrderHooks??=[]).push(e,s),(t.preOrderCheckHooks??=[]).push(e,s)}o&&(t.preOrderHooks??=[]).push(0-e,o),i&&((t.preOrderHooks??=[]).push(e,i),(t.preOrderCheckHooks??=[]).push(e,i))}(t,i[t],n)}finally{null!==c&&mt(c),Aa(a),s.resolving=!1,km()}}return o}function Wm(e,n,t){return!!(t[n+(e>>Um)]&1<{const n=e.prototype.constructor,t=n[xn]||rd(n),r=Object.prototype;let o=Object.getPrototypeOf(e.prototype).constructor;for(;o&&o!==r;){const i=o[xn]||rd(o);if(i&&i!==t)return i;o=Object.getPrototypeOf(o)}return i=>new i})}function rd(e){return fa(e)?()=>{const n=rd(j(e));return n&&n()}:wr(e)}function Ym(e){const n=e[T],t=n.type;return 2===t?n.declTNode:1===t?e[tt]:null}const co="__parameters__";function fo(e,n,t){return Nn(()=>{const r=function od(e){return function(...t){if(e){const r=e(...t);for(const o in r)this[o]=r[o]}}}(n);function o(...i){if(this instanceof o)return r.apply(this,i),this;const s=new o(...i);return a.annotation=s,a;function a(l,c,u){const d=l.hasOwnProperty(co)?l[co]:Object.defineProperty(l,co,{value:[]})[co];for(;d.length<=u;)d.push(null);return(d[u]=d[u]||[]).push(s),l}}return t&&(o.prototype=Object.create(t.prototype)),o.prototype.ngMetadataName=e,o.annotationCls=o,o})}function po(e,n){e.forEach(t=>Array.isArray(t)?po(t,n):n(t))}function Xm(e,n,t){n>=e.length?e.push(t):e.splice(n,0,t)}function Pa(e,n){return n>=e.length-1?e.pop():e.splice(n,1)[0]}function Tt(e,n,t){let r=go(e,n);return r>=0?e[1|r]=t:(r=~r,function Jm(e,n,t,r){let o=e.length;if(o==n)e.push(t,r);else if(1===o)e.push(r,e[0]),e[0]=t;else{for(o--,e.push(e[o-1],e[o]);o>n;)e[o]=e[o-2],o--;e[n]=t,e[n+1]=r}}(e,r,n,t)),r}function sd(e,n){const t=go(e,n);if(t>=0)return e[1|t]}function go(e,n){return function Km(e,n,t){let r=0,o=e.length>>t;for(;o!==r;){const i=r+(o-r>>1),s=e[i<n?o=i:r=i+1}return~(o<{t.push(s)};return po(n,s=>{const a=s;Ha(a,i,[],r)&&(o||=[],o.push(a))}),void 0!==o&&sv(o,i),t}function sv(e,n){for(let t=0;t{n(i,r)})}}function Ha(e,n,t,r){if(!(e=j(e)))return!1;let o=null,i=pa(e);const s=!i&&Q(e);if(i||s){if(s&&!s.standalone)return!1;o=e}else{const l=e.ngModule;if(i=pa(l),!i)return!1;o=l}const a=r.has(o);if(s){if(a)return!1;if(r.add(o),s.dependencies){const l="function"==typeof s.dependencies?s.dependencies():s.dependencies;for(const c of l)Ha(c,n,t,r)}}else{if(!i)return!1;{if(null!=i.imports&&!a){let c;r.add(o);try{po(i.imports,u=>{Ha(u,n,t,r)&&(c||=[],c.push(u))})}finally{}void 0!==c&&sv(c,n)}if(!a){const c=wr(o)||(()=>new o);n({provide:o,useFactory:c,deps:te},o),n({provide:cd,useValue:o,multi:!0},o),n({provide:vo,useValue:()=>k(o),multi:!0},o)}const l=i.providers;if(null!=l&&!a){const c=e;dd(l,u=>{n(u,c)})}}}return o!==e&&void 0!==e.providers}function dd(e,n){for(let t of e)Du(t)&&(t=t.\u0275providers),Array.isArray(t)?dd(t,n):n(t)}const kS=le({provide:String,useValue:le});function fd(e){return null!==e&&"object"==typeof e&&kS in e}function Ir(e){return"function"==typeof e}const hd=new N("Set Injector scope."),Ua={},LS={};let pd;function Ba(){return void 0===pd&&(pd=new ja),pd}class At{}class Mr extends At{get destroyed(){return this._destroyed}constructor(n,t,r,o){super(),this.parent=t,this.source=r,this.scopes=o,this.records=new Map,this._ngOnDestroyHooks=new Set,this._onDestroyHooks=[],this._destroyed=!1,md(n,s=>this.processProvider(s)),this.records.set(rv,yo(void 0,this)),o.has("environment")&&this.records.set(At,yo(void 0,this));const i=this.records.get(hd);null!=i&&"string"==typeof i.value&&this.scopes.add(i.value),this.injectorDefTypes=new Set(this.get(cd,te,X.Self))}destroy(){this.assertNotDestroyed(),this._destroyed=!0;try{for(const t of this._ngOnDestroyHooks)t.ngOnDestroy();const n=this._onDestroyHooks;this._onDestroyHooks=[];for(const t of n)t()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear()}}onDestroy(n){return this.assertNotDestroyed(),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){this.assertNotDestroyed();const t=Yn(this),r=mt(void 0);try{return n()}finally{Yn(t),mt(r)}}get(n,t=Mi,r=X.Default){if(this.assertNotDestroyed(),n.hasOwnProperty(zg))return n[zg](this);r=va(r);const i=Yn(this),s=mt(void 0);try{if(!(r&X.SkipSelf)){let l=this.records.get(n);if(void 0===l){const c=function BS(e){return"function"==typeof e||"object"==typeof e&&e instanceof N}(n)&&ha(n);l=c&&this.injectableDefInScope(c)?yo(gd(n),Ua):null,this.records.set(n,l)}if(null!=l)return this.hydrate(n,l)}return(r&X.Self?Ba():this.parent).get(n,t=r&X.Optional&&t===Mi?null:t)}catch(a){if("NullInjectorError"===a.name){if((a[ma]=a[ma]||[]).unshift(je(n)),i)throw a;return function a0(e,n,t,r){const o=e[ma];throw n[Xg]&&o.unshift(n[Xg]),e.message=function l0(e,n,t,r=null){e=e&&"\n"===e.charAt(0)&&"\u0275"==e.charAt(1)?e.slice(2):e;let o=je(n);if(Array.isArray(n))o=n.map(je).join(" -> ");else if("object"==typeof n){let i=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];i.push(s+":"+("string"==typeof a?JSON.stringify(a):je(a)))}o=`{${i.join(", ")}}`}return`${t}${r?"("+r+")":""}[${o}]: ${e.replace(t0,"\n ")}`}("\n"+e.message,o,t,r),e.ngTokenPath=o,e[ma]=null,e}(a,n,"R3InjectorError",this.source)}throw a}finally{mt(s),Yn(i)}}resolveInjectorInitializers(){const n=Yn(this),t=mt(void 0);try{const o=this.get(vo,te,X.Self);for(const i of o)i()}finally{Yn(n),mt(t)}}toString(){const n=[],t=this.records;for(const r of t.keys())n.push(je(r));return`R3Injector[${n.join(", ")}]`}assertNotDestroyed(){if(this._destroyed)throw new M(205,!1)}processProvider(n){let t=Ir(n=j(n))?n:j(n&&n.provide);const r=function jS(e){return fd(e)?yo(void 0,e.useValue):yo(cv(e),Ua)}(n);if(Ir(n)||!0!==n.multi)this.records.get(t);else{let o=this.records.get(t);o||(o=yo(void 0,Ua,!0),o.factory=()=>Ru(o.multi),this.records.set(t,o)),t=n,o.multi.push(n)}this.records.set(t,r)}hydrate(n,t){return t.value===Ua&&(t.value=LS,t.value=t.factory()),"object"==typeof t.value&&t.value&&function US(e){return null!==e&&"object"==typeof e&&"function"==typeof e.ngOnDestroy}(t.value)&&this._ngOnDestroyHooks.add(t.value),t.value}injectableDefInScope(n){if(!n.providedIn)return!1;const t=j(n.providedIn);return"string"==typeof t?"any"===t||this.scopes.has(t):this.injectorDefTypes.has(t)}removeOnDestroy(n){const t=this._onDestroyHooks.indexOf(n);-1!==t&&this._onDestroyHooks.splice(t,1)}}function gd(e){const n=ha(e),t=null!==n?n.factory:wr(e);if(null!==t)return t;if(e instanceof N)throw new M(204,!1);if(e instanceof Function)return function VS(e){const n=e.length;if(n>0)throw function Hi(e,n){const t=[];for(let r=0;rt.factory(e):()=>new e}(e);throw new M(204,!1)}function cv(e,n,t){let r;if(Ir(e)){const o=j(e);return wr(o)||gd(o)}if(fd(e))r=()=>j(e.useValue);else if(function lv(e){return!(!e||!e.useFactory)}(e))r=()=>e.useFactory(...Ru(e.deps||[]));else if(function av(e){return!(!e||!e.useExisting)}(e))r=()=>k(j(e.useExisting));else{const o=j(e&&(e.useClass||e.provide));if(!function HS(e){return!!e.deps}(e))return wr(o)||gd(o);r=()=>new o(...Ru(e.deps))}return r}function yo(e,n,t=!1){return{factory:e,value:n,multi:t?[]:void 0}}function md(e,n){for(const t of e)Array.isArray(t)?md(t,n):t&&Du(t)?md(t.\u0275providers,n):n(t)}function hv(e,n=null,t=null,r){const o=pv(e,n,t,r);return o.resolveInjectorInitializers(),o}function pv(e,n=null,t=null,r,o=new Set){const i=[t||te,ov(e)];return r=r||("object"==typeof e?void 0:je(e)),new Mr(i,n||Ba(),r||null,o)}let _d,_t=(()=>{class e{static#e=this.THROW_IF_NOT_FOUND=Mi;static#t=this.NULL=new ja;static create(t,r){if(Array.isArray(t))return hv({name:""},r,t,"");{const o=t.name??"";return hv({name:o},t.parent,t.providers,o)}}static#n=this.\u0275prov=O({token:e,providedIn:"any",factory:()=>k(rv)});static#r=this.__NG_ELEMENT_ID__=-1}return e})();const Ga=new N("AppId",{providedIn:"root",factory:()=>JS}),JS="ng",mv=new N("Platform Initializer"),Sr=new N("Platform ID",{providedIn:"platform",factory:()=>"unknown"}),vv=new N("CSP nonce",{providedIn:"root",factory:()=>function er(){if(void 0!==_d)return _d;if(typeof document<"u")return document;throw new M(210,!1)}().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});function xt(e){return e instanceof Function?e():e}function Za(e){return 128==(128&e.flags)}var rr=function(e){return e[e.Important=1]="Important",e[e.DashCase=2]="DashCase",e}(rr||{});const lT=/^>|^->||--!>|)/g,uT="\u200b$1\u200b";const Ed=new Map;let dT=0;const Md="__ngContext__";function nt(e,n){Ke(n)?(e[Md]=n[Ni],function hT(e){Ed.set(e[Ni],e)}(n)):e[Md]=n}let Sd;function Td(e,n){return Sd(e,n)}function qi(e){const n=e[we];return Ye(n)?n[we]:n}function kv(e){return Lv(e[Ai])}function Fv(e){return Lv(e[Yt])}function Lv(e){for(;null!==e&&!Ye(e);)e=e[Yt];return e}function Co(e,n,t,r,o){if(null!=r){let i,s=!1;Ye(r)?i=r:Ke(r)&&(s=!0,r=r[Ae]);const a=me(r);0===e&&null!==t?null==o?Uv(n,t,a):Tr(n,t,a,o||null,!0):1===e&&null!==t?Tr(n,t,a,o||null,!0):2===e?function tl(e,n,t){const r=Ka(e,n);r&&function RT(e,n,t,r){e.removeChild(n,t,r)}(e,r,n,t)}(n,a,s):3===e&&n.destroyNode(a),null!=i&&function kT(e,n,t,r,o){const i=t[fn];i!==me(t)&&Co(n,e,r,i,o);for(let a=Pe;an.replace(cT,uT))}(n))}function Xa(e,n,t){return e.createElement(n,t)}function jv(e,n){const t=e[no],r=t.indexOf(n);t.splice(r,1)}function Wi(e,n){if(e.length<=Pe)return;const t=Pe+n,r=e[t];if(r){const o=r[xi];null!==o&&o!==e&&jv(o,r),n>0&&(e[t-1][Yt]=r[Yt]);const i=Pa(e,Pe+n);!function ET(e,n){Yi(e,n,n[z],2,null,null),n[Ae]=null,n[tt]=null}(r[T],r);const s=i[dn];null!==s&&s.detachView(i[T]),r[we]=null,r[Yt]=null,r[H]&=-129}return r}function Ja(e,n){if(!(256&n[H])){const t=n[z];n[Cr]&&function ug(e){if(Zr(e),wi(e))for(let n=0;n=0?r[s]():r[-s].unsubscribe(),i+=2}else t[i].call(r[t[i+1]]);null!==r&&(n[Jr]=null);const o=n[Xn];if(null!==o){n[Xn]=null;for(let i=0;i-1){const{encapsulation:i}=e.data[r.directiveStart+o];if(i===Wt.None||i===Wt.Emulated)return null}return st(r,t)}}(e,n.parent,t)}function Tr(e,n,t,r,o){e.insertBefore(n,t,r,o)}function Uv(e,n,t){e.appendChild(n,t)}function Bv(e,n,t,r,o){null!==r?Tr(e,n,t,r,o):Uv(e,n,t)}function Ka(e,n){return e.parentNode(n)}let Rd,rl,zv=function Gv(e,n,t){return 40&e.type?st(e,t):null};function el(e,n,t,r){const o=Nd(e,r,n),i=n[z],a=function $v(e,n,t){return zv(e,n,t)}(r.parent||n[tt],r,n);if(null!=o)if(Array.isArray(t))for(let l=0;le,createScript:e=>e,createScriptURL:e=>e})}catch{}return rl}()?.createScriptURL(e)||e}class ty{constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${$g})`}}function or(e){return e instanceof ty?e.changingThisBreaksApplicationSecurity:e}function Qi(e,n){const t=function qT(e){return e instanceof ty&&e.getTypeName()||null}(e);if(null!=t&&t!==n){if("ResourceURL"===t&&"URL"===n)return!0;throw new Error(`Required a safe ${n}, got a ${t} (see ${$g})`)}return t===n}const QT=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;var wo=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}(wo||{});function bo(e){const n=Ji();return n?n.sanitize(wo.URL,e)||"":Qi(e,"URL")?or(e):function Ld(e){return(e=String(e)).match(QT)?e:"unsafe:"+e}(G(e))}function ly(e){const n=Ji();if(n)return ey(n.sanitize(wo.RESOURCE_URL,e)||"");if(Qi(e,"ResourceURL"))return ey(or(e));throw new M(904,!1)}function Ji(){const e=b();return e&&e[Kr].sanitizer}let uy=(e,n,t)=>null;function Zd(e,n,t=!1){return uy(e,n,t)}class vA{}class hy{}class _A{resolveComponentFactory(n){throw function yA(e){const n=Error(`No component factory found for ${je(e)}.`);return n.ngComponent=e,n}(n)}}let ul=(()=>{class e{static#e=this.NULL=new _A}return e})();function CA(){return Mo(ue(),b())}function Mo(e,n){return new Nt(st(e,n))}let Nt=(()=>{class e{constructor(t){this.nativeElement=t}static#e=this.__NG_ELEMENT_ID__=CA}return e})();function DA(e){return e instanceof Nt?e.nativeElement:e}class gy{}let Fn=(()=>{class e{constructor(){this.destroyNode=null}static#e=this.__NG_ELEMENT_ID__=()=>function wA(){const e=b(),t=St(ue().index,e);return(Ke(t)?t:e)[z]}()}return e})(),bA=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>null})}return e})();class ts{constructor(n){this.full=n,this.major=n.split(".")[0],this.minor=n.split(".")[1],this.patch=n.split(".").slice(2).join(".")}}const EA=new ts("17.0.1"),Xd={};function dl(e){return!!Jd(e)&&(Array.isArray(e)||!(e instanceof Map)&&Symbol.iterator in e)}function Jd(e){return null!==e&&("function"==typeof e||"object"==typeof e)}class vy{constructor(){}supports(n){return dl(n)}create(n){return new AA(n)}}const TA=(e,n)=>n;class AA{constructor(n){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=n||TA}forEachItem(n){let t;for(t=this._itHead;null!==t;t=t._next)n(t)}forEachOperation(n){let t=this._itHead,r=this._removalsHead,o=0,i=null;for(;t||r;){const s=!r||t&&t.currentIndex<_y(r,o,i)?t:r,a=_y(s,o,i),l=s.currentIndex;if(s===r)o--,r=r._nextRemoved;else if(t=t._next,null==s.previousIndex)o++;else{i||(i=[]);const c=a-o,u=l-o;if(c!=u){for(let g=0;g{s=this._trackByFn(o,a),null!==t&&Object.is(t.trackById,s)?(r&&(t=this._verifyReinsertion(t,a,s,o)),Object.is(t.item,a)||this._addIdentityChange(t,a)):(t=this._mismatch(t,a,s,o),r=!0),t=t._next,o++}),this.length=o;return this._truncate(t),this.collection=n,this.isDirty}get isDirty(){return null!==this._additionsHead||null!==this._movesHead||null!==this._removalsHead||null!==this._identityChangesHead}_reset(){if(this.isDirty){let n;for(n=this._previousItHead=this._itHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;null!==n;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;null!==n;n=n._nextMoved)n.previousIndex=n.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(n,t,r,o){let i;return null===n?i=this._itTail:(i=n._prev,this._remove(n)),null!==(n=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._reinsertAfter(n,i,o)):null!==(n=null===this._linkedRecords?null:this._linkedRecords.get(r,o))?(Object.is(n.item,t)||this._addIdentityChange(n,t),this._moveAfter(n,i,o)):n=this._addAfter(new xA(t,r),i,o),n}_verifyReinsertion(n,t,r,o){let i=null===this._unlinkedRecords?null:this._unlinkedRecords.get(r,null);return null!==i?n=this._reinsertAfter(i,n._prev,o):n.currentIndex!=o&&(n.currentIndex=o,this._addToMoves(n,o)),n}_truncate(n){for(;null!==n;){const t=n._next;this._addToRemovals(this._unlink(n)),n=t}null!==this._unlinkedRecords&&this._unlinkedRecords.clear(),null!==this._additionsTail&&(this._additionsTail._nextAdded=null),null!==this._movesTail&&(this._movesTail._nextMoved=null),null!==this._itTail&&(this._itTail._next=null),null!==this._removalsTail&&(this._removalsTail._nextRemoved=null),null!==this._identityChangesTail&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(n,t,r){null!==this._unlinkedRecords&&this._unlinkedRecords.remove(n);const o=n._prevRemoved,i=n._nextRemoved;return null===o?this._removalsHead=i:o._nextRemoved=i,null===i?this._removalsTail=o:i._prevRemoved=o,this._insertAfter(n,t,r),this._addToMoves(n,r),n}_moveAfter(n,t,r){return this._unlink(n),this._insertAfter(n,t,r),this._addToMoves(n,r),n}_addAfter(n,t,r){return this._insertAfter(n,t,r),this._additionsTail=null===this._additionsTail?this._additionsHead=n:this._additionsTail._nextAdded=n,n}_insertAfter(n,t,r){const o=null===t?this._itHead:t._next;return n._next=o,n._prev=t,null===o?this._itTail=n:o._prev=n,null===t?this._itHead=n:t._next=n,null===this._linkedRecords&&(this._linkedRecords=new yy),this._linkedRecords.put(n),n.currentIndex=r,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){null!==this._linkedRecords&&this._linkedRecords.remove(n);const t=n._prev,r=n._next;return null===t?this._itHead=r:t._next=r,null===r?this._itTail=t:r._prev=t,n}_addToMoves(n,t){return n.previousIndex===t||(this._movesTail=null===this._movesTail?this._movesHead=n:this._movesTail._nextMoved=n),n}_addToRemovals(n){return null===this._unlinkedRecords&&(this._unlinkedRecords=new yy),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,null===this._removalsTail?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n}_addIdentityChange(n,t){return n.item=t,this._identityChangesTail=null===this._identityChangesTail?this._identityChangesHead=n:this._identityChangesTail._nextIdentityChange=n,n}}class xA{constructor(n,t){this.item=n,this.trackById=t,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}}class NA{constructor(){this._head=null,this._tail=null}add(n){null===this._head?(this._head=this._tail=n,n._nextDup=null,n._prevDup=null):(this._tail._nextDup=n,n._prevDup=this._tail,n._nextDup=null,this._tail=n)}get(n,t){let r;for(r=this._head;null!==r;r=r._nextDup)if((null===t||t<=r.currentIndex)&&Object.is(r.trackById,n))return r;return null}remove(n){const t=n._prevDup,r=n._nextDup;return null===t?this._head=r:t._nextDup=r,null===r?this._tail=t:r._prevDup=t,null===this._head}}class yy{constructor(){this.map=new Map}put(n){const t=n.trackById;let r=this.map.get(t);r||(r=new NA,this.map.set(t,r)),r.add(n)}get(n,t){const o=this.map.get(n);return o?o.get(n,t):null}remove(n){const t=n.trackById;return this.map.get(t).remove(n)&&this.map.delete(t),n}get isEmpty(){return 0===this.map.size}clear(){this.map.clear()}}function _y(e,n,t){const r=e.previousIndex;if(null===r)return r;let o=0;return t&&r{if(t&&t.key===o)this._maybeAddToChanges(t,r),this._appendAfter=t,t=t._next;else{const i=this._getOrCreateRecordForKey(o,r);t=this._insertBeforeOrAppend(t,i)}}),t){t._prev&&(t._prev._next=null),this._removalsHead=t;for(let r=t;null!==r;r=r._nextRemoved)r===this._mapHead&&(this._mapHead=null),this._records.delete(r.key),r._nextRemoved=r._next,r.previousValue=r.currentValue,r.currentValue=null,r._prev=null,r._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,t){if(n){const r=n._prev;return t._next=n,t._prev=r,n._prev=t,r&&(r._next=t),n===this._mapHead&&(this._mapHead=t),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=t,t._prev=this._appendAfter):this._mapHead=t,this._appendAfter=t,null}_getOrCreateRecordForKey(n,t){if(this._records.has(n)){const o=this._records.get(n);this._maybeAddToChanges(o,t);const i=o._prev,s=o._next;return i&&(i._next=s),s&&(s._prev=i),o._next=null,o._prev=null,o}const r=new OA(n);return this._records.set(n,r),r.currentValue=t,this._addToAdditions(r),r}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;null!==n;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;null!==n;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;null!=n;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,t){Object.is(t,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=t,this._addToChanges(n))}_addToAdditions(n){null===this._additionsHead?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){null===this._changesHead?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,t){n instanceof Map?n.forEach(t):Object.keys(n).forEach(r=>t(n[r],r))}}class OA{constructor(n){this.key=n,this.previousValue=null,this.currentValue=null,this._nextPrevious=null,this._next=null,this._prev=null,this._nextAdded=null,this._nextRemoved=null,this._nextChanged=null}}function Dy(){return new fl([new vy])}let fl=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:Dy});constructor(t){this.factories=t}static create(t,r){if(null!=r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||Dy()),deps:[[e,new La,new Fa]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(null!=r)return r;throw new M(901,!1)}}return e})();function wy(){return new ns([new Cy])}let ns=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:wy});constructor(t){this.factories=t}static create(t,r){if(r){const o=r.factories.slice();t=t.concat(o)}return new e(t)}static extend(t){return{provide:e,useFactory:r=>e.create(t,r||wy()),deps:[[e,new La,new Fa]]}}find(t){const r=this.factories.find(o=>o.supports(t));if(r)return r;throw new M(901,!1)}}return e})();function rs(e,n,t,r,o=!1){for(;null!==t;){const i=n[t.index];null!==i&&r.push(me(i)),Ye(i)&&by(i,r);const s=t.type;if(8&s)rs(e,n,t.child,r);else if(32&s){const a=Td(t,n);let l;for(;l=a();)r.push(l)}else if(16&s){const a=Wv(n,t);if(Array.isArray(a))r.push(...a);else{const l=qi(n[Me]);rs(l[T],l,a,r,!0)}}t=o?t.projectionNext:t.next}return r}function by(e,n){for(let t=Pe;t!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{},consumerIsAlwaysLive:!0,consumerMarkedDirty:e=>{ba(e.lView)},consumerOnSignalRead(){this.lView[Cr]=this}};function Kd(e){return e.ngOriginalError}class Ln{constructor(){this._console=console}handleError(n){const t=this._findOriginalError(n);this._console.error("ERROR",n),t&&this._console.error("ORIGINAL ERROR",t)}_findOriginalError(n){let t=n&&Kd(n);for(;t&&Kd(t);)t=Kd(t);return t||null}}const Sy=new N("",{providedIn:"root",factory:()=>!1}),W={};function C(e){Ny(J(),b(),lt()+e,!1)}function Ny(e,n,t,r){if(!r)if(3==(3&n[H])){const i=e.preOrderCheckHooks;null!==i&&Sa(n,i,t)}else{const i=e.preOrderHooks;null!==i&&Ta(n,i,0,t)}br(t)}function S(e,n=X.Default){const t=b();return null===t?k(e,n):zm(ue(),t,j(e),n)}function pl(e,n,t,r,o,i,s,a,l,c,u){const d=n.blueprint.slice();return d[Ae]=o,d[H]=140|r,(null!==c||e&&2048&e[H])&&(d[H]|=2048),Dm(d),d[we]=d[eo]=e,d[ge]=t,d[Kr]=s||e&&e[Kr],d[z]=a||e&&e[z],d[it]=l||e&&e[it]||null,d[tt]=i,d[Ni]=function fT(){return dT++}(),d[un]=u,d[dm]=c,d[Me]=2==n.type?e[Me]:d,d}function So(e,n,t,r,o){let i=e.data[n];if(null===i)i=function ef(e,n,t,r,o){const i=Mm(),s=Gu(),l=e.data[n]=function XA(e,n,t,r,o,i){let s=n?n.injectorIndex:-1,a=0;return function oo(){return null!==B.skipHydrationRootTNode}()&&(a|=128),{type:t,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:n,projection:null,styles:null,stylesWithoutHost:null,residualStyles:void 0,classes:null,classesWithoutHost:null,residualClasses:void 0,classBindings:0,styleBindings:0}}(0,s?i:i&&i.parent,t,n,r,o);return null===e.firstChild&&(e.firstChild=l),null!==i&&(s?null==i.child&&null!==l.parent&&(i.child=l):null===i.next&&(i.next=l,l.prev=i)),l}(e,n,t,r,o),function z0(){return B.lFrame.inI18n}()&&(i.flags|=32);else if(64&i.type){i.type=t,i.value=r,i.attrs=o;const s=function ki(){const e=B.lFrame,n=e.currentTNode;return e.isParent?n:n.parent}();i.injectorIndex=null===s?-1:s.injectorIndex}return gn(i,!0),i}function os(e,n,t,r){if(0===t)return-1;const o=n.length;for(let i=0;iU&&Ny(e,n,U,!1),hn(s?2:0,o),t(r,o)}finally{br(i),hn(s?3:1,o)}}function tf(e,n,t){if(Fu(n)){const r=Se(null);try{const i=n.directiveEnd;for(let s=n.directiveStart;snull;function Fy(e,n,t,r){for(let o in e)if(e.hasOwnProperty(o)){t=null===t?{}:t;const i=e[o];null===r?Ly(t,n,o,i):r.hasOwnProperty(o)&&Ly(t,n,r[o],i)}return t}function Ly(e,n,t,r){e.hasOwnProperty(t)?e[t].push(n,r):e[t]=[n,r]}function Rt(e,n,t,r,o,i,s,a){const l=st(n,t);let u,c=n.inputs;!a&&null!=c&&(u=c[r])?(df(e,t,u,r,o),Dr(n)&&function ex(e,n){const t=St(n,e);16&t[H]||(t[H]|=64)}(t,n.index)):3&n.type&&(r=function KA(e){return"class"===e?"className":"for"===e?"htmlFor":"formaction"===e?"formAction":"innerHtml"===e?"innerHTML":"readonly"===e?"readOnly":"tabindex"===e?"tabIndex":e}(r),o=null!=s?s(o,n.value||"",r):o,i.setProperty(l,r,o))}function af(e,n,t,r){if(Im()){const o=null===r?null:{"":-1},i=function sx(e,n){const t=e.directiveRegistry;let r=null,o=null;if(t)for(let i=0;i0;){const t=e[--n];if("number"==typeof t&&t<0)return t}return 0})(s)!=a&&s.push(a),s.push(t,r,i)}}(e,n,r,os(e,t,o.hostVars,W),o)}function yn(e,n,t,r,o,i){const s=st(e,n);!function cf(e,n,t,r,o,i,s){if(null==i)e.removeAttribute(n,o,t);else{const a=null==s?G(i):s(i,r||"",o);e.setAttribute(n,o,a,t)}}(n[z],s,i,e.value,t,r,o)}function fx(e,n,t,r,o,i){const s=i[n];if(null!==s)for(let a=0;ae.nextProducerIndex;)e.producerNode.pop(),e.producerLastReadVersion.pop(),e.producerIndexOfThis.pop()}}(a,s),function LA(e){e.lView[Cr]!==e&&(e.lView=null,Ey.push(e))}(a)),Qu()}}function Wy(e,n){for(let t=kv(e);null!==t;t=Fv(t)){t[ku]=!1;for(let r=Pe;r-1&&(Wi(n,r),Pa(t,r))}this._attachedToViewContainer=!1}Ja(this._lView[T],this._lView)}onDestroy(n){Ea(this._lView,n)}markForCheck(){is(this._cdRefInjectingView||this._lView)}detach(){this._lView[H]&=-129}reattach(){bm(this._lView),this._lView[H]|=128}detectChanges(){!function ff(e,n,t,r=!0){const o=n[Kr],i=o.rendererFactory,s=o.afterRenderEventManager;i.begin?.(),s?.begin();try{qy(e,n,e.template,t),function gx(e){let n=0;for(;9216&e[H]||e[Cr]?.dirty;){if(100===n)throw new M(103,!1);n++,Yy(e,1)}}(n)}catch(l){throw r&&ml(n,l),l}finally{i.end?.(),o.inlineEffectRunner?.flush(),s?.end()}}(this._lView[T],this._lView,this.context,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new M(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null,function MT(e,n){Yi(e,n,n[z],2,null,null)}(this._lView[T],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new M(902,!1);this._appRef=n}}let as=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Cx}return e})();function Cx(e){return function Dx(e,n,t){if(Dr(e)&&!t){const r=St(e.index,n);return new ss(r,r)}return 47&e.type?new ss(n[Me],n):null}(ue(),b(),16==(16&e))}let vl=(()=>{class e{static#e=this.__NG_ELEMENT_ID__=Ix;static#t=this.__NG_ENV_ID__=t=>t}return e})();class Ex extends vl{constructor(n){super(),this._lView=n}onDestroy(n){return Ea(this._lView,n),()=>function $u(e,n){if(null===e[Xn])return;const t=e[Xn].indexOf(n);-1!==t&&e[Xn].splice(t,1)}(this._lView,n)}}function Ix(){return new Ex(b())}function Ar(e,n){return performance?.mark?.(e,n)}function hf(e){return n=>{setTimeout(e,void 0,n)}}const xe=class Rx extends zt{constructor(n=!1){super(),this.__isAsync=n}emit(n){super.next(n)}subscribe(n,t,r){let o=n,i=t||(()=>null),s=r;if(n&&"object"==typeof n){const l=n;o=l.next?.bind(l),i=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(i=hf(i),o&&(o=hf(o)),s&&(s=hf(s)));const a=super.subscribe({next:o,error:i,complete:s});return n instanceof Et&&n.add(a),a}};function Xy(...e){}class ae{constructor({enableLongStackTrace:n=!1,shouldCoalesceEventChangeDetection:t=!1,shouldCoalesceRunChangeDetection:r=!1}){if(this.hasPendingMacrotasks=!1,this.hasPendingMicrotasks=!1,this.isStable=!0,this.onUnstable=new xe(!1),this.onMicrotaskEmpty=new xe(!1),this.onStable=new xe(!1),this.onError=new xe(!1),typeof Zone>"u")throw new M(908,!1);Zone.assertZonePatched();const o=this;o._nesting=0,o._outer=o._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(o._inner=o._inner.fork(new Zone.TaskTrackingZoneSpec)),n&&Zone.longStackTraceZoneSpec&&(o._inner=o._inner.fork(Zone.longStackTraceZoneSpec)),o.shouldCoalesceEventChangeDetection=!r&&t,o.shouldCoalesceRunChangeDetection=r,o.lastRequestAnimationFrameId=-1,o.nativeRequestAnimationFrame=function Ox(){const e="function"==typeof pe.requestAnimationFrame;let n=pe[e?"requestAnimationFrame":"setTimeout"],t=pe[e?"cancelAnimationFrame":"clearTimeout"];if(typeof Zone<"u"&&n&&t){const r=n[Zone.__symbol__("OriginalDelegate")];r&&(n=r);const o=t[Zone.__symbol__("OriginalDelegate")];o&&(t=o)}return{nativeRequestAnimationFrame:n,nativeCancelAnimationFrame:t}}().nativeRequestAnimationFrame,function Fx(e){const n=()=>{!function kx(e){e.isCheckStableRunning||-1!==e.lastRequestAnimationFrameId||(e.lastRequestAnimationFrameId=e.nativeRequestAnimationFrame.call(pe,()=>{e.fakeTopEventTask||(e.fakeTopEventTask=Zone.root.scheduleEventTask("fakeTopEventTask",()=>{e.lastRequestAnimationFrameId=-1,gf(e),e.isCheckStableRunning=!0,pf(e),e.isCheckStableRunning=!1},void 0,()=>{},()=>{})),e.fakeTopEventTask.invoke()}),gf(e))}(e)};e._inner=e._inner.fork({name:"angular",properties:{isAngularZone:!0},onInvokeTask:(t,r,o,i,s,a)=>{if(function Vx(e){return!(!Array.isArray(e)||1!==e.length)&&!0===e[0].data?.__ignore_ng_zone__}(a))return t.invokeTask(o,i,s,a);try{return Jy(e),t.invokeTask(o,i,s,a)}finally{(e.shouldCoalesceEventChangeDetection&&"eventTask"===i.type||e.shouldCoalesceRunChangeDetection)&&n(),Ky(e)}},onInvoke:(t,r,o,i,s,a,l)=>{try{return Jy(e),t.invoke(o,i,s,a,l)}finally{e.shouldCoalesceRunChangeDetection&&n(),Ky(e)}},onHasTask:(t,r,o,i)=>{t.hasTask(o,i),r===o&&("microTask"==i.change?(e._hasPendingMicrotasks=i.microTask,gf(e),pf(e)):"macroTask"==i.change&&(e.hasPendingMacrotasks=i.macroTask))},onHandleError:(t,r,o,i)=>(t.handleError(o,i),e.runOutsideAngular(()=>e.onError.emit(i)),!1)})}(o)}static isInAngularZone(){return typeof Zone<"u"&&!0===Zone.current.get("isAngularZone")}static assertInAngularZone(){if(!ae.isInAngularZone())throw new M(909,!1)}static assertNotInAngularZone(){if(ae.isInAngularZone())throw new M(909,!1)}run(n,t,r){return this._inner.run(n,t,r)}runTask(n,t,r,o){const i=this._inner,s=i.scheduleEventTask("NgZoneEvent: "+o,n,Px,Xy,Xy);try{return i.runTask(s,t,r)}finally{i.cancelTask(s)}}runGuarded(n,t,r){return this._inner.runGuarded(n,t,r)}runOutsideAngular(n){return this._outer.run(n)}}const Px={};function pf(e){if(0==e._nesting&&!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 gf(e){e.hasPendingMicrotasks=!!(e._hasPendingMicrotasks||(e.shouldCoalesceEventChangeDetection||e.shouldCoalesceRunChangeDetection)&&-1!==e.lastRequestAnimationFrameId)}function Jy(e){e._nesting++,e.isStable&&(e.isStable=!1,e.onUnstable.emit(null))}function Ky(e){e._nesting--,pf(e)}const e_=new N("",{providedIn:"root",factory:t_});function t_(){const e=A(ae);let n=!0;return function H1(...e){const n=bi(e),t=function O1(e,n){return"number"==typeof yu(e)?e.pop():n}(e,1/0),r=e;return r.length?1===r.length?qt(r[0]):Yr(t)(Oe(r,n)):an}(new Te(o=>{n=e.isStable&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks,e.runOutsideAngular(()=>{o.next(n),o.complete()})}),new Te(o=>{let i;e.runOutsideAngular(()=>{i=e.onStable.subscribe(()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{!n&&!e.hasPendingMacrotasks&&!e.hasPendingMicrotasks&&(n=!0,o.next(!0))})})});const s=e.onUnstable.subscribe(()=>{ae.assertInAngularZone(),n&&(n=!1,e.runOutsideAngular(()=>{o.next(!1)}))});return()=>{i.unsubscribe(),s.unsubscribe()}}).pipe(Bg()))}var xr=function(e){return e[e.EarlyRead=0]="EarlyRead",e[e.Write=1]="Write",e[e.MixedReadWrite=2]="MixedReadWrite",e[e.Read=3]="Read",e}(xr||{});const n_={destroy(){}};function o_(e,n){!n&&function vd(e){if(!Zg()&&!function r0(){return Xr}())throw new M(-203,!1)}();const t=n?.injector??A(_t);if(!function tr(e){return"browser"===(e??A(_t)).get(Sr)}(t))return n_;Ar("mark_use_counter",{detail:{feature:"NgAfterNextRender"}});const r=t.get(yl),o=r.handler??=new s_,i=n?.phase??xr.MixedReadWrite,s=()=>{o.unregister(l),a()},a=t.get(vl).onDestroy(s),l=new i_(t,i,()=>{s(),e()});return o.register(l),{destroy:s}}class i_{constructor(n,t,r){this.phase=t,this.callbackFn=r,this.zone=n.get(ae),this.errorHandler=n.get(Ln,null,{optional:!0})}invoke(){try{this.zone.runOutsideAngular(this.callbackFn)}catch(n){this.errorHandler?.handleError(n)}}}class s_{constructor(){this.executingCallbacks=!1,this.buckets={[xr.EarlyRead]:new Set,[xr.Write]:new Set,[xr.MixedReadWrite]:new Set,[xr.Read]:new Set},this.deferredCallbacks=new Set}validateBegin(){if(this.executingCallbacks)throw new M(102,!1)}register(n){(this.executingCallbacks?this.deferredCallbacks:this.buckets[n.phase]).add(n)}unregister(n){this.buckets[n.phase].delete(n),this.deferredCallbacks.delete(n)}execute(){this.executingCallbacks=!0;for(const n of Object.values(this.buckets))for(const t of n)t.invoke();this.executingCallbacks=!1;for(const n of this.deferredCallbacks)this.buckets[n.phase].add(n);this.deferredCallbacks.clear()}destroy(){for(const n of Object.values(this.buckets))n.clear();this.deferredCallbacks.clear()}}let yl=(()=>{class e{constructor(){this.renderDepth=0,this.handler=null,this.internalCallbacks=[]}begin(){this.handler?.validateBegin(),this.renderDepth++}end(){if(this.renderDepth--,0===this.renderDepth){for(const t of this.internalCallbacks)t();this.internalCallbacks.length=0,this.handler?.execute()}}ngOnDestroy(){this.handler?.destroy(),this.handler=null,this.internalCallbacks.length=0}static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new e})}return e})();function Hx(e,n){const t=St(n,e),r=t[T];!function Ux(e,n){for(let t=n.length;t0&&Qv(e,t,i.join(" "))}}(d,Ie,m,r),void 0!==t&&function Xx(e,n,t){const r=e.projection=[];for(let o=0;o=0;r--){const o=e[r];o.hostVars=n+=o.hostVars,o.hostAttrs=Ti(o.hostAttrs,t=Ti(t,o.hostAttrs))}}(r)}function Cl(e){return e===cn?{}:e===te?[]:e}function eN(e,n){const t=e.viewQuery;e.viewQuery=t?(r,o)=>{n(r,o),t(r,o)}:n}function tN(e,n){const t=e.contentQueries;e.contentQueries=t?(r,o,i)=>{n(r,o,i),t(r,o,i)}:n}function nN(e,n){const t=e.hostBindings;e.hostBindings=t?(r,o)=>{n(r,o),t(r,o)}:n}function h_(e){const n=e.inputConfig,t={};for(const r in n)if(n.hasOwnProperty(r)){const o=n[r];Array.isArray(o)&&o[2]&&(t[r]=o[2])}e.inputTransforms=t}function _n(e,n,t){return e[n]=t}function He(e,n,t){return!Object.is(e[n],t)&&(e[n]=t,!0)}function Xt(e,n,t,r){const o=b();return He(o,mn(),n)&&(J(),yn(De(),o,e,n,t,r)),Xt}function Ao(e,n,t,r){return He(e,mn(),t)?n+G(t)+r:W}function wl(e,n){return e<<17|n<<2}function ir(e){return e>>17&32767}function vf(e){return 2|e}function Rr(e){return(131068&e)>>2}function yf(e,n){return-131069&e|n<<2}function _f(e){return 1|e}function b_(e,n,t,r,o){const i=e[t+1],s=null===n;let a=r?ir(i):Rr(i),l=!1;for(;0!==a&&(!1===l||s);){const u=e[a+1];hN(e[a],n)&&(l=!0,e[a+1]=r?_f(u):vf(u)),a=r?ir(u):Rr(u)}l&&(e[t+1]=r?vf(i):_f(i))}function hN(e,n){return null===e||null==n||(Array.isArray(e)?e[1]:e)===n||!(!Array.isArray(e)||"string"!=typeof n)&&go(e,n)>=0}function E(e,n,t){const r=b();return He(r,mn(),n)&&Rt(J(),De(),r,e,n,r[z],t,!1),E}function Cf(e,n,t,r,o){const s=o?"class":"style";df(e,t,n.inputs[s],s,r)}function bl(e,n){return function Jt(e,n,t,r){const o=b(),i=J(),s=function Pn(e){const n=B.lFrame,t=n.bindingIndex;return n.bindingIndex=n.bindingIndex+e,t}(2);i.firstUpdatePass&&function R_(e,n,t,r){const o=e.data;if(null===o[t+1]){const i=o[lt()],s=function N_(e,n){return n>=e.expandoStartIndex}(e,t);(function F_(e,n){return 0!=(e.flags&(n?8:16))})(i,r)&&null===n&&!s&&(n=!1),n=function wN(e,n,t,r){const o=function Wu(e){const n=B.lFrame.currentDirectiveIndex;return-1===n?null:e[n]}(e);let i=r?n.residualClasses:n.residualStyles;if(null===o)0===(r?n.classBindings:n.styleBindings)&&(t=us(t=Df(null,e,n,t,r),n.attrs,r),i=null);else{const s=n.directiveStylingLast;if(-1===s||e[s]!==o)if(t=Df(o,e,n,t,r),null===i){let l=function bN(e,n,t){const r=t?n.classBindings:n.styleBindings;if(0!==Rr(r))return e[ir(r)]}(e,n,r);void 0!==l&&Array.isArray(l)&&(l=Df(null,e,n,l[1],r),l=us(l,n.attrs,r),function EN(e,n,t,r){e[ir(t?n.classBindings:n.styleBindings)]=r}(e,n,r,l))}else i=function IN(e,n,t){let r;const o=n.directiveEnd;for(let i=1+n.directiveStylingLast;i0)&&(c=!0)):u=t,o)if(0!==l){const g=ir(e[a+1]);e[r+1]=wl(g,a),0!==g&&(e[g+1]=yf(e[g+1],r)),e[a+1]=function cN(e,n){return 131071&e|n<<17}(e[a+1],r)}else e[r+1]=wl(a,0),0!==a&&(e[a+1]=yf(e[a+1],r)),a=r;else e[r+1]=wl(l,0),0===a?a=r:e[l+1]=yf(e[l+1],r),l=r;c&&(e[r+1]=vf(e[r+1])),b_(e,u,r,!0),b_(e,u,r,!1),function fN(e,n,t,r,o){const i=o?e.residualClasses:e.residualStyles;null!=i&&"string"==typeof n&&go(i,n)>=0&&(t[r+1]=_f(t[r+1]))}(n,u,e,r,i),s=wl(a,l),i?n.classBindings=s:n.styleBindings=s}(o,i,n,t,s,r)}}(i,e,s,r),n!==W&&He(o,s,n)&&function P_(e,n,t,r,o,i,s,a){if(!(3&n.type))return;const l=e.data,c=l[a+1],u=function uN(e){return 1==(1&e)}(c)?k_(l,n,t,o,Rr(c),s):void 0;El(u)||(El(i)||function lN(e){return 2==(2&e)}(c)&&(i=k_(l,null,t,o,a,s)),function FT(e,n,t,r,o){if(n)o?e.addClass(t,r):e.removeClass(t,r);else{let i=-1===r.indexOf("-")?void 0:rr.DashCase;null==o?e.removeStyle(t,r,i):("string"==typeof o&&o.endsWith("!important")&&(o=o.slice(0,-10),i|=rr.Important),e.setStyle(t,r,o,i))}}(r,s,Oi(lt(),t),o,i))}(i,i.data[lt()],o,o[z],e,o[s+1]=function AN(e,n){return null==e||""===e||("string"==typeof n?e+=n:"object"==typeof e&&(e=je(or(e)))),e}(n,t),r,s)}(e,n,null,!0),bl}function Df(e,n,t,r,o){let i=null;const s=t.directiveEnd;let a=t.directiveStylingLast;for(-1===a?a=t.directiveStart:a++;a0;){const l=e[o],c=Array.isArray(l),u=c?l[1]:l,d=null===u;let g=t[o+1];g===W&&(g=d?te:void 0);let m=d?sd(g,r):u===r?g:void 0;if(c&&!El(m)&&(m=sd(l,r)),El(m)&&(a=m,s))return a;const v=e[o+1];o=s?ir(v):Rr(v)}if(null!==n){let l=i?n.residualClasses:n.residualStyles;null!=l&&(a=sd(l,r))}return a}function El(e){return void 0!==e}function jo(e,n){return!n||Za(e)}function gs(e,n,t,r=!0){const o=n[T];if(function TT(e,n,t,r){const o=Pe+r,i=t.length;r>0&&(t[o-1][Yt]=n),r{class e{static#e=this.__NG_ELEMENT_ID__=cR}return e})();function cR(){return Y_(ue(),b())}const uR=en,W_=class extends uR{constructor(n,t,r){super(),this._lContainer=n,this._hostTNode=t,this._hostLView=r}get element(){return Mo(this._hostTNode,this._hostLView)}get injector(){return new ze(this._hostTNode,this._hostLView)}get parentInjector(){const n=Na(this._hostTNode,this._hostLView);if(Ku(n)){const t=Vi(n,this._hostLView),r=Li(n);return new ze(t[T].data[r+8],t)}return new ze(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){const t=Z_(this._lContainer);return null!==t&&t[n]||null}get length(){return this._lContainer.length-Pe}createEmbeddedView(n,t,r){let o,i;"number"==typeof r?o=r:null!=r&&(o=r.index,i=r.injector);const a=n.createEmbeddedViewImpl(t||{},i,null);return this.insertImpl(a,o,jo(this._hostTNode,null)),a}createComponent(n,t,r,o,i){const s=n&&!function ji(e){return"function"==typeof e}(n);let a;if(s)a=t;else{const v=t||{};a=v.index,r=v.injector,o=v.projectableNodes,i=v.environmentInjector||v.ngModuleRef}const l=s?n:new ls(Q(n)),c=r||this.parentInjector;if(!i&&null==l.ngModule){const _=(s?c:this.parentInjector).get(At,null);_&&(i=_)}Q(l.componentType??{});const m=l.create(c,o,null,i);return this.insertImpl(m.hostView,a,jo(this._hostTNode,null)),m}insert(n,t){return this.insertImpl(n,t,!0)}insertImpl(n,t,r){const o=n._lView;if(function P0(e){return Ye(e[we])}(o)){const a=this.indexOf(n);if(-1!==a)this.detach(a);else{const l=o[we],c=new W_(l,l[tt],l[we]);c.detach(c.indexOf(n))}}const i=this._adjustIndex(t),s=this._lContainer;return gs(s,o,i,r),n.attachToViewContainerRef(),Xm(xf(s),i,n),n}move(n,t){return this.insert(n,t)}indexOf(n){const t=Z_(this._lContainer);return null!==t?t.indexOf(n):-1}remove(n){const t=this._adjustIndex(n,-1),r=Wi(this._lContainer,t);r&&(Pa(xf(this._lContainer),t),Ja(r[T],r))}detach(n){const t=this._adjustIndex(n,-1),r=Wi(this._lContainer,t);return r&&null!=Pa(xf(this._lContainer),t)?new ss(r):null}_adjustIndex(n,t=0){return n??this.length+t}};function Z_(e){return e[8]}function xf(e){return e[8]||(e[8]=[])}function Y_(e,n){let t;const r=n[e.index];return Ye(r)?t=r:(t=Uy(r,n,null,e),n[e.index]=t,gl(n,t)),Q_(t,n,e,r),new W_(t,e,n)}let Q_=function J_(e,n,t,r){if(e[fn])return;let o;o=8&t.type?me(r):function dR(e,n){const t=e[z],r=t.createComment(""),o=st(n,e);return Tr(t,Ka(t,o),r,function OT(e,n){return e.nextSibling(n)}(t,o),!1),r}(n,t),e[fn]=o},Nf=(e,n,t)=>!1;function q(e,n,t,r,o,i,s,a){const l=b(),c=J(),u=e+U,d=c.firstCreatePass?function gR(e,n,t,r,o,i,s,a,l){const c=n.consts,u=So(n,e,4,s||null,pn(c,a));af(n,t,u,pn(c,l)),Ma(n,u);const d=u.tView=sf(2,u,r,o,i,n.directiveRegistry,n.pipeRegistry,null,n.schemas,c,null);return null!==n.queries&&(n.queries.template(n,u),d.queries=n.queries.embeddedTView(u)),u}(u,c,l,n,t,r,o,i,s):c.data[u];gn(d,!1);const g=K_(c,l,d,e);Ia()&&el(c,l,g,d),nt(g,l);const m=Uy(g,l,g,d);return l[u]=m,gl(l,m),function X_(e,n,t){return Nf(e,n,t)}(m,d,l),wa(d)&&nf(c,l,d),null!=s&&rf(l,d,a),q}let K_=function eC(e,n,t,r){return Jn(!0),n[z].createComment("")};function h(e,n,t,r){const o=b(),i=J(),s=U+e,a=o[z],l=i.firstCreatePass?function oO(e,n,t,r,o,i){const s=n.consts,l=So(n,e,2,r,pn(s,o));return af(n,t,l,pn(s,i)),null!==l.attrs&&_l(l,l.attrs,!1),null!==l.mergedAttrs&&_l(l,l.mergedAttrs,!0),null!==n.queries&&n.queries.elementStart(n,l),l}(s,i,o,n,t,r):i.data[s],c=EC(i,o,l,a,n,e);o[s]=c;const u=wa(l);return gn(l,!0),Xv(a,c,l),32!=(32&l.flags)&&Ia()&&el(i,o,c,l),0===function F0(){return B.lFrame.elementDepthCount}()&&nt(c,o),function L0(){B.lFrame.elementDepthCount++}(),u&&(nf(i,o,l),tf(i,l,o)),null!==r&&rf(o,l),h}function p(){let e=ue();Gu()?zu():(e=e.parent,gn(e,!1));const n=e;(function j0(e){return B.skipHydrationRootTNode===e})(n)&&function $0(){B.skipHydrationRootTNode=null}(),function V0(){B.lFrame.elementDepthCount--}();const t=J();return t.firstCreatePass&&(Ma(t,e),Fu(e)&&t.queries.elementEnd(e)),null!=n.classesWithoutHost&&function oS(e){return 0!=(8&e.flags)}(n)&&Cf(t,n,b(),n.classesWithoutHost,!0),null!=n.stylesWithoutHost&&function iS(e){return 0!=(16&e.flags)}(n)&&Cf(t,n,b(),n.stylesWithoutHost,!1),p}function y(e,n,t,r){return h(e,n,t,r),p(),y}let EC=(e,n,t,r,o,i)=>(Jn(!0),Xa(r,o,function Fm(){return B.lFrame.currentNamespace}()));function Dt(e,n,t){const r=b(),o=J(),i=e+U,s=o.firstCreatePass?function aO(e,n,t,r,o){const i=n.consts,s=pn(i,r),a=So(n,e,8,"ng-container",s);return null!==s&&_l(a,s,!0),af(n,t,a,pn(i,o)),null!==n.queries&&n.queries.elementStart(n,a),a}(i,o,r,n,t):o.data[i];gn(s,!0);const a=MC(o,r,s,e);return r[i]=a,Ia()&&el(o,r,a,s),nt(a,r),wa(s)&&(nf(o,r,s),tf(o,s,r)),null!=t&&rf(r,s),Dt}function wt(){let e=ue();const n=J();return Gu()?zu():(e=e.parent,gn(e,!1)),n.firstCreatePass&&(Ma(n,e),Fu(e)&&n.queries.elementEnd(e)),wt}let MC=(e,n,t,r)=>(Jn(!0),Ad(n[z],""));function Fe(){return b()}const Wo="en-US";let NC=Wo;function Es(e){return!!e&&"function"==typeof e.then}function nD(e){return!!e&&"function"==typeof e.subscribe}function R(e,n,t,r){const o=b(),i=J(),s=ue();return function oD(e,n,t,r,o,i,s){const a=wa(r),c=e.firstCreatePass&&Gy(e),u=n[ge],d=$y(n);let g=!0;if(3&r.type||s){const _=st(r,n),D=s?s(_):_,I=d.length,w=s?V=>s(me(V[r.index])):r.index;let x=null;if(!s&&a&&(x=function sP(e,n,t,r){const o=e.cleanup;if(null!=o)for(let i=0;il?a[l]:null}"string"==typeof s&&(i+=2)}return null}(e,n,o,r.index)),null!==x)(x.__ngLastListenerFn__||x).__ngNextListenerFn__=i,x.__ngLastListenerFn__=i,g=!1;else{i=sD(r,n,u,i,!1);const V=t.listen(D,o,i);d.push(i,V),c&&c.push(o,w,I,I+1)}}else i=sD(r,n,u,i,!1);const m=r.outputs;let v;if(g&&null!==m&&(v=m[o])){const _=v.length;if(_)for(let D=0;D<_;D+=2){const Z=n[v[D]][v[D+1]].subscribe(i),Ie=d.length;d.push(i,Z),c&&c.push(o,r.index,Ie,-(Ie+1))}}}(i,o,o[z],s,e,n,r),R}function iD(e,n,t,r){try{return hn(6,n,t),!1!==t(r)}catch(o){return ml(e,o),!1}finally{hn(7,n,t)}}function sD(e,n,t,r,o){return function i(s){if(s===Function)return r;is(e.componentOffset>-1?St(e.index,n):n);let l=iD(n,t,r,s),c=i.__ngNextListenerFn__;for(;c;)l=iD(n,t,c,s)&&l,c=c.__ngNextListenerFn__;return o&&!1===l&&s.preventDefault(),l}}function P(e=1){return function Y0(e){return(B.lFrame.contextLView=function wm(e,n){for(;e>0;)n=n[eo],e--;return n}(e,B.lFrame.contextLView))[ge]}(e)}function jn(e,n,t,r,o){const i=b(),s=Ao(i,n,t,r);return s!==W&&Rt(J(),De(),i,e,s,i[z],o,!1),jn}function Gf(e){return function ro(e,n){return e[n]}(function G0(){return B.lFrame.contextLView}(),U+e)}function f(e,n=""){const t=b(),r=J(),o=e+U,i=r.firstCreatePass?So(r,o,1,n,null):r.data[o],s=ID(r,t,i,n,e);t[o]=s,Ia()&&el(r,t,s,i),gn(i,!1)}let ID=(e,n,t,r,o)=>(Jn(!0),function Qa(e,n){return e.createText(n)}(n[z],r));function be(e){return Hn("",e,""),be}function Hn(e,n,t){const r=b(),o=Ao(r,e,n,t);return o!==W&&function Vn(e,n,t){const r=Oi(n,e);!function Vv(e,n,t){e.setValue(n,t)}(e[z],r,t)}(r,lt(),o),Hn}function zf(e,n,t,r,o){if(e=j(e),Array.isArray(e))for(let i=0;i>20;if(Ir(e)||!e.multi){const m=new Fi(c,o,S),v=Wf(l,n,o?u:u+g,d);-1===v?(nd(xa(a,s),i,l),qf(i,e,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(m),s.push(m)):(t[v]=m,s[v]=m)}else{const m=Wf(l,n,u+g,d),v=Wf(l,n,u,u+g),D=v>=0&&t[v];if(o&&!D||!o&&!(m>=0&&t[m])){nd(xa(a,s),i,l);const I=function IP(e,n,t,r,o){const i=new Fi(e,t,S);return i.multi=[],i.index=n,i.componentProviders=0,PD(i,o,r&&!t),i}(o?EP:bP,t.length,o,r,c);!o&&D&&(t[v].providerFactory=I),qf(i,e,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,o&&(a.providerIndexes+=1048576),t.push(I),s.push(I)}else qf(i,e,m>-1?m:v,PD(t[o?v:m],c,!o&&r));!o&&r&&D&&t[v].componentProviders++}}}function qf(e,n,t,r){const o=Ir(n),i=function FS(e){return!!e.useClass}(n);if(o||i){const l=(i?j(n.useClass):n).prototype.ngOnDestroy;if(l){const c=e.destroyHooks||(e.destroyHooks=[]);if(!o&&n.multi){const u=c.indexOf(t);-1===u?c.push(t,[r,l]):c[u+1].push(r,l)}else c.push(t,l)}}}function PD(e,n,t){return t&&e.componentProviders++,e.multi.push(n)-1}function Wf(e,n,t,r){for(let o=t;o{t.providersResolver=(r,o)=>function wP(e,n,t){const r=J();if(r.firstCreatePass){const o=Qt(e);zf(t,r.data,r.blueprint,o,!0),zf(n,r.data,r.blueprint,o,!1)}}(r,o?o(e):e,n)}}class kr{}class kD{}class Yf extends kr{constructor(n,t,r){super(),this._parent=t,this._bootstrapComponents=[],this.destroyCbs=[],this.componentFactoryResolver=new a_(this);const o=et(n);this._bootstrapComponents=xt(o.bootstrap),this._r3Injector=pv(n,t,[{provide:kr,useValue:this},{provide:ul,useValue:this.componentFactoryResolver},...r],je(n),new Set(["environment"])),this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(n)}get injector(){return this._r3Injector}destroy(){const n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(t=>t()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}}class Qf extends kD{constructor(n){super(),this.moduleType=n}create(n){return new Yf(this.moduleType,n,[])}}class FD extends kr{constructor(n){super(),this.componentFactoryResolver=new a_(this),this.instance=null;const t=new Mr([...n.providers,{provide:kr,useValue:this},{provide:ul,useValue:this.componentFactoryResolver}],n.parent||Ba(),n.debugName,new Set(["environment"]));this.injector=t,n.runEnvironmentInitializers&&t.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(n){this.injector.onDestroy(n)}}function Xf(e,n,t=null){return new FD({providers:e,parent:n,debugName:t,runEnvironmentInitializers:!0}).injector}let TP=(()=>{class e{constructor(t){this._injector=t,this.cachedInjectors=new Map}getOrCreateStandaloneInjector(t){if(!t.standalone)return null;if(!this.cachedInjectors.has(t)){const r=iv(0,t.type),o=r.length>0?Xf([r],this._injector,`Standalone[${t.type.name}]`):null;this.cachedInjectors.set(t,o)}return this.cachedInjectors.get(t)}ngOnDestroy(){try{for(const t of this.cachedInjectors.values())null!==t&&t.destroy()}finally{this.cachedInjectors.clear()}}static#e=this.\u0275prov=O({token:e,providedIn:"environment",factory:()=>new e(k(At))})}return e})();const AP={detail:{feature:"NgStandalone"}};function Ot(e){Ar("mark_use_counter",AP),e.getStandaloneInjector=n=>n.get(TP).getOrCreateStandaloneInjector(e)}function ee(e,n,t){const r=at()+e,o=b();return o[r]===W?_n(o,r,t?n.call(t):n()):function cs(e,n){return e[n]}(o,r)}function Is(e,n,t,r){return function zD(e,n,t,r,o,i){const s=n+t;return He(e,s,o)?_n(e,s+1,i?r.call(i,o):r(o)):Ms(e,s+1)}(b(),at(),e,n,t,r)}function GD(e,n,t,r,o){return function qD(e,n,t,r,o,i,s){const a=n+t;return function Nr(e,n,t,r){const o=He(e,n,t);return He(e,n+1,r)||o}(e,a,o,i)?_n(e,a+2,s?r.call(s,o,i):r(o,i)):Ms(e,a+2)}(b(),at(),e,n,t,r,o)}function Ms(e,n){const t=e[n];return t===W?void 0:t}function ek(){return this._results[Symbol.iterator]()}class Kf{static#e=Symbol.iterator;get changes(){return this._changes||(this._changes=new xe)}constructor(n=!1){this._emitDistinctChangesOnly=n,this.dirty=!0,this._results=[],this._changesDetected=!1,this._changes=null,this.length=0,this.first=void 0,this.last=void 0;const t=Kf.prototype;t[Symbol.iterator]||(t[Symbol.iterator]=ek)}get(n){return this._results[n]}map(n){return this._results.map(n)}filter(n){return this._results.filter(n)}find(n){return this._results.find(n)}reduce(n,t){return this._results.reduce(n,t)}forEach(n){this._results.forEach(n)}some(n){return this._results.some(n)}toArray(){return this._results.slice()}toString(){return this._results.toString()}reset(n,t){this.dirty=!1;const r=function yt(e){return e.flat(Number.POSITIVE_INFINITY)}(n);(this._changesDetected=!function yS(e,n,t){if(e.length!==n.length)return!1;for(let r=0;r{class e{static#e=this.__NG_ELEMENT_ID__=rk}return e})();const tk=Un,nk=class extends tk{constructor(n,t,r){super(),this._declarationLView=n,this._declarationTContainer=t,this.elementRef=r}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(n,t){return this.createEmbeddedViewImpl(n,t)}createEmbeddedViewImpl(n,t,r){const o=function ps(e,n,t,r){const o=n.tView,a=pl(e,o,t,4096&e[H]?4096:16,null,n,null,null,null,r?.injector??null,r?.dehydratedView??null);a[xi]=e[n.index];const c=e[dn];return null!==c&&(a[dn]=c.createEmbeddedView(o)),mf(o,a,t),a}(this._declarationLView,this._declarationTContainer,n,{injector:t,dehydratedView:r});return new ss(o)}};function rk(){return Hl(ue(),b())}function Hl(e,n){return 4&e.type?new nk(n,e,Mo(e,n)):null}class eh{constructor(n){this.queryList=n,this.matches=null}clone(){return new eh(this.queryList)}setDirty(){this.queryList.setDirty()}}class th{constructor(n=[]){this.queries=n}createEmbeddedView(n){const t=n.queries;if(null!==t){const r=null!==n.contentQueries?n.contentQueries[0]:t.length,o=[];for(let i=0;i0)r.push(s[a/2]);else{const c=i[a+1],u=n[-l];for(let d=Pe;d{class e{constructor(){this.initialized=!1,this.done=!1,this.donePromise=new Promise((t,r)=>{this.resolve=t,this.reject=r}),this.appInits=A(ch,{optional:!0})??[]}runInitializers(){if(this.initialized)return;const t=[];for(const o of this.appInits){const i=o();if(Es(i))t.push(i);else if(nD(i)){const s=new Promise((a,l)=>{i.subscribe({complete:a,error:l})});t.push(s)}}const r=()=>{this.done=!0,this.resolve()};Promise.all(t).then(()=>{r()}).catch(o=>{this.reject(o)}),0===t.length&&r(),this.initialized=!0}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),_w=(()=>{class e{log(t){console.log(t)}warn(t){console.warn(t)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})();const Bn=new N("LocaleId",{providedIn:"root",factory:()=>A(Bn,X.Optional|X.SkipSelf)||function Ok(){return typeof $localize<"u"&&$localize.locale||Wo}()});let Bl=(()=>{class e{constructor(){this.taskId=0,this.pendingTasks=new Set,this.hasPendingTasks=new kt(!1)}add(){this.hasPendingTasks.next(!0);const t=this.taskId++;return this.pendingTasks.add(t),t}remove(t){this.pendingTasks.delete(t),0===this.pendingTasks.size&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this.hasPendingTasks.next(!1)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class jk{constructor(n,t){this.ngModuleFactory=n,this.componentFactories=t}}let Dw=(()=>{class e{compileModuleSync(t){return new Qf(t)}compileModuleAsync(t){return Promise.resolve(this.compileModuleSync(t))}compileModuleAndAllComponentsSync(t){const r=this.compileModuleSync(t),i=xt(et(t).declarations).reduce((s,a)=>{const l=Q(a);return l&&s.push(new ls(l)),s},[]);return new jk(r,i)}compileModuleAndAllComponentsAsync(t){return Promise.resolve(this.compileModuleAndAllComponentsSync(t))}clearCache(){}clearCacheFor(t){}getModuleId(t){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const Mw=new N(""),Gl=new N("");let ph,fh=(()=>{class e{constructor(t,r,o){this._ngZone=t,this.registry=r,this._pendingCount=0,this._isZoneStable=!0,this._didWork=!1,this._callbacks=[],this.taskTrackingZone=null,ph||(function uF(e){ph=e}(o),o.addToWindow(r)),this._watchAngularEvents(),t.run(()=>{this.taskTrackingZone=typeof Zone>"u"?null:Zone.current.get("TaskTrackingZone")})}_watchAngularEvents(){this._ngZone.onUnstable.subscribe({next:()=>{this._didWork=!0,this._isZoneStable=!1}}),this._ngZone.runOutsideAngular(()=>{this._ngZone.onStable.subscribe({next:()=>{ae.assertNotInAngularZone(),queueMicrotask(()=>{this._isZoneStable=!0,this._runCallbacksIfReady()})}})})}increasePendingRequestCount(){return this._pendingCount+=1,this._didWork=!0,this._pendingCount}decreasePendingRequestCount(){if(this._pendingCount-=1,this._pendingCount<0)throw new Error("pending async requests below zero");return this._runCallbacksIfReady(),this._pendingCount}isStable(){return this._isZoneStable&&0===this._pendingCount&&!this._ngZone.hasPendingMacrotasks}_runCallbacksIfReady(){if(this.isStable())queueMicrotask(()=>{for(;0!==this._callbacks.length;){let t=this._callbacks.pop();clearTimeout(t.timeoutId),t.doneCb(this._didWork)}this._didWork=!1});else{let t=this.getPendingTasks();this._callbacks=this._callbacks.filter(r=>!r.updateCb||!r.updateCb(t)||(clearTimeout(r.timeoutId),!1)),this._didWork=!0}}getPendingTasks(){return this.taskTrackingZone?this.taskTrackingZone.macroTasks.map(t=>({source:t.source,creationLocation:t.creationLocation,data:t.data})):[]}addCallback(t,r,o){let i=-1;r&&r>0&&(i=setTimeout(()=>{this._callbacks=this._callbacks.filter(s=>s.timeoutId!==i),t(this._didWork,this.getPendingTasks())},r)),this._callbacks.push({doneCb:t,timeoutId:i,updateCb:o})}whenStable(t,r,o){if(o&&!this.taskTrackingZone)throw new Error('Task tracking zone is required when passing an update callback to whenStable(). Is "zone.js/plugins/task-tracking" loaded?');this.addCallback(t,r,o),this._runCallbacksIfReady()}getPendingRequestCount(){return this._pendingCount}registerApplication(t){this.registry.registerApplication(t,this)}unregisterApplication(t){this.registry.unregisterApplication(t)}findProviders(t,r,o){return[]}static#e=this.\u0275fac=function(r){return new(r||e)(k(ae),k(hh),k(Gl))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),hh=(()=>{class e{constructor(){this._applications=new Map}registerApplication(t,r){this._applications.set(t,r)}unregisterApplication(t){this._applications.delete(t)}unregisterAllApplications(){this._applications.clear()}getTestability(t){return this._applications.get(t)||null}getAllTestabilities(){return Array.from(this._applications.values())}getAllRootElements(){return Array.from(this._applications.keys())}findTestabilityInTree(t,r=!0){return ph?.findTestabilityInTree(this,t,r)??null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"platform"})}return e})(),ar=null;const gh=new N("PlatformDestroyListeners"),mh=new N("appBootstrapListener");function gF(e){try{const{rootComponent:n,appProviders:t,platformProviders:r}=e,o=function pF(e=[]){if(ar)return ar;const n=function xw(e=[],n){return _t.create({name:n,providers:[{provide:hd,useValue:"platform"},{provide:gh,useValue:new Set([()=>ar=null])},...e]})}(e);return ar=n,function Tw(){!function jM(e){hg=e}(()=>{throw new M(600,!1)})}(),function Aw(e){e.get(mv,null)?.forEach(t=>t())}(n),n}(r),i=[CF(),...t||[]],a=new FD({providers:i,parent:o,debugName:"",runEnvironmentInitializers:!1}).injector,l=a.get(ae);return l.run(()=>{a.resolveInjectorInitializers();const c=a.get(Ln,null);let u;l.runOutsideAngular(()=>{u=l.onError.subscribe({next:m=>{c.handleError(m)}})});const d=()=>a.destroy(),g=o.get(gh);return g.add(d),a.onDestroy(()=>{u.unsubscribe(),g.delete(d)}),function Ow(e,n,t){try{const r=t();return Es(r)?r.catch(o=>{throw n.runOutsideAngular(()=>e.handleError(o)),o}):r}catch(r){throw n.runOutsideAngular(()=>e.handleError(r)),r}}(c,l,()=>{const m=a.get(uh);return m.runInitializers(),m.donePromise.then(()=>{!function RC(e){gt(e,"Expected localeId to be defined"),"string"==typeof e&&(NC=e.toLowerCase().replace(/_/g,"-"))}(a.get(Bn,Wo)||Wo);const _=a.get(Qo);return void 0!==n&&_.bootstrap(n),_})})})}catch(n){return Promise.reject(n)}}let Qo=(()=>{class e{constructor(){this._bootstrapListeners=[],this._runningTick=!1,this._destroyed=!1,this._destroyListeners=[],this._views=[],this.internalErrorHandler=A(Fw),this.zoneIsStable=A(e_),this.componentTypes=[],this.components=[],this.isStable=A(Bl).hasPendingTasks.pipe(Ft(t=>t?F(!1):this.zoneIsStable),function U1(e,n=qn){return e=e??B1,$e((t,r)=>{let o,i=!0;t.subscribe(Ve(r,s=>{const a=n(s);(i||!e(o,a))&&(i=!1,o=a,r.next(s))}))})}(),Bg()),this._injector=A(At)}get destroyed(){return this._destroyed}get injector(){return this._injector}bootstrap(t,r){const o=t instanceof hy;if(!this._injector.get(uh).done)throw!o&&function Qn(e){const n=Q(e)||Ge(e)||Je(e);return null!==n&&n.standalone}(t),new M(405,!1);let s;s=o?t:this._injector.get(ul).resolveComponentFactory(t),this.componentTypes.push(s.componentType);const a=function fF(e){return e.isBoundToModule}(s)?void 0:this._injector.get(kr),c=s.create(_t.NULL,[],r||s.selector,a),u=c.location.nativeElement,d=c.injector.get(Mw,null);return d?.registerApplication(u),c.onDestroy(()=>{this.detachView(c.hostView),zl(this.components,c),d?.unregisterApplication(u)}),this._loadComponent(c),c}tick(){if(this._runningTick)throw new M(101,!1);try{this._runningTick=!0;for(let t of this._views)t.detectChanges()}catch(t){this.internalErrorHandler(t)}finally{this._runningTick=!1}}attachView(t){const r=t;this._views.push(r),r.attachToAppRef(this)}detachView(t){const r=t;zl(this._views,r),r.detachFromAppRef()}_loadComponent(t){this.attachView(t.hostView),this.tick(),this.components.push(t);const r=this._injector.get(mh,[]);[...this._bootstrapListeners,...r].forEach(o=>o(t))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(t=>t()),this._views.slice().forEach(t=>t.destroy())}finally{this._destroyed=!0,this._views=[],this._bootstrapListeners=[],this._destroyListeners=[]}}onDestroy(t){return this._destroyListeners.push(t),()=>zl(this._destroyListeners,t)}destroy(){if(this._destroyed)throw new M(406,!1);const t=this._injector;t.destroy&&!t.destroyed&&t.destroy()}get viewCount(){return this._views.length}warnIfDestroyed(){}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function zl(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}const Fw=new N("",{providedIn:"root",factory:()=>A(Ln).handleError.bind(void 0)});function yF(){const e=A(ae),n=A(Ln);return t=>e.runOutsideAngular(()=>n.handleError(t))}let _F=(()=>{class e{constructor(){this.zone=A(ae),this.applicationRef=A(Qo)}initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function Lw(e){return[{provide:ae,useFactory:e},{provide:vo,multi:!0,useFactory:()=>{const n=A(_F,{optional:!0});return()=>n.initialize()}},{provide:Fw,useFactory:yF},{provide:e_,useFactory:t_}]}function CF(e){return ud([[],Lw(()=>new ae(function Rw(e){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:e?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:e?.runCoalescing??!1}}(e)))])}let MF=(()=>{class e{constructor(t){}static#e=this.\u0275fac=function(r){return new(r||e)(k(Qo))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Jo(e){return"boolean"==typeof e?e:null!=e&&"false"!==e}const ye_apiBaseUrl="https://www.palmmedia.de/api/";let Sh=null;function lr(){return Sh}class QF{}const ft=new N("DocumentToken");let Th=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(JF),providedIn:"platform"})}return e})();const XF=new N("Location Initialized");let JF=(()=>{class e extends Th{constructor(){super(),this._doc=A(ft),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return lr().getBaseHref(this._doc)}onPopState(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("popstate",t,!1),()=>r.removeEventListener("popstate",t)}onHashChange(t){const r=lr().getGlobalEventTarget(this._doc,"window");return r.addEventListener("hashchange",t,!1),()=>r.removeEventListener("hashchange",t)}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(t){this._location.pathname=t}pushState(t,r,o){this._history.pushState(t,r,o)}replaceState(t,r,o){this._history.replaceState(t,r,o)}forward(){this._history.forward()}back(){this._history.back()}historyGo(t=0){this._history.go(t)}getState(){return this._history.state}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new e,providedIn:"platform"})}return e})();function Ah(e,n){if(0==e.length)return n;if(0==n.length)return e;let t=0;return e.endsWith("/")&&t++,n.startsWith("/")&&t++,2==t?e+n.substring(1):1==t?e+n:e+"/"+n}function sb(e){const n=e.match(/#|\?|$/),t=n&&n.index||e.length;return e.slice(0,t-("/"===e[t-1]?1:0))+e.slice(t)}function $n(e){return e&&"?"!==e[0]?"?"+e:e}let Lr=(()=>{class e{historyGo(t){throw new Error("Not implemented")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(lb),providedIn:"root"})}return e})();const ab=new N("appBaseHref");let lb=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._removeListenerFns=[],this._baseHref=r??this._platformLocation.getBaseHrefFromDOM()??A(ft).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}prepareExternalUrl(t){return Ah(this._baseHref,t)}path(t=!1){const r=this._platformLocation.pathname+$n(this._platformLocation.search),o=this._platformLocation.hash;return o&&t?`${r}${o}`:r}pushState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){const s=this.prepareExternalUrl(o+$n(i));this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(ab,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),KF=(()=>{class e extends Lr{constructor(t,r){super(),this._platformLocation=t,this._baseHref="",this._removeListenerFns=[],null!=r&&(this._baseHref=r)}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(t){this._removeListenerFns.push(this._platformLocation.onPopState(t),this._platformLocation.onHashChange(t))}getBaseHref(){return this._baseHref}path(t=!1){let r=this._platformLocation.hash;return null==r&&(r="#"),r.length>0?r.substring(1):r}prepareExternalUrl(t){const r=Ah(this._baseHref,t);return r.length>0?"#"+r:r}pushState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.pushState(t,r,s)}replaceState(t,r,o,i){let s=this.prepareExternalUrl(o+$n(i));0==s.length&&(s=this._platformLocation.pathname),this._platformLocation.replaceState(t,r,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(t=0){this._platformLocation.historyGo?.(t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Th),k(ab,8))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),Rs=(()=>{class e{constructor(t){this._subject=new xe,this._urlChangeListeners=[],this._urlChangeSubscription=null,this._locationStrategy=t;const r=this._locationStrategy.getBaseHref();this._basePath=function n2(e){if(new RegExp("^(https?:)?//").test(e)){const[,t]=e.split(/\/\/[^\/]+/);return t}return e}(sb(cb(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(t=!1){return this.normalize(this._locationStrategy.path(t))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(t,r=""){return this.path()==this.normalize(t+$n(r))}normalize(t){return e.stripTrailingSlash(function t2(e,n){if(!e||!n.startsWith(e))return n;const t=n.substring(e.length);return""===t||["/",";","?","#"].includes(t[0])?t:n}(this._basePath,cb(t)))}prepareExternalUrl(t){return t&&"/"!==t[0]&&(t="/"+t),this._locationStrategy.prepareExternalUrl(t)}go(t,r="",o=null){this._locationStrategy.pushState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}replaceState(t,r="",o=null){this._locationStrategy.replaceState(o,"",t,r),this._notifyUrlChangeListeners(this.prepareExternalUrl(t+$n(r)),o)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(t=0){this._locationStrategy.historyGo?.(t)}onUrlChange(t){return this._urlChangeListeners.push(t),this._urlChangeSubscription||(this._urlChangeSubscription=this.subscribe(r=>{this._notifyUrlChangeListeners(r.url,r.state)})),()=>{const r=this._urlChangeListeners.indexOf(t);this._urlChangeListeners.splice(r,1),0===this._urlChangeListeners.length&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(t="",r){this._urlChangeListeners.forEach(o=>o(t,r))}subscribe(t,r,o){return this._subject.subscribe({next:t,error:r,complete:o})}static#e=this.normalizeQueryParams=$n;static#t=this.joinWithSlash=Ah;static#n=this.stripTrailingSlash=sb;static#r=this.\u0275fac=function(r){return new(r||e)(k(Lr))};static#o=this.\u0275prov=O({token:e,factory:()=>function e2(){return new Rs(k(Lr))}(),providedIn:"root"})}return e})();function cb(e){return e.replace(/\/index.html$/,"")}function yb(e,n){n=encodeURIComponent(n);for(const t of e.split(";")){const r=t.indexOf("="),[o,i]=-1==r?[t,""]:[t.slice(0,r),t.slice(r+1)];if(o.trim()===n)return decodeURIComponent(i)}return null}const jh=/\s+/,_b=[];let cc=(()=>{class e{constructor(t,r,o,i){this._iterableDiffers=t,this._keyValueDiffers=r,this._ngEl=o,this._renderer=i,this.initialClasses=_b,this.stateMap=new Map}set klass(t){this.initialClasses=null!=t?t.trim().split(jh):_b}set ngClass(t){this.rawClass="string"==typeof t?t.trim().split(jh):t}ngDoCheck(){for(const r of this.initialClasses)this._updateState(r,!0);const t=this.rawClass;if(Array.isArray(t)||t instanceof Set)for(const r of t)this._updateState(r,!0);else if(null!=t)for(const r of Object.keys(t))this._updateState(r,!!t[r]);this._applyStateDiff()}_updateState(t,r){const o=this.stateMap.get(t);void 0!==o?(o.enabled!==r&&(o.changed=!0,o.enabled=r),o.touched=!0):this.stateMap.set(t,{enabled:r,changed:!0,touched:!0})}_applyStateDiff(){for(const t of this.stateMap){const r=t[0],o=t[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(t,r){(t=t.trim()).length>0&&t.split(jh).forEach(o=>{r?this._renderer.addClass(this._ngEl.nativeElement,o):this._renderer.removeClass(this._ngEl.nativeElement,o)})}static#e=this.\u0275fac=function(r){return new(r||e)(S(fl),S(ns),S(Nt),S(Fn))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngClass",""]],inputs:{klass:["class","klass"],ngClass:"ngClass"},standalone:!0})}return e})();class U2{constructor(n,t,r,o){this.$implicit=n,this.ngForOf=t,this.index=r,this.count=o}get first(){return 0===this.index}get last(){return this.index===this.count-1}get even(){return this.index%2==0}get odd(){return!this.even}}let Hh=(()=>{class e{set ngForOf(t){this._ngForOf=t,this._ngForOfDirty=!0}set ngForTrackBy(t){this._trackByFn=t}get ngForTrackBy(){return this._trackByFn}constructor(t,r,o){this._viewContainer=t,this._template=r,this._differs=o,this._ngForOf=null,this._ngForOfDirty=!0,this._differ=null}set ngForTemplate(t){t&&(this._template=t)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;const t=this._ngForOf;!this._differ&&t&&(this._differ=this._differs.find(t).create(this.ngForTrackBy))}if(this._differ){const t=this._differ.diff(this._ngForOf);t&&this._applyChanges(t)}}_applyChanges(t){const r=this._viewContainer;t.forEachOperation((o,i,s)=>{if(null==o.previousIndex)r.createEmbeddedView(this._template,new U2(o.item,this._ngForOf,-1,-1),null===s?void 0:s);else if(null==s)r.remove(null===i?void 0:i);else if(null!==i){const a=r.get(i);r.move(a,s),Db(a,o)}});for(let o=0,i=r.length;o{Db(r.get(o.currentIndex),o)})}static ngTemplateContextGuard(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un),S(fl))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"},standalone:!0})}return e})();function Db(e,n){e.context.$implicit=n.item}let uc=(()=>{class e{constructor(t,r){this._viewContainer=t,this._context=new B2,this._thenTemplateRef=null,this._elseTemplateRef=null,this._thenViewRef=null,this._elseViewRef=null,this._thenTemplateRef=r}set ngIf(t){this._context.$implicit=this._context.ngIf=t,this._updateView()}set ngIfThen(t){wb("ngIfThen",t),this._thenTemplateRef=t,this._thenViewRef=null,this._updateView()}set ngIfElse(t){wb("ngIfElse",t),this._elseTemplateRef=t,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(t,r){return!0}static#e=this.\u0275fac=function(r){return new(r||e)(S(en),S(Un))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"},standalone:!0})}return e})();class B2{constructor(){this.$implicit=null,this.ngIf=null}}function wb(e,n){if(n&&!n.createEmbeddedView)throw new Error(`${e} must be a TemplateRef, but received '${je(n)}'.`)}let pL=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Mb(e){return"server"===e}let yL=(()=>{class e{static#e=this.\u0275prov=O({token:e,providedIn:"root",factory:()=>new _L(k(ft),window)})}return e})();class _L{constructor(n,t){this.document=n,this.window=t,this.offset=()=>[0,0]}setOffset(n){this.offset=Array.isArray(n)?()=>n:n}getScrollPosition(){return this.supportsScrolling()?[this.window.pageXOffset,this.window.pageYOffset]:[0,0]}scrollToPosition(n){this.supportsScrolling()&&this.window.scrollTo(n[0],n[1])}scrollToAnchor(n){if(!this.supportsScrolling())return;const t=function CL(e,n){const t=e.getElementById(n)||e.getElementsByName(n)[0];if(t)return t;if("function"==typeof e.createTreeWalker&&e.body&&"function"==typeof e.body.attachShadow){const r=e.createTreeWalker(e.body,NodeFilter.SHOW_ELEMENT);let o=r.currentNode;for(;o;){const i=o.shadowRoot;if(i){const s=i.getElementById(n)||i.querySelector(`[name="${n}"]`);if(s)return s}o=r.nextNode()}}return null}(this.document,n);t&&(this.scrollToElement(t),t.focus())}setHistoryScrollRestoration(n){this.supportsScrolling()&&(this.window.history.scrollRestoration=n)}scrollToElement(n){const t=n.getBoundingClientRect(),r=t.left+this.window.pageXOffset,o=t.top+this.window.pageYOffset,i=this.offset();this.window.scrollTo(r-i[0],o-i[1])}supportsScrolling(){try{return!!this.window&&!!this.window.scrollTo&&"pageXOffset"in this.window}catch{return!1}}}class Sb{}const{isArray:GL}=Array,{getPrototypeOf:zL,prototype:qL,keys:WL}=Object;function Nb(e){if(1===e.length){const n=e[0];if(GL(n))return{args:n,keys:null};if(function ZL(e){return e&&"object"==typeof e&&zL(e)===qL}(n)){const t=WL(n);return{args:t.map(r=>n[r]),keys:t}}}return{args:e,keys:null}}const{isArray:YL}=Array;function Rb(e){return K(n=>function QL(e,n){return YL(n)?e(...n):e(n)}(e,n))}function Ob(e,n){return e.reduce((t,r,o)=>(t[r]=n[o],t),{})}function Wh(...e){const n=bi(e),t=Vg(e),{args:r,keys:o}=Nb(e);if(0===r.length)return Oe([],n);const i=new Te(function XL(e,n,t=qn){return r=>{Pb(n,()=>{const{length:o}=e,i=new Array(o);let s=o,a=o;for(let l=0;l{const c=Oe(e[l],n);let u=!1;c.subscribe(Ve(r,d=>{i[l]=d,u||(u=!0,a--),a||r.next(t(i.slice()))},()=>{--s||r.complete()}))},r)},r)}}(r,n,o?s=>Ob(o,s):qn));return t?i.pipe(Rb(t)):i}function Pb(e,n,t){e?An(t,e,n):n()}const hc=iu(e=>function(){e(this),this.name="EmptyError",this.message="no elements in sequence"});function Zh(...e){return function JL(){return Yr(1)}()(Oe(e,bi(e)))}function kb(e){return new Te(n=>{qt(e()).subscribe(n)})}function pc(e,n){const t=Ce(e)?e:()=>e,r=o=>o.error(t());return new Te(n?o=>n.schedule(r,0,o):r)}function Yh(){return $e((e,n)=>{let t=null;e._refCount++;const r=Ve(n,void 0,void 0,void 0,()=>{if(!e||e._refCount<=0||0<--e._refCount)return void(t=null);const o=e._connection,i=t;t=null,o&&(!i||o===i)&&o.unsubscribe(),n.unsubscribe()});e.subscribe(r),r.closed||(t=e.connect())})}class Fb extends Te{constructor(n,t){super(),this.source=n,this.subjectFactory=t,this._subject=null,this._refCount=0,this._connection=null,bg(n)&&(this.lift=n.lift)}_subscribe(n){return this.getSubject().subscribe(n)}getSubject(){const n=this._subject;return(!n||n.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;const{_connection:n}=this;this._subject=this._connection=null,n?.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new Et;const t=this.getSubject();n.add(this.source.subscribe(Ve(t,void 0,()=>{this._teardown(),t.complete()},r=>{this._teardown(),t.error(r)},()=>this._teardown()))),n.closed&&(this._connection=null,n=Et.EMPTY)}return n}refCount(){return Yh()(this)}}function rn(e,n){return $e((t,r)=>{let o=0;t.subscribe(Ve(r,i=>e.call(n,i,o++)&&r.next(i)))})}function gc(e){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>{r||t.next(e),t.complete()}))})}function Lb(e=eV){return $e((n,t)=>{let r=!1;n.subscribe(Ve(t,o=>{r=!0,t.next(o)},()=>r?t.complete():t.error(e())))})}function eV(){return new hc}function Vr(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,_r(1),t?gc(n):Lb(()=>new hc))}function ei(e,n){return Ce(n)?Xe(e,n,1):Xe(e,1)}function rt(e,n,t){const r=Ce(e)||n||t?{next:e,error:n,complete:t}:e;return r?$e((o,i)=>{var s;null===(s=r.subscribe)||void 0===s||s.call(r);let a=!0;o.subscribe(Ve(i,l=>{var c;null===(c=r.next)||void 0===c||c.call(r,l),i.next(l)},()=>{var l;a=!1,null===(l=r.complete)||void 0===l||l.call(r),i.complete()},l=>{var c;a=!1,null===(c=r.error)||void 0===c||c.call(r,l),i.error(l)},()=>{var l,c;a&&(null===(l=r.unsubscribe)||void 0===l||l.call(r)),null===(c=r.finalize)||void 0===c||c.call(r)}))}):qn}function ti(e){return $e((n,t)=>{let i,r=null,o=!1;r=n.subscribe(Ve(t,void 0,void 0,s=>{i=qt(e(s,ti(e)(n))),r?(r.unsubscribe(),r=null,i.subscribe(t)):o=!0})),o&&(r.unsubscribe(),r=null,i.subscribe(t))})}function Qh(e){return e<=0?()=>an:$e((n,t)=>{let r=[];n.subscribe(Ve(t,o=>{r.push(o),e{for(const o of r)t.next(o);t.complete()},void 0,()=>{r=null}))})}function Fs(e){return $e((n,t)=>{try{n.subscribe(t)}finally{t.add(e)}})}class sV extends QF{constructor(){super(...arguments),this.supportsDOMEvents=!0}}class Xh extends sV{static makeCurrent(){!function YF(e){Sh||(Sh=e)}(new Xh)}onAndCancel(n,t,r){return n.addEventListener(t,r),()=>{n.removeEventListener(t,r)}}dispatchEvent(n,t){n.dispatchEvent(t)}remove(n){n.parentNode&&n.parentNode.removeChild(n)}createElement(n,t){return(t=t||this.getDefaultDocument()).createElement(n)}createHtmlDocument(){return document.implementation.createHTMLDocument("fakeTitle")}getDefaultDocument(){return document}isElementNode(n){return n.nodeType===Node.ELEMENT_NODE}isShadowRoot(n){return n instanceof DocumentFragment}getGlobalEventTarget(n,t){return"window"===t?window:"document"===t?n:"body"===t?n.body:null}getBaseHref(n){const t=function aV(){return Ls=Ls||document.querySelector("base"),Ls?Ls.getAttribute("href"):null}();return null==t?null:function lV(e){mc=mc||document.createElement("a"),mc.setAttribute("href",e);const n=mc.pathname;return"/"===n.charAt(0)?n:`/${n}`}(t)}resetBaseElement(){Ls=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return yb(document.cookie,n)}}let mc,Ls=null,uV=(()=>{class e{build(){return new XMLHttpRequest}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const Jh=new N("EventManagerPlugins");let Vb=(()=>{class e{constructor(t,r){this._zone=r,this._eventNameToPlugin=new Map,t.forEach(o=>{o.manager=this}),this._plugins=t.slice().reverse()}addEventListener(t,r,o){return this._findPluginFor(r).addEventListener(t,r,o)}getZone(){return this._zone}_findPluginFor(t){let r=this._eventNameToPlugin.get(t);if(r)return r;if(r=this._plugins.find(i=>i.supports(t)),!r)throw new M(5101,!1);return this._eventNameToPlugin.set(t,r),r}static#e=this.\u0275fac=function(r){return new(r||e)(k(Jh),k(ae))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class jb{constructor(n){this._doc=n}}const Kh="ng-app-id";let Hb=(()=>{class e{constructor(t,r,o,i={}){this.doc=t,this.appId=r,this.nonce=o,this.platformId=i,this.styleRef=new Map,this.hostNodes=new Set,this.styleNodesInDOM=this.collectServerRenderedStyles(),this.platformIsServer=Mb(i),this.resetHostNodes()}addStyles(t){for(const r of t)1===this.changeUsageCount(r,1)&&this.onStyleAdded(r)}removeStyles(t){for(const r of t)this.changeUsageCount(r,-1)<=0&&this.onStyleRemoved(r)}ngOnDestroy(){const t=this.styleNodesInDOM;t&&(t.forEach(r=>r.remove()),t.clear());for(const r of this.getAllStyles())this.onStyleRemoved(r);this.resetHostNodes()}addHost(t){this.hostNodes.add(t);for(const r of this.getAllStyles())this.addStyleToHost(t,r)}removeHost(t){this.hostNodes.delete(t)}getAllStyles(){return this.styleRef.keys()}onStyleAdded(t){for(const r of this.hostNodes)this.addStyleToHost(r,t)}onStyleRemoved(t){const r=this.styleRef;r.get(t)?.elements?.forEach(o=>o.remove()),r.delete(t)}collectServerRenderedStyles(){const t=this.doc.head?.querySelectorAll(`style[${Kh}="${this.appId}"]`);if(t?.length){const r=new Map;return t.forEach(o=>{null!=o.textContent&&r.set(o.textContent,o)}),r}return null}changeUsageCount(t,r){const o=this.styleRef;if(o.has(t)){const i=o.get(t);return i.usage+=r,i.usage}return o.set(t,{usage:r,elements:[]}),r}getStyleElement(t,r){const o=this.styleNodesInDOM,i=o?.get(r);if(i?.parentNode===t)return o.delete(r),i.removeAttribute(Kh),i;{const s=this.doc.createElement("style");return this.nonce&&s.setAttribute("nonce",this.nonce),s.textContent=r,this.platformIsServer&&s.setAttribute(Kh,this.appId),t.appendChild(s),s}}addStyleToHost(t,r){const o=this.getStyleElement(t,r),i=this.styleRef,s=i.get(r)?.elements;s?s.push(o):i.set(r,{elements:[o],usage:1})}resetHostNodes(){const t=this.hostNodes;t.clear(),t.add(this.doc.head)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(Ga),k(vv,8),k(Sr))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const ep={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/"},tp=/%COMP%/g,pV=new N("RemoveStylesOnCompDestroy",{providedIn:"root",factory:()=>!0});function Bb(e,n){return n.map(t=>t.replace(tp,e))}let $b=(()=>{class e{constructor(t,r,o,i,s,a,l,c=null){this.eventManager=t,this.sharedStylesHost=r,this.appId=o,this.removeStylesOnCompDestroy=i,this.doc=s,this.platformId=a,this.ngZone=l,this.nonce=c,this.rendererByCompId=new Map,this.platformIsServer=Mb(a),this.defaultRenderer=new np(t,s,l,this.platformIsServer)}createRenderer(t,r){if(!t||!r)return this.defaultRenderer;this.platformIsServer&&r.encapsulation===Wt.ShadowDom&&(r={...r,encapsulation:Wt.Emulated});const o=this.getOrCreateRenderer(t,r);return o instanceof zb?o.applyToHost(t):o instanceof rp&&o.applyStyles(),o}getOrCreateRenderer(t,r){const o=this.rendererByCompId;let i=o.get(r.id);if(!i){const s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,d=this.platformIsServer;switch(r.encapsulation){case Wt.Emulated:i=new zb(l,c,r,this.appId,u,s,a,d);break;case Wt.ShadowDom:return new yV(l,c,t,r,s,a,this.nonce,d);default:i=new rp(l,c,r,u,s,a,d)}o.set(r.id,i)}return i}ngOnDestroy(){this.rendererByCompId.clear()}static#e=this.\u0275fac=function(r){return new(r||e)(k(Vb),k(Hb),k(Ga),k(pV),k(ft),k(Sr),k(ae),k(vv))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();class np{constructor(n,t,r,o){this.eventManager=n,this.doc=t,this.ngZone=r,this.platformIsServer=o,this.data=Object.create(null),this.throwOnSyntheticProps=!0,this.destroyNode=null}destroy(){}createElement(n,t){return t?this.doc.createElementNS(ep[t]||t,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,t){(Gb(n)?n.content:n).appendChild(t)}insertBefore(n,t,r){n&&(Gb(n)?n.content:n).insertBefore(t,r)}removeChild(n,t){n&&n.removeChild(t)}selectRootElement(n,t){let r="string"==typeof n?this.doc.querySelector(n):n;if(!r)throw new M(-5104,!1);return t||(r.textContent=""),r}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,t,r,o){if(o){t=o+":"+t;const i=ep[o];i?n.setAttributeNS(i,t,r):n.setAttribute(t,r)}else n.setAttribute(t,r)}removeAttribute(n,t,r){if(r){const o=ep[r];o?n.removeAttributeNS(o,t):n.removeAttribute(`${r}:${t}`)}else n.removeAttribute(t)}addClass(n,t){n.classList.add(t)}removeClass(n,t){n.classList.remove(t)}setStyle(n,t,r,o){o&(rr.DashCase|rr.Important)?n.style.setProperty(t,r,o&rr.Important?"important":""):n.style[t]=r}removeStyle(n,t,r){r&rr.DashCase?n.style.removeProperty(t):n.style[t]=""}setProperty(n,t,r){n[t]=r}setValue(n,t){n.nodeValue=t}listen(n,t,r){if("string"==typeof n&&!(n=lr().getGlobalEventTarget(this.doc,n)))throw new Error(`Unsupported event target ${n} for event ${t}`);return this.eventManager.addEventListener(n,t,this.decoratePreventDefault(r))}decoratePreventDefault(n){return t=>{if("__ngUnwrap__"===t)return n;!1===(this.platformIsServer?this.ngZone.runGuarded(()=>n(t)):n(t))&&t.preventDefault()}}}function Gb(e){return"TEMPLATE"===e.tagName&&void 0!==e.content}class yV extends np{constructor(n,t,r,o,i,s,a,l){super(n,i,s,l),this.sharedStylesHost=t,this.hostEl=r,this.shadowRoot=r.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);const c=Bb(o.id,o.styles);for(const u of c){const d=document.createElement("style");a&&d.setAttribute("nonce",a),d.textContent=u,this.shadowRoot.appendChild(d)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,t){return super.appendChild(this.nodeOrShadowRoot(n),t)}insertBefore(n,t,r){return super.insertBefore(this.nodeOrShadowRoot(n),t,r)}removeChild(n,t){return super.removeChild(this.nodeOrShadowRoot(n),t)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}}class rp extends np{constructor(n,t,r,o,i,s,a,l){super(n,i,s,a),this.sharedStylesHost=t,this.removeStylesOnCompDestroy=o,this.styles=l?Bb(l,r.styles):r.styles}applyStyles(){this.sharedStylesHost.addStyles(this.styles)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles)}}class zb extends rp{constructor(n,t,r,o,i,s,a,l){const c=o+"-"+r.id;super(n,t,r,i,s,a,l,c),this.contentAttr=function gV(e){return"_ngcontent-%COMP%".replace(tp,e)}(c),this.hostAttr=function mV(e){return"_nghost-%COMP%".replace(tp,e)}(c)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,t){const r=super.createElement(n,t);return super.setAttribute(r,this.contentAttr,""),r}}let _V=(()=>{class e extends jb{constructor(t){super(t)}supports(t){return!0}addEventListener(t,r,o){return t.addEventListener(r,o,!1),()=>this.removeEventListener(t,r,o)}removeEventListener(t,r,o){return t.removeEventListener(r,o)}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const qb=["alt","control","meta","shift"],CV={"\b":"Backspace","\t":"Tab","\x7f":"Delete","\x1b":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},DV={alt:e=>e.altKey,control:e=>e.ctrlKey,meta:e=>e.metaKey,shift:e=>e.shiftKey};let wV=(()=>{class e extends jb{constructor(t){super(t)}supports(t){return null!=e.parseEventName(t)}addEventListener(t,r,o){const i=e.parseEventName(r),s=e.eventCallback(i.fullKey,o,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>lr().onAndCancel(t,i.domEventName,s))}static parseEventName(t){const r=t.toLowerCase().split("."),o=r.shift();if(0===r.length||"keydown"!==o&&"keyup"!==o)return null;const i=e._normalizeKey(r.pop());let s="",a=r.indexOf("code");if(a>-1&&(r.splice(a,1),s="code."),qb.forEach(c=>{const u=r.indexOf(c);u>-1&&(r.splice(u,1),s+=c+".")}),s+=i,0!=r.length||0===i.length)return null;const l={};return l.domEventName=o,l.fullKey=s,l}static matchEventFullKeyCode(t,r){let o=CV[t.key]||t.key,i="";return r.indexOf("code.")>-1&&(o=t.code,i="code."),!(null==o||!o)&&(o=o.toLowerCase()," "===o?o="space":"."===o&&(o="dot"),qb.forEach(s=>{s!==o&&(0,DV[s])(t)&&(i+=s+".")}),i+=o,i===r)}static eventCallback(t,r,o){return i=>{e.matchEventFullKeyCode(i,t)&&o.runGuarded(()=>r(i))}}static _normalizeKey(t){return"esc"===t?"escape":t}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Wb(e){return{appProviders:[...Yb,...e?.providers??[]],platformProviders:SV}}const SV=[{provide:Sr,useValue:"browser"},{provide:mv,useValue:function EV(){Xh.makeCurrent()},multi:!0},{provide:ft,useFactory:function MV(){return function XS(e){_d=e}(document),document},deps:[]}],TV=new N(""),Zb=[{provide:Gl,useClass:class cV{addToWindow(n){pe.getAngularTestability=(r,o=!0)=>{const i=n.findTestabilityInTree(r,o);if(null==i)throw new M(5103,!1);return i},pe.getAllAngularTestabilities=()=>n.getAllTestabilities(),pe.getAllAngularRootElements=()=>n.getAllRootElements(),pe.frameworkStabilizers||(pe.frameworkStabilizers=[]),pe.frameworkStabilizers.push(r=>{const o=pe.getAllAngularTestabilities();let i=o.length,s=!1;const a=function(l){s=s||l,i--,0==i&&r(s)};o.forEach(l=>{l.whenStable(a)})})}findTestabilityInTree(n,t,r){return null==t?null:n.getTestability(t)??(r?lr().isShadowRoot(t)?this.findTestabilityInTree(n,t.host,!0):this.findTestabilityInTree(n,t.parentElement,!0):null)}},deps:[]},{provide:Mw,useClass:fh,deps:[ae,hh,Gl]},{provide:fh,useClass:fh,deps:[ae,hh,Gl]}],Yb=[{provide:hd,useValue:"root"},{provide:Ln,useFactory:function IV(){return new Ln},deps:[]},{provide:Jh,useClass:_V,multi:!0,deps:[ft,ae,Sr]},{provide:Jh,useClass:wV,multi:!0,deps:[ft]},$b,Hb,Vb,{provide:gy,useExisting:$b},{provide:Sb,useClass:uV,deps:[]},[]];let AV=(()=>{class e{constructor(t){}static withServerTransition(t){return{ngModule:e,providers:[{provide:Ga,useValue:t.appId}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(TV,12))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({providers:[...Yb,...Zb],imports:[pL,MF]})}return e})(),Qb=(()=>{class e{constructor(t){this._doc=t}getTitle(){return this._doc.title}setTitle(t){this._doc.title=t||""}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft))};static#t=this.\u0275prov=O({token:e,factory:function(r){let o=null;return o=r?new r:function NV(){return new Qb(k(ft))}(),o},providedIn:"root"})}return e})();typeof window<"u"&&window;const Y="primary",Vs=Symbol("RouteTitle");class FV{constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t[0]:t}return null}getAll(n){if(this.has(n)){const t=this.params[n];return Array.isArray(t)?t:[t]}return[]}get keys(){return Object.keys(this.params)}}function ni(e){return new FV(e)}function LV(e,n,t){const r=t.path.split("/");if(r.length>e.length||"full"===t.pathMatch&&(n.hasChildren()||r.lengthr[i]===o)}return e===n}function tE(e){return e.length>0?e[e.length-1]:null}function ur(e){return function $L(e){return!!e&&(e instanceof Te||Ce(e.lift)&&Ce(e.subscribe))}(e)?e:Es(e)?Oe(Promise.resolve(e)):F(e)}const jV={exact:function oE(e,n,t){if(!jr(e.segments,n.segments)||!vc(e.segments,n.segments,t)||e.numberOfChildren!==n.numberOfChildren)return!1;for(const r in n.children)if(!e.children[r]||!oE(e.children[r],n.children[r],t))return!1;return!0},subset:iE},nE={exact:function HV(e,n){return wn(e,n)},subset:function UV(e,n){return Object.keys(n).length<=Object.keys(e).length&&Object.keys(n).every(t=>eE(e[t],n[t]))},ignored:()=>!0};function rE(e,n,t){return jV[t.paths](e.root,n.root,t.matrixParams)&&nE[t.queryParams](e.queryParams,n.queryParams)&&!("exact"===t.fragment&&e.fragment!==n.fragment)}function iE(e,n,t){return sE(e,n,n.segments,t)}function sE(e,n,t,r){if(e.segments.length>t.length){const o=e.segments.slice(0,t.length);return!(!jr(o,t)||n.hasChildren()||!vc(o,t,r))}if(e.segments.length===t.length){if(!jr(e.segments,t)||!vc(e.segments,t,r))return!1;for(const o in n.children)if(!e.children[o]||!iE(e.children[o],n.children[o],r))return!1;return!0}{const o=t.slice(0,e.segments.length),i=t.slice(e.segments.length);return!!(jr(e.segments,o)&&vc(e.segments,o,r)&&e.children[Y])&&sE(e.children[Y],n,i,r)}}function vc(e,n,t){return n.every((r,o)=>nE[t](e[o].parameters,r.parameters))}class ri{constructor(n=new de([],{}),t={},r=null){this.root=n,this.queryParams=t,this.fragment=r}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ni(this.queryParams)),this._queryParamMap}toString(){return GV.serialize(this)}}class de{constructor(n,t){this.segments=n,this.children=t,this.parent=null,Object.values(t).forEach(r=>r.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return yc(this)}}class js{constructor(n,t){this.path=n,this.parameters=t}get parameterMap(){return this._parameterMap||(this._parameterMap=ni(this.parameters)),this._parameterMap}toString(){return cE(this)}}function jr(e,n){return e.length===n.length&&e.every((t,r)=>t.path===n[r].path)}let oi=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>new sp,providedIn:"root"})}return e})();class sp{parse(n){const t=new t3(n);return new ri(t.parseRootSegment(),t.parseQueryParams(),t.parseFragment())}serialize(n){const t=`/${Hs(n.root,!0)}`,r=function WV(e){const n=Object.keys(e).map(t=>{const r=e[t];return Array.isArray(r)?r.map(o=>`${_c(t)}=${_c(o)}`).join("&"):`${_c(t)}=${_c(r)}`}).filter(t=>!!t);return n.length?`?${n.join("&")}`:""}(n.queryParams);return`${t}${r}${"string"==typeof n.fragment?`#${function zV(e){return encodeURI(e)}(n.fragment)}`:""}`}}const GV=new sp;function yc(e){return e.segments.map(n=>cE(n)).join("/")}function Hs(e,n){if(!e.hasChildren())return yc(e);if(n){const t=e.children[Y]?Hs(e.children[Y],!1):"",r=[];return Object.entries(e.children).forEach(([o,i])=>{o!==Y&&r.push(`${o}:${Hs(i,!1)}`)}),r.length>0?`${t}(${r.join("//")})`:t}{const t=function $V(e,n){let t=[];return Object.entries(e.children).forEach(([r,o])=>{r===Y&&(t=t.concat(n(o,r)))}),Object.entries(e.children).forEach(([r,o])=>{r!==Y&&(t=t.concat(n(o,r)))}),t}(e,(r,o)=>o===Y?[Hs(e.children[Y],!1)]:[`${o}:${Hs(r,!1)}`]);return 1===Object.keys(e.children).length&&null!=e.children[Y]?`${yc(e)}/${t[0]}`:`${yc(e)}/(${t.join("//")})`}}function aE(e){return encodeURIComponent(e).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function _c(e){return aE(e).replace(/%3B/gi,";")}function ap(e){return aE(e).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Cc(e){return decodeURIComponent(e)}function lE(e){return Cc(e.replace(/\+/g,"%20"))}function cE(e){return`${ap(e.path)}${function qV(e){return Object.keys(e).map(n=>`;${ap(n)}=${ap(e[n])}`).join("")}(e.parameters)}`}const ZV=/^[^\/()?;#]+/;function lp(e){const n=e.match(ZV);return n?n[0]:""}const YV=/^[^\/()?;=#]+/,XV=/^[^=?&#]+/,KV=/^[^&#]+/;class t3{constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),""===this.remaining||this.peekStartsWith("?")||this.peekStartsWith("#")?new de([],{}):new de([],this.parseChildren())}parseQueryParams(){const n={};if(this.consumeOptional("?"))do{this.parseQueryParam(n)}while(this.consumeOptional("&"));return n}parseFragment(){return this.consumeOptional("#")?decodeURIComponent(this.remaining):null}parseChildren(){if(""===this.remaining)return{};this.consumeOptional("/");const n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());let t={};this.peekStartsWith("/(")&&(this.capture("/"),t=this.parseParens(!0));let r={};return this.peekStartsWith("(")&&(r=this.parseParens(!1)),(n.length>0||Object.keys(t).length>0)&&(r[Y]=new de(n,t)),r}parseSegment(){const n=lp(this.remaining);if(""===n&&this.peekStartsWith(";"))throw new M(4009,!1);return this.capture(n),new js(Cc(n),this.parseMatrixParams())}parseMatrixParams(){const n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){const t=function QV(e){const n=e.match(YV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const o=lp(this.remaining);o&&(r=o,this.capture(r))}n[Cc(t)]=Cc(r)}parseQueryParam(n){const t=function JV(e){const n=e.match(XV);return n?n[0]:""}(this.remaining);if(!t)return;this.capture(t);let r="";if(this.consumeOptional("=")){const s=function e3(e){const n=e.match(KV);return n?n[0]:""}(this.remaining);s&&(r=s,this.capture(r))}const o=lE(t),i=lE(r);if(n.hasOwnProperty(o)){let s=n[o];Array.isArray(s)||(s=[s],n[o]=s),s.push(i)}else n[o]=i}parseParens(n){const t={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){const r=lp(this.remaining),o=this.remaining[r.length];if("/"!==o&&")"!==o&&";"!==o)throw new M(4010,!1);let i;r.indexOf(":")>-1?(i=r.slice(0,r.indexOf(":")),this.capture(i),this.capture(":")):n&&(i=Y);const s=this.parseChildren();t[i]=1===Object.keys(s).length?s[Y]:new de([],s),this.consumeOptional("//")}return t}peekStartsWith(n){return this.remaining.startsWith(n)}consumeOptional(n){return!!this.peekStartsWith(n)&&(this.remaining=this.remaining.substring(n.length),!0)}capture(n){if(!this.consumeOptional(n))throw new M(4011,!1)}}function uE(e){return e.segments.length>0?new de([],{[Y]:e}):e}function dE(e){const n={};for(const r of Object.keys(e.children)){const i=dE(e.children[r]);if(r===Y&&0===i.segments.length&&i.hasChildren())for(const[s,a]of Object.entries(i.children))n[s]=a;else(i.segments.length>0||i.hasChildren())&&(n[r]=i)}return function n3(e){if(1===e.numberOfChildren&&e.children[Y]){const n=e.children[Y];return new de(e.segments.concat(n.segments),n.children)}return e}(new de(e.segments,n))}function Hr(e){return e instanceof ri}function fE(e){let n;const o=uE(function t(i){const s={};for(const l of i.children){const c=t(l);s[l.outlet]=c}const a=new de(i.url,s);return i===e&&(n=a),a}(e.root));return n??o}function hE(e,n,t,r){let o=e;for(;o.parent;)o=o.parent;if(0===n.length)return cp(o,o,o,t,r);const i=function o3(e){if("string"==typeof e[0]&&1===e.length&&"/"===e[0])return new gE(!0,0,e);let n=0,t=!1;const r=e.reduce((o,i,s)=>{if("object"==typeof i&&null!=i){if(i.outlets){const a={};return Object.entries(i.outlets).forEach(([l,c])=>{a[l]="string"==typeof c?c.split("/"):c}),[...o,{outlets:a}]}if(i.segmentPath)return[...o,i.segmentPath]}return"string"!=typeof i?[...o,i]:0===s?(i.split("/").forEach((a,l)=>{0==l&&"."===a||(0==l&&""===a?t=!0:".."===a?n++:""!=a&&o.push(a))}),o):[...o,i]},[]);return new gE(t,n,r)}(n);if(i.toRoot())return cp(o,o,new de([],{}),t,r);const s=function i3(e,n,t){if(e.isAbsolute)return new wc(n,!0,0);if(!t)return new wc(n,!1,NaN);if(null===t.parent)return new wc(t,!0,0);const r=Dc(e.commands[0])?0:1;return function s3(e,n,t){let r=e,o=n,i=t;for(;i>o;){if(i-=o,r=r.parent,!r)throw new M(4005,!1);o=r.segments.length}return new wc(r,!1,o-i)}(t,t.segments.length-1+r,e.numberOfDoubleDots)}(i,o,e),a=s.processChildren?Bs(s.segmentGroup,s.index,i.commands):mE(s.segmentGroup,s.index,i.commands);return cp(o,s.segmentGroup,a,t,r)}function Dc(e){return"object"==typeof e&&null!=e&&!e.outlets&&!e.segmentPath}function Us(e){return"object"==typeof e&&null!=e&&e.outlets}function cp(e,n,t,r,o){let s,i={};r&&Object.entries(r).forEach(([l,c])=>{i[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`}),s=e===n?t:pE(e,n,t);const a=uE(dE(s));return new ri(a,i,o)}function pE(e,n,t){const r={};return Object.entries(e.children).forEach(([o,i])=>{r[o]=i===n?t:pE(i,n,t)}),new de(e.segments,r)}class gE{constructor(n,t,r){if(this.isAbsolute=n,this.numberOfDoubleDots=t,this.commands=r,n&&r.length>0&&Dc(r[0]))throw new M(4003,!1);const o=r.find(Us);if(o&&o!==tE(r))throw new M(4004,!1)}toRoot(){return this.isAbsolute&&1===this.commands.length&&"/"==this.commands[0]}}class wc{constructor(n,t,r){this.segmentGroup=n,this.processChildren=t,this.index=r}}function mE(e,n,t){if(e||(e=new de([],{})),0===e.segments.length&&e.hasChildren())return Bs(e,n,t);const r=function l3(e,n,t){let r=0,o=n;const i={match:!1,pathIndex:0,commandIndex:0};for(;o=t.length)return i;const s=e.segments[o],a=t[r];if(Us(a))break;const l=`${a}`,c=r0&&void 0===l)break;if(l&&c&&"object"==typeof c&&void 0===c.outlets){if(!yE(l,c,s))return i;r+=2}else{if(!yE(l,{},s))return i;r++}o++}return{match:!0,pathIndex:o,commandIndex:r}}(e,n,t),o=t.slice(r.commandIndex);if(r.match&&r.pathIndexi!==Y)&&e.children[Y]&&1===e.numberOfChildren&&0===e.children[Y].segments.length){const i=Bs(e.children[Y],n,t);return new de(e.segments,i.children)}return Object.entries(r).forEach(([i,s])=>{"string"==typeof s&&(s=[s]),null!==s&&(o[i]=mE(e.children[i],n,s))}),Object.entries(e.children).forEach(([i,s])=>{void 0===r[i]&&(o[i]=s)}),new de(e.segments,o)}}function up(e,n,t){const r=e.segments.slice(0,n);let o=0;for(;o{"string"==typeof r&&(r=[r]),null!==r&&(n[t]=up(new de([],{}),0,r))}),n}function vE(e){const n={};return Object.entries(e).forEach(([t,r])=>n[t]=`${r}`),n}function yE(e,n,t){return e==t.path&&wn(n,t.parameters)}const $s="imperative";class bn{constructor(n,t){this.id=n,this.url=t}}class bc extends bn{constructor(n,t,r="imperative",o=null){super(n,t),this.type=0,this.navigationTrigger=r,this.restoredState=o}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}}class En extends bn{constructor(n,t,r){super(n,t),this.urlAfterRedirects=r,this.type=1}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}}class ii extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=2}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}}class si extends bn{constructor(n,t,r,o){super(n,t),this.reason=r,this.code=o,this.type=16}}class Ec extends bn{constructor(n,t,r,o){super(n,t),this.error=r,this.target=o,this.type=3}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}}class _E extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=4}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class u3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=7}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class d3 extends bn{constructor(n,t,r,o,i){super(n,t),this.urlAfterRedirects=r,this.state=o,this.shouldActivate=i,this.type=8}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}}class f3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=5}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class h3 extends bn{constructor(n,t,r,o){super(n,t),this.urlAfterRedirects=r,this.state=o,this.type=6}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}}class p3{constructor(n){this.route=n,this.type=9}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}}class g3{constructor(n){this.route=n,this.type=10}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}}class m3{constructor(n){this.snapshot=n,this.type=11}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class v3{constructor(n){this.snapshot=n,this.type=12}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class y3{constructor(n){this.snapshot=n,this.type=13}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class _3{constructor(n){this.snapshot=n,this.type=14}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}}class CE{constructor(n,t,r){this.routerEvent=n,this.position=t,this.anchor=r,this.type=15}toString(){return`Scroll(anchor: '${this.anchor}', position: '${this.position?`${this.position[0]}, ${this.position[1]}`:null}')`}}class dp{}class fp{constructor(n){this.url=n}}class C3{constructor(){this.outlet=null,this.route=null,this.injector=null,this.children=new Gs,this.attachRef=null}}let Gs=(()=>{class e{constructor(){this.contexts=new Map}onChildOutletCreated(t,r){const o=this.getOrCreateContext(t);o.outlet=r,this.contexts.set(t,o)}onChildOutletDestroyed(t){const r=this.getContext(t);r&&(r.outlet=null,r.attachRef=null)}onOutletDeactivated(){const t=this.contexts;return this.contexts=new Map,t}onOutletReAttached(t){this.contexts=t}getOrCreateContext(t){let r=this.getContext(t);return r||(r=new C3,this.contexts.set(t,r)),r}getContext(t){return this.contexts.get(t)||null}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();class DE{constructor(n){this._root=n}get root(){return this._root.value}parent(n){const t=this.pathFromRoot(n);return t.length>1?t[t.length-2]:null}children(n){const t=hp(n,this._root);return t?t.children.map(r=>r.value):[]}firstChild(n){const t=hp(n,this._root);return t&&t.children.length>0?t.children[0].value:null}siblings(n){const t=pp(n,this._root);return t.length<2?[]:t[t.length-2].children.map(o=>o.value).filter(o=>o!==n)}pathFromRoot(n){return pp(n,this._root).map(t=>t.value)}}function hp(e,n){if(e===n.value)return n;for(const t of n.children){const r=hp(e,t);if(r)return r}return null}function pp(e,n){if(e===n.value)return[n];for(const t of n.children){const r=pp(e,t);if(r.length)return r.unshift(n),r}return[]}class on{constructor(n,t){this.value=n,this.children=t}toString(){return`TreeNode(${this.value})`}}function ai(e){const n={};return e&&e.children.forEach(t=>n[t.value.outlet]=t),n}class wE extends DE{constructor(n,t){super(n),this.snapshot=t,vp(this,n)}toString(){return this.snapshot.toString()}}function bE(e,n){const t=function D3(e,n){const s=new mp([],{},{},"",{},Y,n,null,{});return new EE("",new on(s,[]))}(0,n),r=new kt([new js("",{})]),o=new kt({}),i=new kt({}),s=new kt({}),a=new kt(""),l=new Ur(r,o,s,a,i,Y,n,t.root);return l.snapshot=t.root,new wE(new on(l,[]),t)}class Ur{constructor(n,t,r,o,i,s,a,l){this.urlSubject=n,this.paramsSubject=t,this.queryParamsSubject=r,this.fragmentSubject=o,this.dataSubject=i,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(K(c=>c[Vs]))??F(void 0),this.url=n,this.params=t,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._paramMap=this.params.pipe(K(n=>ni(n)))),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=this.queryParams.pipe(K(n=>ni(n)))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}}function gp(e,n,t="emptyOnly"){let r;const{routeConfig:o}=e;return r=null===n||"always"!==t&&""!==o?.path&&(n.component||n.routeConfig?.loadComponent)?{params:e.params,data:e.data,resolve:{...e.data,...e._resolvedData??{}}}:{params:{...n.params,...e.params},data:{...n.data,...e.data},resolve:{...e.data,...n.data,...o?.data,...e._resolvedData}},o&&ME(o)&&(r.resolve[Vs]=o.title),r}class mp{get title(){return this.data?.[Vs]}constructor(n,t,r,o,i,s,a,l,c){this.url=n,this.params=t,this.queryParams=r,this.fragment=o,this.data=i,this.outlet=s,this.component=a,this.routeConfig=l,this._resolve=c}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap||(this._paramMap=ni(this.params)),this._paramMap}get queryParamMap(){return this._queryParamMap||(this._queryParamMap=ni(this.queryParams)),this._queryParamMap}toString(){return`Route(url:'${this.url.map(r=>r.toString()).join("/")}', path:'${this.routeConfig?this.routeConfig.path:""}')`}}class EE extends DE{constructor(n,t){super(t),this.url=n,vp(this,t)}toString(){return IE(this._root)}}function vp(e,n){n.value._routerState=e,n.children.forEach(t=>vp(e,t))}function IE(e){const n=e.children.length>0?` { ${e.children.map(IE).join(", ")} } `:"";return`${e.value}${n}`}function yp(e){if(e.snapshot){const n=e.snapshot,t=e._futureSnapshot;e.snapshot=t,wn(n.queryParams,t.queryParams)||e.queryParamsSubject.next(t.queryParams),n.fragment!==t.fragment&&e.fragmentSubject.next(t.fragment),wn(n.params,t.params)||e.paramsSubject.next(t.params),function VV(e,n){if(e.length!==n.length)return!1;for(let t=0;twn(t.parameters,n[r].parameters))}(e.url,n.url);return t&&!(!e.parent!=!n.parent)&&(!e.parent||_p(e.parent,n.parent))}function ME(e){return"string"==typeof e.title||null===e.title}let Cp=(()=>{class e{constructor(){this.activated=null,this._activatedRoute=null,this.name=Y,this.activateEvents=new xe,this.deactivateEvents=new xe,this.attachEvents=new xe,this.detachEvents=new xe,this.parentContexts=A(Gs),this.location=A(en),this.changeDetector=A(as),this.environmentInjector=A(At),this.inputBinder=A(Ic,{optional:!0}),this.supportsBindingToComponentInputs=!0}get activatedComponentRef(){return this.activated}ngOnChanges(t){if(t.name){const{firstChange:r,previousValue:o}=t.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(t){return this.parentContexts.getContext(t)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;const t=this.parentContexts.getContext(this.name);t?.route&&(t.attachRef?this.attach(t.attachRef,t.route):this.activateWith(t.route,t.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new M(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new M(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new M(4012,!1);this.location.detach();const t=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(t.instance),t}attach(t,r){this.activated=t,this._activatedRoute=r,this.location.insert(t.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(t.instance)}deactivate(){if(this.activated){const t=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(t)}}activateWith(t,r){if(this.isActivated)throw new M(4013,!1);this._activatedRoute=t;const o=this.location,s=t.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,l=new w3(t,a,o.injector);this.activated=o.createComponent(s,{index:o.length,injector:l,environmentInjector:r??this.environmentInjector}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["router-outlet"]],inputs:{name:"name"},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],standalone:!0,features:[Lt]})}return e})();class w3{constructor(n,t,r){this.route=n,this.childContexts=t,this.parent=r}get(n,t){return n===Ur?this.route:n===Gs?this.childContexts:this.parent.get(n,t)}}const Ic=new N("");let SE=(()=>{class e{constructor(){this.outletDataSubscriptions=new Map}bindActivatedRouteToOutletComponent(t){this.unsubscribeFromRouteData(t),this.subscribeToRouteData(t)}unsubscribeFromRouteData(t){this.outletDataSubscriptions.get(t)?.unsubscribe(),this.outletDataSubscriptions.delete(t)}subscribeToRouteData(t){const{activatedRoute:r}=t,o=Wh([r.queryParams,r.params,r.data]).pipe(Ft(([i,s,a],l)=>(a={...i,...s,...a},0===l?F(a):Promise.resolve(a)))).subscribe(i=>{if(!t.isActivated||!t.activatedComponentRef||t.activatedRoute!==r||null===r.component)return void this.unsubscribeFromRouteData(t);const s=function ZF(e){const n=Q(e);if(!n)return null;const t=new ls(n);return{get selector(){return t.selector},get type(){return t.componentType},get inputs(){return t.inputs},get outputs(){return t.outputs},get ngContentSelectors(){return t.ngContentSelectors},get isStandalone(){return n.standalone},get isSignal(){return n.signals}}}(r.component);if(s)for(const{templateName:a}of s.inputs)t.activatedComponentRef.setInput(a,i[a]);else this.unsubscribeFromRouteData(t)});this.outletDataSubscriptions.set(t,o)}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function zs(e,n,t){if(t&&e.shouldReuseRoute(n.value,t.value.snapshot)){const r=t.value;r._futureSnapshot=n.value;const o=function E3(e,n,t){return n.children.map(r=>{for(const o of t.children)if(e.shouldReuseRoute(r.value,o.value.snapshot))return zs(e,r,o);return zs(e,r)})}(e,n,t);return new on(r,o)}{if(e.shouldAttach(n.value)){const i=e.retrieve(n.value);if(null!==i){const s=i.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>zs(e,a)),s}}const r=function I3(e){return new Ur(new kt(e.url),new kt(e.params),new kt(e.queryParams),new kt(e.fragment),new kt(e.data),e.outlet,e.component,e)}(n.value),o=n.children.map(i=>zs(e,i));return new on(r,o)}}const Dp="ngNavigationCancelingError";function TE(e,n){const{redirectTo:t,navigationBehaviorOptions:r}=Hr(n)?{redirectTo:n,navigationBehaviorOptions:void 0}:n,o=AE(!1,0,n);return o.url=t,o.navigationBehaviorOptions=r,o}function AE(e,n,t){const r=new Error("NavigationCancelingError: "+(e||""));return r[Dp]=!0,r.cancellationCode=n,t&&(r.url=t),r}function xE(e){return e&&e[Dp]}let NE=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["ng-component"]],standalone:!0,features:[Ot],decls:1,vars:0,template:function(r,o){1&r&&y(0,"router-outlet")},dependencies:[Cp],encapsulation:2})}return e})();function wp(e){const n=e.children&&e.children.map(wp),t=n?{...e,children:n}:{...e};return!t.component&&!t.loadComponent&&(n||t.loadChildren)&&t.outlet&&t.outlet!==Y&&(t.component=NE),t}function In(e){return e.outlet||Y}function qs(e){if(!e)return null;if(e.routeConfig?._injector)return e.routeConfig._injector;for(let n=e.parent;n;n=n.parent){const t=n.routeConfig;if(t?._loadedInjector)return t._loadedInjector;if(t?._injector)return t._injector}return null}class O3{constructor(n,t,r,o,i){this.routeReuseStrategy=n,this.futureState=t,this.currState=r,this.forwardEvent=o,this.inputBindingEnabled=i}activate(n){const t=this.futureState._root,r=this.currState?this.currState._root:null;this.deactivateChildRoutes(t,r,n),yp(this.futureState.root),this.activateChildRoutes(t,r,n)}deactivateChildRoutes(n,t,r){const o=ai(t);n.children.forEach(i=>{const s=i.value.outlet;this.deactivateRoutes(i,o[s],r),delete o[s]}),Object.values(o).forEach(i=>{this.deactivateRouteAndItsChildren(i,r)})}deactivateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(o===i)if(o.component){const s=r.getContext(o.outlet);s&&this.deactivateChildRoutes(n,t,s.children)}else this.deactivateChildRoutes(n,t,r);else i&&this.deactivateRouteAndItsChildren(t,r)}deactivateRouteAndItsChildren(n,t){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,t):this.deactivateRouteAndOutlet(n,t)}detachAndStoreRouteSubtree(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=ai(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);if(r&&r.outlet){const s=r.outlet.detach(),a=r.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,t){const r=t.getContext(n.value.outlet),o=r&&n.value.component?r.children:t,i=ai(n);for(const s of Object.keys(i))this.deactivateRouteAndItsChildren(i[s],o);r&&(r.outlet&&(r.outlet.deactivate(),r.children.onOutletDeactivated()),r.attachRef=null,r.route=null)}activateChildRoutes(n,t,r){const o=ai(t);n.children.forEach(i=>{this.activateRoutes(i,o[i.value.outlet],r),this.forwardEvent(new _3(i.value.snapshot))}),n.children.length&&this.forwardEvent(new v3(n.value.snapshot))}activateRoutes(n,t,r){const o=n.value,i=t?t.value:null;if(yp(o),o===i)if(o.component){const s=r.getOrCreateContext(o.outlet);this.activateChildRoutes(n,t,s.children)}else this.activateChildRoutes(n,t,r);else if(o.component){const s=r.getOrCreateContext(o.outlet);if(this.routeReuseStrategy.shouldAttach(o.snapshot)){const 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),yp(a.route.value),this.activateChildRoutes(n,null,s.children)}else{const a=qs(o.snapshot);s.attachRef=null,s.route=o,s.injector=a,s.outlet&&s.outlet.activateWith(o,s.injector),this.activateChildRoutes(n,null,s.children)}}else this.activateChildRoutes(n,null,r)}}class RE{constructor(n){this.path=n,this.route=this.path[this.path.length-1]}}class Mc{constructor(n,t){this.component=n,this.route=t}}function P3(e,n,t){const r=e._root;return Ws(r,n?n._root:null,t,[r.value])}function li(e,n){const t=Symbol(),r=n.get(e,t);return r===t?"function"!=typeof e||function Q1(e){return null!==ha(e)}(e)?n.get(e):e:r}function Ws(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=ai(n);return e.children.forEach(s=>{(function F3(e,n,t,r,o={canDeactivateChecks:[],canActivateChecks:[]}){const i=e.value,s=n?n.value:null,a=t?t.getContext(e.value.outlet):null;if(s&&i.routeConfig===s.routeConfig){const l=function L3(e,n,t){if("function"==typeof t)return t(e,n);switch(t){case"pathParamsChange":return!jr(e.url,n.url);case"pathParamsOrQueryParamsChange":return!jr(e.url,n.url)||!wn(e.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!_p(e,n)||!wn(e.queryParams,n.queryParams);default:return!_p(e,n)}}(s,i,i.routeConfig.runGuardsAndResolvers);l?o.canActivateChecks.push(new RE(r)):(i.data=s.data,i._resolvedData=s._resolvedData),Ws(e,n,i.component?a?a.children:null:t,r,o),l&&a&&a.outlet&&a.outlet.isActivated&&o.canDeactivateChecks.push(new Mc(a.outlet.component,s))}else s&&Zs(n,a,o),o.canActivateChecks.push(new RE(r)),Ws(e,null,i.component?a?a.children:null:t,r,o)})(s,i[s.value.outlet],t,r.concat([s.value]),o),delete i[s.value.outlet]}),Object.entries(i).forEach(([s,a])=>Zs(a,t.getContext(s),o)),o}function Zs(e,n,t){const r=ai(e),o=e.value;Object.entries(r).forEach(([i,s])=>{Zs(s,o.component?n?n.children.getContext(i):null:n,t)}),t.canDeactivateChecks.push(new Mc(o.component&&n&&n.outlet&&n.outlet.isActivated?n.outlet.component:null,o))}function Ys(e){return"function"==typeof e}function OE(e){return e instanceof hc||"EmptyError"===e?.name}const Sc=Symbol("INITIAL_VALUE");function ci(){return Ft(e=>Wh(e.map(n=>n.pipe(_r(1),function KL(...e){const n=bi(e);return $e((t,r)=>{(n?Zh(e,t,n):Zh(e,t)).subscribe(r)})}(Sc)))).pipe(K(n=>{for(const t of n)if(!0!==t){if(t===Sc)return Sc;if(!1===t||t instanceof ri)return t}return!0}),rn(n=>n!==Sc),_r(1)))}function PE(e){return function XM(...e){return Cg(e)}(rt(n=>{if(Hr(n))throw TE(0,n)}),K(n=>!0===n))}class bp{constructor(n){this.segmentGroup=n||null}}class Ep extends Error{constructor(n){super(),this.urlTree=n}}function ui(e){return pc(new bp(e))}class rj{constructor(n,t){this.urlSerializer=n,this.urlTree=t}noMatchError(n){return new M(4002,!1)}lineralizeSegments(n,t){let r=[],o=t.root;for(;;){if(r=r.concat(o.segments),0===o.numberOfChildren)return F(r);if(o.numberOfChildren>1||!o.children[Y])return pc(new M(4e3,!1));o=o.children[Y]}}applyRedirectCommands(n,t,r){const o=this.applyRedirectCreateUrlTree(t,this.urlSerializer.parse(t),n,r);if(t.startsWith("/"))throw new Ep(o);return o}applyRedirectCreateUrlTree(n,t,r,o){const i=this.createSegmentGroup(n,t.root,r,o);return new ri(i,this.createQueryParams(t.queryParams,this.urlTree.queryParams),t.fragment)}createQueryParams(n,t){const r={};return Object.entries(n).forEach(([o,i])=>{if("string"==typeof i&&i.startsWith(":")){const a=i.substring(1);r[o]=t[a]}else r[o]=i}),r}createSegmentGroup(n,t,r,o){const i=this.createSegments(n,t.segments,r,o);let s={};return Object.entries(t.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(n,l,r,o)}),new de(i,s)}createSegments(n,t,r,o){return t.map(i=>i.path.startsWith(":")?this.findPosParam(n,i,o):this.findOrReturn(i,r))}findPosParam(n,t,r){const o=r[t.path.substring(1)];if(!o)throw new M(4001,!1);return o}findOrReturn(n,t){let r=0;for(const o of t){if(o.path===n.path)return t.splice(r),o;r++}return n}}const Ip={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function oj(e,n,t,r,o){const i=Mp(e,n,t);return i.matched?(r=function S3(e,n){return e.providers&&!e._injector&&(e._injector=Xf(e.providers,n,`Route: ${e.path}`)),e._injector??n}(n,r),function ej(e,n,t,r){const o=n.canMatch;return o&&0!==o.length?F(o.map(s=>{const a=li(s,e);return ur(function $3(e){return e&&Ys(e.canMatch)}(a)?a.canMatch(n,t):e.runInContext(()=>a(n,t)))})).pipe(ci(),PE()):F(!0)}(r,n,t).pipe(K(s=>!0===s?i:{...Ip}))):F(i)}function Mp(e,n,t){if(""===n.path)return"full"===n.pathMatch&&(e.hasChildren()||t.length>0)?{...Ip}:{matched:!0,consumedSegments:[],remainingSegments:t,parameters:{},positionalParamSegments:{}};const o=(n.matcher||LV)(t,e,n);if(!o)return{...Ip};const i={};Object.entries(o.posParams??{}).forEach(([a,l])=>{i[a]=l.path});const s=o.consumed.length>0?{...i,...o.consumed[o.consumed.length-1].parameters}:i;return{matched:!0,consumedSegments:o.consumed,remainingSegments:t.slice(o.consumed.length),parameters:s,positionalParamSegments:o.posParams??{}}}function kE(e,n,t,r){return t.length>0&&function aj(e,n,t){return t.some(r=>Tc(e,n,r)&&In(r)!==Y)}(e,t,r)?{segmentGroup:new de(n,sj(r,new de(t,e.children))),slicedSegments:[]}:0===t.length&&function lj(e,n,t){return t.some(r=>Tc(e,n,r))}(e,t,r)?{segmentGroup:new de(e.segments,ij(e,0,t,r,e.children)),slicedSegments:t}:{segmentGroup:new de(e.segments,e.children),slicedSegments:t}}function ij(e,n,t,r,o){const i={};for(const s of r)if(Tc(e,t,s)&&!o[In(s)]){const a=new de([],{});i[In(s)]=a}return{...o,...i}}function sj(e,n){const t={};t[Y]=n;for(const r of e)if(""===r.path&&In(r)!==Y){const o=new de([],{});t[In(r)]=o}return t}function Tc(e,n,t){return(!(e.hasChildren()||n.length>0)||"full"!==t.pathMatch)&&""===t.path}class dj{}class pj{constructor(n,t,r,o,i,s,a){this.injector=n,this.configLoader=t,this.rootComponentType=r,this.config=o,this.urlTree=i,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new rj(this.urlSerializer,this.urlTree),this.absoluteRedirectCount=0,this.allowRedirects=!0}noMatchError(n){return new M(4002,!1)}recognize(){const n=kE(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(n).pipe(K(t=>{const r=new mp([],Object.freeze({}),Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,{},Y,this.rootComponentType,null,{}),o=new on(r,t),i=new EE("",o),s=function r3(e,n,t=null,r=null){return hE(fE(e),n,t,r)}(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(n){return this.processSegmentGroup(this.injector,this.config,n,Y).pipe(ti(r=>{if(r instanceof Ep)return this.urlTree=r.urlTree,this.match(r.urlTree.root);throw r instanceof bp?this.noMatchError(r):r}))}inheritParamsAndData(n,t){const r=n.value,o=gp(r,t,this.paramsInheritanceStrategy);r.params=Object.freeze(o.params),r.data=Object.freeze(o.data),n.children.forEach(i=>this.inheritParamsAndData(i,r))}processSegmentGroup(n,t,r,o){return 0===r.segments.length&&r.hasChildren()?this.processChildren(n,t,r):this.processSegment(n,t,r,r.segments,o,!0).pipe(K(i=>i instanceof on?[i]:[]))}processChildren(n,t,r){const o=[];for(const i of Object.keys(r.children))"primary"===i?o.unshift(i):o.push(i);return Oe(o).pipe(ei(i=>{const s=r.children[i],a=function N3(e,n){const t=e.filter(r=>In(r)===n);return t.push(...e.filter(r=>In(r)!==n)),t}(t,i);return this.processSegmentGroup(n,a,s,i)}),function nV(e,n){return $e(function tV(e,n,t,r,o){return(i,s)=>{let a=t,l=n,c=0;i.subscribe(Ve(s,u=>{const d=c++;l=a?e(l,u,d):(a=!0,u),r&&s.next(l)},o&&(()=>{a&&s.next(l),s.complete()})))}}(e,n,arguments.length>=2,!0))}((i,s)=>(i.push(...s),i)),gc(null),function rV(e,n){const t=arguments.length>=2;return r=>r.pipe(e?rn((o,i)=>e(o,i,r)):qn,Qh(1),t?gc(n):Lb(()=>new hc))}(),Xe(i=>{if(null===i)return ui(r);const s=FE(i);return function gj(e){e.sort((n,t)=>n.value.outlet===Y?-1:t.value.outlet===Y?1:n.value.outlet.localeCompare(t.value.outlet))}(s),F(s)}))}processSegment(n,t,r,o,i,s){return Oe(t).pipe(ei(a=>this.processSegmentAgainstRoute(a._injector??n,t,a,r,o,i,s).pipe(ti(l=>{if(l instanceof bp)return F(null);throw l}))),Vr(a=>!!a),ti(a=>{if(OE(a))return function uj(e,n,t){return 0===n.length&&!e.children[t]}(r,o,i)?F(new dj):ui(r);throw a}))}processSegmentAgainstRoute(n,t,r,o,i,s,a){return function cj(e,n,t,r){return!!(In(e)===r||r!==Y&&Tc(n,t,e))&&("**"===e.path||Mp(n,e,t).matched)}(r,o,i,s)?void 0===r.redirectTo?this.matchSegmentAgainstRoute(n,o,r,i,s):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(n,o,t,r,i,s):ui(o):ui(o)}expandSegmentAgainstRouteUsingRedirect(n,t,r,o,i,s){const{matched:a,consumedSegments:l,positionalParamSegments:c,remainingSegments:u}="**"===o.path?LE(i):Mp(t,o,i);if(!a)return ui(t);o.redirectTo.startsWith("/")&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>31&&(this.allowRedirects=!1));const d=this.applyRedirects.applyRedirectCommands(l,o.redirectTo,c);return this.applyRedirects.lineralizeSegments(o,d).pipe(Xe(g=>this.processSegment(n,r,t,g.concat(u),s,!1)))}matchSegmentAgainstRoute(n,t,r,o,i){let s;return"**"===r.path?(s=F(LE(o)),t.children={}):s=oj(t,r,o,n),s.pipe(Ft(a=>a.matched?this.getChildConfig(n=r._injector??n,r,o).pipe(Ft(({routes:l})=>{const c=r._loadedInjector??n,{consumedSegments:u,remainingSegments:d,parameters:g}=a,m=new mp(u,g,Object.freeze({...this.urlTree.queryParams}),this.urlTree.fragment,function vj(e){return e.data||{}}(r),In(r),r.component??r._loadedComponent??null,r,function yj(e){return e.resolve||{}}(r)),{segmentGroup:v,slicedSegments:_}=kE(t,u,d,l);if(0===_.length&&v.hasChildren())return this.processChildren(c,l,v).pipe(K(I=>null===I?null:new on(m,I)));if(0===l.length&&0===_.length)return F(new on(m,[]));const D=In(r)===i;return this.processSegment(c,l,v,_,D?Y:i,!0).pipe(K(I=>new on(m,I instanceof on?[I]:[])))})):ui(t)))}getChildConfig(n,t,r){return t.children?F({routes:t.children,injector:n}):t.loadChildren?void 0!==t._loadedRoutes?F({routes:t._loadedRoutes,injector:t._loadedInjector}):function K3(e,n,t,r){const o=n.canLoad;return void 0===o||0===o.length?F(!0):F(o.map(s=>{const a=li(s,e);return ur(function j3(e){return e&&Ys(e.canLoad)}(a)?a.canLoad(n,t):e.runInContext(()=>a(n,t)))})).pipe(ci(),PE())}(n,t,r).pipe(Xe(o=>o?this.configLoader.loadChildren(n,t).pipe(rt(i=>{t._loadedRoutes=i.routes,t._loadedInjector=i.injector})):function nj(e){return pc(AE(!1,3))}())):F({routes:[],injector:n})}}function mj(e){const n=e.value.routeConfig;return n&&""===n.path}function FE(e){const n=[],t=new Set;for(const r of e){if(!mj(r)){n.push(r);continue}const o=n.find(i=>r.value.routeConfig===i.value.routeConfig);void 0!==o?(o.children.push(...r.children),t.add(o)):n.push(r)}for(const r of t){const o=FE(r.children);n.push(new on(r.value,o))}return n.filter(r=>!t.has(r))}function LE(e){return{matched:!0,parameters:e.length>0?tE(e).parameters:{},consumedSegments:e,remainingSegments:[],positionalParamSegments:{}}}function Cj(e,n){return Xe(t=>{const{targetSnapshot:r,guards:{canActivateChecks:o}}=t;if(!o.length)return F(t);const i=o.map(c=>c.route),s=new Set(i),a=VE(i[0].parent).slice(1);let l=0;return Oe(a).pipe(ei(c=>s.has(c)?function Dj(e,n,t,r){const o=e.routeConfig,i=e._resolve;return void 0!==o?.title&&!ME(o)&&(i[Vs]=o.title),function wj(e,n,t,r){const o=ip(e);if(0===o.length)return F({});const i={};return Oe(o).pipe(Xe(s=>function bj(e,n,t,r){const o=qs(n)??r,i=li(e,o);return ur(i.resolve?i.resolve(n,t):o.runInContext(()=>i(n,t)))}(e[s],n,t,r).pipe(Vr(),rt(a=>{i[s]=a}))),Qh(1),function oV(e){return K(()=>e)}(i),ti(s=>OE(s)?an:pc(s)))}(i,e,n,r).pipe(K(s=>(e._resolvedData=s,e.data=gp(e,e.parent,t).resolve,null)))}(c,r,e,n):(c.data=gp(c,c.parent,e).resolve,F(void 0))),rt(()=>l++),Qh(1),Xe(c=>l===a.length?F(t):an))})}function VE(e){const n=e.children.map(t=>VE(t)).flat();return[e,...n]}function Sp(e){return Ft(n=>{const t=e(n);return t?Oe(t).pipe(K(()=>n)):F(n)})}let jE=(()=>{class e{buildTitle(t){let r,o=t.root;for(;void 0!==o;)r=this.getResolvedTitleForRoute(o)??r,o=o.children.find(i=>i.outlet===Y);return r}getResolvedTitleForRoute(t){return t.data[Vs]}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Ej),providedIn:"root"})}return e})(),Ej=(()=>{class e extends jE{constructor(t){super(),this.title=t}updateTitle(t){const r=this.buildTitle(t);void 0!==r&&this.title.setTitle(r)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Qb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const di=new N("",{providedIn:"root",factory:()=>({})}),fi=new N("ROUTES");let Tp=(()=>{class e{constructor(){this.componentLoaders=new WeakMap,this.childrenLoaders=new WeakMap,this.compiler=A(Dw)}loadComponent(t){if(this.componentLoaders.get(t))return this.componentLoaders.get(t);if(t._loadedComponent)return F(t._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(t);const r=ur(t.loadComponent()).pipe(K(HE),rt(i=>{this.onLoadEndListener&&this.onLoadEndListener(t),t._loadedComponent=i}),Fs(()=>{this.componentLoaders.delete(t)})),o=new Fb(r,()=>new zt).pipe(Yh());return this.componentLoaders.set(t,o),o}loadChildren(t,r){if(this.childrenLoaders.get(r))return this.childrenLoaders.get(r);if(r._loadedRoutes)return F({routes:r._loadedRoutes,injector:r._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(r);const i=function Ij(e,n,t,r){return ur(e.loadChildren()).pipe(K(HE),Xe(o=>o instanceof kD||Array.isArray(o)?F(o):Oe(n.compileModuleAsync(o))),K(o=>{r&&r(e);let i,s,a=!1;return Array.isArray(o)?(s=o,!0):(i=o.create(t).injector,s=i.get(fi,[],{optional:!0,self:!0}).flat()),{routes:s.map(wp),injector:i}}))}(r,this.compiler,t,this.onLoadEndListener).pipe(Fs(()=>{this.childrenLoaders.delete(r)})),s=new Fb(i,()=>new zt).pipe(Yh());return this.childrenLoaders.set(r,s),s}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function HE(e){return function Mj(e){return e&&"object"==typeof e&&"default"in e}(e)?e.default:e}let Ap=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Sj),providedIn:"root"})}return e})(),Sj=(()=>{class e{shouldProcessUrl(t){return!0}extract(t){return t}merge(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const UE=new N(""),BE=new N("");function Tj(e,n,t){const r=e.get(BE),o=e.get(ft);return e.get(ae).runOutsideAngular(()=>{if(!o.startViewTransition||r.skipNextTransition)return r.skipNextTransition=!1,Promise.resolve();let i;const s=new Promise(c=>{i=c}),a=o.startViewTransition(()=>(i(),function Aj(e){return new Promise(n=>{o_(n,{injector:e})})}(e))),{onViewTransitionCreated:l}=r;return l&&function $S(e,n){e instanceof Mr&&e.assertNotDestroyed();const r=Yn(e),o=mt(void 0);try{return n()}finally{Yn(r),mt(o)}}(e,()=>l({transition:a,from:n,to:t})),s})}let Ac=(()=>{class e{get hasRequestedNavigation(){return 0!==this.navigationId}constructor(){this.currentNavigation=null,this.currentTransition=null,this.lastSuccessfulNavigation=null,this.events=new zt,this.transitionAbortSubject=new zt,this.configLoader=A(Tp),this.environmentInjector=A(At),this.urlSerializer=A(oi),this.rootContexts=A(Gs),this.location=A(Rs),this.inputBindingEnabled=null!==A(Ic,{optional:!0}),this.titleStrategy=A(jE),this.options=A(di,{optional:!0})||{},this.paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly",this.urlHandlingStrategy=A(Ap),this.createViewTransition=A(UE,{optional:!0}),this.navigationId=0,this.afterPreactivation=()=>F(void 0),this.rootComponentType=null,this.configLoader.onLoadEndListener=o=>this.events.next(new g3(o)),this.configLoader.onLoadStartListener=o=>this.events.next(new p3(o))}complete(){this.transitions?.complete()}handleNavigationRequest(t){const r=++this.navigationId;this.transitions?.next({...this.transitions.value,...t,id:r})}setupNavigations(t,r,o){return this.transitions=new kt({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:$s,restoredState:null,currentSnapshot:o.snapshot,targetSnapshot:null,currentRouterState:o,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null}),this.transitions.pipe(rn(i=>0!==i.id),K(i=>({...i,extractedUrl:this.urlHandlingStrategy.extract(i.rawUrl)})),Ft(i=>{this.currentTransition=i;let s=!1,a=!1;return F(i).pipe(rt(l=>{this.currentNavigation={id:l.id,initialUrl:l.rawUrl,extractedUrl:l.extractedUrl,trigger:l.source,extras:l.extras,previousNavigation:this.lastSuccessfulNavigation?{...this.lastSuccessfulNavigation,previousNavigation:null}:null}}),Ft(l=>{const c=!t.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl();if(!c&&"reload"!==(l.extras.onSameUrlNavigation??t.onSameUrlNavigation)){const d="";return this.events.next(new si(l.id,this.urlSerializer.serialize(l.rawUrl),d,0)),l.resolve(null),an}if(this.urlHandlingStrategy.shouldProcessUrl(l.rawUrl))return F(l).pipe(Ft(d=>{const g=this.transitions?.getValue();return this.events.next(new bc(d.id,this.urlSerializer.serialize(d.extractedUrl),d.source,d.restoredState)),g!==this.transitions?.getValue()?an:Promise.resolve(d)}),function _j(e,n,t,r,o,i){return Xe(s=>function fj(e,n,t,r,o,i,s="emptyOnly"){return new pj(e,n,t,r,o,s,i).recognize()}(e,n,t,r,s.extractedUrl,o,i).pipe(K(({state:a,tree:l})=>({...s,targetSnapshot:a,urlAfterRedirects:l}))))}(this.environmentInjector,this.configLoader,this.rootComponentType,t.config,this.urlSerializer,this.paramsInheritanceStrategy),rt(d=>{i.targetSnapshot=d.targetSnapshot,i.urlAfterRedirects=d.urlAfterRedirects,this.currentNavigation={...this.currentNavigation,finalUrl:d.urlAfterRedirects};const g=new _E(d.id,this.urlSerializer.serialize(d.extractedUrl),this.urlSerializer.serialize(d.urlAfterRedirects),d.targetSnapshot);this.events.next(g)}));if(c&&this.urlHandlingStrategy.shouldProcessUrl(l.currentRawUrl)){const{id:d,extractedUrl:g,source:m,restoredState:v,extras:_}=l,D=new bc(d,this.urlSerializer.serialize(g),m,v);this.events.next(D);const I=bE(0,this.rootComponentType).snapshot;return this.currentTransition=i={...l,targetSnapshot:I,urlAfterRedirects:g,extras:{..._,skipLocationChange:!1,replaceUrl:!1}},this.currentNavigation.finalUrl=g,F(i)}{const d="";return this.events.next(new si(l.id,this.urlSerializer.serialize(l.extractedUrl),d,1)),l.resolve(null),an}}),rt(l=>{const c=new u3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot);this.events.next(c)}),K(l=>(this.currentTransition=i={...l,guards:P3(l.targetSnapshot,l.currentSnapshot,this.rootContexts)},i)),function z3(e,n){return Xe(t=>{const{targetSnapshot:r,currentSnapshot:o,guards:{canActivateChecks:i,canDeactivateChecks:s}}=t;return 0===s.length&&0===i.length?F({...t,guardsResult:!0}):function q3(e,n,t,r){return Oe(e).pipe(Xe(o=>function J3(e,n,t,r,o){const i=n&&n.routeConfig?n.routeConfig.canDeactivate:null;return i&&0!==i.length?F(i.map(a=>{const l=qs(n)??o,c=li(a,l);return ur(function B3(e){return e&&Ys(e.canDeactivate)}(c)?c.canDeactivate(e,n,t,r):l.runInContext(()=>c(e,n,t,r))).pipe(Vr())})).pipe(ci()):F(!0)}(o.component,o.route,t,n,r)),Vr(o=>!0!==o,!0))}(s,r,o,e).pipe(Xe(a=>a&&function V3(e){return"boolean"==typeof e}(a)?function W3(e,n,t,r){return Oe(n).pipe(ei(o=>Zh(function Y3(e,n){return null!==e&&n&&n(new m3(e)),F(!0)}(o.route.parent,r),function Z3(e,n){return null!==e&&n&&n(new y3(e)),F(!0)}(o.route,r),function X3(e,n,t){const r=n[n.length-1],i=n.slice(0,n.length-1).reverse().map(s=>function k3(e){const n=e.routeConfig?e.routeConfig.canActivateChild:null;return n&&0!==n.length?{node:e,guards:n}:null}(s)).filter(s=>null!==s).map(s=>kb(()=>F(s.guards.map(l=>{const c=qs(s.node)??t,u=li(l,c);return ur(function U3(e){return e&&Ys(e.canActivateChild)}(u)?u.canActivateChild(r,e):c.runInContext(()=>u(r,e))).pipe(Vr())})).pipe(ci())));return F(i).pipe(ci())}(e,o.path,t),function Q3(e,n,t){const r=n.routeConfig?n.routeConfig.canActivate:null;if(!r||0===r.length)return F(!0);const o=r.map(i=>kb(()=>{const s=qs(n)??t,a=li(i,s);return ur(function H3(e){return e&&Ys(e.canActivate)}(a)?a.canActivate(n,e):s.runInContext(()=>a(n,e))).pipe(Vr())}));return F(o).pipe(ci())}(e,o.route,t))),Vr(o=>!0!==o,!0))}(r,i,e,n):F(a)),K(a=>({...t,guardsResult:a})))})}(this.environmentInjector,l=>this.events.next(l)),rt(l=>{if(i.guardsResult=l.guardsResult,Hr(l.guardsResult))throw TE(0,l.guardsResult);const c=new d3(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects),l.targetSnapshot,!!l.guardsResult);this.events.next(c)}),rn(l=>!!l.guardsResult||(this.cancelNavigationTransition(l,"",3),!1)),Sp(l=>{if(l.guards.canActivateChecks.length)return F(l).pipe(rt(c=>{const u=new f3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}),Ft(c=>{let u=!1;return F(c).pipe(Cj(this.paramsInheritanceStrategy,this.environmentInjector),rt({next:()=>u=!0,complete:()=>{u||this.cancelNavigationTransition(c,"",2)}}))}),rt(c=>{const u=new h3(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}))}),Sp(l=>{const c=u=>{const d=[];u.routeConfig?.loadComponent&&!u.routeConfig._loadedComponent&&d.push(this.configLoader.loadComponent(u.routeConfig).pipe(rt(g=>{u.component=g}),K(()=>{})));for(const g of u.children)d.push(...c(g));return d};return Wh(c(l.targetSnapshot.root)).pipe(gc(),_r(1))}),Sp(()=>this.afterPreactivation()),Ft(()=>{const{currentSnapshot:l,targetSnapshot:c}=i,u=this.createViewTransition?.(this.environmentInjector,l.root,c.root);return u?Oe(u).pipe(K(()=>i)):F(i)}),K(l=>{const c=function b3(e,n,t){const r=zs(e,n._root,t?t._root:void 0);return new wE(r,n)}(t.routeReuseStrategy,l.targetSnapshot,l.currentRouterState);return this.currentTransition=i={...l,targetRouterState:c},this.currentNavigation.targetRouterState=c,i}),rt(()=>{this.events.next(new dp)}),((e,n,t,r)=>K(o=>(new O3(n,o.targetRouterState,o.currentRouterState,t,r).activate(e),o)))(this.rootContexts,t.routeReuseStrategy,l=>this.events.next(l),this.inputBindingEnabled),_r(1),rt({next:l=>{s=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new En(l.id,this.urlSerializer.serialize(l.extractedUrl),this.urlSerializer.serialize(l.urlAfterRedirects))),this.titleStrategy?.updateTitle(l.targetRouterState.snapshot),l.resolve(!0)},complete:()=>{s=!0}}),function iV(e){return $e((n,t)=>{qt(e).subscribe(Ve(t,()=>t.complete(),lu)),!t.closed&&n.subscribe(t)})}(this.transitionAbortSubject.pipe(rt(l=>{throw l}))),Fs(()=>{s||a||this.cancelNavigationTransition(i,"",1),this.currentNavigation?.id===i.id&&(this.currentNavigation=null)}),ti(l=>{if(a=!0,xE(l))this.events.next(new ii(i.id,this.urlSerializer.serialize(i.extractedUrl),l.message,l.cancellationCode)),function M3(e){return xE(e)&&Hr(e.url)}(l)?this.events.next(new fp(l.url)):i.resolve(!1);else{this.events.next(new Ec(i.id,this.urlSerializer.serialize(i.extractedUrl),l,i.targetSnapshot??void 0));try{i.resolve(t.errorHandler(l))}catch(c){i.reject(c)}}return an}))}))}cancelNavigationTransition(t,r,o){const i=new ii(t.id,this.urlSerializer.serialize(t.extractedUrl),r,o);this.events.next(i),t.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#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();function xj(e){return e!==$s}let Nj=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Oj),providedIn:"root"})}return e})();class Rj{shouldDetach(n){return!1}store(n,t){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,t){return n.routeConfig===t.routeConfig}}let Oj=(()=>{class e extends Rj{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),$E=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:()=>A(Pj),providedIn:"root"})}return e})(),Pj=(()=>{class e extends $E{constructor(){super(...arguments),this.location=A(Rs),this.urlSerializer=A(oi),this.options=A(di,{optional:!0})||{},this.canceledNavigationResolution=this.options.canceledNavigationResolution||"replace",this.urlHandlingStrategy=A(Ap),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.currentUrlTree=new ri,this.rawUrlTree=this.currentUrlTree,this.currentPageId=0,this.lastSuccessfulId=-1,this.routerState=bE(0,null),this.stateMemento=this.createStateMemento()}getCurrentUrlTree(){return this.currentUrlTree}getRawUrlTree(){return this.rawUrlTree}restoredState(){return this.location.getState()}get browserPageId(){return"computed"!==this.canceledNavigationResolution?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}getRouterState(){return this.routerState}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}registerNonRouterCurrentEntryChangeListener(t){return this.location.subscribe(r=>{"popstate"===r.type&&t(r.url,r.state)})}handleRouterEvent(t,r){if(t instanceof bc)this.stateMemento=this.createStateMemento();else if(t instanceof si)this.rawUrlTree=r.initialUrl;else if(t instanceof _E){if("eager"===this.urlUpdateStrategy&&!r.extras.skipLocationChange){const o=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl);this.setBrowserUrl(o,r)}}else t instanceof dp?(this.currentUrlTree=r.finalUrl,this.rawUrlTree=this.urlHandlingStrategy.merge(r.finalUrl,r.initialUrl),this.routerState=r.targetRouterState,"deferred"===this.urlUpdateStrategy&&(r.extras.skipLocationChange||this.setBrowserUrl(this.rawUrlTree,r))):t instanceof ii&&(3===t.code||2===t.code)?this.restoreHistory(r):t instanceof Ec?this.restoreHistory(r,!0):t instanceof En&&(this.lastSuccessfulId=t.id,this.currentPageId=this.browserPageId)}setBrowserUrl(t,r){const o=this.urlSerializer.serialize(t);if(this.location.isCurrentPathEqualTo(o)||r.extras.replaceUrl){const s={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId)};this.location.replaceState(o,"",s)}else{const i={...r.extras.state,...this.generateNgRouterState(r.id,this.browserPageId+1)};this.location.go(o,"",i)}}restoreHistory(t,r=!1){if("computed"===this.canceledNavigationResolution){const i=this.currentPageId-this.browserPageId;0!==i?this.location.historyGo(i):this.currentUrlTree===t.finalUrl&&0===i&&(this.resetState(t),this.resetUrlToCurrentUrlTree())}else"replace"===this.canceledNavigationResolution&&(r&&this.resetState(t),this.resetUrlToCurrentUrlTree())}resetState(t){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,t.finalUrl??this.rawUrlTree)}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.rawUrlTree),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(t,r){return"computed"===this.canceledNavigationResolution?{navigationId:t,\u0275routerPageId:r}:{navigationId:t}}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();var Qs=function(e){return e[e.COMPLETE=0]="COMPLETE",e[e.FAILED=1]="FAILED",e[e.REDIRECTING=2]="REDIRECTING",e}(Qs||{});function GE(e,n){e.events.pipe(rn(t=>t instanceof En||t instanceof ii||t instanceof Ec||t instanceof si),K(t=>t instanceof En||t instanceof si?Qs.COMPLETE:t instanceof ii&&(0===t.code||1===t.code)?Qs.REDIRECTING:Qs.FAILED),rn(t=>t!==Qs.REDIRECTING),_r(1)).subscribe(()=>{n()})}function kj(e){throw e}const Fj={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Lj={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"};let Bt=(()=>{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=A(_w),this.stateManager=A($E),this.options=A(di,{optional:!0})||{},this.pendingTasks=A(Bl),this.urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred",this.navigationTransitions=A(Ac),this.urlSerializer=A(oi),this.location=A(Rs),this.urlHandlingStrategy=A(Ap),this._events=new zt,this.errorHandler=this.options.errorHandler||kj,this.navigated=!1,this.routeReuseStrategy=A(Nj),this.onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore",this.config=A(fi,{optional:!0})?.flat()??[],this.componentInputBindingEnabled=!!A(Ic,{optional:!0}),this.eventsSubscription=new Et,this.isNgZoneEnabled=A(ae)instanceof ae&&ae.isInAngularZone(),this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this,this.currentUrlTree,this.routerState).subscribe({error:t=>{this.console.warn(t)}}),this.subscribeToNavigationEvents()}subscribeToNavigationEvents(){const t=this.navigationTransitions.events.subscribe(r=>{try{const o=this.navigationTransitions.currentTransition,i=this.navigationTransitions.currentNavigation;if(null!==o&&null!==i)if(this.stateManager.handleRouterEvent(r,i),r instanceof ii&&0!==r.code&&1!==r.code)this.navigated=!0;else if(r instanceof En)this.navigated=!0;else if(r instanceof fp){const s=this.urlHandlingStrategy.merge(r.url,o.currentRawUrl),a={skipLocationChange:o.extras.skipLocationChange,replaceUrl:"eager"===this.urlUpdateStrategy||xj(o.source)};this.scheduleNavigation(s,$s,null,a,{resolve:o.resolve,reject:o.reject,promise:o.promise})}(function jj(e){return!(e instanceof dp||e instanceof fp)})(r)&&this._events.next(r)}catch(o){this.navigationTransitions.transitionAbortSubject.next(o)}});this.eventsSubscription.add(t)}resetRootComponentType(t){this.routerState.root.component=t,this.navigationTransitions.rootComponentType=t}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),$s,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription||(this.nonRouterCurrentEntryChangeSubscription=this.stateManager.registerNonRouterCurrentEntryChangeListener((t,r)=>{setTimeout(()=>{this.navigateToSyncWithBrowser(t,"popstate",r)},0)}))}navigateToSyncWithBrowser(t,r,o){const i={replaceUrl:!0},s=o?.navigationId?o:null;if(o){const l={...o};delete l.navigationId,delete l.\u0275routerPageId,0!==Object.keys(l).length&&(i.state=l)}const a=this.parseUrl(t);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(t){this.config=t.map(wp),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(t,r={}){const{relativeTo:o,queryParams:i,fragment:s,queryParamsHandling:a,preserveFragment:l}=r,c=l?this.currentUrlTree.fragment:s;let d,u=null;switch(a){case"merge":u={...this.currentUrlTree.queryParams,...i};break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=i||null}null!==u&&(u=this.removeEmptyProps(u));try{d=fE(o?o.snapshot:this.routerState.snapshot.root)}catch{("string"!=typeof t[0]||!t[0].startsWith("/"))&&(t=[]),d=this.currentUrlTree.root}return hE(d,t,u,c??null)}navigateByUrl(t,r={skipLocationChange:!1}){const o=Hr(t)?t:this.parseUrl(t),i=this.urlHandlingStrategy.merge(o,this.rawUrlTree);return this.scheduleNavigation(i,$s,null,r)}navigate(t,r={skipLocationChange:!1}){return function Vj(e){for(let n=0;n{const i=t[o];return null!=i&&(r[o]=i),r},{})}scheduleNavigation(t,r,o,i,s){if(this.disposed)return Promise.resolve(!1);let a,l,c;s?(a=s.resolve,l=s.reject,c=s.promise):c=new Promise((d,g)=>{a=d,l=g});const u=this.pendingTasks.add();return GE(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(u))}),this.navigationTransitions.handleNavigationRequest({source:r,restoredState:o,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:t,extras:i,resolve:a,reject:l,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(d=>Promise.reject(d))}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})(),Mn=(()=>{class e{constructor(t,r,o,i,s,a){this.router=t,this.route=r,this.tabIndexAttribute=o,this.renderer=i,this.el=s,this.locationStrategy=a,this.href=null,this.commands=null,this.onChanges=new zt,this.preserveFragment=!1,this.skipLocationChange=!1,this.replaceUrl=!1;const l=s.nativeElement.tagName?.toLowerCase();this.isAnchorElement="a"===l||"area"===l,this.isAnchorElement?this.subscription=t.events.subscribe(c=>{c instanceof En&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}setTabIndexIfNotOnNativeEl(t){null!=this.tabIndexAttribute||this.isAnchorElement||this.applyAttributeValue("tabindex",t)}ngOnChanges(t){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}set routerLink(t){null!=t?(this.commands=Array.isArray(t)?t:[t],this.setTabIndexIfNotOnNativeEl("0")):(this.commands=null,this.setTabIndexIfNotOnNativeEl(null))}onClick(t,r,o,i,s){return!!(null===this.urlTree||this.isAnchorElement&&(0!==t||r||o||i||s||"string"==typeof this.target&&"_self"!=this.target))||(this.router.navigateByUrl(this.urlTree,{skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state}),!this.isAnchorElement)}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){this.href=null!==this.urlTree&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(this.urlTree)):null;const t=null===this.href?null:function cy(e,n,t){return function lA(e,n){return"src"===n&&("embed"===e||"frame"===e||"iframe"===e||"media"===e||"script"===e)||"href"===n&&("base"===e||"link"===e)?ly:bo}(n,t)(e)}(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",t)}applyAttributeValue(t,r){const o=this.renderer,i=this.el.nativeElement;null!==r?o.setAttribute(i,t,r):o.removeAttribute(i,t)}get urlTree(){return null===this.commands?null:this.router.createUrlTree(this.commands,{relativeTo:void 0!==this.relativeTo?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Ur),function Oa(e){return function cS(e,n){if("class"===n)return e.classes;if("style"===n)return e.styles;const t=e.attrs;if(t){const r=t.length;let o=0;for(;o{class e{get isActive(){return this._isActive}constructor(t,r,o,i,s){this.router=t,this.element=r,this.renderer=o,this.cdr=i,this.link=s,this.classes=[],this._isActive=!1,this.routerLinkActiveOptions={exact:!1},this.isActiveChange=new xe,this.routerEventsSubscription=t.events.subscribe(a=>{a instanceof En&&this.update()})}ngAfterContentInit(){F(this.links.changes,F(null)).pipe(Yr()).subscribe(t=>{this.update(),this.subscribeToEachLinkOnChanges()})}subscribeToEachLinkOnChanges(){this.linkInputChangesSubscription?.unsubscribe();const t=[...this.links.toArray(),this.link].filter(r=>!!r).map(r=>r.onChanges);this.linkInputChangesSubscription=Oe(t).pipe(Yr()).subscribe(r=>{this._isActive!==this.isLinkActive(this.router)(r)&&this.update()})}set routerLinkActive(t){const r=Array.isArray(t)?t:t.split(" ");this.classes=r.filter(o=>!!o)}ngOnChanges(t){this.update()}ngOnDestroy(){this.routerEventsSubscription.unsubscribe(),this.linkInputChangesSubscription?.unsubscribe()}update(){!this.links||!this.router.navigated||queueMicrotask(()=>{const t=this.hasActiveLinks();this._isActive!==t&&(this._isActive=t,this.cdr.markForCheck(),this.classes.forEach(r=>{t?this.renderer.addClass(this.element.nativeElement,r):this.renderer.removeClass(this.element.nativeElement,r)}),t&&void 0!==this.ariaCurrentWhenActive?this.renderer.setAttribute(this.element.nativeElement,"aria-current",this.ariaCurrentWhenActive.toString()):this.renderer.removeAttribute(this.element.nativeElement,"aria-current"),this.isActiveChange.emit(t))})}isLinkActive(t){const r=function Hj(e){return!!e.paths}(this.routerLinkActiveOptions)?this.routerLinkActiveOptions:this.routerLinkActiveOptions.exact||!1;return o=>!!o.urlTree&&t.isActive(o.urlTree,r)}hasActiveLinks(){const t=this.isLinkActive(this.router);return this.link&&t(this.link)||this.links.some(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Bt),S(Nt),S(Fn),S(as),S(Mn,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","routerLinkActive",""]],contentQueries:function(r,o,i){if(1&r&&KD(i,Mn,5),2&r){let s;JD(s=function ew(){return function ck(e,n){return e[dn].queries[n].queryList}(b(),xm())}())&&(o.links=s)}},inputs:{routerLinkActiveOptions:"routerLinkActiveOptions",ariaCurrentWhenActive:"ariaCurrentWhenActive",routerLinkActive:"routerLinkActive"},outputs:{isActiveChange:"isActiveChange"},exportAs:["routerLinkActive"],standalone:!0,features:[Lt]})}return e})();class qE{}let Uj=(()=>{class e{constructor(t,r,o,i,s){this.router=t,this.injector=o,this.preloadingStrategy=i,this.loader=s}setUpPreloading(){this.subscription=this.router.events.pipe(rn(t=>t instanceof En),ei(()=>this.preload())).subscribe(()=>{})}preload(){return this.processRoutes(this.injector,this.router.config)}ngOnDestroy(){this.subscription&&this.subscription.unsubscribe()}processRoutes(t,r){const o=[];for(const i of r){i.providers&&!i._injector&&(i._injector=Xf(i.providers,t,`Route: ${i.path}`));const s=i._injector??t,a=i._loadedInjector??s;(i.loadChildren&&!i._loadedRoutes&&void 0===i.canLoad||i.loadComponent&&!i._loadedComponent)&&o.push(this.preloadConfig(s,i)),(i.children||i._loadedRoutes)&&o.push(this.processRoutes(a,i.children??i._loadedRoutes))}return Oe(o).pipe(Yr())}preloadConfig(t,r){return this.preloadingStrategy.preload(r,()=>{let o;o=r.loadChildren&&void 0===r.canLoad?this.loader.loadChildren(t,r):F(null);const i=o.pipe(Xe(s=>null===s?F(void 0):(r._loadedRoutes=s.routes,r._loadedInjector=s.injector,this.processRoutes(s.injector??t,s.routes))));return r.loadComponent&&!r._loadedComponent?Oe([i,this.loader.loadComponent(r)]).pipe(Yr()):i})}static#e=this.\u0275fac=function(r){return new(r||e)(k(Bt),k(Dw),k(At),k(qE),k(Tp))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:"root"})}return e})();const xp=new N("");let WE=(()=>{class e{constructor(t,r,o,i,s={}){this.urlSerializer=t,this.transitions=r,this.viewportScroller=o,this.zone=i,this.options=s,this.lastId=0,this.lastSource="imperative",this.restoredId=0,this.store={},s.scrollPositionRestoration=s.scrollPositionRestoration||"disabled",s.anchorScrolling=s.anchorScrolling||"disabled"}init(){"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.setHistoryScrollRestoration("manual"),this.routerEventsSubscription=this.createScrollEvents(),this.scrollEventsSubscription=this.consumeScrollEvents()}createScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof bc?(this.store[this.lastId]=this.viewportScroller.getScrollPosition(),this.lastSource=t.navigationTrigger,this.restoredId=t.restoredState?t.restoredState.navigationId:0):t instanceof En?(this.lastId=t.id,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.urlAfterRedirects).fragment)):t instanceof si&&0===t.code&&(this.lastSource=void 0,this.restoredId=0,this.scheduleScrollEvent(t,this.urlSerializer.parse(t.url).fragment))})}consumeScrollEvents(){return this.transitions.events.subscribe(t=>{t instanceof CE&&(t.position?"top"===this.options.scrollPositionRestoration?this.viewportScroller.scrollToPosition([0,0]):"enabled"===this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition(t.position):t.anchor&&"enabled"===this.options.anchorScrolling?this.viewportScroller.scrollToAnchor(t.anchor):"disabled"!==this.options.scrollPositionRestoration&&this.viewportScroller.scrollToPosition([0,0]))})}scheduleScrollEvent(t,r){this.zone.runOutsideAngular(()=>{setTimeout(()=>{this.zone.run(()=>{this.transitions.events.next(new CE(t,"popstate"===this.lastSource?this.store[this.restoredId]:null,r))})},0)})}ngOnDestroy(){this.routerEventsSubscription?.unsubscribe(),this.scrollEventsSubscription?.unsubscribe()}static#e=this.\u0275fac=function(r){!function Ry(){throw new Error("invalid")}()};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function Sn(e,n){return{\u0275kind:e,\u0275providers:n}}function YE(){const e=A(_t);return n=>{const t=e.get(Qo);if(n!==t.components[0])return;const r=e.get(Bt),o=e.get(QE);1===e.get(Np)&&r.initialNavigation(),e.get(XE,null,X.Optional)?.setUpPreloading(),e.get(xp,null,X.Optional)?.init(),r.resetRootComponentType(t.componentTypes[0]),o.closed||(o.next(),o.complete(),o.unsubscribe())}}const QE=new N("",{factory:()=>new zt}),Np=new N("",{providedIn:"root",factory:()=>1}),XE=new N("");function zj(e){return Sn(0,[{provide:XE,useExisting:Uj},{provide:qE,useExisting:e}])}function Wj(e){return Sn(9,[{provide:UE,useValue:Tj},{provide:BE,useValue:{skipNextTransition:!!e?.skipInitialTransition,...e}}])}const JE=new N("ROUTER_FORROOT_GUARD"),Zj=[Rs,{provide:oi,useClass:sp},Bt,Gs,{provide:Ur,useFactory:function ZE(e){return e.routerState.root},deps:[Bt]},Tp,[]];let KE=(()=>{class e{constructor(t){}static forRoot(t,r){return{ngModule:e,providers:[Zj,[],{provide:fi,multi:!0,useValue:t},{provide:JE,useFactory:Jj,deps:[[Bt,new Fa,new La]]},{provide:di,useValue:r||{}},r?.useHash?{provide:Lr,useClass:KF}:{provide:Lr,useClass:lb},{provide:xp,useFactory:()=>{const e=A(yL),n=A(ae),t=A(di),r=A(Ac),o=A(oi);return t.scrollOffset&&e.setOffset(t.scrollOffset),new WE(o,r,e,n,t)}},r?.preloadingStrategy?zj(r.preloadingStrategy).\u0275providers:[],r?.initialNavigation?Kj(r):[],r?.bindToComponentInputs?Sn(8,[SE,{provide:Ic,useExisting:SE}]).\u0275providers:[],r?.enableViewTransitions?Wj().\u0275providers:[],[{provide:eI,useFactory:YE},{provide:mh,multi:!0,useExisting:eI}]]}}static forChild(t){return{ngModule:e,providers:[{provide:fi,multi:!0,useValue:t}]}}static#e=this.\u0275fac=function(r){return new(r||e)(k(JE,8))};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})();function Jj(e){return"guarded"}function Kj(e){return["disabled"===e.initialNavigation?Sn(3,[{provide:ch,multi:!0,useFactory:()=>{const n=A(Bt);return()=>{n.setUpLocationChangeListener()}}},{provide:Np,useValue:2}]).\u0275providers:[],"enabledBlocking"===e.initialNavigation?Sn(2,[{provide:Np,useValue:0},{provide:ch,multi:!0,deps:[_t],useFactory:n=>{const t=n.get(XF,Promise.resolve());return()=>t.then(()=>new Promise(r=>{const o=n.get(Bt),i=n.get(QE);GE(o,()=>{r(!0)}),n.get(Ac).afterPreactivation=()=>(r(!0),i.closed?F(void 0):i),o.initialNavigation()}))}}]).\u0275providers:[]]}const eI=new N(""),tH=()=>["/pro"];let nH=(()=>{class e{constructor(){this.years=(new Date).getFullYear()-2009}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-footer"]],standalone:!0,features:[Ot],decls:94,vars:3,consts:[[1,"container-fluid","mt-5"],[1,"p-5"],[1,"container"],[1,"row"],[1,"col-xs-12","col-md-4","text-center"],["src","resources/portrait_600.jpg","alt","Portrait",1,"img-fluid","img-thumbnail","mb-5",2,"max-height","300px"],[1,"col-xs-12","col-md-8"],[1,"fa-solid","fa-heart","githubheart"],["href","https://github.com/sponsors/danielpalme","target","_blank"],[3,"routerLink"],[1,"col-md-3","offset-md-2"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki","target","_blank"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ","target","_blank"],[1,"col-md-4","mt-4","mt-md-0"],["href","https://www.nuget.org/packages/ReportGenerator","target","_blank"],["href","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool","target","_blank"],["href","https://www.nuget.org/packages/ReportGenerator.Core","target","_blank"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col-md-3","mt-4","mt-md-0"],[1,"fa-brands","fa-github"],["href","https://twitter.com/danielpalme","target","_blank"],[1,"fa-brands","fa-twitter"],["href","https://www.palmmedia.de/Privacy","target","_blank"],["href","https://www.palmmedia.de/Imprint","target","_blank"]],template:function(r,o){1&r&&(h(0,"footer",0)(1,"div",1)(2,"div",2)(3,"div",3)(4,"div",4),y(5,"img",5),p(),h(6,"div",6)(7,"h2"),f(8,"Who's behind"),p(),h(9,"p"),f(10,"My name is Daniel Palme. I'm a software developer from Germany."),p(),h(11,"p"),f(12," Back in 2009 I wanted to create a code coverage report based on "),h(13,"i"),f(14,"PartCover"),p(),f(15," files."),y(16,"br"),f(17," Since no existing tool was able to merge several coverage files and generate a visual appealing report, I decided to create my own."),y(18,"br"),f(19),h(20,"i"),f(21,"ReportGenerator"),p(),f(22,". "),p(),h(23,"p"),f(24," You can support the ongoing maintenance by becoming a "),y(25,"i",7),f(26,"\xa0"),h(27,"a",8),f(28,"GitHub sponsor"),p(),f(29," or by buying a "),h(30,"a",9),f(31,"PRO license"),p(),f(32,". "),p()()()()(),h(33,"div",2)(34,"div",3),y(35,"hr"),p()(),h(36,"div",1)(37,"div",2)(38,"div",3)(39,"div",10)(40,"p")(41,"b"),f(42,"GitHub"),p()(),h(43,"a",11),f(44,"Source code"),p(),y(45,"br"),h(46,"a",12),f(47,"Wiki"),p(),y(48,"br"),h(49,"a",13),f(50,"FAQ"),p()(),h(51,"div",14)(52,"p")(53,"b"),f(54,"Download"),p()(),h(55,"i"),f(56,"NuGet"),p(),y(57,"br"),h(58,"a",15),f(59,"ReportGenerator"),p(),y(60,"br"),h(61,"a",16),f(62,"dotnet-reportgenerator-globaltool"),p(),y(63,"br"),h(64,"a",17),f(65,"ReportGenerator.Core"),p(),y(66,"br")(67,"br"),h(68,"i"),f(69,"Integration"),p(),y(70,"br"),h(71,"a",18),f(72,"GitHub actions"),p(),y(73,"br"),h(74,"a",19),f(75,"Azure DevOps"),p()(),h(76,"div",20)(77,"p")(78,"b"),f(79,"Community"),p()(),h(80,"a",11),y(81,"i",21),f(82," GitHub"),p(),y(83,"br"),h(84,"a",22),y(85,"i",23),f(86," Twitter"),p(),y(87,"br")(88,"br"),h(89,"a",24),f(90,"Privacy"),p(),y(91,"br"),h(92,"a",25),f(93,"Imprint"),p()()()()()()),2&r&&(C(19),Hn(" Fast forward ",o.years," years, I'm still maintaining "),C(11),E("routerLink",ee(2,tH)))},dependencies:[Mn],styles:["footer[_ngcontent-%COMP%]{background-color:#464646}footer[_ngcontent-%COMP%], a[_ngcontent-%COMP%]{color:#fff}"]})}return e})();const tI=()=>["/"],rH=e=>({show:e}),hi=()=>["link-active"],nI=()=>({exact:!0}),oH=()=>["/features"],iH=()=>["/getstarted"],sH=()=>["/usage"],aH=()=>["/contact"],lH=()=>["/pro"];let cH=(()=>{class e{constructor(){this.isExpanded=!1}collapse(){this.isExpanded=!1}toggle(){this.isExpanded=!this.isExpanded}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-nav-menu"]],standalone:!0,features:[Ot],decls:42,vars:34,consts:[[1,"mb-5"],[1,"navbar","fixed-top","navbar-expand-sm","navbar-toggleable-sm","navbar-light","bg-white","border-bottom","box-shadow","mb-3"],[1,"container-xxl","flex-wrap","flex-md-nowrap"],[1,"navbar-brand",3,"routerLink"],["src","resources/logo.svg","height","40","alt","Icon",1,"me-2"],[1,"d-sm-none","d-md-none","d-lg-inline","ms-2"],["type","button","data-toggle","collapse","data-target",".navbar-collapse","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse","collapse","d-sm-inline-flex",3,"ngClass"],[1,"navbar-nav","flex-grow"],[1,"nav-item",3,"routerLinkActive","routerLinkActiveOptions"],[1,"nav-link","text-dark",3,"routerLink"],[1,"nav-item",3,"routerLinkActive"],[1,"nav-link","text-dark","text-nowrap",3,"routerLink"],[1,"pro-button"],[1,"d-md-none","text-secondary"],[1,"navbar-nav","flex-row","flex-wrap","ms-md-auto","d-sm-none","d-md-flex"],[1,"nav-item","col-6","col-md-auto"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank","title","GitHub",1,"nav-link","text-dark"],[1,"fa-brands","fa-github"],[1,"d-inline","d-sm-none","ms-2"],["href","https://twitter.com/danielpalme","target","_blank","title","Twitter",1,"nav-link","text-dark"],[1,"fa-brands","fa-twitter"]],template:function(r,o){1&r&&(h(0,"header",0)(1,"nav",1)(2,"div",2)(3,"a",3),y(4,"img",4),h(5,"span",5),f(6,"ReportGenerator"),p()(),h(7,"button",6),R("click",function(){return o.toggle()}),y(8,"span",7),p(),h(9,"div",8)(10,"ul",9)(11,"li",10)(12,"a",11),f(13,"Home"),p()(),h(14,"li",10)(15,"a",11),f(16,"Features"),p()(),h(17,"li",12)(18,"a",13),f(19,"Get started"),p()(),h(20,"li",12)(21,"a",11),f(22,"Usage"),p()(),h(23,"li",12)(24,"a",11),f(25,"Contact"),p()(),h(26,"li",12)(27,"a",11)(28,"span",14),f(29,"PRO"),p()()()(),y(30,"hr",15),h(31,"ul",16)(32,"li",17)(33,"a",18),y(34,"i",19),h(35,"span",20),f(36,"GitHub"),p()()(),h(37,"li",17)(38,"a",21),y(39,"i",22),h(40,"span",20),f(41,"Twitter"),p()()()()()()()()),2&r&&(C(3),E("routerLink",ee(17,tI)),C(4),Xt("aria-expanded",o.isExpanded),C(2),E("ngClass",Is(18,rH,o.isExpanded)),C(2),E("routerLinkActive",ee(20,hi))("routerLinkActiveOptions",ee(21,nI)),C(1),E("routerLink",ee(22,tI)),C(2),E("routerLinkActive",ee(23,hi))("routerLinkActiveOptions",ee(24,nI)),C(1),E("routerLink",ee(25,oH)),C(2),E("routerLinkActive",ee(26,hi)),C(1),E("routerLink",ee(27,iH)),C(2),E("routerLinkActive",ee(28,hi)),C(1),E("routerLink",ee(29,sH)),C(2),E("routerLinkActive",ee(30,hi)),C(1),E("routerLink",ee(31,aH)),C(2),E("routerLinkActive",ee(32,hi)),C(1),E("routerLink",ee(33,lH)))},dependencies:[Mn,cc,zE],styles:[".box-shadow[_ngcontent-%COMP%]{box-shadow:0 .25rem .75rem #0000000d}@keyframes _ngcontent-%COMP%_pro-button-animation{0%{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}50%{background-color:vvar(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}to{background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}}.pro-button[_ngcontent-%COMP%]{animation-name:_ngcontent-%COMP%_pro-button-animation;animation-duration:2s;animation-iteration-count:2}.pro-button[_ngcontent-%COMP%]:hover, .link-active[_ngcontent-%COMP%] .pro-button[_ngcontent-%COMP%]{background-color:var(--rg-primary-hover-color);background-image:linear-gradient(50deg,var(--rg-gradient-hover-from) 0%,var(--rg-gradient-hover-from) 100%);box-shadow:0 0 6px 1px var(--rg-primary-color)}.nav-link[_ngcontent-%COMP%]{text-transform:uppercase;font-weight:500}.nav-link[_ngcontent-%COMP%]:hover{text-decoration:underline;text-underline-offset:2px}.link-active[_ngcontent-%COMP%] a[_ngcontent-%COMP%]{color:var(--rg-primary-hover-color)!important;font-weight:400}"]})}return e})(),uH=(()=>{class e{constructor(t,r,o){this.dom=t,this.router=r,this.activatedRoute=o}ngOnInit(){this.router.events.pipe(rn(t=>t instanceof En),K(()=>this.activatedRoute),K(t=>{for(;t.firstChild;)t=t.firstChild;return t}),rn(t=>"primary"===t.outlet),Xe(t=>t.data)).subscribe(t=>{const r=`${window.location.protocol}//${window.location.hostname}`;this.updateCanonicalUrl(t.canonical?r+t.canonical:r+this.router.url)})}updateCanonicalUrl(t){const r=this.dom.getElementsByTagName("head")[0];var o=this.dom.querySelector("link[rel='canonical']")||null;null==o&&(o=this.dom.createElement("link"),r.appendChild(o)),o.setAttribute("rel","canonical"),o.setAttribute("href",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(ft),S(Bt),S(Ur))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-root"]],standalone:!0,features:[Ot],decls:3,vars:0,template:function(r,o){1&r&&y(0,"app-nav-menu")(1,"router-outlet")(2,"app-footer")},dependencies:[cH,Cp,nH],encapsulation:2})}return e})(),rI=(()=>{class e{constructor(t,r){this._renderer=t,this._elementRef=r,this.onChange=o=>{},this.onTouched=()=>{}}setProperty(t,r){this._renderer.setProperty(this._elementRef.nativeElement,t,r)}registerOnTouched(t){this.onTouched=t}registerOnChange(t){this.onChange=t}setDisabledState(t){this.setProperty("disabled",t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt))};static#t=this.\u0275dir=$({type:e})}return e})(),Br=(()=>{class e extends rI{static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,features:[ce]})}return e})();const Tn=new N("NgValueAccessor"),hH={provide:Tn,useExisting:he(()=>pi),multi:!0},gH=new N("CompositionEventMode");let pi=(()=>{class e extends rI{constructor(t,r,o){super(t,r),this._compositionMode=o,this._composing=!1,null==this._compositionMode&&(this._compositionMode=!function pH(){const e=lr()?lr().getUserAgent():"";return/android (\d+)/.test(e.toLowerCase())}())}writeValue(t){this.setProperty("value",t??"")}_handleInput(t){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(t)}_compositionStart(){this._composing=!0}_compositionEnd(t){this._composing=!1,this._compositionMode&&this.onChange(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(gH,8))};static#t=this.\u0275dir=$({type:e,selectors:[["input","formControlName","",3,"type","checkbox"],["textarea","formControlName",""],["input","formControl","",3,"type","checkbox"],["textarea","formControl",""],["input","ngModel","",3,"type","checkbox"],["textarea","ngModel",""],["","ngDefaultControl",""]],hostBindings:function(r,o){1&r&&R("input",function(s){return o._handleInput(s.target.value)})("blur",function(){return o.onTouched()})("compositionstart",function(){return o._compositionStart()})("compositionend",function(s){return o._compositionEnd(s.target.value)})},features:[Ee([hH]),ce]})}return e})();function dr(e){return null==e||("string"==typeof e||Array.isArray(e))&&0===e.length}const ot=new N("NgValidators"),fr=new N("NgAsyncValidators"),mH=/^(?=.{1,254}$)(?=.{1,64}@)[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;function lI(e){return dr(e.value)?{required:!0}:null}function uI(e){return dr(e.value)||mH.test(e.value)?null:{email:!0}}function xc(e){return null}function pI(e){return null!=e}function gI(e){return Es(e)?Oe(e):e}function mI(e){let n={};return e.forEach(t=>{n=null!=t?{...n,...t}:n}),0===Object.keys(n).length?null:n}function vI(e,n){return n.map(t=>t(e))}function yI(e){return e.map(n=>function vH(e){return!e.validate}(n)?n:t=>n.validate(t))}function Rp(e){return null!=e?function _I(e){if(!e)return null;const n=e.filter(pI);return 0==n.length?null:function(t){return mI(vI(t,n))}}(yI(e)):null}function Op(e){return null!=e?function CI(e){if(!e)return null;const n=e.filter(pI);return 0==n.length?null:function(t){return function dH(...e){const n=Vg(e),{args:t,keys:r}=Nb(e),o=new Te(i=>{const{length:s}=t;if(!s)return void i.complete();const a=new Array(s);let l=s,c=s;for(let u=0;u{d||(d=!0,c--),a[u]=g},()=>l--,void 0,()=>{(!l||!d)&&(c||i.next(r?Ob(r,a):a),i.complete())}))}});return n?o.pipe(Rb(n)):o}(vI(t,n).map(gI)).pipe(K(mI))}}(yI(e)):null}function DI(e,n){return null===e?[n]:Array.isArray(e)?[...e,n]:[e,n]}function Pp(e){return e?Array.isArray(e)?e:[e]:[]}function Nc(e,n){return Array.isArray(e)?e.includes(n):e===n}function EI(e,n){const t=Pp(n);return Pp(e).forEach(o=>{Nc(t,o)||t.push(o)}),t}function II(e,n){return Pp(n).filter(t=>!Nc(e,t))}class MI{constructor(){this._rawValidators=[],this._rawAsyncValidators=[],this._onDestroyCallbacks=[]}get value(){return this.control?this.control.value:null}get valid(){return this.control?this.control.valid:null}get invalid(){return this.control?this.control.invalid:null}get pending(){return this.control?this.control.pending:null}get disabled(){return this.control?this.control.disabled:null}get enabled(){return this.control?this.control.enabled:null}get errors(){return this.control?this.control.errors:null}get pristine(){return this.control?this.control.pristine:null}get dirty(){return this.control?this.control.dirty:null}get touched(){return this.control?this.control.touched:null}get status(){return this.control?this.control.status:null}get untouched(){return this.control?this.control.untouched:null}get statusChanges(){return this.control?this.control.statusChanges:null}get valueChanges(){return this.control?this.control.valueChanges:null}get path(){return null}_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=Rp(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=Op(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_registerOnDestroy(n){this._onDestroyCallbacks.push(n)}_invokeOnDestroyCallbacks(){this._onDestroyCallbacks.forEach(n=>n()),this._onDestroyCallbacks=[]}reset(n=void 0){this.control&&this.control.reset(n)}hasError(n,t){return!!this.control&&this.control.hasError(n,t)}getError(n,t){return this.control?this.control.getError(n,t):null}}class pt extends MI{get formDirective(){return null}get path(){return null}}class hr extends MI{constructor(){super(...arguments),this._parent=null,this.name=null,this.valueAccessor=null}}class SI{constructor(n){this._cd=n}get isTouched(){return!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return!!this._cd?.submitted}}let Rc=(()=>{class e extends SI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(hr,2))};static#t=this.\u0275dir=$({type:e,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(r,o){2&r&&bl("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)},features:[ce]})}return e})(),Oc=(()=>{class e extends SI{constructor(t){super(t)}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,10))};static#t=this.\u0275dir=$({type:e,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(r,o){2&r&&bl("ng-untouched",o.isUntouched)("ng-touched",o.isTouched)("ng-pristine",o.isPristine)("ng-dirty",o.isDirty)("ng-valid",o.isValid)("ng-invalid",o.isInvalid)("ng-pending",o.isPending)("ng-submitted",o.isSubmitted)},features:[ce]})}return e})();const Xs="VALID",kc="INVALID",gi="PENDING",Js="DISABLED";function Lp(e){return(Fc(e)?e.validators:e)||null}function Vp(e,n){return(Fc(n)?n.asyncValidators:e)||null}function Fc(e){return null!=e&&!Array.isArray(e)&&"object"==typeof e}class NI{constructor(n,t){this._pendingDirty=!1,this._hasOwnPendingAsyncValidator=!1,this._pendingTouched=!1,this._onCollectionChange=()=>{},this._parent=null,this.pristine=!0,this.touched=!1,this._onDisabledChange=[],this._assignValidators(n),this._assignAsyncValidators(t)}get validator(){return this._composedValidatorFn}set validator(n){this._rawValidators=this._composedValidatorFn=n}get asyncValidator(){return this._composedAsyncValidatorFn}set asyncValidator(n){this._rawAsyncValidators=this._composedAsyncValidatorFn=n}get parent(){return this._parent}get valid(){return this.status===Xs}get invalid(){return this.status===kc}get pending(){return this.status==gi}get disabled(){return this.status===Js}get enabled(){return this.status!==Js}get dirty(){return!this.pristine}get untouched(){return!this.touched}get updateOn(){return this._updateOn?this._updateOn:this.parent?this.parent.updateOn:"change"}setValidators(n){this._assignValidators(n)}setAsyncValidators(n){this._assignAsyncValidators(n)}addValidators(n){this.setValidators(EI(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(EI(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(II(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(II(n,this._rawAsyncValidators))}hasValidator(n){return Nc(this._rawValidators,n)}hasAsyncValidator(n){return Nc(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){this.touched=!0,this._parent&&!n.onlySelf&&this._parent.markAsTouched(n)}markAllAsTouched(){this.markAsTouched({onlySelf:!0}),this._forEachChild(n=>n.markAllAsTouched())}markAsUntouched(n={}){this.touched=!1,this._pendingTouched=!1,this._forEachChild(t=>{t.markAsUntouched({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}markAsDirty(n={}){this.pristine=!1,this._parent&&!n.onlySelf&&this._parent.markAsDirty(n)}markAsPristine(n={}){this.pristine=!0,this._pendingDirty=!1,this._forEachChild(t=>{t.markAsPristine({onlySelf:!0})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}markAsPending(n={}){this.status=gi,!1!==n.emitEvent&&this.statusChanges.emit(this.status),this._parent&&!n.onlySelf&&this._parent.markAsPending(n)}disable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Js,this.errors=null,this._forEachChild(r=>{r.disable({...n,onlySelf:!0})}),this._updateValue(),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!0))}enable(n={}){const t=this._parentMarkedDirty(n.onlySelf);this.status=Xs,this._forEachChild(r=>{r.enable({...n,onlySelf:!0})}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors({...n,skipPristineCheck:t}),this._onDisabledChange.forEach(r=>r(!1))}_updateAncestors(n){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine(),this._parent._updateTouched())}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){this._setInitialStatus(),this._updateValue(),this.enabled&&(this._cancelExistingSubscription(),this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Xs||this.status===gi)&&this._runAsyncValidator(n.emitEvent)),!1!==n.emitEvent&&(this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.updateValueAndValidity(n)}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(t=>t._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Js:Xs}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n){if(this.asyncValidator){this.status=gi,this._hasOwnPendingAsyncValidator=!0;const t=gI(this.asyncValidator(this));this._asyncValidationSubscription=t.subscribe(r=>{this._hasOwnPendingAsyncValidator=!1,this.setErrors(r,{emitEvent:n})})}}_cancelExistingSubscription(){this._asyncValidationSubscription&&(this._asyncValidationSubscription.unsubscribe(),this._hasOwnPendingAsyncValidator=!1)}setErrors(n,t={}){this.errors=n,this._updateControlsErrors(!1!==t.emitEvent)}get(n){let t=n;return null==t||(Array.isArray(t)||(t=t.split(".")),0===t.length)?null:t.reduce((r,o)=>r&&r._find(o),this)}getError(n,t){const r=t?this.get(t):this;return r&&r.errors?r.errors[n]:null}hasError(n,t){return!!this.getError(n,t)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),this._parent&&this._parent._updateControlsErrors(n)}_initObservables(){this.valueChanges=new xe,this.statusChanges=new xe}_calculateStatus(){return this._allControlsDisabled()?Js:this.errors?kc:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(gi)?gi:this._anyControlsHaveStatus(kc)?kc:Xs}_anyControlsHaveStatus(n){return this._anyControls(t=>t.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n={}){this.pristine=!this._anyControlsDirty(),this._parent&&!n.onlySelf&&this._parent._updatePristine(n)}_updateTouched(n={}){this.touched=this._anyControlsTouched(),this._parent&&!n.onlySelf&&this._parent._updateTouched(n)}_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Fc(n)&&null!=n.updateOn&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){return!n&&!(!this._parent||!this._parent.dirty)&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=function DH(e){return Array.isArray(e)?Rp(e):e||null}(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=function wH(e){return Array.isArray(e)?Op(e):e||null}(this._rawAsyncValidators)}}class jp extends NI{constructor(n,t,r){super(Lp(t),Vp(r,t)),this.controls=n,this._initObservables(),this._setUpdateStrategy(t),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}registerControl(n,t){return this.controls[n]?this.controls[n]:(this.controls[n]=t,t.setParent(this),t._registerOnCollectionChange(this._onCollectionChange),t)}addControl(n,t,r={}){this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}removeControl(n,t={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:t.emitEvent}),this._onCollectionChange()}setControl(n,t,r={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],t&&this.registerControl(n,t),this.updateValueAndValidity({emitEvent:r.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,t={}){(function xI(e,n,t){e._forEachChild((r,o)=>{if(void 0===t[o])throw new M(1002,"")})})(this,0,n),Object.keys(n).forEach(r=>{(function AI(e,n,t){const r=e.controls;if(!(n?Object.keys(r):r).length)throw new M(1e3,"");if(!r[t])throw new M(1001,"")})(this,!0,r),this.controls[r].setValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t)}patchValue(n,t={}){null!=n&&(Object.keys(n).forEach(r=>{const o=this.controls[r];o&&o.patchValue(n[r],{onlySelf:!0,emitEvent:t.emitEvent})}),this.updateValueAndValidity(t))}reset(n={},t={}){this._forEachChild((r,o)=>{r.reset(n?n[o]:null,{onlySelf:!0,emitEvent:t.emitEvent})}),this._updatePristine(t),this._updateTouched(t),this.updateValueAndValidity(t)}getRawValue(){return this._reduceChildren({},(n,t,r)=>(n[r]=t.getRawValue(),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(t,r)=>!!r._syncPendingControls()||t);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(t=>{const r=this.controls[t];r&&n(r,t)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(const[t,r]of Object.entries(this.controls))if(this.contains(t)&&n(r))return!0;return!1}_reduceValue(){return this._reduceChildren({},(t,r,o)=>((r.enabled||this.disabled)&&(t[o]=r.value),t))}_reduceChildren(n,t){let r=n;return this._forEachChild((o,i)=>{r=t(r,o,i)}),r}_allControlsDisabled(){for(const n of Object.keys(this.controls))if(this.controls[n].enabled)return!1;return Object.keys(this.controls).length>0||this.disabled}_find(n){return this.controls.hasOwnProperty(n)?this.controls[n]:null}}const mi=new N("CallSetDisabledState",{providedIn:"root",factory:()=>Lc}),Lc="always";function Ks(e,n,t=Lc){Hp(e,n),n.valueAccessor.writeValue(e.value),(e.disabled||"always"===t)&&n.valueAccessor.setDisabledState?.(e.disabled),function IH(e,n){n.valueAccessor.registerOnChange(t=>{e._pendingValue=t,e._pendingChange=!0,e._pendingDirty=!0,"change"===e.updateOn&&RI(e,n)})}(e,n),function SH(e,n){const t=(r,o)=>{n.valueAccessor.writeValue(r),o&&n.viewToModelUpdate(r)};e.registerOnChange(t),n._registerOnDestroy(()=>{e._unregisterOnChange(t)})}(e,n),function MH(e,n){n.valueAccessor.registerOnTouched(()=>{e._pendingTouched=!0,"blur"===e.updateOn&&e._pendingChange&&RI(e,n),"submit"!==e.updateOn&&e.markAsTouched()})}(e,n),function EH(e,n){if(n.valueAccessor.setDisabledState){const t=r=>{n.valueAccessor.setDisabledState(r)};e.registerOnDisabledChange(t),n._registerOnDestroy(()=>{e._unregisterOnDisabledChange(t)})}}(e,n)}function Hc(e,n){e.forEach(t=>{t.registerOnValidatorChange&&t.registerOnValidatorChange(n)})}function Hp(e,n){const t=function wI(e){return e._rawValidators}(e);null!==n.validator?e.setValidators(DI(t,n.validator)):"function"==typeof t&&e.setValidators([t]);const r=function bI(e){return e._rawAsyncValidators}(e);null!==n.asyncValidator?e.setAsyncValidators(DI(r,n.asyncValidator)):"function"==typeof r&&e.setAsyncValidators([r]);const o=()=>e.updateValueAndValidity();Hc(n._rawValidators,o),Hc(n._rawAsyncValidators,o)}function RI(e,n){e._pendingDirty&&e.markAsDirty(),e.setValue(e._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(e._pendingValue),e._pendingChange=!1}const RH={provide:pt,useExisting:he(()=>vi)},ea=(()=>Promise.resolve())();let vi=(()=>{class e extends pt{constructor(t,r,o){super(),this.callSetDisabledState=o,this.submitted=!1,this._directives=new Set,this.ngSubmit=new xe,this.form=new jp({},Rp(t),Op(r))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(t){ea.then(()=>{const r=this._findContainer(t.path);t.control=r.registerControl(t.name,t.control),Ks(t.control,t,this.callSetDisabledState),t.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(t)})}getControl(t){return this.form.get(t.path)}removeControl(t){ea.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name),this._directives.delete(t)})}addFormGroup(t){ea.then(()=>{const r=this._findContainer(t.path),o=new jp({});(function OI(e,n){Hp(e,n)})(o,t),r.registerControl(t.name,o),o.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(t){ea.then(()=>{const r=this._findContainer(t.path);r&&r.removeControl(t.name)})}getFormGroup(t){return this.form.get(t.path)}updateModel(t,r){ea.then(()=>{this.form.get(t.path).setValue(r)})}setValue(t){this.control.setValue(t)}onSubmit(t){return this.submitted=!0,function PI(e,n){e._syncPendingControls(),n.forEach(t=>{const r=t.control;"submit"===r.updateOn&&r._pendingChange&&(t.viewToModelUpdate(r._pendingValue),r._pendingChange=!1)})}(this.form,this._directives),this.ngSubmit.emit(t),"dialog"===t?.target?.method}onReset(){this.resetForm()}resetForm(t=void 0){this.form.reset(t),this.submitted=!1}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.form._updateOn=this.options.updateOn)}_findContainer(t){return t.pop(),t.length?this.form.get(t):this.form}static#e=this.\u0275fac=function(r){return new(r||e)(S(ot,10),S(fr,10),S(mi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(r,o){1&r&&R("submit",function(s){return o.onSubmit(s)})("reset",function(){return o.onReset()})},inputs:{options:["ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],features:[Ee([RH]),ce]})}return e})();function kI(e,n){const t=e.indexOf(n);t>-1&&e.splice(t,1)}function FI(e){return"object"==typeof e&&null!==e&&2===Object.keys(e).length&&"value"in e&&"disabled"in e}const LI=class extends NI{constructor(n=null,t,r){super(Lp(t),Vp(r,t)),this.defaultValue=null,this._onChange=[],this._pendingChange=!1,this._applyFormState(n),this._setUpdateStrategy(t),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Fc(t)&&(t.nonNullable||t.initialValueIsDefault)&&(this.defaultValue=FI(n)?n.value:n)}setValue(n,t={}){this.value=this._pendingValue=n,this._onChange.length&&!1!==t.emitModelToViewChange&&this._onChange.forEach(r=>r(this.value,!1!==t.emitViewToModelChange)),this.updateValueAndValidity(t)}patchValue(n,t={}){this.setValue(n,t)}reset(n=this.defaultValue,t={}){this._applyFormState(n),this.markAsPristine(t),this.markAsUntouched(t),this.setValue(this.value,t),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){kI(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){kI(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return!("submit"!==this.updateOn||(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),!this._pendingChange)||(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),0))}_applyFormState(n){FI(n)?(this.value=this._pendingValue=n.value,n.disabled?this.disable({onlySelf:!0,emitEvent:!1}):this.enable({onlySelf:!0,emitEvent:!1})):this.value=this._pendingValue=n}},kH={provide:hr,useExisting:he(()=>ta)},HI=(()=>Promise.resolve())();let ta=(()=>{class e extends hr{constructor(t,r,o,i,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this.control=new LI,this._registered=!1,this.name="",this.update=new xe,this._parent=t,this._setValidators(r),this._setAsyncValidators(o),this.valueAccessor=function $p(e,n){if(!n)return null;let t,r,o;return Array.isArray(n),n.forEach(i=>{i.constructor===pi?t=i:function xH(e){return Object.getPrototypeOf(e.constructor)===Br}(i)?r=i:o=i}),o||r||t||null}(0,i)}ngOnChanges(t){if(this._checkForErrors(),!this._registered||"name"in t){if(this._registered&&(this._checkName(),this.formDirective)){const r=t.name.previousValue;this.formDirective.removeControl({name:r,path:this._getPath(r)})}this._setUpControl()}"isDisabled"in t&&this._updateDisabled(t),function Bp(e,n){if(!e.hasOwnProperty("model"))return!1;const t=e.model;return!!t.isFirstChange()||!Object.is(n,t.currentValue)}(t,this.viewModel)&&(this._updateValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}get path(){return this._getPath(this.name)}get formDirective(){return this._parent?this._parent.formDirective:null}viewToModelUpdate(t){this.viewModel=t,this.update.emit(t)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&null!=this.options.updateOn&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!(!this.options||!this.options.standalone)}_setUpStandalone(){Ks(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._isStandalone()||this._checkParentType(),this._checkName()}_checkParentType(){}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),this._isStandalone()}_updateValue(t){HI.then(()=>{this.control.setValue(t,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(t){const r=t.isDisabled.currentValue,o=0!==r&&Jo(r);HI.then(()=>{o&&!this.control.disabled?this.control.disable():!o&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(t){return this._parent?function Vc(e,n){return[...n.path,e]}(t,this._parent):[t]}static#e=this.\u0275fac=function(r){return new(r||e)(S(pt,9),S(ot,10),S(fr,10),S(Tn,10),S(as,8),S(mi,8))};static#t=this.\u0275dir=$({type:e,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:["disabled","isDisabled"],model:["ngModel","model"],options:["ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],features:[Ee([kH]),ce,Lt]})}return e})(),Bc=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""]})}return e})();const LH={provide:Tn,useExisting:he(()=>Gp),multi:!0};let BI=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({})}return e})(),VH=(()=>{class e{constructor(){this._accessors=[]}add(t,r){this._accessors.push([t,r])}remove(t){for(let r=this._accessors.length-1;r>=0;--r)if(this._accessors[r][1]===t)return void this._accessors.splice(r,1)}select(t){this._accessors.forEach(r=>{this._isSameGroup(r,t)&&r[1]!==t&&r[1].fireUncheck(t.value)})}_isSameGroup(t,r){return!!t[0].control&&t[0]._parent===r._control._parent&&t[1].name===r.name}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac,providedIn:BI})}return e})(),Gp=(()=>{class e extends Br{constructor(t,r,o,i){super(t,r),this._registry=o,this._injector=i,this.setDisabledStateFired=!1,this.onChange=()=>{},this.callSetDisabledState=A(mi,{optional:!0})??Lc}ngOnInit(){this._control=this._injector.get(hr),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(t){this._state=t===this.value,this.setProperty("checked",this._state)}registerOnChange(t){this._fn=t,this.onChange=()=>{t(this.value),this._registry.select(this)}}setDisabledState(t){(this.setDisabledStateFired||t||"whenDisabledForLegacyCode"===this.callSetDisabledState)&&this.setProperty("disabled",t),this.setDisabledStateFired=!0}fireUncheck(t){this.writeValue(t)}_checkName(){!this.name&&this.formControlName&&(this.name=this.formControlName)}static#e=this.\u0275fac=function(r){return new(r||e)(S(Fn),S(Nt),S(VH),S(_t))};static#t=this.\u0275dir=$({type:e,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(){return o.onChange()})("blur",function(){return o.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},features:[Ee([LH]),ce]})}return e})();const zH={provide:Tn,useExisting:he(()=>$c),multi:!0};function ZI(e,n){return null==e?`${n}`:(n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let $c=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){this.value=t;const o=ZI(this._getOptionId(t),t);this.setProperty("value",o)}registerOnChange(t){this.onChange=r=>{this.value=this._getOptionValue(r),t(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(t){for(const r of this._optionMap.keys())if(this._compareWith(this._optionMap.get(r),t))return r;return null}_getOptionValue(t){const r=function qH(e){return e.split(":")[0]}(t);return this._optionMap.has(r)?this._optionMap.get(r):t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target.value)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([zH]),ce]})}return e})(),YI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption())}set ngValue(t){null!=this._select&&(this._select._optionMap.set(this.id,t),this._setElementValue(ZI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._setElementValue(t),this._select&&this._select.writeValue(this._select.value)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S($c,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();const WH={provide:Tn,useExisting:he(()=>Zp),multi:!0};function QI(e,n){return null==e?`${n}`:("string"==typeof n&&(n=`'${n}'`),n&&"object"==typeof n&&(n="Object"),`${e}: ${n}`.slice(0,50))}let Zp=(()=>{class e extends Br{constructor(){super(...arguments),this._optionMap=new Map,this._idCounter=0,this._compareWith=Object.is}set compareWith(t){this._compareWith=t}writeValue(t){let r;if(this.value=t,Array.isArray(t)){const o=t.map(i=>this._getOptionId(i));r=(i,s)=>{i._setSelected(o.indexOf(s.toString())>-1)}}else r=(o,i)=>{o._setSelected(!1)};this._optionMap.forEach(r)}registerOnChange(t){this.onChange=r=>{const o=[],i=r.selectedOptions;if(void 0!==i){const s=i;for(let a=0;a{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(r,o){1&r&&R("change",function(s){return o.onChange(s.target)})("blur",function(){return o.onTouched()})},inputs:{compareWith:"compareWith"},features:[Ee([WH]),ce]})}return e})(),XI=(()=>{class e{constructor(t,r,o){this._element=t,this._renderer=r,this._select=o,this._select&&(this.id=this._select._registerOption(this))}set ngValue(t){null!=this._select&&(this._value=t,this._setElementValue(QI(this.id,t)),this._select.writeValue(this._select.value))}set value(t){this._select?(this._value=t,this._setElementValue(QI(this.id,t)),this._select.writeValue(this._select.value)):this._setElementValue(t)}_setElementValue(t){this._renderer.setProperty(this._element.nativeElement,"value",t)}_setSelected(t){this._renderer.setProperty(this._element.nativeElement,"selected",t)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static#e=this.\u0275fac=function(r){return new(r||e)(S(Nt),S(Fn),S(Zp,9))};static#t=this.\u0275dir=$({type:e,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"}})}return e})();let $r=(()=>{class e{constructor(){this._validator=xc}ngOnChanges(t){if(this.inputName in t){const r=this.normalizeInput(t[this.inputName].currentValue);this._enabled=this.enabled(r),this._validator=this._enabled?this.createValidator(r):xc,this._onChange&&this._onChange()}}validate(t){return this._validator(t)}registerOnValidatorChange(t){this._onChange=t}enabled(t){return null!=t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275dir=$({type:e,features:[Lt]})}return e})();const XH={provide:ot,useExisting:he(()=>yi),multi:!0};let yi=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="required",this.normalizeInput=Jo,this.createValidator=t=>lI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("required",o._enabled?"":null)},inputs:{required:"required"},features:[Ee([XH]),ce]})}return e})();const KH={provide:ot,useExisting:he(()=>Gc),multi:!0};let Gc=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="email",this.normalizeInput=Jo,this.createValidator=t=>uI}enabled(t){return t}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","email","","formControlName",""],["","email","","formControl",""],["","email","","ngModel",""]],inputs:{email:"email"},features:[Ee([KH]),ce]})}return e})();const tU={provide:ot,useExisting:he(()=>Yp),multi:!0};let Yp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="maxlength",this.normalizeInput=t=>function JI(e){return"number"==typeof e?e:parseInt(e,10)}(t),this.createValidator=t=>function fI(e){return n=>function iI(e){return null!=e&&"number"==typeof e.length}(n.value)&&n.value.length>e?{maxlength:{requiredLength:e,actualLength:n.value.length}}:null}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","maxlength","","formControlName",""],["","maxlength","","formControl",""],["","maxlength","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("maxlength",o._enabled?o.maxlength:null)},inputs:{maxlength:"maxlength"},features:[Ee([tU]),ce]})}return e})();const nU={provide:ot,useExisting:he(()=>Qp),multi:!0};let Qp=(()=>{class e extends $r{constructor(){super(...arguments),this.inputName="pattern",this.normalizeInput=t=>t,this.createValidator=t=>function hI(e){if(!e)return xc;let n,t;return"string"==typeof e?(t="","^"!==e.charAt(0)&&(t+="^"),t+=e,"$"!==e.charAt(e.length-1)&&(t+="$"),n=new RegExp(t)):(t=e.toString(),n=e),r=>{if(dr(r.value))return null;const o=r.value;return n.test(o)?null:{pattern:{requiredPattern:t,actualValue:o}}}}(t)}static#e=this.\u0275fac=(()=>{let t;return function(o){return(t||(t=Qe(e)))(o||e)}})();static#t=this.\u0275dir=$({type:e,selectors:[["","pattern","","formControlName",""],["","pattern","","formControl",""],["","pattern","","ngModel",""]],hostVars:1,hostBindings:function(r,o){2&r&&Xt("pattern",o._enabled?o.pattern:null)},inputs:{pattern:"pattern"},features:[Ee([nU]),ce]})}return e})(),rU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[BI]})}return e})(),zc=(()=>{class e{static withConfig(t){return{ngModule:e,providers:[{provide:mi,useValue:t.callSetDisabledState??Lc}]}}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[rU]})}return e})();class qc{}class Wc{}class $t{constructor(n){this.normalizedNames=new Map,this.lazyUpdate=null,n?"string"==typeof n?this.lazyInit=()=>{this.headers=new Map,n.split("\n").forEach(t=>{const r=t.indexOf(":");if(r>0){const o=t.slice(0,r),i=o.toLowerCase(),s=t.slice(r+1).trim();this.maybeSetNormalizedName(o,i),this.headers.has(i)?this.headers.get(i).push(s):this.headers.set(i,[s])}})}:typeof Headers<"u"&&n instanceof Headers?(this.headers=new Map,n.forEach((t,r)=>{this.setHeaderEntries(r,t)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(n).forEach(([t,r])=>{this.setHeaderEntries(t,r)})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();const t=this.headers.get(n.toLowerCase());return t&&t.length>0?t[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,t){return this.clone({name:n,value:t,op:"a"})}set(n,t){return this.clone({name:n,value:t,op:"s"})}delete(n,t){return this.clone({name:n,value:t,op:"d"})}maybeSetNormalizedName(n,t){this.normalizedNames.has(t)||this.normalizedNames.set(t,n)}init(){this.lazyInit&&(this.lazyInit instanceof $t?this.copyFrom(this.lazyInit):this.lazyInit(),this.lazyInit=null,this.lazyUpdate&&(this.lazyUpdate.forEach(n=>this.applyUpdate(n)),this.lazyUpdate=null))}copyFrom(n){n.init(),Array.from(n.headers.keys()).forEach(t=>{this.headers.set(t,n.headers.get(t)),this.normalizedNames.set(t,n.normalizedNames.get(t))})}clone(n){const t=new $t;return t.lazyInit=this.lazyInit&&this.lazyInit instanceof $t?this.lazyInit:this,t.lazyUpdate=(this.lazyUpdate||[]).concat([n]),t}applyUpdate(n){const t=n.name.toLowerCase();switch(n.op){case"a":case"s":let r=n.value;if("string"==typeof r&&(r=[r]),0===r.length)return;this.maybeSetNormalizedName(n.name,t);const o=("a"===n.op?this.headers.get(t):void 0)||[];o.push(...r),this.headers.set(t,o);break;case"d":const i=n.value;if(i){let s=this.headers.get(t);if(!s)return;s=s.filter(a=>-1===i.indexOf(a)),0===s.length?(this.headers.delete(t),this.normalizedNames.delete(t)):this.headers.set(t,s)}else this.headers.delete(t),this.normalizedNames.delete(t)}}setHeaderEntries(n,t){const r=(Array.isArray(t)?t:[t]).map(i=>i.toString()),o=n.toLowerCase();this.headers.set(o,r),this.maybeSetNormalizedName(n,o)}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(t=>n(this.normalizedNames.get(t),this.headers.get(t)))}}class iU{encodeKey(n){return sM(n)}encodeValue(n){return sM(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}}const aU=/%(\d[a-f0-9])/gi,lU={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function sM(e){return encodeURIComponent(e).replace(aU,(n,t)=>lU[t]??n)}function Zc(e){return`${e}`}class pr{constructor(n={}){if(this.updates=null,this.cloneFrom=null,this.encoder=n.encoder||new iU,n.fromString){if(n.fromObject)throw new Error("Cannot specify both fromString and fromObject.");this.map=function sU(e,n){const t=new Map;return e.length>0&&e.replace(/^\?/,"").split("&").forEach(o=>{const i=o.indexOf("="),[s,a]=-1==i?[n.decodeKey(o),""]:[n.decodeKey(o.slice(0,i)),n.decodeValue(o.slice(i+1))],l=t.get(s)||[];l.push(a),t.set(s,l)}),t}(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(t=>{const r=n.fromObject[t],o=Array.isArray(r)?r.map(Zc):[Zc(r)];this.map.set(t,o)})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();const t=this.map.get(n);return t?t[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,t){return this.clone({param:n,value:t,op:"a"})}appendAll(n){const t=[];return Object.keys(n).forEach(r=>{const o=n[r];Array.isArray(o)?o.forEach(i=>{t.push({param:r,value:i,op:"a"})}):t.push({param:r,value:o,op:"a"})}),this.clone(t)}set(n,t){return this.clone({param:n,value:t,op:"s"})}delete(n,t){return this.clone({param:n,value:t,op:"d"})}toString(){return this.init(),this.keys().map(n=>{const t=this.encoder.encodeKey(n);return this.map.get(n).map(r=>t+"="+this.encoder.encodeValue(r)).join("&")}).filter(n=>""!==n).join("&")}clone(n){const t=new pr({encoder:this.encoder});return t.cloneFrom=this.cloneFrom||this,t.updates=(this.updates||[]).concat(n),t}init(){null===this.map&&(this.map=new Map),null!==this.cloneFrom&&(this.cloneFrom.init(),this.cloneFrom.keys().forEach(n=>this.map.set(n,this.cloneFrom.map.get(n))),this.updates.forEach(n=>{switch(n.op){case"a":case"s":const t=("a"===n.op?this.map.get(n.param):void 0)||[];t.push(Zc(n.value)),this.map.set(n.param,t);break;case"d":if(void 0===n.value){this.map.delete(n.param);break}{let r=this.map.get(n.param)||[];const o=r.indexOf(Zc(n.value));-1!==o&&r.splice(o,1),r.length>0?this.map.set(n.param,r):this.map.delete(n.param)}}}),this.cloneFrom=this.updates=null)}}class cU{constructor(){this.map=new Map}set(n,t){return this.map.set(n,t),this}get(n){return this.map.has(n)||this.map.set(n,n.defaultValue()),this.map.get(n)}delete(n){return this.map.delete(n),this}has(n){return this.map.has(n)}keys(){return this.map.keys()}}function aM(e){return typeof ArrayBuffer<"u"&&e instanceof ArrayBuffer}function lM(e){return typeof Blob<"u"&&e instanceof Blob}function cM(e){return typeof FormData<"u"&&e instanceof FormData}class na{constructor(n,t,r,o){let i;if(this.url=t,this.body=null,this.reportProgress=!1,this.withCredentials=!1,this.responseType="json",this.method=n.toUpperCase(),function uU(e){switch(e){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}(this.method)||o?(this.body=void 0!==r?r:null,i=o):i=r,i&&(this.reportProgress=!!i.reportProgress,this.withCredentials=!!i.withCredentials,i.responseType&&(this.responseType=i.responseType),i.headers&&(this.headers=i.headers),i.context&&(this.context=i.context),i.params&&(this.params=i.params),this.transferCache=i.transferCache),this.headers||(this.headers=new $t),this.context||(this.context=new cU),this.params){const s=this.params.toString();if(0===s.length)this.urlWithParams=t;else{const a=t.indexOf("?");this.urlWithParams=t+(-1===a?"?":ad.set(g,n.setHeaders[g]),l)),n.setParams&&(c=Object.keys(n.setParams).reduce((d,g)=>d.set(g,n.setParams[g]),c)),new na(t,r,i,{params:c,headers:l,context:u,reportProgress:a,responseType:o,withCredentials:s})}}var gr=function(e){return e[e.Sent=0]="Sent",e[e.UploadProgress=1]="UploadProgress",e[e.ResponseHeader=2]="ResponseHeader",e[e.DownloadProgress=3]="DownloadProgress",e[e.Response=4]="Response",e[e.User=5]="User",e}(gr||{});class Xp{constructor(n,t=200,r="OK"){this.headers=n.headers||new $t,this.status=void 0!==n.status?n.status:t,this.statusText=n.statusText||r,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}}class Yc extends Xp{constructor(n={}){super(n),this.type=gr.ResponseHeader}clone(n={}){return new Yc({headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class Gr extends Xp{constructor(n={}){super(n),this.type=gr.Response,this.body=void 0!==n.body?n.body:null}clone(n={}){return new Gr({body:void 0!==n.body?n.body:this.body,headers:n.headers||this.headers,status:void 0!==n.status?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}}class _i extends Xp{constructor(n){super(n,0,"Unknown Error"),this.name="HttpErrorResponse",this.ok=!1,this.message=this.status>=200&&this.status<300?`Http failure during parsing for ${n.url||"(unknown url)"}`:`Http failure response for ${n.url||"(unknown url)"}: ${n.status} ${n.statusText}`,this.error=n.error||null}}function Jp(e,n){return{body:n,headers:e.headers,context:e.context,observe:e.observe,params:e.params,reportProgress:e.reportProgress,responseType:e.responseType,withCredentials:e.withCredentials,transferCache:e.transferCache}}let Kp=(()=>{class e{constructor(t){this.handler=t}request(t,r,o={}){let i;if(t instanceof na)i=t;else{let l,c;l=o.headers instanceof $t?o.headers:new $t(o.headers),o.params&&(c=o.params instanceof pr?o.params:new pr({fromObject:o.params})),i=new na(t,r,void 0!==o.body?o.body:null,{headers:l,context:o.context,params:c,reportProgress:o.reportProgress,responseType:o.responseType||"json",withCredentials:o.withCredentials,transferCache:o.transferCache})}const s=F(i).pipe(ei(l=>this.handler.handle(l)));if(t instanceof na||"events"===o.observe)return s;const a=s.pipe(rn(l=>l instanceof Gr));switch(o.observe||"body"){case"body":switch(i.responseType){case"arraybuffer":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof ArrayBuffer))throw new Error("Response is not an ArrayBuffer.");return l.body}));case"blob":return a.pipe(K(l=>{if(null!==l.body&&!(l.body instanceof Blob))throw new Error("Response is not a Blob.");return l.body}));case"text":return a.pipe(K(l=>{if(null!==l.body&&"string"!=typeof l.body)throw new Error("Response is not a string.");return l.body}));default:return a.pipe(K(l=>l.body))}case"response":return a;default:throw new Error(`Unreachable: unhandled observe type ${o.observe}}`)}}delete(t,r={}){return this.request("DELETE",t,r)}get(t,r={}){return this.request("GET",t,r)}head(t,r={}){return this.request("HEAD",t,r)}jsonp(t,r){return this.request("JSONP",t,{params:(new pr).append(r,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(t,r={}){return this.request("OPTIONS",t,r)}patch(t,r,o={}){return this.request("PATCH",t,Jp(o,r))}post(t,r,o={}){return this.request("POST",t,Jp(o,r))}put(t,r,o={}){return this.request("PUT",t,Jp(o,r))}static#e=this.\u0275fac=function(r){return new(r||e)(k(qc))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function dM(e,n){return n(e)}function mU(e,n){return(t,r)=>n.intercept(t,{handle:o=>e(o,r)})}const yU=new N(""),ra=new N(""),fM=new N(""),hM=new N("");function _U(){let e=null;return(n,t)=>{null===e&&(e=(A(yU,{optional:!0})??[]).reduceRight(mU,dM));const r=A(Bl),o=r.add();return e(n,t).pipe(Fs(()=>r.remove(o)))}}let pM=(()=>{class e extends qc{constructor(t,r){super(),this.backend=t,this.injector=r,this.chain=null,this.pendingTasks=A(Bl);const o=A(hM,{optional:!0});this.backend=o??t}handle(t){if(null===this.chain){const o=Array.from(new Set([...this.injector.get(ra),...this.injector.get(fM,[])]));this.chain=o.reduceRight((i,s)=>function vU(e,n,t){return(r,o)=>t.runInContext(()=>n(r,i=>e(i,o)))}(i,s,this.injector),dM)}const r=this.pendingTasks.add();return this.chain(t,o=>this.backend.handle(o)).pipe(Fs(()=>this.pendingTasks.remove(r)))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Wc),k(At))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const EU=/^\)\]\}',?\n/;let mM=(()=>{class e{constructor(t){this.xhrFactory=t}handle(t){if("JSONP"===t.method)throw new M(-2800,!1);const r=this.xhrFactory;return(r.\u0275loadImpl?Oe(r.\u0275loadImpl()):F(null)).pipe(Ft(()=>new Te(i=>{const s=r.build();if(s.open(t.method,t.urlWithParams),t.withCredentials&&(s.withCredentials=!0),t.headers.forEach((_,D)=>s.setRequestHeader(_,D.join(","))),t.headers.has("Accept")||s.setRequestHeader("Accept","application/json, text/plain, */*"),!t.headers.has("Content-Type")){const _=t.detectContentTypeHeader();null!==_&&s.setRequestHeader("Content-Type",_)}if(t.responseType){const _=t.responseType.toLowerCase();s.responseType="json"!==_?_:"text"}const a=t.serializeBody();let l=null;const c=()=>{if(null!==l)return l;const _=s.statusText||"OK",D=new $t(s.getAllResponseHeaders()),I=function IU(e){return"responseURL"in e&&e.responseURL?e.responseURL:/^X-Request-URL:/m.test(e.getAllResponseHeaders())?e.getResponseHeader("X-Request-URL"):null}(s)||t.url;return l=new Yc({headers:D,status:s.status,statusText:_,url:I}),l},u=()=>{let{headers:_,status:D,statusText:I,url:w}=c(),x=null;204!==D&&(x=typeof s.response>"u"?s.responseText:s.response),0===D&&(D=x?200:0);let V=D>=200&&D<300;if("json"===t.responseType&&"string"==typeof x){const Z=x;x=x.replace(EU,"");try{x=""!==x?JSON.parse(x):null}catch(Ie){x=Z,V&&(V=!1,x={error:Ie,text:x})}}V?(i.next(new Gr({body:x,headers:_,status:D,statusText:I,url:w||void 0})),i.complete()):i.error(new _i({error:x,headers:_,status:D,statusText:I,url:w||void 0}))},d=_=>{const{url:D}=c(),I=new _i({error:_,status:s.status||0,statusText:s.statusText||"Unknown Error",url:D||void 0});i.error(I)};let g=!1;const m=_=>{g||(i.next(c()),g=!0);let D={type:gr.DownloadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),"text"===t.responseType&&s.responseText&&(D.partialText=s.responseText),i.next(D)},v=_=>{let D={type:gr.UploadProgress,loaded:_.loaded};_.lengthComputable&&(D.total=_.total),i.next(D)};return s.addEventListener("load",u),s.addEventListener("error",d),s.addEventListener("timeout",d),s.addEventListener("abort",d),t.reportProgress&&(s.addEventListener("progress",m),null!==a&&s.upload&&s.upload.addEventListener("progress",v)),s.send(a),i.next({type:gr.Sent}),()=>{s.removeEventListener("error",d),s.removeEventListener("abort",d),s.removeEventListener("load",u),s.removeEventListener("timeout",d),t.reportProgress&&(s.removeEventListener("progress",m),null!==a&&s.upload&&s.upload.removeEventListener("progress",v)),s.readyState!==s.DONE&&s.abort()}})))}static#e=this.\u0275fac=function(r){return new(r||e)(k(Sb))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();const ng=new N("XSRF_ENABLED"),vM=new N("XSRF_COOKIE_NAME",{providedIn:"root",factory:()=>"XSRF-TOKEN"}),yM=new N("XSRF_HEADER_NAME",{providedIn:"root",factory:()=>"X-XSRF-TOKEN"});class _M{}let TU=(()=>{class e{constructor(t,r,o){this.doc=t,this.platform=r,this.cookieName=o,this.lastCookieString="",this.lastToken=null,this.parseCount=0}getToken(){if("server"===this.platform)return null;const t=this.doc.cookie||"";return t!==this.lastCookieString&&(this.parseCount++,this.lastToken=yb(t,this.cookieName),this.lastCookieString=t),this.lastToken}static#e=this.\u0275fac=function(r){return new(r||e)(k(ft),k(Sr),k(vM))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function AU(e,n){const t=e.url.toLowerCase();if(!A(ng)||"GET"===e.method||"HEAD"===e.method||t.startsWith("http://")||t.startsWith("https://"))return n(e);const r=A(_M).getToken(),o=A(yM);return null!=r&&!e.headers.has(o)&&(e=e.clone({headers:e.headers.set(o,r)})),n(e)}var mr=function(e){return e[e.Interceptors=0]="Interceptors",e[e.LegacyInterceptors=1]="LegacyInterceptors",e[e.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",e[e.NoXsrfProtection=3]="NoXsrfProtection",e[e.JsonpSupport=4]="JsonpSupport",e[e.RequestsMadeViaParent=5]="RequestsMadeViaParent",e[e.Fetch=6]="Fetch",e}(mr||{});const CM=new N("LEGACY_INTERCEPTOR_FN");class LU{constructor(){this.name="",this.email="",this.message=""}}let SM=(()=>{class e{constructor(t){this.httpClient=t}postContactForm(t){return this.httpClient.post(`${ye_apiBaseUrl}contact`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Kp))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})();function VU(e,n){if(1&e){const t=Fe();h(0,"form",5,6),R("ngSubmit",function(){return re(t),oe(P().submit())}),h(2,"div",7)(3,"label",8),f(4,"Name "),h(5,"span",9),f(6,"*"),p()(),h(7,"input",10),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.name=o)}),p()(),h(8,"div",7)(9,"label",11),f(10,"Email address "),h(11,"span",9),f(12,"*"),p()(),h(13,"input",12),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.email=o)}),p()(),h(14,"div",7)(15,"label",13),f(16,"Message "),h(17,"span",9),f(18,"*"),p()(),h(19,"textarea",14),R("ngModelChange",function(o){return re(t),oe(P().contactViewModel.message=o)}),p()(),h(20,"button",15),f(21,"Submit"),p()()}if(2&e){const t=Gf(1),r=P();C(7),E("ngModel",r.contactViewModel.name),C(6),E("ngModel",r.contactViewModel.email),C(6),E("ngModel",r.contactViewModel.message),C(1),E("disabled",!t.valid||r.enableFormCountDown>0)}}function jU(e,n){1&e&&(h(0,"p"),f(1,"Thanks for your message."),p())}function HU(e,n){1&e&&(h(0,"p",16),f(1,"Something went wrong. Please try again later."),p())}let UU=(()=>{class e{constructor(t){this.contactService=t,this.contactViewModel=new LU,this.success=!1,this.error=!1,this.enableFormCountDown=100,this.intervalId=null}ngOnInit(){this.intervalId=setInterval(()=>{this.enableFormCountDown-=1,0===this.enableFormCountDown&&clearInterval(this.intervalId)},50)}ngOnDestroy(){this.intervalId&&clearInterval(this.intervalId)}submit(){this.contactService.postContactForm(this.contactViewModel).subscribe({next:t=>{console.log("Submitted form"),this.success=!0},error:t=>{console.error(t),this.error=!0},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(SM))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-contact-component"]],standalone:!0,features:[Ot],decls:6,vars:3,consts:[[1,"container"],[1,"mb-4"],["method","post",3,"ngSubmit",4,"ngIf"],[4,"ngIf"],["class","text-danger",4,"ngIf"],["method","post",3,"ngSubmit"],["contactForm","ngForm"],[1,"mb-3"],["for","Name"],[1,"required"],["type","text","id","Name","name","Name","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Email"],["type","email","id","Email","name","Email","email","","required","",1,"form-control",3,"ngModel","ngModelChange"],["for","Message"],["rows","7","id","Message","name","Message","required","",1,"form-control",3,"ngModel","ngModelChange"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"text-danger"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Contact"),p(),q(3,VU,22,4,"form",2)(4,jU,2,0,"p",3)(5,HU,2,0,"p",4),p()),2&r&&(C(3),E("ngIf",!o.success&&!o.error),C(1),E("ngIf",o.success),C(1),E("ngIf",o.error))},dependencies:[uc,zc,Bc,pi,Rc,Oc,yi,Gc,ta,vi]})}return e})();const TM=()=>["/pro"];let BU=(()=>{class e{scrollToAnchor(t){return document.querySelector(t)?.scrollIntoView(!0),!1}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-features-component"]],standalone:!0,features:[Ot],decls:131,vars:4,consts:[[1,"container"],[1,"mb-4"],["id","coveragequota"],[1,"pro-text"],["href","https://en.wikipedia.org/wiki/Code_coverage","target","_blank"],[1,"fa-solid","fa-arrow-up-right-from-square"],[3,"routerLink"],[1,"pro-button","pro-button-tiny"],["loading","lazy","srcset","resources/features/quota@1x.webp 1x, resources/features/quota@2x.webp 2x","src","resources/features/quota1x.webp","alt","Coverage quotas",1,"img-fluid"],["id","coveragehistory",1,"mt-5"],["loading","lazy","srcset","resources/features/history@1x.webp 1x, resources/features/history@2x.webp 2x","src","resources/features/history@1x.webp","alt","Coverage history",1,"img-fluid"],["id","summary",1,"mt-5"],["loading","lazy","srcset","resources/features/summary@1x.webp 1x, resources/features/summary@2x.webp 2x","src","resources/features/summary.webp","alt","Summary table / Overview",1,"img-fluid"],["id","details",1,"mt-5"],["loading","lazy","srcset","resources/features/details@1x.webp 1x, resources/features/details@2x.webp 2x","src","resources/features/details.webp","alt","Details",1,"img-fluid"],["id","metrics",1,"mt-5"],["href","https://github.com/danielpalme/ReportGenerator/wiki/FAQ#which-coverage-tool-supports-which-features-in-the-html-report","target","_blank"],["href","",3,"click"],["loading","lazy","srcset","resources/features/metrics_details@1x.webp 1x, resources/features/metrics_details@2x.webp 2x","src","resources/features/metrics_details.webp","alt","Metrics - Details",1,"img-fluid"],["loading","lazy","srcset","resources/features/metrics_summary@1x.webp 1x, resources/features/metrics_summary@2x.webp 2x","src","resources/features/metrics_summary.webp","alt","Metrics - Summary",1,"img-fluid"],["id","riskhotspots",1,"mt-5"],["href","https://en.wikipedia.org/wiki/Cyclomatic_complexity","target","_blank"],["href","https://modess.io/npath-complexity-cyclomatic-complexity-explained","target","_blank"],["href","https://testing.googleblog.com/2011/02/this-code-is-crap.html","target","_blank"],["loading","lazy","srcset","resources/features/riskhotspots@1x.webp 1x, resources/features/riskhotspots@2x.webp 2x","src","resources/features/riskhotspots.webp","alt","Risk Hotspots",1,"img-fluid"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Features"),p(),h(3,"h2",2),f(4,"Coverage quotas"),p(),h(5,"p"),f(6," The overiew cards provide a quick "),h(7,"span",3),f(8,"overview"),p(),f(9," of your coverage quotas."),y(10,"br"),f(11," You can use them to get a glimpse into the different "),h(12,"a",4),f(13,"coverage metrics"),p(),f(14,"\xa0"),h(15,"a",4),y(16,"i",5),p(),f(17,": "),p(),h(18,"ul")(19,"li"),f(20,"Line coverage"),p(),h(21,"li"),f(22,"Branch coverage"),p(),h(23,"li"),f(24,"Method coverage "),h(25,"a",6)(26,"span",7),f(27,"PRO"),p()()()(),y(28,"img",8)(29,"br"),h(30,"h2",9),f(31,"Coverage history"),p(),h(32,"p"),f(33," The history chart helps you to understand how your coverage quotas are "),h(34,"span",3),f(35,"evolving over time"),p(),f(36,". "),p(),y(37,"img",10)(38,"br"),h(39,"h2",11),f(40,"Summary table / Overview"),p(),h(41,"p"),f(42," The summary table helps you to identify classes with "),h(43,"span",3),f(44,"low test coverage"),p(),f(45,"."),y(46,"br"),f(47," The table offers various "),h(48,"span",3),f(49,"filter and sorting"),p(),f(50," options for quick navigation. "),p(),y(51,"img",12)(52,"br"),h(53,"h2",13),f(54,"Details page"),p(),h(55,"p"),f(56," The details page visualizes your "),h(57,"span",3),f(58,"line and branch coverage"),p(),f(59,". "),p(),h(60,"ul")(61,"li"),f(62,"Colors indicate the coverage status of each line."),p(),h(63,"li"),f(64,"Branch indicators help you to identity uncovered conditions."),p()(),y(65,"img",14)(66,"br"),h(67,"h2",15),f(68,"Metrics"),p(),h(69,"p"),f(70," Depending on your "),h(71,"a",16),f(72,"coverage tool"),p(),f(73,", metrics are provided to get further insigths in your "),h(74,"span",3),f(75,"code quality"),p(),f(76,". "),p(),h(77,"ul")(78,"li"),f(79,"The "),h(80,"a",17),R("click",function(){return o.scrollToAnchor("#details")}),f(81,"details page"),p(),f(82," contains information about the metrics of all methods of a class."),p(),h(83,"li"),f(84,"The "),h(85,"a",17),R("click",function(){return o.scrollToAnchor("#summary")}),f(86,"summary table"),p(),f(87," shows the lowest metrics of all methods of a class "),h(88,"a",6)(89,"span",7),f(90,"PRO"),p()()()(),h(91,"b"),f(92,"Details page"),p(),y(93,"br")(94,"img",18)(95,"br")(96,"br"),h(97,"b"),f(98,"Summary table"),p(),y(99,"br")(100,"img",19)(101,"br"),h(102,"h2",20),f(103,"Risk Hotspots"),p(),h(104,"p"),f(105," Based on the "),h(106,"a",17),R("click",function(){return o.scrollToAnchor("#metrics")}),f(107,"metrics"),p(),f(108," you get a list of potential risk hotspots."),y(109,"br"),f(110," The following metrics are analyzed if available, the warning thresholds are configurable: "),p(),h(111,"ul")(112,"li")(113,"a",21),f(114,"Cyclomatic complexity"),p(),f(115,"\xa0"),h(116,"a",21),y(117,"i",5),p()(),h(118,"li")(119,"a",22),f(120,"NPath complexity"),p(),f(121,"\xa0"),h(122,"a",22),y(123,"i",5),p()(),h(124,"li")(125,"a",23),f(126,"Crap score"),p(),f(127,"\xa0"),h(128,"a",23),y(129,"i",5),p()()(),y(130,"img",24),p()),2&r&&(C(25),E("routerLink",ee(2,TM)),C(63),E("routerLink",ee(3,TM)))},dependencies:[Mn]})}return e})();const Gt={dotnetSDKVersion:"8.x",majorVersion:"5",version:"5.2.0"},$U=()=>["/usage"];let GU=(()=>{class e{constructor(){this.versions=Gt}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-getstarted"]],standalone:!0,features:[Ot],decls:72,vars:6,consts:[[1,"container"],[1,"mb-4"],[3,"routerLink"],["id","net",1,"mt-5"],["href","https://github.com/coverlet-coverage/coverlet"],["href","https://github.com/SteveGilham/altcover"],[1,"text-dark","bg-light","p-2","border"],["id","java",1,"mt-5"],["href","https://github.com/jacoco/jacoco"],["id","nodejs",1,"mt-5"],["href","https://github.com/istanbuljs/nyc"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Get started"),p(),h(3,"h2"),f(4,"General"),p(),h(5,"p"),f(6,"In general you need a tool that instruments your test code and collects coverage information."),y(7,"br"),f(8,"This information is typically stored in a XML file (e.g. in Cobertura format)."),y(9,"br"),h(10,"em"),f(11,"ReportGenerator"),p(),f(12," uses this file and generates a report in HTML format (other formats are available)."),p(),h(13,"p"),f(14,"Use the online "),h(15,"a",2),f(16,"configuration tool"),p(),f(17," to get started quickly."),p(),h(18,"h2",3),f(19,".NET"),p(),h(20,"p"),f(21,"For .NET you can use "),h(22,"a",4),f(23,"coverlet"),p(),f(24," or "),h(25,"a",5),f(26,"altcover"),p(),f(27," for instrumenting your test code."),p(),h(28,"p"),f(29,"After adding the dependencies to your project, you can execute your tests and generate the coverage report."),p(),h(30,"p")(31,"strong"),f(32,"Add dependencies to your "),h(33,"code"),f(34,"*.csproj"),p(),f(35," file:"),p()(),h(36,"pre",6),f(37),p(),h(38,"p")(39,"strong"),f(40,"Execute tests and create coverage report"),p()(),h(41,"pre",6),f(42),p(),h(43,"h2",7),f(44,"Java"),p(),h(45,"p"),f(46,"For Java you can use "),h(47,"a",8),f(48,"JaCoCo"),p(),f(49," for instrumenting your test code.\nAfter adding JaCoCo to your project (here with Maven), you can execute your tests and generate the coverage report."),p(),h(50,"p")(51,"strong"),f(52,"Add dependencies to your "),h(53,"code"),f(54,"pom.xml"),p(),f(55," file:"),p()(),h(56,"pre",6),f(57,"\n \n \n \n org.jacoco\n jacoco-maven-plugin\n 0.8.6\n \n \n \n prepare-agent\n \n \n \n report\n prepare-package\n \n report\n \n \n \n \n \n \n \n \n \n org.jacoco\n jacoco-maven-plugin\n \n \n \n report\n \n \n \n \n \n \n\n"),p(),h(58,"p")(59,"strong"),f(60,"Execute tests and create coverage report"),p()(),h(61,"pre",6),f(62),p(),h(63,"h2",9),f(64,"NodeJS"),p(),h(65,"p"),f(66,"For NodeJS you can use "),h(67,"a",10),f(68,"Istanbul"),p(),f(69," for instrumenting your test code.\nAfter installing Istanbul, you can execute your tests and generate the coverage report."),p(),h(70,"pre",6),f(71),p()()),2&r&&(C(15),E("routerLink",ee(5,$U)),C(22),Hn('\n \n runtime; build; native; contentfiles; analyzers; buildtransitive\n all\n \n \n \n \n all\n runtime; build; native; contentfiles; analyzers\n \n\n'),C(5),Hn('dotnet test --collect:"XPlat Code Coverage"\n"%UserProfile%\\.nuget\\packages\\reportgenerator\\',o.versions.version,'\\tools\\net8.0\\ReportGenerator.exe" -reports:*\\TestResults\\*\\coverage.cobertura.xml -targetdir:coveragereport\n'),C(20),Hn("mvn test jacoco:report\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:target\\site\\jacoco\\jacoco.xml -targetdir:coveragereport -sourcedirs:src\\main\\java\n"),C(9),Hn("npm i nyc --save-dev\nnyc --reporter=coberatura mocha\n\ndotnet tool update dotnet-reportgenerator-globaltool --tool-path tools --version ",o.versions.version,"\ntools\\reportgenerator -reports:coverage/cobertura-coverage.xml -targetdir:coveragereport\n"))},dependencies:[Mn]})}return e})(),AM=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-testimonials"]],standalone:!0,features:[Ot],decls:30,vars:0,consts:[[1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"container"],[1,"text-center"],[1,"row","mt-5"],[1,"col","text-center"],[1,"fa-brands","fa-microsoft","h1","text-secondary"],["href","https://github.com/dotnet/runtime/blob/main/docs/workflow/building/libraries/code-coverage.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-google","h1","text-secondary"],["href","https://github.com/GoogleCloudPlatform/iam-windows-authenticator","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"fa-brands","fa-aws","h1","text-secondary"],["href","https://github.com/aws/aws-encryption-sdk-dafny/blob/mainline/aws-encryption-sdk-net/README.md","target","_blank",1,"text-dark","d-none","d-lg-block"],[1,"col","text-center","d-none","d-lg-block"],[1,"fa-solid","fa-heart","h1","text-secondary"],["href","https://github.com/danielpalme/ReportGenerator/network/dependents","target","_blank",1,"text-dark"],["href","https://www.nuget.org/packages?q=ReportGenerator+danielpalme","target","_blank",1,"btn","btn-outline-secondary"],[1,"fa-solid","fa-download"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"h2",2),f(3,"Trusted by"),p(),h(4,"div",3)(5,"div",4),y(6,"i",5)(7,"br"),h(8,"a",6),f(9,".NET Runtime"),p()(),h(10,"div",4),y(11,"i",7)(12,"br"),h(13,"a",8),f(14,"Google Cloud"),p()(),h(15,"div",4),y(16,"i",9)(17,"br"),h(18,"a",10),f(19,"AWS Encryption SDK"),p()(),h(20,"div",11),y(21,"i",12)(22,"br"),h(23,"a",13),f(24,"Many more"),p()()(),h(25,"div",3)(26,"div",4)(27,"a",14),y(28,"i",15),f(29," Over 60 million downloads on Nuget"),p()()()()())},encapsulation:2})}return e})();const zU=()=>["/pro"],qU=()=>["/usage"],WU=()=>["/getstarted"],ZU=()=>["/features"];let YU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-home"]],standalone:!0,features:[Ot],decls:114,vars:8,consts:[[1,"container"],[1,"row"],[1,"col-4","col-md-3"],["src","resources/logo.svg","alt","Logo ReportGenerator",1,"img-fluid"],[1,"col-xs-12","col-md-9","ps-4"],[1,"mt-5"],[1,"line","btn-primary"],[1,"mt-4","h5"],[1,"pro-text"],["href","resources/reports/Html/index.html","target","_blank",1,"btn","btn-primary","me-2","mb-2"],[1,"fa-solid","fa-eye"],[1,"row","mt-5"],[1,"col-sm-12","col-md-4"],[1,"icon"],[1,"fa-solid","fa-scale-balanced"],[1,"h5","ms-3","mt-3"],[1,"mt-3"],[3,"routerLink"],[1,"col-sm-12","col-md-4","mt-4","mt-md-0"],[1,"fa-solid","fa-lightbulb"],[1,"fa-solid","fa-plug"],["href","https://github.com/marketplace/actions/reportgenerator","target","_blank"],["href","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator","target","_blank"],[1,"col"],[1,"btn","btn-primary","me-2","mb-2",3,"routerLink"],[1,"fa-solid","fa-wrench"],["href","https://github.com/danielpalme/ReportGenerator","target","_blank",1,"btn","btn-outline-dark","mb-2"],[1,"fa-brands","fa-github"],[1,"container-fluid","mt-5","pt-5","pb-5"],["href","resources/reports/Html/index.html","target","_blank"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"col-sm-12","col-md-6","pb-2"],["href","resources/screenshot1@2x.webp"],["loading","lazy","srcset","resources/screenshot1.webp 1x, resources/screenshot1@2x.webp 2x","src","resources/screenshot1.webp","alt","Screenshot",1,"img-fluid"],[1,"col-sm-12","col-md-6"],["href","resources/screenshot2@2x.webp"],["loading","lazy","srcset","resources/screenshot2.webp 1x, resources/screenshot2@2x.webp 2x","src","resources/screenshot2.webp","alt","Screenshot",1,"img-fluid"]],template:function(r,o){1&r&&(h(0,"section",0)(1,"div",1)(2,"div",2),y(3,"img",3),p(),h(4,"div",4)(5,"h1"),f(6,"ReportGenerator"),p(),h(7,"h2",5),f(8,"Powerful code coverage visualization"),p(),h(9,"div",6),f(10,"\xa0"),p(),h(11,"div",7)(12,"p")(13,"i"),f(14,"ReportGenerator"),p(),f(15," converts "),h(16,"span",8),f(17,"coverage reports"),p(),f(18," generated by coverlet, OpenCover, dotCover, Visual Studio, NCover, Cobertura, JaCoCo, Clover, gcov or lcov into "),h(19,"span",8),f(20,"human readable reports in various formats"),p(),f(21,"."),p(),h(22,"p"),f(23,"The reports show the "),h(24,"span",8),f(25,"coverage quotas"),p(),f(26," and also visualize which lines of your source code have been covered."),p(),h(27,"p")(28,"a",9),y(29,"i",10),f(30," Browse example report"),p()()()()(),h(31,"div",11)(32,"div",12)(33,"div",13),y(34,"i",14),p(),h(35,"span",15),f(36,"Open source"),p(),h(37,"p",16)(38,"i"),f(39,"ReportGenerator"),p(),f(40," is open source under the permissive Apache License."),p(),h(41,"p"),f(42,"It's free to use."),y(43,"br"),f(44,"The "),h(45,"a",17),f(46,"PRO"),p(),f(47," version offers additional features."),p()(),h(48,"div",18)(49,"div",13),y(50,"i",19),p(),h(51,"span",15),f(52,"Easy to use"),p(),h(53,"p",16)(54,"i"),f(55,"ReportGenerator"),p(),f(56," is a command line tool which only requires a "),h(57,"a",17),f(58,"few parameters"),p(),f(59,"."),p(),h(60,"p"),f(61,"Integration into your build pipeline will only take a couple of minutes."),p()(),h(62,"div",18)(63,"div",13),y(64,"i",20),p(),h(65,"span",15),f(66,"Integration"),p(),h(67,"p",16)(68,"i"),f(69,"ReportGenerator"),p(),f(70," works on Windows, Linux and macOS."),p(),h(71,"p"),f(72,"Support for "),h(73,"a",21),f(74,"GitHub actions"),p(),f(75," and "),h(76,"a",22),f(77,"Azure DevOps"),p(),f(78," is available."),p()()(),h(79,"div",11)(80,"div",23)(81,"a",24),y(82,"i",25),f(83," Learn how to use"),p(),h(84,"a",26),y(85,"i",27),f(86," GitHub"),p()()()(),y(87,"app-testimonials"),h(88,"section",28)(89,"div",0)(90,"h2"),f(91,"Screenshots"),p(),h(92,"p"),f(93,"The screenshots show two snippets of the generated reports."),p(),h(94,"p"),f(95," Have a look the "),h(96,"a",17),f(97,"features page"),p(),f(98," to explore the elements in a coverage report or "),h(99,"a",29),f(100,"browse the example report"),p(),f(101,". "),y(102,"br"),f(103," You can also download "),h(104,"a",30),f(105,"sample reports"),p(),f(106," of all supported output formats."),p(),h(107,"div",1)(108,"div",31)(109,"a",32),y(110,"img",33),p()(),h(111,"div",34)(112,"a",35),y(113,"img",36),p()()()()()),2&r&&(C(45),E("routerLink",ee(4,zU)),C(12),E("routerLink",ee(5,qU)),C(24),E("routerLink",ee(6,WU)),C(15),E("routerLink",ee(7,ZU)))},dependencies:[Mn,AM],styles:[".h5[_ngcontent-%COMP%]{font-weight:300}section[_ngcontent-%COMP%]:first-of-type{padding-top:120px;min-height:calc(100vh - 171px)}.icon[_ngcontent-%COMP%]{background-color:#2e89df;background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%);height:50px;width:50px;border-radius:8px;text-align:center;color:#fff;line-height:50px;font-size:1.5rem;display:inline-block}@media (max-width: 767px){section[_ngcontent-%COMP%]:first-of-type{padding-top:40px}}"]})}return e})(),QU=(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-not-found"]],standalone:!0,features:[Ot],decls:5,vars:0,consts:[[1,"container"],[1,"mb-4"],[1,"fa-solid","fa-triangle-exclamation","fs-1","me-4"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Not found"),p(),y(3,"i",2),f(4," The requested page does not exist.\n"),p())}})}return e})();class xM{constructor(){this.error=null,this.licenses=[]}}class XU{constructor(){this.error=null,this.isSponsor=!1,this.license=null}}let NM=(()=>{class e{initCodeFlow(){const o=`https://github.com/login/oauth/authorize?response_type=code&client_id=ecab9484932b59a12fd4&state=${this.createAndSaveNonce()}&redirect_uri=${window.location.origin}/pro`;console.log("Redirecting to: "+o),location.href=o}validateStateAndExtractCode(){let t=location.href;const r=t.indexOf("?");r>-1&&(t=t.substring(r+1));const o=this.parseQueryString(t);return o.state&&o.code&&this.validateNonce(o.state)?o.code:null}createAndSaveNonce(){const t=this.createNonce();return typeof window.localStorage<"u"&&localStorage.setItem("nonce",t),t}validateNonce(t){let r;return typeof window.localStorage<"u"&&(r=localStorage.getItem("nonce"),localStorage.removeItem("nonce")),r&&0!==r.length?r===t||(console.error("Validating nonce failed. Values do not match.",r,t),!1):(console.error("Validating nonce failed. No saved nonce available.",r,t),!1)}createNonce(){const t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~";let r=45,o="";const i=typeof self>"u"?null:self.crypto||self.msCrypto;if(i){let a=new Uint8Array(r);i.getRandomValues(a),a.map||(a.map=Array.prototype.map);const l=[];for(var s=0;s0&&(c=decodeURIComponent(a),u=decodeURIComponent(l),"/"===c.substring(0,1)&&(c=c.substring(1)),r[c]=u);return r}base64UrlEncode(t){return btoa(t).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),RM=(()=>{class e{constructor(t){this.httpClient=t}getLicense(t){return this.httpClient.get(`${ye_apiBaseUrl}reportgenerator/license?code=${encodeURIComponent(t)}`)}getTrialLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/triallicense`,t)}getPaddleLicense(t){return this.httpClient.post(`${ye_apiBaseUrl}reportgenerator/paddlelicense`,t)}static#e=this.\u0275fac=function(r){return new(r||e)(k(Kp))};static#t=this.\u0275prov=O({token:e,factory:e.\u0275fac})}return e})(),JU=(()=>{class e{constructor(){this.isActive=!1,this.isActive=new Date["/contact"];function tB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(2);C(2),be(t.license.error),C(3),E("routerLink",ee(2,rg))}}function nB(e,n){1&e&&(h(0,"div")(1,"p"),f(2,"Please become a "),h(3,"a",74),f(4,"GitHub sponsor"),p(),f(5," first."),p()())}function rB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function oB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function iB(e,n){if(1&e){const t=Fe();h(0,"div")(1,"label",75),f(2,"Thank you for becoming a sponsor. Here's your license:"),p(),h(3,"textarea",76),f(4),p(),h(5,"button",77),R("click",function(){return re(t),oe(P(2).copy())}),q(6,rB,3,0,"span",34)(7,oB,3,0,"span",34),p()()}if(2&e){const t=P(2);C(4),be(t.license.license),C(2),E("ngIf",!t.licenseCopied),C(1),E("ngIf",t.licenseCopied)}}function sB(e,n){if(1&e&&(h(0,"div",20),q(1,tB,8,3,"div",34)(2,nB,6,0,"div",34)(3,iB,8,3,"div",34),p()),2&e){const t=P();C(1),E("ngIf",t.license.error),C(1),E("ngIf",!t.license.error&&!t.license.isSponsor),C(1),E("ngIf",!t.license.error&&t.license.isSponsor&&t.license.license)}}const OM=e=>({active:e});function aB(e,n){if(1&e){const t=Fe();h(0,"span",80)(1,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!1)}),y(2,"i",82),f(3," Annual subscription"),p(),h(4,"span",81),R("click",function(){return re(t),oe(P().lifetimeLicense=!0)}),y(5,"i",83),f(6," Lifetime license"),p()()}if(2&e){const t=P();C(1),E("ngClass",Is(2,OM,!t.lifetimeLicense)),C(3),E("ngClass",Is(4,OM,t.lifetimeLicense))}}function lB(e,n){if(1&e){const t=Fe();h(0,"button",103),R("click",function(){return re(t),oe(P(2).requestTrial())}),y(1,"i",25),f(2," Start trial"),p()}2&e&&E("disabled",P(2).trialDisabled)}function cB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function uB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function dB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function fB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("individual"))}),y(1,"i",106),f(2," Buy now"),p()}}function hB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function pB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function gB(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function mB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("team"))}),y(1,"i",106),f(2," Buy now"),p()}}function vB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function yB(e,n){1&e&&(Dt(0),y(1,"i",82),f(2," Annual subscription"),wt())}function _B(e,n){1&e&&(Dt(0),y(1,"i",83),f(2," Lifetime license"),wt())}function CB(e,n){if(1&e){const t=Fe();h(0,"button",105),R("click",function(){return re(t),oe(P(2).openPaddleCheckout("enterprise"))}),y(1,"i",106),f(2," Buy now"),p()}}function DB(e,n){1&e&&(h(0,"button",104),f(1,"Coming soon"),p())}function wB(e,n){if(1&e&&(h(0,"div",2)(1,"div",84)(2,"div",85),y(3,"img",86),h(4,"h4",87),f(5,"Free"),y(6,"br"),f(7,"Trial"),p(),h(8,"p"),y(9,"i",88),f(10," Get full access"),y(11,"br")(12,"i",89),f(13," 10 day trial period "),p(),q(14,lB,3,1,"button",90)(15,cB,2,0,"button",91),p()(),h(16,"div",92)(17,"div",93),y(18,"img",94),h(19,"h4",87),f(20,"Individual"),y(21,"br"),f(22),p(),h(23,"p"),y(24,"i",95),f(25," Per developer license."),y(26,"br"),q(27,uB,3,0,"ng-container",34)(28,dB,3,0,"ng-container",34),p(),q(29,fB,3,0,"button",96)(30,hB,2,0,"button",91),p()(),h(31,"div",97)(32,"div",93),y(33,"img",98),h(34,"h4",87),f(35,"Team"),y(36,"br"),f(37),p(),h(38,"p"),y(39,"i",99),f(40," Up to 10 developers."),y(41,"br"),q(42,pB,3,0,"ng-container",34)(43,gB,3,0,"ng-container",34),p(),q(44,mB,3,0,"button",96)(45,vB,2,0,"button",91),p()(),h(46,"div",100)(47,"div",93),y(48,"img",101),h(49,"h4",87),f(50,"Enterprise"),y(51,"br"),f(52),p(),h(53,"p"),y(54,"i",102),f(55," Unlimited developers."),y(56,"br"),q(57,yB,3,0,"ng-container",34)(58,_B,3,0,"ng-container",34),p(),q(59,CB,3,0,"button",96)(60,DB,2,0,"button",91),p()()()),2&e){const t=P();C(14),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleIndividualLifetimeLicensePrice:t.paddleIndividualLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleTeamLifetimeLicensePrice:t.paddleTeamLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle),C(7),be(t.lifetimeLicense?t.paddleEnterpriseLifetimeLicensePrice:t.paddleEnterpriseLicensePrice),C(5),E("ngIf",!t.lifetimeLicense),C(1),E("ngIf",t.lifetimeLicense),C(1),E("ngIf",t.enablePaddle),C(1),E("ngIf",!t.enablePaddle)}}function bB(e,n){1&e&&(Dt(0),h(1,"div",70)(2,"span",71),f(3,"Loading..."),p()(),h(4,"span",108),f(5,"Your license is being generated. Please wait."),p(),wt())}function EB(e,n){if(1&e&&(h(0,"div")(1,"p"),f(2),p(),h(3,"p"),f(4,"Please try again later or use the "),h(5,"a",18),f(6," contact form"),p(),f(7,"."),p()()),2&e){const t=P(3);C(2),be(t.paddleLicense.error),C(3),E("routerLink",ee(2,rg))}}function IB(e,n){1&e&&(h(0,"span"),y(1,"i",78),f(2," Copy"),p())}function MB(e,n){1&e&&(h(0,"span"),y(1,"i",79),f(2," Copied"),p())}function SB(e,n){if(1&e){const t=Fe();h(0,"div",112)(1,"textarea",113),f(2),p(),h(3,"button",77),R("click",function(){const i=re(t).$implicit;return oe(P(4).copyPaddle(i))}),q(4,IB,3,0,"span",34)(5,MB,3,0,"span",34),p()()}if(2&e){const t=n.$implicit,r=P(4);C(2),be(t),C(2),E("ngIf",-1===r.copiedPaddledLicenses.indexOf(t)),C(1),E("ngIf",r.copiedPaddledLicenses.indexOf(t)>-1)}}function TB(e,n){if(1&e&&(h(0,"div")(1,"label",110),f(2,"Thank you! Please save your license key persistently:"),p(),q(3,SB,6,3,"div",111),p()),2&e){const t=P(3);C(3),E("ngForOf",t.paddleLicense.licenses)}}function AB(e,n){if(1&e&&(h(0,"div",109),q(1,EB,8,3,"div",34)(2,TB,4,1,"div",34),p()),2&e){const t=P(2);C(1),E("ngIf",t.paddleLicense.error),C(1),E("ngIf",!t.paddleLicense.error)}}function xB(e,n){if(1&e&&(h(0,"div",2),q(1,bB,6,0,"ng-container",34)(2,AB,3,2,"div",107),p()),2&e){const t=P();C(1),E("ngIf",t.paddleLicenseRequested&&!t.paddleLicense),C(1),E("ngIf",t.paddleLicense)}}function NB(e,n){1&e&&(h(0,"p")(1,"i"),f(2,"ReportGenerator"),p(),f(3," subscription based licences are provided with a 30 day money back guarantee."),p())}const Ci=()=>["/features"];let RB=(()=>{class e{get lifetimeLicense(){return this._lifetimeLicense}set lifetimeLicense(t){this._lifetimeLicense=t,this.lifetimeLicenseChangeTracked||(this.lifetimeLicenseChangeTracked=!0,this.trackingService.track("Licensetype changed"))}constructor(t,r,o){this.oauthService=t,this.licenseService=r,this.trackingService=o,this.paddleIndividualLicensePrice="US$49",this.paddleTeamLicensePrice="US$149",this.paddleEnterpriseLicensePrice="US$299",this.paddleIndividualLifetimeLicensePrice="US$79",this.paddleTeamLifetimeLicensePrice="US$249",this.paddleEnterpriseLifetimeLicensePrice="US$449",this.licenseRequested=!1,this.licenseCopied=!1,this.license=null,this.enablePaddle=!0,this.trialDisabled=!1,this.requestTrialData={name:"",email:""},this.paddleLicenseRequested=!1,this.paddleLicense=null,this.copiedPaddledLicenses=[],this.self=this,this.lifetimeLicenseChangeTracked=!1,this._lifetimeLicense=!1,window.paddleCheckoutComplete=i=>{this.paddleCheckoutComplete(i)},window.Paddle.Setup({vendor:144162}),window.Paddle.Product.Prices(762579,i=>{this.paddleIndividualLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762580,i=>{this.paddleTeamLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(762581,i=>{this.paddleEnterpriseLicensePrice=i.recurring.price.gross}),window.Paddle.Product.Prices(833943,i=>{this.paddleIndividualLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833944,i=>{this.paddleTeamLifetimeLicensePrice=i.price.gross}),window.Paddle.Product.Prices(833945,i=>{this.paddleEnterpriseLifetimeLicensePrice=i.price.gross})}ngOnInit(){const t=this.oauthService.validateStateAndExtractCode();null!==t?(console.log("Code received",t),this.licenseRequested=!0,this.licenseService.getLicense(t).subscribe({next:r=>{console.log("Received license response"),this.license=r,this.scrollToGithub()},error:r=>{console.error(r),this.license=new XU,this.license.error="Unable to generate license."},complete:()=>console.info("complete")})):console.log("No code available"),location.href.indexOf("?source=trial")>-1&&this.trackingService.track("Trial2Pro"),this.requestTrialModal=new window.bootstrap.Modal("#requestTrialModal");try{this.trialDisabled=null!==window.localStorage.getItem("trialRequested")}catch{}}requestLicense(){this.licenseRequested=!0,this.oauthService.initCodeFlow()}copy(){try{navigator.clipboard.writeText(this.license.license),this.licenseCopied=!0}catch(t){console.error("Failed to copy license",t)}}copyPaddle(t){try{navigator.clipboard.writeText(t),this.copiedPaddledLicenses.push(t)}catch(r){console.error("Failed to copy paddle license",r)}}scrollToGithub(){return document.querySelector("#github").scrollIntoView(!0),!1}scrollToPaddle(){return document.querySelector("#paddle").scrollIntoView(!0),!1}requestTrial(){this.requestTrialModal.show(),this.trackingService.track("Trial-Started")}completeTrial(){console.log("Trial completed"),this.requestTrialModal.hide(),this.paddleLicenseRequested=!0,this.licenseService.getTrialLicense(this.requestTrialData).subscribe({next:t=>{console.log("Received trial license response"),this.paddleLicense=t,this.scrollToPaddle();try{window.localStorage.setItem("trialRequested","true"),this.trialDisabled=!0}catch{}this.trackingService.track("Trial-Completed")},error:t=>{console.error(t),this.paddleLicense=new xM,this.paddleLicense.error="Unable to generate trial license."},complete:()=>{console.info("complete"),this.requestTrialData={name:"",email:""}}})}openPaddleCheckout(t){"enterprise"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833945:762581,successCallback:"paddleCheckoutComplete"}):"team"===t?window.Paddle.Checkout.open({product:this.lifetimeLicense?833944:762580,successCallback:"paddleCheckoutComplete"}):window.Paddle.Checkout.open({product:this.lifetimeLicense?833943:762579,successCallback:"paddleCheckoutComplete"}),this.trackingService.track("Paddle-Started",{props:{product:t,lifetimeLicense:this.lifetimeLicense}})}paddleCheckoutComplete(t){console.log("Checkout completed",t),this.paddleLicenseRequested=!0,this.licenseService.getPaddleLicense(t).subscribe({next:r=>{console.log("Received paddle license response"),this.paddleLicense=r,this.scrollToPaddle(),this.trackingService.track("Paddle-Completed",{props:{product:t.product.name,lifetimeLicense:this.lifetimeLicense}})},error:r=>{console.error(r),this.paddleLicense=new xM,this.paddleLicense.error="Unable to generate Paddle license."},complete:()=>console.info("complete")})}static#e=this.\u0275fac=function(r){return new(r||e)(S(NM),S(RM),S(JU))};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-pro-component"]],standalone:!0,features:[Ot],decls:229,vars:25,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-xs-12","col-md-6","order-2","order-md-1"],[1,"table"],["scope","col"],["scope","col",1,"text-center"],[1,"pro-button"],["scope","row"],["fragment","metrics","title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-info","text-secondary"],[1,"text-center"],[1,"fa-solid","fa-circle-check","text-secondary"],["fragment","riskhotspots","title","Show feature details",3,"routerLink"],["title","Show feature details",3,"routerLink"],[1,"fa-solid","fa-circle-check","pro-text"],[1,"col-xs-12","col-md-6","order-1","order-md-2"],["href","",3,"click"],[3,"routerLink"],["id","github",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"col-xs-12","col-md-6","pb-3"],[1,"fs-2","me-3","number"],["href","https://github.com/sponsors/danielpalme","target","_blank",1,"btn","btn-outline-dark"],[1,"fa-solid","fa-heart","githubheart"],["type","button",1,"btn","btn-primary","me-3",3,"disabled","click"],[1,"fa-solid","fa-rocket"],["class","spinner-border text-info","role","status",4,"ngIf"],["class","col-md-6 pb-3 d-none d-lg-block","style","position: relative;",4,"ngIf"],["class","col-xs-12 col-md-6 pb-3",4,"ngIf"],["id","paddle",1,"container-fluid","mt-5","pt-5","pb-5","bg-light"],[1,"text-center","mb-3"],["class","togglecontainer",4,"ngIf"],["class","row",4,"ngIf"],[1,"mt-5"],[4,"ngIf"],[1,"container-fluid","mt-4","pt-5","pb-5","bg-light"],[1,"container","text-center"],[1,"row","mt-5",2,"max-width","550px","margin","auto"],["href","https://twitter.com/fredyfx/status/1642807795828543488","target","_blank"],["loading","lazy","src","resources/twitter_light.webp","alt","Testimonial",1,"img-fluid"],["id","faq",1,"container","mt-5","pt-5","pb-5"],["id","accordionFaq",1,"accordion","accordion-flush"],[1,"accordion-item"],["id","headingOne",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseOne","aria-expanded","true","aria-controls","collapseOne",1,"accordion-button"],["id","collapseOne","aria-labelledby","headingOne","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse","show"],[1,"accordion-body"],["id","headingTwo",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseTwo","aria-expanded","false","aria-controls","collapseTwo",1,"accordion-button","collapsed"],["id","collapseTwo","aria-labelledby","headingTwo","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["id","headingThree",1,"accordion-header"],["type","button","data-bs-toggle","collapse","data-bs-target","#collapseThree","aria-expanded","false","aria-controls","collapseThree",1,"accordion-button","collapsed"],["id","collapseThree","aria-labelledby","headingThree","data-bs-parent","#accordionFaq",1,"accordion-collapse","collapse"],["tabindex","-1","id","requestTrialModal",1,"modal"],[1,"modal-dialog"],[1,"modal-content"],["method","post",3,"ngSubmit"],["trialForm","ngForm"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal","aria-label","Close",1,"btn-close"],[1,"modal-body"],[1,"form-floating","mb-3"],["type","text","id","name","name","name","required","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],["for","floatingInput"],[1,"required"],["type","email","id","email","name","email","required","","email","","maxlength","150",1,"form-control",3,"ngModel","ngModelChange"],[1,"modal-footer"],["type","button","data-bs-dismiss","modal",1,"btn","btn-secondary"],["type","submit",1,"btn","btn-primary",3,"disabled"],["role","status",1,"spinner-border","text-info"],[1,"visually-hidden"],[1,"col-md-6","pb-3","d-none","d-lg-block",2,"position","relative"],[1,"fa-solid","fa-heart","githubheartlarge"],["href","https://github.com/sponsors/danielpalme","target","_blank"],["for","licensetext"],["id","licensetext","rows","5","readonly","",1,"form-control","mt-2"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"],[1,"togglecontainer"],[1,"option",3,"ngClass","click"],[1,"fa-solid","fa-rotate-right"],[1,"fa-solid","fa-infinity"],[1,"col-xs-12","col-md-6","col-lg-3","mt-0","pb-3","text-center","paddle-container"],[1,"paddle","trial"],["src","resources/trial.svg","alt","Trial",1,"img-fluid"],[1,"mt-3"],[1,"fa-solid","fa-magnifying-glass"],[1,"fa-solid","fa-calendar-days"],["type","button","class","btn btn-primary",3,"disabled","click",4,"ngIf"],["type","button","class","btn btn-primary","disabled","",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-md-0","pb-3","text-center","paddle-container"],[1,"paddle"],["src","resources/individual.svg","alt","Individual",1,"img-fluid"],[1,"fa-solid","fa-user"],["type","button","class","btn btn-primary",3,"click",4,"ngIf"],[1,"col-xs-12","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/team.svg","alt","Team",1,"img-fluid"],[1,"fa-solid","fa-users"],[1,"col-xs-6","col-md-6","col-lg-3","mt-4","mt-lg-0","pb-3","text-center","paddle-container"],["src","resources/enterprise.svg","alt","Enterprise",1,"img-fluid"],[1,"fa-solid","fa-industry"],["type","button",1,"btn","btn-primary",3,"disabled","click"],["type","button","disabled","",1,"btn","btn-primary"],["type","button",1,"btn","btn-primary",3,"click"],[1,"fa-solid","fa-cart-shopping"],["class","col-xs-12 col-md-6",4,"ngIf"],[2,"position","relative","left","35px","top","-20px"],[1,"col-xs-12","col-md-6"],["for","paddlelicensetext"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-2"],["id","paddlelicensetext","rows","5","readonly","",1,"form-control"]],template:function(r,o){if(1&r&&(h(0,"div",0)(1,"h1",1),f(2,"PRO"),p(),h(3,"div",2)(4,"div",3)(5,"table",4)(6,"thead")(7,"tr"),y(8,"th",5),h(9,"th",6),f(10,"Free"),p(),h(11,"th",6)(12,"span",7),f(13,"PRO"),p()()()(),h(14,"tbody")(15,"tr")(16,"th",8),f(17,"Metrics "),h(18,"a",9),y(19,"i",10),p()(),h(20,"td",11),y(21,"i",12),p(),h(22,"td",11),y(23,"i",12),p()(),h(24,"tr")(25,"th",8),f(26,"Risk Hotspots "),h(27,"a",13),y(28,"i",10),p()(),h(29,"td",11),y(30,"i",12),p(),h(31,"td",11),y(32,"i",12),p()(),h(33,"tr")(34,"th",8),f(35,"Line coverage "),h(36,"a",14),y(37,"i",10),p()(),h(38,"td",11),y(39,"i",12),p(),h(40,"td",11),y(41,"i",12),p()(),h(42,"tr")(43,"th",8),f(44,"Branch coverage "),h(45,"a",14),y(46,"i",10),p()(),h(47,"td",11),y(48,"i",12),p(),h(49,"td",11),y(50,"i",12),p()(),h(51,"tr")(52,"th",8),f(53,"Method coverage "),h(54,"a",14),y(55,"i",10),p()(),y(56,"td",11),h(57,"td",11),y(58,"i",15),p()(),h(59,"tr")(60,"th",8),f(61,"Metrics on summary page "),h(62,"a",9),y(63,"i",10),p()(),y(64,"td",11),h(65,"td",11),y(66,"i",15),p()(),h(67,"tr")(68,"th",8)(69,"i"),f(70,"OpenCover"),p(),f(71," output format"),p(),y(72,"td",11),h(73,"td",11),y(74,"i",15),p()()()()(),h(75,"div",16)(76,"p")(77,"i"),f(78,"ReportGenerator"),p(),f(79," is Open Source and free to use."),y(80,"br"),f(81," Some of the advanced features require a PRO license. "),p(),h(82,"p"),f(83," You can either become a "),h(84,"a",17),R("click",function(){return o.scrollToGithub()}),f(85,"GitHub sponsor"),p(),f(86," or you can "),h(87,"a",17),R("click",function(){return o.scrollToPaddle()}),f(88,"buy a license"),p(),f(89,"."),y(90,"br"),f(91," A "),h(92,"a",17),R("click",function(){return o.scrollToPaddle()}),f(93,"free trial version"),p(),f(94," is available too. "),p(),h(95,"p"),f(96," Get "),h(97,"a",18),f(98,"in touch"),p(),f(99," if you have any issues and we will figure it out. "),p()()()(),h(100,"section",19)(101,"div",0)(102,"h2",1),f(103,"Get your license as a GitHub sponsor"),p(),h(104,"div",2)(105,"div",20)(106,"p"),f(107,"You can obtain your license in two easy steps (no sign up required):"),p(),h(108,"span",21),f(109,"1."),p(),h(110,"a",22),y(111,"i",23),f(112," Become a GitHub sponsor"),p(),y(113,"br"),h(114,"span",21),f(115,"2."),p(),h(116,"button",24),R("click",function(){return o.requestLicense()}),y(117,"i",25),f(118," Get license"),p(),q(119,KU,3,0,"div",26),p(),q(120,eB,2,0,"div",27)(121,sB,4,3,"div",28),p()()(),h(122,"section",29)(123,"div",0)(124,"h2",1),f(125,"Buy a license"),p(),h(126,"div",30),q(127,aB,7,6,"span",31),p(),q(128,wB,61,17,"div",32)(129,xB,3,2,"div",32),h(130,"div",33),q(131,NB,4,0,"p",34),h(132,"p"),f(133,"The order process is conducted by Paddle.com. Paddle.com is the Merchant of Record for all orders. Paddle provides all customer service inquiries and handles returns."),p()()()(),y(134,"app-testimonials"),h(135,"section",35)(136,"div",36)(137,"h3"),f(138,"Customers"),p(),h(139,"div",37)(140,"a",38),y(141,"img",39),p()()()(),h(142,"section",40)(143,"h2",1),f(144,"Frequently Asked Questions"),p(),h(145,"div",41)(146,"div",42)(147,"h2",43)(148,"button",44),f(149," How do I use/activate my license? "),p()(),h(150,"div",45)(151,"div",46),f(152," Your license key is passed to "),h(153,"i"),f(154,"ReportGenerator"),p(),f(155," via a command line parameter: "),h(156,"i"),f(157,"-license:YOUR_KEY"),p()()()(),h(158,"div",42)(159,"h2",47)(160,"button",48),f(161," Are there limitations on number of users? "),p()(),h(162,"div",49)(163,"div",46)(164,"b"),f(165,"GitHub sponsors"),p(),y(166,"br"),h(167,"p"),f(168,"There's no enforced limit. Please pick a sponsor level that fits your company size and budget."),p(),h(169,"b"),f(170,"Bought license"),p(),y(171,"br"),h(172,"p"),f(173,"There's no enforced limit. Please choose a plan that matches the number of developers using "),h(174,"i"),f(175,"ReportGenerator"),p(),f(176,"."),p()()()(),h(177,"div",42)(178,"h2",50)(179,"button",51),f(180," Will my license expire? "),p()(),h(181,"div",52)(182,"div",46)(183,"b"),f(184,"GitHub sponsors"),p(),y(185,"br"),h(186,"p"),f(187,"Your license will not expire."),p(),h(188,"b"),f(189,"Bought license"),p(),y(190,"br"),h(191,"p")(192,"b"),f(193,"Annual subscription"),p(),f(194,": Your license may get revoked for new releases of "),h(195,"i"),f(196,"ReportGenerator"),p(),f(197,", if you cancel your subscription."),y(198,"br"),h(199,"b"),f(200,"Lifetime licenses"),p(),f(201,": Lifetime licenses will not expire. "),p()()()()()(),h(202,"div",53)(203,"div",54)(204,"div",55)(205,"form",56,57),R("ngSubmit",function(){return o.completeTrial()}),h(207,"div",58)(208,"h5",59),f(209,"Free Trial"),p(),y(210,"button",60),p(),h(211,"div",61)(212,"div",62)(213,"input",63),R("ngModelChange",function(s){return o.requestTrialData.name=s}),p(),h(214,"label",64),f(215,"Name "),h(216,"span",65),f(217,"*"),p()()(),h(218,"div",62)(219,"input",66),R("ngModelChange",function(s){return o.requestTrialData.email=s}),p(),h(220,"label",64),f(221,"Email address "),h(222,"span",65),f(223,"*"),p()()()(),h(224,"div",67)(225,"button",68),f(226,"Close"),p(),h(227,"button",69),f(228,"Get trial license"),p()()()()()()),2&r){const i=Gf(206);C(18),E("routerLink",ee(18,Ci)),C(9),E("routerLink",ee(19,Ci)),C(9),E("routerLink",ee(20,Ci)),C(9),E("routerLink",ee(21,Ci)),C(9),E("routerLink",ee(22,Ci)),C(8),E("routerLink",ee(23,Ci)),C(35),E("routerLink",ee(24,rg)),C(19),E("disabled",o.licenseRequested),C(3),E("ngIf",o.licenseRequested&&!o.license),C(1),E("ngIf",!o.license),C(1),E("ngIf",o.license),C(6),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",!o.paddleLicenseRequested),C(1),E("ngIf",o.paddleLicenseRequested),C(2),E("ngIf",!o.lifetimeLicense),C(82),E("ngModel",o.requestTrialData.name),C(6),E("ngModel",o.requestTrialData.email),C(8),E("disabled",!i.valid)}},dependencies:[Mn,Hh,uc,cc,zc,Bc,pi,Rc,Oc,yi,Yp,Gc,ta,vi,AM],styles:[".number[_ngcontent-%COMP%]{display:inline-block;position:relative;top:8px}.spinner-border[_ngcontent-%COMP%]{position:relative;top:9px}.paddle-container[_ngcontent-%COMP%]{padding:10px}.paddle[_ngcontent-%COMP%]{border:1px solid #8c8888;border-radius:20px;padding:20px;background-color:#d8e8f0}.trial[_ngcontent-%COMP%]{background-color:#b2cad7}.githubheartlarge[_ngcontent-%COMP%]{position:absolute;top:-120px;left:40%;font-size:20rem;color:#ffd2ed}.togglecontainer[_ngcontent-%COMP%]{background-color:#fff;display:inline-block;border-radius:20px;white-space:nowrap}.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%]{background-color:#fff;padding:8px 15px;border-radius:20px;cursor:pointer;display:inline-block}.togglecontainer[_ngcontent-%COMP%] .option.active[_ngcontent-%COMP%]{color:#fff;background-color:var(--rg-primary-color);background-image:linear-gradient(50deg,var(--rg-gradient-from) 0%,var(--rg-gradient-to) 100%)}@media only screen and (max-width: 400px){.togglecontainer[_ngcontent-%COMP%] .option[_ngcontent-%COMP%] .fa-solid[_ngcontent-%COMP%]{display:none}}"]})}return e})();class Xc{constructor(n,t,r,o,i,s){this.name=n,this.url=t,this.runtimes=r,this.description=o,this.installOptions=i,this.executables=s}formatExecutable(n){return n.tool}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?'"':"";return`\r\n${r}-${n}:${t}${r}`}formatArguments(n,t){return this.formatArgument(n,t.filter(r=>null!=r&&0!==r.length&&0!==r.trim().length).join(";"))}}class OB extends Xc{formatExecutable(n){let t=`- task: ${n.tool}@${Gt.majorVersion}`;return t+="\r\n displayName: ReportGenerator",t+="\r\n inputs:",console.log("hello",t),t}formatArgument(n,t){if(""===(t=t.trim()))return"";const r=t.indexOf(" ")>-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class PB{constructor(){this.verbosities=["Verbose","Info","Warning","Error","Off"],this.types=["Html","Coverage tool","Json","Markdown","Xml","Text","Image"],this.reports=["cobertura.xml"],this.targetdir="coveragereport",this.reporttypes=[{name:"Html",types:["Html"],description:"The default output format. Creates a summary overview (index.html) and detailed reports for each class.",requiresHistoryDir:!1,checked:!0,sampleReport:"resources/reports/Html/index.html"},{name:"Html_Light",types:["Html"],description:"Same as Html but with a light theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Light/index.html"},{name:"Html_Dark",types:["Html"],description:"Same as Html but with a dark theme.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_Dark/index.html"},{name:"Html_BlueRed",types:["Html"],description:"Same as Html but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed/index.html"},{name:"HtmlSummary",types:["Html"],description:"Creates a single HTML file (summary.html) without links.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlSummary/summary.html"},{name:"Html_BlueRed_Summary",types:["Html"],description:"Same as HtmlSummary but with the colors blue/red instead of green/red.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Html_BlueRed_Summary/summary.html"},{name:"HtmlChart",types:["Html"],description:"Creates a single HTML file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/HtmlChart/CoverageHistory.html"},{name:"HtmlInline",types:["Html"],description:"Same as HTML but CSS and JavaScript is included in every HTML page. This results in larger file sizes, but can be useful for integration into build servers like Azure DevOps (VSTS), since they may block referenced CSS and JavaScript files.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline/index.html"},{name:"HtmlInline_AzurePipelines",types:["Html"],description:"Same as HtmlInline but with an adaptive light/dark theme matching the look and feel of Azure Pipelines",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines/index.html"},{name:"HtmlInline_AzurePipelines_Light",types:["Html"],description:"Same as HtmlInline but with a light theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Light/index.html"},{name:"HtmlInline_AzurePipelines_Dark",types:["Html"],description:"Same as HtmlInline but with a dark theme matching the look and feel of Azure Pipelines.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/HtmlInline_AzurePipelines_Dark/index.html"},{name:"MHtml",types:["Html"],description:"Same as HTML but packaged into a single MHTML file.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MHtml/Summary.mht"},{name:"Clover",types:["Coverage tool"],description:"Creates a XML file in Clover format. This format integrates with tools like Atlassian Bamboo.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Clover/Clover.xml"},{name:"Cobertura",types:["Coverage tool"],description:"Creates a XML file in Cobertura format. This format integrates with tools like Azure DevOps (VSTS) or Jenkins.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Cobertura/Cobertura.xml"},{name:"OpenCover",types:["Coverage tool"],description:"Creates a XML file in OpenCover format (PRO version only).",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/OpenCover/OpenCover.xml"},{name:"SonarQube",types:["Coverage tool"],description:"Creates a XML file in SonarQube 'Generic Test Data' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/SonarQube/SonarQube.xml"},{name:"lcov",types:["Coverage tool"],description:"Creates a text file in 'lcov' format.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/lcov/lcov.info"},{name:"XML",types:["Xml"],description:"Creates a XML file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Xml/Summary.xml"},{name:"XMLSummary",types:["Xml"],description:"Creates a single XML file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/XmlSummary/Summary.xml"},{name:"JsonSummary",types:["Json"],description:"Creates a single JSON file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/JsonSummary/Summary.json"},{name:"Latex",types:["Text"],description:"Creates a single TEX file containing a summary for all classes and detailed reports for each class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Summary/Summary.tex"},{name:"LatexSummary",types:["Text"],description:"Creates a single TEX file containing a summary for all classes.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/LatexSummary/Summary.tex"},{name:"TeamCitySummary",types:["Coverage tool"],description:"Command line output interpreted by TeamCity.",requiresHistoryDir:!1,checked:!1,sampleReport:null},{name:"TextSummary",types:["Text"],description:"Creates a single TXT file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/TextSummary/Summary.txt"},{name:"TextDeltaSummary",types:["Text"],description:"Creates a single TXT file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/TextDeltaSummary/DeltaSummary.txt"},{name:"CsvSummary",types:["Text"],description:"Creates a single CSV file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/CsvSummary/Summary.csv"},{name:"MarkdownSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummary/Summary.md"},{name:"MarkdownSummaryGithub",types:["Text","Markdown"],description:"Creates a single Markdown file containing coverage information per class. The report is optimized for GitHub.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/MarkdownSummaryGithub/SummaryGithub.md"},{name:"MarkdownDeltaSummary",types:["Text","Markdown"],description:"Creates a single Markdown file containing delta coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/MarkdownDeltaSummary/DeltaSummary.md"},{name:"SvgChart",types:["Image"],description:"Creates a single SVG file containing a chart with historic coverage information.",requiresHistoryDir:!0,checked:!1,sampleReport:"resources/reports/SvgChart/CoverageHistory.svg"},{name:"Badges",types:["Image"],description:"Creates SVG files that show line and/or branch coverage information.",requiresHistoryDir:!1,checked:!1,sampleReport:"resources/reports/Badges/index.html"}],this.sourcedirectories=[],this.historydir="",this.plugins=[],this.assemblyfilters=[],this.classfilters=[],this.filefilters=[],this.selectedverbosity=this.verbosities[1],this.selectedType=null,this.title="",this.tag="",this.license=""}addSourceDirectory(){return this.sourcedirectories.push(""),!1}removeSourceDirectory(n){return this.sourcedirectories.splice(n,1),!1}addReport(){return this.reports.push(""),!1}removeReport(n){return this.reports.splice(n,1),!1}addPlugin(){return this.plugins.push(""),!1}removePlugin(n){return this.plugins.splice(n,1),!1}addAssemblyFilter(){return this.assemblyfilters.push(""),!1}removeAssemblyFilter(n){return this.assemblyfilters.splice(n,1),!1}addClassFilter(){return this.classfilters.push(""),!1}removeClassFilter(n){return this.classfilters.splice(n,1),!1}addFileFilter(){return this.filefilters.push(""),!1}removeFileFilter(n){return this.filefilters.splice(n,1),!1}getUsage(n,t){const r=n.executables.find(a=>a.runtime==t);let o=void 0!==r?n.formatExecutable(r):"";o+=n.formatArguments("reports",this.reports),o+=n.formatArgument("targetdir",this.targetdir);for(var i="",s=0;s0&&(i+=";"),i+=this.reporttypes[s].name);return i.length>0&&"Html"!==i&&(o+=n.formatArgument("reporttypes",i)),o+=n.formatArguments("sourcedirs",this.sourcedirectories),o+=n.formatArgument("historydir",this.historydir),o+=n.formatArguments("plugins",this.plugins),o+=n.formatArguments("assemblyfilters",this.assemblyfilters),o+=n.formatArguments("classfilters",this.classfilters),o+=n.formatArguments("filefilters",this.filefilters),"Info"!==this.selectedverbosity&&(o+=n.formatArgument("verbosity",this.selectedverbosity)),o+=n.formatArgument("title",this.title),o+=n.formatArgument("tag",this.tag),o+=n.formatArgument("license",this.license),o}historyDirRequired(){for(let n=0;n-1?"'":"";return`\r\n ${n}: ${r}${t}${r}`}}class og{constructor(n,t){this.tool=n,this.command=t}}function FB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",37),R("ngModelChange",function(o){return re(t),oe(P().selectedEnvironment=o)})("ngModelChange",function(){return re(t),oe(P().selectedEnvironmentChanged())}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=n.$implicit,r=P();C(2),E("ngModel",r.selectedEnvironment)("value",t)("checked",r.selectedEnvironment.name===t.name),C(2),be(t.name),C(3),be(t.description)}}function LB(e,n){if(1&e){const t=Fe();h(0,"div",35)(1,"label",36)(2,"input",41),R("ngModelChange",function(o){return re(t),oe(P(3).selectedPackage=o)}),p(),h(3,"b"),f(4),p(),y(5,"br"),h(6,"div",38),f(7),p()()()}if(2&e){const t=P().$implicit,r=P(2);C(2),E("ngModel",r.selectedPackage)("value",t),C(2),be(t.name),C(3),be(t.description)}}function VB(e,n){if(1&e&&(Dt(0),q(1,LB,8,4,"div",40),wt()),2&e){const t=n.$implicit,r=P(2);C(1),E("ngIf",t.runtimes.indexOf(r.selectedEnvironment.name)>-1)}}function jB(e,n){if(1&e&&(Dt(0),h(1,"h4"),f(2,"NuGet Package"),p(),q(3,VB,2,1,"ng-container",39),wt()),2&e){const t=P();C(3),E("ngForOf",t.packages)}}function HB(e,n){if(1&e){const t=Fe();h(0,"span",45),R("click",function(){re(t);const o=P().index;return oe(P().configuration.removeReport(o))}),h(1,"a",46),y(2,"i",47),p()()}}const UB=e=>({"input-group":e});function BB(e,n){if(1&e){const t=Fe();h(0,"div",38)(1,"div",42)(2,"input",43),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.reports[s]=o)}),p(),q(3,HB,3,0,"span",44),p()()}if(2&e){const t=n.index,r=P();C(1),E("ngClass",Is(4,UB,t>0)),C(1),jn("name","report_",t,""),E("ngModel",r.configuration.reports[t]),C(1),E("ngIf",t>0)}}const $B=(e,n)=>({"btn-outline-primary":e,"btn-primary":n});function GB(e,n){if(1&e){const t=Fe();h(0,"button",48),R("click",function(){const i=re(t).$implicit,s=P();return oe(s.configuration.selectedType=s.configuration.selectedType===i?null:i)}),f(1),p()}if(2&e){const t=n.$implicit,r=P();E("ngClass",GD(2,$B,t!==r.configuration.selectedType,t===r.configuration.selectedType)),C(1),be(t)}}function zB(e,n){if(1&e){const t=Fe();h(0,"span",53),y(1,"i",54),f(2," Please specify a "),h(3,"a",9),R("click",function(){return re(t),oe(P(3).scrollToHistoryDir())}),f(4,"history directory"),p()()}}function qB(e,n){if(1&e&&(Dt(0),y(1,"br",55),h(2,"a",29),f(3,"Sample report"),p(),f(4,"\xa0"),h(5,"a",29),y(6,"i",56),p(),wt()),2&e){const t=P(2).$implicit;C(2),E("href",t.sampleReport,bo),C(3),E("href",t.sampleReport,bo)}}function WB(e,n){if(1&e){const t=Fe();h(0,"div",50)(1,"label",36)(2,"input",51),R("change",function(){re(t);const o=P().$implicit;return oe(o.checked=!o.checked)}),p(),h(3,"b"),f(4),p(),q(5,zB,5,0,"span",52),y(6,"br"),h(7,"div",38),f(8),q(9,qB,7,2,"ng-container",5),p()()()}if(2&e){const t=P().$implicit,r=P();C(2),E("checked",t.checked),C(2),be(t.name),C(1),E("ngIf",t.checked&&t.requiresHistoryDir&&!r.configuration.historydir),C(3),Hn("",t.description," "),C(1),E("ngIf",t.sampleReport)}}function ZB(e,n){if(1&e&&(Dt(0),q(1,WB,10,5,"div",49),wt()),2&e){const t=n.$implicit,r=P();C(1),E("ngIf",!r.configuration.selectedType||t.types.indexOf(r.configuration.selectedType)>-1)}}function YB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",58),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.sourcedirectories[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeSourceDirectory(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","sourcedir_",t,""),E("ngModel",r.configuration.sourcedirectories[t])}}function QB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",59),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.plugins[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removePlugin(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","plugin_",t,""),E("ngModel",r.configuration.plugins[t])}}function XB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",60),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.assemblyfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeAssemblyFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","assemblyfilter_",t,""),E("ngModel",r.configuration.assemblyfilters[t])}}function JB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",61),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.classfilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeClassFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","classfilter_",t,""),E("ngModel",r.configuration.classfilters[t])}}function KB(e,n){if(1&e){const t=Fe();h(0,"div",8)(1,"div",57)(2,"input",62),R("ngModelChange",function(o){const s=re(t).index;return oe(P().configuration.filefilters[s]=o)}),p(),h(3,"span",45),R("click",function(){const i=re(t).index;return oe(P().configuration.removeFileFilter(i))}),h(4,"a",46),y(5,"i",47),p()()()()}if(2&e){const t=n.index,r=P();C(2),jn("name","filefilter_",t,""),E("ngModel",r.configuration.filefilters[t])}}function e$(e,n){if(1&e&&(h(0,"option",63),f(1),p()),2&e){const t=n.$implicit;E("value",t),C(1),be(t)}}function t$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function n$(e,n){1&e&&(h(0,"span"),y(1,"i",65),f(2," Copy"),p())}function r$(e,n){1&e&&(h(0,"span"),y(1,"i",66),f(2," Copied"),p())}function o$(e,n){if(1&e&&(h(0,"div",64)(1,"b"),f(2),p(),y(3,"br"),h(4,"pre",32),f(5),p()()),2&e){const t=n.$implicit;C(2),be(t.tool),C(3),be(t.command)}}function i$(e,n){1&e&&(h(0,"span"),y(1,"i",65),f(2," Copy"),p())}function s$(e,n){1&e&&(h(0,"span"),y(1,"i",66),f(2," Copied"),p())}const a$=()=>["/pro"],l$=[{path:"",component:YU,pathMatch:"full",title:"Home",data:{canonical:"/"}},{path:"features",component:BU,title:"Features",data:{canonical:"/features"}},{path:"features.html",redirectTo:"/features"},{path:"getstarted",component:GU,title:"Get started",data:{canonical:"/getstarted"}},{path:"getstarted.html",redirectTo:"/getstarted"},{path:"usage",component:(()=>{class e{constructor(){this.versions=Gt,this.lastResult="",this.usageCopied=!1,this.configuration=new PB,this.environments=[new Jc(".NET Core",".NET Core"),new Jc(".NET Framework","The full .NET framework"),new Jc("Azure DevOps",null),new Jc("Github Action",null)],this.packages=[new Xc("ReportGenerator","https://www.nuget.org/packages/ReportGenerator",[".NET Framework",".NET Core"],"Use this package if your project is based on .NET Framework or .NET Core and you want to use ReportGenerator via the command line or a build script.",[new og("Package Manager",`Install-Package ReportGenerator -Version ${Gt.version}`),new og(".NET CLI",`dotnet add package ReportGenerator --version ${Gt.version}`)],[new oa(".NET Framework",`$(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net47\\ReportGenerator.exe`),new oa(".NET Core",`dotnet $(UserProfile)\\.nuget\\packages\\reportgenerator\\${Gt.version}\\tools\\net6.0\\ReportGenerator.dll`)]),new Xc("dotnet-reportgenerator-globaltool","https://www.nuget.org/packages/dotnet-reportgenerator-globaltool",[".NET Core"],"Use this package if your project is based on .NET Core and you want to use ReportGenerator as a (global) 'DotnetTool'.",[new og(".NET CLI",`dotnet tool install --global dotnet-reportgenerator-globaltool --version ${Gt.version}\r\n\r\ndotnet tool install dotnet-reportgenerator-globaltool --tool-path tools --version ${Gt.version}\r\n\r\ndotnet new tool-manifest\r\ndotnet tool install dotnet-reportgenerator-globaltool --version ${Gt.version}`)],[new oa(".NET Core","reportgenerator")]),new OB("Azure DevOps","https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator",["Azure DevOps"],"Use this package within Azure DevOps",[],[new oa("Azure DevOps","reportgenerator")]),new kB("GitHub Action","https://github.com/marketplace/actions/reportgenerator",["Github Action"],"Use this package within Github Actions",[],[new oa("Github Action","danielpalme/ReportGenerator-GitHub-Action")])],this.selectedEnvironment=this.environments[0],this.selectedPackage=this.packages[0]}selectedEnvironmentChanged(){this.selectedPackage=this.packages.find(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1)}severalPackagesAvailable(){return this.packages.filter(t=>t.runtimes.indexOf(this.selectedEnvironment.name)>-1).length>1}getUsage(){const t=this.configuration.getUsage(this.selectedPackage,this.selectedEnvironment.name);return this.lastResult!==t&&(this.lastResult=t,this.usageCopied=!1),t}copy(){try{navigator.clipboard.writeText(this.getUsage()),this.usageCopied=!0}catch(t){console.error("Failed to copy license",t)}}scrollToHistoryDir(){return document.querySelector("#historydir").scrollIntoView(!0),!1}trackByIndex(t,r){return t}static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275cmp=Mt({type:e,selectors:[["app-usage-component"]],standalone:!0,features:[Ot],decls:219,vars:41,consts:[[1,"container"],[1,"mb-4"],[1,"row"],[1,"col-md-7"],["class","form-check",4,"ngFor","ngForOf"],[4,"ngIf"],[1,"alert","alert-info"],["class","mb-3",4,"ngFor","ngForOf","ngForTrackBy"],[1,"input-group","mb-3"],["href","",3,"click"],[1,"fa","fa-plus-circle"],["type","text","name","targetdir","placeholder","The target directory","required","",1,"form-control",3,"ngModel","ngModelChange"],["href","https://danielpalme.github.io/ReportGenerator/resources/SampleReports.zip"],[1,"me-2"],["type","button","class","btn btn-sm me-1 mb-1",3,"ngClass","click",4,"ngFor","ngForOf","ngForTrackBy"],[4,"ngFor","ngForOf","ngForTrackBy"],["class","input-group mb-3",4,"ngFor","ngForOf","ngForTrackBy"],["id","historydir"],["type","text","name","historydir","placeholder","The history directory",1,"form-control",3,"ngModel","required","ngModelChange"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-reports"],["href","https://github.com/danielpalme/ReportGenerator/wiki/Custom-history-storage"],["name","verbosity",1,"form-select",3,"ngModel","ngModelChange"],[3,"value",4,"ngFor","ngForOf","ngForTrackBy"],["type","text","name","title","placeholder","Title",1,"form-control",3,"ngModel","ngModelChange"],["type","text","name","tag","placeholder","Optional tag or build version",1,"form-control",3,"ngModel","ngModelChange"],[3,"routerLink"],["type","text","name","license","placeholder","Optional license for PRO version","rows","4",1,"form-control",3,"ngModel","ngModelChange"],[1,"col-md-5"],[1,"d-md-none","mt-5"],["target","_blank",3,"href"],["class","mt-2",4,"ngFor","ngForOf"],[1,"mt-4"],[1,"text-dark","bg-light","p-2","border"],[1,"btn","btn-outline-dark","mt-2",3,"click"],[1,"d-none","d-md-block","sticky"],[1,"form-check"],[1,"form-check-label"],["type","radio","name","environment",1,"form-check-input",3,"ngModel","value","checked","ngModelChange"],[1,"mb-3"],[4,"ngFor","ngForOf"],["class","form-check",4,"ngIf"],["type","radio","name","package",1,"form-check-input",3,"ngModel","value","ngModelChange"],[3,"ngClass"],["type","text","placeholder","The path of the coverage file","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["class","input-group-text",3,"click",4,"ngIf"],[1,"input-group-text",3,"click"],["href",""],[1,"fa","fa-trash","text-danger"],["type","button",1,"btn","btn-sm","me-1","mb-1",3,"ngClass","click"],["class","form-check mt-1",4,"ngIf"],[1,"form-check","mt-1"],["type","checkbox","name","reporttype",1,"form-check-input",3,"checked","change"],["class","text-danger ms-2",4,"ngIf"],[1,"text-danger","ms-2"],[1,"fa-solid","fa-triangle-exclamation"],[1,"mt-1"],[1,"fa-solid","fa-arrow-up-right-from-square"],[1,"input-group"],["type","text","placeholder","The source directory","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The path of the plugin","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for assemlies","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for classes","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],["type","text","placeholder","The include or exclude filter for files","pattern","^[+-].+$","required","",1,"form-control",3,"name","ngModel","ngModelChange"],[3,"value"],[1,"mt-2"],[1,"fa-solid","fa-copy"],[1,"fa-solid","fa-check","text-success"]],template:function(r,o){1&r&&(h(0,"div",0)(1,"h1",1),f(2,"Usage"),p(),h(3,"div",2)(4,"div",3)(5,"form")(6,"h3"),f(7,"Environment"),p(),q(8,FB,8,5,"div",4),y(9,"hr"),q(10,jB,4,1,"ng-container",5),y(11,"hr"),h(12,"h3"),f(13,"Reports"),p(),h(14,"div",6),f(15,"Path to the coverage report(s) that should be parsed."),y(16,"br"),f(17,"Globbing is supported."),p(),q(18,BB,4,6,"div",7),h(19,"div",8)(20,"a",9),R("click",function(){return o.configuration.addReport()}),y(21,"i",10),f(22," Add report"),p()(),y(23,"br"),h(24,"h3"),f(25,"Target directory"),p(),h(26,"div",6),f(27,"The directory where the generated report(s) should be saved."),p(),h(28,"div",8)(29,"input",11),R("ngModelChange",function(s){return o.configuration.targetdir=s}),p()(),y(30,"br"),h(31,"h3"),f(32,"Report types"),p(),h(33,"div",6),f(34,"Download "),h(35,"a",12),f(36,"sample reports"),p()(),h(37,"span",13),f(38,"Filter:"),p(),q(39,GB,2,5,"button",14),y(40,"br"),q(41,ZB,2,1,"ng-container",15),h(42,"h3"),f(43,"Source directories"),p(),h(44,"div",6),f(45,"Optional directories which contain the corresponding source code."),y(46,"br"),f(47,"The source directories are used if coverage report contains classes without path information."),p(),q(48,YB,6,2,"div",16),h(49,"div",8)(50,"a",9),R("click",function(){return o.configuration.addSourceDirectory()}),y(51,"i",10),f(52," Add source directory"),p()(),y(53,"br"),h(54,"h3",17),f(55,"History directory"),p(),h(56,"div",6),f(57,"Optional directory for storing "),h(58,"b"),f(59,"persistent"),p(),f(60," coverage information. Choose a directory which does not get deleted between builds."),y(61,"br"),f(62,"Required to show the history chart in the HTML reports."),p(),h(63,"div",8)(64,"input",18),R("ngModelChange",function(s){return o.configuration.historydir=s}),p()(),y(65,"br"),h(66,"h3"),f(67,"Plugins"),p(),h(68,"div",6),f(69,"Optional plugin files for "),h(70,"a",19),f(71,"custom reports"),p(),f(72," or "),h(73,"a",20),f(74,"custom history storage"),p(),f(75,"."),p(),q(76,QB,6,2,"div",16),h(77,"div",8)(78,"a",9),R("click",function(){return o.configuration.addPlugin()}),y(79,"i",10),f(80," Add plugin"),p()(),y(81,"br"),h(82,"h3"),f(83,"Assembly filters"),p(),h(84,"div",6),f(85,"Optional list of "),h(86,"b"),f(87,"assemblies"),p(),f(88," that should be included or excluded in the report. "),y(89,"br"),f(90,"Exclusion filters take precedence over inclusion filters. "),y(91,"br"),f(92,"Wildcards are allowed."),y(93,"br"),h(94,"p"),f(95,"Examples:"),y(96,"br"),h(97,"code"),f(98,"+Included"),p(),y(99,"br"),h(100,"code"),f(101,"-Excluded"),p()()(),q(102,XB,6,2,"div",16),h(103,"div",8)(104,"a",9),R("click",function(){return o.configuration.addAssemblyFilter()}),y(105,"i",10),f(106," Add assembly filter"),p()(),y(107,"br"),h(108,"h3"),f(109,"Class filters"),p(),h(110,"div",6),f(111,"Optional list of "),h(112,"b"),f(113,"classes"),p(),f(114," that should be included or excluded in the report. "),y(115,"br"),f(116,"Exclusion filters take precedence over inclusion filters. "),y(117,"br"),f(118,"Wildcards are allowed."),y(119,"br"),h(120,"p"),f(121,"Examples:"),y(122,"br"),h(123,"code"),f(124,"+Included"),p(),y(125,"br"),h(126,"code"),f(127,"-Excluded"),p()()(),q(128,JB,6,2,"div",16),h(129,"div",8)(130,"a",9),R("click",function(){return o.configuration.addClassFilter()}),y(131,"i",10),f(132," Add class filter"),p()(),y(133,"br"),h(134,"h3"),f(135,"File filters"),p(),h(136,"div",6),f(137,"Optional list of "),h(138,"b"),f(139,"files"),p(),f(140," that should be included or excluded in the report. "),y(141,"br"),f(142,"Exclusion filters take precedence over inclusion filters. "),y(143,"br"),f(144,"Wildcards are allowed."),y(145,"br"),h(146,"p"),f(147,"Examples:"),y(148,"br"),h(149,"code"),f(150,"+Included"),p(),y(151,"br"),h(152,"code"),f(153,"-Excluded"),p()()(),q(154,KB,6,2,"div",16),h(155,"div",8)(156,"a",9),R("click",function(){return o.configuration.addFileFilter()}),y(157,"i",10),f(158," Add file filter"),p()(),y(159,"br"),h(160,"h3"),f(161,"Verbosity"),p(),h(162,"div",6),f(163,"The verbosity level of the log messages."),p(),h(164,"div",8)(165,"select",21),R("ngModelChange",function(s){return o.configuration.selectedverbosity=s}),q(166,e$,2,2,"option",22),p()(),y(167,"br"),h(168,"h3"),f(169,"Title"),p(),h(170,"div",6),f(171,"Optional title."),p(),h(172,"div",8)(173,"input",23),R("ngModelChange",function(s){return o.configuration.title=s}),p()(),y(174,"br"),h(175,"h3"),f(176,"Tag"),p(),h(177,"div",6),f(178,"Optional tag or build version."),p(),h(179,"div",8)(180,"input",24),R("ngModelChange",function(s){return o.configuration.tag=s}),p()(),y(181,"br"),h(182,"h3"),f(183,"License"),p(),h(184,"div",6),f(185,"Optional license. Get your license here: "),h(186,"a",25),f(187,"https://reportgenerator.io/pro"),p()(),h(188,"div",8)(189,"textarea",26),R("ngModelChange",function(s){return o.configuration.license=s}),p()()()(),h(190,"div",27)(191,"div",28)(192,"h3"),f(193,"Instructions"),p(),f(194," Install "),h(195,"a",29),f(196),p(),q(197,t$,6,2,"div",30),h(198,"h4",31),f(199,"Usage"),p(),h(200,"pre",32),f(201),p(),h(202,"button",33),R("click",function(){return o.copy()}),q(203,n$,3,0,"span",5)(204,r$,3,0,"span",5),p()(),h(205,"div",34)(206,"h3"),f(207,"Instructions"),p(),f(208," Install "),h(209,"a",29),f(210),p(),q(211,o$,6,2,"div",30),h(212,"h4",31),f(213,"Usage"),p(),h(214,"pre",32),f(215),p(),h(216,"button",33),R("click",function(){return o.copy()}),q(217,i$,3,0,"span",5)(218,s$,3,0,"span",5),p()()()()()),2&r&&(C(8),E("ngForOf",o.environments),C(2),E("ngIf",o.severalPackagesAvailable()),C(8),E("ngForOf",o.configuration.reports)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.targetdir),C(10),E("ngForOf",o.configuration.types)("ngForTrackBy",o.trackByIndex),C(2),E("ngForOf",o.configuration.reporttypes)("ngForTrackBy",o.trackByIndex),C(7),E("ngForOf",o.configuration.sourcedirectories)("ngForTrackBy",o.trackByIndex),C(16),E("ngModel",o.configuration.historydir)("required",o.configuration.historyDirRequired()),C(12),E("ngForOf",o.configuration.plugins)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.assemblyfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.classfilters)("ngForTrackBy",o.trackByIndex),C(26),E("ngForOf",o.configuration.filefilters)("ngForTrackBy",o.trackByIndex),C(11),E("ngModel",o.configuration.selectedverbosity),C(1),E("ngForOf",o.configuration.verbosities)("ngForTrackBy",o.trackByIndex),C(7),E("ngModel",o.configuration.title),C(7),E("ngModel",o.configuration.tag),C(6),E("routerLink",ee(40,a$)),C(3),E("ngModel",o.configuration.license),C(6),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),E("ngIf",!o.usageCopied),C(1),E("ngIf",o.usageCopied),C(5),E("href",o.selectedPackage.url,bo),C(1),be(o.selectedPackage.name),C(1),E("ngForOf",o.selectedPackage.installOptions),C(4),be(o.getUsage()),C(2),E("ngIf",!o.usageCopied),C(1),E("ngIf",o.usageCopied))},dependencies:[zc,Bc,YI,XI,pi,$c,Gp,Rc,Oc,yi,Qp,ta,vi,Hh,uc,cc,Mn],styles:[".sticky[_ngcontent-%COMP%]{position:sticky;top:100px}"]})}return e})(),title:"Usage",data:{canonical:"/usage"}},{path:"usage.html",redirectTo:"/usage"},{path:"pro",component:RB,title:"PRO",data:{canonical:"/pro"}},{path:"pro.html",redirectTo:"/pro"},{path:"contact",component:UU,title:"Contact",data:{canonical:"/contact"}},{path:"contact.html",redirectTo:"/contact"},{path:"404",component:QU,title:"404 - Not found"},{path:"**",redirectTo:"/404"}];(function bV(e,n){return gF({rootComponent:e,...Wb(n)})})(uH,{providers:[ov(AV,(()=>{class e{static#e=this.\u0275fac=function(r){return new(r||e)};static#t=this.\u0275mod=Rn({type:e});static#n=this.\u0275inj=ln({imports:[KE.forRoot(l$,{scrollPositionRestoration:"enabled",scrollOffset:[0,0],anchorScrolling:"enabled"}),KE]})}return e})(),zc),NM,RM,SM,function xU(...e){const n=[Kp,mM,pM,{provide:qc,useExisting:pM},{provide:Wc,useExisting:mM},{provide:ra,useValue:AU,multi:!0},{provide:ng,useValue:!0},{provide:_M,useClass:TU}];for(const t of e)n.push(...t.\u0275providers);return ud(n)}(function NU(){return function zr(e,n){return{\u0275kind:e,\u0275providers:n}}(mr.LegacyInterceptors,[{provide:CM,useFactory:_U},{provide:ra,useExisting:CM,multi:!0}])}())]}).catch(e=>console.error(e))}},Kc=>{Kc(Kc.s=139)}]); \ No newline at end of file diff --git a/docs/pro.html b/docs/pro.html index e03e36ef..41187afa 100644 --- a/docs/pro.html +++ b/docs/pro.html @@ -7,25 +7,10 @@ - - - + \ No newline at end of file diff --git a/docs/usage.html b/docs/usage.html index 5bf2094b..49dd61e8 100644 --- a/docs/usage.html +++ b/docs/usage.html @@ -7,25 +7,10 @@ - - - + \ No newline at end of file From 2af2b386dc4d6af38f88d8a5490202adb3f38c77 Mon Sep 17 00:00:00 2001 From: Daniel Palme Date: Tue, 14 Nov 2023 19:05:16 +0100 Subject: [PATCH 6/6] Update dependencies --- .github/workflows/ci.yml | 2 +- docs/resources/SampleReports.zip | Bin 2645915 -> 2639109 bytes .../reports/Badges/badge_branchcoverage.svg | 2 +- .../reports/Badges/badge_combined.svg | 2 +- .../reports/Badges/badge_linecoverage.svg | 2 +- .../reports/Badges/badge_methodcoverage.svg | 2 +- docs/resources/reports/Clover/Clover.xml | 33 +-- .../resources/reports/Cobertura/Cobertura.xml | 45 ++-- docs/resources/reports/CsvSummary/Summary.csv | 4 +- .../reports/Html/Sample_PartialClass.html | 8 +- .../reports/Html/Sample_Program.html | 95 ++++--- .../reports/Html/Sample_TestClass.html | 106 +++----- .../reports/Html/Sample_TestClass2.html | 8 +- docs/resources/reports/Html/index.html | 16 +- docs/resources/reports/Html/main.js | 12 +- .../reports/HtmlChart/CoverageHistory.htm | 18 +- .../reports/HtmlChart/CoverageHistory.html | 18 +- .../HtmlInline/Sample_PartialClass.html | 8 +- .../reports/HtmlInline/Sample_Program.html | 95 ++++--- .../reports/HtmlInline/Sample_TestClass.html | 106 +++----- .../reports/HtmlInline/Sample_TestClass2.html | 8 +- docs/resources/reports/HtmlInline/index.html | 28 +- .../Sample_PartialClass.html | 8 +- .../Sample_Program.html | 95 ++++--- .../Sample_TestClass.html | 106 +++----- .../Sample_TestClass2.html | 8 +- .../HtmlInline_AzurePipelines/index.html | 28 +- .../Sample_PartialClass.html | 8 +- .../Sample_Program.html | 95 ++++--- .../Sample_TestClass.html | 106 +++----- .../Sample_TestClass2.html | 8 +- .../HtmlInline_AzurePipelines_Dark/index.html | 28 +- .../Sample_PartialClass.html | 8 +- .../Sample_Program.html | 95 ++++--- .../Sample_TestClass.html | 106 +++----- .../Sample_TestClass2.html | 8 +- .../index.html | 28 +- .../reports/HtmlSummary/summary.html | 28 +- .../Html_BlueRed/Sample_PartialClass.html | 8 +- .../reports/Html_BlueRed/Sample_Program.html | 95 ++++--- .../Html_BlueRed/Sample_TestClass.html | 106 +++----- .../Html_BlueRed/Sample_TestClass2.html | 8 +- .../resources/reports/Html_BlueRed/index.html | 16 +- docs/resources/reports/Html_BlueRed/main.js | 12 +- .../reports/Html_BlueRed_Summary/summary.html | 28 +- .../Html_Dark/Sample_PartialClass.html | 8 +- .../reports/Html_Dark/Sample_Program.html | 95 ++++--- .../reports/Html_Dark/Sample_TestClass.html | 106 +++----- .../reports/Html_Dark/Sample_TestClass2.html | 8 +- docs/resources/reports/Html_Dark/index.html | 16 +- docs/resources/reports/Html_Dark/main.js | 12 +- .../Html_Light/Sample_PartialClass.html | 8 +- .../reports/Html_Light/Sample_Program.html | 95 ++++--- .../reports/Html_Light/Sample_TestClass.html | 106 +++----- .../reports/Html_Light/Sample_TestClass2.html | 8 +- docs/resources/reports/Html_Light/index.html | 16 +- docs/resources/reports/Html_Light/main.js | 12 +- .../reports/JsonSummary/Summary.json | 10 +- docs/resources/reports/Latex/Summary.tex | 199 +++++++------- .../reports/LatexSummary/Summary.tex | 14 +- docs/resources/reports/MHtml/Summary.mht | 245 +++++++++--------- .../MarkdownDeltaSummary/DeltaSummary.md | 6 +- .../reports/MarkdownSummary/Summary.md | 10 +- .../MarkdownSummaryGithub/SummaryGithub.md | 4 +- .../resources/reports/OpenCover/OpenCover.xml | 38 ++- .../resources/reports/SonarQube/SonarQube.xml | 15 +- .../reports/TextDeltaSummary/DeltaSummary.txt | 6 +- .../resources/reports/TextSummary/Summary.txt | 4 +- docs/resources/reports/Xml/Sample_Program.xml | 87 ++++--- .../reports/Xml/Sample_TestClass.xml | 98 +++---- docs/resources/reports/Xml/Summary.xml | 10 +- docs/resources/reports/XmlSummary/Summary.xml | 10 +- global.json | 2 +- src/AngularComponents/package-lock.json | 160 ++++++------ src/AngularComponents/package.json | 18 +- .../nuget/ReportGenerator.Core.nuspec | 16 +- src/ReportGenerator.Core.Test/MsBuildTest.cs | 2 +- .../ReportGenerator.Core.Test.csproj | 6 +- .../ReportGenerator.Core.csproj | 8 +- .../Builders/Rendering/resources/main.js | 2 +- .../ReportGenerator.MSBuild.csproj | 2 +- 81 files changed, 1468 insertions(+), 1648 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 64fea9ca..f6b60463 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,7 +7,7 @@ env: buildPlatform: Any CPU buildConfiguration: Release version: 5.2.0 - dotnetSDKVersion: 8.0.100-rc.2.23502.2 + dotnetSDKVersion: 8.0.100 nodeVersion: 20 jobs: diff --git a/docs/resources/SampleReports.zip b/docs/resources/SampleReports.zip index 6dc6f8bfa110c88b7586040ab28c6ec93474acca..5eeea3bf7ca622b83ba3a9c329eb92e59f36837a 100644 GIT binary patch delta 2061383 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%0Dc^d0P0coJ&7D~BZlQhC<@)OM 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 X9()> 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%0Aj<;DTms0b7o#0 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
8@eb4@$+vJ<=^AJg|>Viaa1SFuEvRYlUz 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

  • B+y$aH%3@x1 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 %Uc+M_Zet0@}{d&z_ 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