diff --git a/.github/workflows/main_dating-app-htec-intern.yml b/.github/workflows/main_dating-app-htec-intern.yml new file mode 100644 index 0000000..d7c5336 --- /dev/null +++ b/.github/workflows/main_dating-app-htec-intern.yml @@ -0,0 +1,82 @@ +# Docs for the Azure Web Apps Deploy action: https://github.com/Azure/webapps-deploy +# More GitHub Actions for Azure: https://github.com/Azure/actions + +name: Build and deploy ASP.Net Core app to Azure Web App - Dating-App-HTEC-Intern + +on: + push: + branches: + - main + workflow_dispatch: + +jobs: + build: + runs-on: windows-latest + permissions: + contents: read #This is required for actions/checkout + + steps: + - uses: actions/checkout@v4 + + - name: Set up node.js + uses: actions/setup-node@v3 + with: + node-version: '20' + + - name: Install Angular CLI + run: npm install -g @angular/cli@19 + + - name: Install deps and build angular app + run: | + cd client + npm install + ng build + + - name: Set up .NET Core + uses: actions/setup-dotnet@v4 + with: + dotnet-version: '9.x' + + - name: Build with dotnet + run: dotnet build --configuration Release + + - name: dotnet publish + run: dotnet publish -c Release -o "${{env.DOTNET_ROOT}}/myapp" + + - name: Upload artifact for deployment job + uses: actions/upload-artifact@v4 + with: + name: .net-app + path: ${{env.DOTNET_ROOT}}/myapp + + deploy: + runs-on: windows-latest + needs: build + environment: + name: 'Production' + url: ${{ steps.deploy-to-webapp.outputs.webapp-url }} + permissions: + id-token: write #This is required for requesting the JWT + contents: read #This is required for actions/checkout + + steps: + - name: Download artifact from build job + uses: actions/download-artifact@v4 + with: + name: .net-app + + - name: Login to Azure + uses: azure/login@v2 + with: + client-id: ${{ secrets.AZUREAPPSERVICE_CLIENTID_208CA351617B4FA788EAE781A942B3F9 }} + tenant-id: ${{ secrets.AZUREAPPSERVICE_TENANTID_E47467B042204ABB9220C7F466DA4B13 }} + subscription-id: ${{ secrets.AZUREAPPSERVICE_SUBSCRIPTIONID_288A10112D9A4341B4F6DAD43DAEC34F }} + + - name: Deploy to Azure Web App + id: deploy-to-webapp + uses: azure/webapps-deploy@v3 + with: + app-name: 'Dating-App-HTEC-Intern' + slot-name: 'Production' + package: . + \ No newline at end of file diff --git a/API.Tests/API.Tests.csproj b/API.Tests/API.Tests.csproj new file mode 100644 index 0000000..929a72e --- /dev/null +++ b/API.Tests/API.Tests.csproj @@ -0,0 +1,26 @@ + + + + net9.0 + enable + enable + false + + + + + + + + + + + + + + + + + + + diff --git a/API.Tests/PhotoApprovalTests.cs b/API.Tests/PhotoApprovalTests.cs new file mode 100644 index 0000000..bfd73af --- /dev/null +++ b/API.Tests/PhotoApprovalTests.cs @@ -0,0 +1,208 @@ +using Moq; +using Microsoft.Extensions.Logging; +using Microsoft.AspNetCore.Identity; +using API.Interfaces; +using API.Entities; +using API.Services; +using Xunit; +using API.Services._Admin; +using Microsoft.AspNetCore.SignalR; +using API.SignalR; +using API.Errors; + +namespace API.Tests +{ + public class PhotoApprovalTests + { + private readonly Mock _unitOfWorkMock; + private readonly Mock _photoRepoMock; + private readonly Mock _userRepoMock; + private readonly Mock _photoServiceMock; + private readonly Mock> _userManagerMock; + private readonly Mock> _hubContext; + private readonly AdminService _adminService; + + public PhotoApprovalTests() + { + _unitOfWorkMock = new Mock(); + _photoRepoMock = new Mock(); + _userRepoMock = new Mock(); + _photoServiceMock = new Mock(); + _userManagerMock = new Mock>( + Mock.Of>(), null, null, null, null, null, null, null, null + ); + _hubContext = new Mock>(); + + _unitOfWorkMock.Setup(u => u.PhotoRepository).Returns(_photoRepoMock.Object); + _unitOfWorkMock.Setup(u => u.UserRepository).Returns(_userRepoMock.Object); + + _adminService = new AdminService( + _userManagerMock.Object, + _unitOfWorkMock.Object, + _photoServiceMock.Object, + _hubContext.Object + ); + } + + [Fact] + public async Task ApprovePhotoAsync_ApprovesPhoto_WhenPhotoExists() + { + // Arrange + var appUserId = 2; + var photo = CreateTestPhoto(appUserId: appUserId, isMain: false, isApproved: false, id: 1); + var user = CreateTestUser(appUserId, photo); + + SetupMocksForSuccessfulApproval(photo, user); + + // Act + await _adminService.ApprovePhoto(photo.Id); + + // Assert + Assert.True(photo.IsApproved); + _unitOfWorkMock.Verify(u => u.Complete(), Times.Once); + } + + [Fact] + public async Task ApprovePhotoAsync_SetAsMain_WhenNoMainPhotoExists() + { + // Arrange + var appUserId = 2; + var photo = CreateTestPhoto(appUserId: appUserId); + var user = CreateTestUser(appUserId, photo); + + SetupMocksForSuccessfulApproval(photo, user); + + // Act + await _adminService.ApprovePhoto(photo.Id); + + // Assert + Assert.True(photo.IsMain); + Assert.True(photo.IsApproved); + _unitOfWorkMock.Verify(u => u.Complete(), Times.Once); + } + + [Fact] + public async Task ApprovePhotoAsync_DoesNotSetAsMain_WhenMainPhotoAlreadyExists() + { + // Arrange + var appUserId = 2; + var mainPhoto = CreateTestPhoto(id: 1, isMain: true, isApproved: true, appUserId: appUserId); + var photoToApprove = CreateTestPhoto(id: 2, isMain: false, isApproved: false, appUserId: appUserId); + var user = CreateTestUser(appUserId, mainPhoto, photoToApprove); + + SetupMocksForSuccessfulApproval(photoToApprove, user); + + // Act + await _adminService.ApprovePhoto(photoToApprove.Id); + + // Assert + Assert.False(photoToApprove.IsMain); + Assert.True(photoToApprove.IsApproved); + Assert.True(mainPhoto.IsMain); // Main photo should remain unchanged + } + + [Fact] + public async Task ApprovePhotoAsync_ThrowsNotFoundException_WhenPhotoNotFound() + { + // Arrange + const int nonExistentPhotoId = 999; + _photoRepoMock.Setup(r => r.GetPhotoById(nonExistentPhotoId)) + .ReturnsAsync((Photo?)null); + + // Act & Assert + await Assert.ThrowsAsync( + () => _adminService.ApprovePhoto(nonExistentPhotoId)); + _unitOfWorkMock.Verify(u => u.Complete(), Times.Never); + } + + [Fact] + public async Task ApprovePhotoAsync_ThrowsNotFoundException_WhenProblemApproving() + { + // Arrange + var appUserId = 2; + var photo = CreateTestPhoto(appUserId: appUserId); + var user = CreateTestUser(appUserId, photo); + + _photoRepoMock.Setup(r => r.GetPhotoById(photo.Id)).ReturnsAsync(photo); + _photoRepoMock.Setup(r => r.GetUserByPhotoId(photo.Id)).ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.Complete()).ReturnsAsync(false); // Simulate failure + + // Act & Assert + var ex = await Assert.ThrowsAsync( + () => _adminService.ApprovePhoto(photo.Id)); + Assert.Equal("Failed to approve photo", ex.Message); + _unitOfWorkMock.Verify(u => u.Complete(), Times.Once); // Promena: Times.Once umesto Times.Never + } + + [Theory] + [InlineData(0)] + [InlineData(-1)] + [InlineData(-999)] + public async Task ApprovePhotoAsync_ThrowsNotFoundException_WhenPhotoIdIsInvalid(int invalidId) + { + // Arrange + _photoRepoMock.Setup(r => r.GetPhotoById(invalidId)) + .ReturnsAsync((Photo?)null); + + // Act & Assert + var exception = await Assert.ThrowsAsync( + () => _adminService.ApprovePhoto(invalidId)); + + Assert.Equal("Photo not found", exception.Message); + } + + [Fact] + public async Task ApprovePhotoAsync_ThrowsNotFoundException_WhenUserNotFound() + { + // Arrange + var appUserId = 2; + var photo = CreateTestPhoto(appUserId: appUserId); + + _photoRepoMock.Setup(r => r.GetPhotoById(photo.Id)).ReturnsAsync(photo); + _photoRepoMock.Setup(r => r.GetUserByPhotoId(photo.Id)) + .ReturnsAsync((AppUser?)null); + + // Act & Assert + var ex = await Assert.ThrowsAsync( + () => _adminService.ApprovePhoto(photo.Id)); + Assert.Equal("User not found", ex.Message); + } + + #region Helper Methods + + private static Photo CreateTestPhoto(int id = 1, bool isMain = false, bool isApproved = false, int appUserId = 2) + { + return new Photo + { + Id = id, + AppUserId = appUserId, + IsApproved = isApproved, + IsMain = isMain, + Url = $"https://test.com/photo{id}.jpg" + }; + } + + private static AppUser CreateTestUser(int appUserId, params Photo[] photos) + { + return new AppUser + { + Id = appUserId, + UserName = "testuser", + KnownAs = "Test User", + Gender = "male", + City = "TestCity", + Country = "TestCountry", + Photos = photos.ToList() + }; + } + + private void SetupMocksForSuccessfulApproval(Photo photo, AppUser user) + { + _photoRepoMock.Setup(r => r.GetPhotoById(photo.Id)).ReturnsAsync(photo); + _photoRepoMock.Setup(r => r.GetUserByPhotoId(photo.Id)).ReturnsAsync(user); // OVO JE KLJUČNO + _unitOfWorkMock.Setup(u => u.Complete()).ReturnsAsync(true); + } + + #endregion + } +} \ No newline at end of file diff --git a/API.Tests/PhotoDeleteTests.cs b/API.Tests/PhotoDeleteTests.cs new file mode 100644 index 0000000..67eeab2 --- /dev/null +++ b/API.Tests/PhotoDeleteTests.cs @@ -0,0 +1,276 @@ +using Moq; +using API.Interfaces; +using API.Entities; +using API.Services; +using Microsoft.Extensions.Logging; +using AutoMapper; +using CloudinaryDotNet.Actions; +using Xunit; +using API.Services._User; +using API.Errors; +namespace API.Tests +{ + public class PhotoDeleteTests + { + private readonly Mock _unitOfWorkMock; + private readonly Mock _photoServiceMock; + private readonly Mock _mapperMock; + private readonly UserService _userService; + public PhotoDeleteTests() + { + _unitOfWorkMock = new Mock(); + _photoServiceMock = new Mock(); + _mapperMock = new Mock(); + + _userService = new UserService( + _unitOfWorkMock.Object, + _mapperMock.Object, + _photoServiceMock.Object + ); + } + + [Fact] + public async Task DeletePhotoAsync_ShouldDeletePhoto_WhenValid() + { + // Arrange + var photo = CreateTestPhoto(id: 1, isMain: false, publicId: "cloud123"); + var user = CreateTestUser("reuf", photo); + + SetupMocksForSuccessfulDeletion(user, photo); + + // Act + await _userService.DeletePhoto(1, "reuf"); + + // Assert + Assert.False(user.Photos.Contains(photo)); + VerifyDeletionCalls(photo); + } + + [Fact] + public async Task DeletePhotoAsync_ShouldDeleteMainPhoto_WhenOtherPhotosExist() + { + // Arrange + var mainPhoto = CreateTestPhoto(id: 1, isMain: true, publicId: "main123"); + var otherPhoto = CreateTestPhoto(id: 2, isMain: false, publicId: "other123"); + var user = CreateTestUser("reuf", mainPhoto, otherPhoto); + + // Setup different behavior - test should expect BadRequestException + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync("reuf")) + .ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.PhotoRepository.GetPhotoById(1)) + .ReturnsAsync(mainPhoto); + + // Act & Assert - expecting BadRequestException since deleting main photo is not allowed + var exception = await Assert.ThrowsAsync( + () => _userService.DeletePhoto(1, "reuf")); + + Assert.Equal("You cannot delete your main photo", exception.Message); + } + + [Fact] + public async Task DeletePhotoAsync_ShouldThrowException_WhenPhotoDoesNotBelongToUser() + { + // Arrange + var photo = CreateTestPhoto(id: 1, appUserId: 999); // Different user ID + var user = CreateTestUser("reuf"); // User ID will be 2 by default + + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync("reuf")) + .ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.PhotoRepository.GetPhotoById(1)) + .ReturnsAsync(photo); + + // Act & Assert - This should throw some kind of exception when photo doesn't belong to user + var exception = await Assert.ThrowsAnyAsync( + () => _userService.DeletePhoto(1, "reuf")); + + // Verify that no photo service calls were made since authorization should fail + VerifyNoPhotoServiceCalls(); + } + + [Fact] + public async Task DeletePhotoAsync_ShouldThrowBadRequestException_WhenDeletingOnlyMainPhoto() + { + // Arrange + var mainPhoto = CreateTestPhoto(id: 1, isMain: true); + var user = CreateTestUser("reuf", mainPhoto); + + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync("reuf")) + .ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.PhotoRepository.GetPhotoById(1)) + .ReturnsAsync(mainPhoto); + + // Act & Assert + var exception = await Assert.ThrowsAsync( + () => _userService.DeletePhoto(1, "reuf")); + + Assert.Equal("You cannot delete your main photo", exception.Message); + VerifyNoPhotoServiceCalls(); + } + + [Fact] + public async Task DeletePhotoAsync_ShouldThrowException_WhenSaveFails() + { + // Arrange + var photo = CreateTestPhoto(id: 1, isMain: false, publicId: "cloud123"); + var user = CreateTestUser("testuser", photo); + + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync("testuser")) + .ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.PhotoRepository.GetPhotoById(1)) + .ReturnsAsync(photo); + _photoServiceMock.Setup(p => p.DeletePhotoAsync("cloud123")) + .ReturnsAsync(new DeletionResult { Result = "ok" }); + _unitOfWorkMock.Setup(u => u.Complete()).ReturnsAsync(false); // Simulate save failure + + // Act & Assert + var exception = await Assert.ThrowsAsync( + () => _userService.DeletePhoto(1, "testuser")); + + Assert.Equal("Failed to delete the photo", exception.Message); // Updated message + _photoServiceMock.Verify(p => p.DeletePhotoAsync("cloud123"), Times.Once); + _unitOfWorkMock.Verify(u => u.Complete(), Times.Once); + } + + [Fact] + public async Task DeletePhotoAsync_ShouldThrowNotFoundException_WhenUserNotFound() + { + // Arrange + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync("nonexistent")) + .ReturnsAsync((AppUser?)null); + + // Act & Assert + var exception = await Assert.ThrowsAsync( + () => _userService.DeletePhoto(1, "nonexistent")); + + Assert.Equal("User not found", exception.Message); + VerifyNoPhotoServiceCalls(); + } + + [Fact] + public async Task DeletePhotoAsync_ShouldThrowNotFoundException_WhenPhotoNotFound() + { + // Arrange + var user = CreateTestUser("reuf"); + + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync("reuf")) + .ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.PhotoRepository.GetPhotoById(999)) + .ReturnsAsync((Photo?)null); + + // Act & Assert + var exception = await Assert.ThrowsAsync( + () => _userService.DeletePhoto(999, "reuf")); + + Assert.Equal("Photo not found", exception.Message); + VerifyNoPhotoServiceCalls(); + } + + [Theory] + [InlineData("ok")] + [InlineData("success")] + public async Task DeletePhotoAsync_ShouldSucceed_WithDifferentCloudinaryResults(string result) + { + // Arrange + var photo = CreateTestPhoto(id: 1, isMain: false, publicId: "cloud123"); + var user = CreateTestUser("reuf", photo); + + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync("reuf")) + .ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.PhotoRepository.GetPhotoById(1)) + .ReturnsAsync(photo); + _photoServiceMock.Setup(p => p.DeletePhotoAsync("cloud123")) + .ReturnsAsync(new DeletionResult { Result = result }); + _unitOfWorkMock.Setup(u => u.Complete()).ReturnsAsync(true); + + // Act + await _userService.DeletePhoto(1, "reuf"); + + // Assert + Assert.False(user.Photos.Contains(photo)); + VerifyDeletionCalls(photo); + } + + [Fact] + public async Task DeletePhotoAsync_ShouldThrowBadRequestException_WhenCloudinaryDeletionFails() + { + // Arrange + var photo = CreateTestPhoto(id: 1, isMain: false, publicId: "cloud123"); + var user = CreateTestUser("reuf", photo); + + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync("reuf")) + .ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.PhotoRepository.GetPhotoById(1)) + .ReturnsAsync(photo); + _photoServiceMock.Setup(p => p.DeletePhotoAsync("cloud123")) + .ReturnsAsync(new DeletionResult { Result = "error", Error = new Error { Message = "Failed to delete" } }); + + // Act & Assert + var exception = await Assert.ThrowsAsync( + () => _userService.DeletePhoto(1, "reuf")); + + Assert.Equal("Failed to delete", exception.Message); + _photoServiceMock.Verify(p => p.DeletePhotoAsync("cloud123"), Times.Once); + _unitOfWorkMock.Verify(u => u.Complete(), Times.Never); + } + + #region Helper Methods + + private static Photo CreateTestPhoto(int id = 1, bool isMain = false, int appUserId = 2, string? publicId = null) + { + return new Photo + { + Id = id, + Url = $"http://test{id}.com", + PublicId = publicId ?? $"cloud{id}", + IsMain = isMain, + AppUserId = appUserId + }; + } + + private static AppUser CreateTestUser(string username, params Photo[] photos) + { + var userId = photos.FirstOrDefault()?.AppUserId ?? 2; + return new AppUser + { + Id = userId, + UserName = username, + KnownAs = username.Substring(0, 1).ToUpper() + username.Substring(1), + Gender = "male", + City = "TestCity", + Country = "TestCountry", + Photos = photos.ToList() + }; + } + + private void SetupMocksForSuccessfulDeletion(AppUser user, Photo photo) + { + _unitOfWorkMock.Setup(u => u.UserRepository.GetUserByUsernameAsync(user.UserName)) + .ReturnsAsync(user); + _unitOfWorkMock.Setup(u => u.PhotoRepository.GetPhotoById(photo.Id)) + .ReturnsAsync(photo); + _photoServiceMock.Setup(p => p.DeletePhotoAsync(photo.PublicId)) + .ReturnsAsync(new DeletionResult { Result = "ok" }); + _unitOfWorkMock.Setup(u => u.Complete()).ReturnsAsync(true); + } + + private void VerifyDeletionCalls(Photo photo) + { + _photoServiceMock.Verify(p => p.DeletePhotoAsync(photo.PublicId), Times.Once); + _unitOfWorkMock.Verify(u => u.Complete(), Times.Once); + } + + private void VerifyNoPhotoServiceCalls() + { + _photoServiceMock.Verify(p => p.DeletePhotoAsync(It.IsAny()), Times.Never); + _unitOfWorkMock.Verify(u => u.Complete(), Times.Never); + } + + private void VerifyNoMockCalls() + { + _unitOfWorkMock.VerifyNoOtherCalls(); + _photoServiceMock.VerifyNoOtherCalls(); + } + + #endregion + } +} \ No newline at end of file diff --git a/API/API.csproj b/API/API.csproj index 852855e..b057948 100644 --- a/API/API.csproj +++ b/API/API.csproj @@ -9,12 +9,23 @@ + + + + + + + diff --git a/API/Controllers/AccountController.cs b/API/Controllers/AccountController.cs index 071fa11..3db25f5 100644 --- a/API/Controllers/AccountController.cs +++ b/API/Controllers/AccountController.cs @@ -12,11 +12,12 @@ namespace API.Controllers; public class AccountController(UserManager userManager, ITokenService tokenService, IMapper mapper, ILogger logger) : BaseApiController { - private readonly AccountService _accountHelper = new AccountService(userManager, tokenService, mapper); + private readonly IAccountService _accountHelper = new AccountService(userManager, tokenService, mapper); private readonly ILogger _logger = logger; /// /// POST: /api/account/register + /// Registers a new user with the provided registration details. /// /// /// @@ -45,6 +46,7 @@ public class AccountController(UserManager userManager, ITokenService t /// /// POST: /api/account/login + /// Logs in a user with the provided login credentials and returns user details along with a token. /// /// /// diff --git a/API/Controllers/AdminController.cs b/API/Controllers/AdminController.cs index 6f36299..7199c41 100644 --- a/API/Controllers/AdminController.cs +++ b/API/Controllers/AdminController.cs @@ -6,17 +6,20 @@ using Microsoft.AspNetCore.Mvc; using Microsoft.AspNetCore.SignalR; using API.SignalR; +using API.DTOs; using Serilog; +using System.Security.Claims; namespace API.Controllers; public class AdminController(UserManager userManager, IUnitOfWork unitOfWork, IPhotoService photoService, IHubContext hubContext, ILogger logger) : BaseApiController { - private readonly AdminService _adminHelper = new AdminService(userManager, unitOfWork, photoService, hubContext); + private readonly IAdminService _adminHelper = new AdminService(userManager, unitOfWork, photoService, hubContext); private readonly ILogger _logger = logger; /// /// GET /api/admin/users-with-roles + /// Retrieves a list of users along with their roles. /// /// ///[AllowAnonymous] @@ -45,6 +48,7 @@ public async Task GetUsersWithRoles() /// /// POST /api/admin/edit-roles/{username} + /// Edits the roles of a user specified by username. /// /// /// @@ -75,6 +79,7 @@ public async Task EditRoles(string username, string roles) /// /// GET /api/admin/photos-to-moderate + /// Retrieves a list of photos that need moderation. /// /// [HttpGet("photos-to-moderate")] @@ -103,6 +108,7 @@ public async Task GetPhotosForModeration() /// /// POST /api/admin/approve-photo/{photoId} + /// Approves a photo for publication by its ID. /// /// /// lorem ipsum @@ -134,6 +140,7 @@ public async Task ApprovePhoto(int photoId) /// /// POST /api/admin/reject-photo/{photoId} + /// Rejects a photo by its ID, removing it from moderation queue and deleting the photo. /// /// /// @@ -160,4 +167,154 @@ public async Task RejectPhoto(int photoId) throw; } } -} \ No newline at end of file + + /// + /// POST /api/admin/create-tag + /// Creates a new tag with the specified name. + /// + /// + /// + /// + /// [Authorize(Policy = "ModeratePhotoRole")] + [HttpPost("create-tag")] + [ProducesResponseType(typeof(ActionResult), StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status400BadRequest)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status404NotFound)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + [ProducesErrorResponseType(typeof(void))] + public async Task CreateTag([FromBody] TagCreateDto tagDto) + { + try + { + _logger.LogDebug($"AdminController - {nameof(CreateTag)} invoked. (tagDto: {tagDto})"); + var createdTag = await _adminHelper.CreateTagAsync(tagDto?.Name?.Trim() ?? throw new ArgumentException("Tag name cannot be null or empty.")); + return Ok(createdTag); + } + catch (Exception ex) + { + _logger.LogError(ex, "Exception in AdminController.CreateTag"); + throw; + } + } + + /// + /// GET /api/admin/get-tags + /// Retrieves a list of all tags. + /// + /// + /// [Authorize(Policy = "ModeratePhotoRole")] + [HttpGet("get-tags")] + [ProducesResponseType(typeof(ActionResult), StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status400BadRequest)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status404NotFound)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + [ProducesErrorResponseType(typeof(void))] + public async Task GetTags() + { + try + { + _logger.LogDebug($"AdminController - {nameof(GetTags)} invoked."); + var tags = await _adminHelper.GetTagsAsync(); + return Ok(tags); + } + catch (Exception ex) + { + _logger.LogError(ex, "Exception in AdminController.GetTags"); + throw; + } + } + + /// + /// DELETE /api/admin/delete-tag/{name} + /// Deletes a tag by its name. + /// + /// + /// + /// + /// [Authorize(Policy = "ModeratePhotoRole")] + [HttpDelete("delete-tag/{name}")] + [ProducesResponseType(typeof(ActionResult), StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status400BadRequest)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status404NotFound)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + [ProducesErrorResponseType(typeof(void))] + public async Task DeleteTag(string name) + { + try + { + _logger.LogDebug($"AdminController - {nameof(DeleteTag)} invoked. (name: {name})"); + await _adminHelper.RemoveTagByNameAsync(name?.Trim() ?? throw new ArgumentException("Tag name cannot be null or empty.")); + return Ok(new { message = "Tag successfully removed." }); + } + catch (Exception ex) + { + _logger.LogError(ex, "Exception in AdminController.DeleteTag"); + throw; + } + } + + /// + /// GET /api/admin/users-without-main-photo + /// Retrieves a list of usernames of users who do not have a main photo. + /// + /// + /// + /// + [Authorize(Policy = "RequireAdminRole")] + [HttpGet("users-without-main-photo")] + [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + [ProducesErrorResponseType(typeof(void))] + public async Task>> GetUsersWithoutMainPhoto() + { + try + { + _logger.LogDebug($"AdminController - {nameof(GetUsersWithoutMainPhoto)} invoked."); + var userId = int.Parse(User.FindFirst(ClaimTypes.NameIdentifier)?.Value + ?? User.FindFirst("nameid")?.Value + ?? throw new Exception("Cannot get user id from token!")); + var users = await _adminHelper.GetUsersWithoutMainPhoto(userId) ?? throw new KeyNotFoundException("No users without main photo found."); + return Ok(users); + } + catch (Exception ex) + { + _logger.LogError(ex, "Exception in AdminController.GetUsersWithoutMainPhoto"); + throw; + } + } + + /// + /// GET /api/admin/photo-stats + /// Retrieves statistics about photos, including approved and unapproved counts for each user. + /// + /// + /// + /// + [Authorize(Policy = "RequireAdminRole")] + [HttpGet("photo-stats")] + [ProducesResponseType(typeof(IEnumerable), StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + [ProducesErrorResponseType(typeof(void))] + public async Task>> GetPhotoStats() + { + try + { + _logger.LogDebug($"AdminController - {nameof(GetPhotoStats)} invoked."); + var userId = int.Parse(User.FindFirst(ClaimTypes.NameIdentifier)?.Value + ?? User.FindFirst("nameId")?.Value + ?? throw new Exception("Cannot get user id from token!")); + var photoStats = await _adminHelper.GetPhotoApprovalStatisticsAsync(userId) ?? throw new KeyNotFoundException("No photo stats found."); + return Ok(photoStats); + } + catch (Exception ex) + { + _logger.LogError(ex, "Exception in AdminController.GetPhotoStats"); + throw; + } + } + +} + diff --git a/API/Controllers/LikesController.cs b/API/Controllers/LikesController.cs index 2340cfc..85d1c14 100644 --- a/API/Controllers/LikesController.cs +++ b/API/Controllers/LikesController.cs @@ -13,11 +13,12 @@ namespace API.Controllers; public class LikesController(IUnitOfWork unitOfWork, ILogger logger) : BaseApiController { - private readonly LikesService _likesService = new LikesService(unitOfWork); + private readonly ILikesService _likesService = new LikesService(unitOfWork); private readonly ILogger _logger = logger; /// /// POST /api/likes/{targetUserId:int} + /// Toggles a like for the specified user. /// /// /// @@ -47,6 +48,7 @@ public async Task ToggleLike(int targetUserId) /// /// GET /api/likes/list + /// Retrieves a list of IDs of users that the current user has liked. /// /// /// [AllowAnonymous] @@ -75,6 +77,7 @@ public async Task>> GetCurrentUserLikeIds() /// /// GET /api/likes?predicate={likesParams} + /// Retrieves a list of users that the current user has liked or who have liked the current user based on the provided LikesParams. /// /// /// diff --git a/API/Controllers/MessagesController.cs b/API/Controllers/MessagesController.cs index f05c769..a852891 100644 --- a/API/Controllers/MessagesController.cs +++ b/API/Controllers/MessagesController.cs @@ -13,11 +13,12 @@ namespace API.Controllers; [Authorize] public class MessagesController(IUnitOfWork unitOfWork, IMapper mapper, ILogger logger) : BaseApiController { - private readonly MessageService _messageHelper = new MessageService(unitOfWork, mapper); + private readonly IMessageService _messageHelper = new MessageService(unitOfWork, mapper); private readonly ILogger _logger = logger; /// /// POST /api/messages + /// Creates a new message. /// /// /// @@ -47,6 +48,7 @@ public async Task CreateMessage(CreateMessageDto createMessageDto /// /// GET /api/messages?container={messageParams} + /// Retrieves messages for the current user based on the specified parameters. /// /// /// @@ -77,6 +79,7 @@ public async Task>> GetMessagesForUser([Fro /// /// GET /api/messages/thread/{username} + /// Retrieves the message thread between the current user and the specified username. /// /// /// @@ -105,6 +108,7 @@ public async Task>> GetMessageThread(string /// /// DELETE /api/messages/{id} + /// Deletes a message by its ID for the current user. /// /// /// diff --git a/API/Controllers/UsersController.cs b/API/Controllers/UsersController.cs index 9b2dd31..90be3fe 100644 --- a/API/Controllers/UsersController.cs +++ b/API/Controllers/UsersController.cs @@ -13,11 +13,12 @@ namespace API.Controllers; [Authorize] public class UsersController(IUnitOfWork unitOfWork, IMapper mapper, IPhotoService photoService, ILogger logger) : BaseApiController { - private readonly UserService _userHelper = new UserService(unitOfWork, mapper, photoService); + private readonly IUserService _userHelper = new UserService(unitOfWork, mapper, photoService); private readonly ILogger _logger = logger; /// /// GET /api/users?predicate={userParams} + /// Retrieves a list of users based on the provided user parameters. /// /// /// @@ -47,6 +48,7 @@ public async Task>> GetUsers([FromQuery] Use /// /// GET /api/users/{username} + /// Retrieves a user by their username. /// /// /// @@ -75,6 +77,7 @@ public async Task> GetUser(string username) /// /// PUT /api/users + /// Updates the current user's profile information. /// /// /// @@ -103,6 +106,7 @@ public async Task UpdateUser(MemberUpdateDto memberUpdateDto) /// /// POST /api/users/add-photo + /// Adds a new photo for the user. /// /// /// @@ -114,12 +118,12 @@ public async Task UpdateUser(MemberUpdateDto memberUpdateDto) [ProducesResponseType(StatusCodes.Status404NotFound)] [ProducesResponseType(StatusCodes.Status500InternalServerError)] [ProducesErrorResponseType(typeof(void))] - public async Task> AddPhoto(IFormFile file) + public async Task> AddPhoto([FromForm] AddPhotoDto addPhotoDto) { try { - _logger.LogDebug($"UsersController - {nameof(AddPhoto)} invoked. (file: {file})"); - var photo = await _userHelper.AddPhoto(file, User.GetUsername()); + _logger.LogDebug($"UsersController - {nameof(AddPhoto)} invoked. (file: {addPhotoDto})"); + var photo = await _userHelper.AddPhoto(addPhotoDto, User.GetUsername()); return CreatedAtAction(nameof(GetUser), new { username = User.GetUsername() }, photo); } catch (Exception ex) @@ -131,6 +135,7 @@ public async Task> AddPhoto(IFormFile file) /// /// PUT /api/users/set-main-photo/{photoId:int} + /// Sets a user's main photo. /// /// /// @@ -159,6 +164,7 @@ public async Task SetMainPhoto(int photoId) /// /// DELETE /api/users/delete-photo/{photoId:int} + /// Deletes a user's photo by its ID. /// /// /// @@ -184,4 +190,88 @@ public async Task DeletePhoto(int photoId) throw; } } + + /// + /// POST /api/users/assign-tags/{photoId:int} + /// Assigns tags to a photo. + /// + /// + /// + /// + [HttpPost("assign-tags/{photoId:int}")] + [ProducesResponseType(typeof(ActionResult), StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status400BadRequest)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status404NotFound)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + [ProducesErrorResponseType(typeof(void))] + public async Task AssignTags(int photoId, [FromBody] List tags) + { + try + { + _logger.LogDebug($"UsersController - {nameof(AssignTags)} invoked. (photoId: {photoId}, tags: {string.Join(", ", tags)})"); + await _userHelper.AssignTags(photoId, User.GetUsername(), tags); + return Ok(); + } + catch (Exception ex) + { + _logger.LogError(ex, "Exception in UsersController.AssignTags"); + throw; + } + } + + /// + /// GET /api/users/tags + /// Retrieves all tags associated with photos. + /// + /// + [HttpGet("tags")] + [ProducesResponseType(typeof(ActionResult), StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status400BadRequest)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status404NotFound)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + [ProducesErrorResponseType(typeof(void))] + public async Task>> GetTags() + { + try + { + _logger.LogDebug($"UsersController - {nameof(GetTags)} invoked."); + var tags = await _userHelper.GetTags(); + return Ok(tags); + } + catch (Exception ex) + { + _logger.LogError(ex, "Exception in UsersController.GetTags"); + throw; + } + } + + /// + /// GET /api/users/tags + /// Retrieves all tags with photos. + /// + /// + [HttpGet("photos-tags")] + [ProducesResponseType(typeof(ActionResult), StatusCodes.Status200OK)] + [ProducesResponseType(StatusCodes.Status400BadRequest)] + [ProducesResponseType(StatusCodes.Status401Unauthorized)] + [ProducesResponseType(StatusCodes.Status404NotFound)] + [ProducesResponseType(StatusCodes.Status500InternalServerError)] + [ProducesErrorResponseType(typeof(void))] + public async Task>> GetPhotosWithTagsByUsername() + { + try + { + _logger.LogDebug($"UsersController - {nameof(GetPhotosWithTagsByUsername)} invoked."); + var photos = await _userHelper.GetPhotoWithTagsByUsernameAsync(User.GetUsername()); + return Ok(photos); + } + catch (Exception ex) + { + _logger.LogError(ex, "Exception in UsersController.GetPhotosWithTagsByUsername"); + throw; + } + } + } \ No newline at end of file diff --git a/API/DTOs/AddPhotoDto.cs b/API/DTOs/AddPhotoDto.cs new file mode 100644 index 0000000..1a23fe3 --- /dev/null +++ b/API/DTOs/AddPhotoDto.cs @@ -0,0 +1,7 @@ +namespace API.DTOs; + +public class AddPhotoDto +{ + public IFormFile File { get; set; } = null!; + public List TagIds { get; set; } = []; +} \ No newline at end of file diff --git a/API/DTOs/AddTagDto.cs b/API/DTOs/AddTagDto.cs new file mode 100644 index 0000000..b7a4c61 --- /dev/null +++ b/API/DTOs/AddTagDto.cs @@ -0,0 +1,6 @@ +namespace API.DTOs; + +public class AddTagDto +{ + public required string Name { get; set; } +} \ No newline at end of file diff --git a/API/DTOs/PhotoApprovalStatisticsDto.cs b/API/DTOs/PhotoApprovalStatisticsDto.cs new file mode 100644 index 0000000..c160506 --- /dev/null +++ b/API/DTOs/PhotoApprovalStatisticsDto.cs @@ -0,0 +1,10 @@ +using System; + +namespace API.DTOs; + +public class PhotoApprovalStatisticsDto +{ + public string? Username { get; set; } + public int ApprovedPhotos { get; set; } + public int UnapprovedPhotos { get; set; } +} diff --git a/API/DTOs/PhotoDto.cs b/API/DTOs/PhotoDto.cs index 7b11ded..b6201e3 100644 --- a/API/DTOs/PhotoDto.cs +++ b/API/DTOs/PhotoDto.cs @@ -5,6 +5,6 @@ public class PhotoDto public int Id { get; set; } public string? Url { get; set; } public bool IsMain { get; set; } - public DateTime CreatedAt { get; set; } = DateTime.UtcNow; public bool IsApproved { get; set; } + public List Tags { get; set; } = new List(); } \ No newline at end of file diff --git a/API/DTOs/PhotoForApprovalDto.cs b/API/DTOs/PhotoForApprovalDto.cs index a48c060..818e3c2 100644 --- a/API/DTOs/PhotoForApprovalDto.cs +++ b/API/DTOs/PhotoForApprovalDto.cs @@ -4,9 +4,9 @@ namespace API.DTOs; public class PhotoForApprovalDto { - public int Id { get; set; } + public int Id { get; set; } public required string Url { get; set; } public string? Username { get; set; } public bool IsApproved { get; set; } - + public List Tags { get; set; } = new List(); } diff --git a/API/DTOs/TagCreateDto.cs b/API/DTOs/TagCreateDto.cs new file mode 100644 index 0000000..a0344b2 --- /dev/null +++ b/API/DTOs/TagCreateDto.cs @@ -0,0 +1,5 @@ +namespace API.DTOs; +public class TagCreateDto +{ + public required string Name { get; set; } +} diff --git a/API/DTOs/TagDto.cs b/API/DTOs/TagDto.cs new file mode 100644 index 0000000..1355ac1 --- /dev/null +++ b/API/DTOs/TagDto.cs @@ -0,0 +1,7 @@ +namespace API.DTOs; + +public class TagDto +{ + public int Id { get; set; } + public required string Name { get; set; } +} \ No newline at end of file diff --git a/API/Data/DataContext.cs b/API/Data/DataContext.cs index 1cad4f8..fb3d591 100644 --- a/API/Data/DataContext.cs +++ b/API/Data/DataContext.cs @@ -1,4 +1,4 @@ -using System; +using API.DTOs; using API.Entities; using Microsoft.AspNetCore.Identity; using Microsoft.AspNetCore.Identity.EntityFrameworkCore; @@ -10,14 +10,17 @@ namespace API.Data; public class DataContext(DbContextOptions options) : IdentityDbContext - , AppUserRole, IdentityUserLogin, - IdentityRoleClaim, IdentityUserToken>(options) + , AppUserRole, + IdentityUserLogin, IdentityRoleClaim, + IdentityUserToken>(options) { public DbSet Likes { get; set; } public DbSet Messages { get; set; } public DbSet Groups { get; set; } public DbSet Connections { get; set; } public DbSet Photos { get; set; } + public DbSet Tags { get; set; } + public DbSet PhotoTags { get; set; } protected override void OnModelCreating(ModelBuilder builder) { base.OnModelCreating(builder); @@ -65,6 +68,23 @@ protected override void OnModelCreating(ModelBuilder builder) builder.Entity() .HasQueryFilter(photo => photo.IsApproved); + builder.Entity() + .HasKey(pt => new { pt.PhotoId, pt.TagId }); + + builder.Entity() + .HasOne(pt => pt.Photo) + .WithMany(p => p.PhotoTags) + .HasForeignKey(pt => pt.PhotoId); + + builder.Entity() + .HasOne(pt => pt.Tag) + .WithMany(t => t.PhotoTags) + .HasForeignKey(pt => pt.TagId); + + builder.Entity() + .HasIndex(t => t.Name) + .IsUnique(); + builder.ApplyUtcDateTimeConverter(); } } diff --git a/API/Data/Migrations/20250518164536_SqlInitial.Designer.cs b/API/Data/Migrations/20250527175823_InitialCreate.Designer.cs similarity index 89% rename from API/Data/Migrations/20250518164536_SqlInitial.Designer.cs rename to API/Data/Migrations/20250527175823_InitialCreate.Designer.cs index 9a0c4c4..c2b7094 100644 --- a/API/Data/Migrations/20250518164536_SqlInitial.Designer.cs +++ b/API/Data/Migrations/20250527175823_InitialCreate.Designer.cs @@ -12,8 +12,8 @@ namespace API.Data.Migrations { [DbContext(typeof(DataContext))] - [Migration("20250518164536_SqlInitial")] - partial class SqlInitial + [Migration("20250527175823_InitialCreate")] + partial class InitialCreate { /// protected override void BuildTargetModel(ModelBuilder modelBuilder) @@ -279,6 +279,41 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.ToTable("Photos"); }); + modelBuilder.Entity("API.Entities.PhotoTag", b => + { + b.Property("PhotoId") + .HasColumnType("int"); + + b.Property("TagId") + .HasColumnType("int"); + + b.HasKey("PhotoId", "TagId"); + + b.HasIndex("TagId"); + + b.ToTable("PhotoTags"); + }); + + modelBuilder.Entity("API.Entities.Tag", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasColumnType("nvarchar(450)"); + + b.HasKey("Id"); + + b.HasIndex("Name") + .IsUnique(); + + b.ToTable("Tags"); + }); + modelBuilder.Entity("API.Entities.UserLike", b => { b.Property("SourceUserId") @@ -439,6 +474,25 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) b.Navigation("AppUser"); }); + modelBuilder.Entity("API.Entities.PhotoTag", b => + { + b.HasOne("API.Entities.Photo", "Photo") + .WithMany("PhotoTags") + .HasForeignKey("PhotoId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("API.Entities.Tag", "Tag") + .WithMany("PhotoTags") + .HasForeignKey("TagId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Photo"); + + b.Navigation("Tag"); + }); + modelBuilder.Entity("API.Entities.UserLike", b => { b.HasOne("API.Entities.AppUser", "LikedUser") @@ -518,6 +572,16 @@ protected override void BuildTargetModel(ModelBuilder modelBuilder) { b.Navigation("Connections"); }); + + modelBuilder.Entity("API.Entities.Photo", b => + { + b.Navigation("PhotoTags"); + }); + + modelBuilder.Entity("API.Entities.Tag", b => + { + b.Navigation("PhotoTags"); + }); #pragma warning restore 612, 618 } } diff --git a/API/Data/Migrations/20250518164536_SqlInitial.cs b/API/Data/Migrations/20250527175823_InitialCreate.cs similarity index 89% rename from API/Data/Migrations/20250518164536_SqlInitial.cs rename to API/Data/Migrations/20250527175823_InitialCreate.cs index fe77591..3fe5d2c 100644 --- a/API/Data/Migrations/20250518164536_SqlInitial.cs +++ b/API/Data/Migrations/20250527175823_InitialCreate.cs @@ -6,7 +6,7 @@ namespace API.Data.Migrations { /// - public partial class SqlInitial : Migration + public partial class InitialCreate : Migration { /// protected override void Up(MigrationBuilder migrationBuilder) @@ -73,6 +73,19 @@ protected override void Up(MigrationBuilder migrationBuilder) table.PrimaryKey("PK_Groups", x => x.Name); }); + migrationBuilder.CreateTable( + name: "Tags", + columns: table => new + { + Id = table.Column(type: "int", nullable: false) + .Annotation("SqlServer:Identity", "1, 1"), + Name = table.Column(type: "nvarchar(450)", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_Tags", x => x.Id); + }); + migrationBuilder.CreateTable( name: "AspNetRoleClaims", columns: table => new @@ -277,6 +290,30 @@ protected override void Up(MigrationBuilder migrationBuilder) onDelete: ReferentialAction.Cascade); }); + migrationBuilder.CreateTable( + name: "PhotoTags", + columns: table => new + { + PhotoId = table.Column(type: "int", nullable: false), + TagId = table.Column(type: "int", nullable: false) + }, + constraints: table => + { + table.PrimaryKey("PK_PhotoTags", x => new { x.PhotoId, x.TagId }); + table.ForeignKey( + name: "FK_PhotoTags_Photos_PhotoId", + column: x => x.PhotoId, + principalTable: "Photos", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + table.ForeignKey( + name: "FK_PhotoTags_Tags_TagId", + column: x => x.TagId, + principalTable: "Tags", + principalColumn: "Id", + onDelete: ReferentialAction.Cascade); + }); + migrationBuilder.CreateIndex( name: "IX_AspNetRoleClaims_RoleId", table: "AspNetRoleClaims", @@ -340,6 +377,17 @@ protected override void Up(MigrationBuilder migrationBuilder) name: "IX_Photos_AppUserId", table: "Photos", column: "AppUserId"); + + migrationBuilder.CreateIndex( + name: "IX_PhotoTags_TagId", + table: "PhotoTags", + column: "TagId"); + + migrationBuilder.CreateIndex( + name: "IX_Tags_Name", + table: "Tags", + column: "Name", + unique: true); } /// @@ -370,7 +418,7 @@ protected override void Down(MigrationBuilder migrationBuilder) name: "Messages"); migrationBuilder.DropTable( - name: "Photos"); + name: "PhotoTags"); migrationBuilder.DropTable( name: "AspNetRoles"); @@ -378,6 +426,12 @@ protected override void Down(MigrationBuilder migrationBuilder) migrationBuilder.DropTable( name: "Groups"); + migrationBuilder.DropTable( + name: "Photos"); + + migrationBuilder.DropTable( + name: "Tags"); + migrationBuilder.DropTable( name: "AspNetUsers"); } diff --git a/API/Data/Migrations/DataContextModelSnapshot.cs b/API/Data/Migrations/DataContextModelSnapshot.cs index 78d6d68..e162c60 100644 --- a/API/Data/Migrations/DataContextModelSnapshot.cs +++ b/API/Data/Migrations/DataContextModelSnapshot.cs @@ -276,6 +276,41 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.ToTable("Photos"); }); + modelBuilder.Entity("API.Entities.PhotoTag", b => + { + b.Property("PhotoId") + .HasColumnType("int"); + + b.Property("TagId") + .HasColumnType("int"); + + b.HasKey("PhotoId", "TagId"); + + b.HasIndex("TagId"); + + b.ToTable("PhotoTags"); + }); + + modelBuilder.Entity("API.Entities.Tag", b => + { + b.Property("Id") + .ValueGeneratedOnAdd() + .HasColumnType("int"); + + SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id")); + + b.Property("Name") + .IsRequired() + .HasColumnType("nvarchar(450)"); + + b.HasKey("Id"); + + b.HasIndex("Name") + .IsUnique(); + + b.ToTable("Tags"); + }); + modelBuilder.Entity("API.Entities.UserLike", b => { b.Property("SourceUserId") @@ -436,6 +471,25 @@ protected override void BuildModel(ModelBuilder modelBuilder) b.Navigation("AppUser"); }); + modelBuilder.Entity("API.Entities.PhotoTag", b => + { + b.HasOne("API.Entities.Photo", "Photo") + .WithMany("PhotoTags") + .HasForeignKey("PhotoId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.HasOne("API.Entities.Tag", "Tag") + .WithMany("PhotoTags") + .HasForeignKey("TagId") + .OnDelete(DeleteBehavior.Cascade) + .IsRequired(); + + b.Navigation("Photo"); + + b.Navigation("Tag"); + }); + modelBuilder.Entity("API.Entities.UserLike", b => { b.HasOne("API.Entities.AppUser", "LikedUser") @@ -515,6 +569,16 @@ protected override void BuildModel(ModelBuilder modelBuilder) { b.Navigation("Connections"); }); + + modelBuilder.Entity("API.Entities.Photo", b => + { + b.Navigation("PhotoTags"); + }); + + modelBuilder.Entity("API.Entities.Tag", b => + { + b.Navigation("PhotoTags"); + }); #pragma warning restore 612, 618 } } diff --git a/API/Data/PhotoRepository.cs b/API/Data/PhotoRepository.cs index c68c460..d01e97f 100644 --- a/API/Data/PhotoRepository.cs +++ b/API/Data/PhotoRepository.cs @@ -1,12 +1,17 @@ using System; +using System.Data; + using API.DTOs; using API.Entities; using API.Interfaces; +using AutoMapper; +using AutoMapper.QueryableExtensions; +using Microsoft.Data.SqlClient; using Microsoft.EntityFrameworkCore; namespace API.Data; -public class PhotoRepository(DataContext context) : IPhotoRepository +public class PhotoRepository(DataContext context, IMapper mapper) : IPhotoRepository { public async Task GetPhotoById(int id) { @@ -14,21 +19,32 @@ public class PhotoRepository(DataContext context) : IPhotoRepository .IgnoreQueryFilters() .SingleOrDefaultAsync(x => x.Id == id); } - - public async Task> GetUnapprovedPhotos() + public async Task GetPhotoWithTagsById(int id) + { + return await context.Photos + .Include(p => p.PhotoTags) + .ThenInclude(pt => pt.Tag) + .IgnoreQueryFilters() + .FirstOrDefaultAsync(x => x.Id == id); + } + public async Task> GetPhotosByUsername(string username) { return await context.Photos + .Where(p => p.AppUser.UserName == username) + .Include(p => p.PhotoTags) + .ThenInclude(pt => pt.Tag) + .IgnoreQueryFilters() + .ToListAsync(); + } + public async Task> GetUnapprovedPhotos() + { + var query = context.Photos .IgnoreQueryFilters() .Where(p => p.IsApproved == false) - .Select(u => new PhotoForApprovalDto - { - Id = u.Id, - Username = u.AppUser.UserName, - Url = u.Url, - IsApproved = u.IsApproved - }).ToListAsync(); + .AsQueryable(); + return await query.ProjectTo(mapper.ConfigurationProvider) + .ToListAsync(); } - public async Task GetUserByPhotoId(int photoId) { return await context.Users @@ -37,9 +53,69 @@ public async Task> GetUnapprovedPhotos() .Where(p => p.Photos.Any(p => p.Id == photoId)) .FirstOrDefaultAsync(); } - public void RemovePhoto(Photo photo) { context.Photos.Remove(photo); } + public void AddTag(Tag tag) + { + context.Tags.Add(tag); + } + public async Task> GetTagsAsStrings() + { + return await context.Tags.Select(t => t.Name).ToListAsync(); + } + public async Task> GetTags() + { + var query = context.Tags.AsQueryable(); + return await query.ProjectTo(mapper.ConfigurationProvider).ToListAsync(); + } + public async Task> GetUsersWithoutMainPhotoAsync(int currentUserId) + { + var result = new List(); + + using var command = context.Database.GetDbConnection().CreateCommand(); + command.CommandText = "GetUsersWithoutMainPhoto"; + command.CommandType = CommandType.StoredProcedure; + + command.Parameters.Add(new SqlParameter("@CurrentUserId", currentUserId)); + + await context.Database.OpenConnectionAsync(); + + using var reader = await command.ExecuteReaderAsync(); + + while (await reader.ReadAsync()) + { + result.Add(reader.GetString(0)); + } + return result; + } + public async Task> GetPhotoStatsApprovalAsync(int currentUserId) + { + var result = new List(); + + using var command = context.Database.GetDbConnection().CreateCommand(); + + command.CommandText = "GetPhotoStatsApproval"; + command.CommandType = CommandType.StoredProcedure; + + var userIdParam = new SqlParameter("@CurrentUserId", currentUserId); + command.Parameters.Add(userIdParam); + + await context.Database.OpenConnectionAsync(); + + using var reader = await command.ExecuteReaderAsync(); + + while (await reader.ReadAsync()) + { + result.Add(new PhotoApprovalStatisticsDto + { + Username = reader.GetString(0), + ApprovedPhotos = reader.IsDBNull(1) ? 0 : reader.GetInt32(1), + UnapprovedPhotos = reader.IsDBNull(2) ? 0 : reader.GetInt32(2) + }); + } + return result; + } } + diff --git a/API/Data/Seed.cs b/API/Data/Seed.cs index 54e0652..b0c32ca 100644 --- a/API/Data/Seed.cs +++ b/API/Data/Seed.cs @@ -10,6 +10,19 @@ namespace API.Data; public class Seed { + public static async Task SeedTagsAsync(DataContext context) + { + if (await context.Tags.AnyAsync()) return; + + var tagData = await File.ReadAllTextAsync("Data/tags.json"); + var tags = JsonSerializer.Deserialize>(tagData); + + if (tags is not null) + { + context.Tags.AddRange(tags); + await context.SaveChangesAsync(); + } + } public static async Task SeedUsers(UserManager userManager, RoleManager roleManager) { if (await userManager.Users.AnyAsync()) return; @@ -27,7 +40,7 @@ public static async Task SeedUsers(UserManager userManager, RoleManager new() {Name = "Admin"}, new() {Name = "Moderator"} }; - foreach(var role in roles) + foreach (var role in roles) { await roleManager.CreateAsync(role); } diff --git a/API/Data/TagsRepository.cs b/API/Data/TagsRepository.cs new file mode 100644 index 0000000..775b25a --- /dev/null +++ b/API/Data/TagsRepository.cs @@ -0,0 +1,68 @@ +using API.DTOs; +using API.Entities; +using API.Interfaces; +using Microsoft.EntityFrameworkCore; + +namespace API.Data; + +public class TagsRepository(DataContext context) : ITagsRepository +{ + private readonly DataContext _context = context; + public async Task> GetAllTagsAsync() + { + return await _context.Tags.ToListAsync(); + } + + public async Task> GetTagsByNamesAsync(List tags) + { + if (tags == null || !tags.Any()) + return new List(); + + var distinctNames = tags + .Where(n => !string.IsNullOrWhiteSpace(n)) + .Select(n => n.Trim()) + .Distinct(StringComparer.OrdinalIgnoreCase) + .ToList(); + + var allTags = await _context.Tags.ToListAsync(); + + var matchingTags = allTags + .Where(t => distinctNames.Contains(t.Name, StringComparer.OrdinalIgnoreCase)) + .ToList(); + + var existingNames = matchingTags + .Select(t => t.Name) + .Distinct(StringComparer.OrdinalIgnoreCase) + .ToList(); + + foreach (var name in distinctNames) + { + if (!existingNames.Contains(name)) + { + matchingTags.Add(new Tag { Name = name }); + existingNames.Add(name); + } + } + return matchingTags; + } + public async Task RemoveTagByName(string name) + { + if (string.IsNullOrWhiteSpace(name)) return; + + var loweredName = name.ToLower(); + var tag = await _context.Tags.FirstOrDefaultAsync(t => t.Name.ToLower() == loweredName); + if (tag != null) + { + _context.Tags.Remove(tag); + } + } + + public async Task GetTagByNameAsync(string name) + { + if (string.IsNullOrWhiteSpace(name)) return null; + + var loweredName = name.ToLower(); + return await _context.Tags + .FirstOrDefaultAsync(t => t.Name.ToLower() == loweredName); + } +} diff --git a/API/Data/UnitOfWork.cs b/API/Data/UnitOfWork.cs index c376b54..177e5b9 100644 --- a/API/Data/UnitOfWork.cs +++ b/API/Data/UnitOfWork.cs @@ -2,17 +2,18 @@ namespace API.Data; -public class UnitOfWork(DataContext context, IUserRepository userRepository, - ILikesRepository likesRepository, IMessageRepository messageRepository, IPhotoRepository photoRepository) : IUnitOfWork +public class UnitOfWork(DataContext context, + IUserRepository userRepository, + ILikesRepository likesRepository, + IMessageRepository messageRepository, + IPhotoRepository photoRepository, + ITagsRepository tagsRepository) : IUnitOfWork { public IUserRepository UserRepository => userRepository; - public IMessageRepository MessageRepository => messageRepository; - public ILikesRepository LikesRepository => likesRepository; - public IPhotoRepository PhotoRepository => photoRepository; - + public ITagsRepository TagRepository => tagsRepository; public async Task Complete() { return await context.SaveChangesAsync() > 0; diff --git a/API/Data/UserRepository.cs b/API/Data/UserRepository.cs index 48a44c4..7f74aff 100644 --- a/API/Data/UserRepository.cs +++ b/API/Data/UserRepository.cs @@ -63,9 +63,7 @@ public async Task GetMemberAsync(string username, bool isCurrentUser) .ProjectTo(mapper.ConfigurationProvider) .AsQueryable(); if(isCurrentUser) query = query.IgnoreQueryFilters(); - var member = await query.FirstOrDefaultAsync(); - if (member == null) - throw new InvalidOperationException("Member not found."); + var member = await query.FirstOrDefaultAsync() ?? throw new InvalidOperationException("Member not found."); return member; } diff --git a/API/Data/tags.json b/API/Data/tags.json new file mode 100644 index 0000000..8dbfdcf --- /dev/null +++ b/API/Data/tags.json @@ -0,0 +1,7 @@ +[ + { "Name": "Travel" }, + { "Name": "Nature" }, + { "Name": "Technology" }, + { "Name": "Food" }, + { "Name": "Architecture" } +] diff --git a/API/Entities/Photo.cs b/API/Entities/Photo.cs index 8a561be..62da799 100644 --- a/API/Entities/Photo.cs +++ b/API/Entities/Photo.cs @@ -2,6 +2,7 @@ using System.ComponentModel.DataAnnotations.Schema; namespace API.Entities; + [Table("Photos")] public class Photo { @@ -10,7 +11,7 @@ public class Photo public bool IsMain { get; set; } public string? PublicId { get; set; } public bool IsApproved { get; set; } = false; - + public ICollection PhotoTags { get; set; } = []; // Navigation property public int AppUserId { get; set; } public AppUser AppUser { get; set; } = null!; diff --git a/API/Entities/PhotoTag.cs b/API/Entities/PhotoTag.cs new file mode 100644 index 0000000..b2e46bd --- /dev/null +++ b/API/Entities/PhotoTag.cs @@ -0,0 +1,9 @@ +namespace API.Entities; +public class PhotoTag +{ + public int PhotoId { get; set; } + public Photo? Photo { get; set; } + + public int TagId { get; set; } + public Tag? Tag { get; set; } +} diff --git a/API/Entities/Tag.cs b/API/Entities/Tag.cs new file mode 100644 index 0000000..3aea305 --- /dev/null +++ b/API/Entities/Tag.cs @@ -0,0 +1,8 @@ +namespace API.Entities; + +public class Tag +{ + public int Id { get; set; } + public required string Name { get; set; } + public ICollection PhotoTags { get; set; } = []; +} diff --git a/API/Extensions/ApplicationServiceExtensions.cs b/API/Extensions/ApplicationServiceExtensions.cs index 9712f27..50af5de 100644 --- a/API/Extensions/ApplicationServiceExtensions.cs +++ b/API/Extensions/ApplicationServiceExtensions.cs @@ -3,6 +3,11 @@ using API.Helpers; using API.Interfaces; using API.Services; +using API.Services._Account; +using API.Services._Admin; +using API.Services._Likes; +using API.Services._Message; +using API.Services._User; using API.SignalR; using Microsoft.EntityFrameworkCore; @@ -13,23 +18,35 @@ public static class ApplicationServiceExtensions public static IServiceCollection AddApplicationServices(this IServiceCollection services, IConfiguration config) { services.AddControllers(); + services.AddApplicationInsightsTelemetry(options => { + options.ConnectionString = "InstrumentationKey=5cb65565-fbed-483f-bc29-94dc17e17ff2"; + }); services.AddDbContext(opt => { opt.UseSqlServer(config.GetConnectionString("DefaultConnection")); }); services.AddCors(); + // services services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + services.AddScoped(); + // repositories services.AddScoped(); services.AddScoped(); services.AddScoped(); - services.AddScoped(); - services.AddScoped(); + services.AddScoped(); services.AddScoped(); - services.AddScoped(); + services.AddScoped(); + + services.AddScoped(); services.AddAutoMapper(AppDomain.CurrentDomain.GetAssemblies()); services.Configure(config.GetSection("CloudinarySettings")); services.AddSignalR(); - services.AddScoped(); services.AddSingleton(); return services; } diff --git a/API/Helpers/AutoMapperProfiles.cs b/API/Helpers/AutoMapperProfiles.cs index 3bc108d..6603271 100644 --- a/API/Helpers/AutoMapperProfiles.cs +++ b/API/Helpers/AutoMapperProfiles.cs @@ -10,20 +10,29 @@ public class AutoMapperProfiles : Profile { public AutoMapperProfiles() { + CreateMap() - .ForMember(dest => dest.PhotoUrl, opt => opt.MapFrom(src => src.DateOfBirth.CalculateAge()!)) - .ForMember(dest => dest.PhotoUrl, opt => opt.MapFrom(src => src.Photos.FirstOrDefault(x => x.IsMain)!.Url)); - CreateMap(); + .ForMember(d => d.Age, o => o.MapFrom(s => s.DateOfBirth.CalculateAge())) + .ForMember(d => d.PhotoUrl, o => o.MapFrom(s => s.Photos.FirstOrDefault(x => x.IsMain)!.Url)); + CreateMap() + .ForMember(dest => dest.Tags, opt => opt.MapFrom(src => src.PhotoTags.Select(pt => pt.Tag))); CreateMap(); CreateMap(); CreateMap() .ConvertUsing(s => DateOnly.Parse(s)); - CreateMap() - .ForMember(d => d.SenderPhotoUrl, - o => o.MapFrom(s => s.Sender.Photos.FirstOrDefault(x => x.IsMain)!.Url)) - .ForMember(d => d.RecipientPhotoUrl, - o => o.MapFrom(s => s.Recipient.Photos.FirstOrDefault(x => x.IsMain)!.Url)); + CreateMap().ForMember(d => d.SenderPhotoUrl, o => o.MapFrom(s => s.Sender.Photos.FirstOrDefault + (x => x.IsMain)!.Url)); + CreateMap().ForMember(d => d.RecipientPhotoUrl, o => o.MapFrom(s => s.Recipient.Photos.FirstOrDefault + (x => x.IsMain)!.Url)); CreateMap().ConvertUsing(d => DateTime.SpecifyKind(d, DateTimeKind.Utc)); CreateMap().ConvertUsing(d => d.HasValue ? DateTime.SpecifyKind(d.Value, DateTimeKind.Utc) : null); - } + + CreateMap() + .ForMember(dest => dest.Username, opt => opt.MapFrom(src => src.AppUser.UserName)) + .ForMember(dest => dest.Tags, opt => opt.MapFrom(src => src.PhotoTags.Select(pt => pt.Tag!.Name))); + + CreateMap(); + CreateMap() + .ForMember(dest => dest.Name, opt => opt.MapFrom(src => src)); + } } diff --git a/API/Helpers/LogUserActivity.cs b/API/Helpers/LogUserActivity.cs index 5cc414e..f5390d1 100644 --- a/API/Helpers/LogUserActivity.cs +++ b/API/Helpers/LogUserActivity.cs @@ -1,4 +1,3 @@ -using System; using API.Extensions; using API.Services; using Microsoft.AspNetCore.Mvc.Filters; @@ -7,11 +6,11 @@ namespace API.Helpers; public class LogUserActivity : IAsyncActionFilter { - private readonly UserService _userService; + private readonly UserServices _userServices; - public LogUserActivity(UserService userService) + public LogUserActivity(UserServices userService) { - _userService = userService; + _userServices = userService; } public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next) @@ -20,6 +19,6 @@ public async Task OnActionExecutionAsync(ActionExecutingContext context, ActionE if (context.HttpContext.User.Identity?.IsAuthenticated != true) return; var userId = resultContext.HttpContext.User.GetUserId(); - await _userService.UpdateLastActive(userId); + await _userServices.UpdateLastActive(userId); } } \ No newline at end of file diff --git a/API/Interfaces/IAccountService.cs b/API/Interfaces/IAccountService.cs new file mode 100644 index 0000000..a628631 --- /dev/null +++ b/API/Interfaces/IAccountService.cs @@ -0,0 +1,11 @@ +using System; +using API.DTOs; + +namespace API.Interfaces; + +public interface IAccountService +{ + Task Register(RegisterDto registerDto); + Task Login(LoginDto loginDto); + Task UserExists(string username); +} diff --git a/API/Interfaces/IAdminService.cs b/API/Interfaces/IAdminService.cs new file mode 100644 index 0000000..dce21fc --- /dev/null +++ b/API/Interfaces/IAdminService.cs @@ -0,0 +1,18 @@ +using System; +using API.DTOs; + +namespace API.Interfaces; + +public interface IAdminService +{ + Task> GetUsersWithRoles(); + Task> EditRoles(string username, string roles); + Task> GetPhotosForModeration(); + Task ApprovePhoto(int photoId); + Task RejectPhoto(int photoId); + Task CreateTagAsync(string tagName); + Task> GetTagsAsync(); + Task RemoveTagByNameAsync(string name); + Task> GetUsersWithoutMainPhoto(int currentUserId); + Task> GetPhotoApprovalStatisticsAsync(int currentUserId); +} diff --git a/API/Interfaces/ILikesService.cs b/API/Interfaces/ILikesService.cs new file mode 100644 index 0000000..3f27530 --- /dev/null +++ b/API/Interfaces/ILikesService.cs @@ -0,0 +1,12 @@ +using System; +using API.DTOs; +using API.Helpers; + +namespace API.Interfaces; + +public interface ILikesService +{ + Task> GetUserLikes(LikesParams likesParams); + Task> GetCurrentUserLikeIds(int userId); + Task ToggleLike(int sourceId, int targetUserId); +} diff --git a/API/Interfaces/IMessageService.cs b/API/Interfaces/IMessageService.cs new file mode 100644 index 0000000..b1f66ce --- /dev/null +++ b/API/Interfaces/IMessageService.cs @@ -0,0 +1,13 @@ +using System; +using API.DTOs; +using API.Helpers; + +namespace API.Interfaces; + +public interface IMessageService +{ + Task CreateMessage(CreateMessageDto createMessageDto, string username); + Task> GetMessagesForUser(MessageParams messageParams, string username); + Task> GetMessageThread(string currentUsername, string recipientUsername); + Task DeleteMessage(int id, string username); +} diff --git a/API/Interfaces/IPhotoRepository.cs b/API/Interfaces/IPhotoRepository.cs index 30f9b2d..7c4d649 100644 --- a/API/Interfaces/IPhotoRepository.cs +++ b/API/Interfaces/IPhotoRepository.cs @@ -1,4 +1,5 @@ using System; + using API.DTOs; using API.Entities; @@ -8,6 +9,13 @@ public interface IPhotoRepository { Task> GetUnapprovedPhotos(); Task GetPhotoById(int id); - Task GetUserByPhotoId(int photoId); + Task GetUserByPhotoId(int photoId); + Task> GetTagsAsStrings(); + Task GetPhotoWithTagsById(int id); + Task> GetPhotosByUsername(string username); + Task> GetUsersWithoutMainPhotoAsync(int currentUserId); + Task> GetPhotoStatsApprovalAsync(int currentUserId); + Task> GetTags(); + void AddTag(Tag tag); void RemovePhoto(Photo photo); } diff --git a/API/Interfaces/ITagsRepository.cs b/API/Interfaces/ITagsRepository.cs new file mode 100644 index 0000000..fd3b28b --- /dev/null +++ b/API/Interfaces/ITagsRepository.cs @@ -0,0 +1,12 @@ +using System; +using API.Entities; + +namespace API.Interfaces; + +public interface ITagsRepository +{ + Task> GetTagsByNamesAsync(List tags); + Task> GetAllTagsAsync(); + Task GetTagByNameAsync(string name); + Task RemoveTagByName(string name); +} diff --git a/API/Interfaces/IUnitOfWork.cs b/API/Interfaces/IUnitOfWork.cs index bd35aa2..2f5f471 100644 --- a/API/Interfaces/IUnitOfWork.cs +++ b/API/Interfaces/IUnitOfWork.cs @@ -1,4 +1,4 @@ -using System; +using API.Data; namespace API.Interfaces; @@ -8,6 +8,7 @@ public interface IUnitOfWork IMessageRepository MessageRepository { get; } ILikesRepository LikesRepository { get; } IPhotoRepository PhotoRepository { get; } + ITagsRepository TagRepository { get; } Task Complete(); bool HasChanges(); } diff --git a/API/Interfaces/IUserService.cs b/API/Interfaces/IUserService.cs new file mode 100644 index 0000000..2b6db6d --- /dev/null +++ b/API/Interfaces/IUserService.cs @@ -0,0 +1,20 @@ + +using API.DTOs; +using API.Helpers; + +namespace API.Interfaces +{ + public interface IUserService + { + Task> GetUsers(UserParams userParams, string currentUsername); + Task GetUser(string username, string currentUsername); + Task UpdateUser(MemberUpdateDto memberUpdateDto, string username); + Task AddPhoto(AddPhotoDto addPhotoDto, string username); + Task SetMainPhoto(int photoId, string username); + Task DeletePhoto(int photoId, string username); + Task AssignTags(int photoId, string username, List tagNames); + Task> GetTags(); + Task> GetTags(int photoId); + Task> GetPhotoWithTagsByUsernameAsync(string username); + } +} \ No newline at end of file diff --git a/API/Program.cs b/API/Program.cs index a0ea3f6..75ec62b 100644 --- a/API/Program.cs +++ b/API/Program.cs @@ -7,7 +7,7 @@ using Microsoft.EntityFrameworkCore; using Serilog; - +//"RestrictedToMinimumLevel": "Debug" var builder = WebApplication.CreateBuilder(args); builder.Host.UseSerilog((hostContext, services, configuration) => @@ -47,6 +47,7 @@ await context.Database.MigrateAsync(); await context.Database.ExecuteSqlRawAsync("DELETE FROM [Connections]"); await Seed.SeedUsers(userManager, roleManager); + await Seed.SeedTagsAsync(context); } catch (Exception ex) { diff --git a/API/Scripts/GetPhotoStatsApproval.sql b/API/Scripts/GetPhotoStatsApproval.sql new file mode 100644 index 0000000..d0e5019 --- /dev/null +++ b/API/Scripts/GetPhotoStatsApproval.sql @@ -0,0 +1,24 @@ +CREATE PROCEDURE GetPhotoStatsApproval + @CurrentUserId NVARCHAR(450) +AS +BEGIN + IF EXISTS ( + SELECT 1 + FROM AspNetUserRoles as UR + JOIN AspNetRoles as R ON UR.RoleId = R.Id + WHERE UR.UserId = @CurrentUserId AND R.Name = 'Admin' + ) + BEGIN + SELECT + U.UserName, + COUNT(CASE WHEN P.IsApproved = 1 THEN 1 END) AS APPROVED_PHOTOS, + COUNT(CASE WHEN P.IsApproved = 0 THEN 1 END) AS UNAPPROVED_PHOTOS + FROM AspNetUsers as U + LEFT JOIN Photos as P ON U.Id = P.AppUserId + GROUP BY U.UserName; + END + ELSE + BEGIN + RAISERROR('Access denied. Administrative privileges required.', 16, 1); + END +END; diff --git a/API/Scripts/GetUsersWithoutMainPhoto.sql b/API/Scripts/GetUsersWithoutMainPhoto.sql new file mode 100644 index 0000000..4479739 --- /dev/null +++ b/API/Scripts/GetUsersWithoutMainPhoto.sql @@ -0,0 +1,24 @@ +CREATE PROCEDURE GetUsersWithoutMainPhoto + @CurrentUserId NVARCHAR(450) +AS +BEGIN + IF EXISTS ( + SELECT 1 + FROM AspNetUserRoles ur + JOIN AspNetRoles r ON ur.RoleId = r.Id + WHERE ur.UserId = @CurrentUserId AND r.Name = 'Admin' + ) + BEGIN + SELECT u.UserName AS USERNAME + FROM AspNetUsers u + WHERE NOT EXISTS ( + SELECT 1 + FROM Photos p + WHERE p.AppUserId = u.Id AND p.IsMain = 1 + ); + END + ELSE + BEGIN + RAISERROR('Access denied. Administrative privileges required.', 16, 1); + END +END; diff --git a/API/Services/UserService.cs b/API/Services/UserService.cs index d27745f..19fe3fb 100644 --- a/API/Services/UserService.cs +++ b/API/Services/UserService.cs @@ -4,14 +4,9 @@ namespace API.Services; -public class UserService +public class UserServices(IUnitOfWork unitOfWork) { - private readonly IUnitOfWork _unitOfWork; - - public UserService(IUnitOfWork unitOfWork) - { - _unitOfWork = unitOfWork; - } + private readonly IUnitOfWork _unitOfWork = unitOfWork; public async Task UpdateLastActive(int userId) { diff --git a/API/Services/_Account/AccountService.cs b/API/Services/_Account/AccountService.cs index 73cbb8d..a8e1be3 100644 --- a/API/Services/_Account/AccountService.cs +++ b/API/Services/_Account/AccountService.cs @@ -14,7 +14,7 @@ namespace API.Services._Account; -public class AccountService(UserManager userManager, ITokenService tokenService, IMapper mapper) +public class AccountService(UserManager userManager, ITokenService tokenService, IMapper mapper) : IAccountService { private readonly UserManager _userManager = userManager; private readonly ITokenService _tokenService = tokenService; @@ -45,7 +45,7 @@ public async Task Login(LoginDto loginDto) { var user = await _userManager.Users .Include(p => p.Photos) - .FirstOrDefaultAsync(x => x.NormalizedUserName == loginDto.Username.ToUpper()); + .FirstOrDefaultAsync(x => x.NormalizedUserName!.Equals(loginDto.Username, StringComparison.CurrentCultureIgnoreCase)); if (user == null || user.UserName == null) throw new UnauthorizedException("Invalid username!"); diff --git a/API/Services/_Admin/AdminService.cs b/API/Services/_Admin/AdminService.cs index caaba7b..a949a29 100644 --- a/API/Services/_Admin/AdminService.cs +++ b/API/Services/_Admin/AdminService.cs @@ -14,7 +14,7 @@ namespace API.Services._Admin; -public class AdminService(UserManager userManager, IUnitOfWork unitOfWork, IPhotoService photoService, IHubContext hubContext) +public class AdminService(UserManager userManager, IUnitOfWork unitOfWork, IPhotoService photoService, IHubContext hubContext) : IAdminService { private readonly UserManager _userManager = userManager; private readonly IUnitOfWork _unitOfWork = unitOfWork; @@ -31,7 +31,7 @@ public async Task> GetUsersWithRoles() Username = x.UserName, Roles = x.UserRoles.Select(r => r.Role.Name).ToList() }).ToListAsync(); - + return users.Cast().ToList(); } @@ -42,15 +42,15 @@ public async Task> EditRoles(string username, string roles) var selectedRoles = roles.Split(',').ToArray(); var user = await _userManager.FindByNameAsync(username) ?? throw new NotFoundException("User not found"); - + var userRoles = await _userManager.GetRolesAsync(user); var result = await _userManager.AddToRolesAsync(user, selectedRoles.Except(userRoles)); - + if (!result.Succeeded) throw new BadRequestException("Failed to add role"); result = await _userManager.RemoveFromRolesAsync(user, userRoles.Except(selectedRoles)); - + if (!result.Succeeded) throw new BadRequestException("Failed to remove role"); @@ -65,17 +65,17 @@ public async Task> GetPhotosForModeration() public async Task ApprovePhoto(int photoId) { var photo = await _unitOfWork.PhotoRepository.GetPhotoById(photoId) ?? throw new NotFoundException("Photo not found"); - + photo.IsApproved = true; var user = await _unitOfWork.PhotoRepository.GetUserByPhotoId(photoId) ?? throw new NotFoundException("User not found"); - + if (!user.Photos.Any(x => x.IsMain)) photo.IsMain = true; if (!await _unitOfWork.Complete()) - throw new Exception("Failed to approve photo"); + throw new NotFoundException("Failed to approve photo"); - // SignalR: Obavesti korisnika + // SignalR: notify user #pragma warning disable CS8604 // Possible null reference argument. var connections = await PresenceTracker.GetConnectionsForUser(user.UserName); #pragma warning restore CS8604 // Possible null reference argument. @@ -91,7 +91,7 @@ public async Task ApprovePhoto(int photoId) public async Task RejectPhoto(int photoId) { var photo = await _unitOfWork.PhotoRepository.GetPhotoById(photoId) ?? throw new NotFoundException("Photo not found"); - + if (photo.PublicId != null) { var result = await _photoService.DeletePhotoAsync(photo.PublicId); @@ -103,7 +103,7 @@ public async Task RejectPhoto(int photoId) _unitOfWork.PhotoRepository.RemovePhoto(photo); var user = await _unitOfWork.PhotoRepository.GetUserByPhotoId(photoId) ?? throw new NotFoundException("User not found"); - + if (!await _unitOfWork.Complete()) throw new Exception("Failed to reject photo"); @@ -118,4 +118,56 @@ public async Task RejectPhoto(int photoId) }); } } + public async Task CreateTagAsync(string tagName) + { + + if (string.IsNullOrWhiteSpace(tagName)) + { + throw new ArgumentException("Tag name cannot be null or empty."); + } + + var tag = new Tag { Name = tagName }; + + var existingTags = await _unitOfWork.TagRepository.GetAllTagsAsync(); + if (existingTags.Any(t => t.Name.Equals(tag.Name, StringComparison.OrdinalIgnoreCase))) + { + return "duplicate"; + } + + _unitOfWork.PhotoRepository.AddTag(tag); + + if (!await _unitOfWork.Complete()) + { + throw new Exception("Problem creating tag."); + } + + return tag; + } + public async Task> GetTagsAsync() + { + return await _unitOfWork.PhotoRepository.GetTags(); + } + public async Task RemoveTagByNameAsync(string name) + { + if (string.IsNullOrWhiteSpace(name)) + throw new ArgumentException("Tag name is required."); + await _unitOfWork.TagRepository.RemoveTagByName(name); + if (!await _unitOfWork.Complete()) + throw new Exception("Failed to remove tag."); + } + + public async Task> GetUsersWithoutMainPhoto(int currentUserId) + { + var usersWithoutMainPhoto = await _unitOfWork.PhotoRepository.GetUsersWithoutMainPhotoAsync(currentUserId); + if (usersWithoutMainPhoto == null || !usersWithoutMainPhoto.Any()) + throw new KeyNotFoundException("No users without main photo found."); + return usersWithoutMainPhoto; + } + public async Task> GetPhotoApprovalStatisticsAsync(int currentUserId) + { + var stats = await _unitOfWork.PhotoRepository.GetPhotoStatsApprovalAsync(currentUserId); + if (stats == null || !stats.Any()) + throw new KeyNotFoundException("No photo approval stats found for the current user."); + return stats.ToList(); + } } \ No newline at end of file diff --git a/API/Services/_Likes/LikesService.cs b/API/Services/_Likes/LikesService.cs index cc34e14..f63f4fc 100644 --- a/API/Services/_Likes/LikesService.cs +++ b/API/Services/_Likes/LikesService.cs @@ -8,7 +8,7 @@ namespace API.Services._Likes; -public class LikesService(IUnitOfWork unitOfWork) +public class LikesService(IUnitOfWork unitOfWork) : ILikesService { private readonly IUnitOfWork _unitOfWork = unitOfWork; diff --git a/API/Services/_Message/MessageService.cs b/API/Services/_Message/MessageService.cs index ddfb0bc..0ff5e1b 100644 --- a/API/Services/_Message/MessageService.cs +++ b/API/Services/_Message/MessageService.cs @@ -10,14 +10,14 @@ namespace API.Services._Message; -public class MessageService(IUnitOfWork unitOfWork, IMapper mapper) +public class MessageService(IUnitOfWork unitOfWork, IMapper mapper) : IMessageService { private readonly IUnitOfWork _unitOfWork = unitOfWork; private readonly IMapper _mapper = mapper; public async Task CreateMessage(CreateMessageDto createMessageDto, string username) { - if (username == createMessageDto.RecipientUsername.ToLower()) + if (username.Equals(createMessageDto.RecipientUsername, StringComparison.CurrentCultureIgnoreCase)) throw new BadRequestException("You cannot message yourself"); var sender = await _unitOfWork.UserRepository.GetUserByUsernameAsync(username); diff --git a/API/Services/_User/UserService.cs b/API/Services/_User/UserService.cs index 4c06388..f3cff73 100644 --- a/API/Services/_User/UserService.cs +++ b/API/Services/_User/UserService.cs @@ -1,6 +1,8 @@ using System; using System.Collections.Generic; +using System.Formats.Tar; using System.Threading.Tasks; + using API.DTOs; using API.Entities; using API.Errors; @@ -12,7 +14,7 @@ namespace API.Services._User; -public class UserService(IUnitOfWork unitOfWork, IMapper mapper, IPhotoService photoService) +public class UserService(IUnitOfWork unitOfWork, IMapper mapper, IPhotoService photoService) : IUserService { private readonly IUnitOfWork _unitOfWork = unitOfWork; private readonly IMapper _mapper = mapper; @@ -33,18 +35,18 @@ public async Task GetUser(string username, string currentUsername) public async Task UpdateUser(MemberUpdateDto memberUpdateDto, string username) { var user = await _unitOfWork.UserRepository.GetUserByUsernameAsync(username) ?? throw new NotFoundException("User not found"); - + _mapper.Map(memberUpdateDto, user); if (!await _unitOfWork.Complete()) throw new Exception("Failed to update user"); } - public async Task AddPhoto(IFormFile file, string username) + public async Task AddPhoto(AddPhotoDto addPhotoDto, string username) { var user = await _unitOfWork.UserRepository.GetUserByUsernameAsync(username) ?? throw new NotFoundException("User not found"); - - var result = await _photoService.AddPhotoAsync(file); + + var result = await _photoService.AddPhotoAsync(addPhotoDto.File); if (result.Error != null) throw new BadRequestException(result.Error.Message); @@ -54,6 +56,14 @@ public async Task AddPhoto(IFormFile file, string username) PublicId = result.PublicId }; + foreach (var tagId in addPhotoDto.TagIds) + { + photo.PhotoTags.Add(new PhotoTag + { + TagId = tagId + }); + } + user.Photos.Add(photo); if (!await _unitOfWork.Complete()) @@ -65,9 +75,9 @@ public async Task AddPhoto(IFormFile file, string username) public async Task SetMainPhoto(int photoId, string username) { var user = await _unitOfWork.UserRepository.GetUserByUsernameAsync(username) ?? throw new NotFoundException("User not found"); - + var photo = user.Photos.FirstOrDefault(x => x.Id == photoId) ?? throw new NotFoundException("Photo not found"); - + if (photo.IsMain) throw new BadRequestException("This is already your main photo"); @@ -84,14 +94,17 @@ public async Task SetMainPhoto(int photoId, string username) public async Task DeletePhoto(int photoId, string username) { var user = await _unitOfWork.UserRepository.GetUserByUsernameAsync(username) ?? throw new NotFoundException("User not found"); - + var photo = await _unitOfWork.PhotoRepository.GetPhotoById(photoId) ?? throw new NotFoundException("Photo not found"); - + if (photo.IsMain) throw new BadRequestException("You cannot delete your main photo"); if (photo.PublicId != null) { + if (photo.AppUserId != user.Id) + throw new UnauthorizedAccessException("You cannot delete this photo."); + var result = await _photoService.DeletePhotoAsync(photo.PublicId); if (result.Error != null) throw new BadRequestException(result.Error.Message); @@ -102,4 +115,76 @@ public async Task DeletePhoto(int photoId, string username) if (!await _unitOfWork.Complete()) throw new Exception("Failed to delete the photo"); } + + public async Task AssignTags(int photoId, string username, List tagNames) + { + var user = await _unitOfWork.UserRepository.GetUserByUsernameAsync(username) ?? throw new KeyNotFoundException("User not found."); + var photo = await _unitOfWork.PhotoRepository.GetPhotoWithTagsById(photoId) ?? throw new KeyNotFoundException("Photo not found."); + + var distinctTagNames = tagNames + .Where(n => !string.IsNullOrWhiteSpace(n)) + .Select(n => n.Trim()) + .Distinct(StringComparer.OrdinalIgnoreCase) + .ToList(); + + var tagsFromDb = distinctTagNames.Count > 0 + ? await _unitOfWork.TagRepository.GetTagsByNamesAsync(distinctTagNames) + : new List(); + + var tagsToRemove = photo.PhotoTags + .Where(pt => pt.Tag != null && !distinctTagNames.Contains(pt.Tag.Name, StringComparer.OrdinalIgnoreCase)) + .ToList(); + + foreach (var pt in tagsToRemove) + photo.PhotoTags.Remove(pt); + + foreach (var tag in tagsFromDb) + { + if (!photo.PhotoTags.Any(pt => pt.TagId == tag.Id)) + { + photo.PhotoTags.Add(new PhotoTag + { + Photo = photo, + PhotoId = photo.Id, + Tag = tag, + TagId = tag.Id + }); + } + } + + if (!await _unitOfWork.Complete()) + throw new Exception("Failed to assign tags to the photo"); + } + public async Task> GetTags() + { + try + { + return await _unitOfWork.PhotoRepository.GetTagsAsStrings(); + } + catch (Exception ex) + { + throw new Exception("Failed to retrievke tags", ex); + } + } + public async Task> GetTags(int photoId) + { + try + { + var photos = await _unitOfWork.PhotoRepository.GetPhotoWithTagsById(photoId) + ?? throw new NotFoundException("Photo not found"); + + var tags = photos.PhotoTags.Select(pt => pt.Tag).ToList(); + + return _mapper.Map>(tags); + } + catch (Exception ex) + { + throw new Exception("Failed to retrieve tags", ex); + } + } + public async Task> GetPhotoWithTagsByUsernameAsync(string username) + { + var photos = await _unitOfWork.PhotoRepository.GetPhotosByUsername(username) ?? throw new NotFoundException("Photos not found"); + return _mapper.Map>(photos); + } } \ No newline at end of file diff --git a/API/SignalR/MessageHub.cs b/API/SignalR/MessageHub.cs index 21da026..e116361 100644 --- a/API/SignalR/MessageHub.cs +++ b/API/SignalR/MessageHub.cs @@ -13,15 +13,15 @@ public class MessageHub(IUnitOfWork unitOfWork, IMapper mapper, IHubContext x.Username == recipient.UserName)) + + if (group != null && group.Connections.Any(x => x.Username == recipient.UserName)) { message.DateRead = DateTime.UtcNow; } @@ -66,12 +66,12 @@ public async Task SendMessage(CreateMessageDto createMessageDto) var connections = await PresenceTracker.GetConnectionsForUser(recipient.UserName); if (connections != null) { - await presenceHub.Clients.Clients(connections).SendAsync("NewMessageReceived", - new {username = sender.UserName, knownAs = sender.KnownAs}); + await presenceHub.Clients.Clients(connections).SendAsync("NewMessageReceived", + new { username = sender.UserName, knownAs = sender.KnownAs }); } } unitOfWork.MessageRepository.AddMessage(message); - if (await unitOfWork.Complete()) + if (await unitOfWork.Complete()) { await Clients.Group(groupName).SendAsync("NewMessage", mapper.Map(message)); } @@ -81,27 +81,30 @@ private async Task AddToGroup(string groupName) var username = Context.User?.GetUsername() ?? throw new Exception("Cannot et username"); var group = await unitOfWork.MessageRepository.GetMessageGroup(groupName); var connection = new Connection(Context.ConnectionId, username); - if(group == null) + if (group == null) { group = new Group(groupName); unitOfWork.MessageRepository.AddGroup(group); } group.Connections.Add(connection); - //kontriraj - if (await unitOfWork.Complete()) return group; - throw new HubException("Failed to join group"); + + if (!await unitOfWork.Complete()) + throw new HubException("Failed to join group"); + return group; } - + private async Task RemoveFromMessageGroup() { var group = await unitOfWork.MessageRepository.GetGroupForConnection(Context.ConnectionId); var connection = group?.Connections.FirstOrDefault(x => x.ConnectionId == Context.ConnectionId); - if(connection!=null && group != null) + if (!(connection != null && group != null)) { - unitOfWork.MessageRepository.RemoveConnection(connection); - if (await unitOfWork.Complete()) return group; + throw new Exception("Failed to remove from group!"); } - throw new Exception("Failed to remove from group!"); + unitOfWork.MessageRepository.RemoveConnection(connection); + if (!await unitOfWork.Complete()) + throw new HubException("Failed to join group"); + return group; } -} +} diff --git a/API/appsettings.Development copy.json b/API/appsettings.Development copy.json deleted file mode 100644 index 7d28322..0000000 --- a/API/appsettings.Development copy.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "Logging": { - "LogLevel": { - "Default": "Information", - "Microsoft.AspNetCore": "Information" - } - }, - "ConnectionStrings": { - "Connection": "Server=localhost,1433;Database=DatingDB;User Id=sa;Password=Passw0rd@1;TrustServerCertificate=True;" - } -} diff --git a/API/appsettings.Development.json b/API/appsettings.Development.json index d9542d8..7f5e064 100644 --- a/API/appsettings.Development.json +++ b/API/appsettings.Development.json @@ -27,6 +27,6 @@ } }, "ConnectionStrings": { - "DefaultConnection" : "Data source=dating.db" + "DefaultConnection" : "Server=tcp:dating-app-htec-intern.database.windows.net,1433;Initial Catalog=DatingAppDB;Persist Security Info=False;User ID=appuser;Password=Mujalo64!123;MultipleActiveResultSets=False;Encrypt=True;TrustServerCertificate=False;Connection Timeout=30;" } } diff --git a/API/dating.db b/API/dating.db deleted file mode 100644 index 1dd9cd0..0000000 Binary files a/API/dating.db and /dev/null differ diff --git a/API/wwwroot/3rdpartylicenses.txt b/API/wwwroot/3rdpartylicenses.txt index b22873a..6505c83 100644 --- a/API/wwwroot/3rdpartylicenses.txt +++ b/API/wwwroot/3rdpartylicenses.txt @@ -473,11 +473,6 @@ Package: ngx-timeago License: "MIT" --------------------------------------------------------------------------------- -Package: ng2-file-upload -License: "MIT" - - -------------------------------------------------------------------------------- Package: ngx-spinner License: "MIT" @@ -503,6 +498,207 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +-------------------------------------------------------------------------------- +Package: ng2-file-upload +License: "MIT" + + +-------------------------------------------------------------------------------- +Package: @fortawesome/fontawesome-svg-core +License: "MIT" + +Fonticons, Inc. (https://fontawesome.com) + +-------------------------------------------------------------------------------- + +Font Awesome Free License + +Font Awesome Free is free, open source, and GPL friendly. You can use it for +commercial projects, open source projects, or really almost whatever you want. +Full Font Awesome Free license: https://fontawesome.com/license/free. + +-------------------------------------------------------------------------------- + +# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/) + +The Font Awesome Free download is licensed under a Creative Commons +Attribution 4.0 International License and applies to all icons packaged +as SVG and JS file types. + +-------------------------------------------------------------------------------- + +# Fonts: SIL OFL 1.1 License + +In the Font Awesome Free download, the SIL OFL license applies to all icons +packaged as web and desktop font files. + +Copyright (c) 2024 Fonticons, Inc. (https://fontawesome.com) +with Reserved Font Name: "Font Awesome". + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + +SIL OPEN FONT LICENSE +Version 1.1 - 26 February 2007 + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting — in part or in whole — any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. + +-------------------------------------------------------------------------------- + +# Code: MIT License (https://opensource.org/licenses/MIT) + +In the Font Awesome Free download, the MIT license applies to all non-font and +non-icon files. + +Copyright 2024 Fonticons, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in the +Software without restriction, including without limitation the rights to use, copy, +modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, +and to permit persons to whom the Software is furnished to do so, subject to the +following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +-------------------------------------------------------------------------------- + +# Attribution + +Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font +Awesome Free files already contain embedded comments with sufficient +attribution, so you shouldn't need to do anything additional when using these +files normally. + +We've kept attribution comments terse, so we ask that you do not actively work +to remove them from files, especially code. They're a great way for folks to +learn about Font Awesome. + +-------------------------------------------------------------------------------- + +# Brand Icons + +All brand icons are trademarks of their respective owners. The use of these +trademarks does not indicate endorsement of the trademark holder by Font +Awesome, nor vice versa. **Please do not use brand logos for any purpose except +to represent the company, product, or service to which they refer.** + +-------------------------------------------------------------------------------- +Package: @fortawesome/angular-fontawesome +License: "MIT" + +MIT License + +Copyright (c) 2018 Fonticons, Inc. and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + -------------------------------------------------------------------------------- Package: zone.js License: "MIT" @@ -529,6 +725,176 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +-------------------------------------------------------------------------------- +Package: @fortawesome/fontawesome-free +License: "(CC-BY-4.0 AND OFL-1.1 AND MIT)" + +Fonticons, Inc. (https://fontawesome.com) + +-------------------------------------------------------------------------------- + +Font Awesome Free License + +Font Awesome Free is free, open source, and GPL friendly. You can use it for +commercial projects, open source projects, or really almost whatever you want. +Full Font Awesome Free license: https://fontawesome.com/license/free. + +-------------------------------------------------------------------------------- + +# Icons: CC BY 4.0 License (https://creativecommons.org/licenses/by/4.0/) + +The Font Awesome Free download is licensed under a Creative Commons +Attribution 4.0 International License and applies to all icons packaged +as SVG and JS file types. + +-------------------------------------------------------------------------------- + +# Fonts: SIL OFL 1.1 License + +In the Font Awesome Free download, the SIL OFL license applies to all icons +packaged as web and desktop font files. + +Copyright (c) 2023 Fonticons, Inc. (https://fontawesome.com) +with Reserved Font Name: "Font Awesome". + +This Font Software is licensed under the SIL Open Font License, Version 1.1. +This license is copied below, and is also available with a FAQ at: +http://scripts.sil.org/OFL + +SIL OPEN FONT LICENSE +Version 1.1 - 26 February 2007 + +PREAMBLE +The goals of the Open Font License (OFL) are to stimulate worldwide +development of collaborative font projects, to support the font creation +efforts of academic and linguistic communities, and to provide a free and +open framework in which fonts may be shared and improved in partnership +with others. + +The OFL allows the licensed fonts to be used, studied, modified and +redistributed freely as long as they are not sold by themselves. The +fonts, including any derivative works, can be bundled, embedded, +redistributed and/or sold with any software provided that any reserved +names are not used by derivative works. The fonts and derivatives, +however, cannot be released under any other type of license. The +requirement for fonts to remain under this license does not apply +to any document created using the fonts or their derivatives. + +DEFINITIONS +"Font Software" refers to the set of files released by the Copyright +Holder(s) under this license and clearly marked as such. This may +include source files, build scripts and documentation. + +"Reserved Font Name" refers to any names specified as such after the +copyright statement(s). + +"Original Version" refers to the collection of Font Software components as +distributed by the Copyright Holder(s). + +"Modified Version" refers to any derivative made by adding to, deleting, +or substituting — in part or in whole — any of the components of the +Original Version, by changing formats or by porting the Font Software to a +new environment. + +"Author" refers to any designer, engineer, programmer, technical +writer or other person who contributed to the Font Software. + +PERMISSION & CONDITIONS +Permission is hereby granted, free of charge, to any person obtaining +a copy of the Font Software, to use, study, copy, merge, embed, modify, +redistribute, and sell modified and unmodified copies of the Font +Software, subject to the following conditions: + +1) Neither the Font Software nor any of its individual components, +in Original or Modified Versions, may be sold by itself. + +2) Original or Modified Versions of the Font Software may be bundled, +redistributed and/or sold with any software, provided that each copy +contains the above copyright notice and this license. These can be +included either as stand-alone text files, human-readable headers or +in the appropriate machine-readable metadata fields within text or +binary files as long as those fields can be easily viewed by the user. + +3) No Modified Version of the Font Software may use the Reserved Font +Name(s) unless explicit written permission is granted by the corresponding +Copyright Holder. This restriction only applies to the primary font name as +presented to the users. + +4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font +Software shall not be used to promote, endorse or advertise any +Modified Version, except to acknowledge the contribution(s) of the +Copyright Holder(s) and the Author(s) or with their explicit written +permission. + +5) The Font Software, modified or unmodified, in part or in whole, +must be distributed entirely under this license, and must not be +distributed under any other license. The requirement for fonts to +remain under this license does not apply to any document created +using the Font Software. + +TERMINATION +This license becomes null and void if any of the above conditions are +not met. + +DISCLAIMER +THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE +COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL +DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM +OTHER DEALINGS IN THE FONT SOFTWARE. + +-------------------------------------------------------------------------------- + +# Code: MIT License (https://opensource.org/licenses/MIT) + +In the Font Awesome Free download, the MIT license applies to all non-font and +non-icon files. + +Copyright 2023 Fonticons, Inc. + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in the +Software without restriction, including without limitation the rights to use, copy, +modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, +and to permit persons to whom the Software is furnished to do so, subject to the +following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A +PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +-------------------------------------------------------------------------------- + +# Attribution + +Attribution is required by MIT, SIL OFL, and CC BY licenses. Downloaded Font +Awesome Free files already contain embedded comments with sufficient +attribution, so you shouldn't need to do anything additional when using these +files normally. + +We've kept attribution comments terse, so we ask that you do not actively work +to remove them from files, especially code. They're a great way for folks to +learn about Font Awesome. + +-------------------------------------------------------------------------------- + +# Brand Icons + +All brand icons are trademarks of their respective owners. The use of these +trademarks does not indicate endorsement of the trademark holder by Font +Awesome, nor vice versa. **Please do not use brand logos for any purpose except +to represent the company, product, or service to which they refer.** + -------------------------------------------------------------------------------- Package: bootstrap License: "MIT" diff --git a/API/wwwroot/index.html b/API/wwwroot/index.html index 5cabdef..945a756 100644 --- a/API/wwwroot/index.html +++ b/API/wwwroot/index.html @@ -6,8 +6,8 @@ - + - + diff --git a/API/wwwroot/main-LMORZNID.js b/API/wwwroot/main-LMORZNID.js new file mode 100644 index 0000000..41b1e73 --- /dev/null +++ b/API/wwwroot/main-LMORZNID.js @@ -0,0 +1,577 @@ +var OR=Object.defineProperty,RR=Object.defineProperties;var NR=Object.getOwnPropertyDescriptors;var Zd=Object.getOwnPropertySymbols;var QD=Object.prototype.hasOwnProperty,KD=Object.prototype.propertyIsEnumerable;var qD=(t,n,e)=>n in t?OR(t,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[n]=e,E=(t,n)=>{for(var e in n||={})QD.call(n,e)&&qD(t,e,n[e]);if(Zd)for(var e of Zd(n))KD.call(n,e)&&qD(t,e,n[e]);return t},G=(t,n)=>RR(t,NR(n));var Oa=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(n,e)=>(typeof require<"u"?require:n)[e]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var m_=(t,n)=>{var e={};for(var i in t)QD.call(t,i)&&n.indexOf(i)<0&&(e[i]=t[i]);if(t!=null&&Zd)for(var i of Zd(t))n.indexOf(i)<0&&KD.call(t,i)&&(e[i]=t[i]);return e};var ve=(t,n,e)=>new Promise((i,r)=>{var o=l=>{try{a(e.next(l))}catch(c){r(c)}},s=l=>{try{a(e.throw(l))}catch(c){r(c)}},a=l=>l.done?i(l.value):Promise.resolve(l.value).then(o,s);a((e=e.apply(t,n)).next())});function v_(t,n){return Object.is(t,n)}var Gt=null,Jd=!1,b_=1,gi=Symbol("SIGNAL");function be(t){let n=Gt;return Gt=t,n}function C_(){return Gt}var Nc={version:0,lastCleanEpoch:0,dirty:!1,producerNode:void 0,producerLastReadVersion:void 0,producerIndexOfThis:void 0,nextProducerIndex:0,liveConsumerNode:void 0,liveConsumerIndexOfThis:void 0,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,kind:"unknown",producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function Lc(t){if(Jd)throw new Error("");if(Gt===null)return;Gt.consumerOnSignalRead(t);let n=Gt.nextProducerIndex++;if(nf(Gt),nt.nextProducerIndex;)t.producerNode.pop(),t.producerLastReadVersion.pop(),t.producerIndexOfThis.pop()}}function T_(t){nf(t);for(let n=0;n0}function nf(t){t.producerNode??=[],t.producerIndexOfThis??=[],t.producerLastReadVersion??=[]}function XD(t){t.liveConsumerNode??=[],t.liveConsumerIndexOfThis??=[]}function eM(t){return t.producerNode!==void 0}function x_(t,n){let e=Object.create(FR);e.computation=t,n!==void 0&&(e.equal=n);let i=()=>{if(w_(e),Lc(e),e.value===Xd)throw e.error;return e.value};return i[gi]=e,i}var g_=Symbol("UNSET"),__=Symbol("COMPUTING"),Xd=Symbol("ERRORED"),FR=G(E({},Nc),{value:g_,dirty:!0,error:null,equal:v_,kind:"computed",producerMustRecompute(t){return t.value===g_||t.value===__},producerRecomputeValue(t){if(t.value===__)throw new Error("Detected cycle in computations.");let n=t.value;t.value=__;let e=ef(t),i,r=!1;try{i=t.computation(),be(null),r=n!==g_&&n!==Xd&&i!==Xd&&t.equal(n,i)}catch(o){i=Xd,t.error=o}finally{S_(t,e)}if(r){t.value=n;return}t.value=i,t.version++}});function VR(){throw new Error}var tM=VR;function nM(t){tM(t)}function I_(t){tM=t}var jR=null;function k_(t,n){let e=Object.create(rf);e.value=t,n!==void 0&&(e.equal=n);let i=()=>(Lc(e),e.value);return i[gi]=e,i}function Fc(t,n){M_()||nM(t),t.equal(t.value,n)||(t.value=n,HR(t))}function A_(t,n){M_()||nM(t),Fc(t,n(t.value))}var rf=G(E({},Nc),{equal:v_,value:void 0,kind:"signal"});function HR(t){t.version++,ZD(),D_(t),jR?.()}function P_(t){let n=be(null);try{return t()}finally{be(n)}}var O_;function Vc(){return O_}function qr(t){let n=O_;return O_=t,n}var of=Symbol("NotFound");function te(t){return typeof t=="function"}function Ra(t){let e=t(i=>{Error.call(i),i.stack=new Error().stack});return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}var sf=Ra(t=>function(e){t(this),this.message=e?`${e.length} errors occurred during unsubscription: +${e.map((i,r)=>`${r+1}) ${i.toString()}`).join(` + `)}`:"",this.name="UnsubscriptionError",this.errors=e});function bs(t,n){if(t){let e=t.indexOf(n);0<=e&&t.splice(e,1)}}var We=class t{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;let{_parentage:e}=this;if(e)if(this._parentage=null,Array.isArray(e))for(let o of e)o.remove(this);else e.remove(this);let{initialTeardown:i}=this;if(te(i))try{i()}catch(o){n=o instanceof sf?o.errors:[o]}let{_finalizers:r}=this;if(r){this._finalizers=null;for(let o of r)try{iM(o)}catch(s){n=n??[],s instanceof sf?n=[...n,...s.errors]:n.push(s)}}if(n)throw new sf(n)}}add(n){var e;if(n&&n!==this)if(this.closed)iM(n);else{if(n instanceof t){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=(e=this._finalizers)!==null&&e!==void 0?e:[]).push(n)}}_hasParent(n){let{_parentage:e}=this;return e===n||Array.isArray(e)&&e.includes(n)}_addParent(n){let{_parentage:e}=this;this._parentage=Array.isArray(e)?(e.push(n),e):e?[e,n]:n}_removeParent(n){let{_parentage:e}=this;e===n?this._parentage=null:Array.isArray(e)&&bs(e,n)}remove(n){let{_finalizers:e}=this;e&&bs(e,n),n instanceof t&&n._removeParent(this)}};We.EMPTY=(()=>{let t=new We;return t.closed=!0,t})();var R_=We.EMPTY;function af(t){return t instanceof We||t&&"closed"in t&&te(t.remove)&&te(t.add)&&te(t.unsubscribe)}function iM(t){te(t)?t():t.unsubscribe()}var $i={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var Na={setTimeout(t,n,...e){let{delegate:i}=Na;return i?.setTimeout?i.setTimeout(t,n,...e):setTimeout(t,n,...e)},clearTimeout(t){let{delegate:n}=Na;return(n?.clearTimeout||clearTimeout)(t)},delegate:void 0};function lf(t){Na.setTimeout(()=>{let{onUnhandledError:n}=$i;if(n)n(t);else throw t})}function Cs(){}var rM=N_("C",void 0,void 0);function oM(t){return N_("E",void 0,t)}function sM(t){return N_("N",t,void 0)}function N_(t,n,e){return{kind:t,value:n,error:e}}var ws=null;function La(t){if($i.useDeprecatedSynchronousErrorHandling){let n=!ws;if(n&&(ws={errorThrown:!1,error:null}),t(),n){let{errorThrown:e,error:i}=ws;if(ws=null,e)throw i}}else t()}function aM(t){$i.useDeprecatedSynchronousErrorHandling&&ws&&(ws.errorThrown=!0,ws.error=t)}var Ds=class extends We{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,af(n)&&n.add(this)):this.destination=WR}static create(n,e,i){return new Mo(n,e,i)}next(n){this.isStopped?F_(sM(n),this):this._next(n)}error(n){this.isStopped?F_(oM(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?F_(rM,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()}}},zR=Function.prototype.bind;function L_(t,n){return zR.call(t,n)}var V_=class{constructor(n){this.partialObserver=n}next(n){let{partialObserver:e}=this;if(e.next)try{e.next(n)}catch(i){cf(i)}}error(n){let{partialObserver:e}=this;if(e.error)try{e.error(n)}catch(i){cf(i)}else cf(n)}complete(){let{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(e){cf(e)}}},Mo=class extends Ds{constructor(n,e,i){super();let r;if(te(n)||!n)r={next:n??void 0,error:e??void 0,complete:i??void 0};else{let o;this&&$i.useDeprecatedNextContext?(o=Object.create(n),o.unsubscribe=()=>this.unsubscribe(),r={next:n.next&&L_(n.next,o),error:n.error&&L_(n.error,o),complete:n.complete&&L_(n.complete,o)}):r=n}this.destination=new V_(r)}};function cf(t){$i.useDeprecatedSynchronousErrorHandling?aM(t):lf(t)}function YR(t){throw t}function F_(t,n){let{onStoppedNotification:e}=$i;e&&Na.setTimeout(()=>e(t,n))}var WR={closed:!0,next:Cs,error:YR,complete:Cs};var Fa=typeof Symbol=="function"&&Symbol.observable||"@@observable";function on(t){return t}function j_(...t){return H_(t)}function H_(t){return t.length===0?on:t.length===1?t[0]:function(e){return t.reduce((i,r)=>r(i),e)}}var ae=(()=>{class t{constructor(e){e&&(this._subscribe=e)}lift(e){let i=new t;return i.source=this,i.operator=e,i}subscribe(e,i,r){let o=qR(e)?e:new Mo(e,i,r);return La(()=>{let{operator:s,source:a}=this;o.add(s?s.call(o,a):a?this._subscribe(o):this._trySubscribe(o))}),o}_trySubscribe(e){try{return this._subscribe(e)}catch(i){e.error(i)}}forEach(e,i){return i=lM(i),new i((r,o)=>{let s=new Mo({next:a=>{try{e(a)}catch(l){o(l),s.unsubscribe()}},error:o,complete:r});this.subscribe(s)})}_subscribe(e){var i;return(i=this.source)===null||i===void 0?void 0:i.subscribe(e)}[Fa](){return this}pipe(...e){return H_(e)(this)}toPromise(e){return e=lM(e),new e((i,r)=>{let o;this.subscribe(s=>o=s,s=>r(s),()=>i(o))})}}return t.create=n=>new t(n),t})();function lM(t){var n;return(n=t??$i.Promise)!==null&&n!==void 0?n:Promise}function GR(t){return t&&te(t.next)&&te(t.error)&&te(t.complete)}function qR(t){return t&&t instanceof Ds||GR(t)&&af(t)}function B_(t){return te(t?.lift)}function de(t){return n=>{if(B_(n))return n.lift(function(e){try{return t(e,this)}catch(i){this.error(i)}});throw new TypeError("Unable to lift unknown Observable type")}}function fe(t,n,e,i,r){return new U_(t,n,e,i,r)}var U_=class extends Ds{constructor(n,e,i,r,o,s){super(n),this.onFinalize=o,this.shouldUnsubscribe=s,this._next=e?function(a){try{e(a)}catch(l){n.error(l)}}:super._next,this._error=r?function(a){try{r(a)}catch(l){n.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=i?function(){try{i()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed:e}=this;super.unsubscribe(),!e&&((n=this.onFinalize)===null||n===void 0||n.call(this))}}};function Va(){return de((t,n)=>{let e=null;t._refCount++;let i=fe(n,void 0,void 0,void 0,()=>{if(!t||t._refCount<=0||0<--t._refCount){e=null;return}let r=t._connection,o=e;e=null,r&&(!o||r===o)&&r.unsubscribe(),n.unsubscribe()});t.subscribe(i),i.closed||(e=t.connect())})}var ja=class extends ae{constructor(n,e){super(),this.source=n,this.subjectFactory=e,this._subject=null,this._refCount=0,this._connection=null,B_(n)&&(this.lift=n.lift)}_subscribe(n){return this.getSubject().subscribe(n)}getSubject(){let n=this._subject;return(!n||n.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;let{_connection:n}=this;this._subject=this._connection=null,n?.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new We;let e=this.getSubject();n.add(this.source.subscribe(fe(e,void 0,()=>{this._teardown(),e.complete()},i=>{this._teardown(),e.error(i)},()=>this._teardown()))),n.closed&&(this._connection=null,n=We.EMPTY)}return n}refCount(){return Va()(this)}};var Ha={schedule(t){let n=requestAnimationFrame,e=cancelAnimationFrame,{delegate:i}=Ha;i&&(n=i.requestAnimationFrame,e=i.cancelAnimationFrame);let r=n(o=>{e=void 0,t(o)});return new We(()=>e?.(r))},requestAnimationFrame(...t){let{delegate:n}=Ha;return(n?.requestAnimationFrame||requestAnimationFrame)(...t)},cancelAnimationFrame(...t){let{delegate:n}=Ha;return(n?.cancelAnimationFrame||cancelAnimationFrame)(...t)},delegate:void 0};var cM=Ra(t=>function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var ie=(()=>{class t extends ae{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(e){let i=new uf(this,this);return i.operator=e,i}_throwIfClosed(){if(this.closed)throw new cM}next(e){La(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let i of this.currentObservers)i.next(e)}})}error(e){La(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=e;let{observers:i}=this;for(;i.length;)i.shift().error(e)}})}complete(){La(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers:e}=this;for(;e.length;)e.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var e;return((e=this.observers)===null||e===void 0?void 0:e.length)>0}_trySubscribe(e){return this._throwIfClosed(),super._trySubscribe(e)}_subscribe(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)}_innerSubscribe(e){let{hasError:i,isStopped:r,observers:o}=this;return i||r?R_:(this.currentObservers=null,o.push(e),new We(()=>{this.currentObservers=null,bs(o,e)}))}_checkFinalizedStatuses(e){let{hasError:i,thrownError:r,isStopped:o}=this;i?e.error(r):o&&e.complete()}asObservable(){let e=new ae;return e.source=this,e}}return t.create=(n,e)=>new uf(n,e),t})(),uf=class extends ie{constructor(n,e){super(),this.destination=n,this.source=e}next(n){var e,i;(i=(e=this.destination)===null||e===void 0?void 0:e.next)===null||i===void 0||i.call(e,n)}error(n){var e,i;(i=(e=this.destination)===null||e===void 0?void 0:e.error)===null||i===void 0||i.call(e,n)}complete(){var n,e;(e=(n=this.destination)===null||n===void 0?void 0:n.complete)===null||e===void 0||e.call(n)}_subscribe(n){var e,i;return(i=(e=this.source)===null||e===void 0?void 0:e.subscribe(n))!==null&&i!==void 0?i:R_}};var Ve=class extends ie{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){let e=super._subscribe(n);return!e.closed&&n.next(this._value),e}getValue(){let{hasError:n,thrownError:e,_value:i}=this;if(n)throw e;return this._throwIfClosed(),i}next(n){super.next(this._value=n)}};var $_={now(){return($_.delegate||Date).now()},delegate:void 0};var df=class extends We{constructor(n,e){super()}schedule(n,e=0){return this}};var jc={setInterval(t,n,...e){let{delegate:i}=jc;return i?.setInterval?i.setInterval(t,n,...e):setInterval(t,n,...e)},clearInterval(t){let{delegate:n}=jc;return(n?.clearInterval||clearInterval)(t)},delegate:void 0};var So=class extends df{constructor(n,e){super(n,e),this.scheduler=n,this.work=e,this.pending=!1}schedule(n,e=0){var i;if(this.closed)return this;this.state=n;let r=this.id,o=this.scheduler;return r!=null&&(this.id=this.recycleAsyncId(o,r,e)),this.pending=!0,this.delay=e,this.id=(i=this.id)!==null&&i!==void 0?i:this.requestAsyncId(o,this.id,e),this}requestAsyncId(n,e,i=0){return jc.setInterval(n.flush.bind(n,this),i)}recycleAsyncId(n,e,i=0){if(i!=null&&this.delay===i&&this.pending===!1)return e;e!=null&&jc.clearInterval(e)}execute(n,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;let i=this._execute(n,e);if(i)return i;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(n,e){let i=!1,r;try{this.work(n)}catch(o){i=!0,r=o||new Error("Scheduled action threw falsy error")}if(i)return this.unsubscribe(),r}unsubscribe(){if(!this.closed){let{id:n,scheduler:e}=this,{actions:i}=e;this.work=this.state=this.scheduler=null,this.pending=!1,bs(i,this),n!=null&&(this.id=this.recycleAsyncId(e,n,null)),this.delay=null,super.unsubscribe()}}};var Ba=class t{constructor(n,e=t.now){this.schedulerActionCtor=n,this.now=e}schedule(n,e=0,i){return new this.schedulerActionCtor(this,n).schedule(i,e)}};Ba.now=$_.now;var To=class extends Ba{constructor(n,e=Ba.now){super(n,e),this.actions=[],this._active=!1}flush(n){let{actions:e}=this;if(this._active){e.push(n);return}let i;this._active=!0;do if(i=n.execute(n.state,n.delay))break;while(n=e.shift());if(this._active=!1,i){for(;n=e.shift();)n.unsubscribe();throw i}}};var Hc=new To(So),uM=Hc;var ff=class extends So{constructor(n,e){super(n,e),this.scheduler=n,this.work=e}schedule(n,e=0){return e>0?super.schedule(n,e):(this.delay=e,this.state=n,this.scheduler.flush(this),this)}execute(n,e){return e>0||this.closed?super.execute(n,e):this._execute(n,e)}requestAsyncId(n,e,i=0){return i!=null&&i>0||i==null&&this.delay>0?super.requestAsyncId(n,e,i):(n.flush(this),0)}};var hf=class extends To{};var z_=new hf(ff);var pf=class extends So{constructor(n,e){super(n,e),this.scheduler=n,this.work=e}requestAsyncId(n,e,i=0){return i!==null&&i>0?super.requestAsyncId(n,e,i):(n.actions.push(this),n._scheduled||(n._scheduled=Ha.requestAnimationFrame(()=>n.flush(void 0))))}recycleAsyncId(n,e,i=0){var r;if(i!=null?i>0:this.delay>0)return super.recycleAsyncId(n,e,i);let{actions:o}=n;e!=null&&e===n._scheduled&&((r=o[o.length-1])===null||r===void 0?void 0:r.id)!==e&&(Ha.cancelAnimationFrame(e),n._scheduled=void 0)}};var mf=class extends To{flush(n){this._active=!0;let e;n?e=n.id:(e=this._scheduled,this._scheduled=void 0);let{actions:i}=this,r;n=n||i.shift();do if(r=n.execute(n.state,n.delay))break;while((n=i[0])&&n.id===e&&i.shift());if(this._active=!1,r){for(;(n=i[0])&&n.id===e&&i.shift();)n.unsubscribe();throw r}}};var Ua=new mf(pf);var Pt=new ae(t=>t.complete());function Y_(t){return t?QR(t):Pt}function QR(t){return new ae(n=>t.schedule(()=>n.complete()))}function gf(t){return t&&te(t.schedule)}function W_(t){return t[t.length-1]}function _f(t){return te(W_(t))?t.pop():void 0}function pr(t){return gf(W_(t))?t.pop():void 0}function dM(t,n){return typeof W_(t)=="number"?t.pop():n}function hM(t,n,e,i){var r=arguments.length,o=r<3?n:i===null?i=Object.getOwnPropertyDescriptor(n,e):i,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(t,n,e,i);else for(var a=t.length-1;a>=0;a--)(s=t[a])&&(o=(r<3?s(o):r>3?s(n,e,o):s(n,e))||o);return r>3&&o&&Object.defineProperty(n,e,o),o}function pM(t,n){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,n)}function mM(t,n,e,i){function r(o){return o instanceof e?o:new e(function(s){s(o)})}return new(e||(e=Promise))(function(o,s){function a(u){try{c(i.next(u))}catch(p){s(p)}}function l(u){try{c(i.throw(u))}catch(p){s(p)}}function c(u){u.done?o(u.value):r(u.value).then(a,l)}c((i=i.apply(t,n||[])).next())})}function fM(t){var n=typeof Symbol=="function"&&Symbol.iterator,e=n&&t[n],i=0;if(e)return e.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}function Ms(t){return this instanceof Ms?(this.v=t,this):new Ms(t)}function gM(t,n,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=e.apply(t,n||[]),r,o=[];return r=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",s),r[Symbol.asyncIterator]=function(){return this},r;function s(_){return function(M){return Promise.resolve(M).then(_,p)}}function a(_,M){i[_]&&(r[_]=function(x){return new Promise(function(P,F){o.push([_,x,P,F])>1||l(_,x)})},M&&(r[_]=M(r[_])))}function l(_,M){try{c(i[_](M))}catch(x){v(o[0][3],x)}}function c(_){_.value instanceof Ms?Promise.resolve(_.value.v).then(u,p):v(o[0][2],_)}function u(_){l("next",_)}function p(_){l("throw",_)}function v(_,M){_(M),o.shift(),o.length&&l(o[0][0],o[0][1])}}function _M(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=t[Symbol.asyncIterator],e;return n?n.call(t):(t=typeof fM=="function"?fM(t):t[Symbol.iterator](),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(o){e[o]=t[o]&&function(s){return new Promise(function(a,l){s=t[o](s),r(a,l,s.done,s.value)})}}function r(o,s,a,l){Promise.resolve(l).then(function(c){o({value:c,done:a})},s)}}var $a=t=>t&&typeof t.length=="number"&&typeof t!="function";function yf(t){return te(t?.then)}function vf(t){return te(t[Fa])}function bf(t){return Symbol.asyncIterator&&te(t?.[Symbol.asyncIterator])}function Cf(t){return new TypeError(`You provided ${t!==null&&typeof t=="object"?"an invalid object":`'${t}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function KR(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var wf=KR();function Df(t){return te(t?.[wf])}function Mf(t){return gM(this,arguments,function*(){let e=t.getReader();try{for(;;){let{value:i,done:r}=yield Ms(e.read());if(r)return yield Ms(void 0);yield yield Ms(i)}}finally{e.releaseLock()}})}function Sf(t){return te(t?.getReader)}function it(t){if(t instanceof ae)return t;if(t!=null){if(vf(t))return ZR(t);if($a(t))return JR(t);if(yf(t))return XR(t);if(bf(t))return yM(t);if(Df(t))return eN(t);if(Sf(t))return tN(t)}throw Cf(t)}function ZR(t){return new ae(n=>{let e=t[Fa]();if(te(e.subscribe))return e.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function JR(t){return new ae(n=>{for(let e=0;e{t.then(e=>{n.closed||(n.next(e),n.complete())},e=>n.error(e)).then(null,lf)})}function eN(t){return new ae(n=>{for(let e of t)if(n.next(e),n.closed)return;n.complete()})}function yM(t){return new ae(n=>{nN(t,n).catch(e=>n.error(e))})}function tN(t){return yM(Mf(t))}function nN(t,n){var e,i,r,o;return mM(this,void 0,void 0,function*(){try{for(e=_M(t);i=yield e.next(),!i.done;){let s=i.value;if(n.next(s),n.closed)return}}catch(s){r={error:s}}finally{try{i&&!i.done&&(o=e.return)&&(yield o.call(e))}finally{if(r)throw r.error}}n.complete()})}function Nn(t,n,e,i=0,r=!1){let o=n.schedule(function(){e(),r?t.add(this.schedule(null,i)):this.unsubscribe()},i);if(t.add(o),!r)return o}function Ss(t,n=0){return de((e,i)=>{e.subscribe(fe(i,r=>Nn(i,t,()=>i.next(r),n),()=>Nn(i,t,()=>i.complete(),n),r=>Nn(i,t,()=>i.error(r),n)))})}function Tf(t,n=0){return de((e,i)=>{i.add(t.schedule(()=>e.subscribe(i),n))})}function vM(t,n){return it(t).pipe(Tf(n),Ss(n))}function bM(t,n){return it(t).pipe(Tf(n),Ss(n))}function CM(t,n){return new ae(e=>{let i=0;return n.schedule(function(){i===t.length?e.complete():(e.next(t[i++]),e.closed||this.schedule())})})}function wM(t,n){return new ae(e=>{let i;return Nn(e,n,()=>{i=t[wf](),Nn(e,n,()=>{let r,o;try{({value:r,done:o}=i.next())}catch(s){e.error(s);return}o?e.complete():e.next(r)},0,!0)}),()=>te(i?.return)&&i.return()})}function Ef(t,n){if(!t)throw new Error("Iterable cannot be null");return new ae(e=>{Nn(e,n,()=>{let i=t[Symbol.asyncIterator]();Nn(e,n,()=>{i.next().then(r=>{r.done?e.complete():e.next(r.value)})},0,!0)})})}function DM(t,n){return Ef(Mf(t),n)}function MM(t,n){if(t!=null){if(vf(t))return vM(t,n);if($a(t))return CM(t,n);if(yf(t))return bM(t,n);if(bf(t))return Ef(t,n);if(Df(t))return wM(t,n);if(Sf(t))return DM(t,n)}throw Cf(t)}function rt(t,n){return n?MM(t,n):it(t)}function J(...t){let n=pr(t);return rt(t,n)}function za(t,n){let e=te(t)?t:()=>t,i=r=>r.error(e());return new ae(n?r=>n.schedule(i,0,r):i)}function G_(t){return!!t&&(t instanceof ae||te(t.lift)&&te(t.subscribe))}var zi=Ra(t=>function(){t(this),this.name="EmptyError",this.message="no elements in sequence"});function xf(t,n){let e=typeof n=="object";return new Promise((i,r)=>{let o=new Mo({next:s=>{i(s),o.unsubscribe()},error:r,complete:()=>{e?i(n.defaultValue):r(new zi)}});t.subscribe(o)})}function SM(t){return t instanceof Date&&!isNaN(t)}function q(t,n){return de((e,i)=>{let r=0;e.subscribe(fe(i,o=>{i.next(t.call(n,o,r++))}))})}var{isArray:iN}=Array;function rN(t,n){return iN(n)?t(...n):t(n)}function Ya(t){return q(n=>rN(t,n))}var{isArray:oN}=Array,{getPrototypeOf:sN,prototype:aN,keys:lN}=Object;function If(t){if(t.length===1){let n=t[0];if(oN(n))return{args:n,keys:null};if(cN(n)){let e=lN(n);return{args:e.map(i=>n[i]),keys:e}}}return{args:t,keys:null}}function cN(t){return t&&typeof t=="object"&&sN(t)===aN}function kf(t,n){return t.reduce((e,i,r)=>(e[i]=n[r],e),{})}function Eo(...t){let n=pr(t),e=_f(t),{args:i,keys:r}=If(t);if(i.length===0)return rt([],n);let o=new ae(uN(i,n,r?s=>kf(r,s):on));return e?o.pipe(Ya(e)):o}function uN(t,n,e=on){return i=>{TM(n,()=>{let{length:r}=t,o=new Array(r),s=r,a=r;for(let l=0;l{let c=rt(t[l],n),u=!1;c.subscribe(fe(i,p=>{o[l]=p,u||(u=!0,a--),a||i.next(e(o.slice()))},()=>{--s||i.complete()}))},i)},i)}}function TM(t,n,e){t?Nn(e,t,n):n()}function Af(t,n,e,i,r,o,s,a){let l=[],c=0,u=0,p=!1,v=()=>{p&&!l.length&&!c&&n.complete()},_=x=>c{o&&n.next(x),c++;let P=!1;it(e(x,u++)).subscribe(fe(n,F=>{r?.(F),o?_(F):n.next(F)},()=>{P=!0},void 0,()=>{if(P)try{for(c--;l.length&&cM(F)):M(F)}v()}catch(F){n.error(F)}}))};return t.subscribe(fe(n,_,()=>{p=!0,v()})),()=>{a?.()}}function Ze(t,n,e=1/0){return te(n)?Ze((i,r)=>q((o,s)=>n(i,o,r,s))(it(t(i,r))),e):(typeof n=="number"&&(e=n),de((i,r)=>Af(i,r,t,e)))}function Pf(t=1/0){return Ze(on,t)}function EM(){return Pf(1)}function xo(...t){return EM()(rt(t,pr(t)))}function Of(t){return new ae(n=>{it(t()).subscribe(n)})}function q_(...t){let n=_f(t),{args:e,keys:i}=If(t),r=new ae(o=>{let{length:s}=e;if(!s){o.complete();return}let a=new Array(s),l=s,c=s;for(let u=0;u{p||(p=!0,c--),a[u]=v},()=>l--,void 0,()=>{(!l||!p)&&(c||o.next(i?kf(i,a):a),o.complete())}))}});return n?r.pipe(Ya(n)):r}var dN=["addListener","removeListener"],fN=["addEventListener","removeEventListener"],hN=["on","off"];function _i(t,n,e,i){if(te(e)&&(i=e,e=void 0),i)return _i(t,n,e).pipe(Ya(i));let[r,o]=gN(t)?fN.map(s=>a=>t[s](n,a,e)):pN(t)?dN.map(xM(t,n)):mN(t)?hN.map(xM(t,n)):[];if(!r&&$a(t))return Ze(s=>_i(s,n,e))(it(t));if(!r)throw new TypeError("Invalid event target");return new ae(s=>{let a=(...l)=>s.next(1o(a)})}function xM(t,n){return e=>i=>t[e](n,i)}function pN(t){return te(t.addListener)&&te(t.removeListener)}function mN(t){return te(t.on)&&te(t.off)}function gN(t){return te(t.addEventListener)&&te(t.removeEventListener)}function Ts(t=0,n,e=uM){let i=-1;return n!=null&&(gf(n)?e=n:i=n),new ae(r=>{let o=SM(t)?+t-e.now():t;o<0&&(o=0);let s=0;return e.schedule(function(){r.closed||(r.next(s++),0<=i?this.schedule(void 0,i):r.complete())},o)})}function Wa(...t){let n=pr(t),e=dM(t,1/0),i=t;return i.length?i.length===1?it(i[0]):Pf(e)(rt(i,n)):Pt}function he(t,n){return de((e,i)=>{let r=0;e.subscribe(fe(i,o=>t.call(n,o,r++)&&i.next(o)))})}function Yi(t){return de((n,e)=>{let i=null,r=!1,o;i=n.subscribe(fe(e,void 0,void 0,s=>{o=it(t(s,Yi(t)(n))),i?(i.unsubscribe(),i=null,o.subscribe(e)):r=!0})),r&&(i.unsubscribe(),i=null,o.subscribe(e))})}function IM(t,n,e,i,r){return(o,s)=>{let a=e,l=n,c=0;o.subscribe(fe(s,u=>{let p=c++;l=a?t(l,u,p):(a=!0,u),i&&s.next(l)},r&&(()=>{a&&s.next(l),s.complete()})))}}function Io(t,n){return te(n)?Ze(t,n,1):Ze(t,1)}function Rf(t,n=Hc){return de((e,i)=>{let r=null,o=null,s=null,a=()=>{if(r){r.unsubscribe(),r=null;let c=o;o=null,i.next(c)}};function l(){let c=s+t,u=n.now();if(u{o=c,s=n.now(),r||(r=n.schedule(l,t),i.add(r))},()=>{a(),i.complete()},void 0,()=>{o=r=null}))})}function ko(t){return de((n,e)=>{let i=!1;n.subscribe(fe(e,r=>{i=!0,e.next(r)},()=>{i||e.next(t),e.complete()}))})}function Mt(t){return t<=0?()=>Pt:de((n,e)=>{let i=0;n.subscribe(fe(e,r=>{++i<=t&&(e.next(r),t<=i&&e.complete())}))})}function kM(){return de((t,n)=>{t.subscribe(fe(n,Cs))})}function AM(t){return q(()=>t)}function Q_(t,n){return n?e=>xo(n.pipe(Mt(1),kM()),e.pipe(Q_(t))):Ze((e,i)=>it(t(e,i)).pipe(Mt(1),AM(e)))}function Bc(t,n=Hc){let e=Ts(t,n);return Q_(()=>e)}function Qr(t,n=on){return t=t??_N,de((e,i)=>{let r,o=!0;e.subscribe(fe(i,s=>{let a=n(s);(o||!t(r,a))&&(o=!1,r=a,i.next(s))}))})}function _N(t,n){return t===n}function Nf(t=yN){return de((n,e)=>{let i=!1;n.subscribe(fe(e,r=>{i=!0,e.next(r)},()=>i?e.complete():e.error(t())))})}function yN(){return new zi}function Ga(t,n=1/0,e){return n=(n||0)<1?1/0:n,de((i,r)=>Af(i,r,t,n,void 0,!0,e))}function yi(t){return de((n,e)=>{try{n.subscribe(e)}finally{e.add(t)}})}function Kr(t,n){let e=arguments.length>=2;return i=>i.pipe(t?he((r,o)=>t(r,o,i)):on,Mt(1),e?ko(n):Nf(()=>new zi))}function qa(t){return t<=0?()=>Pt:de((n,e)=>{let i=[];n.subscribe(fe(e,r=>{i.push(r),t{for(let r of i)e.next(r);e.complete()},void 0,()=>{i=null}))})}function K_(t,n){let e=arguments.length>=2;return i=>i.pipe(t?he((r,o)=>t(r,o,i)):on,qa(1),e?ko(n):Nf(()=>new zi))}function Uc(t,n){return de(IM(t,n,arguments.length>=2,!0))}function Z_(t){return he((n,e)=>t<=e)}function Es(...t){let n=pr(t);return de((e,i)=>{(n?xo(t,e,n):xo(t,e)).subscribe(i)})}function St(t,n){return de((e,i)=>{let r=null,o=0,s=!1,a=()=>s&&!r&&i.complete();e.subscribe(fe(i,l=>{r?.unsubscribe();let c=0,u=o++;it(t(l,u)).subscribe(r=fe(i,p=>i.next(n?n(l,p,u,c++):p),()=>{r=null,a()}))},()=>{s=!0,a()}))})}function vi(t){return de((n,e)=>{it(t).subscribe(fe(e,()=>e.complete(),Cs)),!e.closed&&n.subscribe(e)})}function J_(t,n=!1){return de((e,i)=>{let r=0;e.subscribe(fe(i,o=>{let s=t(o,r++);(s||n)&&i.next(o),!s&&i.complete()}))})}function pt(t,n,e){let i=te(t)||n||e?{next:t,error:n,complete:e}:t;return i?de((r,o)=>{var s;(s=i.subscribe)===null||s===void 0||s.call(i);let a=!0;r.subscribe(fe(o,l=>{var c;(c=i.next)===null||c===void 0||c.call(i,l),o.next(l)},()=>{var l;a=!1,(l=i.complete)===null||l===void 0||l.call(i),o.complete()},l=>{var c;a=!1,(c=i.error)===null||c===void 0||c.call(i,l),o.error(l)},()=>{var l,c;a&&((l=i.unsubscribe)===null||l===void 0||l.call(i)),(c=i.finalize)===null||c===void 0||c.call(i)}))}):on}var MS="https://angular.dev/best-practices/security#preventing-cross-site-scripting-xss",R=class extends Error{code;constructor(n,e){super(Tv(n,e)),this.code=n}};function vN(t){return`NG0${Math.abs(t)}`}function Tv(t,n){return`${vN(t)}${n?": "+n:""}`}var SS=Symbol("InputSignalNode#UNSET"),bN=G(E({},rf),{transformFn:void 0,applyValueToInputSignal(t,n){Fc(t,n)}});function TS(t,n){let e=Object.create(bN);e.value=t,e.transformFn=n?.transform;function i(){if(Lc(e),e.value===SS){let r=null;throw new R(-950,r)}return e.value}return i[gi]=e,i}function tu(t){return{toString:t}.toString()}var Lf="__parameters__";function CN(t){return function(...e){if(t){let i=t(...e);for(let r in i)this[r]=i[r]}}}function ES(t,n,e){return tu(()=>{let i=CN(n);function r(...o){if(this instanceof r)return i.apply(this,o),this;let s=new r(...o);return a.annotation=s,a;function a(l,c,u){let p=l.hasOwnProperty(Lf)?l[Lf]:Object.defineProperty(l,Lf,{value:[]})[Lf];for(;p.length<=u;)p.push(null);return(p[u]=p[u]||[]).push(s),l}}return r.prototype.ngMetadataName=t,r.annotationCls=r,r})}var mr=globalThis;function Je(t){for(let n in t)if(t[n]===Je)return n;throw Error("Could not find renamed property on target object.")}function wN(t,n){for(let e in n)n.hasOwnProperty(e)&&!t.hasOwnProperty(e)&&(t[e]=n[e])}function Vn(t){if(typeof t=="string")return t;if(Array.isArray(t))return`[${t.map(Vn).join(", ")}]`;if(t==null)return""+t;let n=t.overriddenName||t.name;if(n)return`${n}`;let e=t.toString();if(e==null)return""+e;let i=e.indexOf(` +`);return i>=0?e.slice(0,i):e}function my(t,n){return t?n?`${t} ${n}`:t:n||""}var DN=Je({__forward_ref__:Je});function ze(t){return t.__forward_ref__=ze,t.toString=function(){return Vn(this())},t}function xn(t){return xS(t)?t():t}function xS(t){return typeof t=="function"&&t.hasOwnProperty(DN)&&t.__forward_ref__===ze}function k(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function Ce(t){return{providers:t.providers||[],imports:t.imports||[]}}function vh(t){return PM(t,kS)||PM(t,AS)}function IS(t){return vh(t)!==null}function PM(t,n){return t.hasOwnProperty(n)?t[n]:null}function MN(t){let n=t&&(t[kS]||t[AS]);return n||null}function OM(t){return t&&(t.hasOwnProperty(RM)||t.hasOwnProperty(SN))?t[RM]:null}var kS=Je({\u0275prov:Je}),RM=Je({\u0275inj:Je}),AS=Je({ngInjectableDef:Je}),SN=Je({ngInjectorDef:Je}),$=class{_desc;ngMetadataName="InjectionToken";\u0275prov;constructor(n,e){this._desc=n,this.\u0275prov=void 0,typeof e=="number"?this.__NG_ELEMENT_ID__=e:e!==void 0&&(this.\u0275prov=k({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function PS(t){return t&&!!t.\u0275providers}var TN=Je({\u0275cmp:Je}),EN=Je({\u0275dir:Je}),xN=Je({\u0275pipe:Je}),IN=Je({\u0275mod:Je}),Gf=Je({\u0275fac:Je}),Wc=Je({__NG_ELEMENT_ID__:Je}),NM=Je({__NG_ENV_ID__:Je});function As(t){return typeof t=="string"?t:t==null?"":String(t)}function kN(t){return typeof t=="function"?t.name||t.toString():typeof t=="object"&&t!=null&&typeof t.type=="function"?t.type.name||t.type.toString():As(t)}function OS(t,n){throw new R(-200,t)}function Ev(t,n){throw new R(-201,!1)}var Ee=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}(Ee||{}),gy;function RS(){return gy}function Ln(t){let n=gy;return gy=t,n}function NS(t,n,e){let i=vh(t);if(i&&i.providedIn=="root")return i.value===void 0?i.value=i.factory():i.value;if(e&Ee.Optional)return null;if(n!==void 0)return n;Ev(t,"Injector")}var AN={},Is=AN,_y="__NG_DI_FLAG__",qf=class{injector;constructor(n){this.injector=n}retrieve(n,e){let i=e;return this.injector.get(n,i.optional?of:Is,i)}},Qf="ngTempTokenPath",PN="ngTokenPath",ON=/\n/gm,RN="\u0275",LM="__source";function NN(t,n=Ee.Default){if(Vc()===void 0)throw new R(-203,!1);if(Vc()===null)return NS(t,void 0,n);{let e=Vc(),i;return e instanceof qf?i=e.injector:i=e,i.get(t,n&Ee.Optional?null:void 0,n)}}function j(t,n=Ee.Default){return(RS()||NN)(xn(t),n)}function S(t,n=Ee.Default){return j(t,bh(n))}function bh(t){return typeof t>"u"||typeof t=="number"?t:0|(t.optional&&8)|(t.host&&1)|(t.self&&2)|(t.skipSelf&&4)}function yy(t){let n=[];for(let e=0;e ");else if(typeof n=="object"){let o=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];o.push(s+":"+(typeof a=="string"?JSON.stringify(a):Vn(a)))}r=`{${o.join(", ")}}`}return`${e}${i?"("+i+")":""}[${r}]: ${t.replace(ON,` + `)}`}var xv=LS(ES("Optional"),8);var FS=LS(ES("SkipSelf"),4);function Ps(t,n){let e=t.hasOwnProperty(Gf);return e?t[Gf]:null}function jN(t,n,e){if(t.length!==n.length)return!1;for(let i=0;iArray.isArray(e)?Iv(e,n):n(e))}function VS(t,n,e){n>=t.length?t.push(e):t.splice(n,0,e)}function Kf(t,n){return n>=t.length-1?t.pop():t.splice(n,1)[0]}function BN(t,n){let e=[];for(let i=0;in;){let o=r-2;t[r]=t[o],r--}t[n]=e,t[n+1]=i}}function kv(t,n,e){let i=nu(t,n);return i>=0?t[i|1]=e:(i=~i,UN(t,i,n,e)),i}function X_(t,n){let e=nu(t,n);if(e>=0)return t[e|1]}function nu(t,n){return $N(t,n,1)}function $N(t,n,e){let i=0,r=t.length>>e;for(;r!==i;){let o=i+(r-i>>1),s=t[o<n?r=o:i=o+1}return~(r<{e.push(s)};return Iv(n,s=>{let a=s;vy(a,o,[],i)&&(r||=[],r.push(a))}),r!==void 0&&$S(r,o),e}function $S(t,n){for(let e=0;e{n(o,i)})}}function vy(t,n,e,i){if(t=xn(t),!t)return!1;let r=null,o=OM(t),s=!o&&el(t);if(!o&&!s){let l=t.ngModule;if(o=OM(l),o)r=l;else return!1}else{if(s&&!s.standalone)return!1;r=t}let a=i.has(r);if(s){if(a)return!1;if(i.add(r),s.dependencies){let l=typeof s.dependencies=="function"?s.dependencies():s.dependencies;for(let c of l)vy(c,n,e,i)}}else if(o){if(o.imports!=null&&!a){i.add(r);let c;try{Iv(o.imports,u=>{vy(u,n,e,i)&&(c||=[],c.push(u))})}finally{}c!==void 0&&$S(c,n)}if(!a){let c=Ps(r)||(()=>new r);n({provide:r,useFactory:c,deps:Fn},r),n({provide:HS,useValue:r,multi:!0},r),n({provide:Xa,useValue:()=>j(r),multi:!0},r)}let l=o.providers;if(l!=null&&!a){let c=t;Pv(l,u=>{n(u,c)})}}else return!1;return r!==t&&t.providers!==void 0}function Pv(t,n){for(let e of t)PS(e)&&(e=e.\u0275providers),Array.isArray(e)?Pv(e,n):n(e)}var WN=Je({provide:String,useValue:Je});function zS(t){return t!==null&&typeof t=="object"&&WN in t}function GN(t){return!!(t&&t.useExisting)}function qN(t){return!!(t&&t.useFactory)}function tl(t){return typeof t=="function"}function QN(t){return!!t.useClass}var Ch=new $(""),Bf={},FM={},ey;function Ov(){return ey===void 0&&(ey=new Zf),ey}var In=class{},Gc=class extends In{parent;source;scopes;records=new Map;_ngOnDestroyHooks=new Set;_onDestroyHooks=[];get destroyed(){return this._destroyed}_destroyed=!1;injectorDefTypes;constructor(n,e,i,r){super(),this.parent=e,this.source=i,this.scopes=r,Cy(n,s=>this.processProvider(s)),this.records.set(jS,Qa(void 0,this)),r.has("environment")&&this.records.set(In,Qa(void 0,this));let o=this.records.get(Ch);o!=null&&typeof o.value=="string"&&this.scopes.add(o.value),this.injectorDefTypes=new Set(this.get(HS,Fn,Ee.Self))}retrieve(n,e){let i=e;return this.get(n,i.optional?of:Is,i)}destroy(){zc(this),this._destroyed=!0;let n=be(null);try{for(let i of this._ngOnDestroyHooks)i.ngOnDestroy();let e=this._onDestroyHooks;this._onDestroyHooks=[];for(let i of e)i()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),be(n)}}onDestroy(n){return zc(this),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){zc(this);let e=qr(this),i=Ln(void 0),r;try{return n()}finally{qr(e),Ln(i)}}get(n,e=Is,i=Ee.Default){if(zc(this),n.hasOwnProperty(NM))return n[NM](this);i=bh(i);let r,o=qr(this),s=Ln(void 0);try{if(!(i&Ee.SkipSelf)){let l=this.records.get(n);if(l===void 0){let c=eL(n)&&vh(n);c&&this.injectableDefInScope(c)?l=Qa(by(n),Bf):l=null,this.records.set(n,l)}if(l!=null)return this.hydrate(n,l)}let a=i&Ee.Self?Ov():this.parent;return e=i&Ee.Optional&&e===Is?null:e,a.get(n,e)}catch(a){if(a.name==="NullInjectorError"){if((a[Qf]=a[Qf]||[]).unshift(Vn(n)),o)throw a;return FN(a,n,"R3InjectorError",this.source)}else throw a}finally{Ln(s),qr(o)}}resolveInjectorInitializers(){let n=be(null),e=qr(this),i=Ln(void 0),r;try{let o=this.get(Xa,Fn,Ee.Self);for(let s of o)s()}finally{qr(e),Ln(i),be(n)}}toString(){let n=[],e=this.records;for(let i of e.keys())n.push(Vn(i));return`R3Injector[${n.join(", ")}]`}processProvider(n){n=xn(n);let e=tl(n)?n:xn(n&&n.provide),i=ZN(n);if(!tl(n)&&n.multi===!0){let r=this.records.get(e);r||(r=Qa(void 0,Bf,!0),r.factory=()=>yy(r.multi),this.records.set(e,r)),e=n,r.multi.push(n)}this.records.set(e,i)}hydrate(n,e){let i=be(null);try{return e.value===FM?OS(Vn(n)):e.value===Bf&&(e.value=FM,e.value=e.factory()),typeof e.value=="object"&&e.value&&XN(e.value)&&this._ngOnDestroyHooks.add(e.value),e.value}finally{be(i)}}injectableDefInScope(n){if(!n.providedIn)return!1;let e=xn(n.providedIn);return typeof e=="string"?e==="any"||this.scopes.has(e):this.injectorDefTypes.has(e)}removeOnDestroy(n){let e=this._onDestroyHooks.indexOf(n);e!==-1&&this._onDestroyHooks.splice(e,1)}};function by(t){let n=vh(t),e=n!==null?n.factory:Ps(t);if(e!==null)return e;if(t instanceof $)throw new R(204,!1);if(t instanceof Function)return KN(t);throw new R(204,!1)}function KN(t){if(t.length>0)throw new R(204,!1);let e=MN(t);return e!==null?()=>e.factory(t):()=>new t}function ZN(t){if(zS(t))return Qa(void 0,t.useValue);{let n=YS(t);return Qa(n,Bf)}}function YS(t,n,e){let i;if(tl(t)){let r=xn(t);return Ps(r)||by(r)}else if(zS(t))i=()=>xn(t.useValue);else if(qN(t))i=()=>t.useFactory(...yy(t.deps||[]));else if(GN(t))i=()=>j(xn(t.useExisting));else{let r=xn(t&&(t.useClass||t.provide));if(JN(t))i=()=>new r(...yy(t.deps));else return Ps(r)||by(r)}return i}function zc(t){if(t.destroyed)throw new R(205,!1)}function Qa(t,n,e=!1){return{factory:t,value:n,multi:e?[]:void 0}}function JN(t){return!!t.deps}function XN(t){return t!==null&&typeof t=="object"&&typeof t.ngOnDestroy=="function"}function eL(t){return typeof t=="function"||typeof t=="object"&&t instanceof $}function Cy(t,n){for(let e of t)Array.isArray(e)?Cy(e,n):e&&PS(e)?Cy(e.\u0275providers,n):n(e)}function ei(t,n){let e;t instanceof Gc?(zc(t),e=t):e=new qf(t);let i,r=qr(e),o=Ln(void 0);try{return n()}finally{qr(r),Ln(o)}}function tL(){return RS()!==void 0||Vc()!=null}function nL(t){return typeof t=="function"}var Cr=0,ge=1,_e=2,vn=3,qi=4,Bn=5,nl=6,Jf=7,qt=8,il=9,Zr=10,mt=11,qc=12,VM=13,dl=14,Jn=15,Rs=16,Ka=17,Jr=18,wh=19,WS=20,Ao=21,ty=22,Xf=23,bi=24,ny=25,Qt=26,Rv=1;var Ns=7,eh=8,rl=9,yn=10;function Po(t){return Array.isArray(t)&&typeof t[Rv]=="object"}function eo(t){return Array.isArray(t)&&t[Rv]===!0}function Nv(t){return(t.flags&4)!==0}function fl(t){return t.componentOffset>-1}function Dh(t){return(t.flags&1)===1}function Qi(t){return!!t.template}function th(t){return(t[_e]&512)!==0}function iu(t){return(t[_e]&256)===256}var wy=class{previousValue;currentValue;firstChange;constructor(n,e,i){this.previousValue=n,this.currentValue=e,this.firstChange=i}isFirstChange(){return this.firstChange}};function GS(t,n,e,i){n!==null?n.applyValueToInputSignal(n,i):t[e]=i}var Se=(()=>{let t=()=>qS;return t.ngInherit=!0,t})();function qS(t){return t.type.prototype.ngOnChanges&&(t.setInput=rL),iL}function iL(){let t=KS(this),n=t?.current;if(n){let e=t.previous;if(e===Os)t.previous=n;else for(let i in n)e[i]=n[i];t.current=null,this.ngOnChanges(n)}}function rL(t,n,e,i,r){let o=this.declaredInputs[i],s=KS(t)||oL(t,{previous:Os,current:null}),a=s.current||(s.current={}),l=s.previous,c=l[o];a[o]=new wy(c&&c.currentValue,e,l===Os),GS(t,n,r,e)}var QS="__ngSimpleChanges__";function KS(t){return t[QS]||null}function oL(t,n){return t[QS]=n}var jM=null;var ot=function(t,n=null,e){jM?.(t,n,e)},sL="svg",aL="math";function _r(t){for(;Array.isArray(t);)t=t[Cr];return t}function lL(t){for(;Array.isArray(t);){if(typeof t[Rv]=="object")return t;t=t[Cr]}return null}function ZS(t,n){return _r(n[t])}function wr(t,n){return _r(n[t.index])}function Lv(t,n){return t.data[n]}function Fv(t,n){return t[n]}function yr(t,n){let e=n[t];return Po(e)?e:e[Cr]}function cL(t){return(t[_e]&4)===4}function Vv(t){return(t[_e]&128)===128}function uL(t){return eo(t[vn])}function Oo(t,n){return n==null?null:t[n]}function JS(t){t[Ka]=0}function XS(t){t[_e]&1024||(t[_e]|=1024,Vv(t)&&Sh(t))}function dL(t,n){for(;t>0;)n=n[dl],t--;return n}function Mh(t){return!!(t[_e]&9216||t[bi]?.dirty)}function Dy(t){t[Zr].changeDetectionScheduler?.notify(8),t[_e]&64&&(t[_e]|=1024),Mh(t)&&Sh(t)}function Sh(t){t[Zr].changeDetectionScheduler?.notify(0);let n=Ls(t);for(;n!==null&&!(n[_e]&8192||(n[_e]|=8192,!Vv(n)));)n=Ls(n)}function eT(t,n){if(iu(t))throw new R(911,!1);t[Ao]===null&&(t[Ao]=[]),t[Ao].push(n)}function fL(t,n){if(t[Ao]===null)return;let e=t[Ao].indexOf(n);e!==-1&&t[Ao].splice(e,1)}function Ls(t){let n=t[vn];return eo(n)?n[vn]:n}function jv(t){return t[Jf]??=[]}function Hv(t){return t.cleanup??=[]}function hL(t,n,e,i){let r=jv(n);r.push(e),t.firstCreatePass&&Hv(t).push(i,r.length-1)}var Me={lFrame:lT(null),bindingsEnabled:!0,skipHydrationRootTNode:null};var My=!1;function pL(){return Me.lFrame.elementDepthCount}function mL(){Me.lFrame.elementDepthCount++}function gL(){Me.lFrame.elementDepthCount--}function Bv(){return Me.bindingsEnabled}function tT(){return Me.skipHydrationRootTNode!==null}function _L(t){return Me.skipHydrationRootTNode===t}function yL(){Me.skipHydrationRootTNode=null}function le(){return Me.lFrame.lView}function gt(){return Me.lFrame.tView}function C(t){return Me.lFrame.contextLView=t,t[qt]}function w(t){return Me.lFrame.contextLView=null,t}function kn(){let t=nT();for(;t!==null&&t.type===64;)t=t.parent;return t}function nT(){return Me.lFrame.currentTNode}function vL(){let t=Me.lFrame,n=t.currentTNode;return t.isParent?n:n.parent}function Hs(t,n){let e=Me.lFrame;e.currentTNode=t,e.isParent=n}function Uv(){return Me.lFrame.isParent}function $v(){Me.lFrame.isParent=!1}function bL(){return Me.lFrame.contextLView}function iT(){return My}function HM(t){let n=My;return My=t,n}function hl(){let t=Me.lFrame,n=t.bindingRootIndex;return n===-1&&(n=t.bindingRootIndex=t.tView.bindingStartIndex),n}function CL(){return Me.lFrame.bindingIndex}function wL(t){return Me.lFrame.bindingIndex=t}function Bs(){return Me.lFrame.bindingIndex++}function zv(t){let n=Me.lFrame,e=n.bindingIndex;return n.bindingIndex=n.bindingIndex+t,e}function DL(){return Me.lFrame.inI18n}function ML(t,n){let e=Me.lFrame;e.bindingIndex=e.bindingRootIndex=t,Sy(n)}function SL(){return Me.lFrame.currentDirectiveIndex}function Sy(t){Me.lFrame.currentDirectiveIndex=t}function rT(t){let n=Me.lFrame.currentDirectiveIndex;return n===-1?null:t[n]}function oT(){return Me.lFrame.currentQueryIndex}function Yv(t){Me.lFrame.currentQueryIndex=t}function TL(t){let n=t[ge];return n.type===2?n.declTNode:n.type===1?t[Bn]:null}function sT(t,n,e){if(e&Ee.SkipSelf){let r=n,o=t;for(;r=r.parent,r===null&&!(e&Ee.Host);)if(r=TL(o),r===null||(o=o[dl],r.type&10))break;if(r===null)return!1;n=r,t=o}let i=Me.lFrame=aT();return i.currentTNode=n,i.lView=t,!0}function Wv(t){let n=aT(),e=t[ge];Me.lFrame=n,n.currentTNode=e.firstChild,n.lView=t,n.tView=e,n.contextLView=t,n.bindingIndex=e.bindingStartIndex,n.inI18n=!1}function aT(){let t=Me.lFrame,n=t===null?null:t.child;return n===null?lT(t):n}function lT(t){let 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:t,child:null,inI18n:!1};return t!==null&&(t.child=n),n}function cT(){let t=Me.lFrame;return Me.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}var uT=cT;function Gv(){let t=cT();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function EL(t){return(Me.lFrame.contextLView=dL(t,Me.lFrame.contextLView))[qt]}function to(){return Me.lFrame.selectedIndex}function Fs(t){Me.lFrame.selectedIndex=t}function ru(){let t=Me.lFrame;return Lv(t.tView,t.selectedIndex)}function xL(){return Me.lFrame.currentNamespace}var dT=!0;function Th(){return dT}function Eh(t){dT=t}function IL(t,n,e){let{ngOnChanges:i,ngOnInit:r,ngDoCheck:o}=n.type.prototype;if(i){let s=qS(n);(e.preOrderHooks??=[]).push(t,s),(e.preOrderCheckHooks??=[]).push(t,s)}r&&(e.preOrderHooks??=[]).push(0-t,r),o&&((e.preOrderHooks??=[]).push(t,o),(e.preOrderCheckHooks??=[]).push(t,o))}function qv(t,n){for(let e=n.directiveStart,i=n.directiveEnd;e=i)break}else n[l]<0&&(t[Ka]+=65536),(a>14>16&&(t[_e]&3)===n&&(t[_e]+=16384,BM(a,o)):BM(a,o)}var Ja=-1,Vs=class{factory;injectImpl;resolving=!1;canSeeViewProviders;multi;componentProviders;index;providerFactory;constructor(n,e,i){this.factory=n,this.canSeeViewProviders=e,this.injectImpl=i}};function AL(t){return(t.flags&8)!==0}function PL(t){return(t.flags&16)!==0}function OL(t,n,e){let i=0;for(;in){s=o-1;break}}}for(;o>16}function ih(t,n){let e=NL(t),i=n;for(;e>0;)i=i[dl],e--;return i}var Ty=!0;function rh(t){let n=Ty;return Ty=t,n}var LL=256,mT=LL-1,gT=5,FL=0,gr={};function VL(t,n,e){let i;typeof e=="string"?i=e.charCodeAt(0)||0:e.hasOwnProperty(Wc)&&(i=e[Wc]),i==null&&(i=e[Wc]=FL++);let r=i&mT,o=1<>gT)]|=o}function oh(t,n){let e=_T(t,n);if(e!==-1)return e;let i=n[ge];i.firstCreatePass&&(t.injectorIndex=n.length,ry(i.data,t),ry(n,null),ry(i.blueprint,null));let r=Qv(t,n),o=t.injectorIndex;if(pT(r)){let s=nh(r),a=ih(r,n),l=a[ge].data;for(let c=0;c<8;c++)n[o+c]=a[s+c]|l[s+c]}return n[o+8]=r,o}function ry(t,n){t.push(0,0,0,0,0,0,0,0,n)}function _T(t,n){return t.injectorIndex===-1||t.parent&&t.parent.injectorIndex===t.injectorIndex||n[t.injectorIndex+8]===null?-1:t.injectorIndex}function Qv(t,n){if(t.parent&&t.parent.injectorIndex!==-1)return t.parent.injectorIndex;let e=0,i=null,r=n;for(;r!==null;){if(i=wT(r),i===null)return Ja;if(e++,r=r[dl],i.injectorIndex!==-1)return i.injectorIndex|e<<16}return Ja}function Ey(t,n,e){VL(t,n,e)}function jL(t,n){if(n==="class")return t.classes;if(n==="style")return t.styles;let e=t.attrs;if(e){let i=e.length,r=0;for(;r>20,p=i?a:a+u,v=r?a+u:c;for(let _=p;_=l&&M.type===e)return _}if(r){let _=s[l];if(_&&Qi(_)&&_.type===e)return l}return null}function Qc(t,n,e,i){let r=t[e],o=n.data;if(r instanceof Vs){let s=r;s.resolving&&OS(kN(o[e]));let a=rh(s.canSeeViewProviders);s.resolving=!0;let l,c=s.injectImpl?Ln(s.injectImpl):null,u=sT(t,i,Ee.Default);try{r=t[e]=s.factory(void 0,o,t,i),n.firstCreatePass&&e>=i.directiveStart&&IL(e,o[e],n)}finally{c!==null&&Ln(c),rh(a),s.resolving=!1,uT()}}return r}function BL(t){if(typeof t=="string")return t.charCodeAt(0)||0;let n=t.hasOwnProperty(Wc)?t[Wc]:void 0;return typeof n=="number"?n>=0?n&mT:UL:n}function $M(t,n,e){let i=1<>gT)]&i)}function zM(t,n){return!(t&Ee.Self)&&!(t&Ee.Host&&n)}var ks=class{_tNode;_lView;constructor(n,e){this._tNode=n,this._lView=e}get(n,e,i){return bT(this._tNode,this._lView,n,bh(i),e)}};function UL(){return new ks(kn(),le())}function bn(t){return tu(()=>{let n=t.prototype.constructor,e=n[Gf]||xy(n),i=Object.prototype,r=Object.getPrototypeOf(t.prototype).constructor;for(;r&&r!==i;){let o=r[Gf]||xy(r);if(o&&o!==e)return o;r=Object.getPrototypeOf(r)}return o=>new o})}function xy(t){return xS(t)?()=>{let n=xy(xn(t));return n&&n()}:Ps(t)}function $L(t,n,e,i,r){let o=t,s=n;for(;o!==null&&s!==null&&s[_e]&2048&&!th(s);){let a=CT(o,s,e,i|Ee.Self,gr);if(a!==gr)return a;let l=o.parent;if(!l){let c=s[WS];if(c){let u=c.get(e,gr,i);if(u!==gr)return u}l=wT(s),s=s[dl]}o=l}return r}function wT(t){let n=t[ge],e=n.type;return e===2?n.declTNode:e===1?t[Bn]:null}function Kv(t){return jL(kn(),t)}function YM(t,n=null,e=null,i){let r=DT(t,n,e,i);return r.resolveInjectorInitializers(),r}function DT(t,n=null,e=null,i,r=new Set){let o=[e||Fn,Av(t)];return i=i||(typeof t=="object"?void 0:Vn(t)),new Gc(o,n||Ov(),i||null,r)}var Nt=class t{static THROW_IF_NOT_FOUND=Is;static NULL=new Zf;static create(n,e){if(Array.isArray(n))return YM({name:""},e,n,"");{let i=n.name??"";return YM({name:i},n.parent,n.providers,i)}}static \u0275prov=k({token:t,providedIn:"any",factory:()=>j(jS)});static __NG_ELEMENT_ID__=-1};var zL=new $("");zL.__NG_ELEMENT_ID__=t=>{let n=kn();if(n===null)throw new R(204,!1);if(n.type&2)return n.value;if(t&Ee.Optional)return null;throw new R(204,!1)};var MT=!1,ou=(()=>{class t{static __NG_ELEMENT_ID__=YL;static __NG_ENV_ID__=e=>e}return t})(),Iy=class extends ou{_lView;constructor(n){super(),this._lView=n}onDestroy(n){return eT(this._lView,n),()=>fL(this._lView,n)}};function YL(){return new Iy(le())}var Kc=class{},Zv=new $("",{providedIn:"root",factory:()=>!1});var ST=new $(""),TT=new $(""),No=(()=>{class t{taskId=0;pendingTasks=new Set;get _hasPendingTasks(){return this.hasPendingTasks.value}hasPendingTasks=new Ve(!1);add(){this._hasPendingTasks||this.hasPendingTasks.next(!0);let e=this.taskId++;return this.pendingTasks.add(e),e}has(e){return this.pendingTasks.has(e)}remove(e){this.pendingTasks.delete(e),this.pendingTasks.size===0&&this._hasPendingTasks&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this._hasPendingTasks&&this.hasPendingTasks.next(!1)}static \u0275prov=k({token:t,providedIn:"root",factory:()=>new t})}return t})();var ky=class extends ie{__isAsync;destroyRef=void 0;pendingTasks=void 0;constructor(n=!1){super(),this.__isAsync=n,tL()&&(this.destroyRef=S(ou,{optional:!0})??void 0,this.pendingTasks=S(No,{optional:!0})??void 0)}emit(n){let e=be(null);try{super.next(n)}finally{be(e)}}subscribe(n,e,i){let r=n,o=e||(()=>null),s=i;if(n&&typeof n=="object"){let l=n;r=l.next?.bind(l),o=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(o=this.wrapInTimeout(o),r&&(r=this.wrapInTimeout(r)),s&&(s=this.wrapInTimeout(s)));let a=super.subscribe({next:r,error:o,complete:s});return n instanceof We&&n.add(a),a}wrapInTimeout(n){return e=>{let i=this.pendingTasks?.add();setTimeout(()=>{n(e),i!==void 0&&this.pendingTasks?.remove(i)})}}},O=ky;function sh(...t){}function ET(t){let n,e;function i(){t=sh;try{e!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(e),n!==void 0&&clearTimeout(n)}catch{}}return n=setTimeout(()=>{t(),i()}),typeof requestAnimationFrame=="function"&&(e=requestAnimationFrame(()=>{t(),i()})),()=>i()}function WM(t){return queueMicrotask(()=>t()),()=>{t=sh}}var Jv="isAngularZone",ah=Jv+"_ID",WL=0,xe=class t{hasPendingMacrotasks=!1;hasPendingMicrotasks=!1;isStable=!0;onUnstable=new O(!1);onMicrotaskEmpty=new O(!1);onStable=new O(!1);onError=new O(!1);constructor(n){let{enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:i=!1,shouldCoalesceRunChangeDetection:r=!1,scheduleInRootZone:o=MT}=n;if(typeof Zone>"u")throw new R(908,!1);Zone.assertZonePatched();let s=this;s._nesting=0,s._outer=s._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(s._inner=s._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(s._inner=s._inner.fork(Zone.longStackTraceZoneSpec)),s.shouldCoalesceEventChangeDetection=!r&&i,s.shouldCoalesceRunChangeDetection=r,s.callbackScheduled=!1,s.scheduleInRootZone=o,QL(s)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(Jv)===!0}static assertInAngularZone(){if(!t.isInAngularZone())throw new R(909,!1)}static assertNotInAngularZone(){if(t.isInAngularZone())throw new R(909,!1)}run(n,e,i){return this._inner.run(n,e,i)}runTask(n,e,i,r){let o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,n,GL,sh,sh);try{return o.runTask(s,e,i)}finally{o.cancelTask(s)}}runGuarded(n,e,i){return this._inner.runGuarded(n,e,i)}runOutsideAngular(n){return this._outer.run(n)}},GL={};function Xv(t){if(t._nesting==0&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function qL(t){if(t.isCheckStableRunning||t.callbackScheduled)return;t.callbackScheduled=!0;function n(){ET(()=>{t.callbackScheduled=!1,Ay(t),t.isCheckStableRunning=!0,Xv(t),t.isCheckStableRunning=!1})}t.scheduleInRootZone?Zone.root.run(()=>{n()}):t._outer.run(()=>{n()}),Ay(t)}function QL(t){let n=()=>{qL(t)},e=WL++;t._inner=t._inner.fork({name:"angular",properties:{[Jv]:!0,[ah]:e,[ah+e]:!0},onInvokeTask:(i,r,o,s,a,l)=>{if(KL(l))return i.invokeTask(o,s,a,l);try{return GM(t),i.invokeTask(o,s,a,l)}finally{(t.shouldCoalesceEventChangeDetection&&s.type==="eventTask"||t.shouldCoalesceRunChangeDetection)&&n(),qM(t)}},onInvoke:(i,r,o,s,a,l,c)=>{try{return GM(t),i.invoke(o,s,a,l,c)}finally{t.shouldCoalesceRunChangeDetection&&!t.callbackScheduled&&!ZL(l)&&n(),qM(t)}},onHasTask:(i,r,o,s)=>{i.hasTask(o,s),r===o&&(s.change=="microTask"?(t._hasPendingMicrotasks=s.microTask,Ay(t),Xv(t)):s.change=="macroTask"&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(i,r,o,s)=>(i.handleError(o,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}function Ay(t){t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&t.callbackScheduled===!0?t.hasPendingMicrotasks=!0:t.hasPendingMicrotasks=!1}function GM(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function qM(t){t._nesting--,Xv(t)}var Py=class{hasPendingMicrotasks=!1;hasPendingMacrotasks=!1;isStable=!0;onUnstable=new O;onMicrotaskEmpty=new O;onStable=new O;onError=new O;run(n,e,i){return n.apply(e,i)}runGuarded(n,e,i){return n.apply(e,i)}runOutsideAngular(n){return n()}runTask(n,e,i,r){return n.apply(e,i)}};function KL(t){return xT(t,"__ignore_ng_zone__")}function ZL(t){return xT(t,"__scheduler_tick__")}function xT(t,n){return!Array.isArray(t)||t.length!==1?!1:t[0]?.data?.[n]===!0}var vr=class{_console=console;handleError(n){this._console.error("ERROR",n)}},JL=new $("",{providedIn:"root",factory:()=>{let t=S(xe),n=S(vr);return e=>t.runOutsideAngular(()=>n.handleError(e))}}),Oy=class{destroyed=!1;listeners=null;errorHandler=S(vr,{optional:!0});destroyRef=S(ou);constructor(){this.destroyRef.onDestroy(()=>{this.destroyed=!0,this.listeners=null})}subscribe(n){if(this.destroyed)throw new R(953,!1);return(this.listeners??=[]).push(n),{unsubscribe:()=>{let e=this.listeners?.indexOf(n);e!==void 0&&e!==-1&&this.listeners?.splice(e,1)}}}emit(n){if(this.destroyed){console.warn(Tv(953,!1));return}if(this.listeners===null)return;let e=be(null);try{for(let i of this.listeners)try{i(n)}catch(r){this.errorHandler?.handleError(r)}}finally{be(e)}}};function Us(t){return new Oy}function QM(t,n){return TS(t,n)}function XL(t){return TS(SS,t)}var un=(QM.required=XL,QM);function e2(){return pl(kn(),le())}function pl(t,n){return new Y(wr(t,n))}var Y=(()=>{class t{nativeElement;constructor(e){this.nativeElement=e}static __NG_ELEMENT_ID__=e2}return t})();function t2(t){return t instanceof Y?t.nativeElement:t}function n2(t){return typeof t=="function"&&t[gi]!==void 0}function qe(t,n){let e=k_(t,n?.equal),i=e[gi];return e.set=r=>Fc(i,r),e.update=r=>A_(i,r),e.asReadonly=i2.bind(e),e}function i2(){let t=this[gi];if(t.readonlyFn===void 0){let n=()=>this();n[gi]=t,t.readonlyFn=n}return t.readonlyFn}function IT(t){return n2(t)&&typeof t.set=="function"}function r2(){return this._results[Symbol.iterator]()}var sl=class{_emitDistinctChangesOnly;dirty=!0;_onDirty=void 0;_results=[];_changesDetected=!1;_changes=void 0;length=0;first=void 0;last=void 0;get changes(){return this._changes??=new ie}constructor(n=!1){this._emitDistinctChangesOnly=n}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,e){return this._results.reduce(n,e)}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,e){this.dirty=!1;let i=HN(n);(this._changesDetected=!jN(this._results,i,e))&&(this._results=i,this.length=i.length,this.last=i[this.length-1],this.first=i[0])}notifyOnChanges(){this._changes!==void 0&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.next(this)}onDirty(n){this._onDirty=n}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){this._changes!==void 0&&(this._changes.complete(),this._changes.unsubscribe())}[Symbol.iterator]=r2};function kT(t){return(t.flags&128)===128}var AT=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}(AT||{}),PT=new Map,o2=0;function s2(){return o2++}function a2(t){PT.set(t[wh],t)}function Ry(t){PT.delete(t[wh])}var KM="__ngContext__";function ml(t,n){Po(n)?(t[KM]=n[wh],a2(n)):t[KM]=n}function OT(t){return NT(t[qc])}function RT(t){return NT(t[qi])}function NT(t){for(;t!==null&&!eo(t);)t=t[qi];return t}var Ny;function LT(t){Ny=t}function FT(){if(Ny!==void 0)return Ny;if(typeof document<"u")return document;throw new R(210,!1)}var e0=new $("",{providedIn:"root",factory:()=>l2}),l2="ng",t0=new $(""),ti=new $("",{providedIn:"platform",factory:()=>"unknown"});var su=new $(""),n0=new $("",{providedIn:"root",factory:()=>FT().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var c2="h",u2="b";var VT=!1,d2=new $("",{providedIn:"root",factory:()=>VT});var jT=function(t){return t[t.CHANGE_DETECTION=0]="CHANGE_DETECTION",t[t.AFTER_NEXT_RENDER=1]="AFTER_NEXT_RENDER",t}(jT||{}),xh=new $(""),ZM=new Set;function gl(t){ZM.has(t)||(ZM.add(t),performance?.mark?.("mark_feature_usage",{detail:{feature:t}}))}var f2=(()=>{class t{impl=null;execute(){this.impl?.execute()}static \u0275prov=k({token:t,providedIn:"root",factory:()=>new t})}return t})();var h2=()=>null;function HT(t,n,e=!1){return h2(t,n,e)}function BT(t,n){let e=t.contentQueries;if(e!==null){let i=be(null);try{for(let r=0;rt,createScript:t=>t,createScriptURL:t=>t})}catch{}return Ff}function Ih(t){return p2()?.createHTML(t)||t}var Vf;function UT(){if(Vf===void 0&&(Vf=null,mr.trustedTypes))try{Vf=mr.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch{}return Vf}function JM(t){return UT()?.createHTML(t)||t}function XM(t){return UT()?.createScriptURL(t)||t}var Xr=class{changingThisBreaksApplicationSecurity;constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${MS})`}},Fy=class extends Xr{getTypeName(){return"HTML"}},Vy=class extends Xr{getTypeName(){return"Style"}},jy=class extends Xr{getTypeName(){return"Script"}},Hy=class extends Xr{getTypeName(){return"URL"}},By=class extends Xr{getTypeName(){return"ResourceURL"}};function Ki(t){return t instanceof Xr?t.changingThisBreaksApplicationSecurity:t}function no(t,n){let e=m2(t);if(e!=null&&e!==n){if(e==="ResourceURL"&&n==="URL")return!0;throw new Error(`Required a safe ${n}, got a ${e} (see ${MS})`)}return e===n}function m2(t){return t instanceof Xr&&t.getTypeName()||null}function $T(t){return new Fy(t)}function zT(t){return new Vy(t)}function YT(t){return new jy(t)}function WT(t){return new Hy(t)}function GT(t){return new By(t)}function g2(t){let n=new $y(t);return _2()?new Uy(n):n}var Uy=class{inertDocumentHelper;constructor(n){this.inertDocumentHelper=n}getInertBodyElement(n){n=""+n;try{let e=new window.DOMParser().parseFromString(Ih(n),"text/html").body;return e===null?this.inertDocumentHelper.getInertBodyElement(n):(e.firstChild?.remove(),e)}catch{return null}}},$y=class{defaultDoc;inertDocument;constructor(n){this.defaultDoc=n,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(n){let e=this.inertDocument.createElement("template");return e.innerHTML=Ih(n),e}};function _2(){try{return!!new window.DOMParser().parseFromString(Ih(""),"text/html")}catch{return!1}}var y2=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function kh(t){return t=String(t),t.match(y2)?t:"unsafe:"+t}function io(t){let n={};for(let e of t.split(","))n[e]=!0;return n}function au(...t){let n={};for(let e of t)for(let i in e)e.hasOwnProperty(i)&&(n[i]=!0);return n}var qT=io("area,br,col,hr,img,wbr"),QT=io("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),KT=io("rp,rt"),v2=au(KT,QT),b2=au(QT,io("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),C2=au(KT,io("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),eS=au(qT,b2,C2,v2),ZT=io("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),w2=io("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),D2=io("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext"),M2=au(ZT,w2,D2),S2=io("script,style,template"),zy=class{sanitizedSomething=!1;buf=[];sanitizeChildren(n){let e=n.firstChild,i=!0,r=[];for(;e;){if(e.nodeType===Node.ELEMENT_NODE?i=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,i&&e.firstChild){r.push(e),e=x2(e);continue}for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let o=E2(e);if(o){e=o;break}e=r.pop()}}return this.buf.join("")}startElement(n){let e=tS(n).toLowerCase();if(!eS.hasOwnProperty(e))return this.sanitizedSomething=!0,!S2.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);let i=n.attributes;for(let r=0;r"),!0}endElement(n){let e=tS(n).toLowerCase();eS.hasOwnProperty(e)&&!qT.hasOwnProperty(e)&&(this.buf.push(""))}chars(n){this.buf.push(nS(n))}};function T2(t,n){return(t.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}function E2(t){let n=t.nextSibling;if(n&&t!==n.previousSibling)throw JT(n);return n}function x2(t){let n=t.firstChild;if(n&&T2(t,n))throw JT(n);return n}function tS(t){let n=t.nodeName;return typeof n=="string"?n:"FORM"}function JT(t){return new Error(`Failed to sanitize html because the element is clobbered: ${t.outerHTML}`)}var I2=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,k2=/([^\#-~ |!])/g;function nS(t){return t.replace(/&/g,"&").replace(I2,function(n){let e=n.charCodeAt(0),i=n.charCodeAt(1);return"&#"+((e-55296)*1024+(i-56320)+65536)+";"}).replace(k2,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(//g,">")}var jf;function r0(t,n){let e=null;try{jf=jf||g2(t);let i=n?String(n):"";e=jf.getInertBodyElement(i);let r=5,o=i;do{if(r===0)throw new Error("Failed to sanitize html because the input is unstable");r--,i=o,o=e.innerHTML,e=jf.getInertBodyElement(i)}while(i!==o);let a=new zy().sanitizeChildren(iS(e)||e);return Ih(a)}finally{if(e){let i=iS(e)||e;for(;i.firstChild;)i.firstChild.remove()}}}function iS(t){return"content"in t&&A2(t)?t.content:null}function A2(t){return t.nodeType===Node.ELEMENT_NODE&&t.nodeName==="TEMPLATE"}var ni=function(t){return t[t.NONE=0]="NONE",t[t.HTML=1]="HTML",t[t.STYLE=2]="STYLE",t[t.SCRIPT=3]="SCRIPT",t[t.URL=4]="URL",t[t.RESOURCE_URL=5]="RESOURCE_URL",t}(ni||{});function ii(t){let n=o0();return n?JM(n.sanitize(ni.HTML,t)||""):no(t,"HTML")?JM(Ki(t)):r0(FT(),As(t))}function Xe(t){let n=o0();return n?n.sanitize(ni.URL,t)||"":no(t,"URL")?Ki(t):kh(As(t))}function Ah(t){let n=o0();if(n)return XM(n.sanitize(ni.RESOURCE_URL,t)||"");if(no(t,"ResourceURL"))return XM(Ki(t));throw new R(904,!1)}function P2(t,n){return n==="src"&&(t==="embed"||t==="frame"||t==="iframe"||t==="media"||t==="script")||n==="href"&&(t==="base"||t==="link")?Ah:Xe}function XT(t,n,e){return P2(n,e)(t)}function o0(){let t=le();return t&&t[Zr].sanitizer}var O2=/^>|^->||--!>|)/g,N2="\u200B$1\u200B";function L2(t){return t.replace(O2,n=>n.replace(R2,N2))}function lu(t){return t.ownerDocument.defaultView}function eE(t){return t instanceof Function?t():t}function F2(t,n,e){let i=t.length;for(;;){let r=t.indexOf(n,e);if(r===-1)return r;if(r===0||t.charCodeAt(r-1)<=32){let o=n.length;if(r+o===i||t.charCodeAt(r+o)<=32)return r}e=r+1}}var tE="ng-template";function V2(t,n,e,i){let r=0;if(i){for(;r-1){let o;for(;++ro?p="":p=r[u+1].toLowerCase(),i&2&&c!==p){if(Wi(i))return!1;s=!0}}}}return Wi(i)||s}function Wi(t){return(t&1)===0}function B2(t,n,e,i){if(n===null)return-1;let r=0;if(i||!e){let o=!1;for(;r-1)for(e++;e0?'="'+a+'"':"")+"]"}else i&8?r+="."+s:i&4&&(r+=" "+s);else r!==""&&!Wi(s)&&(n+=rS(o,r),r=""),i=s,o=o||!Wi(i);e++}return r!==""&&(n+=rS(o,r)),n}function G2(t){return t.map(W2).join(",")}function q2(t){let n=[],e=[],i=1,r=2;for(;iQt&&lE(t,n,Qt,!1),ot(s?2:0,r),e(i,r)}finally{Fs(o),ot(s?3:1,r)}}function Oh(t,n,e){cF(t,n,e),(e.flags&64)===64&&uF(t,n,e)}function u0(t,n,e=wr){let i=n.localNames;if(i!==null){let r=n.index+1;for(let o=0;onull;function aF(t){return t==="class"?"className":t==="for"?"htmlFor":t==="formaction"?"formAction":t==="innerHtml"?"innerHTML":t==="readonly"?"readOnly":t==="tabindex"?"tabIndex":t}function Rh(t,n,e,i,r,o,s,a){if(!a&&f0(n,t,e,i,r)){fl(n)&&lF(e,n.index);return}if(n.type&3){let l=wr(n,e);i=aF(i),r=s!=null?s(r,n.value||"",i):r,o.setProperty(l,i,r)}else n.type&12}function lF(t,n){let e=yr(n,t);e[_e]&16||(e[_e]|=64)}function cF(t,n,e){let i=e.directiveStart,r=e.directiveEnd;fl(e)&&iF(n,e,t.data[i+e.componentOffset]),t.firstCreatePass||oh(e,n);let o=e.initialInputs;for(let s=i;s=0?i[a]():i[-a].unsubscribe(),s+=2}else{let a=i[e[s+1]];e[s].call(a)}i!==null&&(n[Jf]=null);let r=n[Ao];if(r!==null){n[Ao]=null;for(let s=0;s{Sh(t.lView)},consumerOnSignalRead(){this.lView[bi]=this}});function FF(t){let n=t[bi]??Object.create(VF);return n.lView=t,n}var VF=G(E({},Nc),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:t=>{let n=Ls(t.lView);for(;n&&!_E(n[ge]);)n=Ls(n);n&&XS(n)},consumerOnSignalRead(){this.lView[bi]=this}});function _E(t){return t.type!==2}function yE(t){if(t[Xf]===null)return;let n=!0;for(;n;){let e=!1;for(let i of t[Xf])i.dirty&&(e=!0,i.zone===null||Zone.current===i.zone?i.run():i.zone.run(()=>i.run()));n=e&&!!(t[_e]&8192)}}var jF=100;function vE(t,n=!0,e=0){let r=t[Zr].rendererFactory,o=!1;o||r.begin?.();try{HF(t,e)}catch(s){throw n&&gF(t,s),s}finally{o||r.end?.()}}function HF(t,n){let e=iT();try{HM(!0),Gy(t,n);let i=0;for(;Mh(t);){if(i===jF)throw new R(103,!1);i++,Gy(t,1)}}finally{HM(e)}}function BF(t,n,e,i){if(iu(n))return;let r=n[_e],o=!1,s=!1;Wv(n);let a=!0,l=null,c=null;o||(_E(t)?(c=OF(n),l=ef(c)):C_()===null?(a=!1,c=FF(n),l=ef(c)):n[bi]&&(E_(n[bi]),n[bi]=null));try{JS(n),wL(t.bindingStartIndex),e!==null&&cE(t,n,e,2,i);let u=(r&3)===3;if(!o)if(u){let _=t.preOrderCheckHooks;_!==null&&Uf(n,_,null)}else{let _=t.preOrderHooks;_!==null&&$f(n,_,0,null),iy(n,0)}if(s||UF(n),yE(n),bE(n,0),t.contentQueries!==null&&BT(t,n),!o)if(u){let _=t.contentCheckHooks;_!==null&&Uf(n,_)}else{let _=t.contentHooks;_!==null&&$f(n,_,1),iy(n,1)}zF(t,n);let p=t.components;p!==null&&wE(n,p,0);let v=t.viewQuery;if(v!==null&&Ly(2,v,i),!o)if(u){let _=t.viewCheckHooks;_!==null&&Uf(n,_)}else{let _=t.viewHooks;_!==null&&$f(n,_,2),iy(n,2)}if(t.firstUpdatePass===!0&&(t.firstUpdatePass=!1),n[ty]){for(let _ of n[ty])_();n[ty]=null}o||(mE(n),n[_e]&=-73)}catch(u){throw o||Sh(n),u}finally{c!==null&&(S_(c,l),a&&NF(c)),Gv()}}function bE(t,n){for(let e=OT(t);e!==null;e=RT(e))for(let i=yn;i0&&(t[e-1][qi]=i[qi]);let o=Kf(t,yn+n);CF(i[ge],i);let s=o[Jr];s!==null&&s.detachView(o[ge]),i[vn]=null,i[qi]=null,i[_e]&=-129}return i}function YF(t,n,e,i){let r=yn+i,o=e.length;i>0&&(e[r-1][qi]=n),i-1&&(Zc(n,i),Kf(e,i))}this._attachedToViewContainer=!1}Nh(this._lView[ge],this._lView)}onDestroy(n){eT(this._lView,n)}markForCheck(){y0(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[_e]&=-129}reattach(){Dy(this._lView),this._lView[_e]|=128}detectChanges(){this._lView[_e]|=1024,vE(this._lView,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new R(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let n=th(this._lView),e=this._lView[Rs];e!==null&&!n&&g0(e,this._lView),uE(this._lView[ge],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new R(902,!1);this._appRef=n;let e=th(this._lView),i=this._lView[Rs];i!==null&&!e&&TE(i,this._lView),Dy(this._lView)}};var Ot=(()=>{class t{static __NG_ELEMENT_ID__=qF}return t})(),WF=Ot,GF=class extends WF{_declarationLView;_declarationTContainer;elementRef;constructor(n,e,i){super(),this._declarationLView=n,this._declarationTContainer=e,this.elementRef=i}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(n,e){return this.createEmbeddedViewImpl(n,e)}createEmbeddedViewImpl(n,e,i){let r=cu(this._declarationLView,this._declarationTContainer,n,{embeddedViewInjector:e,dehydratedView:i});return new Jc(r)}};function qF(){return Vh(kn(),le())}function Vh(t,n){return t.type&4?new GF(n,t,pl(t,n)):null}function du(t,n,e,i,r){let o=t.data[n];if(o===null)o=QF(t,n,e,i,r),DL()&&(o.flags|=32);else if(o.type&64){o.type=e,o.value=i,o.attrs=r;let s=vL();o.injectorIndex=s===null?-1:s.injectorIndex}return Hs(o,!0),o}function QF(t,n,e,i,r){let o=nT(),s=Uv(),a=s?o:o&&o.parent,l=t.data[n]=ZF(t,a,e,n,i,r);return KF(t,l,o,s),l}function KF(t,n,e,i){t.firstChild===null&&(t.firstChild=n),e!==null&&(i?e.child==null&&n.parent!==null&&(e.child=n):e.next===null&&(e.next=n,n.prev=e))}function ZF(t,n,e,i,r,o){let s=n?n.injectorIndex:-1,a=0;return tT()&&(a|=128),{type:e,index:i,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:a,providerIndexes:0,value:r,attrs:o,mergedAttrs:null,localNames:null,initialInputs:null,inputs:null,hostDirectiveInputs:null,outputs:null,hostDirectiveOutputs:null,directiveToIndex: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}}var Fre=new RegExp(`^(\\d+)*(${u2}|${c2})*(.*)`);var JF=()=>null;function ll(t,n){return JF(t,n)}var XF=class{},EE=class{},qy=class{resolveComponentFactory(n){throw Error(`No component factory found for ${Vn(n)}.`)}},Lo=class{static NULL=new qy},jn=class{},Ae=(()=>{class t{destroyNode=null;static __NG_ELEMENT_ID__=()=>eV()}return t})();function eV(){let t=le(),n=kn(),e=yr(n.index,t);return(Po(e)?e:t)[mt]}var tV=(()=>{class t{static \u0275prov=k({token:t,providedIn:"root",factory:()=>null})}return t})();var sy={},Qy=class{injector;parentInjector;constructor(n,e){this.injector=n,this.parentInjector=e}get(n,e,i){i=bh(i);let r=this.injector.get(n,sy,i);return r!==sy||e===sy?r:this.parentInjector.get(n,e,i)}};function Ky(t,n,e){let i=e?t.styles:null,r=e?t.classes:null,o=0;if(n!==null)for(let s=0;s0&&(e.directiveToIndex=new Map);for(let v=0;v0;){let e=t[--n];if(typeof e=="number"&&e<0)return e}return 0}function dV(t,n,e){if(e){if(n.exportAs)for(let i=0;i{let[e,i,r]=t[n],o={propName:e,templateName:n,isSignal:(i&Ph.SignalBased)!==0};return r&&(o.transform=r),o})}function pV(t){return Object.keys(t).map(n=>({propName:t[n],templateName:n}))}function mV(t,n,e){let i=n instanceof In?n:n?.injector;return i&&t.getStandaloneInjector!==null&&(i=t.getStandaloneInjector(i)||i),i?new Qy(e,i):e}function gV(t){let n=t.get(jn,null);if(n===null)throw new R(407,!1);let e=t.get(tV,null),i=t.get(Kc,null);return{rendererFactory:n,sanitizer:e,changeDetectionScheduler:i}}function _V(t,n){let e=(t.selectors[0][0]||"div").toLowerCase();return iE(n,e,e==="svg"?sL:e==="math"?aL:null)}var Xc=class extends EE{componentDef;ngModule;selector;componentType;ngContentSelectors;isBoundToModule;cachedInputs=null;cachedOutputs=null;get inputs(){return this.cachedInputs??=hV(this.componentDef.inputs),this.cachedInputs}get outputs(){return this.cachedOutputs??=pV(this.componentDef.outputs),this.cachedOutputs}constructor(n,e){super(),this.componentDef=n,this.ngModule=e,this.componentType=n.type,this.selector=G2(n.selectors),this.ngContentSelectors=n.ngContentSelectors??[],this.isBoundToModule=!!e}create(n,e,i,r){ot(22);let o=be(null);try{let s=this.componentDef,a=i?["ng-version","19.2.8"]:q2(this.componentDef.selectors[0]),l=a0(0,null,null,1,0,null,null,null,null,[a],null),c=mV(s,r||this.ngModule,n),u=gV(c),p=u.rendererFactory.createRenderer(null,s),v=i?rF(p,i,s.encapsulation,c):_V(s,p),_=l0(null,l,null,512|sE(s),null,null,u,p,c,null,HT(v,c,!0));_[Qt]=v,Wv(_);let M=null;try{let x=IE(Qt,l,_,"#host",()=>[this.componentDef],!0,0);v&&(oE(p,v,x),ml(v,_)),Oh(l,_,x),i0(l,x,_),kE(l,x),e!==void 0&&yV(x,this.ngContentSelectors,e),M=yr(x.index,_),_[qt]=M[qt],h0(l,_,null)}catch(x){throw M!==null&&Ry(M),Ry(_),x}finally{ot(23),Gv()}return new Zy(this.componentType,_)}finally{be(o)}}},Zy=class extends XF{_rootLView;instance;hostView;changeDetectorRef;componentType;location;previousInputValues=null;_tNode;constructor(n,e){super(),this._rootLView=e,this._tNode=Lv(e[ge],Qt),this.location=pl(this._tNode,e),this.instance=yr(this._tNode.index,e)[qt],this.hostView=this.changeDetectorRef=new Jc(e,void 0,!1),this.componentType=n}setInput(n,e){let i=this._tNode;if(this.previousInputValues??=new Map,this.previousInputValues.has(n)&&Object.is(this.previousInputValues.get(n),e))return;let r=this._rootLView,o=f0(i,r[ge],r,n,e);this.previousInputValues.set(n,e);let s=yr(i.index,r);y0(s,1)}get injector(){return new ks(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(n){this.hostView.onDestroy(n)}};function yV(t,n,e){let i=t.projection=[];for(let r=0;r{class t{static __NG_ELEMENT_ID__=vV}return t})();function vV(){let t=kn();return PE(t,le())}var bV=_t,AE=class extends bV{_lContainer;_hostTNode;_hostLView;constructor(n,e,i){super(),this._lContainer=n,this._hostTNode=e,this._hostLView=i}get element(){return pl(this._hostTNode,this._hostLView)}get injector(){return new ks(this._hostTNode,this._hostLView)}get parentInjector(){let n=Qv(this._hostTNode,this._hostLView);if(pT(n)){let e=ih(n,this._hostLView),i=nh(n),r=e[ge].data[i+8];return new ks(r,e)}else return new ks(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){let e=uS(this._lContainer);return e!==null&&e[n]||null}get length(){return this._lContainer.length-yn}createEmbeddedView(n,e,i){let r,o;typeof i=="number"?r=i:i!=null&&(r=i.index,o=i.injector);let s=ll(this._lContainer,n.ssrId),a=n.createEmbeddedViewImpl(e||{},o,s);return this.insertImpl(a,r,al(this._hostTNode,s)),a}createComponent(n,e,i,r,o){let s=n&&!nL(n),a;if(s)a=e;else{let M=e||{};a=M.index,i=M.injector,r=M.projectableNodes,o=M.environmentInjector||M.ngModuleRef}let l=s?n:new Xc(el(n)),c=i||this.parentInjector;if(!o&&l.ngModule==null){let x=(s?c:this.parentInjector).get(In,null);x&&(o=x)}let u=el(l.componentType??{}),p=ll(this._lContainer,u?.id??null),v=p?.firstChild??null,_=l.create(c,r,v,o);return this.insertImpl(_.hostView,a,al(this._hostTNode,p)),_}insert(n,e){return this.insertImpl(n,e,!0)}insertImpl(n,e,i){let r=n._lView;if(uL(r)){let a=this.indexOf(n);if(a!==-1)this.detach(a);else{let l=r[vn],c=new AE(l,l[Bn],l[vn]);c.detach(c.indexOf(n))}}let o=this._adjustIndex(e),s=this._lContainer;return uu(s,r,o,i),n.attachToViewContainerRef(),VS(ay(s),o,n),n}move(n,e){return this.insert(n,e)}indexOf(n){let e=uS(this._lContainer);return e!==null?e.indexOf(n):-1}remove(n){let e=this._adjustIndex(n,-1),i=Zc(this._lContainer,e);i&&(Kf(ay(this._lContainer),e),Nh(i[ge],i))}detach(n){let e=this._adjustIndex(n,-1),i=Zc(this._lContainer,e);return i&&Kf(ay(this._lContainer),e)!=null?new Jc(i):null}_adjustIndex(n,e=0){return n??this.length+e}};function uS(t){return t[eh]}function ay(t){return t[eh]||(t[eh]=[])}function PE(t,n){let e,i=n[t.index];return eo(i)?e=i:(e=DE(i,n,null,t),n[t.index]=e,c0(n,e)),wV(e,n,t,i),new AE(e,t,n)}function CV(t,n){let e=t[mt],i=e.createComment(""),r=wr(n,t),o=e.parentNode(r);return lh(e,o,i,e.nextSibling(r),!1),i}var wV=SV,DV=()=>!1;function MV(t,n,e){return DV(t,n,e)}function SV(t,n,e,i){if(t[Ns])return;let r;e.type&8?r=_r(i):r=CV(n,e),t[Ns]=r}var Jy=class t{queryList;matches=null;constructor(n){this.queryList=n}clone(){return new t(this.queryList)}setDirty(){this.queryList.setDirty()}},Xy=class t{queries;constructor(n=[]){this.queries=n}createEmbeddedView(n){let e=n.queries;if(e!==null){let i=n.contentQueries!==null?n.contentQueries[0]:e.length,r=[];for(let o=0;o0)i.push(s[a/2]);else{let c=o[a+1],u=n[-l];for(let p=yn;pn.trim())}function NE(t,n,e){t.queries===null&&(t.queries=new ev),t.queries.track(new tv(n,e))}function RV(t,n){let e=t.contentQueries||(t.contentQueries=[]),i=e.length?e[e.length-1]:-1;n!==i&&e.push(t.queries.length-1,n)}function b0(t,n){return t.queries.getByIndex(n)}function NV(t,n){let e=t[ge],i=b0(e,n);return i.crossesNgTemplate?nv(e,t,n,[]):OE(e,t,i,n)}var cl=class{},C0=class{};var iv=class extends cl{ngModuleType;_parent;_bootstrapComponents=[];_r3Injector;instance;destroyCbs=[];componentFactoryResolver=new uh(this);constructor(n,e,i,r=!0){super(),this.ngModuleType=n,this._parent=e;let o=BS(n);this._bootstrapComponents=eE(o.bootstrap),this._r3Injector=DT(n,e,[{provide:cl,useValue:this},{provide:Lo,useValue:this.componentFactoryResolver},...i],Vn(n),new Set(["environment"])),r&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}},rv=class extends C0{moduleType;constructor(n){super(),this.moduleType=n}create(n){return new iv(this.moduleType,n,[])}};var fh=class extends cl{injector;componentFactoryResolver=new uh(this);instance=null;constructor(n){super();let e=new Gc([...n.providers,{provide:cl,useValue:this},{provide:Lo,useValue:this.componentFactoryResolver}],n.parent||Ov(),n.debugName,new Set(["environment"]));this.injector=e,n.runEnvironmentInitializers&&e.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(n){this.injector.onDestroy(n)}};function jh(t,n,e=null){return new fh({providers:t,parent:n,debugName:e,runEnvironmentInitializers:!0}).injector}var LV=(()=>{class t{_injector;cachedInjectors=new Map;constructor(e){this._injector=e}getOrCreateStandaloneInjector(e){if(!e.standalone)return null;if(!this.cachedInjectors.has(e)){let i=US(!1,e.type),r=i.length>0?jh([i],this._injector,`Standalone[${e.type.name}]`):null;this.cachedInjectors.set(e,r)}return this.cachedInjectors.get(e)}ngOnDestroy(){try{for(let e of this.cachedInjectors.values())e!==null&&e.destroy()}finally{this.cachedInjectors.clear()}}static \u0275prov=k({token:t,providedIn:"environment",factory:()=>new t(j(In))})}return t})();function L(t){return tu(()=>{let n=LE(t),e=G(E({},n),{decls:t.decls,vars:t.vars,template:t.template,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,onPush:t.changeDetection===AT.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&t.dependencies||null,getStandaloneInjector:n.standalone?r=>r.get(LV).getOrCreateStandaloneInjector(e):null,getExternalStyles:null,signals:t.signals??!1,data:t.data||{},encapsulation:t.encapsulation||Ci.Emulated,styles:t.styles||Fn,_:null,schemas:t.schemas||null,tView:null,id:""});n.standalone&&gl("NgStandalone"),FE(e);let i=t.dependencies;return e.directiveDefs=dS(i,!1),e.pipeDefs=dS(i,!0),e.id=BV(e),e})}function FV(t){return el(t)||zN(t)}function VV(t){return t!==null}function we(t){return tu(()=>({type:t.type,bootstrap:t.bootstrap||Fn,declarations:t.declarations||Fn,imports:t.imports||Fn,exports:t.exports||Fn,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null}))}function jV(t,n){if(t==null)return Os;let e={};for(let i in t)if(t.hasOwnProperty(i)){let r=t[i],o,s,a,l;Array.isArray(r)?(a=r[0],o=r[1],s=r[2]??o,l=r[3]||null):(o=r,s=r,a=Ph.None,l=null),e[o]=[i,a,l],n[o]=s}return e}function HV(t){if(t==null)return Os;let n={};for(let e in t)t.hasOwnProperty(e)&&(n[t[e]]=e);return n}function U(t){return tu(()=>{let n=LE(t);return FE(n),n})}function Fo(t){return{type:t.type,name:t.name,factory:null,pure:t.pure!==!1,standalone:t.standalone??!0,onDestroy:t.type.prototype.ngOnDestroy||null}}function LE(t){let n={};return{type:t.type,providersResolver:null,factory:null,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:n,inputConfig:t.inputs||Os,exportAs:t.exportAs||null,standalone:t.standalone??!0,signals:t.signals===!0,selectors:t.selectors||Fn,viewQuery:t.viewQuery||null,features:t.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:jV(t.inputs,n),outputs:HV(t.outputs),debugInfo:null}}function FE(t){t.features?.forEach(n=>n(t))}function dS(t,n){if(!t)return null;let e=n?YN:FV;return()=>(typeof t=="function"?t():t).map(i=>e(i)).filter(VV)}function BV(t){let n=0,e=typeof t.consts=="function"?"":t.consts,i=[t.selectors,t.ngContentSelectors,t.hostVars,t.hostAttrs,e,t.vars,t.decls,t.encapsulation,t.standalone,t.signals,t.exportAs,JSON.stringify(t.inputs),JSON.stringify(t.outputs),Object.getOwnPropertyNames(t.type.prototype),!!t.contentQueries,!!t.viewQuery];for(let o of i.join("|"))n=Math.imul(31,n)+o.charCodeAt(0)<<0;return n+=2147483648,"c"+n}function UV(t){return Object.getPrototypeOf(t.prototype).constructor}function Tt(t){let n=UV(t.type),e=!0,i=[t];for(;n;){let r;if(Qi(t))r=n.\u0275cmp||n.\u0275dir;else{if(n.\u0275cmp)throw new R(903,!1);r=n.\u0275dir}if(r){if(e){i.push(r);let s=t;s.inputs=ly(t.inputs),s.declaredInputs=ly(t.declaredInputs),s.outputs=ly(t.outputs);let a=r.hostBindings;a&&GV(t,a);let l=r.viewQuery,c=r.contentQueries;if(l&&YV(t,l),c&&WV(t,c),$V(t,r),wN(t.outputs,r.outputs),Qi(r)&&r.data.animation){let u=t.data;u.animation=(u.animation||[]).concat(r.data.animation)}}let o=r.features;if(o)for(let s=0;s=0;i--){let r=t[i];r.hostVars=n+=r.hostVars,r.hostAttrs=ol(r.hostAttrs,e=ol(e,r.hostAttrs))}}function ly(t){return t===Os?{}:t===Fn?[]:t}function YV(t,n){let e=t.viewQuery;e?t.viewQuery=(i,r)=>{n(i,r),e(i,r)}:t.viewQuery=n}function WV(t,n){let e=t.contentQueries;e?t.contentQueries=(i,r,o)=>{n(i,r,o),e(i,r,o)}:t.contentQueries=n}function GV(t,n){let e=t.hostBindings;e?t.hostBindings=(i,r)=>{n(i,r),e(i,r)}:t.hostBindings=n}function VE(t){return w0(t)?Array.isArray(t)||!(t instanceof Map)&&Symbol.iterator in t:!1}function qV(t,n){if(Array.isArray(t))for(let e=0;e{class t{log(e){console.log(e)}warn(e){console.warn(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}return t})();var jE=new $("");var ej=(()=>{class t{static \u0275prov=k({token:t,providedIn:"root",factory:()=>new ov})}return t})(),ov=class{queuedEffectCount=0;queues=new Map;schedule(n){this.enqueue(n)}remove(n){let e=n.zone,i=this.queues.get(e);i.has(n)&&(i.delete(n),this.queuedEffectCount--)}enqueue(n){let e=n.zone;this.queues.has(e)||this.queues.set(e,new Set);let i=this.queues.get(e);i.has(n)||(this.queuedEffectCount++,i.add(n))}flush(){for(;this.queuedEffectCount>0;)for(let[n,e]of this.queues)n===null?this.flushQueue(e):n.run(()=>this.flushQueue(e))}flushQueue(n){for(let e of n)n.delete(e),this.queuedEffectCount--,e.run()}};function Vo(t){return!!t&&typeof t.then=="function"}function S0(t){return!!t&&typeof t.subscribe=="function"}var tj=new $("");var HE=(()=>{class t{resolve;reject;initialized=!1;done=!1;donePromise=new Promise((e,i)=>{this.resolve=e,this.reject=i});appInits=S(tj,{optional:!0})??[];injector=S(Nt);constructor(){}runInitializers(){if(this.initialized)return;let e=[];for(let r of this.appInits){let o=ei(this.injector,r);if(Vo(o))e.push(o);else if(S0(o)){let s=new Promise((a,l)=>{o.subscribe({complete:a,error:l})});e.push(s)}}let i=()=>{this.done=!0,this.resolve()};Promise.all(e).then(()=>{i()}).catch(r=>{this.reject(r)}),e.length===0&&i(),this.initialized=!0}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),T0=new $("");function nj(){I_(()=>{throw new R(600,!1)})}function ij(t){return t.isBoundToModule}var rj=10;var Hn=(()=>{class t{_runningTick=!1;_destroyed=!1;_destroyListeners=[];_views=[];internalErrorHandler=S(JL);afterRenderManager=S(f2);zonelessEnabled=S(Zv);rootEffectScheduler=S(ej);dirtyFlags=0;tracingSnapshot=null;externalTestViews=new Set;afterTick=new ie;get allViews(){return[...this.externalTestViews.keys(),...this._views]}get destroyed(){return this._destroyed}componentTypes=[];components=[];isStable=S(No).hasPendingTasks.pipe(q(e=>!e));constructor(){S(xh,{optional:!0})}whenStable(){let e;return new Promise(i=>{e=this.isStable.subscribe({next:r=>{r&&i()}})}).finally(()=>{e.unsubscribe()})}_injector=S(In);_rendererFactory=null;get injector(){return this._injector}bootstrap(e,i){return this.bootstrapImpl(e,i)}bootstrapImpl(e,i,r=Nt.NULL){ot(10);let o=e instanceof EE;if(!this._injector.get(HE).done){let _="";throw new R(405,_)}let a;o?a=e:a=this._injector.get(Lo).resolveComponentFactory(e),this.componentTypes.push(a.componentType);let l=ij(a)?void 0:this._injector.get(cl),c=i||a.selector,u=a.create(r,[],c,l),p=u.location.nativeElement,v=u.injector.get(jE,null);return v?.registerApplication(p),u.onDestroy(()=>{this.detachView(u.hostView),Yf(this.components,u),v?.unregisterApplication(p)}),this._loadComponent(u),ot(11,u),u}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){ot(12),this.tracingSnapshot!==null?this.tracingSnapshot.run(jT.CHANGE_DETECTION,this.tickImpl):this.tickImpl()}tickImpl=()=>{if(this._runningTick)throw new R(101,!1);let e=be(null);try{this._runningTick=!0,this.synchronize()}catch(i){this.internalErrorHandler(i)}finally{this._runningTick=!1,this.tracingSnapshot?.dispose(),this.tracingSnapshot=null,be(e),this.afterTick.next(),ot(13)}};synchronize(){this._rendererFactory===null&&!this._injector.destroyed&&(this._rendererFactory=this._injector.get(jn,null,{optional:!0}));let e=0;for(;this.dirtyFlags!==0&&e++Mh(e))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(e){let i=e;this._views.push(i),i.attachToAppRef(this)}detachView(e){let i=e;Yf(this._views,i),i.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(T0,[]).forEach(r=>r(e))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(e=>e()),this._views.slice().forEach(e=>e.destroy())}finally{this._destroyed=!0,this._views=[],this._destroyListeners=[]}}onDestroy(e){return this._destroyListeners.push(e),()=>Yf(this._destroyListeners,e)}destroy(){if(this._destroyed)throw new R(406,!1);let e=this._injector;e.destroy&&!e.destroyed&&e.destroy()}get viewCount(){return this._views.length}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Yf(t,n){let e=t.indexOf(n);e>-1&&t.splice(e,1)}function oj(t,n,e,i){if(!e&&!Mh(t))return;vE(t,n,e&&!i?0:1)}function ee(t,n,e,i){let r=le(),o=Bs();if(Xn(r,o,n)){let s=gt(),a=ru();fF(a,r,t,n,e,i)}return ee}function BE(t,n,e,i){return Xn(t,Bs(),e)?n+As(e)+i:Un}function sj(t,n,e,i,r,o){let s=CL(),a=D0(t,s,e,r);return zv(2),a?n+As(e)+i+As(r)+o:Un}function Hf(t,n){return t<<17|n<<2}function js(t){return t>>17&32767}function aj(t){return(t&2)==2}function lj(t,n){return t&131071|n<<17}function sv(t){return t|2}function ul(t){return(t&131068)>>2}function cy(t,n){return t&-131069|n<<2}function cj(t){return(t&1)===1}function av(t){return t|1}function uj(t,n,e,i,r,o){let s=o?n.classBindings:n.styleBindings,a=js(s),l=ul(s);t[i]=e;let c=!1,u;if(Array.isArray(e)){let p=e;u=p[1],(u===null||nu(p,u)>0)&&(c=!0)}else u=e;if(r)if(l!==0){let v=js(t[a+1]);t[i+1]=Hf(v,a),v!==0&&(t[v+1]=cy(t[v+1],i)),t[a+1]=lj(t[a+1],i)}else t[i+1]=Hf(a,0),a!==0&&(t[a+1]=cy(t[a+1],i)),a=i;else t[i+1]=Hf(l,0),a===0?a=i:t[l+1]=cy(t[l+1],i),l=i;c&&(t[i+1]=sv(t[i+1])),fS(t,u,i,!0),fS(t,u,i,!1),dj(n,u,t,i,o),s=Hf(a,l),o?n.classBindings=s:n.styleBindings=s}function dj(t,n,e,i,r){let o=r?t.residualClasses:t.residualStyles;o!=null&&typeof n=="string"&&nu(o,n)>=0&&(e[i+1]=av(e[i+1]))}function fS(t,n,e,i){let r=t[e+1],o=n===null,s=i?js(r):ul(r),a=!1;for(;s!==0&&(a===!1||o);){let l=t[s],c=t[s+1];fj(l,n)&&(a=!0,t[s+1]=i?av(c):sv(c)),s=i?js(c):ul(c)}a&&(t[e+1]=i?sv(r):av(r))}function fj(t,n){return t===null||n==null||(Array.isArray(t)?t[1]:t)===n?!0:Array.isArray(t)&&typeof n=="string"?nu(t,n)>=0:!1}var Gi={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function hj(t){return t.substring(Gi.key,Gi.keyEnd)}function pj(t){return mj(t),UE(t,$E(t,0,Gi.textEnd))}function UE(t,n){let e=Gi.textEnd;return e===n?-1:(n=Gi.keyEnd=gj(t,Gi.key=n,e),$E(t,n,e))}function mj(t){Gi.key=0,Gi.keyEnd=0,Gi.value=0,Gi.valueEnd=0,Gi.textEnd=t.length}function $E(t,n,e){for(;n32;)n++;return n}function g(t,n,e){let i=le(),r=Bs();if(Xn(i,r,n)){let o=gt(),s=ru();Rh(o,s,i,t,n,i[mt],e,!1)}return g}function lv(t,n,e,i,r){f0(n,t,e,r?"class":"style",i)}function dn(t,n,e){return zE(t,n,e,!1),dn}function B(t,n){return zE(t,n,null,!0),B}function sn(t){yj(Mj,_j,t,!0)}function _j(t,n){for(let e=pj(n);e>=0;e=UE(n,e))kv(t,hj(n),!0)}function zE(t,n,e,i){let r=le(),o=gt(),s=zv(2);if(o.firstUpdatePass&&WE(o,t,s,i),n!==Un&&Xn(r,s,n)){let a=o.data[to()];GE(o,a,r,r[mt],t,r[s+1]=Tj(n,e),i,s)}}function yj(t,n,e,i){let r=gt(),o=zv(2);r.firstUpdatePass&&WE(r,null,o,i);let s=le();if(e!==Un&&Xn(s,o,e)){let a=r.data[to()];if(qE(a,i)&&!YE(r,o)){let l=i?a.classesWithoutHost:a.stylesWithoutHost;l!==null&&(e=my(l,e||"")),lv(r,a,s,e,i)}else Sj(r,a,s,s[mt],s[o+1],s[o+1]=Dj(t,n,e),i,o)}}function YE(t,n){return n>=t.expandoStartIndex}function WE(t,n,e,i){let r=t.data;if(r[e+1]===null){let o=r[to()],s=YE(t,e);qE(o,i)&&n===null&&!s&&(n=!1),n=vj(r,o,n,i),uj(r,o,n,e,s,i)}}function vj(t,n,e,i){let r=rT(t),o=i?n.residualClasses:n.residualStyles;if(r===null)(i?n.classBindings:n.styleBindings)===0&&(e=uy(null,t,n,e,i),e=eu(e,n.attrs,i),o=null);else{let s=n.directiveStylingLast;if(s===-1||t[s]!==r)if(e=uy(r,t,n,e,i),o===null){let l=bj(t,n,i);l!==void 0&&Array.isArray(l)&&(l=uy(null,t,n,l[1],i),l=eu(l,n.attrs,i),Cj(t,n,i,l))}else o=wj(t,n,i)}return o!==void 0&&(i?n.residualClasses=o:n.residualStyles=o),e}function bj(t,n,e){let i=e?n.classBindings:n.styleBindings;if(ul(i)!==0)return t[js(i)]}function Cj(t,n,e,i){let r=e?n.classBindings:n.styleBindings;t[js(r)]=i}function wj(t,n,e){let i,r=n.directiveEnd;for(let o=1+n.directiveStylingLast;o0;){let l=t[r],c=Array.isArray(l),u=c?l[1]:l,p=u===null,v=e[r+1];v===Un&&(v=p?Fn:void 0);let _=p?X_(v,i):u===i?v:void 0;if(c&&!ph(_)&&(_=X_(l,i)),ph(_)&&(a=_,s))return a;let M=t[r+1];r=s?js(M):ul(M)}if(n!==null){let l=o?n.residualClasses:n.residualStyles;l!=null&&(a=X_(l,i))}return a}function ph(t){return t!==void 0}function Tj(t,n){return t==null||t===""||(typeof n=="string"?t=t+n:typeof t=="object"&&(t=Vn(Ki(t)))),t}function qE(t,n){return(t.flags&(n?8:16))!==0}var cv=class{destroy(n){}updateValue(n,e){}swap(n,e){let i=Math.min(n,e),r=Math.max(n,e),o=this.detach(r);if(r-i>1){let s=this.detach(i);this.attach(i,o),this.attach(r,s)}else this.attach(i,o)}move(n,e){this.attach(e,this.detach(n))}};function dy(t,n,e,i,r){return t===e&&Object.is(n,i)?1:Object.is(r(t,n),r(e,i))?-1:0}function Ej(t,n,e){let i,r,o=0,s=t.length-1,a=void 0;if(Array.isArray(n)){let l=n.length-1;for(;o<=s&&o<=l;){let c=t.at(o),u=n[o],p=dy(o,c,o,u,e);if(p!==0){p<0&&t.updateValue(o,u),o++;continue}let v=t.at(s),_=n[l],M=dy(s,v,l,_,e);if(M!==0){M<0&&t.updateValue(s,_),s--,l--;continue}let x=e(o,c),P=e(s,v),F=e(o,u);if(Object.is(F,P)){let K=e(l,_);Object.is(K,x)?(t.swap(o,s),t.updateValue(s,_),l--,s--):t.move(s,o),t.updateValue(o,u),o++;continue}if(i??=new mh,r??=mS(t,o,s,e),uv(t,i,o,F))t.updateValue(o,u),o++,s++;else if(r.has(F))i.set(x,t.detach(o)),s--;else{let K=t.create(o,n[o]);t.attach(o,K),o++,s++}}for(;o<=l;)pS(t,i,e,o,n[o]),o++}else if(n!=null){let l=n[Symbol.iterator](),c=l.next();for(;!c.done&&o<=s;){let u=t.at(o),p=c.value,v=dy(o,u,o,p,e);if(v!==0)v<0&&t.updateValue(o,p),o++,c=l.next();else{i??=new mh,r??=mS(t,o,s,e);let _=e(o,p);if(uv(t,i,o,_))t.updateValue(o,p),o++,s++,c=l.next();else if(!r.has(_))t.attach(o,t.create(o,p)),o++,s++,c=l.next();else{let M=e(o,u);i.set(M,t.detach(o)),s--}}}for(;!c.done;)pS(t,i,e,t.length,c.value),c=l.next()}for(;o<=s;)t.destroy(t.detach(s--));i?.forEach(l=>{t.destroy(l)})}function uv(t,n,e,i){return n!==void 0&&n.has(i)?(t.attach(e,n.get(i)),n.delete(i),!0):!1}function pS(t,n,e,i,r){if(uv(t,n,i,e(i,r)))t.updateValue(i,r);else{let o=t.create(i,r);t.attach(i,o)}}function mS(t,n,e,i){let r=new Set;for(let o=n;o<=e;o++)r.add(i(o,t.at(o)));return r}var mh=class{kvMap=new Map;_vMap=void 0;has(n){return this.kvMap.has(n)}delete(n){if(!this.has(n))return!1;let e=this.kvMap.get(n);return this._vMap!==void 0&&this._vMap.has(e)?(this.kvMap.set(n,this._vMap.get(e)),this._vMap.delete(e)):this.kvMap.delete(n),!0}get(n){return this.kvMap.get(n)}set(n,e){if(this.kvMap.has(n)){let i=this.kvMap.get(n);this._vMap===void 0&&(this._vMap=new Map);let r=this._vMap;for(;r.has(i);)i=r.get(i);r.set(i,e)}else this.kvMap.set(n,e)}forEach(n){for(let[e,i]of this.kvMap)if(n(i,e),this._vMap!==void 0){let r=this._vMap;for(;r.has(i);)i=r.get(i),n(i,e)}}};function je(t,n){gl("NgControlFlow");let e=le(),i=Bs(),r=e[i]!==Un?e[i]:-1,o=r!==-1?gh(e,Qt+r):void 0,s=0;if(Xn(e,i,t)){let a=be(null);try{if(o!==void 0&&SE(o,s),t!==-1){let l=Qt+t,c=gh(e,l),u=pv(e[ge],l),p=ll(c,u.tView.ssrId),v=cu(e,u,n,{dehydratedView:p});uu(c,v,s,al(u,p))}}finally{be(a)}}else if(o!==void 0){let a=ME(o,s);a!==void 0&&(a[qt]=n)}}var dv=class{lContainer;$implicit;$index;constructor(n,e,i){this.lContainer=n,this.$implicit=e,this.$index=i}get $count(){return this.lContainer.length-yn}};function _l(t){return t}function Bh(t,n){return n}var fv=class{hasEmptyBlock;trackByFn;liveCollection;constructor(n,e,i){this.hasEmptyBlock=n,this.trackByFn=e,this.liveCollection=i}};function yt(t,n,e,i,r,o,s,a,l,c,u,p,v){gl("NgControlFlow");let _=le(),M=gt(),x=l!==void 0,P=le(),F=a?s.bind(P[Jn][qt]):s,K=new fv(x,F);P[Qt+t]=K,hh(_,M,t+1,n,e,i,r,Oo(M.consts,o)),x&&hh(_,M,t+2,l,c,u,p,Oo(M.consts,v))}var hv=class extends cv{lContainer;hostLView;templateTNode;operationsCounter=void 0;needsIndexUpdate=!1;constructor(n,e,i){super(),this.lContainer=n,this.hostLView=e,this.templateTNode=i}get length(){return this.lContainer.length-yn}at(n){return this.getLView(n)[qt].$implicit}attach(n,e){let i=e[nl];this.needsIndexUpdate||=n!==this.length,uu(this.lContainer,e,n,al(this.templateTNode,i))}detach(n){return this.needsIndexUpdate||=n!==this.length-1,xj(this.lContainer,n)}create(n,e){let i=ll(this.lContainer,this.templateTNode.tView.ssrId),r=cu(this.hostLView,this.templateTNode,new dv(this.lContainer,e,n),{dehydratedView:i});return this.operationsCounter?.recordCreate(),r}destroy(n){Nh(n[ge],n),this.operationsCounter?.recordDestroy()}updateValue(n,e){this.getLView(n)[qt].$implicit=e}reset(){this.needsIndexUpdate=!1,this.operationsCounter?.reset()}updateIndexes(){if(this.needsIndexUpdate)for(let n=0;n(Eh(!0),iE(i,r,xL()));function Aj(t,n,e,i,r){let o=n.consts,s=Oo(o,i),a=du(n,t,8,"ng-container",s);s!==null&&Ky(a,s,!0);let l=Oo(o,r);return Bv()&&v0(n,e,a,l,d0),a.mergedAttrs=ol(a.mergedAttrs,a.attrs),n.queries!==null&&n.queries.elementStart(n,a),a}function Lt(t,n,e){let i=le(),r=gt(),o=t+Qt,s=r.firstCreatePass?Aj(o,r,i,n,e):r.data[o];Hs(s,!0);let a=Pj(r,i,s,t);return i[o]=a,Th()&&Lh(r,i,a,s),ml(a,i),Dh(s)&&(Oh(r,i,s),i0(r,s,i)),e!=null&&u0(i,s),Lt}function Ft(){let t=kn(),n=gt();return Uv()?$v():(t=t.parent,Hs(t,!1)),n.firstCreatePass&&(qv(n,t),Nv(t)&&n.queries.elementEnd(t)),Ft}function wi(t,n,e){return Lt(t,n,e),Ft(),wi}var Pj=(t,n,e,i)=>(Eh(!0),Z2(n[mt],""));function N(){return le()}function E0(t,n,e){let i=le(),r=Bs();if(Xn(i,r,n)){let o=gt(),s=ru(),a=rT(o.data),l=mF(a,s,i);Rh(o,s,i,t,n,l,e,!0)}return E0}var xs=void 0;function Oj(t){let n=Math.floor(Math.abs(t)),e=t.toString().replace(/^[^.]*\.?/,"").length;return n===1&&e===0?1:5}var Rj=["en",[["a","p"],["AM","PM"],xs],[["AM","PM"],xs,xs],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],xs,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],xs,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",xs,"{1} 'at' {0}",xs],[".",",",";","%","+","-","E","\xD7","\u2030","\u221E","NaN",":"],["#,##0.###","#,##0%","\xA4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",Oj],fy={};function ri(t){let n=Nj(t),e=gS(n);if(e)return e;let i=n.split("-")[0];if(e=gS(i),e)return e;if(i==="en")return Rj;throw new R(701,!1)}function gS(t){return t in fy||(fy[t]=mr.ng&&mr.ng.common&&mr.ng.common.locales&&mr.ng.common.locales[t]),fy[t]}var It=function(t){return t[t.LocaleId=0]="LocaleId",t[t.DayPeriodsFormat=1]="DayPeriodsFormat",t[t.DayPeriodsStandalone=2]="DayPeriodsStandalone",t[t.DaysFormat=3]="DaysFormat",t[t.DaysStandalone=4]="DaysStandalone",t[t.MonthsFormat=5]="MonthsFormat",t[t.MonthsStandalone=6]="MonthsStandalone",t[t.Eras=7]="Eras",t[t.FirstDayOfWeek=8]="FirstDayOfWeek",t[t.WeekendRange=9]="WeekendRange",t[t.DateFormat=10]="DateFormat",t[t.TimeFormat=11]="TimeFormat",t[t.DateTimeFormat=12]="DateTimeFormat",t[t.NumberSymbols=13]="NumberSymbols",t[t.NumberFormats=14]="NumberFormats",t[t.CurrencyCode=15]="CurrencyCode",t[t.CurrencySymbol=16]="CurrencySymbol",t[t.CurrencyName=17]="CurrencyName",t[t.Currencies=18]="Currencies",t[t.Directionality=19]="Directionality",t[t.PluralCase=20]="PluralCase",t[t.ExtraData=21]="ExtraData",t}(It||{});function Nj(t){return t.toLowerCase().replace(/_/g,"-")}var _h="en-US";var Lj=_h;function Fj(t){typeof t=="string"&&(Lj=t.toLowerCase().replace(/_/g,"-"))}function _S(t,n,e){return function i(r){if(r===Function)return e;let o=fl(t)?yr(t.index,n):n;y0(o,5);let s=n[qt],a=yS(n,s,e,r),l=i.__ngNextListenerFn__;for(;l;)a=yS(n,s,l,r)&&a,l=l.__ngNextListenerFn__;return a}}function yS(t,n,e,i){let r=be(null);try{return ot(6,n,e),e(i)!==!1}catch(o){return Vj(t,o),!1}finally{ot(7,n,e),be(r)}}function Vj(t,n){let e=t[il],i=e?e.get(vr,null):null;i&&i.handleError(n)}function vS(t,n,e,i,r,o){let s=n[e],a=n[ge],c=a.data[e].outputs[i],u=s[c],p=a.firstCreatePass?Hv(a):null,v=jv(n),_=u.subscribe(o),M=v.length;v.push(o,_),p&&p.push(r,t.index,M,-(M+1))}var jj=(t,n,e)=>{};function D(t,n,e,i){let r=le(),o=gt(),s=kn();return QE(o,r,r[mt],s,t,n,i),D}function Hj(t,n,e,i){let r=t.cleanup;if(r!=null)for(let o=0;ol?a[l]:null}typeof s=="string"&&(o+=2)}return null}function QE(t,n,e,i,r,o,s){let a=Dh(i),c=t.firstCreatePass?Hv(t):null,u=jv(n),p=!0;if(i.type&3||s){let v=wr(i,n),_=s?s(v):v,M=u.length,x=s?F=>s(_r(F[i.index])):i.index,P=null;if(!s&&a&&(P=Hj(t,n,r,i.index)),P!==null){let F=P.__ngLastListenerFn__||P;F.__ngNextListenerFn__=o,P.__ngLastListenerFn__=o,p=!1}else{o=_S(i,n,o),jj(_,r,o);let F=e.listen(_,r,o);u.push(o,F),c&&c.push(r,x,M,M+1)}}else o=_S(i,n,o);if(p){let v=i.outputs?.[r],_=i.hostDirectiveOutputs?.[r];if(_&&_.length)for(let M=0;M<_.length;M+=2){let x=_[M],P=_[M+1];vS(i,n,x,P,r,o)}if(v&&v.length)for(let M of v)vS(i,n,M,r,r,o)}}function m(t=1){return EL(t)}function Bj(t,n){let e=null,i=U2(t);for(let r=0;r=t.data.length&&(t.data[e]=null,t.blueprint[e]=null),n[e]=i}function Et(t){let n=bL();return Fv(n,Qt+t)}function y(t,n=""){let e=le(),i=gt(),r=t+Qt,o=i.firstCreatePass?du(i,r,1,n,null):i.data[r],s=zj(i,e,o,n,t);e[r]=s,Th()&&Lh(i,e,s,o),Hs(o,!1)}var zj=(t,n,e,i,r)=>(Eh(!0),Q2(n[mt],i));function H(t){return oe("",t,""),H}function oe(t,n,e){let i=le(),r=BE(i,t,n,e);return r!==Un&&KE(i,to(),r),oe}function Dr(t,n,e,i,r){let o=le(),s=sj(o,t,n,e,i,r);return s!==Un&&KE(o,to(),s),Dr}function KE(t,n,e){let i=ZS(n,t);K2(t[mt],i,e)}function Oe(t,n,e){IT(n)&&(n=n());let i=le(),r=Bs();if(Xn(i,r,n)){let o=gt(),s=ru();Rh(o,s,i,t,n,i[mt],e,!1)}return Oe}function Le(t,n){let e=IT(t);return e&&t.set(n),e}function Re(t,n){let e=le(),i=gt(),r=kn();return QE(i,e,e[mt],r,t,n),Re}function Yj(t,n,e){let i=gt();if(i.firstCreatePass){let r=Qi(t);mv(e,i.data,i.blueprint,r,!0),mv(n,i.data,i.blueprint,r,!1)}}function mv(t,n,e,i,r){if(t=xn(t),Array.isArray(t))for(let o=0;o>20;if(tl(t)||!t.multi){let _=new Vs(c,r,b),M=py(l,n,r?u:u+v,p);M===-1?(Ey(oh(a,s),o,l),hy(o,t,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,r&&(a.providerIndexes+=1048576),e.push(_),s.push(_)):(e[M]=_,s[M]=_)}else{let _=py(l,n,u+v,p),M=py(l,n,u,u+v),x=_>=0&&e[_],P=M>=0&&e[M];if(r&&!P||!r&&!x){Ey(oh(a,s),o,l);let F=qj(r?Gj:Wj,e.length,r,i,c);!r&&P&&(e[M].providerFactory=F),hy(o,t,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,r&&(a.providerIndexes+=1048576),e.push(F),s.push(F)}else{let F=ZE(e[r?M:_],c,!r&&i);hy(o,t,_>-1?_:M,F)}!r&&i&&P&&e[M].componentProviders++}}}function hy(t,n,e,i){let r=tl(n),o=QN(n);if(r||o){let l=(o?xn(n.useClass):n).prototype.ngOnDestroy;if(l){let c=t.destroyHooks||(t.destroyHooks=[]);if(!r&&n.multi){let u=c.indexOf(e);u===-1?c.push(e,[i,l]):c[u+1].push(i,l)}else c.push(e,l)}}}function ZE(t,n,e){return e&&t.componentProviders++,t.multi.push(n)-1}function py(t,n,e,i){for(let r=e;r{e.providersResolver=(i,r)=>Yj(i,r?r(t):t,n)}}function Zi(t,n,e){let i=hl()+t,r=le();return r[i]===Un?Hh(r,i,e?n.call(e):n()):QV(r,i)}function Mr(t,n,e,i){return XE(le(),hl(),t,n,e,i)}function ro(t,n,e,i,r){return e1(le(),hl(),t,n,e,i,r)}function JE(t,n,e,i,r,o){return Qj(le(),hl(),t,n,e,i,r,o)}function x0(t,n){let e=t[n];return e===Un?void 0:e}function XE(t,n,e,i,r,o){let s=n+e;return Xn(t,s,r)?Hh(t,s+1,o?i.call(o,r):i(r)):x0(t,s+1)}function e1(t,n,e,i,r,o,s){let a=n+e;return D0(t,a,r,o)?Hh(t,a+2,s?i.call(s,r,o):i(r,o)):x0(t,a+2)}function Qj(t,n,e,i,r,o,s,a){let l=n+e;return KV(t,l,r,o,s)?Hh(t,l+3,a?i.call(a,r,o,s):i(r,o,s)):x0(t,l+3)}function se(t,n){let e=gt(),i,r=t+Qt;e.firstCreatePass?(i=Kj(n,e.pipeRegistry),e.data[r]=i,i.onDestroy&&(e.destroyHooks??=[]).push(r,i.onDestroy)):i=e.data[r];let o=i.factory||(i.factory=Ps(i.type,!0)),s,a=Ln(b);try{let l=rh(!1),c=o();return rh(l),$j(e,le(),r,c),c}finally{Ln(a)}}function Kj(t,n){if(n)for(let e=n.length-1;e>=0;e--){let i=n[e];if(t===i.name)return i}}function ye(t,n,e){let i=t+Qt,r=le(),o=Fv(r,i);return t1(r,i)?XE(r,hl(),n,o.transform,e,o):o.transform(e)}function yl(t,n,e,i){let r=t+Qt,o=le(),s=Fv(o,r);return t1(o,r)?e1(o,hl(),n,s.transform,e,i,s):s.transform(e,i)}function t1(t,n){return t[ge].data[n].pure}function Pn(t,n){return Vh(t,n)}var _v=class{ngModuleFactory;componentFactories;constructor(n,e){this.ngModuleFactory=n,this.componentFactories=e}},n1=(()=>{class t{compileModuleSync(e){return new rv(e)}compileModuleAsync(e){return Promise.resolve(this.compileModuleSync(e))}compileModuleAndAllComponentsSync(e){let i=this.compileModuleSync(e),r=BS(e),o=eE(r.declarations).reduce((s,a)=>{let l=el(a);return l&&s.push(new Xc(l)),s},[]);return new _v(i,o)}compileModuleAndAllComponentsAsync(e){return Promise.resolve(this.compileModuleAndAllComponentsSync(e))}clearCache(){}clearCacheFor(e){}getModuleId(e){}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Zj=(()=>{class t{zone=S(xe);changeDetectionScheduler=S(Kc);applicationRef=S(Hn);_onMicrotaskEmptySubscription;initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Jj({ngZoneFactory:t,ignoreChangesOutsideZone:n,scheduleInRootZone:e}){return t??=()=>new xe(G(E({},Xj()),{scheduleInRootZone:e})),[{provide:xe,useFactory:t},{provide:Xa,multi:!0,useFactory:()=>{let i=S(Zj,{optional:!0});return()=>i.initialize()}},{provide:Xa,multi:!0,useFactory:()=>{let i=S(eH);return()=>{i.initialize()}}},n===!0?{provide:ST,useValue:!0}:[],{provide:TT,useValue:e??MT}]}function Xj(t){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:t?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:t?.runCoalescing??!1}}var eH=(()=>{class t{subscription=new We;initialized=!1;zone=S(xe);pendingTasks=S(No);initialize(){if(this.initialized)return;this.initialized=!0;let e=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(e=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{xe.assertNotInAngularZone(),queueMicrotask(()=>{e!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(e),e=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{xe.assertInAngularZone(),e??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var tH=(()=>{class t{appRef=S(Hn);taskService=S(No);ngZone=S(xe);zonelessEnabled=S(Zv);tracing=S(xh,{optional:!0});disableScheduling=S(ST,{optional:!0})??!1;zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run;schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}];subscriptions=new We;angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(ah):null;scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(S(TT,{optional:!0})??!1);cancelScheduledCallback=null;useMicrotaskScheduler=!1;runningTick=!1;pendingRenderTaskId=null;constructor(){this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof Py||!this.zoneIsDefined)}notify(e){if(!this.zonelessEnabled&&e===5)return;let i=!1;switch(e){case 0:{this.appRef.dirtyFlags|=2;break}case 3:case 2:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 6:{this.appRef.dirtyFlags|=2,i=!0;break}case 12:{this.appRef.dirtyFlags|=16,i=!0;break}case 13:{this.appRef.dirtyFlags|=2,i=!0;break}case 11:{i=!0;break}case 9:case 8:case 7:case 10:default:this.appRef.dirtyFlags|=8}if(this.appRef.tracingSnapshot=this.tracing?.snapshot(this.appRef.tracingSnapshot)??null,!this.shouldScheduleTick(i))return;let r=this.useMicrotaskScheduler?WM:ET;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>r(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>r(()=>this.tick()))}shouldScheduleTick(e){return!(this.disableScheduling&&!e||this.appRef.destroyed||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(ah+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;if(this.appRef.dirtyFlags===0){this.cleanup();return}!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let e=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(i){throw this.taskService.remove(e),i}finally{this.cleanup()}this.useMicrotaskScheduler=!0,WM(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(e)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let e=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(e)}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function nH(){return typeof $localize<"u"&&$localize.locale||_h}var fu=new $("",{providedIn:"root",factory:()=>S(fu,Ee.Optional|Ee.SkipSelf)||nH()});var yv=new $(""),iH=new $("");function $c(t){return!t.moduleRef}function rH(t){let n=$c(t)?t.r3Injector:t.moduleRef.injector,e=n.get(xe);return e.run(()=>{$c(t)?t.r3Injector.resolveInjectorInitializers():t.moduleRef.resolveInjectorInitializers();let i=n.get(vr,null),r;if(e.runOutsideAngular(()=>{r=e.onError.subscribe({next:o=>{i.handleError(o)}})}),$c(t)){let o=()=>n.destroy(),s=t.platformInjector.get(yv);s.add(o),n.onDestroy(()=>{r.unsubscribe(),s.delete(o)})}else{let o=()=>t.moduleRef.destroy(),s=t.platformInjector.get(yv);s.add(o),t.moduleRef.onDestroy(()=>{Yf(t.allPlatformModules,t.moduleRef),r.unsubscribe(),s.delete(o)})}return sH(i,e,()=>{let o=n.get(HE);return o.runInitializers(),o.donePromise.then(()=>{let s=n.get(fu,_h);if(Fj(s||_h),!n.get(iH,!0))return $c(t)?n.get(Hn):(t.allPlatformModules.push(t.moduleRef),t.moduleRef);if($c(t)){let l=n.get(Hn);return t.rootComponent!==void 0&&l.bootstrap(t.rootComponent),l}else return oH(t.moduleRef,t.allPlatformModules),t.moduleRef})})})}function oH(t,n){let e=t.injector.get(Hn);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(i=>e.bootstrap(i));else if(t.instance.ngDoBootstrap)t.instance.ngDoBootstrap(e);else throw new R(-403,!1);n.push(t)}function sH(t,n,e){try{let i=e();return Vo(i)?i.catch(r=>{throw n.runOutsideAngular(()=>t.handleError(r)),r}):i}catch(i){throw n.runOutsideAngular(()=>t.handleError(i)),i}}var Wf=null;function aH(t=[],n){return Nt.create({name:n,providers:[{provide:Ch,useValue:"platform"},{provide:yv,useValue:new Set([()=>Wf=null])},...t]})}function lH(t=[]){if(Wf)return Wf;let n=aH(t);return Wf=n,nj(),cH(n),n}function cH(t){let n=t.get(t0,null);ei(t,()=>{n?.forEach(e=>e())})}function i1(){return!1}var ct=(()=>{class t{static __NG_ELEMENT_ID__=uH}return t})();function uH(t){return dH(kn(),le(),(t&16)===16)}function dH(t,n,e){if(fl(t)&&!e){let i=yr(t.index,n);return new Jc(i,i)}else if(t.type&175){let i=n[Jn];return new Jc(i,n)}return null}var vv=class{constructor(){}supports(n){return VE(n)}create(n){return new bv(n)}},fH=(t,n)=>n,bv=class{length=0;collection;_linkedRecords=null;_unlinkedRecords=null;_previousItHead=null;_itHead=null;_itTail=null;_additionsHead=null;_additionsTail=null;_movesHead=null;_movesTail=null;_removalsHead=null;_removalsTail=null;_identityChangesHead=null;_identityChangesTail=null;_trackByFn;constructor(n){this._trackByFn=n||fH}forEachItem(n){let e;for(e=this._itHead;e!==null;e=e._next)n(e)}forEachOperation(n){let e=this._itHead,i=this._removalsHead,r=0,o=null;for(;e||i;){let s=!i||e&&e.currentIndex{s=this._trackByFn(r,a),e===null||!Object.is(e.trackById,s)?(e=this._mismatch(e,a,s,r),i=!0):(i&&(e=this._verifyReinsertion(e,a,s,r)),Object.is(e.item,a)||this._addIdentityChange(e,a)),e=e._next,r++}),this.length=r;return this._truncate(e),this.collection=n,this.isDirty}get isDirty(){return this._additionsHead!==null||this._movesHead!==null||this._removalsHead!==null||this._identityChangesHead!==null}_reset(){if(this.isDirty){let n;for(n=this._previousItHead=this._itHead;n!==null;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;n!==null;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;n!==null;n=n._nextMoved)n.previousIndex=n.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(n,e,i,r){let o;return n===null?o=this._itTail:(o=n._prev,this._remove(n)),n=this._unlinkedRecords===null?null:this._unlinkedRecords.get(i,null),n!==null?(Object.is(n.item,e)||this._addIdentityChange(n,e),this._reinsertAfter(n,o,r)):(n=this._linkedRecords===null?null:this._linkedRecords.get(i,r),n!==null?(Object.is(n.item,e)||this._addIdentityChange(n,e),this._moveAfter(n,o,r)):n=this._addAfter(new Cv(e,i),o,r)),n}_verifyReinsertion(n,e,i,r){let o=this._unlinkedRecords===null?null:this._unlinkedRecords.get(i,null);return o!==null?n=this._reinsertAfter(o,n._prev,r):n.currentIndex!=r&&(n.currentIndex=r,this._addToMoves(n,r)),n}_truncate(n){for(;n!==null;){let e=n._next;this._addToRemovals(this._unlink(n)),n=e}this._unlinkedRecords!==null&&this._unlinkedRecords.clear(),this._additionsTail!==null&&(this._additionsTail._nextAdded=null),this._movesTail!==null&&(this._movesTail._nextMoved=null),this._itTail!==null&&(this._itTail._next=null),this._removalsTail!==null&&(this._removalsTail._nextRemoved=null),this._identityChangesTail!==null&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(n,e,i){this._unlinkedRecords!==null&&this._unlinkedRecords.remove(n);let r=n._prevRemoved,o=n._nextRemoved;return r===null?this._removalsHead=o:r._nextRemoved=o,o===null?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(n,e,i),this._addToMoves(n,i),n}_moveAfter(n,e,i){return this._unlink(n),this._insertAfter(n,e,i),this._addToMoves(n,i),n}_addAfter(n,e,i){return this._insertAfter(n,e,i),this._additionsTail===null?this._additionsTail=this._additionsHead=n:this._additionsTail=this._additionsTail._nextAdded=n,n}_insertAfter(n,e,i){let r=e===null?this._itHead:e._next;return n._next=r,n._prev=e,r===null?this._itTail=n:r._prev=n,e===null?this._itHead=n:e._next=n,this._linkedRecords===null&&(this._linkedRecords=new yh),this._linkedRecords.put(n),n.currentIndex=i,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){this._linkedRecords!==null&&this._linkedRecords.remove(n);let e=n._prev,i=n._next;return e===null?this._itHead=i:e._next=i,i===null?this._itTail=e:i._prev=e,n}_addToMoves(n,e){return n.previousIndex===e||(this._movesTail===null?this._movesTail=this._movesHead=n:this._movesTail=this._movesTail._nextMoved=n),n}_addToRemovals(n){return this._unlinkedRecords===null&&(this._unlinkedRecords=new yh),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,this._removalsTail===null?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n}_addIdentityChange(n,e){return n.item=e,this._identityChangesTail===null?this._identityChangesTail=this._identityChangesHead=n:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=n,n}},Cv=class{item;trackById;currentIndex=null;previousIndex=null;_nextPrevious=null;_prev=null;_next=null;_prevDup=null;_nextDup=null;_prevRemoved=null;_nextRemoved=null;_nextAdded=null;_nextMoved=null;_nextIdentityChange=null;constructor(n,e){this.item=n,this.trackById=e}},wv=class{_head=null;_tail=null;add(n){this._head===null?(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,e){let i;for(i=this._head;i!==null;i=i._nextDup)if((e===null||e<=i.currentIndex)&&Object.is(i.trackById,n))return i;return null}remove(n){let e=n._prevDup,i=n._nextDup;return e===null?this._head=i:e._nextDup=i,i===null?this._tail=e:i._prevDup=e,this._head===null}},yh=class{map=new Map;put(n){let e=n.trackById,i=this.map.get(e);i||(i=new wv,this.map.set(e,i)),i.add(n)}get(n,e){let i=n,r=this.map.get(i);return r?r.get(n,e):null}remove(n){let e=n.trackById;return this.map.get(e).remove(n)&&this.map.delete(e),n}get isEmpty(){return this.map.size===0}clear(){this.map.clear()}};function bS(t,n,e){let i=t.previousIndex;if(i===null)return i;let r=0;return e&&i{if(e&&e.key===r)this._maybeAddToChanges(e,i),this._appendAfter=e,e=e._next;else{let o=this._getOrCreateRecordForKey(r,i);e=this._insertBeforeOrAppend(e,o)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let i=e;i!==null;i=i._nextRemoved)i===this._mapHead&&(this._mapHead=null),this._records.delete(i.key),i._nextRemoved=i._next,i.previousValue=i.currentValue,i.currentValue=null,i._prev=null,i._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,e){if(n){let i=n._prev;return e._next=n,e._prev=i,n._prev=e,i&&(i._next=e),n===this._mapHead&&(this._mapHead=e),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(n,e){if(this._records.has(n)){let r=this._records.get(n);this._maybeAddToChanges(r,e);let o=r._prev,s=r._next;return o&&(o._next=s),s&&(s._prev=o),r._next=null,r._prev=null,r}let i=new Sv(n);return this._records.set(n,i),i.currentValue=e,this._addToAdditions(i),i}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;n!==null;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;n!==null;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;n!=null;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,e){Object.is(e,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=e,this._addToChanges(n))}_addToAdditions(n){this._additionsHead===null?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){this._changesHead===null?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,e){n instanceof Map?n.forEach(e):Object.keys(n).forEach(i=>e(n[i],i))}},Sv=class{key;previousValue=null;currentValue=null;_nextPrevious=null;_next=null;_prev=null;_nextAdded=null;_nextRemoved=null;_nextChanged=null;constructor(n){this.key=n}};function CS(){return new I0([new vv])}var I0=(()=>{class t{factories;static \u0275prov=k({token:t,providedIn:"root",factory:CS});constructor(e){this.factories=e}static create(e,i){if(i!=null){let r=i.factories.slice();e=e.concat(r)}return new t(e)}static extend(e){return{provide:t,useFactory:i=>t.create(e,i||CS()),deps:[[t,new FS,new xv]]}}find(e){let i=this.factories.find(r=>r.supports(e));if(i!=null)return i;throw new R(901,!1)}}return t})();function wS(){return new k0([new Dv])}var k0=(()=>{class t{static \u0275prov=k({token:t,providedIn:"root",factory:wS});factories;constructor(e){this.factories=e}static create(e,i){if(i){let r=i.factories.slice();e=e.concat(r)}return new t(e)}static extend(e){return{provide:t,useFactory:i=>t.create(e,i||wS()),deps:[[t,new FS,new xv]]}}find(e){let i=this.factories.find(r=>r.supports(e));if(i)return i;throw new R(901,!1)}}return t})();function r1(t){ot(8);try{let{rootComponent:n,appProviders:e,platformProviders:i}=t,r=lH(i),o=[Jj({}),{provide:Kc,useExisting:tH},...e||[]],s=new fh({providers:o,parent:r,debugName:"",runEnvironmentInitializers:!1});return rH({r3Injector:s.injector,platformInjector:r,rootComponent:n})}catch(n){return Promise.reject(n)}finally{ot(9)}}function st(t){return typeof t=="boolean"?t:t!=null&&t!=="false"}function $s(t,n=NaN){return!isNaN(parseFloat(t))&&!isNaN(Number(t))?Number(t):n}function Di(t){return P_(t)}function Ji(t,n){return x_(t,n?.equal)}var DS=class{[gi];constructor(n){this[gi]=n}destroy(){this[gi].destroy()}};var Pe=new $("");var a1=null;function Mi(){return a1}function A0(t){a1??=t}var hu=class{},P0=(()=>{class t{historyGo(e){throw new Error("")}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>S(l1),providedIn:"platform"})}return t})();var l1=(()=>{class t extends P0{_location;_history;_doc=S(Pe);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return Mi().getBaseHref(this._doc)}onPopState(e){let i=Mi().getGlobalEventTarget(this._doc,"window");return i.addEventListener("popstate",e,!1),()=>i.removeEventListener("popstate",e)}onHashChange(e){let i=Mi().getGlobalEventTarget(this._doc,"window");return i.addEventListener("hashchange",e,!1),()=>i.removeEventListener("hashchange",e)}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(e){this._location.pathname=e}pushState(e,i,r){this._history.pushState(e,i,r)}replaceState(e,i,r){this._history.replaceState(e,i,r)}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>new t,providedIn:"platform"})}return t})();function c1(t,n){return t?n?t.endsWith("/")?n.startsWith("/")?t+n.slice(1):t+n:n.startsWith("/")?t+n:`${t}/${n}`:t:n}function o1(t){let n=t.search(/#|\?|$/);return t[n-1]==="/"?t.slice(0,n-1)+t.slice(n):t}function Bo(t){return t&&t[0]!=="?"?`?${t}`:t}var vl=(()=>{class t{historyGo(e){throw new Error("")}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>S(d1),providedIn:"root"})}return t})(),u1=new $(""),d1=(()=>{class t extends vl{_platformLocation;_baseHref;_removeListenerFns=[];constructor(e,i){super(),this._platformLocation=e,this._baseHref=i??this._platformLocation.getBaseHrefFromDOM()??S(Pe).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return c1(this._baseHref,e)}path(e=!1){let i=this._platformLocation.pathname+Bo(this._platformLocation.search),r=this._platformLocation.hash;return r&&e?`${i}${r}`:i}pushState(e,i,r,o){let s=this.prepareExternalUrl(r+Bo(o));this._platformLocation.pushState(e,i,s)}replaceState(e,i,r,o){let s=this.prepareExternalUrl(r+Bo(o));this._platformLocation.replaceState(e,i,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(e=0){this._platformLocation.historyGo?.(e)}static \u0275fac=function(i){return new(i||t)(j(P0),j(u1,8))};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),bl=(()=>{class t{_subject=new ie;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(e){this._locationStrategy=e;let i=this._locationStrategy.getBaseHref();this._basePath=mH(o1(s1(i))),this._locationStrategy.onPopState(r=>{this._subject.next({url:this.path(!0),pop:!0,state:r.state,type:r.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,i=""){return this.path()==this.normalize(e+Bo(i))}normalize(e){return t.stripTrailingSlash(pH(this._basePath,s1(e)))}prepareExternalUrl(e){return e&&e[0]!=="/"&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,i="",r=null){this._locationStrategy.pushState(r,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Bo(i)),r)}replaceState(e,i="",r=null){this._locationStrategy.replaceState(r,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+Bo(i)),r)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){this._locationStrategy.historyGo?.(e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??=this.subscribe(i=>{this._notifyUrlChangeListeners(i.url,i.state)}),()=>{let i=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(i,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",i){this._urlChangeListeners.forEach(r=>r(e,i))}subscribe(e,i,r){return this._subject.subscribe({next:e,error:i??void 0,complete:r??void 0})}static normalizeQueryParams=Bo;static joinWithSlash=c1;static stripTrailingSlash=o1;static \u0275fac=function(i){return new(i||t)(j(vl))};static \u0275prov=k({token:t,factory:()=>hH(),providedIn:"root"})}return t})();function hH(){return new bl(j(vl))}function pH(t,n){if(!t||!n.startsWith(t))return n;let e=n.substring(t.length);return e===""||["/",";","?","#"].includes(e[0])?e:n}function s1(t){return t.replace(/\/index.html$/,"")}function mH(t){if(new RegExp("^(https?:)?//").test(t)){let[,e]=t.split(/\/\/[^\/]+/);return e}return t}var B0=function(t){return t[t.Decimal=0]="Decimal",t[t.Percent=1]="Percent",t[t.Currency=2]="Currency",t[t.Scientific=3]="Scientific",t}(B0||{});var wn=function(t){return t[t.Format=0]="Format",t[t.Standalone=1]="Standalone",t}(wn||{}),Qe=function(t){return t[t.Narrow=0]="Narrow",t[t.Abbreviated=1]="Abbreviated",t[t.Wide=2]="Wide",t[t.Short=3]="Short",t}(Qe||{}),$n=function(t){return t[t.Short=0]="Short",t[t.Medium=1]="Medium",t[t.Long=2]="Long",t[t.Full=3]="Full",t}($n||{}),zn={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};function _1(t){return ri(t)[It.LocaleId]}function y1(t,n,e){let i=ri(t),r=[i[It.DayPeriodsFormat],i[It.DayPeriodsStandalone]],o=Si(r,n);return Si(o,e)}function v1(t,n,e){let i=ri(t),r=[i[It.DaysFormat],i[It.DaysStandalone]],o=Si(r,n);return Si(o,e)}function b1(t,n,e){let i=ri(t),r=[i[It.MonthsFormat],i[It.MonthsStandalone]],o=Si(r,n);return Si(o,e)}function C1(t,n){let i=ri(t)[It.Eras];return Si(i,n)}function pu(t,n){let e=ri(t);return Si(e[It.DateFormat],n)}function mu(t,n){let e=ri(t);return Si(e[It.TimeFormat],n)}function gu(t,n){let i=ri(t)[It.DateTimeFormat];return Si(i,n)}function Sr(t,n){let e=ri(t),i=e[It.NumberSymbols][n];if(typeof i>"u"){if(n===zn.CurrencyDecimal)return e[It.NumberSymbols][zn.Decimal];if(n===zn.CurrencyGroup)return e[It.NumberSymbols][zn.Group]}return i}function w1(t,n){return ri(t)[It.NumberFormats][n]}function D1(t){if(!t[It.ExtraData])throw new Error(`Missing extra locale data for the locale "${t[It.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function M1(t){let n=ri(t);return D1(n),(n[It.ExtraData][2]||[]).map(i=>typeof i=="string"?O0(i):[O0(i[0]),O0(i[1])])}function S1(t,n,e){let i=ri(t);D1(i);let r=[i[It.ExtraData][0],i[It.ExtraData][1]],o=Si(r,n)||[];return Si(o,e)||[]}function Si(t,n){for(let e=n;e>-1;e--)if(typeof t[e]<"u")return t[e];throw new Error("Locale data API: locale data undefined")}function O0(t){let[n,e]=t.split(":");return{hours:+n,minutes:+e}}var gH=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,Uh={},_H=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;function T1(t,n,e,i){let r=TH(t);n=oo(e,n)||n;let s=[],a;for(;n;)if(a=_H.exec(n),a){s=s.concat(a.slice(1));let u=s.pop();if(!u)break;n=u}else{s.push(n);break}let l=r.getTimezoneOffset();i&&(l=x1(i,l),r=SH(r,i));let c="";return s.forEach(u=>{let p=DH(u);c+=p?p(r,e,l):u==="''"?"'":u.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),c}function Gh(t,n,e){let i=new Date(0);return i.setFullYear(t,n,e),i.setHours(0,0,0),i}function oo(t,n){let e=_1(t);if(Uh[e]??={},Uh[e][n])return Uh[e][n];let i="";switch(n){case"shortDate":i=pu(t,$n.Short);break;case"mediumDate":i=pu(t,$n.Medium);break;case"longDate":i=pu(t,$n.Long);break;case"fullDate":i=pu(t,$n.Full);break;case"shortTime":i=mu(t,$n.Short);break;case"mediumTime":i=mu(t,$n.Medium);break;case"longTime":i=mu(t,$n.Long);break;case"fullTime":i=mu(t,$n.Full);break;case"short":let r=oo(t,"shortTime"),o=oo(t,"shortDate");i=$h(gu(t,$n.Short),[r,o]);break;case"medium":let s=oo(t,"mediumTime"),a=oo(t,"mediumDate");i=$h(gu(t,$n.Medium),[s,a]);break;case"long":let l=oo(t,"longTime"),c=oo(t,"longDate");i=$h(gu(t,$n.Long),[l,c]);break;case"full":let u=oo(t,"fullTime"),p=oo(t,"fullDate");i=$h(gu(t,$n.Full),[u,p]);break}return i&&(Uh[e][n]=i),i}function $h(t,n){return n&&(t=t.replace(/\{([^}]+)}/g,function(e,i){return n!=null&&i in n?n[i]:e})),t}function Xi(t,n,e="-",i,r){let o="";(t<0||r&&t<=0)&&(r?t=-t+1:(t=-t,o=e));let s=String(t);for(;s.length0||a>-e)&&(a+=e),t===3)a===0&&e===-12&&(a=12);else if(t===6)return yH(a,n);let l=Sr(s,zn.MinusSign);return Xi(a,n,l,i,r)}}function vH(t,n){switch(t){case 0:return n.getFullYear();case 1:return n.getMonth();case 2:return n.getDate();case 3:return n.getHours();case 4:return n.getMinutes();case 5:return n.getSeconds();case 6:return n.getMilliseconds();case 7:return n.getDay();default:throw new Error(`Unknown DateType value "${t}".`)}}function at(t,n,e=wn.Format,i=!1){return function(r,o){return bH(r,o,t,n,e,i)}}function bH(t,n,e,i,r,o){switch(e){case 2:return b1(n,r,i)[t.getMonth()];case 1:return v1(n,r,i)[t.getDay()];case 0:let s=t.getHours(),a=t.getMinutes();if(o){let c=M1(n),u=S1(n,r,i),p=c.findIndex(v=>{if(Array.isArray(v)){let[_,M]=v,x=s>=_.hours&&a>=_.minutes,P=s0?Math.floor(r/60):Math.ceil(r/60);switch(t){case 0:return(r>=0?"+":"")+Xi(s,2,o)+Xi(Math.abs(r%60),2,o);case 1:return"GMT"+(r>=0?"+":"")+Xi(s,1,o);case 2:return"GMT"+(r>=0?"+":"")+Xi(s,2,o)+":"+Xi(Math.abs(r%60),2,o);case 3:return i===0?"Z":(r>=0?"+":"")+Xi(s,2,o)+":"+Xi(Math.abs(r%60),2,o);default:throw new Error(`Unknown zone width "${t}"`)}}}var CH=0,Wh=4;function wH(t){let n=Gh(t,CH,1).getDay();return Gh(t,0,1+(n<=Wh?Wh:Wh+7)-n)}function E1(t){let n=t.getDay(),e=n===0?-3:Wh-n;return Gh(t.getFullYear(),t.getMonth(),t.getDate()+e)}function R0(t,n=!1){return function(e,i){let r;if(n){let o=new Date(e.getFullYear(),e.getMonth(),1).getDay()-1,s=e.getDate();r=1+Math.floor((s+o)/7)}else{let o=E1(e),s=wH(o.getFullYear()),a=o.getTime()-s.getTime();r=1+Math.round(a/6048e5)}return Xi(r,t,Sr(i,zn.MinusSign))}}function Yh(t,n=!1){return function(e,i){let o=E1(e).getFullYear();return Xi(o,t,Sr(i,zn.MinusSign),n)}}var N0={};function DH(t){if(N0[t])return N0[t];let n;switch(t){case"G":case"GG":case"GGG":n=at(3,Qe.Abbreviated);break;case"GGGG":n=at(3,Qe.Wide);break;case"GGGGG":n=at(3,Qe.Narrow);break;case"y":n=Ht(0,1,0,!1,!0);break;case"yy":n=Ht(0,2,0,!0,!0);break;case"yyy":n=Ht(0,3,0,!1,!0);break;case"yyyy":n=Ht(0,4,0,!1,!0);break;case"Y":n=Yh(1);break;case"YY":n=Yh(2,!0);break;case"YYY":n=Yh(3);break;case"YYYY":n=Yh(4);break;case"M":case"L":n=Ht(1,1,1);break;case"MM":case"LL":n=Ht(1,2,1);break;case"MMM":n=at(2,Qe.Abbreviated);break;case"MMMM":n=at(2,Qe.Wide);break;case"MMMMM":n=at(2,Qe.Narrow);break;case"LLL":n=at(2,Qe.Abbreviated,wn.Standalone);break;case"LLLL":n=at(2,Qe.Wide,wn.Standalone);break;case"LLLLL":n=at(2,Qe.Narrow,wn.Standalone);break;case"w":n=R0(1);break;case"ww":n=R0(2);break;case"W":n=R0(1,!0);break;case"d":n=Ht(2,1);break;case"dd":n=Ht(2,2);break;case"c":case"cc":n=Ht(7,1);break;case"ccc":n=at(1,Qe.Abbreviated,wn.Standalone);break;case"cccc":n=at(1,Qe.Wide,wn.Standalone);break;case"ccccc":n=at(1,Qe.Narrow,wn.Standalone);break;case"cccccc":n=at(1,Qe.Short,wn.Standalone);break;case"E":case"EE":case"EEE":n=at(1,Qe.Abbreviated);break;case"EEEE":n=at(1,Qe.Wide);break;case"EEEEE":n=at(1,Qe.Narrow);break;case"EEEEEE":n=at(1,Qe.Short);break;case"a":case"aa":case"aaa":n=at(0,Qe.Abbreviated);break;case"aaaa":n=at(0,Qe.Wide);break;case"aaaaa":n=at(0,Qe.Narrow);break;case"b":case"bb":case"bbb":n=at(0,Qe.Abbreviated,wn.Standalone,!0);break;case"bbbb":n=at(0,Qe.Wide,wn.Standalone,!0);break;case"bbbbb":n=at(0,Qe.Narrow,wn.Standalone,!0);break;case"B":case"BB":case"BBB":n=at(0,Qe.Abbreviated,wn.Format,!0);break;case"BBBB":n=at(0,Qe.Wide,wn.Format,!0);break;case"BBBBB":n=at(0,Qe.Narrow,wn.Format,!0);break;case"h":n=Ht(3,1,-12);break;case"hh":n=Ht(3,2,-12);break;case"H":n=Ht(3,1);break;case"HH":n=Ht(3,2);break;case"m":n=Ht(4,1);break;case"mm":n=Ht(4,2);break;case"s":n=Ht(5,1);break;case"ss":n=Ht(5,2);break;case"S":n=Ht(6,1);break;case"SS":n=Ht(6,2);break;case"SSS":n=Ht(6,3);break;case"Z":case"ZZ":case"ZZZ":n=zh(0);break;case"ZZZZZ":n=zh(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":n=zh(1);break;case"OOOO":case"ZZZZ":case"zzzz":n=zh(2);break;default:return null}return N0[t]=n,n}function x1(t,n){t=t.replace(/:/g,"");let e=Date.parse("Jan 01, 1970 00:00:00 "+t)/6e4;return isNaN(e)?n:e}function MH(t,n){return t=new Date(t.getTime()),t.setMinutes(t.getMinutes()+n),t}function SH(t,n,e){let r=t.getTimezoneOffset(),o=x1(n,r);return MH(t,-1*(o-r))}function TH(t){if(f1(t))return t;if(typeof t=="number"&&!isNaN(t))return new Date(t);if(typeof t=="string"){if(t=t.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(t)){let[r,o=1,s=1]=t.split("-").map(a=>+a);return Gh(r,o-1,s)}let e=parseFloat(t);if(!isNaN(t-e))return new Date(e);let i;if(i=t.match(gH))return EH(i)}let n=new Date(t);if(!f1(n))throw new Error(`Unable to convert "${t}" into a date`);return n}function EH(t){let n=new Date(0),e=0,i=0,r=t[8]?n.setUTCFullYear:n.setFullYear,o=t[8]?n.setUTCHours:n.setHours;t[9]&&(e=Number(t[9]+t[10]),i=Number(t[9]+t[11])),r.call(n,Number(t[1]),Number(t[2])-1,Number(t[3]));let s=Number(t[4]||0)-e,a=Number(t[5]||0)-i,l=Number(t[6]||0),c=Math.floor(parseFloat("0."+(t[7]||0))*1e3);return o.call(n,s,a,l,c),n}function f1(t){return t instanceof Date&&!isNaN(t.valueOf())}var xH=/^(\d+)?\.((\d+)(-(\d+))?)?$/,h1=22,qh=".",_u="0",IH=";",kH=",",L0="#";function AH(t,n,e,i,r,o,s=!1){let a="",l=!1;if(!isFinite(t))a=Sr(e,zn.Infinity);else{let c=RH(t);s&&(c=OH(c));let u=n.minInt,p=n.minFrac,v=n.maxFrac;if(o){let K=o.match(xH);if(K===null)throw new Error(`${o} is not a valid digit info`);let ne=K[1],Ue=K[3],nn=K[5];ne!=null&&(u=F0(ne)),Ue!=null&&(p=F0(Ue)),nn!=null?v=F0(nn):Ue!=null&&p>v&&(v=p)}NH(c,p,v);let _=c.digits,M=c.integerLen,x=c.exponent,P=[];for(l=_.every(K=>!K);M0?P=_.splice(M,_.length):(P=_,_=[0]);let F=[];for(_.length>=n.lgSize&&F.unshift(_.splice(-n.lgSize,_.length).join(""));_.length>n.gSize;)F.unshift(_.splice(-n.gSize,_.length).join(""));_.length&&F.unshift(_.join("")),a=F.join(Sr(e,i)),P.length&&(a+=Sr(e,r)+P.join("")),x&&(a+=Sr(e,zn.Exponential)+"+"+x)}return t<0&&!l?a=n.negPre+a+n.negSuf:a=n.posPre+a+n.posSuf,a}function I1(t,n,e){let i=w1(n,B0.Decimal),r=PH(i,Sr(n,zn.MinusSign));return AH(t,r,n,zn.Group,zn.Decimal,e)}function PH(t,n="-"){let e={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},i=t.split(IH),r=i[0],o=i[1],s=r.indexOf(qh)!==-1?r.split(qh):[r.substring(0,r.lastIndexOf(_u)+1),r.substring(r.lastIndexOf(_u)+1)],a=s[0],l=s[1]||"";e.posPre=a.substring(0,a.indexOf(L0));for(let u=0;u-1&&(n=n.replace(qh,"")),(o=n.search(/e/i))>0?(r<0&&(r=o),r+=+n.slice(o+1),n=n.substring(0,o)):r<0&&(r=n.length),o=0;n.charAt(o)===_u;o++);if(o===(a=n.length))i=[0],r=1;else{for(a--;n.charAt(a)===_u;)a--;for(r-=o,i=[],s=0;o<=a;o++,s++)i[s]=Number(n.charAt(o))}return r>h1&&(i=i.splice(0,h1-1),e=r-1,r=1),{digits:i,exponent:e,integerLen:r}}function NH(t,n,e){if(n>e)throw new Error(`The minimum number of digits after fraction (${n}) is higher than the maximum (${e}).`);let i=t.digits,r=i.length-t.integerLen,o=Math.min(Math.max(n,r),e),s=o+t.integerLen,a=i[s];if(s>0){i.splice(Math.max(t.integerLen,s));for(let p=s;p=5)if(s-1<0){for(let p=0;p>s;p--)i.unshift(0),t.integerLen++;i.unshift(1),t.integerLen++}else i[s-1]++;for(;r=c?M.pop():l=!1),v>=10?1:0},0);u&&(i.unshift(u),t.integerLen++)}function F0(t){let n=parseInt(t);if(isNaN(n))throw new Error("Invalid integer literal when parsing "+t);return n}var V0=/\s+/,p1=[],fn=(()=>{class t{_ngEl;_renderer;initialClasses=p1;rawClass;stateMap=new Map;constructor(e,i){this._ngEl=e,this._renderer=i}set klass(e){this.initialClasses=e!=null?e.trim().split(V0):p1}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(V0):e}ngDoCheck(){for(let i of this.initialClasses)this._updateState(i,!0);let e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(let i of e)this._updateState(i,!0);else if(e!=null)for(let i of Object.keys(e))this._updateState(i,!!e[i]);this._applyStateDiff()}_updateState(e,i){let r=this.stateMap.get(e);r!==void 0?(r.enabled!==i&&(r.changed=!0,r.enabled=i),r.touched=!0):this.stateMap.set(e,{enabled:i,changed:!0,touched:!0})}_applyStateDiff(){for(let e of this.stateMap){let i=e[0],r=e[1];r.changed?(this._toggleClass(i,r.enabled),r.changed=!1):r.touched||(r.enabled&&this._toggleClass(i,!1),this.stateMap.delete(i)),r.touched=!1}}_toggleClass(e,i){e=e.trim(),e.length>0&&e.split(V0).forEach(r=>{i?this._renderer.addClass(this._ngEl.nativeElement,r):this._renderer.removeClass(this._ngEl.nativeElement,r)})}static \u0275fac=function(i){return new(i||t)(b(Y),b(Ae))};static \u0275dir=U({type:t,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return t})();var Qh=class{$implicit;ngForOf;index;count;constructor(n,e,i,r){this.$implicit=n,this.ngForOf=e,this.index=i,this.count=r}get first(){return this.index===0}get last(){return this.index===this.count-1}get even(){return this.index%2===0}get odd(){return!this.even}},Ge=(()=>{class t{_viewContainer;_template;_differs;set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}_ngForOf=null;_ngForOfDirty=!0;_differ=null;_trackByFn;constructor(e,i,r){this._viewContainer=e,this._template=i,this._differs=r}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;let e=this._ngForOf;!this._differ&&e&&(this._differ=this._differs.find(e).create(this.ngForTrackBy))}if(this._differ){let e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){let i=this._viewContainer;e.forEachOperation((r,o,s)=>{if(r.previousIndex==null)i.createEmbeddedView(this._template,new Qh(r.item,this._ngForOf,-1,-1),s===null?void 0:s);else if(s==null)i.remove(o===null?void 0:o);else if(o!==null){let a=i.get(o);i.move(a,s),m1(a,r)}});for(let r=0,o=i.length;r{let o=i.get(r.currentIndex);m1(o,r)})}static ngTemplateContextGuard(e,i){return!0}static \u0275fac=function(i){return new(i||t)(b(_t),b(Ot),b(I0))};static \u0275dir=U({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}})}return t})();function m1(t,n){t.context.$implicit=n.item}var Te=(()=>{class t{_viewContainer;_context=new Kh;_thenTemplateRef=null;_elseTemplateRef=null;_thenViewRef=null;_elseViewRef=null;constructor(e,i){this._viewContainer=e,this._thenTemplateRef=i}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){g1(e,!1),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){g1(e,!1),this._elseTemplateRef=e,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 ngIfUseIfTypeGuard;static ngTemplateGuard_ngIf;static ngTemplateContextGuard(e,i){return!0}static \u0275fac=function(i){return new(i||t)(b(_t),b(Ot))};static \u0275dir=U({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}})}return t})(),Kh=class{$implicit=null;ngIf=null};function g1(t,n){if(t&&!t.createEmbeddedView)throw new R(2020,!1)}var Zh=class{_viewContainerRef;_templateRef;_created=!1;constructor(n,e){this._viewContainerRef=n,this._templateRef=e}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(n){n&&!this._created?this.create():!n&&this._created&&this.destroy()}},Ti=(()=>{class t{_defaultViews=[];_defaultUsed=!1;_caseCount=0;_lastCaseCheckIndex=0;_lastCasesMatched=!1;_ngSwitch;set ngSwitch(e){this._ngSwitch=e,this._caseCount===0&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(e){this._defaultViews.push(e)}_matchCase(e){let i=e===this._ngSwitch;return this._lastCasesMatched||=i,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),i}_updateDefaultCases(e){if(this._defaultViews.length>0&&e!==this._defaultUsed){this._defaultUsed=e;for(let i of this._defaultViews)i.enforceState(e)}}static \u0275fac=function(i){return new(i||t)};static \u0275dir=U({type:t,selectors:[["","ngSwitch",""]],inputs:{ngSwitch:"ngSwitch"}})}return t})(),Tr=(()=>{class t{ngSwitch;_view;ngSwitchCase;constructor(e,i,r){this.ngSwitch=r,r._addCase(),this._view=new Zh(e,i)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}static \u0275fac=function(i){return new(i||t)(b(_t),b(Ot),b(Ti,9))};static \u0275dir=U({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}})}return t})(),U0=(()=>{class t{constructor(e,i,r){r._addDefault(new Zh(e,i))}static \u0275fac=function(i){return new(i||t)(b(_t),b(Ot),b(Ti,9))};static \u0275dir=U({type:t,selectors:[["","ngSwitchDefault",""]]})}return t})();var $0=(()=>{class t{_ngEl;_differs;_renderer;_ngStyle=null;_differ=null;constructor(e,i,r){this._ngEl=e,this._differs=i,this._renderer=r}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){let e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,i){let[r,o]=e.split("."),s=r.indexOf("-")===-1?void 0:br.DashCase;i!=null?this._renderer.setStyle(this._ngEl.nativeElement,r,o?`${i}${o}`:i,s):this._renderer.removeStyle(this._ngEl.nativeElement,r,s)}_applyChanges(e){e.forEachRemovedItem(i=>this._setStyle(i.key,null)),e.forEachAddedItem(i=>this._setStyle(i.key,i.currentValue)),e.forEachChangedItem(i=>this._setStyle(i.key,i.currentValue))}static \u0275fac=function(i){return new(i||t)(b(Y),b(k0),b(Ae))};static \u0275dir=U({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}})}return t})(),zs=(()=>{class t{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;constructor(e){this._viewContainerRef=e}ngOnChanges(e){if(this._shouldRecreateView(e)){let i=this._viewContainerRef;if(this._viewRef&&i.remove(i.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let r=this._createContextForwardProxy();this._viewRef=i.createEmbeddedView(this.ngTemplateOutlet,r,{injector:this.ngTemplateOutletInjector??void 0})}}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,i,r)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,i,r):!1,get:(e,i,r)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,i,r)}})}static \u0275fac=function(i){return new(i||t)(b(_t))};static \u0275dir=U({type:t,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[Se]})}return t})();function z0(t,n){return new R(2100,!1)}var j0=class{createSubscription(n,e){return Di(()=>n.subscribe({next:e,error:i=>{throw i}}))}dispose(n){Di(()=>n.unsubscribe())}},H0=class{createSubscription(n,e){return n.then(e,i=>{throw i})}dispose(n){}},LH=new H0,FH=new j0,Er=(()=>{class t{_ref;_latestValue=null;markForCheckOnValueUpdate=!0;_subscription=null;_obj=null;_strategy=null;constructor(e){this._ref=e}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(e){if(!this._obj){if(e)try{this.markForCheckOnValueUpdate=!1,this._subscribe(e)}finally{this.markForCheckOnValueUpdate=!0}return this._latestValue}return e!==this._obj?(this._dispose(),this.transform(e)):this._latestValue}_subscribe(e){this._obj=e,this._strategy=this._selectStrategy(e),this._subscription=this._strategy.createSubscription(e,i=>this._updateLatestValue(e,i))}_selectStrategy(e){if(Vo(e))return LH;if(S0(e))return FH;throw z0(t,e)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(e,i){e===this._obj&&(this._latestValue=i,this.markForCheckOnValueUpdate&&this._ref?.markForCheck())}static \u0275fac=function(i){return new(i||t)(b(ct,16))};static \u0275pipe=Fo({name:"async",type:t,pure:!1})}return t})();var VH="mediumDate",k1=new $(""),A1=new $(""),yu=(()=>{class t{locale;defaultTimezone;defaultOptions;constructor(e,i,r){this.locale=e,this.defaultTimezone=i,this.defaultOptions=r}transform(e,i,r,o){if(e==null||e===""||e!==e)return null;try{let s=i??this.defaultOptions?.dateFormat??VH,a=r??this.defaultOptions?.timezone??this.defaultTimezone??void 0;return T1(e,s,o||this.locale,a)}catch(s){throw z0(t,s.message)}}static \u0275fac=function(i){return new(i||t)(b(fu,16),b(k1,24),b(A1,24))};static \u0275pipe=Fo({name:"date",type:t,pure:!0})}return t})();var Y0=(()=>{class t{_locale;constructor(e){this._locale=e}transform(e,i,r){if(!jH(e))return null;r||=this._locale;try{let o=HH(e);return I1(o,r,i)}catch(o){throw z0(t,o.message)}}static \u0275fac=function(i){return new(i||t)(b(fu,16))};static \u0275pipe=Fo({name:"number",type:t,pure:!0})}return t})();function jH(t){return!(t==null||t===""||t!==t)}function HH(t){if(typeof t=="string"&&!isNaN(Number(t)-parseFloat(t)))return Number(t);if(typeof t!="number")throw new Error(`${t} is not a number`);return t}var He=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=we({type:t});static \u0275inj=Ce({})}return t})();function vu(t,n){n=encodeURIComponent(n);for(let e of t.split(";")){let i=e.indexOf("="),[r,o]=i==-1?[e,""]:[e.slice(0,i),e.slice(i+1)];if(r.trim()===n)return decodeURIComponent(o)}return null}var Jh="browser",P1="server";function Ws(t){return t===Jh}function Xh(t){return t===P1}var Ys=class{};var ip=new $(""),Q0=(()=>{class t{_zone;_plugins;_eventNameToPlugin=new Map;constructor(e,i){this._zone=i,e.forEach(r=>{r.manager=this}),this._plugins=e.slice().reverse()}addEventListener(e,i,r,o){return this._findPluginFor(i).addEventListener(e,i,r,o)}getZone(){return this._zone}_findPluginFor(e){let i=this._eventNameToPlugin.get(e);if(i)return i;if(i=this._plugins.find(o=>o.supports(e)),!i)throw new R(5101,!1);return this._eventNameToPlugin.set(e,i),i}static \u0275fac=function(i){return new(i||t)(j(ip),j(xe))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})(),bu=class{_doc;constructor(n){this._doc=n}manager},tp="ng-app-id";function O1(t){for(let n of t)n.remove()}function R1(t,n){let e=n.createElement("style");return e.textContent=t,e}function BH(t,n,e,i){let r=t.head?.querySelectorAll(`style[${tp}="${n}"],link[${tp}="${n}"]`);if(r)for(let o of r)o.removeAttribute(tp),o instanceof HTMLLinkElement?i.set(o.href.slice(o.href.lastIndexOf("/")+1),{usage:0,elements:[o]}):o.textContent&&e.set(o.textContent,{usage:0,elements:[o]})}function G0(t,n){let e=n.createElement("link");return e.setAttribute("rel","stylesheet"),e.setAttribute("href",t),e}var K0=(()=>{class t{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;isServer;constructor(e,i,r,o={}){this.doc=e,this.appId=i,this.nonce=r,this.isServer=Xh(o),BH(e,i,this.inline,this.external),this.hosts.add(e.head)}addStyles(e,i){for(let r of e)this.addUsage(r,this.inline,R1);i?.forEach(r=>this.addUsage(r,this.external,G0))}removeStyles(e,i){for(let r of e)this.removeUsage(r,this.inline);i?.forEach(r=>this.removeUsage(r,this.external))}addUsage(e,i,r){let o=i.get(e);o?o.usage++:i.set(e,{usage:1,elements:[...this.hosts].map(s=>this.addElement(s,r(e,this.doc)))})}removeUsage(e,i){let r=i.get(e);r&&(r.usage--,r.usage<=0&&(O1(r.elements),i.delete(e)))}ngOnDestroy(){for(let[,{elements:e}]of[...this.inline,...this.external])O1(e);this.hosts.clear()}addHost(e){this.hosts.add(e);for(let[i,{elements:r}]of this.inline)r.push(this.addElement(e,R1(i,this.doc)));for(let[i,{elements:r}]of this.external)r.push(this.addElement(e,G0(i,this.doc)))}removeHost(e){this.hosts.delete(e)}addElement(e,i){return this.nonce&&i.setAttribute("nonce",this.nonce),this.isServer&&i.setAttribute(tp,this.appId),e.appendChild(i)}static \u0275fac=function(i){return new(i||t)(j(Pe),j(e0),j(n0,8),j(ti))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})(),W0={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},Z0=/%COMP%/g;var L1="%COMP%",UH=`_nghost-${L1}`,$H=`_ngcontent-${L1}`,zH=!0,YH=new $("",{providedIn:"root",factory:()=>zH});function WH(t){return $H.replace(Z0,t)}function GH(t){return UH.replace(Z0,t)}function F1(t,n){return n.map(e=>e.replace(Z0,t))}var Du=(()=>{class t{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;platformId;ngZone;nonce;tracingService;rendererByCompId=new Map;defaultRenderer;platformIsServer;constructor(e,i,r,o,s,a,l,c=null,u=null){this.eventManager=e,this.sharedStylesHost=i,this.appId=r,this.removeStylesOnCompDestroy=o,this.doc=s,this.platformId=a,this.ngZone=l,this.nonce=c,this.tracingService=u,this.platformIsServer=Xh(a),this.defaultRenderer=new Cu(e,s,l,this.platformIsServer,this.tracingService)}createRenderer(e,i){if(!e||!i)return this.defaultRenderer;this.platformIsServer&&i.encapsulation===Ci.ShadowDom&&(i=G(E({},i),{encapsulation:Ci.Emulated}));let r=this.getOrCreateRenderer(e,i);return r instanceof np?r.applyToHost(e):r instanceof wu&&r.applyStyles(),r}getOrCreateRenderer(e,i){let r=this.rendererByCompId,o=r.get(i.id);if(!o){let s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,p=this.platformIsServer,v=this.tracingService;switch(i.encapsulation){case Ci.Emulated:o=new np(l,c,i,this.appId,u,s,a,p,v);break;case Ci.ShadowDom:return new q0(l,c,e,i,s,a,this.nonce,p,v);default:o=new wu(l,c,i,u,s,a,p,v);break}r.set(i.id,o)}return o}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(e){this.rendererByCompId.delete(e)}static \u0275fac=function(i){return new(i||t)(j(Q0),j(K0),j(e0),j(YH),j(Pe),j(ti),j(xe),j(n0),j(xh,8))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})(),Cu=class{eventManager;doc;ngZone;platformIsServer;tracingService;data=Object.create(null);throwOnSyntheticProps=!0;constructor(n,e,i,r,o){this.eventManager=n,this.doc=e,this.ngZone=i,this.platformIsServer=r,this.tracingService=o}destroy(){}destroyNode=null;createElement(n,e){return e?this.doc.createElementNS(W0[e]||e,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,e){(N1(n)?n.content:n).appendChild(e)}insertBefore(n,e,i){n&&(N1(n)?n.content:n).insertBefore(e,i)}removeChild(n,e){e.remove()}selectRootElement(n,e){let i=typeof n=="string"?this.doc.querySelector(n):n;if(!i)throw new R(-5104,!1);return e||(i.textContent=""),i}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,e,i,r){if(r){e=r+":"+e;let o=W0[r];o?n.setAttributeNS(o,e,i):n.setAttribute(e,i)}else n.setAttribute(e,i)}removeAttribute(n,e,i){if(i){let r=W0[i];r?n.removeAttributeNS(r,e):n.removeAttribute(`${i}:${e}`)}else n.removeAttribute(e)}addClass(n,e){n.classList.add(e)}removeClass(n,e){n.classList.remove(e)}setStyle(n,e,i,r){r&(br.DashCase|br.Important)?n.style.setProperty(e,i,r&br.Important?"important":""):n.style[e]=i}removeStyle(n,e,i){i&br.DashCase?n.style.removeProperty(e):n.style[e]=""}setProperty(n,e,i){n!=null&&(n[e]=i)}setValue(n,e){n.nodeValue=e}listen(n,e,i,r){if(typeof n=="string"&&(n=Mi().getGlobalEventTarget(this.doc,n),!n))throw new R(5102,!1);let o=this.decoratePreventDefault(i);return this.tracingService?.wrapEventListener&&(o=this.tracingService.wrapEventListener(n,e,o)),this.eventManager.addEventListener(n,e,o,r)}decoratePreventDefault(n){return e=>{if(e==="__ngUnwrap__")return n;(this.platformIsServer?this.ngZone.runGuarded(()=>n(e)):n(e))===!1&&e.preventDefault()}}};function N1(t){return t.tagName==="TEMPLATE"&&t.content!==void 0}var q0=class extends Cu{sharedStylesHost;hostEl;shadowRoot;constructor(n,e,i,r,o,s,a,l,c){super(n,o,s,l,c),this.sharedStylesHost=e,this.hostEl=i,this.shadowRoot=i.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let u=r.styles;u=F1(r.id,u);for(let v of u){let _=document.createElement("style");a&&_.setAttribute("nonce",a),_.textContent=v,this.shadowRoot.appendChild(_)}let p=r.getExternalStyles?.();if(p)for(let v of p){let _=G0(v,o);a&&_.setAttribute("nonce",a),this.shadowRoot.appendChild(_)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,e){return super.appendChild(this.nodeOrShadowRoot(n),e)}insertBefore(n,e,i){return super.insertBefore(this.nodeOrShadowRoot(n),e,i)}removeChild(n,e){return super.removeChild(null,e)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},wu=class extends Cu{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(n,e,i,r,o,s,a,l,c){super(n,o,s,a,l),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=r;let u=i.styles;this.styles=c?F1(c,u):u,this.styleUrls=i.getExternalStyles?.(c)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}},np=class extends wu{contentAttr;hostAttr;constructor(n,e,i,r,o,s,a,l,c){let u=r+"-"+i.id;super(n,e,i,o,s,a,l,c,u),this.contentAttr=WH(u),this.hostAttr=GH(u)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,e){let i=super.createElement(n,e);return super.setAttribute(i,this.contentAttr,""),i}};var rp=class t extends hu{supportsDOMEvents=!0;static makeCurrent(){A0(new t)}onAndCancel(n,e,i,r){return n.addEventListener(e,i,r),()=>{n.removeEventListener(e,i,r)}}dispatchEvent(n,e){n.dispatchEvent(e)}remove(n){n.remove()}createElement(n,e){return e=e||this.getDefaultDocument(),e.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,e){return e==="window"?window:e==="document"?n:e==="body"?n.body:null}getBaseHref(n){let e=qH();return e==null?null:QH(e)}resetBaseElement(){Mu=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return vu(document.cookie,n)}},Mu=null;function qH(){return Mu=Mu||document.querySelector("base"),Mu?Mu.getAttribute("href"):null}function QH(t){return new URL(t,document.baseURI).pathname}var KH=(()=>{class t{build(){return new XMLHttpRequest}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})(),j1=(()=>{class t extends bu{constructor(e){super(e)}supports(e){return!0}addEventListener(e,i,r,o){return e.addEventListener(i,r,o),()=>this.removeEventListener(e,i,r,o)}removeEventListener(e,i,r,o){return e.removeEventListener(i,r,o)}static \u0275fac=function(i){return new(i||t)(j(Pe))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})(),V1=["alt","control","meta","shift"],ZH={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},JH={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},H1=(()=>{class t extends bu{constructor(e){super(e)}supports(e){return t.parseEventName(e)!=null}addEventListener(e,i,r,o){let s=t.parseEventName(i),a=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>Mi().onAndCancel(e,s.domEventName,a,o))}static parseEventName(e){let i=e.toLowerCase().split("."),r=i.shift();if(i.length===0||!(r==="keydown"||r==="keyup"))return null;let o=t._normalizeKey(i.pop()),s="",a=i.indexOf("code");if(a>-1&&(i.splice(a,1),s="code."),V1.forEach(c=>{let u=i.indexOf(c);u>-1&&(i.splice(u,1),s+=c+".")}),s+=o,i.length!=0||o.length===0)return null;let l={};return l.domEventName=r,l.fullKey=s,l}static matchEventFullKeyCode(e,i){let r=ZH[e.key]||e.key,o="";return i.indexOf("code.")>-1&&(r=e.code,o="code."),r==null||!r?!1:(r=r.toLowerCase(),r===" "?r="space":r==="."&&(r="dot"),V1.forEach(s=>{if(s!==r){let a=JH[s];a(e)&&(o+=s+".")}}),o+=r,o===i)}static eventCallback(e,i,r){return o=>{t.matchEventFullKeyCode(o,e)&&r.runGuarded(()=>i(o))}}static _normalizeKey(e){return e==="esc"?"escape":e}static \u0275fac=function(i){return new(i||t)(j(Pe))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})();function J0(t,n){return r1(E({rootComponent:t},XH(n)))}function XH(t){return{appProviders:[...rB,...t?.providers??[]],platformProviders:iB}}function eB(){rp.makeCurrent()}function tB(){return new vr}function nB(){return LT(document),document}var iB=[{provide:ti,useValue:Jh},{provide:t0,useValue:eB,multi:!0},{provide:Pe,useFactory:nB}];var rB=[{provide:Ch,useValue:"root"},{provide:vr,useFactory:tB},{provide:ip,useClass:j1,multi:!0,deps:[Pe]},{provide:ip,useClass:H1,multi:!0,deps:[Pe]},Du,K0,Q0,{provide:jn,useExisting:Du},{provide:Ys,useClass:KH},[]];var wl=class{},Su=class{},Uo=class t{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(n){n?typeof n=="string"?this.lazyInit=()=>{this.headers=new Map,n.split(` +`).forEach(e=>{let i=e.indexOf(":");if(i>0){let r=e.slice(0,i),o=e.slice(i+1).trim();this.addHeaderEntry(r,o)}})}:typeof Headers<"u"&&n instanceof Headers?(this.headers=new Map,n.forEach((e,i)=>{this.addHeaderEntry(i,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(n).forEach(([e,i])=>{this.setHeaderEntries(e,i)})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();let e=this.headers.get(n.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,e){return this.clone({name:n,value:e,op:"a"})}set(n,e){return this.clone({name:n,value:e,op:"s"})}delete(n,e){return this.clone({name:n,value:e,op:"d"})}maybeSetNormalizedName(n,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,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(e=>{this.headers.set(e,n.headers.get(e)),this.normalizedNames.set(e,n.normalizedNames.get(e))})}clone(n){let e=new t;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([n]),e}applyUpdate(n){let e=n.name.toLowerCase();switch(n.op){case"a":case"s":let i=n.value;if(typeof i=="string"&&(i=[i]),i.length===0)return;this.maybeSetNormalizedName(n.name,e);let r=(n.op==="a"?this.headers.get(e):void 0)||[];r.push(...i),this.headers.set(e,r);break;case"d":let o=n.value;if(!o)this.headers.delete(e),this.normalizedNames.delete(e);else{let s=this.headers.get(e);if(!s)return;s=s.filter(a=>o.indexOf(a)===-1),s.length===0?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,s)}break}}addHeaderEntry(n,e){let i=n.toLowerCase();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(e):this.headers.set(i,[e])}setHeaderEntries(n,e){let i=(Array.isArray(e)?e:[e]).map(o=>o.toString()),r=n.toLowerCase();this.headers.set(r,i),this.maybeSetNormalizedName(n,r)}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>n(this.normalizedNames.get(e),this.headers.get(e)))}};var sp=class{encodeKey(n){return B1(n)}encodeValue(n){return B1(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}};function oB(t,n){let e=new Map;return t.length>0&&t.replace(/^\?/,"").split("&").forEach(r=>{let o=r.indexOf("="),[s,a]=o==-1?[n.decodeKey(r),""]:[n.decodeKey(r.slice(0,o)),n.decodeValue(r.slice(o+1))],l=e.get(s)||[];l.push(a),e.set(s,l)}),e}var sB=/%(\d[a-f0-9])/gi,aB={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function B1(t){return encodeURIComponent(t).replace(sB,(n,e)=>aB[e]??n)}function op(t){return`${t}`}var er=class t{map;encoder;updates=null;cloneFrom=null;constructor(n={}){if(this.encoder=n.encoder||new sp,n.fromString){if(n.fromObject)throw new R(2805,!1);this.map=oB(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(e=>{let i=n.fromObject[e],r=Array.isArray(i)?i.map(op):[op(i)];this.map.set(e,r)})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();let e=this.map.get(n);return e?e[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,e){return this.clone({param:n,value:e,op:"a"})}appendAll(n){let e=[];return Object.keys(n).forEach(i=>{let r=n[i];Array.isArray(r)?r.forEach(o=>{e.push({param:i,value:o,op:"a"})}):e.push({param:i,value:r,op:"a"})}),this.clone(e)}set(n,e){return this.clone({param:n,value:e,op:"s"})}delete(n,e){return this.clone({param:n,value:e,op:"d"})}toString(){return this.init(),this.keys().map(n=>{let e=this.encoder.encodeKey(n);return this.map.get(n).map(i=>e+"="+this.encoder.encodeValue(i)).join("&")}).filter(n=>n!=="").join("&")}clone(n){let e=new t({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(n),e}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(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":let e=(n.op==="a"?this.map.get(n.param):void 0)||[];e.push(op(n.value)),this.map.set(n.param,e);break;case"d":if(n.value!==void 0){let i=this.map.get(n.param)||[],r=i.indexOf(op(n.value));r!==-1&&i.splice(r,1),i.length>0?this.map.set(n.param,i):this.map.delete(n.param)}else{this.map.delete(n.param);break}}}),this.cloneFrom=this.updates=null)}};var ap=class{map=new Map;set(n,e){return this.map.set(n,e),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 lB(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function U1(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer}function $1(t){return typeof Blob<"u"&&t instanceof Blob}function z1(t){return typeof FormData<"u"&&t instanceof FormData}function cB(t){return typeof URLSearchParams<"u"&&t instanceof URLSearchParams}var Y1="Content-Type",W1="Accept",G1="X-Request-URL",q1="text/plain",Q1="application/json",uB=`${Q1}, ${q1}, */*`,Cl=class t{url;body=null;headers;context;reportProgress=!1;withCredentials=!1;responseType="json";method;params;urlWithParams;transferCache;constructor(n,e,i,r){this.url=e,this.method=n.toUpperCase();let o;if(lB(this.method)||r?(this.body=i!==void 0?i:null,o=r):o=i,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params),this.transferCache=o.transferCache),this.headers??=new Uo,this.context??=new ap,!this.params)this.params=new er,this.urlWithParams=e;else{let s=this.params.toString();if(s.length===0)this.urlWithParams=e;else{let a=e.indexOf("?"),l=a===-1?"?":av.set(_,n.setHeaders[_]),c)),n.setParams&&(u=Object.keys(n.setParams).reduce((v,_)=>v.set(_,n.setParams[_]),u)),new t(e,i,s,{params:u,headers:c,context:p,reportProgress:l,responseType:r,withCredentials:a,transferCache:o})}},Gs=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}(Gs||{}),Dl=class{headers;status;statusText;url;ok;type;constructor(n,e=200,i="OK"){this.headers=n.headers||new Uo,this.status=n.status!==void 0?n.status:e,this.statusText=n.statusText||i,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}},lp=class t extends Dl{constructor(n={}){super(n)}type=Gs.ResponseHeader;clone(n={}){return new t({headers:n.headers||this.headers,status:n.status!==void 0?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}},Tu=class t extends Dl{body;constructor(n={}){super(n),this.body=n.body!==void 0?n.body:null}type=Gs.Response;clone(n={}){return new t({body:n.body!==void 0?n.body:this.body,headers:n.headers||this.headers,status:n.status!==void 0?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}},Eu=class extends Dl{name="HttpErrorResponse";message;error;ok=!1;constructor(n){super(n,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${n.url||"(unknown url)"}`:this.message=`Http failure response for ${n.url||"(unknown url)"}: ${n.status} ${n.statusText}`,this.error=n.error||null}},dB=200,fB=204;function X0(t,n){return{body:n,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials,transferCache:t.transferCache}}var Yn=(()=>{class t{handler;constructor(e){this.handler=e}request(e,i,r={}){let o;if(e instanceof Cl)o=e;else{let l;r.headers instanceof Uo?l=r.headers:l=new Uo(r.headers);let c;r.params&&(r.params instanceof er?c=r.params:c=new er({fromObject:r.params})),o=new Cl(e,i,r.body!==void 0?r.body:null,{headers:l,context:r.context,params:c,reportProgress:r.reportProgress,responseType:r.responseType||"json",withCredentials:r.withCredentials,transferCache:r.transferCache})}let s=J(o).pipe(Io(l=>this.handler.handle(l)));if(e instanceof Cl||r.observe==="events")return s;let a=s.pipe(he(l=>l instanceof Tu));switch(r.observe||"body"){case"body":switch(o.responseType){case"arraybuffer":return a.pipe(q(l=>{if(l.body!==null&&!(l.body instanceof ArrayBuffer))throw new R(2806,!1);return l.body}));case"blob":return a.pipe(q(l=>{if(l.body!==null&&!(l.body instanceof Blob))throw new R(2807,!1);return l.body}));case"text":return a.pipe(q(l=>{if(l.body!==null&&typeof l.body!="string")throw new R(2808,!1);return l.body}));case"json":default:return a.pipe(q(l=>l.body))}case"response":return a;default:throw new R(2809,!1)}}delete(e,i={}){return this.request("DELETE",e,i)}get(e,i={}){return this.request("GET",e,i)}head(e,i={}){return this.request("HEAD",e,i)}jsonp(e,i){return this.request("JSONP",e,{params:new er().append(i,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,i={}){return this.request("OPTIONS",e,i)}patch(e,i,r={}){return this.request("PATCH",e,X0(r,i))}post(e,i,r={}){return this.request("POST",e,X0(r,i))}put(e,i,r={}){return this.request("PUT",e,X0(r,i))}static \u0275fac=function(i){return new(i||t)(j(wl))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})();var hB=new $("");function pB(t,n){return n(t)}function mB(t,n,e){return(i,r)=>ei(e,()=>n(i,o=>t(o,r)))}var tb=new $(""),K1=new $(""),Z1=new $("",{providedIn:"root",factory:()=>!0});var cp=(()=>{class t extends wl{backend;injector;chain=null;pendingTasks=S(No);contributeToStability=S(Z1);constructor(e,i){super(),this.backend=e,this.injector=i}handle(e){if(this.chain===null){let i=Array.from(new Set([...this.injector.get(tb),...this.injector.get(K1,[])]));this.chain=i.reduceRight((r,o)=>mB(r,o,this.injector),pB)}if(this.contributeToStability){let i=this.pendingTasks.add();return this.chain(e,r=>this.backend.handle(r)).pipe(yi(()=>this.pendingTasks.remove(i)))}else return this.chain(e,i=>this.backend.handle(i))}static \u0275fac=function(i){return new(i||t)(j(Su),j(In))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})();var gB=/^\)\]\}',?\n/,_B=RegExp(`^${G1}:`,"m");function yB(t){return"responseURL"in t&&t.responseURL?t.responseURL:_B.test(t.getAllResponseHeaders())?t.getResponseHeader(G1):null}var eb=(()=>{class t{xhrFactory;constructor(e){this.xhrFactory=e}handle(e){if(e.method==="JSONP")throw new R(-2800,!1);let i=this.xhrFactory;return(i.\u0275loadImpl?rt(i.\u0275loadImpl()):J(null)).pipe(St(()=>new ae(o=>{let s=i.build();if(s.open(e.method,e.urlWithParams),e.withCredentials&&(s.withCredentials=!0),e.headers.forEach((x,P)=>s.setRequestHeader(x,P.join(","))),e.headers.has(W1)||s.setRequestHeader(W1,uB),!e.headers.has(Y1)){let x=e.detectContentTypeHeader();x!==null&&s.setRequestHeader(Y1,x)}if(e.responseType){let x=e.responseType.toLowerCase();s.responseType=x!=="json"?x:"text"}let a=e.serializeBody(),l=null,c=()=>{if(l!==null)return l;let x=s.statusText||"OK",P=new Uo(s.getAllResponseHeaders()),F=yB(s)||e.url;return l=new lp({headers:P,status:s.status,statusText:x,url:F}),l},u=()=>{let{headers:x,status:P,statusText:F,url:K}=c(),ne=null;P!==fB&&(ne=typeof s.response>"u"?s.responseText:s.response),P===0&&(P=ne?dB:0);let Ue=P>=200&&P<300;if(e.responseType==="json"&&typeof ne=="string"){let nn=ne;ne=ne.replace(gB,"");try{ne=ne!==""?JSON.parse(ne):null}catch(Rn){ne=nn,Ue&&(Ue=!1,ne={error:Rn,text:ne})}}Ue?(o.next(new Tu({body:ne,headers:x,status:P,statusText:F,url:K||void 0})),o.complete()):o.error(new Eu({error:ne,headers:x,status:P,statusText:F,url:K||void 0}))},p=x=>{let{url:P}=c(),F=new Eu({error:x,status:s.status||0,statusText:s.statusText||"Unknown Error",url:P||void 0});o.error(F)},v=!1,_=x=>{v||(o.next(c()),v=!0);let P={type:Gs.DownloadProgress,loaded:x.loaded};x.lengthComputable&&(P.total=x.total),e.responseType==="text"&&s.responseText&&(P.partialText=s.responseText),o.next(P)},M=x=>{let P={type:Gs.UploadProgress,loaded:x.loaded};x.lengthComputable&&(P.total=x.total),o.next(P)};return s.addEventListener("load",u),s.addEventListener("error",p),s.addEventListener("timeout",p),s.addEventListener("abort",p),e.reportProgress&&(s.addEventListener("progress",_),a!==null&&s.upload&&s.upload.addEventListener("progress",M)),s.send(a),o.next({type:Gs.Sent}),()=>{s.removeEventListener("error",p),s.removeEventListener("abort",p),s.removeEventListener("load",u),s.removeEventListener("timeout",p),e.reportProgress&&(s.removeEventListener("progress",_),a!==null&&s.upload&&s.upload.removeEventListener("progress",M)),s.readyState!==s.DONE&&s.abort()}})))}static \u0275fac=function(i){return new(i||t)(j(Ys))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})(),J1=new $(""),vB="XSRF-TOKEN",bB=new $("",{providedIn:"root",factory:()=>vB}),CB="X-XSRF-TOKEN",wB=new $("",{providedIn:"root",factory:()=>CB}),xu=class{},DB=(()=>{class t{doc;platform;cookieName;lastCookieString="";lastToken=null;parseCount=0;constructor(e,i,r){this.doc=e,this.platform=i,this.cookieName=r}getToken(){if(this.platform==="server")return null;let e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=vu(e,this.cookieName),this.lastCookieString=e),this.lastToken}static \u0275fac=function(i){return new(i||t)(j(Pe),j(ti),j(bB))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})();function MB(t,n){let e=t.url.toLowerCase();if(!S(J1)||t.method==="GET"||t.method==="HEAD"||e.startsWith("http://")||e.startsWith("https://"))return n(t);let i=S(xu).getToken(),r=S(wB);return i!=null&&!t.headers.has(r)&&(t=t.clone({headers:t.headers.set(r,i)})),n(t)}var nb=function(t){return t[t.Interceptors=0]="Interceptors",t[t.LegacyInterceptors=1]="LegacyInterceptors",t[t.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",t[t.NoXsrfProtection=3]="NoXsrfProtection",t[t.JsonpSupport=4]="JsonpSupport",t[t.RequestsMadeViaParent=5]="RequestsMadeViaParent",t[t.Fetch=6]="Fetch",t}(nb||{});function SB(t,n){return{\u0275kind:t,\u0275providers:n}}function ib(...t){let n=[Yn,eb,cp,{provide:wl,useExisting:cp},{provide:Su,useFactory:()=>S(hB,{optional:!0})??S(eb)},{provide:tb,useValue:MB,multi:!0},{provide:J1,useValue:!0},{provide:xu,useClass:DB}];for(let e of t)n.push(...e.\u0275providers);return Ro(n)}function rb(t){return SB(nb.Interceptors,t.map(n=>({provide:tb,useValue:n,multi:!0})))}var X1=(()=>{class t{_doc;constructor(e){this._doc=e}getTitle(){return this._doc.title}setTitle(e){this._doc.title=e||""}static \u0275fac=function(i){return new(i||t)(j(Pe))};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var so=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:function(i){let r=null;return i?r=new(i||t):r=j(EB),r},providedIn:"root"})}return t})(),EB=(()=>{class t extends so{_doc;constructor(e){super(),this._doc=e}sanitize(e,i){if(i==null)return null;switch(e){case ni.NONE:return i;case ni.HTML:return no(i,"HTML")?Ki(i):r0(this._doc,String(i)).toString();case ni.STYLE:return no(i,"Style")?Ki(i):i;case ni.SCRIPT:if(no(i,"Script"))return Ki(i);throw new R(5200,!1);case ni.URL:return no(i,"URL")?Ki(i):kh(String(i));case ni.RESOURCE_URL:if(no(i,"ResourceURL"))return Ki(i);throw new R(5201,!1);default:throw new R(5202,!1)}}bypassSecurityTrustHtml(e){return $T(e)}bypassSecurityTrustStyle(e){return zT(e)}bypassSecurityTrustScript(e){return YT(e)}bypassSecurityTrustUrl(e){return WT(e)}bypassSecurityTrustResourceUrl(e){return GT(e)}static \u0275fac=function(i){return new(i||t)(j(Pe))};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var De="primary",Uu=Symbol("RouteTitle"),cb=class{params;constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){let e=this.params[n];return Array.isArray(e)?e[0]:e}return null}getAll(n){if(this.has(n)){let e=this.params[n];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}};function Ks(t){return new cb(t)}function ax(t,n,e){let i=e.path.split("/");if(i.length>t.length||e.pathMatch==="full"&&(n.hasChildren()||i.lengthi[o]===r)}else return t===n}function cx(t){return t.length>0?t[t.length-1]:null}function Yo(t){return G_(t)?t:Vo(t)?rt(Promise.resolve(t)):J(t)}var IB={exact:dx,subset:fx},ux={exact:kB,subset:AB,ignored:()=>!0};function ex(t,n,e){return IB[e.paths](t.root,n.root,e.matrixParams)&&ux[e.queryParams](t.queryParams,n.queryParams)&&!(e.fragment==="exact"&&t.fragment!==n.fragment)}function kB(t,n){return xr(t,n)}function dx(t,n,e){if(!qs(t.segments,n.segments)||!hp(t.segments,n.segments,e)||t.numberOfChildren!==n.numberOfChildren)return!1;for(let i in n.children)if(!t.children[i]||!dx(t.children[i],n.children[i],e))return!1;return!0}function AB(t,n){return Object.keys(n).length<=Object.keys(t).length&&Object.keys(n).every(e=>lx(t[e],n[e]))}function fx(t,n,e){return hx(t,n,n.segments,e)}function hx(t,n,e,i){if(t.segments.length>e.length){let r=t.segments.slice(0,e.length);return!(!qs(r,e)||n.hasChildren()||!hp(r,e,i))}else if(t.segments.length===e.length){if(!qs(t.segments,e)||!hp(t.segments,e,i))return!1;for(let r in n.children)if(!t.children[r]||!fx(t.children[r],n.children[r],i))return!1;return!0}else{let r=e.slice(0,t.segments.length),o=e.slice(t.segments.length);return!qs(t.segments,r)||!hp(t.segments,r,i)||!t.children[De]?!1:hx(t.children[De],n,o,i)}}function hp(t,n,e){return n.every((i,r)=>ux[e](t[r].parameters,i.parameters))}var kr=class{root;queryParams;fragment;_queryParamMap;constructor(n=new $e([],{}),e={},i=null){this.root=n,this.queryParams=e,this.fragment=i}get queryParamMap(){return this._queryParamMap??=Ks(this.queryParams),this._queryParamMap}toString(){return RB.serialize(this)}},$e=class{segments;children;parent=null;constructor(n,e){this.segments=n,this.children=e,Object.values(e).forEach(i=>i.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return pp(this)}},$o=class{path;parameters;_parameterMap;constructor(n,e){this.path=n,this.parameters=e}get parameterMap(){return this._parameterMap??=Ks(this.parameters),this._parameterMap}toString(){return mx(this)}};function PB(t,n){return qs(t,n)&&t.every((e,i)=>xr(e.parameters,n[i].parameters))}function qs(t,n){return t.length!==n.length?!1:t.every((e,i)=>e.path===n[i].path)}function OB(t,n){let e=[];return Object.entries(t.children).forEach(([i,r])=>{i===De&&(e=e.concat(n(r,i)))}),Object.entries(t.children).forEach(([i,r])=>{i!==De&&(e=e.concat(n(r,i)))}),e}var $u=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>new Zs,providedIn:"root"})}return t})(),Zs=class{parse(n){let e=new fb(n);return new kr(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(n){let e=`/${Iu(n.root,!0)}`,i=FB(n.queryParams),r=typeof n.fragment=="string"?`#${NB(n.fragment)}`:"";return`${e}${i}${r}`}},RB=new Zs;function pp(t){return t.segments.map(n=>mx(n)).join("/")}function Iu(t,n){if(!t.hasChildren())return pp(t);if(n){let e=t.children[De]?Iu(t.children[De],!1):"",i=[];return Object.entries(t.children).forEach(([r,o])=>{r!==De&&i.push(`${r}:${Iu(o,!1)}`)}),i.length>0?`${e}(${i.join("//")})`:e}else{let e=OB(t,(i,r)=>r===De?[Iu(t.children[De],!1)]:[`${r}:${Iu(i,!1)}`]);return Object.keys(t.children).length===1&&t.children[De]!=null?`${pp(t)}/${e[0]}`:`${pp(t)}/(${e.join("//")})`}}function px(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function dp(t){return px(t).replace(/%3B/gi,";")}function NB(t){return encodeURI(t)}function db(t){return px(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function mp(t){return decodeURIComponent(t)}function tx(t){return mp(t.replace(/\+/g,"%20"))}function mx(t){return`${db(t.path)}${LB(t.parameters)}`}function LB(t){return Object.entries(t).map(([n,e])=>`;${db(n)}=${db(e)}`).join("")}function FB(t){let n=Object.entries(t).map(([e,i])=>Array.isArray(i)?i.map(r=>`${dp(e)}=${dp(r)}`).join("&"):`${dp(e)}=${dp(i)}`).filter(e=>e);return n.length?`?${n.join("&")}`:""}var VB=/^[^\/()?;#]+/;function ob(t){let n=t.match(VB);return n?n[0]:""}var jB=/^[^\/()?;=#]+/;function HB(t){let n=t.match(jB);return n?n[0]:""}var BB=/^[^=?&#]+/;function UB(t){let n=t.match(BB);return n?n[0]:""}var $B=/^[^&#]+/;function zB(t){let n=t.match($B);return n?n[0]:""}var fb=class{url;remaining;constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new $e([],{}):new $e([],this.parseChildren())}parseQueryParams(){let 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("/");let n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let i={};return this.peekStartsWith("(")&&(i=this.parseParens(!1)),(n.length>0||Object.keys(e).length>0)&&(i[De]=new $e(n,e)),i}parseSegment(){let n=ob(this.remaining);if(n===""&&this.peekStartsWith(";"))throw new R(4009,!1);return this.capture(n),new $o(mp(n),this.parseMatrixParams())}parseMatrixParams(){let n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){let e=HB(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){let r=ob(this.remaining);r&&(i=r,this.capture(i))}n[mp(e)]=mp(i)}parseQueryParam(n){let e=UB(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){let s=zB(this.remaining);s&&(i=s,this.capture(i))}let r=tx(e),o=tx(i);if(n.hasOwnProperty(r)){let s=n[r];Array.isArray(s)||(s=[s],n[r]=s),s.push(o)}else n[r]=o}parseParens(n){let e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let i=ob(this.remaining),r=this.remaining[i.length];if(r!=="/"&&r!==")"&&r!==";")throw new R(4010,!1);let o;i.indexOf(":")>-1?(o=i.slice(0,i.indexOf(":")),this.capture(o),this.capture(":")):n&&(o=De);let s=this.parseChildren();e[o]=Object.keys(s).length===1?s[De]:new $e([],s),this.consumeOptional("//")}return e}peekStartsWith(n){return this.remaining.startsWith(n)}consumeOptional(n){return this.peekStartsWith(n)?(this.remaining=this.remaining.substring(n.length),!0):!1}capture(n){if(!this.consumeOptional(n))throw new R(4011,!1)}};function gx(t){return t.segments.length>0?new $e([],{[De]:t}):t}function _x(t){let n={};for(let[i,r]of Object.entries(t.children)){let o=_x(r);if(i===De&&o.segments.length===0&&o.hasChildren())for(let[s,a]of Object.entries(o.children))n[s]=a;else(o.segments.length>0||o.hasChildren())&&(n[i]=o)}let e=new $e(t.segments,n);return YB(e)}function YB(t){if(t.numberOfChildren===1&&t.children[De]){let n=t.children[De];return new $e(t.segments.concat(n.segments),n.children)}return t}function zo(t){return t instanceof kr}function yx(t,n,e=null,i=null){let r=vx(t);return bx(r,n,e,i)}function vx(t){let n;function e(o){let s={};for(let l of o.children){let c=e(l);s[l.outlet]=c}let a=new $e(o.url,s);return o===t&&(n=a),a}let i=e(t.root),r=gx(i);return n??r}function bx(t,n,e,i){let r=t;for(;r.parent;)r=r.parent;if(n.length===0)return sb(r,r,r,e,i);let o=WB(n);if(o.toRoot())return sb(r,r,new $e([],{}),e,i);let s=GB(o,r,t),a=s.processChildren?Au(s.segmentGroup,s.index,o.commands):wx(s.segmentGroup,s.index,o.commands);return sb(r,s.segmentGroup,a,e,i)}function _p(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function Ou(t){return typeof t=="object"&&t!=null&&t.outlets}function sb(t,n,e,i,r){let o={};i&&Object.entries(i).forEach(([l,c])=>{o[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`});let s;t===n?s=e:s=Cx(t,n,e);let a=gx(_x(s));return new kr(a,o,r)}function Cx(t,n,e){let i={};return Object.entries(t.children).forEach(([r,o])=>{o===n?i[r]=e:i[r]=Cx(o,n,e)}),new $e(t.segments,i)}var yp=class{isAbsolute;numberOfDoubleDots;commands;constructor(n,e,i){if(this.isAbsolute=n,this.numberOfDoubleDots=e,this.commands=i,n&&i.length>0&&_p(i[0]))throw new R(4003,!1);let r=i.find(Ou);if(r&&r!==cx(i))throw new R(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function WB(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new yp(!0,0,t);let n=0,e=!1,i=t.reduce((r,o,s)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let a={};return Object.entries(o.outlets).forEach(([l,c])=>{a[l]=typeof c=="string"?c.split("/"):c}),[...r,{outlets:a}]}if(o.segmentPath)return[...r,o.segmentPath]}return typeof o!="string"?[...r,o]:s===0?(o.split("/").forEach((a,l)=>{l==0&&a==="."||(l==0&&a===""?e=!0:a===".."?n++:a!=""&&r.push(a))}),r):[...r,o]},[]);return new yp(e,n,i)}var Tl=class{segmentGroup;processChildren;index;constructor(n,e,i){this.segmentGroup=n,this.processChildren=e,this.index=i}};function GB(t,n,e){if(t.isAbsolute)return new Tl(n,!0,0);if(!e)return new Tl(n,!1,NaN);if(e.parent===null)return new Tl(e,!0,0);let i=_p(t.commands[0])?0:1,r=e.segments.length-1+i;return qB(e,r,t.numberOfDoubleDots)}function qB(t,n,e){let i=t,r=n,o=e;for(;o>r;){if(o-=r,i=i.parent,!i)throw new R(4005,!1);r=i.segments.length}return new Tl(i,!1,r-o)}function QB(t){return Ou(t[0])?t[0].outlets:{[De]:t}}function wx(t,n,e){if(t??=new $e([],{}),t.segments.length===0&&t.hasChildren())return Au(t,n,e);let i=KB(t,n,e),r=e.slice(i.commandIndex);if(i.match&&i.pathIndexo!==De)&&t.children[De]&&t.numberOfChildren===1&&t.children[De].segments.length===0){let o=Au(t.children[De],n,e);return new $e(t.segments,o.children)}return Object.entries(i).forEach(([o,s])=>{typeof s=="string"&&(s=[s]),s!==null&&(r[o]=wx(t.children[o],n,s))}),Object.entries(t.children).forEach(([o,s])=>{i[o]===void 0&&(r[o]=s)}),new $e(t.segments,r)}}function KB(t,n,e){let i=0,r=n,o={match:!1,pathIndex:0,commandIndex:0};for(;r=e.length)return o;let s=t.segments[r],a=e[i];if(Ou(a))break;let l=`${a}`,c=i0&&l===void 0)break;if(l&&c&&typeof c=="object"&&c.outlets===void 0){if(!ix(l,c,s))return o;i+=2}else{if(!ix(l,{},s))return o;i++}r++}return{match:!0,pathIndex:r,commandIndex:i}}function hb(t,n,e){let i=t.segments.slice(0,n),r=0;for(;r{typeof i=="string"&&(i=[i]),i!==null&&(n[e]=hb(new $e([],{}),0,i))}),n}function nx(t){let n={};return Object.entries(t).forEach(([e,i])=>n[e]=`${i}`),n}function ix(t,n,e){return t==e.path&&xr(n,e.parameters)}var gp="imperative",an=function(t){return t[t.NavigationStart=0]="NavigationStart",t[t.NavigationEnd=1]="NavigationEnd",t[t.NavigationCancel=2]="NavigationCancel",t[t.NavigationError=3]="NavigationError",t[t.RoutesRecognized=4]="RoutesRecognized",t[t.ResolveStart=5]="ResolveStart",t[t.ResolveEnd=6]="ResolveEnd",t[t.GuardsCheckStart=7]="GuardsCheckStart",t[t.GuardsCheckEnd=8]="GuardsCheckEnd",t[t.RouteConfigLoadStart=9]="RouteConfigLoadStart",t[t.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",t[t.ChildActivationStart=11]="ChildActivationStart",t[t.ChildActivationEnd=12]="ChildActivationEnd",t[t.ActivationStart=13]="ActivationStart",t[t.ActivationEnd=14]="ActivationEnd",t[t.Scroll=15]="Scroll",t[t.NavigationSkipped=16]="NavigationSkipped",t}(an||{}),si=class{id;url;constructor(n,e){this.id=n,this.url=e}},Js=class extends si{type=an.NavigationStart;navigationTrigger;restoredState;constructor(n,e,i="imperative",r=null){super(n,e),this.navigationTrigger=i,this.restoredState=r}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},Ar=class extends si{urlAfterRedirects;type=an.NavigationEnd;constructor(n,e,i){super(n,e),this.urlAfterRedirects=i}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},Wn=function(t){return t[t.Redirect=0]="Redirect",t[t.SupersededByNewNavigation=1]="SupersededByNewNavigation",t[t.NoDataFromResolver=2]="NoDataFromResolver",t[t.GuardRejected=3]="GuardRejected",t}(Wn||{}),Ru=function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t}(Ru||{}),Ir=class extends si{reason;code;type=an.NavigationCancel;constructor(n,e,i,r){super(n,e),this.reason=i,this.code=r}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},ao=class extends si{reason;code;type=an.NavigationSkipped;constructor(n,e,i,r){super(n,e),this.reason=i,this.code=r}},xl=class extends si{error;target;type=an.NavigationError;constructor(n,e,i,r){super(n,e),this.error=i,this.target=r}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},Nu=class extends si{urlAfterRedirects;state;type=an.RoutesRecognized;constructor(n,e,i,r){super(n,e),this.urlAfterRedirects=i,this.state=r}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},vp=class extends si{urlAfterRedirects;state;type=an.GuardsCheckStart;constructor(n,e,i,r){super(n,e),this.urlAfterRedirects=i,this.state=r}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},bp=class extends si{urlAfterRedirects;state;shouldActivate;type=an.GuardsCheckEnd;constructor(n,e,i,r,o){super(n,e),this.urlAfterRedirects=i,this.state=r,this.shouldActivate=o}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},Cp=class extends si{urlAfterRedirects;state;type=an.ResolveStart;constructor(n,e,i,r){super(n,e),this.urlAfterRedirects=i,this.state=r}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},wp=class extends si{urlAfterRedirects;state;type=an.ResolveEnd;constructor(n,e,i,r){super(n,e),this.urlAfterRedirects=i,this.state=r}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Dp=class{route;type=an.RouteConfigLoadStart;constructor(n){this.route=n}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},Mp=class{route;type=an.RouteConfigLoadEnd;constructor(n){this.route=n}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},Sp=class{snapshot;type=an.ChildActivationStart;constructor(n){this.snapshot=n}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Tp=class{snapshot;type=an.ChildActivationEnd;constructor(n){this.snapshot=n}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Ep=class{snapshot;type=an.ActivationStart;constructor(n){this.snapshot=n}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},xp=class{snapshot;type=an.ActivationEnd;constructor(n){this.snapshot=n}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var Lu=class{},Il=class{url;navigationBehaviorOptions;constructor(n,e){this.url=n,this.navigationBehaviorOptions=e}};function JB(t,n){return t.providers&&!t._injector&&(t._injector=jh(t.providers,n,`Route: ${t.path}`)),t._injector??n}function tr(t){return t.outlet||De}function XB(t,n){let e=t.filter(i=>tr(i)===n);return e.push(...t.filter(i=>tr(i)!==n)),e}function zu(t){if(!t)return null;if(t.routeConfig?._injector)return t.routeConfig._injector;for(let n=t.parent;n;n=n.parent){let e=n.routeConfig;if(e?._loadedInjector)return e._loadedInjector;if(e?._injector)return e._injector}return null}var Ip=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return zu(this.route?.snapshot)??this.rootInjector}constructor(n){this.rootInjector=n,this.children=new Pl(this.rootInjector)}},Pl=(()=>{class t{rootInjector;contexts=new Map;constructor(e){this.rootInjector=e}onChildOutletCreated(e,i){let r=this.getOrCreateContext(e);r.outlet=i,this.contexts.set(e,r)}onChildOutletDestroyed(e){let i=this.getContext(e);i&&(i.outlet=null,i.attachRef=null)}onOutletDeactivated(){let e=this.contexts;return this.contexts=new Map,e}onOutletReAttached(e){this.contexts=e}getOrCreateContext(e){let i=this.getContext(e);return i||(i=new Ip(this.rootInjector),this.contexts.set(e,i)),i}getContext(e){return this.contexts.get(e)||null}static \u0275fac=function(i){return new(i||t)(j(In))};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),kp=class{_root;constructor(n){this._root=n}get root(){return this._root.value}parent(n){let e=this.pathFromRoot(n);return e.length>1?e[e.length-2]:null}children(n){let e=pb(n,this._root);return e?e.children.map(i=>i.value):[]}firstChild(n){let e=pb(n,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(n){let e=mb(n,this._root);return e.length<2?[]:e[e.length-2].children.map(r=>r.value).filter(r=>r!==n)}pathFromRoot(n){return mb(n,this._root).map(e=>e.value)}};function pb(t,n){if(t===n.value)return n;for(let e of n.children){let i=pb(t,e);if(i)return i}return null}function mb(t,n){if(t===n.value)return[n];for(let e of n.children){let i=mb(t,e);if(i.length)return i.unshift(n),i}return[]}var oi=class{value;children;constructor(n,e){this.value=n,this.children=e}toString(){return`TreeNode(${this.value})`}};function Sl(t){let n={};return t&&t.children.forEach(e=>n[e.value.outlet]=e),n}var Fu=class extends kp{snapshot;constructor(n,e){super(n),this.snapshot=e,Db(this,n)}toString(){return this.snapshot.toString()}};function Dx(t){let n=e3(t),e=new Ve([new $o("",{})]),i=new Ve({}),r=new Ve({}),o=new Ve({}),s=new Ve(""),a=new nr(e,i,o,s,r,De,t,n.root);return a.snapshot=n.root,new Fu(new oi(a,[]),n)}function e3(t){let n={},e={},i={},r="",o=new Qs([],n,i,r,e,De,t,null,{});return new Vu("",new oi(o,[]))}var nr=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;constructor(n,e,i,r,o,s,a,l){this.urlSubject=n,this.paramsSubject=e,this.queryParamsSubject=i,this.fragmentSubject=r,this.dataSubject=o,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(q(c=>c[Uu]))??J(void 0),this.url=n,this.params=e,this.queryParams=i,this.fragment=r,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(q(n=>Ks(n))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(q(n=>Ks(n))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function Ap(t,n,e="emptyOnly"){let i,{routeConfig:r}=t;return n!==null&&(e==="always"||r?.path===""||!n.component&&!n.routeConfig?.loadComponent)?i={params:E(E({},n.params),t.params),data:E(E({},n.data),t.data),resolve:E(E(E(E({},t.data),n.data),r?.data),t._resolvedData)}:i={params:E({},t.params),data:E({},t.data),resolve:E(E({},t.data),t._resolvedData??{})},r&&Sx(r)&&(i.resolve[Uu]=r.title),i}var Qs=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;get title(){return this.data?.[Uu]}constructor(n,e,i,r,o,s,a,l,c){this.url=n,this.params=e,this.queryParams=i,this.fragment=r,this.data=o,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??=Ks(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=Ks(this.queryParams),this._queryParamMap}toString(){let n=this.url.map(i=>i.toString()).join("/"),e=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${n}', path:'${e}')`}},Vu=class extends kp{url;constructor(n,e){super(e),this.url=n,Db(this,e)}toString(){return Mx(this._root)}};function Db(t,n){n.value._routerState=t,n.children.forEach(e=>Db(t,e))}function Mx(t){let n=t.children.length>0?` { ${t.children.map(Mx).join(", ")} } `:"";return`${t.value}${n}`}function ab(t){if(t.snapshot){let n=t.snapshot,e=t._futureSnapshot;t.snapshot=e,xr(n.queryParams,e.queryParams)||t.queryParamsSubject.next(e.queryParams),n.fragment!==e.fragment&&t.fragmentSubject.next(e.fragment),xr(n.params,e.params)||t.paramsSubject.next(e.params),xB(n.url,e.url)||t.urlSubject.next(e.url),xr(n.data,e.data)||t.dataSubject.next(e.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function gb(t,n){let e=xr(t.params,n.params)&&PB(t.url,n.url),i=!t.parent!=!n.parent;return e&&!i&&(!t.parent||gb(t.parent,n.parent))}function Sx(t){return typeof t.title=="string"||t.title===null}var Tx=new $(""),Yu=(()=>{class t{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=De;activateEvents=new O;deactivateEvents=new O;attachEvents=new O;detachEvents=new O;routerOutletData=un(void 0);parentContexts=S(Pl);location=S(_t);changeDetector=S(ct);inputBinder=S(Np,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(e){if(e.name){let{firstChange:i,previousValue:r}=e.name;if(i)return;this.isTrackedInParentContexts(r)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(r)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(e){return this.parentContexts.getContext(e)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let e=this.parentContexts.getContext(this.name);e?.route&&(e.attachRef?this.attach(e.attachRef,e.route):this.activateWith(e.route,e.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new R(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new R(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new R(4012,!1);this.location.detach();let e=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(e.instance),e}attach(e,i){this.activated=e,this._activatedRoute=i,this.location.insert(e.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(e.instance)}deactivate(){if(this.activated){let e=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(e)}}activateWith(e,i){if(this.isActivated)throw new R(4013,!1);this._activatedRoute=e;let r=this.location,s=e.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,l=new _b(e,a,r.injector,this.routerOutletData);this.activated=r.createComponent(s,{index:r.length,injector:l,environmentInjector:i}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=U({type:t,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[Se]})}return t})(),_b=class{route;childContexts;parent;outletData;constructor(n,e,i,r){this.route=n,this.childContexts=e,this.parent=i,this.outletData=r}get(n,e){return n===nr?this.route:n===Pl?this.childContexts:n===Tx?this.outletData:this.parent.get(n,e)}},Np=new $("");function t3(t,n,e){let i=ju(t,n._root,e?e._root:void 0);return new Fu(i,n)}function ju(t,n,e){if(e&&t.shouldReuseRoute(n.value,e.value.snapshot)){let i=e.value;i._futureSnapshot=n.value;let r=n3(t,n,e);return new oi(i,r)}else{if(t.shouldAttach(n.value)){let o=t.retrieve(n.value);if(o!==null){let s=o.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>ju(t,a)),s}}let i=i3(n.value),r=n.children.map(o=>ju(t,o));return new oi(i,r)}}function n3(t,n,e){return n.children.map(i=>{for(let r of e.children)if(t.shouldReuseRoute(i.value,r.value.snapshot))return ju(t,i,r);return ju(t,i)})}function i3(t){return new nr(new Ve(t.url),new Ve(t.params),new Ve(t.queryParams),new Ve(t.fragment),new Ve(t.data),t.outlet,t.component,t)}var kl=class{redirectTo;navigationBehaviorOptions;constructor(n,e){this.redirectTo=n,this.navigationBehaviorOptions=e}},Ex="ngNavigationCancelingError";function Pp(t,n){let{redirectTo:e,navigationBehaviorOptions:i}=zo(n)?{redirectTo:n,navigationBehaviorOptions:void 0}:n,r=xx(!1,Wn.Redirect);return r.url=e,r.navigationBehaviorOptions=i,r}function xx(t,n){let e=new Error(`NavigationCancelingError: ${t||""}`);return e[Ex]=!0,e.cancellationCode=n,e}function r3(t){return Ix(t)&&zo(t.url)}function Ix(t){return!!t&&t[Ex]}var o3=(t,n,e,i)=>q(r=>(new yb(n,r.targetRouterState,r.currentRouterState,e,i).activate(t),r)),yb=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(n,e,i,r,o){this.routeReuseStrategy=n,this.futureState=e,this.currState=i,this.forwardEvent=r,this.inputBindingEnabled=o}activate(n){let e=this.futureState._root,i=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,i,n),ab(this.futureState.root),this.activateChildRoutes(e,i,n)}deactivateChildRoutes(n,e,i){let r=Sl(e);n.children.forEach(o=>{let s=o.value.outlet;this.deactivateRoutes(o,r[s],i),delete r[s]}),Object.values(r).forEach(o=>{this.deactivateRouteAndItsChildren(o,i)})}deactivateRoutes(n,e,i){let r=n.value,o=e?e.value:null;if(r===o)if(r.component){let s=i.getContext(r.outlet);s&&this.deactivateChildRoutes(n,e,s.children)}else this.deactivateChildRoutes(n,e,i);else o&&this.deactivateRouteAndItsChildren(e,i)}deactivateRouteAndItsChildren(n,e){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,e):this.deactivateRouteAndOutlet(n,e)}detachAndStoreRouteSubtree(n,e){let i=e.getContext(n.value.outlet),r=i&&n.value.component?i.children:e,o=Sl(n);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,r);if(i&&i.outlet){let s=i.outlet.detach(),a=i.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,e){let i=e.getContext(n.value.outlet),r=i&&n.value.component?i.children:e,o=Sl(n);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,r);i&&(i.outlet&&(i.outlet.deactivate(),i.children.onOutletDeactivated()),i.attachRef=null,i.route=null)}activateChildRoutes(n,e,i){let r=Sl(e);n.children.forEach(o=>{this.activateRoutes(o,r[o.value.outlet],i),this.forwardEvent(new xp(o.value.snapshot))}),n.children.length&&this.forwardEvent(new Tp(n.value.snapshot))}activateRoutes(n,e,i){let r=n.value,o=e?e.value:null;if(ab(r),r===o)if(r.component){let s=i.getOrCreateContext(r.outlet);this.activateChildRoutes(n,e,s.children)}else this.activateChildRoutes(n,e,i);else if(r.component){let s=i.getOrCreateContext(r.outlet);if(this.routeReuseStrategy.shouldAttach(r.snapshot)){let a=this.routeReuseStrategy.retrieve(r.snapshot);this.routeReuseStrategy.store(r.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),ab(a.route.value),this.activateChildRoutes(n,null,s.children)}else s.attachRef=null,s.route=r,s.outlet&&s.outlet.activateWith(r,s.injector),this.activateChildRoutes(n,null,s.children)}else this.activateChildRoutes(n,null,i)}},Op=class{path;route;constructor(n){this.path=n,this.route=this.path[this.path.length-1]}},El=class{component;route;constructor(n,e){this.component=n,this.route=e}};function s3(t,n,e){let i=t._root,r=n?n._root:null;return ku(i,r,e,[i.value])}function a3(t){let n=t.routeConfig?t.routeConfig.canActivateChild:null;return!n||n.length===0?null:{node:t,guards:n}}function Ol(t,n){let e=Symbol(),i=n.get(t,e);return i===e?typeof t=="function"&&!IS(t)?t:n.get(t):i}function ku(t,n,e,i,r={canDeactivateChecks:[],canActivateChecks:[]}){let o=Sl(n);return t.children.forEach(s=>{l3(s,o[s.value.outlet],e,i.concat([s.value]),r),delete o[s.value.outlet]}),Object.entries(o).forEach(([s,a])=>Pu(a,e.getContext(s),r)),r}function l3(t,n,e,i,r={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,s=n?n.value:null,a=e?e.getContext(t.value.outlet):null;if(s&&o.routeConfig===s.routeConfig){let l=c3(s,o,o.routeConfig.runGuardsAndResolvers);l?r.canActivateChecks.push(new Op(i)):(o.data=s.data,o._resolvedData=s._resolvedData),o.component?ku(t,n,a?a.children:null,i,r):ku(t,n,e,i,r),l&&a&&a.outlet&&a.outlet.isActivated&&r.canDeactivateChecks.push(new El(a.outlet.component,s))}else s&&Pu(n,a,r),r.canActivateChecks.push(new Op(i)),o.component?ku(t,null,a?a.children:null,i,r):ku(t,null,e,i,r);return r}function c3(t,n,e){if(typeof e=="function")return e(t,n);switch(e){case"pathParamsChange":return!qs(t.url,n.url);case"pathParamsOrQueryParamsChange":return!qs(t.url,n.url)||!xr(t.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!gb(t,n)||!xr(t.queryParams,n.queryParams);case"paramsChange":default:return!gb(t,n)}}function Pu(t,n,e){let i=Sl(t),r=t.value;Object.entries(i).forEach(([o,s])=>{r.component?n?Pu(s,n.children.getContext(o),e):Pu(s,null,e):Pu(s,n,e)}),r.component?n&&n.outlet&&n.outlet.isActivated?e.canDeactivateChecks.push(new El(n.outlet.component,r)):e.canDeactivateChecks.push(new El(null,r)):e.canDeactivateChecks.push(new El(null,r))}function Wu(t){return typeof t=="function"}function u3(t){return typeof t=="boolean"}function d3(t){return t&&Wu(t.canLoad)}function f3(t){return t&&Wu(t.canActivate)}function h3(t){return t&&Wu(t.canActivateChild)}function p3(t){return t&&Wu(t.canDeactivate)}function m3(t){return t&&Wu(t.canMatch)}function kx(t){return t instanceof zi||t?.name==="EmptyError"}var fp=Symbol("INITIAL_VALUE");function Al(){return St(t=>Eo(t.map(n=>n.pipe(Mt(1),Es(fp)))).pipe(q(n=>{for(let e of n)if(e!==!0){if(e===fp)return fp;if(e===!1||g3(e))return e}return!0}),he(n=>n!==fp),Mt(1)))}function g3(t){return zo(t)||t instanceof kl}function _3(t,n){return Ze(e=>{let{targetSnapshot:i,currentSnapshot:r,guards:{canActivateChecks:o,canDeactivateChecks:s}}=e;return s.length===0&&o.length===0?J(G(E({},e),{guardsResult:!0})):y3(s,i,r,t).pipe(Ze(a=>a&&u3(a)?v3(i,o,t,n):J(a)),q(a=>G(E({},e),{guardsResult:a})))})}function y3(t,n,e,i){return rt(t).pipe(Ze(r=>M3(r.component,r.route,e,n,i)),Kr(r=>r!==!0,!0))}function v3(t,n,e,i){return rt(n).pipe(Io(r=>xo(C3(r.route.parent,i),b3(r.route,i),D3(t,r.path,e),w3(t,r.route,e))),Kr(r=>r!==!0,!0))}function b3(t,n){return t!==null&&n&&n(new Ep(t)),J(!0)}function C3(t,n){return t!==null&&n&&n(new Sp(t)),J(!0)}function w3(t,n,e){let i=n.routeConfig?n.routeConfig.canActivate:null;if(!i||i.length===0)return J(!0);let r=i.map(o=>Of(()=>{let s=zu(n)??e,a=Ol(o,s),l=f3(a)?a.canActivate(n,t):ei(s,()=>a(n,t));return Yo(l).pipe(Kr())}));return J(r).pipe(Al())}function D3(t,n,e){let i=n[n.length-1],o=n.slice(0,n.length-1).reverse().map(s=>a3(s)).filter(s=>s!==null).map(s=>Of(()=>{let a=s.guards.map(l=>{let c=zu(s.node)??e,u=Ol(l,c),p=h3(u)?u.canActivateChild(i,t):ei(c,()=>u(i,t));return Yo(p).pipe(Kr())});return J(a).pipe(Al())}));return J(o).pipe(Al())}function M3(t,n,e,i,r){let o=n&&n.routeConfig?n.routeConfig.canDeactivate:null;if(!o||o.length===0)return J(!0);let s=o.map(a=>{let l=zu(n)??r,c=Ol(a,l),u=p3(c)?c.canDeactivate(t,n,e,i):ei(l,()=>c(t,n,e,i));return Yo(u).pipe(Kr())});return J(s).pipe(Al())}function S3(t,n,e,i){let r=n.canLoad;if(r===void 0||r.length===0)return J(!0);let o=r.map(s=>{let a=Ol(s,t),l=d3(a)?a.canLoad(n,e):ei(t,()=>a(n,e));return Yo(l)});return J(o).pipe(Al(),Ax(i))}function Ax(t){return j_(pt(n=>{if(typeof n!="boolean")throw Pp(t,n)}),q(n=>n===!0))}function T3(t,n,e,i){let r=n.canMatch;if(!r||r.length===0)return J(!0);let o=r.map(s=>{let a=Ol(s,t),l=m3(a)?a.canMatch(n,e):ei(t,()=>a(n,e));return Yo(l)});return J(o).pipe(Al(),Ax(i))}var Hu=class{segmentGroup;constructor(n){this.segmentGroup=n||null}},Bu=class extends Error{urlTree;constructor(n){super(),this.urlTree=n}};function Ml(t){return za(new Hu(t))}function E3(t){return za(new R(4e3,!1))}function x3(t){return za(xx(!1,Wn.GuardRejected))}var vb=class{urlSerializer;urlTree;constructor(n,e){this.urlSerializer=n,this.urlTree=e}lineralizeSegments(n,e){let i=[],r=e.root;for(;;){if(i=i.concat(r.segments),r.numberOfChildren===0)return J(i);if(r.numberOfChildren>1||!r.children[De])return E3(`${n.redirectTo}`);r=r.children[De]}}applyRedirectCommands(n,e,i,r,o){if(typeof e!="string"){let a=e,{queryParams:l,fragment:c,routeConfig:u,url:p,outlet:v,params:_,data:M,title:x}=r,P=ei(o,()=>a({params:_,data:M,queryParams:l,fragment:c,routeConfig:u,url:p,outlet:v,title:x}));if(P instanceof kr)throw new Bu(P);e=P}let s=this.applyRedirectCreateUrlTree(e,this.urlSerializer.parse(e),n,i);if(e[0]==="/")throw new Bu(s);return s}applyRedirectCreateUrlTree(n,e,i,r){let o=this.createSegmentGroup(n,e.root,i,r);return new kr(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(n,e){let i={};return Object.entries(n).forEach(([r,o])=>{if(typeof o=="string"&&o[0]===":"){let a=o.substring(1);i[r]=e[a]}else i[r]=o}),i}createSegmentGroup(n,e,i,r){let o=this.createSegments(n,e.segments,i,r),s={};return Object.entries(e.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(n,l,i,r)}),new $e(o,s)}createSegments(n,e,i,r){return e.map(o=>o.path[0]===":"?this.findPosParam(n,o,r):this.findOrReturn(o,i))}findPosParam(n,e,i){let r=i[e.path.substring(1)];if(!r)throw new R(4001,!1);return r}findOrReturn(n,e){let i=0;for(let r of e){if(r.path===n.path)return e.splice(i),r;i++}return n}},bb={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function I3(t,n,e,i,r){let o=Px(t,n,e);return o.matched?(i=JB(n,i),T3(i,n,e,r).pipe(q(s=>s===!0?o:E({},bb)))):J(o)}function Px(t,n,e){if(n.path==="**")return k3(e);if(n.path==="")return n.pathMatch==="full"&&(t.hasChildren()||e.length>0)?E({},bb):{matched:!0,consumedSegments:[],remainingSegments:e,parameters:{},positionalParamSegments:{}};let r=(n.matcher||ax)(e,t,n);if(!r)return E({},bb);let o={};Object.entries(r.posParams??{}).forEach(([a,l])=>{o[a]=l.path});let s=r.consumed.length>0?E(E({},o),r.consumed[r.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:r.consumed,remainingSegments:e.slice(r.consumed.length),parameters:s,positionalParamSegments:r.posParams??{}}}function k3(t){return{matched:!0,parameters:t.length>0?cx(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function rx(t,n,e,i){return e.length>0&&O3(t,e,i)?{segmentGroup:new $e(n,P3(i,new $e(e,t.children))),slicedSegments:[]}:e.length===0&&R3(t,e,i)?{segmentGroup:new $e(t.segments,A3(t,e,i,t.children)),slicedSegments:e}:{segmentGroup:new $e(t.segments,t.children),slicedSegments:e}}function A3(t,n,e,i){let r={};for(let o of e)if(Lp(t,n,o)&&!i[tr(o)]){let s=new $e([],{});r[tr(o)]=s}return E(E({},i),r)}function P3(t,n){let e={};e[De]=n;for(let i of t)if(i.path===""&&tr(i)!==De){let r=new $e([],{});e[tr(i)]=r}return e}function O3(t,n,e){return e.some(i=>Lp(t,n,i)&&tr(i)!==De)}function R3(t,n,e){return e.some(i=>Lp(t,n,i))}function Lp(t,n,e){return(t.hasChildren()||n.length>0)&&e.pathMatch==="full"?!1:e.path===""}function N3(t,n,e){return n.length===0&&!t.children[e]}var Cb=class{};function L3(t,n,e,i,r,o,s="emptyOnly"){return new wb(t,n,e,i,r,s,o).recognize()}var F3=31,wb=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(n,e,i,r,o,s,a){this.injector=n,this.configLoader=e,this.rootComponentType=i,this.config=r,this.urlTree=o,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new vb(this.urlSerializer,this.urlTree)}noMatchError(n){return new R(4002,`'${n.segmentGroup}'`)}recognize(){let n=rx(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(n).pipe(q(({children:e,rootSnapshot:i})=>{let r=new oi(i,e),o=new Vu("",r),s=yx(i,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(s),{state:o,tree:s}}))}match(n){let e=new Qs([],Object.freeze({}),Object.freeze(E({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),De,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,n,De,e).pipe(q(i=>({children:i,rootSnapshot:e})),Yi(i=>{if(i instanceof Bu)return this.urlTree=i.urlTree,this.match(i.urlTree.root);throw i instanceof Hu?this.noMatchError(i):i}))}processSegmentGroup(n,e,i,r,o){return i.segments.length===0&&i.hasChildren()?this.processChildren(n,e,i,o):this.processSegment(n,e,i,i.segments,r,!0,o).pipe(q(s=>s instanceof oi?[s]:[]))}processChildren(n,e,i,r){let o=[];for(let s of Object.keys(i.children))s==="primary"?o.unshift(s):o.push(s);return rt(o).pipe(Io(s=>{let a=i.children[s],l=XB(e,s);return this.processSegmentGroup(n,l,a,s,r)}),Uc((s,a)=>(s.push(...a),s)),ko(null),K_(),Ze(s=>{if(s===null)return Ml(i);let a=Ox(s);return V3(a),J(a)}))}processSegment(n,e,i,r,o,s,a){return rt(e).pipe(Io(l=>this.processSegmentAgainstRoute(l._injector??n,e,l,i,r,o,s,a).pipe(Yi(c=>{if(c instanceof Hu)return J(null);throw c}))),Kr(l=>!!l),Yi(l=>{if(kx(l))return N3(i,r,o)?J(new Cb):Ml(i);throw l}))}processSegmentAgainstRoute(n,e,i,r,o,s,a,l){return tr(i)!==s&&(s===De||!Lp(r,o,i))?Ml(r):i.redirectTo===void 0?this.matchSegmentAgainstRoute(n,r,i,o,s,l):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(n,r,e,i,o,s,l):Ml(r)}expandSegmentAgainstRouteUsingRedirect(n,e,i,r,o,s,a){let{matched:l,parameters:c,consumedSegments:u,positionalParamSegments:p,remainingSegments:v}=Px(e,r,o);if(!l)return Ml(e);typeof r.redirectTo=="string"&&r.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>F3&&(this.allowRedirects=!1));let _=new Qs(o,c,Object.freeze(E({},this.urlTree.queryParams)),this.urlTree.fragment,ox(r),tr(r),r.component??r._loadedComponent??null,r,sx(r)),M=Ap(_,a,this.paramsInheritanceStrategy);_.params=Object.freeze(M.params),_.data=Object.freeze(M.data);let x=this.applyRedirects.applyRedirectCommands(u,r.redirectTo,p,_,n);return this.applyRedirects.lineralizeSegments(r,x).pipe(Ze(P=>this.processSegment(n,i,e,P.concat(v),s,!1,a)))}matchSegmentAgainstRoute(n,e,i,r,o,s){let a=I3(e,i,r,n,this.urlSerializer);return i.path==="**"&&(e.children={}),a.pipe(St(l=>l.matched?(n=i._injector??n,this.getChildConfig(n,i,r).pipe(St(({routes:c})=>{let u=i._loadedInjector??n,{parameters:p,consumedSegments:v,remainingSegments:_}=l,M=new Qs(v,p,Object.freeze(E({},this.urlTree.queryParams)),this.urlTree.fragment,ox(i),tr(i),i.component??i._loadedComponent??null,i,sx(i)),x=Ap(M,s,this.paramsInheritanceStrategy);M.params=Object.freeze(x.params),M.data=Object.freeze(x.data);let{segmentGroup:P,slicedSegments:F}=rx(e,v,_,c);if(F.length===0&&P.hasChildren())return this.processChildren(u,c,P,M).pipe(q(ne=>new oi(M,ne)));if(c.length===0&&F.length===0)return J(new oi(M,[]));let K=tr(i)===o;return this.processSegment(u,c,P,F,K?De:o,!0,M).pipe(q(ne=>new oi(M,ne instanceof oi?[ne]:[])))}))):Ml(e)))}getChildConfig(n,e,i){return e.children?J({routes:e.children,injector:n}):e.loadChildren?e._loadedRoutes!==void 0?J({routes:e._loadedRoutes,injector:e._loadedInjector}):S3(n,e,i,this.urlSerializer).pipe(Ze(r=>r?this.configLoader.loadChildren(n,e).pipe(pt(o=>{e._loadedRoutes=o.routes,e._loadedInjector=o.injector})):x3(e))):J({routes:[],injector:n})}};function V3(t){t.sort((n,e)=>n.value.outlet===De?-1:e.value.outlet===De?1:n.value.outlet.localeCompare(e.value.outlet))}function j3(t){let n=t.value.routeConfig;return n&&n.path===""}function Ox(t){let n=[],e=new Set;for(let i of t){if(!j3(i)){n.push(i);continue}let r=n.find(o=>i.value.routeConfig===o.value.routeConfig);r!==void 0?(r.children.push(...i.children),e.add(r)):n.push(i)}for(let i of e){let r=Ox(i.children);n.push(new oi(i.value,r))}return n.filter(i=>!e.has(i))}function ox(t){return t.data||{}}function sx(t){return t.resolve||{}}function H3(t,n,e,i,r,o){return Ze(s=>L3(t,n,e,i,s.extractedUrl,r,o).pipe(q(({state:a,tree:l})=>G(E({},s),{targetSnapshot:a,urlAfterRedirects:l}))))}function B3(t,n){return Ze(e=>{let{targetSnapshot:i,guards:{canActivateChecks:r}}=e;if(!r.length)return J(e);let o=new Set(r.map(l=>l.route)),s=new Set;for(let l of o)if(!s.has(l))for(let c of Rx(l))s.add(c);let a=0;return rt(s).pipe(Io(l=>o.has(l)?U3(l,i,t,n):(l.data=Ap(l,l.parent,t).resolve,J(void 0))),pt(()=>a++),qa(1),Ze(l=>a===s.size?J(e):Pt))})}function Rx(t){let n=t.children.map(e=>Rx(e)).flat();return[t,...n]}function U3(t,n,e,i){let r=t.routeConfig,o=t._resolve;return r?.title!==void 0&&!Sx(r)&&(o[Uu]=r.title),$3(o,t,n,i).pipe(q(s=>(t._resolvedData=s,t.data=Ap(t,t.parent,e).resolve,null)))}function $3(t,n,e,i){let r=ub(t);if(r.length===0)return J({});let o={};return rt(r).pipe(Ze(s=>z3(t[s],n,e,i).pipe(Kr(),pt(a=>{if(a instanceof kl)throw Pp(new Zs,a);o[s]=a}))),qa(1),q(()=>o),Yi(s=>kx(s)?Pt:za(s)))}function z3(t,n,e,i){let r=zu(n)??i,o=Ol(t,r),s=o.resolve?o.resolve(n,e):ei(r,()=>o(n,e));return Yo(s)}function lb(t){return St(n=>{let e=t(n);return e?rt(e).pipe(q(()=>n)):J(n)})}var Mb=(()=>{class t{buildTitle(e){let i,r=e.root;for(;r!==void 0;)i=this.getResolvedTitleForRoute(r)??i,r=r.children.find(o=>o.outlet===De);return i}getResolvedTitleForRoute(e){return e.data[Uu]}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>S(Nx),providedIn:"root"})}return t})(),Nx=(()=>{class t extends Mb{title;constructor(e){super(),this.title=e}updateTitle(e){let i=this.buildTitle(e);i!==void 0&&this.title.setTitle(i)}static \u0275fac=function(i){return new(i||t)(j(X1))};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Gu=new $("",{providedIn:"root",factory:()=>({})}),Sb=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=L({type:t,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(i,r){i&1&&I(0,"router-outlet")},dependencies:[Yu],encapsulation:2})}return t})();function Tb(t){let n=t.children&&t.children.map(Tb),e=n?G(E({},t),{children:n}):E({},t);return!e.component&&!e.loadComponent&&(n||e.loadChildren)&&e.outlet&&e.outlet!==De&&(e.component=Sb),e}var qu=new $(""),Lx=(()=>{class t{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=S(n1);loadComponent(e){if(this.componentLoaders.get(e))return this.componentLoaders.get(e);if(e._loadedComponent)return J(e._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(e);let i=Yo(e.loadComponent()).pipe(q(Vx),pt(o=>{this.onLoadEndListener&&this.onLoadEndListener(e),e._loadedComponent=o}),yi(()=>{this.componentLoaders.delete(e)})),r=new ja(i,()=>new ie).pipe(Va());return this.componentLoaders.set(e,r),r}loadChildren(e,i){if(this.childrenLoaders.get(i))return this.childrenLoaders.get(i);if(i._loadedRoutes)return J({routes:i._loadedRoutes,injector:i._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(i);let o=Fx(i,this.compiler,e,this.onLoadEndListener).pipe(yi(()=>{this.childrenLoaders.delete(i)})),s=new ja(o,()=>new ie).pipe(Va());return this.childrenLoaders.set(i,s),s}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Fx(t,n,e,i){return Yo(t.loadChildren()).pipe(q(Vx),Ze(r=>r instanceof C0||Array.isArray(r)?J(r):rt(n.compileModuleAsync(r))),q(r=>{i&&i(t);let o,s,a=!1;return Array.isArray(r)?(s=r,a=!0):(o=r.create(e).injector,s=o.get(qu,[],{optional:!0,self:!0}).flat()),{routes:s.map(Tb),injector:o}}))}function Y3(t){return t&&typeof t=="object"&&"default"in t}function Vx(t){return Y3(t)?t.default:t}var Fp=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>S(W3),providedIn:"root"})}return t})(),W3=(()=>{class t{shouldProcessUrl(e){return!0}extract(e){return e}merge(e,i){return e}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),jx=new $("");var Hx=new $(""),Bx=(()=>{class t{currentNavigation=null;currentTransition=null;lastSuccessfulNavigation=null;events=new ie;transitionAbortSubject=new ie;configLoader=S(Lx);environmentInjector=S(In);destroyRef=S(ou);urlSerializer=S($u);rootContexts=S(Pl);location=S(bl);inputBindingEnabled=S(Np,{optional:!0})!==null;titleStrategy=S(Mb);options=S(Gu,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=S(Fp);createViewTransition=S(jx,{optional:!0});navigationErrorHandler=S(Hx,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>J(void 0);rootComponentType=null;destroyed=!1;constructor(){let e=r=>this.events.next(new Dp(r)),i=r=>this.events.next(new Mp(r));this.configLoader.onLoadEndListener=i,this.configLoader.onLoadStartListener=e,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(e){let i=++this.navigationId;this.transitions?.next(G(E({},e),{extractedUrl:this.urlHandlingStrategy.extract(e.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,id:i}))}setupNavigations(e){return this.transitions=new Ve(null),this.transitions.pipe(he(i=>i!==null),St(i=>{let r=!1,o=!1;return J(i).pipe(St(s=>{if(this.navigationId>i.id)return this.cancelNavigationTransition(i,"",Wn.SupersededByNewNavigation),Pt;this.currentTransition=i,this.currentNavigation={id:s.id,initialUrl:s.rawUrl,extractedUrl:s.extractedUrl,targetBrowserUrl:typeof s.extras.browserUrl=="string"?this.urlSerializer.parse(s.extras.browserUrl):s.extras.browserUrl,trigger:s.source,extras:s.extras,previousNavigation:this.lastSuccessfulNavigation?G(E({},this.lastSuccessfulNavigation),{previousNavigation:null}):null};let a=!e.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),l=s.extras.onSameUrlNavigation??e.onSameUrlNavigation;if(!a&&l!=="reload"){let c="";return this.events.next(new ao(s.id,this.urlSerializer.serialize(s.rawUrl),c,Ru.IgnoredSameUrlNavigation)),s.resolve(!1),Pt}if(this.urlHandlingStrategy.shouldProcessUrl(s.rawUrl))return J(s).pipe(St(c=>(this.events.next(new Js(c.id,this.urlSerializer.serialize(c.extractedUrl),c.source,c.restoredState)),c.id!==this.navigationId?Pt:Promise.resolve(c))),H3(this.environmentInjector,this.configLoader,this.rootComponentType,e.config,this.urlSerializer,this.paramsInheritanceStrategy),pt(c=>{i.targetSnapshot=c.targetSnapshot,i.urlAfterRedirects=c.urlAfterRedirects,this.currentNavigation=G(E({},this.currentNavigation),{finalUrl:c.urlAfterRedirects});let u=new Nu(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}));if(a&&this.urlHandlingStrategy.shouldProcessUrl(s.currentRawUrl)){let{id:c,extractedUrl:u,source:p,restoredState:v,extras:_}=s,M=new Js(c,this.urlSerializer.serialize(u),p,v);this.events.next(M);let x=Dx(this.rootComponentType).snapshot;return this.currentTransition=i=G(E({},s),{targetSnapshot:x,urlAfterRedirects:u,extras:G(E({},_),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=u,J(i)}else{let c="";return this.events.next(new ao(s.id,this.urlSerializer.serialize(s.extractedUrl),c,Ru.IgnoredByUrlHandlingStrategy)),s.resolve(!1),Pt}}),pt(s=>{let a=new vp(s.id,this.urlSerializer.serialize(s.extractedUrl),this.urlSerializer.serialize(s.urlAfterRedirects),s.targetSnapshot);this.events.next(a)}),q(s=>(this.currentTransition=i=G(E({},s),{guards:s3(s.targetSnapshot,s.currentSnapshot,this.rootContexts)}),i)),_3(this.environmentInjector,s=>this.events.next(s)),pt(s=>{if(i.guardsResult=s.guardsResult,s.guardsResult&&typeof s.guardsResult!="boolean")throw Pp(this.urlSerializer,s.guardsResult);let a=new bp(s.id,this.urlSerializer.serialize(s.extractedUrl),this.urlSerializer.serialize(s.urlAfterRedirects),s.targetSnapshot,!!s.guardsResult);this.events.next(a)}),he(s=>s.guardsResult?!0:(this.cancelNavigationTransition(s,"",Wn.GuardRejected),!1)),lb(s=>{if(s.guards.canActivateChecks.length!==0)return J(s).pipe(pt(a=>{let l=new Cp(a.id,this.urlSerializer.serialize(a.extractedUrl),this.urlSerializer.serialize(a.urlAfterRedirects),a.targetSnapshot);this.events.next(l)}),St(a=>{let l=!1;return J(a).pipe(B3(this.paramsInheritanceStrategy,this.environmentInjector),pt({next:()=>l=!0,complete:()=>{l||this.cancelNavigationTransition(a,"",Wn.NoDataFromResolver)}}))}),pt(a=>{let l=new wp(a.id,this.urlSerializer.serialize(a.extractedUrl),this.urlSerializer.serialize(a.urlAfterRedirects),a.targetSnapshot);this.events.next(l)}))}),lb(s=>{let a=l=>{let c=[];l.routeConfig?.loadComponent&&!l.routeConfig._loadedComponent&&c.push(this.configLoader.loadComponent(l.routeConfig).pipe(pt(u=>{l.component=u}),q(()=>{})));for(let u of l.children)c.push(...a(u));return c};return Eo(a(s.targetSnapshot.root)).pipe(ko(null),Mt(1))}),lb(()=>this.afterPreactivation()),St(()=>{let{currentSnapshot:s,targetSnapshot:a}=i,l=this.createViewTransition?.(this.environmentInjector,s.root,a.root);return l?rt(l).pipe(q(()=>i)):J(i)}),q(s=>{let a=t3(e.routeReuseStrategy,s.targetSnapshot,s.currentRouterState);return this.currentTransition=i=G(E({},s),{targetRouterState:a}),this.currentNavigation.targetRouterState=a,i}),pt(()=>{this.events.next(new Lu)}),o3(this.rootContexts,e.routeReuseStrategy,s=>this.events.next(s),this.inputBindingEnabled),Mt(1),pt({next:s=>{r=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new Ar(s.id,this.urlSerializer.serialize(s.extractedUrl),this.urlSerializer.serialize(s.urlAfterRedirects))),this.titleStrategy?.updateTitle(s.targetRouterState.snapshot),s.resolve(!0)},complete:()=>{r=!0}}),vi(this.transitionAbortSubject.pipe(pt(s=>{throw s}))),yi(()=>{!r&&!o&&this.cancelNavigationTransition(i,"",Wn.SupersededByNewNavigation),this.currentTransition?.id===i.id&&(this.currentNavigation=null,this.currentTransition=null)}),Yi(s=>{if(this.destroyed)return i.resolve(!1),Pt;if(o=!0,Ix(s))this.events.next(new Ir(i.id,this.urlSerializer.serialize(i.extractedUrl),s.message,s.cancellationCode)),r3(s)?this.events.next(new Il(s.url,s.navigationBehaviorOptions)):i.resolve(!1);else{let a=new xl(i.id,this.urlSerializer.serialize(i.extractedUrl),s,i.targetSnapshot??void 0);try{let l=ei(this.environmentInjector,()=>this.navigationErrorHandler?.(a));if(l instanceof kl){let{message:c,cancellationCode:u}=Pp(this.urlSerializer,l);this.events.next(new Ir(i.id,this.urlSerializer.serialize(i.extractedUrl),c,u)),this.events.next(new Il(l.redirectTo,l.navigationBehaviorOptions))}else throw this.events.next(a),s}catch(l){this.options.resolveNavigationPromiseOnError?i.resolve(!1):i.reject(l)}}return Pt}))}))}cancelNavigationTransition(e,i,r){let o=new Ir(e.id,this.urlSerializer.serialize(e.extractedUrl),i,r);this.events.next(o),e.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let e=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),i=this.currentNavigation?.targetBrowserUrl??this.currentNavigation?.extractedUrl;return e.toString()!==i?.toString()&&!this.currentNavigation?.extras.skipLocationChange}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function G3(t){return t!==gp}var Ux=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>S(q3),providedIn:"root"})}return t})(),Rp=class{shouldDetach(n){return!1}store(n,e){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,e){return n.routeConfig===e.routeConfig}},q3=(()=>{class t extends Rp{static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),$x=(()=>{class t{urlSerializer=S($u);options=S(Gu,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=S(bl);urlHandlingStrategy=S(Fp);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new kr;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl:e,initialUrl:i,targetBrowserUrl:r}){let o=e!==void 0?this.urlHandlingStrategy.merge(e,i):i,s=r??o;return s instanceof kr?this.urlSerializer.serialize(s):s}commitTransition({targetRouterState:e,finalUrl:i,initialUrl:r}){i&&e?(this.currentUrlTree=i,this.rawUrlTree=this.urlHandlingStrategy.merge(i,r),this.routerState=e):this.rawUrlTree=r}routerState=Dx(null);getRouterState(){return this.routerState}stateMemento=this.createStateMemento();updateStateMemento(){this.stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}resetInternalState({finalUrl:e}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,e??this.rawUrlTree)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>S(Q3),providedIn:"root"})}return t})(),Q3=(()=>{class t extends $x{currentPageId=0;lastSuccessfulId=-1;restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(e){return this.location.subscribe(i=>{i.type==="popstate"&&setTimeout(()=>{e(i.url,i.state,"popstate")})})}handleRouterEvent(e,i){e instanceof Js?this.updateStateMemento():e instanceof ao?this.commitTransition(i):e instanceof Nu?this.urlUpdateStrategy==="eager"&&(i.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(i),i)):e instanceof Lu?(this.commitTransition(i),this.urlUpdateStrategy==="deferred"&&!i.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(i),i)):e instanceof Ir&&(e.code===Wn.GuardRejected||e.code===Wn.NoDataFromResolver)?this.restoreHistory(i):e instanceof xl?this.restoreHistory(i,!0):e instanceof Ar&&(this.lastSuccessfulId=e.id,this.currentPageId=this.browserPageId)}setBrowserUrl(e,{extras:i,id:r}){let{replaceUrl:o,state:s}=i;if(this.location.isCurrentPathEqualTo(e)||o){let a=this.browserPageId,l=E(E({},s),this.generateNgRouterState(r,a));this.location.replaceState(e,"",l)}else{let a=E(E({},s),this.generateNgRouterState(r,this.browserPageId+1));this.location.go(e,"",a)}}restoreHistory(e,i=!1){if(this.canceledNavigationResolution==="computed"){let r=this.browserPageId,o=this.currentPageId-r;o!==0?this.location.historyGo(o):this.getCurrentUrlTree()===e.finalUrl&&o===0&&(this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(i&&this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(e,i){return this.canceledNavigationResolution==="computed"?{navigationId:e,\u0275routerPageId:i}:{navigationId:e}}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function Eb(t,n){t.events.pipe(he(e=>e instanceof Ar||e instanceof Ir||e instanceof xl||e instanceof ao),q(e=>e instanceof Ar||e instanceof ao?0:(e instanceof Ir?e.code===Wn.Redirect||e.code===Wn.SupersededByNewNavigation:!1)?2:1),he(e=>e!==2),Mt(1)).subscribe(()=>{n()})}var K3={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},Z3={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},hn=(()=>{class t{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=S(M0);stateManager=S($x);options=S(Gu,{optional:!0})||{};pendingTasks=S(No);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=S(Bx);urlSerializer=S($u);location=S(bl);urlHandlingStrategy=S(Fp);_events=new ie;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=S(Ux);onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=S(qu,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!S(Np,{optional:!0});constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:e=>{this.console.warn(e)}}),this.subscribeToNavigationEvents()}eventsSubscription=new We;subscribeToNavigationEvents(){let e=this.navigationTransitions.events.subscribe(i=>{try{let r=this.navigationTransitions.currentTransition,o=this.navigationTransitions.currentNavigation;if(r!==null&&o!==null){if(this.stateManager.handleRouterEvent(i,o),i instanceof Ir&&i.code!==Wn.Redirect&&i.code!==Wn.SupersededByNewNavigation)this.navigated=!0;else if(i instanceof Ar)this.navigated=!0;else if(i instanceof Il){let s=i.navigationBehaviorOptions,a=this.urlHandlingStrategy.merge(i.url,r.currentRawUrl),l=E({browserUrl:r.extras.browserUrl,info:r.extras.info,skipLocationChange:r.extras.skipLocationChange,replaceUrl:r.extras.replaceUrl||this.urlUpdateStrategy==="eager"||G3(r.source)},s);this.scheduleNavigation(a,gp,null,l,{resolve:r.resolve,reject:r.reject,promise:r.promise})}}X3(i)&&this._events.next(i)}catch(r){this.navigationTransitions.transitionAbortSubject.next(r)}});this.eventsSubscription.add(e)}resetRootComponentType(e){this.routerState.root.component=e,this.navigationTransitions.rootComponentType=e}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),gp,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((e,i,r)=>{this.navigateToSyncWithBrowser(e,r,i)})}navigateToSyncWithBrowser(e,i,r){let o={replaceUrl:!0},s=r?.navigationId?r:null;if(r){let l=E({},r);delete l.navigationId,delete l.\u0275routerPageId,Object.keys(l).length!==0&&(o.state=l)}let a=this.parseUrl(e);this.scheduleNavigation(a,i,s,o)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(e){this.config=e.map(Tb),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(e,i={}){let{relativeTo:r,queryParams:o,fragment:s,queryParamsHandling:a,preserveFragment:l}=i,c=l?this.currentUrlTree.fragment:s,u=null;switch(a??this.options.defaultQueryParamsHandling){case"merge":u=E(E({},this.currentUrlTree.queryParams),o);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=o||null}u!==null&&(u=this.removeEmptyProps(u));let p;try{let v=r?r.snapshot:this.routerState.snapshot.root;p=vx(v)}catch{(typeof e[0]!="string"||e[0][0]!=="/")&&(e=[]),p=this.currentUrlTree.root}return bx(p,e,u,c??null)}navigateByUrl(e,i={skipLocationChange:!1}){let r=zo(e)?e:this.parseUrl(e),o=this.urlHandlingStrategy.merge(r,this.rawUrlTree);return this.scheduleNavigation(o,gp,null,i)}navigate(e,i={skipLocationChange:!1}){return J3(e),this.navigateByUrl(this.createUrlTree(e,i),i)}serializeUrl(e){return this.urlSerializer.serialize(e)}parseUrl(e){try{return this.urlSerializer.parse(e)}catch{return this.urlSerializer.parse("/")}}isActive(e,i){let r;if(i===!0?r=E({},K3):i===!1?r=E({},Z3):r=i,zo(e))return ex(this.currentUrlTree,e,r);let o=this.parseUrl(e);return ex(this.currentUrlTree,o,r)}removeEmptyProps(e){return Object.entries(e).reduce((i,[r,o])=>(o!=null&&(i[r]=o),i),{})}scheduleNavigation(e,i,r,o,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((p,v)=>{a=p,l=v});let u=this.pendingTasks.add();return Eb(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(u))}),this.navigationTransitions.handleNavigationRequest({source:i,restoredState:r,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:e,extras:o,resolve:a,reject:l,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(p=>Promise.reject(p))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function J3(t){for(let n=0;n{class t{router;route;tabIndexAttribute;renderer;el;locationStrategy;href=null;target;queryParams;fragment;queryParamsHandling;state;info;relativeTo;isAnchorElement;subscription;onChanges=new ie;constructor(e,i,r,o,s,a){this.router=e,this.route=i,this.tabIndexAttribute=r,this.renderer=o,this.el=s,this.locationStrategy=a;let l=s.nativeElement.tagName?.toLowerCase();this.isAnchorElement=l==="a"||l==="area",this.isAnchorElement?this.subscription=e.events.subscribe(c=>{c instanceof Ar&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}preserveFragment=!1;skipLocationChange=!1;replaceUrl=!1;setTabIndexIfNotOnNativeEl(e){this.tabIndexAttribute!=null||this.isAnchorElement||this.applyAttributeValue("tabindex",e)}ngOnChanges(e){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}routerLinkInput=null;set routerLink(e){e==null?(this.routerLinkInput=null,this.setTabIndexIfNotOnNativeEl(null)):(zo(e)?this.routerLinkInput=e:this.routerLinkInput=Array.isArray(e)?e:[e],this.setTabIndexIfNotOnNativeEl("0"))}onClick(e,i,r,o,s){let a=this.urlTree;if(a===null||this.isAnchorElement&&(e!==0||i||r||o||s||typeof this.target=="string"&&this.target!="_self"))return!0;let l={skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state,info:this.info};return this.router.navigateByUrl(a,l),!this.isAnchorElement}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){let e=this.urlTree;this.href=e!==null&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(e)):null;let i=this.href===null?null:XT(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",i)}applyAttributeValue(e,i){let r=this.renderer,o=this.el.nativeElement;i!==null?r.setAttribute(o,e,i):r.removeAttribute(o,e)}get urlTree(){return this.routerLinkInput===null?null:zo(this.routerLinkInput)?this.routerLinkInput:this.router.createUrlTree(this.routerLinkInput,{relativeTo:this.relativeTo!==void 0?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static \u0275fac=function(i){return new(i||t)(b(hn),b(nr),Kv("tabindex"),b(Ae),b(Y),b(vl))};static \u0275dir=U({type:t,selectors:[["","routerLink",""]],hostVars:1,hostBindings:function(i,r){i&1&&D("click",function(s){return r.onClick(s.button,s.ctrlKey,s.shiftKey,s.altKey,s.metaKey)}),i&2&&ee("target",r.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",info:"info",relativeTo:"relativeTo",preserveFragment:[2,"preserveFragment","preserveFragment",st],skipLocationChange:[2,"skipLocationChange","skipLocationChange",st],replaceUrl:[2,"replaceUrl","replaceUrl",st],routerLink:"routerLink"},features:[Se]})}return t})();var t4=new $("");function xb(t,...n){return Ro([{provide:qu,multi:!0,useValue:t},[],{provide:nr,useFactory:n4,deps:[hn]},{provide:T0,multi:!0,useFactory:i4},n.map(e=>e.\u0275providers)])}function n4(t){return t.routerState.root}function i4(){let t=S(Nt);return n=>{let e=t.get(Hn);if(n!==e.components[0])return;let i=t.get(hn),r=t.get(r4);t.get(o4)===1&&i.initialNavigation(),t.get(s4,null,Ee.Optional)?.setUpPreloading(),t.get(t4,null,Ee.Optional)?.init(),i.resetRootComponentType(e.componentTypes[0]),r.closed||(r.next(),r.complete(),r.unsubscribe())}}var r4=new $("",{factory:()=>new ie}),o4=new $("",{providedIn:"root",factory:()=>1});var s4=new $("");var Jx=(()=>{class t{_renderer;_elementRef;onChange=e=>{};onTouched=()=>{};constructor(e,i){this._renderer=e,this._elementRef=i}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static \u0275fac=function(i){return new(i||t)(b(Ae),b(Y))};static \u0275dir=U({type:t})}return t})(),Fl=(()=>{class t extends Jx{static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=U({type:t,features:[Tt]})}return t})(),Rt=new $(""),l4={provide:Rt,useExisting:ze(()=>Pb),multi:!0},Pb=(()=>{class t extends Fl{writeValue(e){this.setProperty("checked",e)}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=U({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s.target.checked)})("blur",function(){return r.onTouched()})},standalone:!1,features:[pe([l4]),Tt]})}return t})(),c4={provide:Rt,useExisting:ze(()=>Bt),multi:!0};function u4(){let t=Mi()?Mi().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}var d4=new $(""),Bt=(()=>{class t extends Jx{_compositionMode;_composing=!1;constructor(e,i,r){super(e,i),this._compositionMode=r,this._compositionMode==null&&(this._compositionMode=!u4())}writeValue(e){let i=e??"";this.setProperty("value",i)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static \u0275fac=function(i){return new(i||t)(b(Ae),b(Y),b(d4,8))};static \u0275dir=U({type:t,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(i,r){i&1&&D("input",function(s){return r._handleInput(s.target.value)})("blur",function(){return r.onTouched()})("compositionstart",function(){return r._compositionStart()})("compositionend",function(s){return r._compositionEnd(s.target.value)})},standalone:!1,features:[pe([c4]),Tt]})}return t})();function Ob(t){return t==null||Rb(t)===0}function Rb(t){return t==null?null:Array.isArray(t)||typeof t=="string"?t.length:t instanceof Set?t.size:null}var co=new $(""),nd=new $(""),f4=/^(?=.{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])?)*$/,Ei=class{static min(n){return h4(n)}static max(n){return p4(n)}static required(n){return Xx(n)}static requiredTrue(n){return m4(n)}static email(n){return g4(n)}static minLength(n){return _4(n)}static maxLength(n){return y4(n)}static pattern(n){return v4(n)}static nullValidator(n){return jp()}static compose(n){return oI(n)}static composeAsync(n){return sI(n)}};function h4(t){return n=>{if(n.value==null||t==null)return null;let e=parseFloat(n.value);return!isNaN(e)&&e{if(n.value==null||t==null)return null;let e=parseFloat(n.value);return!isNaN(e)&&e>t?{max:{max:t,actual:n.value}}:null}}function Xx(t){return Ob(t.value)?{required:!0}:null}function m4(t){return t.value===!0?null:{required:!0}}function g4(t){return Ob(t.value)||f4.test(t.value)?null:{email:!0}}function _4(t){return n=>{let e=n.value?.length??Rb(n.value);return e===null||e===0?null:e{let e=n.value?.length??Rb(n.value);return e!==null&&e>t?{maxlength:{requiredLength:t,actualLength:e}}:null}}function v4(t){if(!t)return jp;let n,e;return typeof t=="string"?(e="",t.charAt(0)!=="^"&&(e+="^"),e+=t,t.charAt(t.length-1)!=="$"&&(e+="$"),n=new RegExp(e)):(e=t.toString(),n=t),i=>{if(Ob(i.value))return null;let r=i.value;return n.test(r)?null:{pattern:{requiredPattern:e,actualValue:r}}}}function jp(t){return null}function eI(t){return t!=null}function tI(t){return Vo(t)?rt(t):t}function nI(t){let n={};return t.forEach(e=>{n=e!=null?E(E({},n),e):n}),Object.keys(n).length===0?null:n}function iI(t,n){return n.map(e=>e(t))}function b4(t){return!t.validate}function rI(t){return t.map(n=>b4(n)?n:e=>n.validate(e))}function oI(t){if(!t)return null;let n=t.filter(eI);return n.length==0?null:function(e){return nI(iI(e,n))}}function Nb(t){return t!=null?oI(rI(t)):null}function sI(t){if(!t)return null;let n=t.filter(eI);return n.length==0?null:function(e){let i=iI(e,n).map(tI);return q_(i).pipe(q(nI))}}function Lb(t){return t!=null?sI(rI(t)):null}function zx(t,n){return t===null?[n]:Array.isArray(t)?[...t,n]:[t,n]}function aI(t){return t._rawValidators}function lI(t){return t._rawAsyncValidators}function Ib(t){return t?Array.isArray(t)?t:[t]:[]}function Hp(t,n){return Array.isArray(t)?t.includes(n):t===n}function Yx(t,n){let e=Ib(n);return Ib(t).forEach(r=>{Hp(e,r)||e.push(r)}),e}function Wx(t,n){return Ib(n).filter(e=>!Hp(t,e))}var Bp=class{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}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=Nb(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=Lb(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_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,e){return this.control?this.control.hasError(n,e):!1}getError(n,e){return this.control?this.control.getError(n,e):null}},lo=class extends Bp{name;get formDirective(){return null}get path(){return null}},Gn=class extends Bp{_parent=null;name=null;valueAccessor=null},Up=class{_cd;constructor(n){this._cd=n}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}},C4={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},Nle=G(E({},C4),{"[class.ng-submitted]":"isSubmitted"}),kt=(()=>{class t extends Up{constructor(e){super(e)}static \u0275fac=function(i){return new(i||t)(b(Gn,2))};static \u0275dir=U({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,r){i&2&&B("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)},standalone:!1,features:[Tt]})}return t})(),xi=(()=>{class t extends Up{constructor(e){super(e)}static \u0275fac=function(i){return new(i||t)(b(lo,10))};static \u0275dir=U({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(i,r){i&2&&B("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)("ng-submitted",r.isSubmitted)},standalone:!1,features:[Tt]})}return t})();var Qu="VALID",Vp="INVALID",Rl="PENDING",Ku="DISABLED",Wo=class{},$p=class extends Wo{value;source;constructor(n,e){super(),this.value=n,this.source=e}},Ju=class extends Wo{pristine;source;constructor(n,e){super(),this.pristine=n,this.source=e}},Xu=class extends Wo{touched;source;constructor(n,e){super(),this.touched=n,this.source=e}},Nl=class extends Wo{status;source;constructor(n,e){super(),this.status=n,this.source=e}},zp=class extends Wo{source;constructor(n){super(),this.source=n}},Yp=class extends Wo{source;constructor(n){super(),this.source=n}};function Fb(t){return(Qp(t)?t.validators:t)||null}function w4(t){return Array.isArray(t)?Nb(t):t||null}function Vb(t,n){return(Qp(n)?n.asyncValidators:t)||null}function D4(t){return Array.isArray(t)?Lb(t):t||null}function Qp(t){return t!=null&&!Array.isArray(t)&&typeof t=="object"}function cI(t,n,e){let i=t.controls;if(!(n?Object.keys(i):i).length)throw new R(1e3,"");if(!i[e])throw new R(1001,"")}function uI(t,n,e){t._forEachChild((i,r)=>{if(e[r]===void 0)throw new R(1002,"")})}var Ll=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(n,e){this._assignValidators(n),this._assignAsyncValidators(e)}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 status(){return Di(this.statusReactive)}set status(n){Di(()=>this.statusReactive.set(n))}_status=Ji(()=>this.statusReactive());statusReactive=qe(void 0);get valid(){return this.status===Qu}get invalid(){return this.status===Vp}get pending(){return this.status==Rl}get disabled(){return this.status===Ku}get enabled(){return this.status!==Ku}errors;get pristine(){return Di(this.pristineReactive)}set pristine(n){Di(()=>this.pristineReactive.set(n))}_pristine=Ji(()=>this.pristineReactive());pristineReactive=qe(!0);get dirty(){return!this.pristine}get touched(){return Di(this.touchedReactive)}set touched(n){Di(()=>this.touchedReactive.set(n))}_touched=Ji(()=>this.touchedReactive());touchedReactive=qe(!1);get untouched(){return!this.touched}_events=new ie;events=this._events.asObservable();valueChanges;statusChanges;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(Yx(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(Yx(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(Wx(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(Wx(n,this._rawAsyncValidators))}hasValidator(n){return Hp(this._rawValidators,n)}hasAsyncValidator(n){return Hp(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){let e=this.touched===!1;this.touched=!0;let i=n.sourceControl??this;this._parent&&!n.onlySelf&&this._parent.markAsTouched(G(E({},n),{sourceControl:i})),e&&n.emitEvent!==!1&&this._events.next(new Xu(!0,i))}markAllAsTouched(n={}){this.markAsTouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(n))}markAsUntouched(n={}){let e=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let i=n.sourceControl??this;this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:i})}),this._parent&&!n.onlySelf&&this._parent._updateTouched(n,i),e&&n.emitEvent!==!1&&this._events.next(new Xu(!1,i))}markAsDirty(n={}){let e=this.pristine===!0;this.pristine=!1;let i=n.sourceControl??this;this._parent&&!n.onlySelf&&this._parent.markAsDirty(G(E({},n),{sourceControl:i})),e&&n.emitEvent!==!1&&this._events.next(new Ju(!1,i))}markAsPristine(n={}){let e=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let i=n.sourceControl??this;this._forEachChild(r=>{r.markAsPristine({onlySelf:!0,emitEvent:n.emitEvent})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n,i),e&&n.emitEvent!==!1&&this._events.next(new Ju(!0,i))}markAsPending(n={}){this.status=Rl;let e=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new Nl(this.status,e)),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.markAsPending(G(E({},n),{sourceControl:e}))}disable(n={}){let e=this._parentMarkedDirty(n.onlySelf);this.status=Ku,this.errors=null,this._forEachChild(r=>{r.disable(G(E({},n),{onlySelf:!0}))}),this._updateValue();let i=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new $p(this.value,i)),this._events.next(new Nl(this.status,i)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(G(E({},n),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(r=>r(!0))}enable(n={}){let e=this._parentMarkedDirty(n.onlySelf);this.status=Qu,this._forEachChild(i=>{i.enable(G(E({},n),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors(G(E({},n),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(n,e){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine({},e),this._parent._updateTouched({},e))}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let i=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Qu||this.status===Rl)&&this._runAsyncValidator(i,n.emitEvent)}let e=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new $p(this.value,e)),this._events.next(new Nl(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.updateValueAndValidity(G(E({},n),{sourceControl:e}))}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Ku:Qu}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n,e){if(this.asyncValidator){this.status=Rl,this._hasOwnPendingAsyncValidator={emitEvent:e!==!1};let i=tI(this.asyncValidator(this));this._asyncValidationSubscription=i.subscribe(r=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(r,{emitEvent:e,shouldHaveEmitted:n})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let n=this._hasOwnPendingAsyncValidator?.emitEvent??!1;return this._hasOwnPendingAsyncValidator=null,n}return!1}setErrors(n,e={}){this.errors=n,this._updateControlsErrors(e.emitEvent!==!1,this,e.shouldHaveEmitted)}get(n){let e=n;return e==null||(Array.isArray(e)||(e=e.split(".")),e.length===0)?null:e.reduce((i,r)=>i&&i._find(r),this)}getError(n,e){let i=e?this.get(e):this;return i&&i.errors?i.errors[n]:null}hasError(n,e){return!!this.getError(n,e)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n,e,i){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),(n||i)&&this._events.next(new Nl(this.status,e)),this._parent&&this._parent._updateControlsErrors(n,e,i)}_initObservables(){this.valueChanges=new O,this.statusChanges=new O}_calculateStatus(){return this._allControlsDisabled()?Ku:this.errors?Vp:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(Rl)?Rl:this._anyControlsHaveStatus(Vp)?Vp:Qu}_anyControlsHaveStatus(n){return this._anyControls(e=>e.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n,e){let i=!this._anyControlsDirty(),r=this.pristine!==i;this.pristine=i,this._parent&&!n.onlySelf&&this._parent._updatePristine(n,e),r&&this._events.next(new Ju(this.pristine,e))}_updateTouched(n={},e){this.touched=this._anyControlsTouched(),this._events.next(new Xu(this.touched,e)),this._parent&&!n.onlySelf&&this._parent._updateTouched(n,e)}_onDisabledChange=[];_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){Qp(n)&&n.updateOn!=null&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){let e=this._parent&&this._parent.dirty;return!n&&!!e&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=w4(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=D4(this._rawAsyncValidators)}},Go=class extends Ll{constructor(n,e,i){super(Fb(e),Vb(i,e)),this.controls=n,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(n,e){return this.controls[n]?this.controls[n]:(this.controls[n]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(n,e,i={}){this.registerControl(n,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(n,e={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(n,e,i={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],e&&this.registerControl(n,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,e={}){uI(this,!0,n),Object.keys(n).forEach(i=>{cI(this,!0,i),this.controls[i].setValue(n[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(n,e={}){n!=null&&(Object.keys(n).forEach(i=>{let r=this.controls[i];r&&r.patchValue(n[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(n={},e={}){this._forEachChild((i,r)=>{i.reset(n?n[r]:null,{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(n,e,i)=>(n[i]=e.getRawValue(),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(e,i)=>i._syncPendingControls()?!0:e);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(e=>{let i=this.controls[e];i&&n(i,e)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(let[e,i]of Object.entries(this.controls))if(this.contains(e)&&n(i))return!0;return!1}_reduceValue(){let n={};return this._reduceChildren(n,(e,i,r)=>((i.enabled||this.disabled)&&(e[r]=i.value),e))}_reduceChildren(n,e){let i=n;return this._forEachChild((r,o)=>{i=e(i,r,o)}),i}_allControlsDisabled(){for(let 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}};var kb=class extends Go{};var Xs=new $("",{providedIn:"root",factory:()=>id}),id="always";function dI(t,n){return[...n.path,t]}function td(t,n,e=id){jb(t,n),n.valueAccessor.writeValue(t.value),(t.disabled||e==="always")&&n.valueAccessor.setDisabledState?.(t.disabled),S4(t,n),E4(t,n),T4(t,n),M4(t,n)}function Wp(t,n,e=!0){let i=()=>{};n.valueAccessor&&(n.valueAccessor.registerOnChange(i),n.valueAccessor.registerOnTouched(i)),qp(t,n),t&&(n._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function Gp(t,n){t.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(n)})}function M4(t,n){if(n.valueAccessor.setDisabledState){let e=i=>{n.valueAccessor.setDisabledState(i)};t.registerOnDisabledChange(e),n._registerOnDestroy(()=>{t._unregisterOnDisabledChange(e)})}}function jb(t,n){let e=aI(t);n.validator!==null?t.setValidators(zx(e,n.validator)):typeof e=="function"&&t.setValidators([e]);let i=lI(t);n.asyncValidator!==null?t.setAsyncValidators(zx(i,n.asyncValidator)):typeof i=="function"&&t.setAsyncValidators([i]);let r=()=>t.updateValueAndValidity();Gp(n._rawValidators,r),Gp(n._rawAsyncValidators,r)}function qp(t,n){let e=!1;if(t!==null){if(n.validator!==null){let r=aI(t);if(Array.isArray(r)&&r.length>0){let o=r.filter(s=>s!==n.validator);o.length!==r.length&&(e=!0,t.setValidators(o))}}if(n.asyncValidator!==null){let r=lI(t);if(Array.isArray(r)&&r.length>0){let o=r.filter(s=>s!==n.asyncValidator);o.length!==r.length&&(e=!0,t.setAsyncValidators(o))}}}let i=()=>{};return Gp(n._rawValidators,i),Gp(n._rawAsyncValidators,i),e}function S4(t,n){n.valueAccessor.registerOnChange(e=>{t._pendingValue=e,t._pendingChange=!0,t._pendingDirty=!0,t.updateOn==="change"&&fI(t,n)})}function T4(t,n){n.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,t.updateOn==="blur"&&t._pendingChange&&fI(t,n),t.updateOn!=="submit"&&t.markAsTouched()})}function fI(t,n){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function E4(t,n){let e=(i,r)=>{n.valueAccessor.writeValue(i),r&&n.viewToModelUpdate(i)};t.registerOnChange(e),n._registerOnDestroy(()=>{t._unregisterOnChange(e)})}function hI(t,n){t==null,jb(t,n)}function x4(t,n){return qp(t,n)}function Hb(t,n){if(!t.hasOwnProperty("model"))return!1;let e=t.model;return e.isFirstChange()?!0:!Object.is(n,e.currentValue)}function I4(t){return Object.getPrototypeOf(t.constructor)===Fl}function pI(t,n){t._syncPendingControls(),n.forEach(e=>{let i=e.control;i.updateOn==="submit"&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function Bb(t,n){if(!n)return null;Array.isArray(n);let e,i,r;return n.forEach(o=>{o.constructor===Bt?e=o:I4(o)?i=o:r=o}),r||i||e||null}function k4(t,n){let e=t.indexOf(n);e>-1&&t.splice(e,1)}var A4={provide:lo,useExisting:ze(()=>ir)},Zu=Promise.resolve(),ir=(()=>{class t extends lo{callSetDisabledState;get submitted(){return Di(this.submittedReactive)}_submitted=Ji(()=>this.submittedReactive());submittedReactive=qe(!1);_directives=new Set;form;ngSubmit=new O;options;constructor(e,i,r){super(),this.callSetDisabledState=r,this.form=new Go({},Nb(e),Lb(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){Zu.then(()=>{let i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),td(e.control,e,this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){Zu.then(()=>{let i=this._findContainer(e.path);i&&i.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){Zu.then(()=>{let i=this._findContainer(e.path),r=new Go({});hI(r,e),i.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){Zu.then(()=>{let i=this._findContainer(e.path);i&&i.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){Zu.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),pI(this.form,this._directives),this.ngSubmit.emit(e),this.form._events.next(new zp(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1),this.form._events.next(new Yp(this.form))}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static \u0275fac=function(i){return new(i||t)(b(co,10),b(nd,10),b(Xs,8))};static \u0275dir=U({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,r){i&1&&D("submit",function(s){return r.onSubmit(s)})("reset",function(){return r.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[pe([A4]),Tt]})}return t})();function Gx(t,n){let e=t.indexOf(n);e>-1&&t.splice(e,1)}function qx(t){return typeof t=="object"&&t!==null&&Object.keys(t).length===2&&"value"in t&&"disabled"in t}var ed=class extends Ll{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(n=null,e,i){super(Fb(e),Vb(i,e)),this._applyFormState(n),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),Qp(e)&&(e.nonNullable||e.initialValueIsDefault)&&(qx(n)?this.defaultValue=n.value:this.defaultValue=n)}setValue(n,e={}){this.value=this._pendingValue=n,this._onChange.length&&e.emitModelToViewChange!==!1&&this._onChange.forEach(i=>i(this.value,e.emitViewToModelChange!==!1)),this.updateValueAndValidity(e)}patchValue(n,e={}){this.setValue(n,e)}reset(n=this.defaultValue,e={}){this._applyFormState(n),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){Gx(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){Gx(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(n){qx(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}};var P4=t=>t instanceof ed;var O4={provide:Gn,useExisting:ze(()=>pn)},Qx=Promise.resolve(),pn=(()=>{class t extends Gn{_changeDetectorRef;callSetDisabledState;control=new ed;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new O;constructor(e,i,r,o,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=Bb(this,o)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){let i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),Hb(e,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(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){td(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(e){Qx.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){let i=e.isDisabled.currentValue,r=i!==0&&st(i);Qx.then(()=>{r&&!this.control.disabled?this.control.disable():!r&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?dI(e,this._parent):[e]}static \u0275fac=function(i){return new(i||t)(b(lo,9),b(co,10),b(nd,10),b(Rt,10),b(ct,8),b(Xs,8))};static \u0275dir=U({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[pe([O4]),Tt,Se]})}return t})();var Ii=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=U({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return t})(),R4={provide:Rt,useExisting:ze(()=>Ub),multi:!0},Ub=(()=>{class t extends Fl{writeValue(e){let i=e??"";this.setProperty("value",i)}registerOnChange(e){this.onChange=i=>{e(i==""?null:parseFloat(i))}}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=U({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(i,r){i&1&&D("input",function(s){return r.onChange(s.target.value)})("blur",function(){return r.onTouched()})},standalone:!1,features:[pe([R4]),Tt]})}return t})(),N4={provide:Rt,useExisting:ze(()=>$b),multi:!0};var L4=(()=>{class t{_accessors=[];add(e,i){this._accessors.push([e,i])}remove(e){for(let i=this._accessors.length-1;i>=0;--i)if(this._accessors[i][1]===e){this._accessors.splice(i,1);return}}select(e){this._accessors.forEach(i=>{this._isSameGroup(i,e)&&i[1]!==e&&i[1].fireUncheck(e.value)})}_isSameGroup(e,i){return e[0].control?e[0]._parent===i._control._parent&&e[1].name===i.name:!1}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),$b=(()=>{class t extends Fl{_registry;_injector;_state;_control;_fn;setDisabledStateFired=!1;onChange=()=>{};name;formControlName;value;callSetDisabledState=S(Xs,{optional:!0})??id;constructor(e,i,r,o){super(e,i),this._registry=r,this._injector=o}ngOnInit(){this._control=this._injector.get(Gn),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(e){this._state=e===this.value,this.setProperty("checked",this._state)}registerOnChange(e){this._fn=e,this.onChange=()=>{e(this.value),this._registry.select(this)}}setDisabledState(e){(this.setDisabledStateFired||e||this.callSetDisabledState==="whenDisabledForLegacyCode")&&this.setProperty("disabled",e),this.setDisabledStateFired=!0}fireUncheck(e){this.writeValue(e)}_checkName(){this.name&&this.formControlName&&(this.name,this.formControlName),!this.name&&this.formControlName&&(this.name=this.formControlName)}static \u0275fac=function(i){return new(i||t)(b(Ae),b(Y),b(L4),b(Nt))};static \u0275dir=U({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(i,r){i&1&&D("change",function(){return r.onChange()})("blur",function(){return r.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},standalone:!1,features:[pe([N4]),Tt]})}return t})();var zb=new $(""),F4={provide:Gn,useExisting:ze(()=>ea)},ea=(()=>{class t extends Gn{_ngModelWarningConfig;callSetDisabledState;viewModel;form;set isDisabled(e){}model;update=new O;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,r,o,s){super(),this._ngModelWarningConfig=o,this.callSetDisabledState=s,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=Bb(this,r)}ngOnChanges(e){if(this._isControlChanged(e)){let i=e.form.previousValue;i&&Wp(i,this,!1),td(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}Hb(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&Wp(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}static \u0275fac=function(i){return new(i||t)(b(co,10),b(nd,10),b(Rt,10),b(zb,8),b(Xs,8))};static \u0275dir=U({type:t,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],standalone:!1,features:[pe([F4]),Tt,Se]})}return t})(),V4={provide:lo,useExisting:ze(()=>Yb)},Yb=(()=>{class t extends lo{callSetDisabledState;get submitted(){return Di(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}_submitted=Ji(()=>this._submittedReactive());_submittedReactive=qe(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];form=null;ngSubmit=new O;constructor(e,i,r){super(),this.callSetDisabledState=r,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(qp(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(e){let i=this.form.get(e.path);return td(i,e,this.callSetDisabledState),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){Wp(e.control||null,e,!1),k4(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}getFormArray(e){return this.form.get(e.path)}updateModel(e,i){this.form.get(e.path).setValue(i)}onSubmit(e){return this._submittedReactive.set(!0),pI(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new zp(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this._submittedReactive.set(!1),this.form._events.next(new Yp(this.form))}_updateDomValue(){this.directives.forEach(e=>{let i=e.control,r=this.form.get(e.path);i!==r&&(Wp(i||null,e),P4(r)&&(td(r,e,this.callSetDisabledState),e.control=r))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){let i=this.form.get(e.path);hI(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){if(this.form){let i=this.form.get(e.path);i&&x4(i,e)&&i.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){jb(this.form,this),this._oldForm&&qp(this._oldForm,this)}static \u0275fac=function(i){return new(i||t)(b(co,10),b(nd,10),b(Xs,8))};static \u0275dir=U({type:t,selectors:[["","formGroup",""]],hostBindings:function(i,r){i&1&&D("submit",function(s){return r.onSubmit(s)})("reset",function(){return r.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[pe([V4]),Tt,Se]})}return t})();var j4={provide:Gn,useExisting:ze(()=>Wb)},Wb=(()=>{class t extends Gn{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(e){}model;update=new O;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,r,o,s){super(),this._ngModelWarningConfig=s,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=Bb(this,o)}ngOnChanges(e){this._added||this._setUpControl(),Hb(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return dI(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}static \u0275fac=function(i){return new(i||t)(b(lo,13),b(co,10),b(nd,10),b(Rt,10),b(zb,8))};static \u0275dir=U({type:t,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[pe([j4]),Tt,Se]})}return t})();var H4={provide:Rt,useExisting:ze(()=>Vl),multi:!0};function mI(t,n){return t==null?`${n}`:(n&&typeof n=="object"&&(n="Object"),`${t}: ${n}`.slice(0,50))}function B4(t){return t.split(":")[0]}var Vl=(()=>{class t extends Fl{value;_optionMap=new Map;_idCounter=0;set compareWith(e){this._compareWith=e}_compareWith=Object.is;writeValue(e){this.value=e;let i=this._getOptionId(e),r=mI(i,e);this.setProperty("value",r)}registerOnChange(e){this.onChange=i=>{this.value=this._getOptionValue(i),e(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(e){for(let i of this._optionMap.keys())if(this._compareWith(this._optionMap.get(i),e))return i;return null}_getOptionValue(e){let i=B4(e);return this._optionMap.has(i)?this._optionMap.get(i):e}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=U({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s.target.value)})("blur",function(){return r.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[pe([H4]),Tt]})}return t})(),Kp=(()=>{class t{_element;_renderer;_select;id;constructor(e,i,r){this._element=e,this._renderer=i,this._select=r,this._select&&(this.id=this._select._registerOption())}set ngValue(e){this._select!=null&&(this._select._optionMap.set(this.id,e),this._setElementValue(mI(this.id,e)),this._select.writeValue(this._select.value))}set value(e){this._setElementValue(e),this._select&&this._select.writeValue(this._select.value)}_setElementValue(e){this._renderer.setProperty(this._element.nativeElement,"value",e)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static \u0275fac=function(i){return new(i||t)(b(Y),b(Ae),b(Vl,9))};static \u0275dir=U({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return t})(),U4={provide:Rt,useExisting:ze(()=>gI),multi:!0};function Kx(t,n){return t==null?`${n}`:(typeof n=="string"&&(n=`'${n}'`),n&&typeof n=="object"&&(n="Object"),`${t}: ${n}`.slice(0,50))}function $4(t){return t.split(":")[0]}var gI=(()=>{class t extends Fl{value;_optionMap=new Map;_idCounter=0;set compareWith(e){this._compareWith=e}_compareWith=Object.is;writeValue(e){this.value=e;let i;if(Array.isArray(e)){let r=e.map(o=>this._getOptionId(o));i=(o,s)=>{o._setSelected(r.indexOf(s.toString())>-1)}}else i=(r,o)=>{r._setSelected(!1)};this._optionMap.forEach(i)}registerOnChange(e){this.onChange=i=>{let r=[],o=i.selectedOptions;if(o!==void 0){let s=o;for(let a=0;a{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=U({type:t,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s.target)})("blur",function(){return r.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[pe([U4]),Tt]})}return t})(),Zp=(()=>{class t{_element;_renderer;_select;id;_value;constructor(e,i,r){this._element=e,this._renderer=i,this._select=r,this._select&&(this.id=this._select._registerOption(this))}set ngValue(e){this._select!=null&&(this._value=e,this._setElementValue(Kx(this.id,e)),this._select.writeValue(this._select.value))}set value(e){this._select?(this._value=e,this._setElementValue(Kx(this.id,e)),this._select.writeValue(this._select.value)):this._setElementValue(e)}_setElementValue(e){this._renderer.setProperty(this._element.nativeElement,"value",e)}_setSelected(e){this._renderer.setProperty(this._element.nativeElement,"selected",e)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static \u0275fac=function(i){return new(i||t)(b(Y),b(Ae),b(gI,9))};static \u0275dir=U({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return t})();var z4=(()=>{class t{_validator=jp;_onChange;_enabled;ngOnChanges(e){if(this.inputName in e){let i=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):jp,this._onChange&&this._onChange()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return e!=null}static \u0275fac=function(i){return new(i||t)};static \u0275dir=U({type:t,features:[Se]})}return t})();var Y4={provide:co,useExisting:ze(()=>rd),multi:!0};var rd=(()=>{class t extends z4{required;inputName="required";normalizeInput=st;createValidator=e=>Xx;enabled(e){return e}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=U({type:t,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(i,r){i&2&&ee("required",r._enabled?"":null)},inputs:{required:"required"},standalone:!1,features:[pe([Y4]),Tt]})}return t})();var _I=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=we({type:t});static \u0275inj=Ce({})}return t})(),Ab=class extends Ll{constructor(n,e,i){super(Fb(e),Vb(i,e)),this.controls=n,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(n){return this.controls[this._adjustIndex(n)]}push(n,e={}){this.controls.push(n),this._registerControl(n),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(n,e,i={}){this.controls.splice(n,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:i.emitEvent})}removeAt(n,e={}){let i=this._adjustIndex(n);i<0&&(i=0),this.controls[i]&&this.controls[i]._registerOnCollectionChange(()=>{}),this.controls.splice(i,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(n,e,i={}){let r=this._adjustIndex(n);r<0&&(r=0),this.controls[r]&&this.controls[r]._registerOnCollectionChange(()=>{}),this.controls.splice(r,1),e&&(this.controls.splice(r,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(n,e={}){uI(this,!1,n),n.forEach((i,r)=>{cI(this,!1,r),this.at(r).setValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(n,e={}){n!=null&&(n.forEach((i,r)=>{this.at(r)&&this.at(r).patchValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(n=[],e={}){this._forEachChild((i,r)=>{i.reset(n[r],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(n=>n.getRawValue())}clear(n={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:n.emitEvent}))}_adjustIndex(n){return n<0?n+this.length:n}_syncPendingControls(){let n=this.controls.reduce((e,i)=>i._syncPendingControls()?!0:e,!1);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){this.controls.forEach((e,i)=>{n(e,i)})}_updateValue(){this.value=this.controls.filter(n=>n.enabled||this.disabled).map(n=>n.value)}_anyControls(n){return this.controls.some(e=>e.enabled&&n(e))}_setUpControls(){this._forEachChild(n=>this._registerControl(n))}_allControlsDisabled(){for(let n of this.controls)if(n.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(n){n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)}_find(n){return this.at(n)??null}};function Zx(t){return!!t&&(t.asyncValidators!==void 0||t.validators!==void 0||t.updateOn!==void 0)}var yI=(()=>{class t{useNonNullable=!1;get nonNullable(){let e=new t;return e.useNonNullable=!0,e}group(e,i=null){let r=this._reduceControls(e),o={};return Zx(i)?o=i:i!==null&&(o.validators=i.validator,o.asyncValidators=i.asyncValidator),new Go(r,o)}record(e,i=null){let r=this._reduceControls(e);return new kb(r,i)}control(e,i,r){let o={};return this.useNonNullable?(Zx(i)?o=i:(o.validators=i,o.asyncValidators=r),new ed(e,G(E({},o),{nonNullable:!0}))):new ed(e,i,r)}array(e,i,r){let o=e.map(s=>this._createControl(s));return new Ab(o,i,r)}_reduceControls(e){let i={};return Object.keys(e).forEach(r=>{i[r]=this._createControl(e[r])}),i}_createControl(e){if(e instanceof ed)return e;if(e instanceof Ll)return e;if(Array.isArray(e)){let i=e[0],r=e.length>1?e[1]:null,o=e.length>2?e[2]:null;return this.control(i,r,o)}else return this.control(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Dn=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Xs,useValue:e.callSetDisabledState??id}]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=we({type:t});static \u0275inj=Ce({imports:[_I]})}return t})(),jl=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:zb,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:Xs,useValue:e.callSetDisabledState??id}]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=we({type:t});static \u0275inj=Ce({imports:[_I]})}return t})();var Kt={production:!0,apiUrl:"api/",hubsUrl:"hubs/"};function ta(t,n){n.set({items:t.body,pagination:JSON.parse(t.headers.get("Pagination"))})}function Hl(t,n){let e=new er;return t&&n&&(e=e.append("pageNumber",t),e=e.append("pageSize",n)),e}var qo=class t{baseUrl=Kt.apiUrl;http=S(Yn);likeIds=qe([]);paginatedResult=qe(null);toggleLike(n){return this.http.post(`${this.baseUrl}likes/${n}`,{})}getLikes(n,e,i){let r=Hl(e,i);return r=r.append("predicate",n),this.http.get(`${this.baseUrl}likes`,{observe:"response",params:r}).subscribe({next:o=>ta(o,this.paginatedResult)})}getLikeIds(){return this.http.get(`${this.baseUrl}likes/list`).subscribe({next:n=>this.likeIds.set(n)})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};var ai=class extends Error{constructor(n,e){let i=new.target.prototype;super(`${n}: Status code '${e}'`),this.statusCode=e,this.__proto__=i}},Qo=class extends Error{constructor(n="A timeout occurred."){let e=new.target.prototype;super(n),this.__proto__=e}},ln=class extends Error{constructor(n="An abort occurred."){let e=new.target.prototype;super(n),this.__proto__=e}},Jp=class extends Error{constructor(n,e){let i=new.target.prototype;super(n),this.transport=e,this.errorType="UnsupportedTransportError",this.__proto__=i}},Xp=class extends Error{constructor(n,e){let i=new.target.prototype;super(n),this.transport=e,this.errorType="DisabledTransportError",this.__proto__=i}},em=class extends Error{constructor(n,e){let i=new.target.prototype;super(n),this.transport=e,this.errorType="FailedToStartTransportError",this.__proto__=i}},od=class extends Error{constructor(n){let e=new.target.prototype;super(n),this.errorType="FailedToNegotiateWithServerError",this.__proto__=e}},tm=class extends Error{constructor(n,e){let i=new.target.prototype;super(n),this.innerErrors=e,this.__proto__=i}};var Bl=class{constructor(n,e,i){this.statusCode=n,this.statusText=e,this.content=i}},Or=class{get(n,e){return this.send(G(E({},e),{method:"GET",url:n}))}post(n,e){return this.send(G(E({},e),{method:"POST",url:n}))}delete(n,e){return this.send(G(E({},e),{method:"DELETE",url:n}))}getCookieString(n){return""}};var A=function(t){return t[t.Trace=0]="Trace",t[t.Debug=1]="Debug",t[t.Information=2]="Information",t[t.Warning=3]="Warning",t[t.Error=4]="Error",t[t.Critical=5]="Critical",t[t.None=6]="None",t}(A||{});var Rr=class{constructor(){}log(n,e){}};Rr.instance=new Rr;var W4="8.0.7",Ke=class{static isRequired(n,e){if(n==null)throw new Error(`The '${e}' argument is required.`)}static isNotEmpty(n,e){if(!n||n.match(/^\s*$/))throw new Error(`The '${e}' argument should not be empty.`)}static isIn(n,e,i){if(!(n in e))throw new Error(`Unknown ${i} value: ${n}.`)}},nt=class t{static get isBrowser(){return!t.isNode&&typeof window=="object"&&typeof window.document=="object"}static get isWebWorker(){return!t.isNode&&typeof self=="object"&&"importScripts"in self}static get isReactNative(){return!t.isNode&&typeof window=="object"&&typeof window.document>"u"}static get isNode(){return typeof process<"u"&&process.release&&process.release.name==="node"}};function Ko(t,n){let e="";return or(t)?(e=`Binary data of length ${t.byteLength}`,n&&(e+=`. Content: '${G4(t)}'`)):typeof t=="string"&&(e=`String data of length ${t.length}`,n&&(e+=`. Content: '${t}'`)),e}function G4(t){let n=new Uint8Array(t),e="";return n.forEach(i=>{let r=i<16?"0":"";e+=`0x${r}${i.toString(16)} `}),e.substr(0,e.length-1)}function or(t){return t&&typeof ArrayBuffer<"u"&&(t instanceof ArrayBuffer||t.constructor&&t.constructor.name==="ArrayBuffer")}function im(t,n,e,i,r,o){return ve(this,null,function*(){let s={},[a,l]=Nr();s[a]=l,t.log(A.Trace,`(${n} transport) sending data. ${Ko(r,o.logMessageContent)}.`);let c=or(r)?"arraybuffer":"text",u=yield e.post(i,{content:r,headers:E(E({},s),o.headers),responseType:c,timeout:o.timeout,withCredentials:o.withCredentials});t.log(A.Trace,`(${n} transport) request complete. Response status: ${u.statusCode}.`)})}function vI(t){return t===void 0?new na(A.Information):t===null?Rr.instance:t.log!==void 0?t:new na(t)}var nm=class{constructor(n,e){this._subject=n,this._observer=e}dispose(){let n=this._subject.observers.indexOf(this._observer);n>-1&&this._subject.observers.splice(n,1),this._subject.observers.length===0&&this._subject.cancelCallback&&this._subject.cancelCallback().catch(e=>{})}},na=class{constructor(n){this._minLevel=n,this.out=console}log(n,e){if(n>=this._minLevel){let i=`[${new Date().toISOString()}] ${A[n]}: ${e}`;switch(n){case A.Critical:case A.Error:this.out.error(i);break;case A.Warning:this.out.warn(i);break;case A.Information:this.out.info(i);break;default:this.out.log(i);break}}}};function Nr(){let t="X-SignalR-User-Agent";return nt.isNode&&(t="User-Agent"),[t,q4(W4,Q4(),Z4(),K4())]}function q4(t,n,e,i){let r="Microsoft SignalR/",o=t.split(".");return r+=`${o[0]}.${o[1]}`,r+=` (${t}; `,n&&n!==""?r+=`${n}; `:r+="Unknown OS; ",r+=`${e}`,i?r+=`; ${i}`:r+="; Unknown Runtime Version",r+=")",r}function Q4(){if(nt.isNode)switch(process.platform){case"win32":return"Windows NT";case"darwin":return"macOS";case"linux":return"Linux";default:return process.platform}else return""}function K4(){if(nt.isNode)return process.versions.node}function Z4(){return nt.isNode?"NodeJS":"Browser"}function rm(t){return t.stack?t.stack:t.message?t.message:`${t}`}function bI(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("could not find global")}var om=class extends Or{constructor(n){if(super(),this._logger=n,typeof fetch>"u"||nt.isNode){let e=typeof __webpack_require__=="function"?__non_webpack_require__:Oa;this._jar=new(e("tough-cookie")).CookieJar,typeof fetch>"u"?this._fetchType=e("node-fetch"):this._fetchType=fetch,this._fetchType=e("fetch-cookie")(this._fetchType,this._jar)}else this._fetchType=fetch.bind(bI());if(typeof AbortController>"u"){let e=typeof __webpack_require__=="function"?__non_webpack_require__:Oa;this._abortControllerType=e("abort-controller")}else this._abortControllerType=AbortController}send(n){return ve(this,null,function*(){if(n.abortSignal&&n.abortSignal.aborted)throw new ln;if(!n.method)throw new Error("No method defined.");if(!n.url)throw new Error("No url defined.");let e=new this._abortControllerType,i;n.abortSignal&&(n.abortSignal.onabort=()=>{e.abort(),i=new ln});let r=null;if(n.timeout){let l=n.timeout;r=setTimeout(()=>{e.abort(),this._logger.log(A.Warning,"Timeout from HTTP request."),i=new Qo},l)}n.content===""&&(n.content=void 0),n.content&&(n.headers=n.headers||{},or(n.content)?n.headers["Content-Type"]="application/octet-stream":n.headers["Content-Type"]="text/plain;charset=UTF-8");let o;try{o=yield this._fetchType(n.url,{body:n.content,cache:"no-cache",credentials:n.withCredentials===!0?"include":"same-origin",headers:E({"X-Requested-With":"XMLHttpRequest"},n.headers),method:n.method,mode:"cors",redirect:"follow",signal:e.signal})}catch(l){throw i||(this._logger.log(A.Warning,`Error from HTTP request. ${l}.`),l)}finally{r&&clearTimeout(r),n.abortSignal&&(n.abortSignal.onabort=null)}if(!o.ok){let l=yield CI(o,"text");throw new ai(l||o.statusText,o.status)}let a=yield CI(o,n.responseType);return new Bl(o.status,o.statusText,a)})}getCookieString(n){let e="";return nt.isNode&&this._jar&&this._jar.getCookies(n,(i,r)=>e=r.join("; ")),e}};function CI(t,n){let e;switch(n){case"arraybuffer":e=t.arrayBuffer();break;case"text":e=t.text();break;case"blob":case"document":case"json":throw new Error(`${n} is not supported.`);default:e=t.text();break}return e}var sm=class extends Or{constructor(n){super(),this._logger=n}send(n){return n.abortSignal&&n.abortSignal.aborted?Promise.reject(new ln):n.method?n.url?new Promise((e,i)=>{let r=new XMLHttpRequest;r.open(n.method,n.url,!0),r.withCredentials=n.withCredentials===void 0?!0:n.withCredentials,r.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.content===""&&(n.content=void 0),n.content&&(or(n.content)?r.setRequestHeader("Content-Type","application/octet-stream"):r.setRequestHeader("Content-Type","text/plain;charset=UTF-8"));let o=n.headers;o&&Object.keys(o).forEach(s=>{r.setRequestHeader(s,o[s])}),n.responseType&&(r.responseType=n.responseType),n.abortSignal&&(n.abortSignal.onabort=()=>{r.abort(),i(new ln)}),n.timeout&&(r.timeout=n.timeout),r.onload=()=>{n.abortSignal&&(n.abortSignal.onabort=null),r.status>=200&&r.status<300?e(new Bl(r.status,r.statusText,r.response||r.responseText)):i(new ai(r.response||r.responseText||r.statusText,r.status))},r.onerror=()=>{this._logger.log(A.Warning,`Error from HTTP request. ${r.status}: ${r.statusText}.`),i(new ai(r.statusText,r.status))},r.ontimeout=()=>{this._logger.log(A.Warning,"Timeout from HTTP request."),i(new Qo)},r.send(n.content)}):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))}};var am=class extends Or{constructor(n){if(super(),typeof fetch<"u"||nt.isNode)this._httpClient=new om(n);else if(typeof XMLHttpRequest<"u")this._httpClient=new sm(n);else throw new Error("No usable HttpClient found.")}send(n){return n.abortSignal&&n.abortSignal.aborted?Promise.reject(new ln):n.method?n.url?this._httpClient.send(n):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))}getCookieString(n){return this._httpClient.getCookieString(n)}};var li=class t{static write(n){return`${n}${t.RecordSeparator}`}static parse(n){if(n[n.length-1]!==t.RecordSeparator)throw new Error("Message is incomplete.");let e=n.split(t.RecordSeparator);return e.pop(),e}};li.RecordSeparatorCode=30;li.RecordSeparator=String.fromCharCode(li.RecordSeparatorCode);var lm=class{writeHandshakeRequest(n){return li.write(JSON.stringify(n))}parseHandshakeResponse(n){let e,i;if(or(n)){let a=new Uint8Array(n),l=a.indexOf(li.RecordSeparatorCode);if(l===-1)throw new Error("Message is incomplete.");let c=l+1;e=String.fromCharCode.apply(null,Array.prototype.slice.call(a.slice(0,c))),i=a.byteLength>c?a.slice(c).buffer:null}else{let a=n,l=a.indexOf(li.RecordSeparator);if(l===-1)throw new Error("Message is incomplete.");let c=l+1;e=a.substring(0,c),i=a.length>c?a.substring(c):null}let r=li.parse(e),o=JSON.parse(r[0]);if(o.type)throw new Error("Expected a handshake response from the server.");return[i,o]}};var ue=function(t){return t[t.Invocation=1]="Invocation",t[t.StreamItem=2]="StreamItem",t[t.Completion=3]="Completion",t[t.StreamInvocation=4]="StreamInvocation",t[t.CancelInvocation=5]="CancelInvocation",t[t.Ping=6]="Ping",t[t.Close=7]="Close",t[t.Ack=8]="Ack",t[t.Sequence=9]="Sequence",t}(ue||{});var cm=class{constructor(){this.observers=[]}next(n){for(let e of this.observers)e.next(n)}error(n){for(let e of this.observers)e.error&&e.error(n)}complete(){for(let n of this.observers)n.complete&&n.complete()}subscribe(n){return this.observers.push(n),new nm(this,n)}};var um=class{constructor(n,e,i){this._bufferSize=1e5,this._messages=[],this._totalMessageCount=0,this._waitForSequenceMessage=!1,this._nextReceivingSequenceId=1,this._latestReceivedSequenceId=0,this._bufferedByteCount=0,this._reconnectInProgress=!1,this._protocol=n,this._connection=e,this._bufferSize=i}_send(n){return ve(this,null,function*(){let e=this._protocol.writeMessage(n),i=Promise.resolve();if(this._isInvocationMessage(n)){this._totalMessageCount++;let r=()=>{},o=()=>{};or(e)?this._bufferedByteCount+=e.byteLength:this._bufferedByteCount+=e.length,this._bufferedByteCount>=this._bufferSize&&(i=new Promise((s,a)=>{r=s,o=a})),this._messages.push(new Gb(e,this._totalMessageCount,r,o))}try{this._reconnectInProgress||(yield this._connection.send(e))}catch{this._disconnected()}yield i})}_ack(n){let e=-1;for(let i=0;ithis._nextReceivingSequenceId){this._connection.stop(new Error("Sequence ID greater than amount of messages we've received."));return}this._nextReceivingSequenceId=n.sequenceId}_disconnected(){this._reconnectInProgress=!0,this._waitForSequenceMessage=!0}_resend(){return ve(this,null,function*(){let n=this._messages.length!==0?this._messages[0]._id:this._totalMessageCount+1;yield this._connection.send(this._protocol.writeMessage({type:ue.Sequence,sequenceId:n}));let e=this._messages;for(let i of e)yield this._connection.send(i._message);this._reconnectInProgress=!1})}_dispose(n){n??(n=new Error("Unable to reconnect to server."));for(let e of this._messages)e._rejector(n)}_isInvocationMessage(n){switch(n.type){case ue.Invocation:case ue.StreamItem:case ue.Completion:case ue.StreamInvocation:case ue.CancelInvocation:return!0;case ue.Close:case ue.Sequence:case ue.Ping:case ue.Ack:return!1}}_ackTimer(){this._ackTimerHandle===void 0&&(this._ackTimerHandle=setTimeout(()=>ve(this,null,function*(){try{this._reconnectInProgress||(yield this._connection.send(this._protocol.writeMessage({type:ue.Ack,sequenceId:this._latestReceivedSequenceId})))}catch{}clearTimeout(this._ackTimerHandle),this._ackTimerHandle=void 0}),1e3))}},Gb=class{constructor(n,e,i,r){this._message=n,this._id=e,this._resolver=i,this._rejector=r}};var J4=30*1e3,X4=15*1e3,eU=1e5,Ye=function(t){return t.Disconnected="Disconnected",t.Connecting="Connecting",t.Connected="Connected",t.Disconnecting="Disconnecting",t.Reconnecting="Reconnecting",t}(Ye||{}),sd=class t{static create(n,e,i,r,o,s,a){return new t(n,e,i,r,o,s,a)}constructor(n,e,i,r,o,s,a){this._nextKeepAlive=0,this._freezeEventListener=()=>{this._logger.log(A.Warning,"The page is being frozen, this will likely lead to the connection being closed and messages being lost. For more information see the docs at https://learn.microsoft.com/aspnet/core/signalr/javascript-client#bsleep")},Ke.isRequired(n,"connection"),Ke.isRequired(e,"logger"),Ke.isRequired(i,"protocol"),this.serverTimeoutInMilliseconds=o??J4,this.keepAliveIntervalInMilliseconds=s??X4,this._statefulReconnectBufferSize=a??eU,this._logger=e,this._protocol=i,this.connection=n,this._reconnectPolicy=r,this._handshakeProtocol=new lm,this.connection.onreceive=l=>this._processIncomingData(l),this.connection.onclose=l=>this._connectionClosed(l),this._callbacks={},this._methods={},this._closedCallbacks=[],this._reconnectingCallbacks=[],this._reconnectedCallbacks=[],this._invocationId=0,this._receivedHandshakeResponse=!1,this._connectionState=Ye.Disconnected,this._connectionStarted=!1,this._cachedPingMessage=this._protocol.writeMessage({type:ue.Ping})}get state(){return this._connectionState}get connectionId(){return this.connection&&this.connection.connectionId||null}get baseUrl(){return this.connection.baseUrl||""}set baseUrl(n){if(this._connectionState!==Ye.Disconnected&&this._connectionState!==Ye.Reconnecting)throw new Error("The HubConnection must be in the Disconnected or Reconnecting state to change the url.");if(!n)throw new Error("The HubConnection url must be a valid url.");this.connection.baseUrl=n}start(){return this._startPromise=this._startWithStateTransitions(),this._startPromise}_startWithStateTransitions(){return ve(this,null,function*(){if(this._connectionState!==Ye.Disconnected)return Promise.reject(new Error("Cannot start a HubConnection that is not in the 'Disconnected' state."));this._connectionState=Ye.Connecting,this._logger.log(A.Debug,"Starting HubConnection.");try{yield this._startInternal(),nt.isBrowser&&window.document.addEventListener("freeze",this._freezeEventListener),this._connectionState=Ye.Connected,this._connectionStarted=!0,this._logger.log(A.Debug,"HubConnection connected successfully.")}catch(n){return this._connectionState=Ye.Disconnected,this._logger.log(A.Debug,`HubConnection failed to start successfully because of error '${n}'.`),Promise.reject(n)}})}_startInternal(){return ve(this,null,function*(){this._stopDuringStartError=void 0,this._receivedHandshakeResponse=!1;let n=new Promise((e,i)=>{this._handshakeResolver=e,this._handshakeRejecter=i});yield this.connection.start(this._protocol.transferFormat);try{let e=this._protocol.version;this.connection.features.reconnect||(e=1);let i={protocol:this._protocol.name,version:e};if(this._logger.log(A.Debug,"Sending handshake request."),yield this._sendMessage(this._handshakeProtocol.writeHandshakeRequest(i)),this._logger.log(A.Information,`Using HubProtocol '${this._protocol.name}'.`),this._cleanupTimeout(),this._resetTimeoutPeriod(),this._resetKeepAliveInterval(),yield n,this._stopDuringStartError)throw this._stopDuringStartError;(this.connection.features.reconnect||!1)&&(this._messageBuffer=new um(this._protocol,this.connection,this._statefulReconnectBufferSize),this.connection.features.disconnected=this._messageBuffer._disconnected.bind(this._messageBuffer),this.connection.features.resend=()=>{if(this._messageBuffer)return this._messageBuffer._resend()}),this.connection.features.inherentKeepAlive||(yield this._sendMessage(this._cachedPingMessage))}catch(e){throw this._logger.log(A.Debug,`Hub handshake failed with error '${e}' during start(). Stopping HubConnection.`),this._cleanupTimeout(),this._cleanupPingTimer(),yield this.connection.stop(e),e}})}stop(){return ve(this,null,function*(){let n=this._startPromise;this.connection.features.reconnect=!1,this._stopPromise=this._stopInternal(),yield this._stopPromise;try{yield n}catch{}})}_stopInternal(n){if(this._connectionState===Ye.Disconnected)return this._logger.log(A.Debug,`Call to HubConnection.stop(${n}) ignored because it is already in the disconnected state.`),Promise.resolve();if(this._connectionState===Ye.Disconnecting)return this._logger.log(A.Debug,`Call to HttpConnection.stop(${n}) ignored because the connection is already in the disconnecting state.`),this._stopPromise;let e=this._connectionState;return this._connectionState=Ye.Disconnecting,this._logger.log(A.Debug,"Stopping HubConnection."),this._reconnectDelayHandle?(this._logger.log(A.Debug,"Connection stopped during reconnect delay. Done reconnecting."),clearTimeout(this._reconnectDelayHandle),this._reconnectDelayHandle=void 0,this._completeClose(),Promise.resolve()):(e===Ye.Connected&&this._sendCloseMessage(),this._cleanupTimeout(),this._cleanupPingTimer(),this._stopDuringStartError=n||new ln("The connection was stopped before the hub handshake could complete."),this.connection.stop(n))}_sendCloseMessage(){return ve(this,null,function*(){try{yield this._sendWithProtocol(this._createCloseMessage())}catch{}})}stream(n,...e){let[i,r]=this._replaceStreamingParams(e),o=this._createStreamInvocation(n,e,r),s,a=new cm;return a.cancelCallback=()=>{let l=this._createCancelInvocation(o.invocationId);return delete this._callbacks[o.invocationId],s.then(()=>this._sendWithProtocol(l))},this._callbacks[o.invocationId]=(l,c)=>{if(c){a.error(c);return}else l&&(l.type===ue.Completion?l.error?a.error(new Error(l.error)):a.complete():a.next(l.item))},s=this._sendWithProtocol(o).catch(l=>{a.error(l),delete this._callbacks[o.invocationId]}),this._launchStreams(i,s),a}_sendMessage(n){return this._resetKeepAliveInterval(),this.connection.send(n)}_sendWithProtocol(n){return this._messageBuffer?this._messageBuffer._send(n):this._sendMessage(this._protocol.writeMessage(n))}send(n,...e){let[i,r]=this._replaceStreamingParams(e),o=this._sendWithProtocol(this._createInvocation(n,e,!0,r));return this._launchStreams(i,o),o}invoke(n,...e){let[i,r]=this._replaceStreamingParams(e),o=this._createInvocation(n,e,!1,r);return new Promise((a,l)=>{this._callbacks[o.invocationId]=(u,p)=>{if(p){l(p);return}else u&&(u.type===ue.Completion?u.error?l(new Error(u.error)):a(u.result):l(new Error(`Unexpected message type: ${u.type}`)))};let c=this._sendWithProtocol(o).catch(u=>{l(u),delete this._callbacks[o.invocationId]});this._launchStreams(i,c)})}on(n,e){!n||!e||(n=n.toLowerCase(),this._methods[n]||(this._methods[n]=[]),this._methods[n].indexOf(e)===-1&&this._methods[n].push(e))}off(n,e){if(!n)return;n=n.toLowerCase();let i=this._methods[n];if(i)if(e){let r=i.indexOf(e);r!==-1&&(i.splice(r,1),i.length===0&&delete this._methods[n])}else delete this._methods[n]}onclose(n){n&&this._closedCallbacks.push(n)}onreconnecting(n){n&&this._reconnectingCallbacks.push(n)}onreconnected(n){n&&this._reconnectedCallbacks.push(n)}_processIncomingData(n){if(this._cleanupTimeout(),this._receivedHandshakeResponse||(n=this._processHandshakeResponse(n),this._receivedHandshakeResponse=!0),n){let e=this._protocol.parseMessages(n,this._logger);for(let i of e)if(!(this._messageBuffer&&!this._messageBuffer._shouldProcessMessage(i)))switch(i.type){case ue.Invocation:this._invokeClientMethod(i).catch(r=>{this._logger.log(A.Error,`Invoke client method threw error: ${rm(r)}`)});break;case ue.StreamItem:case ue.Completion:{let r=this._callbacks[i.invocationId];if(r){i.type===ue.Completion&&delete this._callbacks[i.invocationId];try{r(i)}catch(o){this._logger.log(A.Error,`Stream callback threw error: ${rm(o)}`)}}break}case ue.Ping:break;case ue.Close:{this._logger.log(A.Information,"Close message received from server.");let r=i.error?new Error("Server returned an error on close: "+i.error):void 0;i.allowReconnect===!0?this.connection.stop(r):this._stopPromise=this._stopInternal(r);break}case ue.Ack:this._messageBuffer&&this._messageBuffer._ack(i);break;case ue.Sequence:this._messageBuffer&&this._messageBuffer._resetSequence(i);break;default:this._logger.log(A.Warning,`Invalid message type: ${i.type}.`);break}}this._resetTimeoutPeriod()}_processHandshakeResponse(n){let e,i;try{[i,e]=this._handshakeProtocol.parseHandshakeResponse(n)}catch(r){let o="Error parsing handshake response: "+r;this._logger.log(A.Error,o);let s=new Error(o);throw this._handshakeRejecter(s),s}if(e.error){let r="Server returned handshake error: "+e.error;this._logger.log(A.Error,r);let o=new Error(r);throw this._handshakeRejecter(o),o}else this._logger.log(A.Debug,"Server handshake complete.");return this._handshakeResolver(),i}_resetKeepAliveInterval(){this.connection.features.inherentKeepAlive||(this._nextKeepAlive=new Date().getTime()+this.keepAliveIntervalInMilliseconds,this._cleanupPingTimer())}_resetTimeoutPeriod(){if((!this.connection.features||!this.connection.features.inherentKeepAlive)&&(this._timeoutHandle=setTimeout(()=>this.serverTimeout(),this.serverTimeoutInMilliseconds),this._pingServerHandle===void 0)){let n=this._nextKeepAlive-new Date().getTime();n<0&&(n=0),this._pingServerHandle=setTimeout(()=>ve(this,null,function*(){if(this._connectionState===Ye.Connected)try{yield this._sendMessage(this._cachedPingMessage)}catch{this._cleanupPingTimer()}}),n)}}serverTimeout(){this.connection.stop(new Error("Server timeout elapsed without receiving a message from the server."))}_invokeClientMethod(n){return ve(this,null,function*(){let e=n.target.toLowerCase(),i=this._methods[e];if(!i){this._logger.log(A.Warning,`No client method with the name '${e}' found.`),n.invocationId&&(this._logger.log(A.Warning,`No result given for '${e}' method and invocation ID '${n.invocationId}'.`),yield this._sendWithProtocol(this._createCompletionMessage(n.invocationId,"Client didn't provide a result.",null)));return}let r=i.slice(),o=!!n.invocationId,s,a,l;for(let c of r)try{let u=s;s=yield c.apply(this,n.arguments),o&&s&&u&&(this._logger.log(A.Error,`Multiple results provided for '${e}'. Sending error to server.`),l=this._createCompletionMessage(n.invocationId,"Client provided multiple results.",null)),a=void 0}catch(u){a=u,this._logger.log(A.Error,`A callback for the method '${e}' threw error '${u}'.`)}l?yield this._sendWithProtocol(l):o?(a?l=this._createCompletionMessage(n.invocationId,`${a}`,null):s!==void 0?l=this._createCompletionMessage(n.invocationId,null,s):(this._logger.log(A.Warning,`No result given for '${e}' method and invocation ID '${n.invocationId}'.`),l=this._createCompletionMessage(n.invocationId,"Client didn't provide a result.",null)),yield this._sendWithProtocol(l)):s&&this._logger.log(A.Error,`Result given for '${e}' method but server is not expecting a result.`)})}_connectionClosed(n){this._logger.log(A.Debug,`HubConnection.connectionClosed(${n}) called while in state ${this._connectionState}.`),this._stopDuringStartError=this._stopDuringStartError||n||new ln("The underlying connection was closed before the hub handshake could complete."),this._handshakeResolver&&this._handshakeResolver(),this._cancelCallbacksWithError(n||new Error("Invocation canceled due to the underlying connection being closed.")),this._cleanupTimeout(),this._cleanupPingTimer(),this._connectionState===Ye.Disconnecting?this._completeClose(n):this._connectionState===Ye.Connected&&this._reconnectPolicy?this._reconnect(n):this._connectionState===Ye.Connected&&this._completeClose(n)}_completeClose(n){if(this._connectionStarted){this._connectionState=Ye.Disconnected,this._connectionStarted=!1,this._messageBuffer&&(this._messageBuffer._dispose(n??new Error("Connection closed.")),this._messageBuffer=void 0),nt.isBrowser&&window.document.removeEventListener("freeze",this._freezeEventListener);try{this._closedCallbacks.forEach(e=>e.apply(this,[n]))}catch(e){this._logger.log(A.Error,`An onclose callback called with error '${n}' threw error '${e}'.`)}}}_reconnect(n){return ve(this,null,function*(){let e=Date.now(),i=0,r=n!==void 0?n:new Error("Attempting to reconnect due to a unknown error."),o=this._getNextRetryDelay(i++,0,r);if(o===null){this._logger.log(A.Debug,"Connection not reconnecting because the IRetryPolicy returned null on the first reconnect attempt."),this._completeClose(n);return}if(this._connectionState=Ye.Reconnecting,n?this._logger.log(A.Information,`Connection reconnecting because of error '${n}'.`):this._logger.log(A.Information,"Connection reconnecting."),this._reconnectingCallbacks.length!==0){try{this._reconnectingCallbacks.forEach(s=>s.apply(this,[n]))}catch(s){this._logger.log(A.Error,`An onreconnecting callback called with error '${n}' threw error '${s}'.`)}if(this._connectionState!==Ye.Reconnecting){this._logger.log(A.Debug,"Connection left the reconnecting state in onreconnecting callback. Done reconnecting.");return}}for(;o!==null;){if(this._logger.log(A.Information,`Reconnect attempt number ${i} will start in ${o} ms.`),yield new Promise(s=>{this._reconnectDelayHandle=setTimeout(s,o)}),this._reconnectDelayHandle=void 0,this._connectionState!==Ye.Reconnecting){this._logger.log(A.Debug,"Connection left the reconnecting state during reconnect delay. Done reconnecting.");return}try{if(yield this._startInternal(),this._connectionState=Ye.Connected,this._logger.log(A.Information,"HubConnection reconnected successfully."),this._reconnectedCallbacks.length!==0)try{this._reconnectedCallbacks.forEach(s=>s.apply(this,[this.connection.connectionId]))}catch(s){this._logger.log(A.Error,`An onreconnected callback called with connectionId '${this.connection.connectionId}; threw error '${s}'.`)}return}catch(s){if(this._logger.log(A.Information,`Reconnect attempt failed because of error '${s}'.`),this._connectionState!==Ye.Reconnecting){this._logger.log(A.Debug,`Connection moved to the '${this._connectionState}' from the reconnecting state during reconnect attempt. Done reconnecting.`),this._connectionState===Ye.Disconnecting&&this._completeClose();return}r=s instanceof Error?s:new Error(s.toString()),o=this._getNextRetryDelay(i++,Date.now()-e,r)}}this._logger.log(A.Information,`Reconnect retries have been exhausted after ${Date.now()-e} ms and ${i} failed attempts. Connection disconnecting.`),this._completeClose()})}_getNextRetryDelay(n,e,i){try{return this._reconnectPolicy.nextRetryDelayInMilliseconds({elapsedMilliseconds:e,previousRetryCount:n,retryReason:i})}catch(r){return this._logger.log(A.Error,`IRetryPolicy.nextRetryDelayInMilliseconds(${n}, ${e}) threw error '${r}'.`),null}}_cancelCallbacksWithError(n){let e=this._callbacks;this._callbacks={},Object.keys(e).forEach(i=>{let r=e[i];try{r(null,n)}catch(o){this._logger.log(A.Error,`Stream 'error' callback called with '${n}' threw error: ${rm(o)}`)}})}_cleanupPingTimer(){this._pingServerHandle&&(clearTimeout(this._pingServerHandle),this._pingServerHandle=void 0)}_cleanupTimeout(){this._timeoutHandle&&clearTimeout(this._timeoutHandle)}_createInvocation(n,e,i,r){if(i)return r.length!==0?{arguments:e,streamIds:r,target:n,type:ue.Invocation}:{arguments:e,target:n,type:ue.Invocation};{let o=this._invocationId;return this._invocationId++,r.length!==0?{arguments:e,invocationId:o.toString(),streamIds:r,target:n,type:ue.Invocation}:{arguments:e,invocationId:o.toString(),target:n,type:ue.Invocation}}}_launchStreams(n,e){if(n.length!==0){e||(e=Promise.resolve());for(let i in n)n[i].subscribe({complete:()=>{e=e.then(()=>this._sendWithProtocol(this._createCompletionMessage(i)))},error:r=>{let o;r instanceof Error?o=r.message:r&&r.toString?o=r.toString():o="Unknown error",e=e.then(()=>this._sendWithProtocol(this._createCompletionMessage(i,o)))},next:r=>{e=e.then(()=>this._sendWithProtocol(this._createStreamItemMessage(i,r)))}})}}_replaceStreamingParams(n){let e=[],i=[];for(let r=0;r{class t{}return t.Authorization="Authorization",t.Cookie="Cookie",t})();var dm=class extends Or{constructor(n,e){super(),this._innerClient=n,this._accessTokenFactory=e}send(n){return ve(this,null,function*(){let e=!0;this._accessTokenFactory&&(!this._accessToken||n.url&&n.url.indexOf("/negotiate?")>0)&&(e=!1,this._accessToken=yield this._accessTokenFactory()),this._setAuthorizationHeader(n);let i=yield this._innerClient.send(n);return e&&i.statusCode===401&&this._accessTokenFactory?(this._accessToken=yield this._accessTokenFactory(),this._setAuthorizationHeader(n),yield this._innerClient.send(n)):i})}_setAuthorizationHeader(n){n.headers||(n.headers={}),this._accessToken?n.headers[ia.Authorization]=`Bearer ${this._accessToken}`:this._accessTokenFactory&&n.headers[ia.Authorization]&&delete n.headers[ia.Authorization]}getCookieString(n){return this._innerClient.getCookieString(n)}};var Zt=function(t){return t[t.None=0]="None",t[t.WebSockets=1]="WebSockets",t[t.ServerSentEvents=2]="ServerSentEvents",t[t.LongPolling=4]="LongPolling",t}(Zt||{}),Ut=function(t){return t[t.Text=1]="Text",t[t.Binary=2]="Binary",t}(Ut||{});var fm=class{constructor(){this._isAborted=!1,this.onabort=null}abort(){this._isAborted||(this._isAborted=!0,this.onabort&&this.onabort())}get signal(){return this}get aborted(){return this._isAborted}};var ld=class{get pollAborted(){return this._pollAbort.aborted}constructor(n,e,i){this._httpClient=n,this._logger=e,this._pollAbort=new fm,this._options=i,this._running=!1,this.onreceive=null,this.onclose=null}connect(n,e){return ve(this,null,function*(){if(Ke.isRequired(n,"url"),Ke.isRequired(e,"transferFormat"),Ke.isIn(e,Ut,"transferFormat"),this._url=n,this._logger.log(A.Trace,"(LongPolling transport) Connecting."),e===Ut.Binary&&typeof XMLHttpRequest<"u"&&typeof new XMLHttpRequest().responseType!="string")throw new Error("Binary protocols over XmlHttpRequest not implementing advanced features are not supported.");let[i,r]=Nr(),o=E({[i]:r},this._options.headers),s={abortSignal:this._pollAbort.signal,headers:o,timeout:1e5,withCredentials:this._options.withCredentials};e===Ut.Binary&&(s.responseType="arraybuffer");let a=`${n}&_=${Date.now()}`;this._logger.log(A.Trace,`(LongPolling transport) polling: ${a}.`);let l=yield this._httpClient.get(a,s);l.statusCode!==200?(this._logger.log(A.Error,`(LongPolling transport) Unexpected response code: ${l.statusCode}.`),this._closeError=new ai(l.statusText||"",l.statusCode),this._running=!1):this._running=!0,this._receiving=this._poll(this._url,s)})}_poll(n,e){return ve(this,null,function*(){try{for(;this._running;)try{let i=`${n}&_=${Date.now()}`;this._logger.log(A.Trace,`(LongPolling transport) polling: ${i}.`);let r=yield this._httpClient.get(i,e);r.statusCode===204?(this._logger.log(A.Information,"(LongPolling transport) Poll terminated by server."),this._running=!1):r.statusCode!==200?(this._logger.log(A.Error,`(LongPolling transport) Unexpected response code: ${r.statusCode}.`),this._closeError=new ai(r.statusText||"",r.statusCode),this._running=!1):r.content?(this._logger.log(A.Trace,`(LongPolling transport) data received. ${Ko(r.content,this._options.logMessageContent)}.`),this.onreceive&&this.onreceive(r.content)):this._logger.log(A.Trace,"(LongPolling transport) Poll timed out, reissuing.")}catch(i){this._running?i instanceof Qo?this._logger.log(A.Trace,"(LongPolling transport) Poll timed out, reissuing."):(this._closeError=i,this._running=!1):this._logger.log(A.Trace,`(LongPolling transport) Poll errored after shutdown: ${i.message}`)}}finally{this._logger.log(A.Trace,"(LongPolling transport) Polling complete."),this.pollAborted||this._raiseOnClose()}})}send(n){return ve(this,null,function*(){return this._running?im(this._logger,"LongPolling",this._httpClient,this._url,n,this._options):Promise.reject(new Error("Cannot send until the transport is connected"))})}stop(){return ve(this,null,function*(){this._logger.log(A.Trace,"(LongPolling transport) Stopping polling."),this._running=!1,this._pollAbort.abort();try{yield this._receiving,this._logger.log(A.Trace,`(LongPolling transport) sending DELETE request to ${this._url}.`);let n={},[e,i]=Nr();n[e]=i;let r={headers:E(E({},n),this._options.headers),timeout:this._options.timeout,withCredentials:this._options.withCredentials},o;try{yield this._httpClient.delete(this._url,r)}catch(s){o=s}o?o instanceof ai&&(o.statusCode===404?this._logger.log(A.Trace,"(LongPolling transport) A 404 response was returned from sending a DELETE request."):this._logger.log(A.Trace,`(LongPolling transport) Error sending a DELETE request: ${o}`)):this._logger.log(A.Trace,"(LongPolling transport) DELETE request accepted.")}finally{this._logger.log(A.Trace,"(LongPolling transport) Stop finished."),this._raiseOnClose()}})}_raiseOnClose(){if(this.onclose){let n="(LongPolling transport) Firing onclose event.";this._closeError&&(n+=" Error: "+this._closeError),this._logger.log(A.Trace,n),this.onclose(this._closeError)}}};var hm=class{constructor(n,e,i,r){this._httpClient=n,this._accessToken=e,this._logger=i,this._options=r,this.onreceive=null,this.onclose=null}connect(n,e){return ve(this,null,function*(){return Ke.isRequired(n,"url"),Ke.isRequired(e,"transferFormat"),Ke.isIn(e,Ut,"transferFormat"),this._logger.log(A.Trace,"(SSE transport) Connecting."),this._url=n,this._accessToken&&(n+=(n.indexOf("?")<0?"?":"&")+`access_token=${encodeURIComponent(this._accessToken)}`),new Promise((i,r)=>{let o=!1;if(e!==Ut.Text){r(new Error("The Server-Sent Events transport only supports the 'Text' transfer format"));return}let s;if(nt.isBrowser||nt.isWebWorker)s=new this._options.EventSource(n,{withCredentials:this._options.withCredentials});else{let a=this._httpClient.getCookieString(n),l={};l.Cookie=a;let[c,u]=Nr();l[c]=u,s=new this._options.EventSource(n,{withCredentials:this._options.withCredentials,headers:E(E({},l),this._options.headers)})}try{s.onmessage=a=>{if(this.onreceive)try{this._logger.log(A.Trace,`(SSE transport) data received. ${Ko(a.data,this._options.logMessageContent)}.`),this.onreceive(a.data)}catch(l){this._close(l);return}},s.onerror=a=>{o?this._close():r(new Error("EventSource failed to connect. The connection could not be found on the server, either the connection ID is not present on the server, or a proxy is refusing/buffering the connection. If you have multiple servers check that sticky sessions are enabled."))},s.onopen=()=>{this._logger.log(A.Information,`SSE connected to ${this._url}`),this._eventSource=s,o=!0,i()}}catch(a){r(a);return}})})}send(n){return ve(this,null,function*(){return this._eventSource?im(this._logger,"SSE",this._httpClient,this._url,n,this._options):Promise.reject(new Error("Cannot send until the transport is connected"))})}stop(){return this._close(),Promise.resolve()}_close(n){this._eventSource&&(this._eventSource.close(),this._eventSource=void 0,this.onclose&&this.onclose(n))}};var pm=class{constructor(n,e,i,r,o,s){this._logger=i,this._accessTokenFactory=e,this._logMessageContent=r,this._webSocketConstructor=o,this._httpClient=n,this.onreceive=null,this.onclose=null,this._headers=s}connect(n,e){return ve(this,null,function*(){Ke.isRequired(n,"url"),Ke.isRequired(e,"transferFormat"),Ke.isIn(e,Ut,"transferFormat"),this._logger.log(A.Trace,"(WebSockets transport) Connecting.");let i;return this._accessTokenFactory&&(i=yield this._accessTokenFactory()),new Promise((r,o)=>{n=n.replace(/^http/,"ws");let s,a=this._httpClient.getCookieString(n),l=!1;if(nt.isNode||nt.isReactNative){let c={},[u,p]=Nr();c[u]=p,i&&(c[ia.Authorization]=`Bearer ${i}`),a&&(c[ia.Cookie]=a),s=new this._webSocketConstructor(n,void 0,{headers:E(E({},c),this._headers)})}else i&&(n+=(n.indexOf("?")<0?"?":"&")+`access_token=${encodeURIComponent(i)}`);s||(s=new this._webSocketConstructor(n)),e===Ut.Binary&&(s.binaryType="arraybuffer"),s.onopen=c=>{this._logger.log(A.Information,`WebSocket connected to ${n}.`),this._webSocket=s,l=!0,r()},s.onerror=c=>{let u=null;typeof ErrorEvent<"u"&&c instanceof ErrorEvent?u=c.error:u="There was an error with the transport",this._logger.log(A.Information,`(WebSockets transport) ${u}.`)},s.onmessage=c=>{if(this._logger.log(A.Trace,`(WebSockets transport) data received. ${Ko(c.data,this._logMessageContent)}.`),this.onreceive)try{this.onreceive(c.data)}catch(u){this._close(u);return}},s.onclose=c=>{if(l)this._close(c);else{let u=null;typeof ErrorEvent<"u"&&c instanceof ErrorEvent?u=c.error:u="WebSocket failed to connect. The connection could not be found on the server, either the endpoint may not be a SignalR endpoint, the connection ID is not present on the server, or there is a proxy blocking WebSockets. If you have multiple servers check that sticky sessions are enabled.",o(new Error(u))}}})})}send(n){return this._webSocket&&this._webSocket.readyState===this._webSocketConstructor.OPEN?(this._logger.log(A.Trace,`(WebSockets transport) sending data. ${Ko(n,this._logMessageContent)}.`),this._webSocket.send(n),Promise.resolve()):Promise.reject("WebSocket is not in the OPEN state")}stop(){return this._webSocket&&this._close(void 0),Promise.resolve()}_close(n){this._webSocket&&(this._webSocket.onclose=()=>{},this._webSocket.onmessage=()=>{},this._webSocket.onerror=()=>{},this._webSocket.close(),this._webSocket=void 0),this._logger.log(A.Trace,"(WebSockets transport) socket closed."),this.onclose&&(this._isCloseEvent(n)&&(n.wasClean===!1||n.code!==1e3)?this.onclose(new Error(`WebSocket closed with status code: ${n.code} (${n.reason||"no reason given"}).`)):n instanceof Error?this.onclose(n):this.onclose())}_isCloseEvent(n){return n&&typeof n.wasClean=="boolean"&&typeof n.code=="number"}};var wI=100,mm=class{constructor(n,e={}){if(this._stopPromiseResolver=()=>{},this.features={},this._negotiateVersion=1,Ke.isRequired(n,"url"),this._logger=vI(e.logger),this.baseUrl=this._resolveUrl(n),e=e||{},e.logMessageContent=e.logMessageContent===void 0?!1:e.logMessageContent,typeof e.withCredentials=="boolean"||e.withCredentials===void 0)e.withCredentials=e.withCredentials===void 0?!0:e.withCredentials;else throw new Error("withCredentials option was not a 'boolean' or 'undefined' value");e.timeout=e.timeout===void 0?100*1e3:e.timeout;let i=null,r=null;if(nt.isNode&&typeof Oa<"u"){let o=typeof __webpack_require__=="function"?__non_webpack_require__:Oa;i=o("ws"),r=o("eventsource")}!nt.isNode&&typeof WebSocket<"u"&&!e.WebSocket?e.WebSocket=WebSocket:nt.isNode&&!e.WebSocket&&i&&(e.WebSocket=i),!nt.isNode&&typeof EventSource<"u"&&!e.EventSource?e.EventSource=EventSource:nt.isNode&&!e.EventSource&&typeof r<"u"&&(e.EventSource=r),this._httpClient=new dm(e.httpClient||new am(this._logger),e.accessTokenFactory),this._connectionState="Disconnected",this._connectionStarted=!1,this._options=e,this.onreceive=null,this.onclose=null}start(n){return ve(this,null,function*(){if(n=n||Ut.Binary,Ke.isIn(n,Ut,"transferFormat"),this._logger.log(A.Debug,`Starting connection with transfer format '${Ut[n]}'.`),this._connectionState!=="Disconnected")return Promise.reject(new Error("Cannot start an HttpConnection that is not in the 'Disconnected' state."));if(this._connectionState="Connecting",this._startInternalPromise=this._startInternal(n),yield this._startInternalPromise,this._connectionState==="Disconnecting"){let e="Failed to start the HttpConnection before stop() was called.";return this._logger.log(A.Error,e),yield this._stopPromise,Promise.reject(new ln(e))}else if(this._connectionState!=="Connected"){let e="HttpConnection.startInternal completed gracefully but didn't enter the connection into the connected state!";return this._logger.log(A.Error,e),Promise.reject(new ln(e))}this._connectionStarted=!0})}send(n){return this._connectionState!=="Connected"?Promise.reject(new Error("Cannot send data if the connection is not in the 'Connected' State.")):(this._sendQueue||(this._sendQueue=new qb(this.transport)),this._sendQueue.send(n))}stop(n){return ve(this,null,function*(){if(this._connectionState==="Disconnected")return this._logger.log(A.Debug,`Call to HttpConnection.stop(${n}) ignored because the connection is already in the disconnected state.`),Promise.resolve();if(this._connectionState==="Disconnecting")return this._logger.log(A.Debug,`Call to HttpConnection.stop(${n}) ignored because the connection is already in the disconnecting state.`),this._stopPromise;this._connectionState="Disconnecting",this._stopPromise=new Promise(e=>{this._stopPromiseResolver=e}),yield this._stopInternal(n),yield this._stopPromise})}_stopInternal(n){return ve(this,null,function*(){this._stopError=n;try{yield this._startInternalPromise}catch{}if(this.transport){try{yield this.transport.stop()}catch(e){this._logger.log(A.Error,`HttpConnection.transport.stop() threw error '${e}'.`),this._stopConnection()}this.transport=void 0}else this._logger.log(A.Debug,"HttpConnection.transport is undefined in HttpConnection.stop() because start() failed.")})}_startInternal(n){return ve(this,null,function*(){let e=this.baseUrl;this._accessTokenFactory=this._options.accessTokenFactory,this._httpClient._accessTokenFactory=this._accessTokenFactory;try{if(this._options.skipNegotiation)if(this._options.transport===Zt.WebSockets)this.transport=this._constructTransport(Zt.WebSockets),yield this._startTransport(e,n);else throw new Error("Negotiation can only be skipped when using the WebSocket transport directly.");else{let i=null,r=0;do{if(i=yield this._getNegotiationResponse(e),this._connectionState==="Disconnecting"||this._connectionState==="Disconnected")throw new ln("The connection was stopped during negotiation.");if(i.error)throw new Error(i.error);if(i.ProtocolVersion)throw new Error("Detected a connection attempt to an ASP.NET SignalR Server. This client only supports connecting to an ASP.NET Core SignalR Server. See https://aka.ms/signalr-core-differences for details.");if(i.url&&(e=i.url),i.accessToken){let o=i.accessToken;this._accessTokenFactory=()=>o,this._httpClient._accessToken=o,this._httpClient._accessTokenFactory=void 0}r++}while(i.url&&r0?Promise.reject(new tm(`Unable to connect to the server with any of the available transports. ${s.join(" ")}`,s)):Promise.reject(new Error("None of the transports supported by the client are supported by the server."))})}_constructTransport(n){switch(n){case Zt.WebSockets:if(!this._options.WebSocket)throw new Error("'WebSocket' is not supported in your environment.");return new pm(this._httpClient,this._accessTokenFactory,this._logger,this._options.logMessageContent,this._options.WebSocket,this._options.headers||{});case Zt.ServerSentEvents:if(!this._options.EventSource)throw new Error("'EventSource' is not supported in your environment.");return new hm(this._httpClient,this._httpClient._accessToken,this._logger,this._options);case Zt.LongPolling:return new ld(this._httpClient,this._logger,this._options);default:throw new Error(`Unknown transport: ${n}.`)}}_startTransport(n,e){return this.transport.onreceive=this.onreceive,this.features.reconnect?this.transport.onclose=i=>ve(this,null,function*(){let r=!1;if(this.features.reconnect)try{this.features.disconnected(),yield this.transport.connect(n,e),yield this.features.resend()}catch{r=!0}else{this._stopConnection(i);return}r&&this._stopConnection(i)}):this.transport.onclose=i=>this._stopConnection(i),this.transport.connect(n,e)}_resolveTransportOrError(n,e,i,r){let o=Zt[n.transport];if(o==null)return this._logger.log(A.Debug,`Skipping transport '${n.transport}' because it is not supported by this client.`),new Error(`Skipping transport '${n.transport}' because it is not supported by this client.`);if(nU(e,o))if(n.transferFormats.map(a=>Ut[a]).indexOf(i)>=0){if(o===Zt.WebSockets&&!this._options.WebSocket||o===Zt.ServerSentEvents&&!this._options.EventSource)return this._logger.log(A.Debug,`Skipping transport '${Zt[o]}' because it is not supported in your environment.'`),new Jp(`'${Zt[o]}' is not supported in your environment.`,o);this._logger.log(A.Debug,`Selecting transport '${Zt[o]}'.`);try{return this.features.reconnect=o===Zt.WebSockets?r:void 0,this._constructTransport(o)}catch(a){return a}}else return this._logger.log(A.Debug,`Skipping transport '${Zt[o]}' because it does not support the requested transfer format '${Ut[i]}'.`),new Error(`'${Zt[o]}' does not support ${Ut[i]}.`);else return this._logger.log(A.Debug,`Skipping transport '${Zt[o]}' because it was disabled by the client.`),new Xp(`'${Zt[o]}' is disabled by the client.`,o)}_isITransport(n){return n&&typeof n=="object"&&"connect"in n}_stopConnection(n){if(this._logger.log(A.Debug,`HttpConnection.stopConnection(${n}) called while in state ${this._connectionState}.`),this.transport=void 0,n=this._stopError||n,this._stopError=void 0,this._connectionState==="Disconnected"){this._logger.log(A.Debug,`Call to HttpConnection.stopConnection(${n}) was ignored because the connection is already in the disconnected state.`);return}if(this._connectionState==="Connecting")throw this._logger.log(A.Warning,`Call to HttpConnection.stopConnection(${n}) was ignored because the connection is still in the connecting state.`),new Error(`HttpConnection.stopConnection(${n}) was called while the connection is still in the connecting state.`);if(this._connectionState==="Disconnecting"&&this._stopPromiseResolver(),n?this._logger.log(A.Error,`Connection disconnected with error '${n}'.`):this._logger.log(A.Information,"Connection disconnected."),this._sendQueue&&(this._sendQueue.stop().catch(e=>{this._logger.log(A.Error,`TransportSendQueue.stop() threw error '${e}'.`)}),this._sendQueue=void 0),this.connectionId=void 0,this._connectionState="Disconnected",this._connectionStarted){this._connectionStarted=!1;try{this.onclose&&this.onclose(n)}catch(e){this._logger.log(A.Error,`HttpConnection.onclose(${n}) threw error '${e}'.`)}}}_resolveUrl(n){if(n.lastIndexOf("https://",0)===0||n.lastIndexOf("http://",0)===0)return n;if(!nt.isBrowser)throw new Error(`Cannot resolve '${n}'.`);let e=window.document.createElement("a");return e.href=n,this._logger.log(A.Information,`Normalizing '${n}' to '${e.href}'.`),e.href}_resolveNegotiateUrl(n){let e=new URL(n);e.pathname.endsWith("/")?e.pathname+="negotiate":e.pathname+="/negotiate";let i=new URLSearchParams(e.searchParams);return i.has("negotiateVersion")||i.append("negotiateVersion",this._negotiateVersion.toString()),i.has("useStatefulReconnect")?i.get("useStatefulReconnect")==="true"&&(this._options._useStatefulReconnect=!0):this._options._useStatefulReconnect===!0&&i.append("useStatefulReconnect","true"),e.search=i.toString(),e.toString()}};function nU(t,n){return!t||(n&t)!==0}var qb=class t{constructor(n){this._transport=n,this._buffer=[],this._executing=!0,this._sendBufferedData=new Ul,this._transportResult=new Ul,this._sendLoopPromise=this._sendLoop()}send(n){return this._bufferData(n),this._transportResult||(this._transportResult=new Ul),this._transportResult.promise}stop(){return this._executing=!1,this._sendBufferedData.resolve(),this._sendLoopPromise}_bufferData(n){if(this._buffer.length&&typeof this._buffer[0]!=typeof n)throw new Error(`Expected data to be of type ${typeof this._buffer} but was of type ${typeof n}`);this._buffer.push(n),this._sendBufferedData.resolve()}_sendLoop(){return ve(this,null,function*(){for(;;){if(yield this._sendBufferedData.promise,!this._executing){this._transportResult&&this._transportResult.reject("Connection stopped.");break}this._sendBufferedData=new Ul;let n=this._transportResult;this._transportResult=void 0;let e=typeof this._buffer[0]=="string"?this._buffer.join(""):t._concatBuffers(this._buffer);this._buffer.length=0;try{yield this._transport.send(e),n.resolve()}catch(i){n.reject(i)}}})}static _concatBuffers(n){let e=n.map(o=>o.byteLength).reduce((o,s)=>o+s),i=new Uint8Array(e),r=0;for(let o of n)i.set(new Uint8Array(o),r),r+=o.byteLength;return i.buffer}},Ul=class{constructor(){this.promise=new Promise((n,e)=>[this._resolver,this._rejecter]=[n,e])}resolve(){this._resolver()}reject(n){this._rejecter(n)}};var iU="json",gm=class{constructor(){this.name=iU,this.version=2,this.transferFormat=Ut.Text}parseMessages(n,e){if(typeof n!="string")throw new Error("Invalid input for JSON hub protocol. Expected a string.");if(!n)return[];e===null&&(e=Rr.instance);let i=li.parse(n),r=[];for(let o of i){let s=JSON.parse(o);if(typeof s.type!="number")throw new Error("Invalid payload.");switch(s.type){case ue.Invocation:this._isInvocationMessage(s);break;case ue.StreamItem:this._isStreamItemMessage(s);break;case ue.Completion:this._isCompletionMessage(s);break;case ue.Ping:break;case ue.Close:break;case ue.Ack:this._isAckMessage(s);break;case ue.Sequence:this._isSequenceMessage(s);break;default:e.log(A.Information,"Unknown message type '"+s.type+"' ignored.");continue}r.push(s)}return r}writeMessage(n){return li.write(JSON.stringify(n))}_isInvocationMessage(n){this._assertNotEmptyString(n.target,"Invalid payload for Invocation message."),n.invocationId!==void 0&&this._assertNotEmptyString(n.invocationId,"Invalid payload for Invocation message.")}_isStreamItemMessage(n){if(this._assertNotEmptyString(n.invocationId,"Invalid payload for StreamItem message."),n.item===void 0)throw new Error("Invalid payload for StreamItem message.")}_isCompletionMessage(n){if(n.result&&n.error)throw new Error("Invalid payload for Completion message.");!n.result&&n.error&&this._assertNotEmptyString(n.error,"Invalid payload for Completion message."),this._assertNotEmptyString(n.invocationId,"Invalid payload for Completion message.")}_isAckMessage(n){if(typeof n.sequenceId!="number")throw new Error("Invalid SequenceId for Ack message.")}_isSequenceMessage(n){if(typeof n.sequenceId!="number")throw new Error("Invalid SequenceId for Sequence message.")}_assertNotEmptyString(n,e){if(typeof n!="string"||n==="")throw new Error(e)}};var rU={trace:A.Trace,debug:A.Debug,info:A.Information,information:A.Information,warn:A.Warning,warning:A.Warning,error:A.Error,critical:A.Critical,none:A.None};function oU(t){let n=rU[t.toLowerCase()];if(typeof n<"u")return n;throw new Error(`Unknown log level: ${t}`)}var ra=class{configureLogging(n){if(Ke.isRequired(n,"logging"),sU(n))this.logger=n;else if(typeof n=="string"){let e=oU(n);this.logger=new na(e)}else this.logger=new na(n);return this}withUrl(n,e){return Ke.isRequired(n,"url"),Ke.isNotEmpty(n,"url"),this.url=n,typeof e=="object"?this.httpConnectionOptions=E(E({},this.httpConnectionOptions),e):this.httpConnectionOptions=G(E({},this.httpConnectionOptions),{transport:e}),this}withHubProtocol(n){return Ke.isRequired(n,"protocol"),this.protocol=n,this}withAutomaticReconnect(n){if(this.reconnectPolicy)throw new Error("A reconnectPolicy has already been set.");return n?Array.isArray(n)?this.reconnectPolicy=new ad(n):this.reconnectPolicy=n:this.reconnectPolicy=new ad,this}withServerTimeout(n){return Ke.isRequired(n,"milliseconds"),this._serverTimeoutInMilliseconds=n,this}withKeepAliveInterval(n){return Ke.isRequired(n,"milliseconds"),this._keepAliveIntervalInMilliseconds=n,this}withStatefulReconnect(n){return this.httpConnectionOptions===void 0&&(this.httpConnectionOptions={}),this.httpConnectionOptions._useStatefulReconnect=!0,this._statefulReconnectBufferSize=n?.bufferSize,this}build(){let n=this.httpConnectionOptions||{};if(n.logger===void 0&&(n.logger=this.logger),!this.url)throw new Error("The 'HubConnectionBuilder.withUrl' method must be called before building the connection.");let e=new mm(this.url,n);return sd.create(e,this.logger||Rr.instance,this.protocol||new gm,this.reconnectPolicy,this._serverTimeoutInMilliseconds,this._keepAliveIntervalInMilliseconds,this._statefulReconnectBufferSize)}};function sU(t){return t.log!==void 0}var me=function(t){return t[t.State=0]="State",t[t.Transition=1]="Transition",t[t.Sequence=2]="Sequence",t[t.Group=3]="Group",t[t.Animate=4]="Animate",t[t.Keyframes=5]="Keyframes",t[t.Style=6]="Style",t[t.Trigger=7]="Trigger",t[t.Reference=8]="Reference",t[t.AnimateChild=9]="AnimateChild",t[t.AnimateRef=10]="AnimateRef",t[t.Query=11]="Query",t[t.Stagger=12]="Stagger",t}(me||{}),ki="*";function uo(t,n){return{type:me.Trigger,name:t,definitions:n,options:{}}}function On(t,n=null){return{type:me.Animate,styles:n,timings:t}}function _m(t,n=null){return{type:me.Sequence,steps:t,options:n}}function xt(t){return{type:me.Style,styles:t,offset:null}}function Fr(t,n,e){return{type:me.State,name:t,styles:n,options:e}}function ci(t,n,e=null){return{type:me.Transition,expr:t,animation:n,options:e}}var Lr=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(n=0,e=0){this.totalTime=n+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}onStart(n){this._originalOnStartFns.push(n),this._onStartFns.push(n)}onDone(n){this._originalOnDoneFns.push(n),this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(n=>n()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(n){this._position=this.totalTime?n*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(n){let e=n=="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},oa=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(n){this.players=n;let e=0,i=0,r=0,o=this.players.length;o==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(s=>{s.onDone(()=>{++e==o&&this._onFinish()}),s.onDestroy(()=>{++i==o&&this._onDestroy()}),s.onStart(()=>{++r==o&&this._onStart()})}),this.totalTime=this.players.reduce((s,a)=>Math.max(s,a.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}init(){this.players.forEach(n=>n.init())}onStart(n){this._onStartFns.push(n)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(n=>n()),this._onStartFns=[])}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(n=>n.play())}pause(){this.players.forEach(n=>n.pause())}restart(){this.players.forEach(n=>n.restart())}finish(){this._onFinish(),this.players.forEach(n=>n.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(n=>n.destroy()),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this.players.forEach(n=>n.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(n){let e=n*this.totalTime;this.players.forEach(i=>{let r=i.totalTime?Math.min(1,e/i.totalTime):1;i.setPosition(r)})}getPosition(){let n=this.players.reduce((e,i)=>e===null||i.totalTime>e.totalTime?i:e,null);return n!=null?n.getPosition():0}beforeDestroy(){this.players.forEach(n=>{n.beforeDestroy&&n.beforeDestroy()})}triggerCallback(n){let e=n=="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},$l="!";var ym=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:()=>S(aU),providedIn:"root"})}return t})(),Qb=class{},aU=(()=>{class t extends ym{animationModuleType=S(su,{optional:!0});_nextAnimationId=0;_renderer;constructor(e,i){super();let r={id:"0",encapsulation:Ci.None,styles:[],data:{animation:[]}};if(this._renderer=e.createRenderer(i.body,r),this.animationModuleType===null&&!cU(this._renderer))throw new R(3600,!1)}build(e){let i=this._nextAnimationId;this._nextAnimationId++;let r=Array.isArray(e)?_m(e):e;return DI(this._renderer,null,i,"register",[r]),new Kb(i,this._renderer)}static \u0275fac=function(i){return new(i||t)(j(jn),j(Pe))};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Kb=class extends Qb{_id;_renderer;constructor(n,e){super(),this._id=n,this._renderer=e}create(n,e){return new Zb(this._id,n,e||{},this._renderer)}},Zb=class{id;element;_renderer;parentPlayer=null;_started=!1;constructor(n,e,i,r){this.id=n,this.element=e,this._renderer=r,this._command("create",i)}_listen(n,e){return this._renderer.listen(this.element,`@@${this.id}:${n}`,e)}_command(n,...e){DI(this._renderer,this.element,this.id,n,e)}onDone(n){this._listen("done",n)}onStart(n){this._listen("start",n)}onDestroy(n){this._listen("destroy",n)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset"),this._started=!1}setPosition(n){this._command("setPosition",n)}getPosition(){return lU(this._renderer)?.engine?.players[this.id]?.getPosition()??0}totalTime=0};function DI(t,n,e,i,r){t.setProperty(n,`@@${e}:${i}`,r)}function lU(t){let n=t.\u0275type;return n===0?t:n===1?t.animationRenderer:null}function cU(t){let n=t.\u0275type;return n===0||n===1}var MI=["toast-component",""];function dU(t,n){if(t&1){let e=N();d(0,"button",5),D("click",function(){C(e);let r=m();return w(r.remove())}),d(1,"span",6),y(2,"\xD7"),f()()}}function fU(t,n){if(t&1&&(Lt(0),y(1),Ft()),t&2){let e=m(2);h(),oe("[",e.duplicatesCount+1,"]")}}function hU(t,n){if(t&1&&(d(0,"div"),y(1),T(2,fU,2,1,"ng-container",4),f()),t&2){let e=m();sn(e.options.titleClass),ee("aria-label",e.title),h(),oe(" ",e.title," "),h(),g("ngIf",e.duplicatesCount)}}function pU(t,n){if(t&1&&I(0,"div",7),t&2){let e=m();sn(e.options.messageClass),g("innerHTML",e.message,ii)}}function mU(t,n){if(t&1&&(d(0,"div",8),y(1),f()),t&2){let e=m();sn(e.options.messageClass),ee("aria-label",e.message),h(),oe(" ",e.message," ")}}function gU(t,n){if(t&1&&(d(0,"div"),I(1,"div",9),f()),t&2){let e=m();h(),dn("width",e.width()+"%")}}function _U(t,n){if(t&1){let e=N();d(0,"button",5),D("click",function(){C(e);let r=m();return w(r.remove())}),d(1,"span",6),y(2,"\xD7"),f()()}}function yU(t,n){if(t&1&&(Lt(0),y(1),Ft()),t&2){let e=m(2);h(),oe("[",e.duplicatesCount+1,"]")}}function vU(t,n){if(t&1&&(d(0,"div"),y(1),T(2,yU,2,1,"ng-container",4),f()),t&2){let e=m();sn(e.options.titleClass),ee("aria-label",e.title),h(),oe(" ",e.title," "),h(),g("ngIf",e.duplicatesCount)}}function bU(t,n){if(t&1&&I(0,"div",7),t&2){let e=m();sn(e.options.messageClass),g("innerHTML",e.message,ii)}}function CU(t,n){if(t&1&&(d(0,"div",8),y(1),f()),t&2){let e=m();sn(e.options.messageClass),ee("aria-label",e.message),h(),oe(" ",e.message," ")}}function wU(t,n){if(t&1&&(d(0,"div"),I(1,"div",9),f()),t&2){let e=m();h(),dn("width",e.width()+"%")}}var Jb=class{_attachedHost;component;viewContainerRef;injector;constructor(n,e){this.component=n,this.injector=e}attach(n,e){return this._attachedHost=n,n.attach(this,e)}detach(){let n=this._attachedHost;if(n)return this._attachedHost=void 0,n.detach()}get isAttached(){return this._attachedHost!=null}setAttachedHost(n){this._attachedHost=n}},Xb=class{_attachedPortal;_disposeFn;attach(n,e){return this._attachedPortal=n,this.attachComponentPortal(n,e)}detach(){this._attachedPortal&&this._attachedPortal.setAttachedHost(),this._attachedPortal=void 0,this._disposeFn&&(this._disposeFn(),this._disposeFn=void 0)}setDisposeFn(n){this._disposeFn=n}},eC=class{_overlayRef;componentInstance;duplicatesCount=0;_afterClosed=new ie;_activate=new ie;_manualClose=new ie;_resetTimeout=new ie;_countDuplicate=new ie;constructor(n){this._overlayRef=n}manualClose(){this._manualClose.next(),this._manualClose.complete()}manualClosed(){return this._manualClose.asObservable()}timeoutReset(){return this._resetTimeout.asObservable()}countDuplicate(){return this._countDuplicate.asObservable()}close(){this._overlayRef.detach(),this._afterClosed.next(),this._manualClose.next(),this._afterClosed.complete(),this._manualClose.complete(),this._activate.complete(),this._resetTimeout.complete(),this._countDuplicate.complete()}afterClosed(){return this._afterClosed.asObservable()}isInactive(){return this._activate.isStopped}activate(){this._activate.next(),this._activate.complete()}afterActivate(){return this._activate.asObservable()}onDuplicate(n,e){n&&this._resetTimeout.next(),e&&this._countDuplicate.next(++this.duplicatesCount)}},zl=class{toastId;config;message;title;toastType;toastRef;_onTap=new ie;_onAction=new ie;constructor(n,e,i,r,o,s){this.toastId=n,this.config=e,this.message=i,this.title=r,this.toastType=o,this.toastRef=s,this.toastRef.afterClosed().subscribe(()=>{this._onAction.complete(),this._onTap.complete()})}triggerTap(){this._onTap.next(),this.config.tapToDismiss&&this._onTap.complete()}onTap(){return this._onTap.asObservable()}triggerAction(n){this._onAction.next(n)}onAction(){return this._onAction.asObservable()}},SI={maxOpened:0,autoDismiss:!1,newestOnTop:!0,preventDuplicates:!1,countDuplicates:!1,resetTimeoutOnDuplicate:!1,includeTitleDuplicates:!1,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},closeButton:!1,disableTimeOut:!1,timeOut:5e3,extendedTimeOut:1e3,enableHtml:!1,progressBar:!1,toastClass:"ngx-toastr",positionClass:"toast-top-right",titleClass:"toast-title",messageClass:"toast-message",easing:"ease-in",easeTime:300,tapToDismiss:!0,onActivateTick:!1,progressAnimation:"decreasing"},TI=new $("ToastConfig"),tC=class extends Xb{_hostDomElement;_componentFactoryResolver;_appRef;constructor(n,e,i){super(),this._hostDomElement=n,this._componentFactoryResolver=e,this._appRef=i}attachComponentPortal(n,e){let i=this._componentFactoryResolver.resolveComponentFactory(n.component),r;return r=i.create(n.injector),this._appRef.attachView(r.hostView),this.setDisposeFn(()=>{this._appRef.detachView(r.hostView),r.destroy()}),e?this._hostDomElement.insertBefore(this._getComponentRootNode(r),this._hostDomElement.firstChild):this._hostDomElement.appendChild(this._getComponentRootNode(r)),r}_getComponentRootNode(n){return n.hostView.rootNodes[0]}},DU=(()=>{class t{_document=S(Pe);_containerElement;ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let e=this._document.createElement("div");e.classList.add("overlay-container"),e.setAttribute("aria-live","polite"),this._document.body.appendChild(e),this._containerElement=e}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),nC=class{_portalHost;constructor(n){this._portalHost=n}attach(n,e=!0){return this._portalHost.attach(n,e)}detach(){return this._portalHost.detach()}},MU=(()=>{class t{_overlayContainer=S(DU);_componentFactoryResolver=S(Lo);_appRef=S(Hn);_document=S(Pe);_paneElements=new Map;create(e,i){return this._createOverlayRef(this.getPaneElement(e,i))}getPaneElement(e="",i){return this._paneElements.get(i)||this._paneElements.set(i,{}),this._paneElements.get(i)[e]||(this._paneElements.get(i)[e]=this._createPaneElement(e,i)),this._paneElements.get(i)[e]}_createPaneElement(e,i){let r=this._document.createElement("div");return r.id="toast-container",r.classList.add(e),r.classList.add("toast-container"),i?i.getContainerElement().appendChild(r):this._overlayContainer.getContainerElement().appendChild(r),r}_createPortalHost(e){return new tC(e,this._componentFactoryResolver,this._appRef)}_createOverlayRef(e){return new nC(this._createPortalHost(e))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),At=(()=>{class t{overlay;_injector;sanitizer;ngZone;toastrConfig;currentlyActive=0;toasts=[];overlayContainer;previousToastMessage;index=0;constructor(e,i,r,o,s){this.overlay=i,this._injector=r,this.sanitizer=o,this.ngZone=s,this.toastrConfig=E(E({},e.default),e.config),e.config.iconClasses&&(this.toastrConfig.iconClasses=E(E({},e.default.iconClasses),e.config.iconClasses))}show(e,i,r={},o=""){return this._preBuildNotification(o,e,i,this.applyConfig(r))}success(e,i,r={}){let o=this.toastrConfig.iconClasses.success||"";return this._preBuildNotification(o,e,i,this.applyConfig(r))}error(e,i,r={}){let o=this.toastrConfig.iconClasses.error||"";return this._preBuildNotification(o,e,i,this.applyConfig(r))}info(e,i,r={}){let o=this.toastrConfig.iconClasses.info||"";return this._preBuildNotification(o,e,i,this.applyConfig(r))}warning(e,i,r={}){let o=this.toastrConfig.iconClasses.warning||"";return this._preBuildNotification(o,e,i,this.applyConfig(r))}clear(e){for(let i of this.toasts)if(e!==void 0){if(i.toastId===e){i.toastRef.manualClose();return}}else i.toastRef.manualClose()}remove(e){let i=this._findToast(e);if(!i||(i.activeToast.toastRef.close(),this.toasts.splice(i.index,1),this.currentlyActive=this.currentlyActive-1,!this.toastrConfig.maxOpened||!this.toasts.length))return!1;if(this.currentlyActivethis._buildNotification(e,i,r,o)):this._buildNotification(e,i,r,o)}_buildNotification(e,i,r,o){if(!o.toastComponent)throw new Error("toastComponent required");let s=this.findDuplicate(r,i,this.toastrConfig.resetTimeoutOnDuplicate&&o.timeOut>0,this.toastrConfig.countDuplicates);if((this.toastrConfig.includeTitleDuplicates&&r||i)&&this.toastrConfig.preventDuplicates&&s!==null)return s;this.previousToastMessage=i;let a=!1;this.toastrConfig.maxOpened&&this.currentlyActive>=this.toastrConfig.maxOpened&&(a=!0,this.toastrConfig.autoDismiss&&this.clear(this.toasts[0].toastId));let l=this.overlay.create(o.positionClass,this.overlayContainer);this.index=this.index+1;let c=i;i&&o.enableHtml&&(c=this.sanitizer.sanitize(ni.HTML,i));let u=new eC(l),p=new zl(this.index,o,c,r,e,u),v=[{provide:zl,useValue:p}],_=Nt.create({providers:v,parent:this._injector}),M=new Jb(o.toastComponent,_),x=l.attach(M,o.newestOnTop);u.componentInstance=x.instance;let P={toastId:this.index,title:r||"",message:i||"",toastRef:u,onShown:u.afterActivate(),onHidden:u.afterClosed(),onTap:p.onTap(),onAction:p.onAction(),portal:x};return a||(this.currentlyActive=this.currentlyActive+1,setTimeout(()=>{P.toastRef.activate()})),this.toasts.push(P),P}static \u0275fac=function(i){return new(i||t)(j(TI),j(MU),j(Nt),j(so),j(xe))};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),SU=(()=>{class t{toastrService;toastPackage;ngZone;message;title;options;duplicatesCount;originalTimeout;width=qe(-1);toastClasses="";state;get _state(){return this.state()}get displayStyle(){if(this.state().value==="inactive")return"none"}timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(e,i,r){this.toastrService=e,this.toastPackage=i,this.ngZone=r,this.message=i.message,this.title=i.title,this.options=i.config,this.originalTimeout=i.config.timeOut,this.toastClasses=`${i.toastType} ${i.config.toastClass}`,this.sub=i.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=i.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=i.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=i.toastRef.countDuplicate().subscribe(o=>{this.duplicatesCount=o}),this.state=qe({value:"inactive",params:{easeTime:this.toastPackage.config.easeTime,easing:"ease-in"}})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.update(e=>G(E({},e),{value:"active"})),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.outsideTimeout(()=>this.remove(),this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let e=new Date().getTime(),i=this.hideTime-e;this.width.set(i/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(r=>100-r),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.update(e=>G(E({},e),{value:"active"})),this.outsideTimeout(()=>this.remove(),this.originalTimeout),this.options.timeOut=this.originalTimeout,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10)}remove(){this.state().value!=="removed"&&(clearTimeout(this.timeout),this.state.update(e=>G(E({},e),{value:"removed"})),this.outsideTimeout(()=>this.toastrService.remove(this.toastPackage.toastId),+this.toastPackage.config.easeTime))}tapToast(){this.state().value!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state().value!=="removed"&&this.options.disableTimeOut!=="extendedTimeOut"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state().value==="removed"||(this.outsideTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}outsideTimeout(e,i){this.ngZone?this.ngZone.runOutsideAngular(()=>this.timeout=setTimeout(()=>this.runInsideAngular(e),i)):this.timeout=setTimeout(()=>e(),i)}outsideInterval(e,i){this.ngZone?this.ngZone.runOutsideAngular(()=>this.intervalId=setInterval(()=>this.runInsideAngular(e),i)):this.intervalId=setInterval(()=>e(),i)}runInsideAngular(e){this.ngZone?this.ngZone.run(()=>e()):e()}static \u0275fac=function(i){return new(i||t)(b(At),b(zl),b(xe))};static \u0275cmp=L({type:t,selectors:[["","toast-component",""]],hostVars:5,hostBindings:function(i,r){i&1&&D("click",function(){return r.tapToast()})("mouseenter",function(){return r.stickAround()})("mouseleave",function(){return r.delayedHideToast()}),i&2&&(E0("@flyInOut",r._state),sn(r.toastClasses),dn("display",r.displayStyle))},attrs:MI,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(i,r){i&1&&T(0,dU,3,0,"button",0)(1,hU,3,5,"div",1)(2,pU,1,3,"div",2)(3,mU,2,4,"div",3)(4,gU,2,2,"div",4),i&2&&(g("ngIf",r.options.closeButton),h(),g("ngIf",r.title),h(),g("ngIf",r.message&&r.options.enableHtml),h(),g("ngIf",r.message&&!r.options.enableHtml),h(),g("ngIf",r.options.progressBar))},dependencies:[Te],encapsulation:2,data:{animation:[uo("flyInOut",[Fr("inactive",xt({opacity:0})),Fr("active",xt({opacity:1})),Fr("removed",xt({opacity:0})),ci("inactive => active",On("{{ easeTime }}ms {{ easing }}")),ci("active => removed",On("{{ easeTime }}ms {{ easing }}"))])]},changeDetection:0})}return t})(),TU=G(E({},SI),{toastComponent:SU}),iC=(t={})=>Ro([{provide:TI,useValue:{default:TU,config:t}}]),EI=(()=>{class t{static forRoot(e={}){return{ngModule:t,providers:[iC(e)]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=we({type:t});static \u0275inj=Ce({})}return t})();var EU=(()=>{class t{toastrService;toastPackage;appRef;message;title;options;duplicatesCount;originalTimeout;width=qe(-1);toastClasses="";get displayStyle(){return this.state()==="inactive"?"none":null}state=qe("inactive");timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(e,i,r){this.toastrService=e,this.toastPackage=i,this.appRef=r,this.message=i.message,this.title=i.title,this.options=i.config,this.originalTimeout=i.config.timeOut,this.toastClasses=`${i.toastType} ${i.config.toastClass}`,this.sub=i.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=i.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=i.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=i.toastRef.countDuplicate().subscribe(o=>{this.duplicatesCount=o})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.set("active"),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.timeout=setTimeout(()=>{this.remove()},this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))),this.options.onActivateTick&&this.appRef.tick()}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let e=new Date().getTime(),i=this.hideTime-e;this.width.set(i/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(r=>100-r),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.set("active"),this.options.timeOut=this.originalTimeout,this.timeout=setTimeout(()=>this.remove(),this.originalTimeout),this.hideTime=new Date().getTime()+(this.originalTimeout||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))}remove(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.state.set("removed"),this.timeout=setTimeout(()=>this.toastrService.remove(this.toastPackage.toastId)))}tapToast(){this.state()!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state()==="removed"||(this.timeout=setTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10)))}static \u0275fac=function(i){return new(i||t)(b(At),b(zl),b(Hn))};static \u0275cmp=L({type:t,selectors:[["","toast-component",""]],hostVars:4,hostBindings:function(i,r){i&1&&D("click",function(){return r.tapToast()})("mouseenter",function(){return r.stickAround()})("mouseleave",function(){return r.delayedHideToast()}),i&2&&(sn(r.toastClasses),dn("display",r.displayStyle))},attrs:MI,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(i,r){i&1&&T(0,_U,3,0,"button",0)(1,vU,3,5,"div",1)(2,bU,1,3,"div",2)(3,CU,2,4,"div",3)(4,wU,2,2,"div",4),i&2&&(g("ngIf",r.options.closeButton),h(),g("ngIf",r.title),h(),g("ngIf",r.message&&r.options.enableHtml),h(),g("ngIf",r.message&&!r.options.enableHtml),h(),g("ngIf",r.options.progressBar))},dependencies:[Te],encapsulation:2,changeDetection:0})}return t})(),hde=G(E({},SI),{toastComponent:EU});var Zo=class t{hubConnection;toastr=S(At);router=S(hn);onlineUsers=qe([]);hubUrl=Kt.hubsUrl;createHubConnection(n){this.hubConnection=new ra().withUrl(this.hubUrl+"presence",{accessTokenFactory:()=>n.token}).withAutomaticReconnect().build(),this.hubConnection.start().catch(e=>console.log(e)),this.hubConnection.on("UserIsOnline",e=>{this.toastr.info(e+" has connected"),this.onlineUsers.update(i=>[...i,e])}),this.hubConnection.on("UserIsOffline",e=>{this.toastr.warning(e+" has disconnected"),this.onlineUsers.update(i=>i.filter(r=>r!==e))}),this.hubConnection.on("GetOnlineUsers",e=>{this.onlineUsers.set(e)}),this.hubConnection.on("NewMessageReceived",({username:e,knownAs:i})=>{this.toastr.info(i+" has sent you a new message!").onTap.pipe(Mt(1)).subscribe(()=>this.router.navigateByUrl("/members/"+e+"?tab=Messages"))}),this.hubConnection.on("PhotoApproved",e=>{this.toastr.success(e.message)}),this.hubConnection.on("PhotoRejected",e=>{this.toastr.error(e.message)})}stopHubConnection(){this.hubConnection?.state===Ye.Connected&&this.hubConnection.stop().catch(n=>console.log(n))}static \u0275fac=function(e){return new(e||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};var lt=class t{http=S(Yn);likesService=S(qo);presenceSerivce=S(Zo);baseUrl=Kt.apiUrl;currentUser=qe(null);roles=Ji(()=>{let n=this.currentUser();if(n&&n.token){let e=JSON.parse(atob(n.token.split(".")[1])).role;return Array.isArray(e)?e:[e]}return[]});login(n){return this.http.post(this.baseUrl+"account/login",n).pipe(q(e=>{e&&this.setCurrentUser(e)}))}register(n){return this.http.post(this.baseUrl+"account/register",n).pipe(q(e=>(e&&this.setCurrentUser(e),e)))}setCurrentUser(n){n.photoUrl||(n.photoUrl="https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain"),localStorage.setItem("user",JSON.stringify(n)),this.currentUser.set(n),this.likesService.getLikeIds(),this.presenceSerivce.createHubConnection(n)}logout(){localStorage.removeItem("user"),this.currentUser.set(null),this.presenceSerivce.stopHubConnection()}static \u0275fac=function(e){return new(e||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};function xU(t,n){if(t&1&&(d(0,"div",3),y(1),f()),t&2){let e=m();h(),oe(" Please enter ",e.label()," ")}}function IU(t,n){if(t&1&&(d(0,"div",3),y(1),f()),t&2){let e,i=m();h(),Dr(" ",i.label()," must be at least ",(e=i.control.getError("minlength"))==null?null:e.requiredLength," characters ")}}function kU(t,n){if(t&1&&(d(0,"div",3),y(1),f()),t&2){let e,i=m();h(),Dr(" ",i.label()," must be at most ",(e=i.control.getError("maxlength"))==null?null:e.requiredLength," characters ")}}function AU(t,n){t&1&&(d(0,"div",3),y(1," Passwords do not match "),f())}var vm=class t{constructor(n){this.ngControl=n;this.ngControl.valueAccessor=this}label=un("");type=un("text");get control(){return this.ngControl.control}writeValue(n){}registerOnChange(n){}registerOnTouched(n){}static \u0275fac=function(e){return new(e||t)(b(Gn,2))};static \u0275cmp=L({type:t,selectors:[["app-text-input"]],inputs:{label:[1,"label"],type:[1,"type"]},decls:8,vars:10,consts:[[1,"mb-3","form-floating"],[1,"form-control",3,"type","formControl","placeholder"],["class","invalid-feedback text-start",4,"ngIf"],[1,"invalid-feedback","text-start"]],template:function(e,i){e&1&&(d(0,"div",0),I(1,"input",1),d(2,"label"),y(3),f(),T(4,xU,2,1,"div",2)(5,IU,2,2,"div",2)(6,kU,2,2,"div",2)(7,AU,2,0,"div",2),f()),e&2&&(h(),B("is-invalid",i.control.touched&&i.control.invalid),g("type",i.type())("formControl",i.control)("placeholder",i.label()),h(2),H(i.label()),h(),g("ngIf",(i.control==null?null:i.control.hasError("required"))&&(i.control==null?null:i.control.touched)),h(),g("ngIf",(i.control==null?null:i.control.hasError("minlength"))&&(i.control==null?null:i.control.touched)),h(),g("ngIf",(i.control==null?null:i.control.hasError("maxlength"))&&(i.control==null?null:i.control.touched)),h(),g("ngIf",i.control==null?null:i.control.hasError("isMatching")))},dependencies:[jl,Bt,kt,ea,Te],encapsulation:2})};function PU(t,n){return(t%n+n)%n}function da(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function di(t){return typeof t=="string"}function bd(t){return t instanceof Date||Object.prototype.toString.call(t)==="[object Date]"}function go(t){return t&&t.getTime&&!isNaN(t.getTime())}function ha(t){return t instanceof Function||Object.prototype.toString.call(t)==="[object Function]"}function oc(t){return typeof t=="number"||Object.prototype.toString.call(t)==="[object Number]"}function ut(t){return t instanceof Array||Object.prototype.toString.call(t)==="[object Array]"}function Mn(t,n){return Object.prototype.hasOwnProperty.call(t,n)}function ma(t){return t!=null&&Object.prototype.toString.call(t)==="[object Object]"}function OU(t){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(t).length===0;let n;for(n in t)if(t.hasOwnProperty(n))return!1;return!0}function sk(t){return t===void 0}function Ie(t){let n=+t,e=0;return n!==0&&isFinite(n)&&(e=da(n)),e}var hd={},xI={date:"day",hour:"hours",minute:"minutes",second:"seconds",millisecond:"milliseconds"};function Sn(t,n){let e=t.toLowerCase(),i=t;e in xI&&(i=xI[e]),hd[e]=hd[`${e}s`]=hd[n]=i}function ak(t){return di(t)?hd[t]||hd[t.toLowerCase()]:void 0}function RU(t){let n={},e,i;for(i in t)Mn(t,i)&&(e=ak(i),e&&(n[e]=t[i]));return n}var ar=0,po=1,Vr=2,Jt=3,lr=4,mo=5,pa=6,NU=7,LU=8;function ho(t,n,e){let i=`${Math.abs(t)}`,r=n-i.length,s=t>=0?e?"+":"":"-",a=Math.pow(10,Math.max(0,r)).toString().substr(1);return s+a+i}var rC={},nc={},lk=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;function ce(t,n,e,i){t&&(nc[t]=i),n&&(nc[n[0]]=function(){return ho(i.apply(null,arguments),n[1],n[2])}),e&&(nc[e]=function(r,o){return o.locale.ordinal(i.apply(null,arguments),t)})}function FU(t){let n=t.match(lk),e=n.length,i=new Array(e);for(let r=0;r=0&&isFinite(i.getUTCFullYear())&&i.setUTCFullYear(t),i}function Pm(t,n=0,e=1,i=0,r=0,o=0,s=0){let a=new Date(t,n,e,i,r,o,s);return t<100&&t>=0&&isFinite(a.getFullYear())&&a.setFullYear(t),a}function ke(t,n=!1){return n?t.getUTCHours():t.getHours()}function Xl(t,n=!1){return n?t.getUTCMinutes():t.getMinutes()}function bC(t,n=!1){return n?t.getUTCSeconds():t.getSeconds()}function fo(t,n=!1){return n?t.getUTCMilliseconds():t.getMilliseconds()}function jU(t){return t.getTime()}function cr(t,n=!1){return n?t.getUTCDay():t.getDay()}function _d(t,n=!1){return n?t.getUTCDate():t.getDate()}function Ne(t,n=!1){return n?t.getUTCMonth():t.getMonth()}function $t(t,n=!1){return n?t.getUTCFullYear():t.getFullYear()}function HU(t){return Math.floor(t.valueOf()/1e3)}function ck(t){return Pm(t.getFullYear(),t.getMonth(),1,t.getHours(),t.getMinutes(),t.getSeconds())}function uk(t,n){return t.getDay()===Number(n)}function _a(t,n){return!t||!n?!1:ya(t,n)&&Ne(t)===Ne(n)}function ya(t,n){return!t||!n?!1:$t(t)===$t(n)}function _o(t,n){return!t||!n?!1:ya(t,n)&&_a(t,n)&&_d(t)===_d(n)}var dk=/\d/,ui=/\d\d/,fk=/\d{3}/,CC=/\d{4}/,Tm=/[+-]?\d{6}/,ft=/\d\d?/,II=/\d\d\d\d?/,kI=/\d\d\d\d\d\d?/,wm=/\d{1,3}/,wC=/\d{1,4}/,Em=/[+-]?\d{1,6}/,BU=/\d+/,xm=/[+-]?\d+/;var oC=/Z|[+-]\d\d(?::?\d\d)?/gi,UU=/[+-]?\d+(\.\d{1,3})?/,pd=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Im={};function Z(t,n,e){if(ha(n)){Im[t]=n;return}Im[t]=function(i,r){return i&&e?e:n}}function $U(t,n){return Mn(Im,t)?Im[t](!1,n):new RegExp(zU(t))}function zU(t){return fa(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(n,e,i,r,o)=>e||i||r||o))}function fa(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}var DC={};function dt(t,n){let e=di(t)?[t]:t,i=n;if(oc(n)&&(i=function(r,o,s){return o[n]=Ie(r),s}),ut(e)&&ha(i)){let r;for(r=0;r68?1900:2e3)}function md(t){return hk(t)?366:365}function hk(t){return t%4===0&&t%100!==0||t%400===0}function kC(t,n){if(isNaN(t)||isNaN(n))return NaN;let e=PU(n,12),i=t+(n-e)/12;return e===1?hk(i)?29:28:31-e%7%2}function KU(){ce("M",["MM",2,!1],"Mo",function(t,n){return(Ne(t,n.isUTC)+1).toString(10)}),ce("MMM",null,null,function(t,n){return n.locale.monthsShort(t,n.format,n.isUTC)}),ce("MMMM",null,null,function(t,n){return n.locale.months(t,n.format,n.isUTC)}),Sn("month","M"),Tn("month",8),Z("M",ft),Z("MM",ft,ui),Z("MMM",function(t,n){return n.monthsShortRegex(t)}),Z("MMMM",function(t,n){return n.monthsRegex(t)}),dt(["M","MM"],function(t,n,e){return n[po]=Ie(t)-1,e}),dt(["MMM","MMMM"],function(t,n,e,i){let r=e._locale.monthsParse(t,i,e._strict);return r!=null?n[po]=r:Be(e).invalidMonth=!!t,e})}var ZU={year:0,month:0,day:0,hour:0,minute:0,seconds:0};function en(t,n){let e=Object.assign({},ZU,n),i=t.getFullYear()+(e.year||0),r=t.getMonth()+(e.month||0),o=t.getDate()+(e.day||0);return e.month&&!e.day&&(o=Math.min(o,kC(i,r))),Pm(i,r,o,t.getHours()+(e.hour||0),t.getMinutes()+(e.minute||0),t.getSeconds()+(e.seconds||0))}function pk(t,n){return Pm(Yl(t.getFullYear(),n.year),Yl(t.getMonth(),n.month),1,Yl(t.getHours(),n.hour),Yl(t.getMinutes(),n.minute),Yl(t.getSeconds(),n.seconds),Yl(t.getMilliseconds(),n.milliseconds))}function Yl(t,n){return oc(n)?n:t}function SC(t,n,e){let i=Math.min(_d(t),kC($t(t),n));return e?t.setUTCMonth(n,i):t.setMonth(n,i),t}function JU(t,n,e){return e?t.setUTCHours(n):t.setHours(n),t}function XU(t,n,e){return e?t.setUTCMinutes(n):t.setMinutes(n),t}function e$(t,n,e){return e?t.setUTCSeconds(n):t.setSeconds(n),t}function t$(t,n,e){return e?t.setUTCMilliseconds(n):t.setMilliseconds(n),t}function mk(t,n,e){return e?t.setUTCDate(n):t.setDate(n),t}function n$(t,n){return t.setTime(n),t}function ga(t){return new Date(t.getTime())}function jr(t,n,e){let i=ga(t);switch(n){case"year":SC(i,0,e);case"quarter":case"month":mk(i,1,e);case"week":case"isoWeek":case"day":case"date":JU(i,0,e);case"hours":XU(i,0,e);case"minutes":e$(i,0,e);case"seconds":t$(i,0,e)}return n==="week"&&Sz(i,0,{isUTC:e}),n==="isoWeek"&&Ez(i,1),n==="quarter"&&SC(i,Math.floor(Ne(i,e)/3)*3,e),i}function Cd(t,n,e){let i=n;i==="date"&&(i="day");let r=jr(t,i,e),o=vd(r,1,i==="isoWeek"?"week":i,e);return Cz(o,1,"milliseconds",e)}function i$(){ce("DDD",["DDDD",3,!1],"DDDo",function(t){return gk(t).toString(10)}),Sn("dayOfYear","DDD"),Tn("dayOfYear",4),Z("DDD",wm),Z("DDDD",fk),dt(["DDD","DDDD"],function(t,n,e){return e._dayOfYear=Ie(t),e})}function gk(t,n){let e=+jr(t,"day",n),i=+jr(t,"year",n),r=e-i,o=1e3*60*60*24;return Math.round(r/o)+1}function km(t,n,e){let i=n-e+7;return-((IC(t,0,i).getUTCDay()-n+7)%7)+i-1}function r$(t,n,e,i,r){let o=(7+e-i)%7,s=km(t,i,r),a=1+7*(n-1)+o+s,l,c;return a<=0?(l=t-1,c=md(l)+a):a>md(t)?(l=t+1,c=a-md(t)):(l=t,c=a),{year:l,dayOfYear:c}}function ic(t,n,e,i){let r=km($t(t,i),n,e),o=Math.floor((gk(t,i)-r-1)/7)+1,s,a;return o<1?(a=$t(t,i)-1,s=o+Dm(a,n,e)):o>Dm($t(t,i),n,e)?(s=o-Dm($t(t,i),n,e),a=$t(t,i)+1):(a=$t(t,i),s=o),{week:s,year:a}}function Dm(t,n,e){let i=km(t,n,e),r=km(t+1,n,e);return(md(t)-i+r)/7}var AI=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,o$="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),_k="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),s$="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),yk="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),a$="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),vk={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},l$="%d",c$=/\d{1,2}/,u$=pd,d$=pd,TC=class{constructor(n){n&&this.set(n)}set(n){let e;for(e in n){if(!n.hasOwnProperty(e))continue;let i=n[e],r=ha(i)?e:`_${e}`;this[r]=i}this._config=n}calendar(n,e,i){let r=this._calendar[n]||this._calendar.sameElse;return ha(r)?r.call(null,e,i):r}longDateFormat(n){let e=this._longDateFormat[n],i=this._longDateFormat[n.toUpperCase()];return e||!i?e:(this._longDateFormat[n]=i.replace(/MMMM|MM|DD|dddd/g,function(r){return r.slice(1)}),this._longDateFormat[n])}get invalidDate(){return this._invalidDate}set invalidDate(n){this._invalidDate=n}ordinal(n,e){return this._ordinal.replace("%d",n.toString(10))}preparse(n,e){return n}getFullYear(n,e=!1){return $t(n,e)}postformat(n){return n}relativeTime(n,e,i,r){let o=this._relativeTime[i];return ha(o)?o(n,e,i,r):o.replace(/%d/i,n.toString(10))}pastFuture(n,e){let i=this._relativeTime[n>0?"future":"past"];return ha(i)?i(e):i.replace(/%s/i,e)}months(n,e,i=!1){if(!n)return ut(this._months)?this._months:this._months.standalone;if(ut(this._months))return this._months[Ne(n,i)];let r=(this._months.isFormat||AI).test(e)?"format":"standalone";return this._months[r][Ne(n,i)]}monthsShort(n,e,i=!1){if(!n)return ut(this._monthsShort)?this._monthsShort:this._monthsShort.standalone;if(ut(this._monthsShort))return this._monthsShort[Ne(n,i)];let r=AI.test(e)?"format":"standalone";return this._monthsShort[r][Ne(n,i)]}monthsParse(n,e,i){let r,o;if(this._monthsParseExact)return this.handleMonthStrictParse(n,e,i);this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]);let s;for(s=0;s<12;s++){if(r=new Date(Date.UTC(2e3,s)),i&&!this._longMonthsParse[s]){let a=this.months(r,"",!0).replace(".",""),l=this.monthsShort(r,"",!0).replace(".","");this._longMonthsParse[s]=new RegExp(`^${a}$`,"i"),this._shortMonthsParse[s]=new RegExp(`^${l}$`,"i")}if(!i&&!this._monthsParse[s]&&(o=`^${this.months(r,"",!0)}|^${this.monthsShort(r,"",!0)}`,this._monthsParse[s]=new RegExp(o.replace(".",""),"i")),i&&e==="MMMM"&&this._longMonthsParse[s].test(n)||i&&e==="MMM"&&this._shortMonthsParse[s].test(n)||!i&&this._monthsParse[s].test(n))return s}}monthsRegex(n){return this._monthsParseExact?(Mn(this,"_monthsRegex")||this.computeMonthsParse(),n?this._monthsStrictRegex:this._monthsRegex):(Mn(this,"_monthsRegex")||(this._monthsRegex=d$),this._monthsStrictRegex&&n?this._monthsStrictRegex:this._monthsRegex)}monthsShortRegex(n){return this._monthsParseExact?(Mn(this,"_monthsRegex")||this.computeMonthsParse(),n?this._monthsShortStrictRegex:this._monthsShortRegex):(Mn(this,"_monthsShortRegex")||(this._monthsShortRegex=u$),this._monthsShortStrictRegex&&n?this._monthsShortStrictRegex:this._monthsShortRegex)}week(n,e){return ic(n,this._week.dow,this._week.doy,e).week}firstDayOfWeek(){return this._week.dow}firstDayOfYear(){return this._week.doy}weekdays(n,e,i){if(!n)return ut(this._weekdays)?this._weekdays:this._weekdays.standalone;if(ut(this._weekdays))return this._weekdays[cr(n,i)];let r=this._weekdays.isFormat.test(e)?"format":"standalone";return this._weekdays[r][cr(n,i)]}weekdaysMin(n,e,i){return n?this._weekdaysMin[cr(n,i)]:this._weekdaysMin}weekdaysShort(n,e,i){return n?this._weekdaysShort[cr(n,i)]:this._weekdaysShort}weekdaysParse(n,e,i){let r,o;if(this._weekdaysParseExact)return this.handleWeekStrictParse(n,e,i);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){let s=Mm(new Date(Date.UTC(2e3,1)),r,null,!0);if(i&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp(`^${this.weekdays(s,"",!0).replace(".",".?")}$`,"i"),this._shortWeekdaysParse[r]=new RegExp(`^${this.weekdaysShort(s,"",!0).replace(".",".?")}$`,"i"),this._minWeekdaysParse[r]=new RegExp(`^${this.weekdaysMin(s,"",!0).replace(".",".?")}$`,"i")),this._weekdaysParse[r]||(o=`^${this.weekdays(s,"",!0)}|^${this.weekdaysShort(s,"",!0)}|^${this.weekdaysMin(s,"",!0)}`,this._weekdaysParse[r]=new RegExp(o.replace(".",""),"i")),!ut(this._fullWeekdaysParse)||!ut(this._shortWeekdaysParse)||!ut(this._minWeekdaysParse)||!ut(this._weekdaysParse))return;if(i&&e==="dddd"&&this._fullWeekdaysParse[r].test(n))return r;if(i&&e==="ddd"&&this._shortWeekdaysParse[r].test(n))return r;if(i&&e==="dd"&&this._minWeekdaysParse[r].test(n))return r;if(!i&&this._weekdaysParse[r].test(n))return r}}weekdaysRegex(n){return this._weekdaysParseExact?(Mn(this,"_weekdaysRegex")||this.computeWeekdaysParse(),n?this._weekdaysStrictRegex:this._weekdaysRegex):(Mn(this,"_weekdaysRegex")||(this._weekdaysRegex=pd),this._weekdaysStrictRegex&&n?this._weekdaysStrictRegex:this._weekdaysRegex)}weekdaysShortRegex(n){return this._weekdaysParseExact?(Mn(this,"_weekdaysRegex")||this.computeWeekdaysParse(),n?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(Mn(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=pd),this._weekdaysShortStrictRegex&&n?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}weekdaysMinRegex(n){return this._weekdaysParseExact?(Mn(this,"_weekdaysRegex")||this.computeWeekdaysParse(),n?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(Mn(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=pd),this._weekdaysMinStrictRegex&&n?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}isPM(n){return n.toLowerCase().charAt(0)==="p"}meridiem(n,e,i){return n>11?i?"pm":"PM":i?"am":"AM"}formatLongDate(n){this._longDateFormat=this._longDateFormat?this._longDateFormat:vk;let e=this._longDateFormat[n],i=this._longDateFormat[n.toUpperCase()];return e||!i?e:(this._longDateFormat[n]=i.replace(/MMMM|MM|DD|dddd/g,r=>r.slice(1)),this._longDateFormat[n])}handleMonthStrictParse(n,e,i){let r=n.toLocaleLowerCase(),o,s,a;if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],o=0;o<12;++o)a=new Date(2e3,o),this._shortMonthsParse[o]=this.monthsShort(a,"").toLocaleLowerCase(),this._longMonthsParse[o]=this.months(a,"").toLocaleLowerCase();return i?e==="MMM"?(s=this._shortMonthsParse.indexOf(r),s!==-1?s:null):(s=this._longMonthsParse.indexOf(r),s!==-1?s:null):e==="MMM"?(s=this._shortMonthsParse.indexOf(r),s!==-1?s:(s=this._longMonthsParse.indexOf(r),s!==-1?s:null)):(s=this._longMonthsParse.indexOf(r),s!==-1?s:(s=this._shortMonthsParse.indexOf(r),s!==-1?s:null))}handleWeekStrictParse(n,e,i){let r,o=n.toLocaleLowerCase();if(!this._weekdaysParse){this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[];let s;for(s=0;s<7;++s){let a=Mm(new Date(Date.UTC(2e3,1)),s,null,!0);this._minWeekdaysParse[s]=this.weekdaysMin(a).toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(a).toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(a,"").toLocaleLowerCase()}}if(!(!ut(this._weekdaysParse)||!ut(this._shortWeekdaysParse)||!ut(this._minWeekdaysParse)))return i?e==="dddd"?(r=this._weekdaysParse.indexOf(o),r!==-1?r:null):e==="ddd"?(r=this._shortWeekdaysParse.indexOf(o),r!==-1?r:null):(r=this._minWeekdaysParse.indexOf(o),r!==-1?r:null):e==="dddd"?(r=this._weekdaysParse.indexOf(o),r!==-1||(r=this._shortWeekdaysParse.indexOf(o),r!==-1)?r:(r=this._minWeekdaysParse.indexOf(o),r!==-1?r:null)):e==="ddd"?(r=this._shortWeekdaysParse.indexOf(o),r!==-1||(r=this._weekdaysParse.indexOf(o),r!==-1)?r:(r=this._minWeekdaysParse.indexOf(o),r!==-1?r:null)):(r=this._minWeekdaysParse.indexOf(o),r!==-1||(r=this._weekdaysParse.indexOf(o),r!==-1)?r:(r=this._shortWeekdaysParse.indexOf(o),r!==-1?r:null))}computeMonthsParse(){let n=[],e=[],i=[],r,o;for(o=0;o<12;o++)r=new Date(2e3,o),n.push(this.monthsShort(r,"")),e.push(this.months(r,"")),i.push(this.months(r,"")),i.push(this.monthsShort(r,""));for(n.sort(sa),e.sort(sa),i.sort(sa),o=0;o<12;o++)n[o]=fa(n[o]),e[o]=fa(e[o]);for(o=0;o<24;o++)i[o]=fa(i[o]);this._monthsRegex=new RegExp(`^(${i.join("|")})`,"i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp(`^(${e.join("|")})`,"i"),this._monthsShortStrictRegex=new RegExp(`^(${n.join("|")})`,"i")}computeWeekdaysParse(){let n=[],e=[],i=[],r=[],o;for(o=0;o<7;o++){let s=Mm(new Date(Date.UTC(2e3,1)),o,null,!0),a=this.weekdaysMin(s),l=this.weekdaysShort(s),c=this.weekdays(s);n.push(a),e.push(l),i.push(c),r.push(a),r.push(l),r.push(c)}for(n.sort(sa),e.sort(sa),i.sort(sa),r.sort(sa),o=0;o<7;o++)e[o]=fa(e[o]),i[o]=fa(i[o]),r[o]=fa(r[o]);this._weekdaysRegex=new RegExp(`^(${r.join("|")})`,"i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp(`^(${i.join("|")})`,"i"),this._weekdaysShortStrictRegex=new RegExp(`^(${e.join("|")})`,"i"),this._weekdaysMinStrictRegex=new RegExp(`^(${n.join("|")})`,"i")}};function sa(t,n){return n.length-t.length}var f$={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},h$="Invalid date",p$={dow:0,doy:6},m$=/[ap]\.?m?\.?/i,g$={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},_$={calendar:f$,longDateFormat:vk,invalidDate:h$,ordinal:l$,dayOfMonthOrdinalParse:c$,relativeTime:g$,months:o$,monthsShort:_k,week:p$,weekdays:s$,weekdaysMin:a$,weekdaysShort:yk,meridiemParse:m$};function y$(t,n,e){let i=Math.min(t.length,n.length),r=Math.abs(t.length-n.length),o=0,s;for(s=0;s0;){if(e=V$(r.slice(0,o).join("-")),e)return e;if(n&&n.length>=o&&y$(r,n,!0)>=o-1)break;o--}i++}return null}function F$(t,n){let e=Object.assign({},t);for(let i in n)Mn(n,i)&&(ma(t[i])&&ma(n[i])?(e[i]={},Object.assign(e[i],t[i]),Object.assign(e[i],n[i])):n[i]!=null?e[i]=n[i]:delete e[i]);for(let i in t)Mn(t,i)&&!Mn(n,i)&&ma(t[i])&&(e[i]=Object.assign({},e[i]));return e}function V$(t){return Xo[t]||console.error(`Khronos locale error: please load locale "${t}" before using it`),Xo[t]}function wk(t,n){let e;return t&&(sk(n)?e=mn(t):di(t)&&(e=Dk(t,n)),e&&(gd=e)),gd&&gd._abbr}function Dk(t,n){if(n===null)return delete Xo[t],gd=mn("en"),null;if(!n)return;let e=_$;if(n.abbr=t,n.parentLocale!=null)if(Xo[n.parentLocale]!=null)e=Xo[n.parentLocale]._config;else return cd[n.parentLocale]||(cd[n.parentLocale]=[]),cd[n.parentLocale].push({name:t,config:n}),null;return Xo[t]=new TC(F$(e,n)),cd[t]&&cd[t].forEach(function(i){Dk(i.name,i.config)}),wk(t),Xo[t]}function mn(t){if(j$(),!t)return gd;let n=ut(t)?t:[t];return L$(n)}function j$(){Xo.en||(wk("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal(t){let n=t%10,e=Ie(t%100/10)===1?"th":n===1?"st":n===2?"nd":n===3?"rd":"th";return t+e}}),v$(),C$(),QU(),w$(),D$(),M$(),S$(),E$(),KU(),O$(),R$(),N$(),i$(),wz(),GU())}var fd=["year","quarter","month","week","day","hours","minutes","seconds","milliseconds"],H$=fd.reduce((t,n)=>(t[n]=!0,t),{});function B$(t){if(Object.keys(t).some(i=>i in H$&&t[i]===null||isNaN(t[i])))return!1;let e=!1;for(let i=0;i=0&&e>=0&&i>=0||n<=0&&e<=0&&i<=0||(n+=LI(EC(i)+e)*864e5,e=0,i=0),r.milliseconds=n%1e3;let o=da(n/1e3);r.seconds=o%60;let s=da(o/60);r.minutes=s%60;let a=da(s/60);r.hours=a%24,e+=da(a/24);let l=da(Mk(e));i+=l,e-=LI(EC(l));let c=da(i/12);return i%=12,r.day=e,r.month=i,r.year=c,t}function Mk(t){return t*4800/146097}function EC(t){return t*146097/4800}var Wl=Math.round,Gl={ss:44,s:45,m:45,h:22,d:26,M:11};function $$(t,n,e,i,r){return r.relativeTime(n||1,!!e,t,i)}function z$(t,n,e){let i=NC(t).abs(),r=Wl(i.as("s")),o=Wl(i.as("m")),s=Wl(i.as("h")),a=Wl(i.as("d")),l=Wl(i.as("M")),c=Wl(i.as("y")),u=r<=Gl.ss&&["s",r]||r0,e];return $$.apply(null,p)}var Am=class{constructor(n,e={}){this._data={},this._locale=mn(),this._locale=e&&e._locale||mn();let i=n,r=i.year||0,o=i.quarter||0,s=i.month||0,a=i.week||0,l=i.day||0,c=i.hours||0,u=i.minutes||0,p=i.seconds||0,v=i.milliseconds||0;return this._isValid=B$(i),this._milliseconds=+v+p*1e3+u*60*1e3+c*1e3*60*60,this._days=+l+a*7,this._months=+s+o*3+r*12,U$(this)}isValid(){return this._isValid}humanize(n){if(!this.isValid())return this.localeData().invalidDate;let e=this.localeData(),i=z$(this,!n,e);return n&&(i=e.pastFuture(+this,i)),e.postformat(i)}localeData(){return this._locale}locale(n){return n?(this._locale=mn(n)||this._locale,this):this._locale._abbr}abs(){let n=Math.abs,e=this._data;return this._milliseconds=n(this._milliseconds),this._days=n(this._days),this._months=n(this._months),e.milliseconds=n(e.milliseconds),e.seconds=n(e.seconds),e.minutes=n(e.minutes),e.hours=n(e.hours),e.month=n(e.month),e.year=n(e.year),this}as(n){if(!this.isValid())return NaN;let e,i,r=this._milliseconds,o=ak(n);if(o==="month"||o==="year")return e=this._days+r/864e5,i=this._months+Mk(e),o==="month"?i:i/12;switch(e=this._days+Math.round(EC(this._months)),o){case"week":return e/7+r/6048e5;case"day":return e+r/864e5;case"hours":return e*24+r/36e5;case"minutes":return e*1440+r/6e4;case"seconds":return e*86400+r/1e3;case"milliseconds":return Math.floor(e*864e5)+r;default:throw new Error(`Unknown unit ${o}`)}}valueOf(){return this.isValid()?this._milliseconds+this._days*864e5+this._months%12*2592e6+Ie(this._months/12)*31536e6:NaN}};function Y$(t){return t instanceof Am}function AC(t){if(t._isValid==null){let n=Be(t),e=Array.prototype.some.call(n.parsedDateParts,function(r){return r!=null}),i=!isNaN(t._d&&t._d.getTime())&&n.overflow<0&&!n.empty&&!n.invalidMonth&&!n.invalidWeekday&&!n.weekdayMismatch&&!n.nullInput&&!n.invalidFormat&&!n.userInvalidated&&(!n.meridiem||n.meridiem&&e);if(t._strict&&(i=i&&n.charsLeftOver===0&&n.unusedTokens.length===0&&n.bigHour===void 0),Object.isFrozen==null||!Object.isFrozen(t))t._isValid=i;else return i}return t._isValid}function Om(t,n){return t._d=new Date(NaN),Object.assign(Be(t),n||{userInvalidated:!0}),t}function W$(t){return t._isValid=!1,t}var G$=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,q$=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,Q$=/Z|[+-]\d\d(?::?\d\d)?/,Cm=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/,!0],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/,!0],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/,!0],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/,!0],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/,!0],["YYYYMMDD",/\d{8}/,!0],["GGGG[W]WWE",/\d{4}W\d{3}/,!0],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/,!0]],aC=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],K$=/^\/?Date\((\-?\d+)/i,Z$={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60},J$=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/;function Sk(t){if(!di(t._i))return t;let n=t._i,e=G$.exec(n)||q$.exec(n),i,r,o,s;if(!e)return t._isValid=!1,t;let a,l;for(a=0,l=Cm.length;an.formatLongDate(s)||s;for(r.lastIndex=0;i>=0&&r.test(e);)e=e.replace(r,o),r.lastIndex=0,i-=1;return e}function ec(t,n,e){return t??n??e}function sz(t){let n=new Date;return t._useUTC?[n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()]:[n.getFullYear(),n.getMonth(),n.getDate()]}function PC(t){let n=[],e,i,r;if(t._d)return t;let o=sz(t);for(t._w&&t._a[Vr]==null&&t._a[po]==null&&az(t),t._dayOfYear!=null&&(r=ec(t._a[ar],o[ar]),(t._dayOfYear>md(r)||t._dayOfYear===0)&&(Be(t)._overflowDayOfYear=!0),i=new Date(Date.UTC(r,0,t._dayOfYear)),t._a[po]=i.getUTCMonth(),t._a[Vr]=i.getUTCDate()),e=0;e<3&&t._a[e]==null;++e)t._a[e]=n[e]=o[e];for(;e<7;e++)t._a[e]=n[e]=t._a[e]==null?e===2?1:0:t._a[e];t._a[Jt]===24&&t._a[lr]===0&&t._a[mo]===0&&t._a[pa]===0&&(t._nextDay=!0,t._a[Jt]=0),t._d=(t._useUTC?IC:Pm).apply(null,n);let s=t._useUTC?t._d.getUTCDay():t._d.getDay();return t._tzm!=null&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Jt]=24),t._w&&typeof t._w.d<"u"&&t._w.d!==s&&(Be(t).weekdayMismatch=!0),t}function az(t){let n,e,i,r,o,s,a,l=t._w;if(l.GG!=null||l.W!=null||l.E!=null)r=1,o=4,n=ec(l.GG,t._a[ar],ic(new Date,1,4).year),e=ec(l.W,1),i=ec(l.E,1),(i<1||i>7)&&(a=!0);else{r=t._locale._week.dow,o=t._locale._week.doy;let c=ic(new Date,r,o);n=ec(l.gg,t._a[ar],c.year),e=ec(l.w,c.week),l.d!=null?(i=l.d,(i<0||i>6)&&(a=!0)):l.e!=null?(i=l.e+r,(l.e<0||l.e>6)&&(a=!0)):i=r}return e<1||e>Dm(n,r,o)?Be(t)._overflowWeeks=!0:a!=null?Be(t)._overflowWeekday=!0:(s=r$(n,e,i,r,o),t._a[ar]=s.year,t._dayOfYear=s.dayOfYear),t}function xk(t){let n,e=t._a;return e&&Be(t).overflow===-2&&(n=e[po]<0||e[po]>11?po:e[Vr]<1||e[Vr]>kC(e[ar],e[po])?Vr:e[Jt]<0||e[Jt]>24||e[Jt]===24&&(e[lr]!==0||e[mo]!==0||e[pa]!==0)?Jt:e[lr]<0||e[lr]>59?lr:e[mo]<0||e[mo]>59?mo:e[pa]<0||e[pa]>999?pa:-1,Be(t)._overflowDayOfYear&&(nVr)&&(n=Vr),Be(t)._overflowWeeks&&n===-1&&(n=NU),Be(t)._overflowWeekday&&n===-1&&(n=LU),Be(t).overflow=n),t}var lz="ISO_8601",cz="RFC_2822";function OC(t){if(t._f===lz)return Sk(t);if(t._f===cz)return Tk(t);if(t._a=[],Be(t).empty=!0,ut(t._f)||!t._i&&t._i!==0)return t;let n=t._i.toString(),e=0,i=n.length,r=Ek(t._f,t._locale).match(lk)||[],o,s,a,l;for(o=0;o0&&Be(t).unusedInput.push(l),n=n.slice(n.indexOf(a)+a.length),e+=a.length),nc[s]?(a?Be(t).empty=!1:Be(t).unusedTokens.push(s),YU(s,a,t)):t._strict&&!a&&Be(t).unusedTokens.push(s);return Be(t).charsLeftOver=i-e,n.length>0&&Be(t).unusedInput.push(n),t._a[Jt]<=12&&Be(t).bigHour===!0&&t._a[Jt]>0&&(Be(t).bigHour=void 0),Be(t).parsedDateParts=t._a.slice(0),Be(t).meridiem=t._meridiem,t._a[Jt]=uz(t._locale,t._a[Jt],t._meridiem),PC(t),xk(t)}function uz(t,n,e){let i=n;if(e==null)return i;if(t.meridiemHour!=null)return t.meridiemHour(i,e);if(t.isPM==null)return i;let r=t.isPM(e);return r&&i<12&&(i+=12),!r&&i===12&&(i=0),i}function dz(t){let n,e,i,r;if(!t._f||t._f.length===0)return Be(t).invalidFormat=!0,Om(t);let o;for(o=0;odi(i)?parseInt(i,10):i)}return PC(t)}function hz(t){let n=xk(pz(t));return n._d=new Date(n._d!=null?n._d.getTime():NaN),AC(Object.assign({},n,{_isValid:null}))||(n._d=new Date(NaN)),n}function pz(t){let n=t._i,e=t._f;return t._locale=t._locale||mn(t._l),n===null||e===void 0&&n===""?Om(t,{nullInput:!0}):(di(n)&&(t._i=n=t._locale.preparse(n,e)),bd(n)?(t._d=ga(n),t):(ut(e)?dz(t):e?OC(t):mz(t),AC(t)||(t._d=null),t))}function mz(t){let n=t._i;if(sk(n))t._d=new Date;else if(bd(n))t._d=ga(n);else if(di(n))rz(t);else if(ut(n)&&n.length){let e=n.slice(0);t._a=e.map(i=>di(i)?parseInt(i,10):i),PC(t)}else if(ma(n))fz(t);else if(oc(n))t._d=new Date(n);else return Om(t);return t}function gz(t,n,e,i,r){let o={},s=t;return(ma(s)&&OU(s)||ut(s)&&s.length===0)&&(s=void 0),o._useUTC=o._isUTC=r,o._l=e,o._i=s,o._f=n,o._strict=i,hz(o)}function rc(t,n,e,i,r){return bd(t)?t:gz(t,n,e,i,r)._d}function RC(t){return t instanceof Date?new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds()):null}function xC(t){return t<0?Math.round(t*-1)*-1:Math.round(t)}function yo(t,n,e="milliseconds"){return!t||!n?!1:e==="milliseconds"?t.valueOf()>n.valueOf():n.valueOf()"u"||!n||!n.length?!1:n.some(e=>e===t.getDay())}function wd(t,n,e="milliseconds"){if(!t||!n)return!1;if(e==="milliseconds")return t.valueOf()===n.valueOf();let i=n.valueOf();return jr(t,e).valueOf()<=i&&i<=Cd(t,e).valueOf()}var _z=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,yz=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function NC(t,n,e={}){let i=vz(t,n);return new Am(i,e)}function vz(t,n){if(t==null)return{};if(Y$(t))return{milliseconds:t._milliseconds,day:t._days,month:t._months};if(oc(t))return n?{[n]:t}:{milliseconds:t};if(di(t)){let e=_z.exec(t);if(e){let i=e[1]==="-"?-1:1;return{year:0,day:Ie(e[Vr])*i,hours:Ie(e[Jt])*i,minutes:Ie(e[lr])*i,seconds:Ie(e[mo])*i,milliseconds:Ie(xC(Ie(e[pa])*1e3))*i}}if(e=yz.exec(t),e){let i=e[1]==="-"?-1:(e[1]==="+",1);return{year:aa(e[2],i),month:aa(e[3],i),week:aa(e[4],i),day:aa(e[5],i),hours:aa(e[6],i),minutes:aa(e[7],i),seconds:aa(e[8],i)}}}if(ma(t)&&("from"in t||"to"in t)){let e=bz(rc(t.from),rc(t.to));return{milliseconds:e.milliseconds,month:e.months}}return t}function aa(t,n){let e=t&&parseFloat(t.replace(",","."));return(isNaN(e)?0:e)*n}function FI(t,n){let e={milliseconds:0,months:0};e.months=Ne(n)-Ne(t)+($t(n)-$t(t))*12;let i=vd(ga(t),e.months,"month");return yo(i,n)&&--e.months,e.milliseconds=+n-+vd(ga(t),e.months,"month"),e}function bz(t,n){if(!(go(t)&&go(n)))return{milliseconds:0,months:0};let e,i=k$(n,t,{_offset:t.getTimezoneOffset()});return ts(t,i)?e=FI(t,i):(e=FI(i,t),e.milliseconds=-e.milliseconds,e.months=-e.months),e}function vd(t,n,e,i){let r=NC(n,e);return kk(t,r,1,i)}function Cz(t,n,e,i){let r=NC(n,e);return kk(t,r,-1,i)}function kk(t,n,e,i){let r=n._milliseconds,o=xC(n._days),s=xC(n._months);return s&&SC(t,Ne(t,i)+s*e,i),o&&mk(t,_d(t,i)+o*e,i),r&&n$(t,jU(t)+r*e),ga(t)}function wz(){ce("d",null,"do",function(t,n){return cr(t,n.isUTC).toString(10)}),ce("dd",null,null,function(t,n){return n.locale.weekdaysMin(t,n.format,n.isUTC)}),ce("ddd",null,null,function(t,n){return n.locale.weekdaysShort(t,n.format,n.isUTC)}),ce("dddd",null,null,function(t,n){return n.locale.weekdays(t,n.format,n.isUTC)}),ce("e",null,null,function(t,n){return Ak(t,n.locale,n.isUTC).toString(10)}),ce("E",null,null,function(t,n){return Tz(t,n.isUTC).toString(10)}),Sn("day","d"),Sn("weekday","e"),Sn("isoWeekday","E"),Tn("day",11),Tn("weekday",11),Tn("isoWeekday",11),Z("d",ft),Z("e",ft),Z("E",ft),Z("dd",function(t,n){return n.weekdaysMinRegex(t)}),Z("ddd",function(t,n){return n.weekdaysShortRegex(t)}),Z("dddd",function(t,n){return n.weekdaysRegex(t)}),yd(["dd","ddd","dddd"],function(t,n,e,i){let r=e._locale.weekdaysParse(t,i,e._strict);return r!=null?n.d=r:Be(e).invalidWeekday=!!t,e}),yd(["d","e","E"],function(t,n,e,i){return n[i]=Ie(t),e})}function Dz(t,n){if(!di(t))return t;let e=parseInt(t,10);if(!isNaN(e))return e;let i=n.weekdaysParse(t);return oc(i)?i:null}function Mz(t,n=mn()){return di(t)?n.weekdaysParse(t)%7||7:oc(t)&&isNaN(t)?null:t}function Mm(t,n,e=mn(),i){let r=cr(t,i),o=Dz(n,e);return vd(t,o-r,"day")}function Xt(t,n){return cr(t,n)}function Ak(t,n=mn(),e){return(cr(t,e)+7-n.firstDayOfWeek())%7}function Sz(t,n,e={}){let i=Ak(t,e.locale,e.isUTC);return vd(t,n-i,"day")}function Tz(t,n){return cr(t,n)||7}function Ez(t,n,e={}){let i=Mz(n,e.locale);return Mm(t,Xt(t)%7?i:i-7)}var xz={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},Iz={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},VI=function(t){return t===0?0:t===1?1:t===2?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},kz={s:["\u0623\u0642\u0644 \u0645\u0646 \u062B\u0627\u0646\u064A\u0629","\u062B\u0627\u0646\u064A\u0629 \u0648\u0627\u062D\u062F\u0629",["\u062B\u0627\u0646\u064A\u062A\u0627\u0646","\u062B\u0627\u0646\u064A\u062A\u064A\u0646"],"%d \u062B\u0648\u0627\u0646","%d \u062B\u0627\u0646\u064A\u0629","%d \u062B\u0627\u0646\u064A\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062F\u0642\u064A\u0642\u0629","\u062F\u0642\u064A\u0642\u0629 \u0648\u0627\u062D\u062F\u0629",["\u062F\u0642\u064A\u0642\u062A\u0627\u0646","\u062F\u0642\u064A\u0642\u062A\u064A\u0646"],"%d \u062F\u0642\u0627\u0626\u0642","%d \u062F\u0642\u064A\u0642\u0629","%d \u062F\u0642\u064A\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062D\u062F\u0629",["\u0633\u0627\u0639\u062A\u0627\u0646","\u0633\u0627\u0639\u062A\u064A\u0646"],"%d \u0633\u0627\u0639\u0627\u062A","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064A\u0648\u0645","\u064A\u0648\u0645 \u0648\u0627\u062D\u062F",["\u064A\u0648\u0645\u0627\u0646","\u064A\u0648\u0645\u064A\u0646"],"%d \u0623\u064A\u0627\u0645","%d \u064A\u0648\u0645\u064B\u0627","%d \u064A\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062D\u062F",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064A\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062D\u062F",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064A\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064B\u0627","%d \u0639\u0627\u0645"]},Ai=function(t){return function(n,e){let i=VI(n),r=kz[t][VI(n)];return i===2&&(r=r[e?0:1]),r.replace(/%d/i,n.toString())}},jI=["\u064A\u0646\u0627\u064A\u0631","\u0641\u0628\u0631\u0627\u064A\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064A\u0644","\u0645\u0627\u064A\u0648","\u064A\u0648\u0646\u064A\u0648","\u064A\u0648\u0644\u064A\u0648","\u0623\u063A\u0633\u0637\u0633","\u0633\u0628\u062A\u0645\u0628\u0631","\u0623\u0643\u062A\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062F\u064A\u0633\u0645\u0628\u0631"],zde={abbr:"ar",months:jI,monthsShort:jI,weekdays:"\u0627\u0644\u0623\u062D\u062F_\u0627\u0644\u0625\u062B\u0646\u064A\u0646_\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062E\u0645\u064A\u0633_\u0627\u0644\u062C\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062A".split("_"),weekdaysShort:"\u0623\u062D\u062F_\u0625\u062B\u0646\u064A\u0646_\u062B\u0644\u0627\u062B\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062E\u0645\u064A\u0633_\u062C\u0645\u0639\u0629_\u0633\u0628\u062A".split("_"),weekdaysMin:"\u062D_\u0646_\u062B_\u0631_\u062E_\u062C_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200FM/\u200FYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM(t){return t==="\u0645"},meridiem(t,n,e){return t<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064A\u0648\u0645 \u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063A\u062F\u064B\u0627 \u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062F %s",past:"\u0645\u0646\u0630 %s",s:Ai("s"),ss:Ai("s"),m:Ai("m"),mm:Ai("m"),h:Ai("h"),hh:Ai("h"),d:Ai("d"),dd:Ai("d"),M:Ai("M"),MM:Ai("M"),y:Ai("y"),yy:Ai("y")},preparse(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(n){return Iz[n]}).replace(/،/g,",")},postformat(t){return t.replace(/\d/g,function(n){return xz[n]}).replace(/,/g,"\u060C")},week:{dow:6,doy:12}};var Yde={abbr:"bg",months:"\u044F\u043D\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043C\u0430\u0440\u0442_\u0430\u043F\u0440\u0438\u043B_\u043C\u0430\u0439_\u044E\u043D\u0438_\u044E\u043B\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043F\u0442\u0435\u043C\u0432\u0440\u0438_\u043E\u043A\u0442\u043E\u043C\u0432\u0440\u0438_\u043D\u043E\u0435\u043C\u0432\u0440\u0438_\u0434\u0435\u043A\u0435\u043C\u0432\u0440\u0438".split("_"),monthsShort:"\u044F\u043D\u0440_\u0444\u0435\u0432_\u043C\u0430\u0440_\u0430\u043F\u0440_\u043C\u0430\u0439_\u044E\u043D\u0438_\u044E\u043B\u0438_\u0430\u0432\u0433_\u0441\u0435\u043F_\u043E\u043A\u0442_\u043D\u043E\u0435_\u0434\u0435\u043A".split("_"),weekdays:"\u043D\u0435\u0434\u0435\u043B\u044F_\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u043D\u0438\u043A_\u0432\u0442\u043E\u0440\u043D\u0438\u043A_\u0441\u0440\u044F\u0434\u0430_\u0447\u0435\u0442\u0432\u044A\u0440\u0442\u044A\u043A_\u043F\u0435\u0442\u044A\u043A_\u0441\u044A\u0431\u043E\u0442\u0430".split("_"),weekdaysShort:"\u043D\u0435\u0434_\u043F\u043E\u043D_\u0432\u0442\u043E_\u0441\u0440\u044F_\u0447\u0435\u0442_\u043F\u0435\u0442_\u0441\u044A\u0431".split("_"),weekdaysMin:"\u043D\u0434_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u043D\u0435\u0441 \u0432] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432] LT",nextWeek:"dddd [\u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432] LT",lastWeek:function(t){switch(t){case 0:case 3:case 6:return"[\u0412 \u0438\u0437\u043C\u0438\u043D\u0430\u043B\u0430\u0442\u0430] dddd [\u0432] LT";case 1:case 2:case 4:case 5:return"[\u0412 \u0438\u0437\u043C\u0438\u043D\u0430\u043B\u0438\u044F] dddd [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0441\u043B\u0435\u0434 %s",past:"\u043F\u0440\u0435\u0434\u0438 %s",s:"\u043D\u044F\u043A\u043E\u043B\u043A\u043E \u0441\u0435\u043A\u0443\u043D\u0434\u0438",ss:"%d \u0441\u0435\u043A\u0443\u043D\u0434\u0438",m:"\u043C\u0438\u043D\u0443\u0442\u0430",mm:"%d \u043C\u0438\u043D\u0443\u0442\u0438",h:"\u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0434\u0435\u043D",dd:"%d \u0434\u043D\u0438",M:"\u043C\u0435\u0441\u0435\u0446",MM:"%d \u043C\u0435\u0441\u0435\u0446\u0430",y:"\u0433\u043E\u0434\u0438\u043D\u0430",yy:"%d \u0433\u043E\u0434\u0438\u043D\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(t){let n=Number(t),e=n%10,i=n%100;return n===0?n+"-\u0435\u0432":i===0?n+"-\u0435\u043D":i>10&&i<20?n+"-\u0442\u0438":e===1?n+"-\u0432\u0438":e===2?n+"-\u0440\u0438":e===7||e===8?n+"-\u043C\u0438":n+"-\u0442\u0438"},week:{dow:1,doy:7}};var HI="gen._feb._mar._abr._mai._jun._jul._ago._set._oct._nov._des.".split("_"),Az="ene_feb_mar_abr_mai_jun_jul_ago_set_oct_nov_des".split("_"),lC=[/^gen/i,/^feb/i,/^mar/i,/^abr/i,/^mai/i,/^jun/i,/^jul/i,/^ago/i,/^set/i,/^oct/i,/^nov/i,/^des/i],BI=/^(gener|febrer|març|abril|maig|juny|juliol|agost|setembre|octubre|novembre|desembre|gen\.?|feb\.?|mar\.?|abr\.?|mai\.?|jun\.?|jul\.?|ago\.?|set\.?|oct\.?|nov\.?|des\.?)/i,Wde={abbr:"ca",months:"gener_febrer_mar\xE7_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?Az[Ne(t,e)]:HI[Ne(t,e)]:HI},monthsRegex:BI,monthsShortRegex:BI,monthsStrictRegex:/^(gener|febrer|març|abril|maig|juny|juliol|agost|setembre|octubre|novembre|desembre)/i,monthsShortStrictRegex:/^(gen\.?|feb\.?|mar\.?|abr\.?|mai\.?|jun\.?|jul\.?|ago\.?|set\.?|oct\.?|nov\.?|des\.?)/i,monthsParse:lC,longMonthsParse:lC,shortMonthsParse:lC,weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"diu._dil._dim._dix._dij._div._dis.".split("_"),weekdaysMin:"dg_dl_dt_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay(t){return"[avui a "+("la"+(ke(t)!==1)?"les":"")+"] LT"},nextDay(t){return"[dema a "+("la"+(ke(t)!==1)?"les":"")+"] LT"},nextWeek(t){return"dddd [a "+("la"+(ke(t)!==1)?"les":"")+"] LT"},lastDay(t){return"[ahir a "+("la"+(ke(t)!==1)?"les":"")+"] LT"},lastWeek(t){return"[el] dddd ["+("passada la "+(ke(t)!==1)?"passades les":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},dayOfMonthOrdinalParse:/\d{1,2}(er|on|er|rt|é)/,ordinal(t){let n=Number(t),e=n>4?"\xE9":n===1||n===3?"r":n===2?"n":n===4?"t":"\xE9";return n+e},week:{dow:1,doy:4}};var cC="leden_\xFAnor_b\u0159ezen_duben_kv\u011Bten_\u010Derven_\u010Dervenec_srpen_z\xE1\u0159\xED_\u0159\xEDjen_listopad_prosinec".split("_"),uC="led_\xFAno_b\u0159e_dub_kv\u011B_\u010Dvn_\u010Dvc_srp_z\xE1\u0159_\u0159\xEDj_lis_pro".split("_");function ql(t){return t>1&&t<5&&~~(t/10)!==1}function Pi(t,n,e,i){let r=t+" ";switch(e){case"s":return n||i?"p\xE1r sekund":"p\xE1r sekundami";case"ss":return n||i?r+(ql(t)?"sekundy":"sekund"):r+"sekundami";case"m":return n?"minuta":i?"minutu":"minutou";case"mm":return n||i?r+(ql(t)?"minuty":"minut"):r+"minutami";case"h":return n?"hodina":i?"hodinu":"hodinou";case"hh":return n||i?r+(ql(t)?"hodiny":"hodin"):r+"hodinami";case"d":return n||i?"den":"dnem";case"dd":return n||i?r+(ql(t)?"dny":"dn\xED"):r+"dny";case"M":return n||i?"m\u011Bs\xEDc":"m\u011Bs\xEDcem";case"MM":return n||i?r+(ql(t)?"m\u011Bs\xEDce":"m\u011Bs\xEDc\u016F"):r+"m\u011Bs\xEDci";case"y":return n||i?"rok":"rokem";case"yy":return n||i?r+(ql(t)?"roky":"let"):r+"lety"}}var Gde={abbr:"cs",months:cC,monthsShort:uC,monthsParse:function(t,n){let e,i=[];for(e=0;e<12;e++)i[e]=new RegExp("^"+t[e]+"$|^"+n[e]+"$","i");return i}(cC,uC),shortMonthsParse:function(t){let n,e=[];for(n=0;n<12;n++)e[n]=new RegExp("^"+t[n]+"$","i");return e}(uC),longMonthsParse:function(t){let n,e=[];for(n=0;n<12;n++)e[n]=new RegExp("^"+t[n]+"$","i");return e}(cC),weekdays:"ned\u011Ble_pond\u011Bl\xED_\xFAter\xFD_st\u0159eda_\u010Dtvrtek_p\xE1tek_sobota".split("_"),weekdaysShort:"ne_po_\xFAt_st_\u010Dt_p\xE1_so".split("_"),weekdaysMin:"ne_po_\xFAt_st_\u010Dt_p\xE1_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[z\xEDtra v] LT",nextWeek(t){switch(Xt(t)){case 0:return"[v ned\u011Bli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve st\u0159edu v] LT";case 4:return"[ve \u010Dtvrtek v] LT";case 5:return"[v p\xE1tek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[v\u010Dera v] LT",lastWeek(t){switch(Xt(t)){case 0:return"[minulou ned\u011Bli v] LT";case 1:case 2:return"[minul\xE9] dddd [v] LT";case 3:return"[minulou st\u0159edu v] LT";case 4:case 5:return"[minul\xFD] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"p\u0159ed %s",s:Pi,ss:Pi,m:Pi,mm:Pi,h:Pi,hh:Pi,d:Pi,dd:Pi,M:Pi,MM:Pi,y:Pi,yy:Pi},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var qde={abbr:"da",months:"Januar_Februar_Marts_April_Maj_Juni_Juli_August_September_Oktober_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Maj_Jun_Jul_Aug_Sep_Okt_Nov_Dec".split("_"),weekdays:"S\xF8ndag_Mandag_Tirsdag_Onsdag_Torsdag_Fredag_L\xF8rdag".split("_"),weekdaysShort:"S\xF8n_Man_Tir_Ons_Tor_Fre_L\xF8r".split("_"),weekdaysMin:"S\xF8_Ma_Ti_On_To_Fr_L\xF8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"p\xE5 dddd [kl.] LT",lastDay:"[i g\xE5r kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"f\xE5 sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en m\xE5ned",MM:"%d m\xE5neder",y:"et \xE5r",yy:"%d \xE5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};function Jo(t,n,e,i){let r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return n?r[e][0]:r[e][1]}var Qde={abbr:"de",months:"Januar_Februar_M\xE4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xE4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:Jo,mm:"%d Minuten",h:Jo,hh:"%d Stunden",d:Jo,dd:Jo,M:Jo,MM:Jo,y:Jo,yy:Jo},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var Kde={abbr:"en-gb",months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal(t){let n=Number(t),e=n%10,i=~~(n%100/10)===1?"th":e===1?"st":e===2?"nd":e===3?"rd":"th";return n+i},week:{dow:1,doy:4}};var UI="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),Pz="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),dC=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],$I=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,Zde={abbr:"es-do",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?Pz[Ne(t,e)]:UI[Ne(t,e)]:UI},monthsRegex:$I,monthsShortRegex:$I,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:dC,longMonthsParse:dC,shortMonthsParse:dC,weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay(t){return"[hoy a la"+(ke(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1ana a la"+(ke(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [a la"+(ke(t)!==1?"s":"")+"] LT"},lastDay(t){return"[ayer a la"+(ke(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[el] dddd [pasado a la"+(ke(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:1,doy:4}};var zI="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),Oz="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),fC=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],YI=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,Jde={abbr:"es",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?Oz[Ne(t,e)]:zI[Ne(t,e)]:zI},monthsRegex:YI,monthsShortRegex:YI,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:fC,longMonthsParse:fC,shortMonthsParse:fC,weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay(t){return"[hoy a la"+(ke(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1ana a la"+(ke(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [a la"+(ke(t)!==1?"s":"")+"] LT"},lastDay(t){return"[ayer a la"+(ke(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[el] dddd [pasado a la"+(ke(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:1,doy:4}};var WI="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),Rz="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),Xde={abbr:"es-pr",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?Rz[Ne(t,e)]:WI[Ne(t,e)]:WI},monthsParseExact:!0,weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay(t){return"[hoy a la"+(ke(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1ana a la"+(ke(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [a la"+(ke(t)!==1?"s":"")+"] LT"},lastDay(t){return"[ayer a la"+(ke(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[el] dddd [pasado a la"+(ke(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:0,doy:6}};var GI="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),Nz="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),efe={abbr:"es-us",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?Nz[Ne(t,e)]:GI[Ne(t,e)]:GI},monthsParseExact:!0,weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"MMMM [de] D [de] YYYY",LLL:"MMMM [de] D [de] YYYY h:mm A",LLLL:"dddd, MMMM [de] D [de] YYYY h:mm A"},calendar:{sameDay(t){return"[hoy a la"+(ke(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1ana a la"+(ke(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [a la"+(ke(t)!==1?"s":"")+"] LT"},lastDay(t){return"[ayer a la"+(ke(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[el] dddd [pasado a la"+(ke(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:0,doy:6}};var sr=function(t,n,e,i){let r={s:["m\xF5ne sekundi","m\xF5ni sekund","paar sekundit"],ss:[t+"sekundi",t+"sekundit"],m:["\xFChe minuti","\xFCks minut"],mm:[t+" minuti",t+" minutit"],h:["\xFChe tunni","tund aega","\xFCks tund"],hh:[t+" tunni",t+" tundi"],d:["\xFChe p\xE4eva","\xFCks p\xE4ev"],M:["kuu aja","kuu aega","\xFCks kuu"],MM:[t+" kuu",t+" kuud"],y:["\xFChe aasta","aasta","\xFCks aasta"],yy:[t+" aasta",t+" aastat"]};return n?r[e][2]?r[e][2]:r[e][1]:i?r[e][0]:r[e][1]},tfe={abbr:"et",months:"jaanuar_veebruar_m\xE4rts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_m\xE4rts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"p\xFChap\xE4ev_esmasp\xE4ev_teisip\xE4ev_kolmap\xE4ev_neljap\xE4ev_reede_laup\xE4ev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[T\xE4na,] LT",nextDay:"[Homme,] LT",nextWeek:"[J\xE4rgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s p\xE4rast",past:"%s tagasi",s:sr,ss:sr,m:sr,mm:sr,h:sr,hh:sr,d:sr,dd:"%d p\xE4eva",M:sr,MM:sr,y:sr,yy:sr},dayOfMonthOrdinalParse:/\d{1,2}./,ordinal:"%d.",week:{dow:1,doy:4}};var Sm="nolla yksi kaksi kolme nelj\xE4 viisi kuusi seitsem\xE4n kahdeksan yhdeks\xE4n".split(" "),Lz=["nolla","yhden","kahden","kolmen","nelj\xE4n","viiden","kuuden",Sm[7],Sm[8],Sm[9]];function Oi(t,n,e,i){var r="";switch(e){case"s":return i?"muutaman sekunnin":"muutama sekunti";case"ss":return i?"sekunnin":"sekuntia";case"m":return i?"minuutin":"minuutti";case"mm":r=i?"minuutin":"minuuttia";break;case"h":return i?"tunnin":"tunti";case"hh":r=i?"tunnin":"tuntia";break;case"d":return i?"p\xE4iv\xE4n":"p\xE4iv\xE4";case"dd":r=i?"p\xE4iv\xE4n":"p\xE4iv\xE4\xE4";break;case"M":return i?"kuukauden":"kuukausi";case"MM":r=i?"kuukauden":"kuukautta";break;case"y":return i?"vuoden":"vuosi";case"yy":r=i?"vuoden":"vuotta";break}return r=Fz(t,i)+" "+r,r}function Fz(t,n){return t<10?n?Lz[t]:Sm[t]:t}var nfe={abbr:"fi",months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kes\xE4kuu_hein\xE4kuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kes\xE4_hein\xE4_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[t\xE4n\xE4\xE4n] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s p\xE4\xE4st\xE4",past:"%s sitten",s:Oi,ss:Oi,m:Oi,mm:Oi,h:Oi,hh:Oi,d:Oi,dd:Oi,M:Oi,MM:Oi,y:Oi,yy:Oi},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var ife={abbr:"fr",months:"janvier_f\xE9vrier_mars_avril_mai_juin_juillet_ao\xFBt_septembre_octobre_novembre_d\xE9cembre".split("_"),monthsShort:"janv._f\xE9vr._mars_avr._mai_juin_juil._ao\xFBt_sept._oct._nov._d\xE9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xE0] LT",nextDay:"[Demain \xE0] LT",nextWeek:"dddd [\xE0] LT",lastDay:"[Hier \xE0] LT",lastWeek:"dddd [dernier \xE0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal(t,n){let e=Number(t);switch(n){case"D":return e+(e===1?"er":"");default:case"M":case"Q":case"DDD":case"d":return e+(e===1?"er":"e");case"w":case"W":return e+(e===1?"re":"e")}},week:{dow:1,doy:4}};var rfe={abbr:"fr-ca",months:"janvier_f\xE9vrier_mars_avril_mai_juin_juillet_ao\xFBt_septembre_octobre_novembre_d\xE9cembre".split("_"),monthsShort:"janv._f\xE9vr._mars_avr._mai_juin_juil._ao\xFBt_sept._oct._nov._d\xE9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xE0] LT",nextDay:"[Demain \xE0] LT",nextWeek:"dddd [\xE0] LT",lastDay:"[Hier \xE0] LT",lastWeek:"dddd [dernier \xE0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e|)/,ordinal(t,n){let e=Number(t);switch(n){case"D":return e+(e===1?"er":"");default:case"M":case"Q":case"DDD":case"d":return e+(e===1?"er":"e");case"w":case"W":return e+(e===1?"re":"e")}},week:{dow:1,doy:4}};var qI="xan._feb._mar._abr._mai._xu\xF1._xul._ago._set._out._nov._dec.".split("_"),Vz="xan_feb_mar_abr_mai_xu\xF1_xul_ago_set_out_nov_dec".split("_"),hC=[/^xan/i,/^feb/i,/^mar/i,/^abr/i,/^mai/i,/^xuñ/i,/^xul/i,/^ago/i,/^set/i,/^out/i,/^nov/i,/^dec/i],QI=/^(xaneiro|febreiro|marzo|abril|maio|xuño|xullo|agosto|setembro|outubro|novembro|decembro|xan\.?|feb\.?|mar\.?|abr\.?|mai\.?|xuñ\.?|xul\.?|ago\.?|set\.?|out\.?|nov\.?|dec\.?)/i,ofe={abbr:"gl",months:"xaneiro_febreiro_marzo_abril_maio_xu\xF1o_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?Vz[Ne(t,e)]:qI[Ne(t,e)]:qI},monthsRegex:QI,monthsShortRegex:QI,monthsStrictRegex:/^(xaneiro|febreiro|marzo|abril|maio|xuño|xullo|agosto|setembro|outubro|novembro|decembro)/i,monthsShortStrictRegex:/^(xan\.?|feb\.?|mar\.?|abr\.?|mai\.?|xuñ\.?|xul\.?|ago\.?|set\.?|out\.?|nov\.?|dec\.?)/i,monthsParse:hC,longMonthsParse:hC,shortMonthsParse:hC,weekdays:"domingo_luns_martes_m\xE9rcores_xoves_venres_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._m\xE9r._xov._ven._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_m\xE9_xo_ve_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay(t){return"[hoxe \xE1"+(ke(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1an \xE1"+(ke(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [\xE1"+(ke(t)!==1?"s":"")+"] LT"},lastDay(t){return"[onte \xE1"+(ke(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[o] dddd [pasado \xE1"+(ke(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:1,doy:4}};var sfe={abbr:"he",months:"\u05D9\u05E0\u05D5\u05D0\u05E8_\u05E4\u05D1\u05E8\u05D5\u05D0\u05E8_\u05DE\u05E8\u05E5_\u05D0\u05E4\u05E8\u05D9\u05DC_\u05DE\u05D0\u05D9_\u05D9\u05D5\u05E0\u05D9_\u05D9\u05D5\u05DC\u05D9_\u05D0\u05D5\u05D2\u05D5\u05E1\u05D8_\u05E1\u05E4\u05D8\u05DE\u05D1\u05E8_\u05D0\u05D5\u05E7\u05D8\u05D5\u05D1\u05E8_\u05E0\u05D5\u05D1\u05DE\u05D1\u05E8_\u05D3\u05E6\u05DE\u05D1\u05E8".split("_"),monthsShort:"\u05D9\u05E0\u05D5\u05F3_\u05E4\u05D1\u05E8\u05F3_\u05DE\u05E8\u05E5_\u05D0\u05E4\u05E8\u05F3_\u05DE\u05D0\u05D9_\u05D9\u05D5\u05E0\u05D9_\u05D9\u05D5\u05DC\u05D9_\u05D0\u05D5\u05D2\u05F3_\u05E1\u05E4\u05D8\u05F3_\u05D0\u05D5\u05E7\u05F3_\u05E0\u05D5\u05D1\u05F3_\u05D3\u05E6\u05DE\u05F3".split("_"),weekdays:"\u05E8\u05D0\u05E9\u05D5\u05DF_\u05E9\u05E0\u05D9_\u05E9\u05DC\u05D9\u05E9\u05D9_\u05E8\u05D1\u05D9\u05E2\u05D9_\u05D7\u05DE\u05D9\u05E9\u05D9_\u05E9\u05D9\u05E9\u05D9_\u05E9\u05D1\u05EA".split("_"),weekdaysShort:"\u05D0\u05F3_\u05D1\u05F3_\u05D2\u05F3_\u05D3\u05F3_\u05D4\u05F3_\u05D5\u05F3_\u05E9\u05F3".split("_"),weekdaysMin:"\u05D0_\u05D1_\u05D2_\u05D3_\u05D4_\u05D5_\u05E9".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [\u05D1]MMMM YYYY",LLL:"D [\u05D1]MMMM YYYY HH:mm",LLLL:"dddd, D [\u05D1]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[\u05D4\u05D9\u05D5\u05DD \u05D1\u05BE]LT",nextDay:"[\u05DE\u05D7\u05E8 \u05D1\u05BE]LT",nextWeek:"dddd [\u05D1\u05E9\u05E2\u05D4] LT",lastDay:"[\u05D0\u05EA\u05DE\u05D5\u05DC \u05D1\u05BE]LT",lastWeek:"[\u05D1\u05D9\u05D5\u05DD] dddd [\u05D4\u05D0\u05D7\u05E8\u05D5\u05DF \u05D1\u05E9\u05E2\u05D4] LT",sameElse:"L"},relativeTime:{future:"\u05D1\u05E2\u05D5\u05D3 %s",past:"\u05DC\u05E4\u05E0\u05D9 %s",s:"\u05DE\u05E1\u05E4\u05E8 \u05E9\u05E0\u05D9\u05D5\u05EA",ss:"%d \u05E9\u05E0\u05D9\u05D5\u05EA",m:"\u05D3\u05E7\u05D4",mm:"%d \u05D3\u05E7\u05D5\u05EA",h:"\u05E9\u05E2\u05D4",hh(t){return t===2?"\u05E9\u05E2\u05EA\u05D9\u05D9\u05DD":t+" \u05E9\u05E2\u05D5\u05EA"},d:"\u05D9\u05D5\u05DD",dd(t){return t===2?"\u05D9\u05D5\u05DE\u05D9\u05D9\u05DD":t+" \u05D9\u05DE\u05D9\u05DD"},M:"\u05D7\u05D5\u05D3\u05E9",MM(t){return t===2?"\u05D7\u05D5\u05D3\u05E9\u05D9\u05D9\u05DD":t+" \u05D7\u05D5\u05D3\u05E9\u05D9\u05DD"},y:"\u05E9\u05E0\u05D4",yy(t){return t===2?"\u05E9\u05E0\u05EA\u05D9\u05D9\u05DD":t%10===0&&t!==10?t+" \u05E9\u05E0\u05D4":t+" \u05E9\u05E0\u05D9\u05DD"}},meridiemParse:/אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,isPM(t){return/^(אחה"צ|אחרי הצהריים|בערב)$/.test(t)},meridiem(t,n,e){return t<5?"\u05DC\u05E4\u05E0\u05D5\u05EA \u05D1\u05D5\u05E7\u05E8":t<10?"\u05D1\u05D1\u05D5\u05E7\u05E8":t<12?e?'\u05DC\u05E4\u05E0\u05D4"\u05E6':"\u05DC\u05E4\u05E0\u05D9 \u05D4\u05E6\u05D4\u05E8\u05D9\u05D9\u05DD":t<18?e?'\u05D0\u05D7\u05D4"\u05E6':"\u05D0\u05D7\u05E8\u05D9 \u05D4\u05E6\u05D4\u05E8\u05D9\u05D9\u05DD":"\u05D1\u05E2\u05E8\u05D1"}};var jz={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096A",5:"\u096B",6:"\u096C",7:"\u096D",8:"\u096E",9:"\u096F",0:"\u0966"},Hz={"\u0967":"1","\u0968":"2","\u0969":"3","\u096A":"4","\u096B":"5","\u096C":"6","\u096D":"7","\u096E":"8","\u096F":"9","\u0966":"0"},afe={abbr:"hi",months:"\u091C\u0928\u0935\u0930\u0940_\u092B\u093C\u0930\u0935\u0930\u0940_\u092E\u093E\u0930\u094D\u091A_\u0905\u092A\u094D\u0930\u0948\u0932_\u092E\u0908_\u091C\u0942\u0928_\u091C\u0941\u0932\u093E\u0908_\u0905\u0917\u0938\u094D\u0924_\u0938\u093F\u0924\u092E\u094D\u092C\u0930_\u0905\u0915\u094D\u091F\u0942\u092C\u0930_\u0928\u0935\u092E\u094D\u092C\u0930_\u0926\u093F\u0938\u092E\u094D\u092C\u0930".split("_"),monthsShort:"\u091C\u0928._\u092B\u093C\u0930._\u092E\u093E\u0930\u094D\u091A_\u0905\u092A\u094D\u0930\u0948._\u092E\u0908_\u091C\u0942\u0928_\u091C\u0941\u0932._\u0905\u0917._\u0938\u093F\u0924._\u0905\u0915\u094D\u091F\u0942._\u0928\u0935._\u0926\u093F\u0938.".split("_"),monthsParseExact:!0,weekdays:"\u0930\u0935\u093F\u0935\u093E\u0930_\u0938\u094B\u092E\u0935\u093E\u0930_\u092E\u0902\u0917\u0932\u0935\u093E\u0930_\u092C\u0941\u0927\u0935\u093E\u0930_\u0917\u0941\u0930\u0942\u0935\u093E\u0930_\u0936\u0941\u0915\u094D\u0930\u0935\u093E\u0930_\u0936\u0928\u093F\u0935\u093E\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093F_\u0938\u094B\u092E_\u092E\u0902\u0917\u0932_\u092C\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094D\u0930_\u0936\u0928\u093F".split("_"),weekdaysMin:"\u0930_\u0938\u094B_\u092E\u0902_\u092C\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),longDateFormat:{LT:"A h:mm \u092C\u091C\u0947",LTS:"A h:mm:ss \u092C\u091C\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u092C\u091C\u0947",LLLL:"dddd, D MMMM YYYY, A h:mm \u092C\u091C\u0947"},calendar:{sameDay:"[\u0906\u091C] LT",nextDay:"[\u0915\u0932] LT",nextWeek:"dddd, LT",lastDay:"[\u0915\u0932] LT",lastWeek:"[\u092A\u093F\u091B\u0932\u0947] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u092E\u0947\u0902",past:"%s \u092A\u0939\u0932\u0947",s:"\u0915\u0941\u091B \u0939\u0940 \u0915\u094D\u0937\u0923",ss:"%d \u0938\u0947\u0915\u0902\u0921",m:"\u090F\u0915 \u092E\u093F\u0928\u091F",mm:"%d \u092E\u093F\u0928\u091F",h:"\u090F\u0915 \u0918\u0902\u091F\u093E",hh:"%d \u0918\u0902\u091F\u0947",d:"\u090F\u0915 \u0926\u093F\u0928",dd:"%d \u0926\u093F\u0928",M:"\u090F\u0915 \u092E\u0939\u0940\u0928\u0947",MM:"%d \u092E\u0939\u0940\u0928\u0947",y:"\u090F\u0915 \u0935\u0930\u094D\u0937",yy:"%d \u0935\u0930\u094D\u0937"},preparse(t){return t.replace(/[१२३४५६७८९०]/g,function(n){return Hz[n]})},postformat(t){return t.replace(/\d/g,function(n){return jz[n]})},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour(t,n){if(t===12&&(t=0),n==="\u0930\u093E\u0924")return t<4?t:t+12;if(n==="\u0938\u0941\u092C\u0939")return t;if(n==="\u0926\u094B\u092A\u0939\u0930")return t>=10?t:t+12;if(n==="\u0936\u093E\u092E")return t+12},meridiem(t,n,e){return t<4?"\u0930\u093E\u0924":t<10?"\u0938\u0941\u092C\u0939":t<17?"\u0926\u094B\u092A\u0939\u0930":t<20?"\u0936\u093E\u092E":"\u0930\u093E\u0924"},week:{dow:0,doy:6}};var Bz="vas\xE1rnap h\xE9tf\u0151n kedden szerd\xE1n cs\xFCt\xF6rt\xF6k\xF6n p\xE9nteken szombaton".split(" ");function Ri(t,n,e,i){switch(e){case"s":return i||n?"n\xE9h\xE1ny m\xE1sodperc":"n\xE9h\xE1ny m\xE1sodperce";case"ss":return t+(i||n?" m\xE1sodperc":" m\xE1sodperce");case"m":return"egy"+(i||n?" perc":" perce");case"mm":return t+(i||n?" perc":" perce");case"h":return"egy"+(i||n?" \xF3ra":" \xF3r\xE1ja");case"hh":return t+(i||n?" \xF3ra":" \xF3r\xE1ja");case"d":return"egy"+(i||n?" nap":" napja");case"dd":return t+(i||n?" nap":" napja");case"M":return"egy"+(i||n?" h\xF3nap":" h\xF3napja");case"MM":return t+(i||n?" h\xF3nap":" h\xF3napja");case"y":return"egy"+(i||n?" \xE9v":" \xE9ve");case"yy":return t+(i||n?" \xE9v":" \xE9ve")}return""}function KI(t,n){return(n?"":"[m\xFAlt] ")+"["+Bz[Xt(t)]+"] LT[-kor]"}var lfe={abbr:"hu",months:"janu\xE1r_febru\xE1r_m\xE1rcius_\xE1prilis_m\xE1jus_j\xFAnius_j\xFAlius_augusztus_szeptember_okt\xF3ber_november_december".split("_"),monthsShort:"jan_feb_m\xE1rc_\xE1pr_m\xE1j_j\xFAn_j\xFAl_aug_szept_okt_nov_dec".split("_"),weekdays:"vas\xE1rnap_h\xE9tf\u0151_kedd_szerda_cs\xFCt\xF6rt\xF6k_p\xE9ntek_szombat".split("_"),weekdaysShort:"vas_h\xE9t_kedd_sze_cs\xFCt_p\xE9n_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM(t){return t.charAt(1).toLowerCase()==="u"},meridiem(t,n,e){return t<12?e===!0?"de":"DE":e===!0?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek(t){return KI(t,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek(t){return KI(t,!1)},sameElse:"L"},relativeTime:{future:"%s m\xFAlva",past:"%s",s:Ri,ss:Ri,m:Ri,mm:Ri,h:Ri,hh:Ri,d:Ri,dd:Ri,M:Ri,MM:Ri,y:Ri,yy:Ri},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var cfe={abbr:"hr",months:"Sije\u010Danj_Velja\u010Da_O\u017Eujak_Travanj_Svibanj_Lipanj_Srpanj_Kolovoz_Rujan_Listopad_Studeni_Prosinac".split("_"),monthsShort:"Sij_Velj_O\u017Eu_Tra_Svi_Lip_Srp_Kol_Ruj_Lis_Stu_Pro".split("_"),weekdays:"Nedjelja_Ponedjeljak_Utorak_Srijeda_\u010Cetvrtak_Petak_Subota".split("_"),weekdaysShort:"Ned_Pon_Uto_Sri_\u010Cet_Pet_Sub".split("_"),weekdaysMin:"Ne_Po_Ut_Sr_\u010Ce_Pe_Su".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Danas u] LT",nextDay:"[Sutra u] LT",nextWeek:"dddd [u] LT",lastDay:"[Ju\u010Der u] LT",lastWeek:"[Zadnji] dddd [u] LT",sameElse:"L"},invalidDate:"Neispravan datum",relativeTime:{future:"za %s",past:"%s prije",s:"nekoliko sekundi",ss:"%d sekundi",m:"minuta",mm:"%d minuta",h:"sat",hh:"%d sati",d:"dan",dd:"%d dana",M:"mjesec",MM:"%d mjeseci",y:"godina",yy:"%d godina"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal(t){let n=Number(t),e=n%10,i=(~~(n%100/10)===1,".");return n+i},week:{dow:1,doy:4}};var ufe={abbr:"id",months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour(t,n){if(t===12&&(t=0),n==="pagi")return t;if(n==="siang")return t>=11?t:t+12;if(n==="sore"||n==="malam")return t+12},meridiem(t,n,e){return t<11?"pagi":t<15?"siang":t<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}};var dfe={abbr:"it",months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_luned\xEC_marted\xEC_mercoled\xEC_gioved\xEC_venerd\xEC_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek(t){switch(Xt(t)){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future(t){return(/^[0-9].+$/.test(t.toString(10))?"tra":"in")+" "+t},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:1,doy:4}};var ffe={abbr:"ja",months:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u65E5\u66DC\u65E5_\u6708\u66DC\u65E5_\u706B\u66DC\u65E5_\u6C34\u66DC\u65E5_\u6728\u66DC\u65E5_\u91D1\u66DC\u65E5_\u571F\u66DC\u65E5".split("_"),weekdaysShort:"\u65E5_\u6708_\u706B_\u6C34_\u6728_\u91D1_\u571F".split("_"),weekdaysMin:"\u65E5_\u6708_\u706B_\u6C34_\u6728_\u91D1_\u571F".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5E74M\u6708D\u65E5",LLL:"YYYY\u5E74M\u6708D\u65E5 HH:mm",LLLL:"YYYY\u5E74M\u6708D\u65E5 HH:mm dddd",l:"YYYY/MM/DD",ll:"YYYY\u5E74M\u6708D\u65E5",lll:"YYYY\u5E74M\u6708D\u65E5 HH:mm",llll:"YYYY\u5E74M\u6708D\u65E5 HH:mm dddd"},meridiemParse:/午前|午後/i,isPM(t){return t==="\u5348\u5F8C"},meridiem(t,n,e){return t<12?"\u5348\u524D":"\u5348\u5F8C"},calendar:{sameDay:"[\u4ECA\u65E5] LT",nextDay:"[\u660E\u65E5] LT",nextWeek:"[\u6765\u9031]dddd LT",lastDay:"[\u6628\u65E5] LT",lastWeek:"[\u524D\u9031]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal(t,n){switch(n){case"d":case"D":case"DDD":return t+"\u65E5";default:return t.toString(10)}},relativeTime:{future:"%s\u5F8C",past:"%s\u524D",s:"\u6570\u79D2",ss:"%d\u79D2",m:"1\u5206",mm:"%d\u5206",h:"1\u6642\u9593",hh:"%d\u6642\u9593",d:"1\u65E5",dd:"%d\u65E5",M:"1\u30F6\u6708",MM:"%d\u30F6\u6708",y:"1\u5E74",yy:"%d\u5E74"}};var hfe={abbr:"ka",months:{format:"\u10D8\u10D0\u10DC\u10D5\u10D0\u10E0\u10E1_\u10D7\u10D4\u10D1\u10D4\u10E0\u10D5\u10D0\u10DA\u10E1_\u10DB\u10D0\u10E0\u10E2\u10E1_\u10D0\u10DE\u10E0\u10D8\u10DA\u10D8\u10E1_\u10DB\u10D0\u10D8\u10E1\u10E1_\u10D8\u10D5\u10DC\u10D8\u10E1\u10E1_\u10D8\u10D5\u10DA\u10D8\u10E1\u10E1_\u10D0\u10D2\u10D5\u10D8\u10E1\u10E2\u10E1_\u10E1\u10D4\u10E5\u10E2\u10D4\u10DB\u10D1\u10D4\u10E0\u10E1_\u10DD\u10E5\u10E2\u10DD\u10DB\u10D1\u10D4\u10E0\u10E1_\u10DC\u10DD\u10D4\u10DB\u10D1\u10D4\u10E0\u10E1_\u10D3\u10D4\u10D9\u10D4\u10DB\u10D1\u10D4\u10E0\u10E1".split("_"),standalone:"\u10D8\u10D0\u10DC\u10D5\u10D0\u10E0\u10D8_\u10D7\u10D4\u10D1\u10D4\u10E0\u10D5\u10D0\u10DA\u10D8_\u10DB\u10D0\u10E0\u10E2\u10D8_\u10D0\u10DE\u10E0\u10D8\u10DA\u10D8_\u10DB\u10D0\u10D8\u10E1\u10D8_\u10D8\u10D5\u10DC\u10D8\u10E1\u10D8_\u10D8\u10D5\u10DA\u10D8\u10E1\u10D8_\u10D0\u10D2\u10D5\u10D8\u10E1\u10E2\u10DD_\u10E1\u10D4\u10E5\u10E2\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8_\u10DD\u10E5\u10E2\u10DD\u10DB\u10D1\u10D4\u10E0\u10D8_\u10DC\u10DD\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8_\u10D3\u10D4\u10D9\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8".split("_")},monthsShort:"\u10D8\u10D0\u10DC_\u10D7\u10D4\u10D1_\u10DB\u10D0\u10E0_\u10D0\u10DE\u10E0_\u10DB\u10D0\u10D8_\u10D8\u10D5\u10DC_\u10D8\u10D5\u10DA_\u10D0\u10D2\u10D5_\u10E1\u10D4\u10E5_\u10DD\u10E5\u10E2_\u10DC\u10DD\u10D4_\u10D3\u10D4\u10D9".split("_"),weekdays:{standalone:"\u10D9\u10D5\u10D8\u10E0\u10D0_\u10DD\u10E0\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10E1\u10D0\u10DB\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10DD\u10D7\u10EE\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10EE\u10E3\u10D7\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10DE\u10D0\u10E0\u10D0\u10E1\u10D9\u10D4\u10D5\u10D8_\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8".split("_"),format:"\u10D9\u10D5\u10D8\u10E0\u10D0\u10E1_\u10DD\u10E0\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1_\u10E1\u10D0\u10DB\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1_\u10DD\u10D7\u10EE\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1_\u10EE\u10E3\u10D7\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1_\u10DE\u10D0\u10E0\u10D0\u10E1\u10D9\u10D4\u10D5\u10E1_\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"\u10D9\u10D5\u10D8_\u10DD\u10E0\u10E8_\u10E1\u10D0\u10DB_\u10DD\u10D7\u10EE_\u10EE\u10E3\u10D7_\u10DE\u10D0\u10E0_\u10E8\u10D0\u10D1".split("_"),weekdaysMin:"\u10D9\u10D5_\u10DD\u10E0_\u10E1\u10D0_\u10DD\u10D7_\u10EE\u10E3_\u10DE\u10D0_\u10E8\u10D0".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[\u10D3\u10E6\u10D4\u10E1] LT[-\u10D6\u10D4]",nextDay:"[\u10EE\u10D5\u10D0\u10DA] LT[-\u10D6\u10D4]",lastDay:"[\u10D2\u10E3\u10E8\u10D8\u10DC] LT[-\u10D6\u10D4]",nextWeek:"[\u10E8\u10D4\u10DB\u10D3\u10D4\u10D2] dddd LT[-\u10D6\u10D4]",lastWeek:"[\u10EC\u10D8\u10DC\u10D0] dddd LT-\u10D6\u10D4",sameElse:"L"},relativeTime:{future(t){var n=t.toString();return/(წამი|წუთი|საათი|წელი)/.test(n)?n.replace(/ი$/,"\u10E8\u10D8"):n+"\u10E8\u10D8"},past(t){var n=t.toString();if(/(წამი|წუთი|საათი|დღე|თვე)/.test(n))return n.replace(/(ი|ე)$/,"\u10D8\u10E1 \u10EC\u10D8\u10DC");if(/წელი/.test(n))return n.replace(/წელი$/,"\u10EC\u10DA\u10D8\u10E1 \u10EC\u10D8\u10DC")},s:"\u10E0\u10D0\u10DB\u10D3\u10D4\u10DC\u10D8\u10DB\u10D4 \u10EC\u10D0\u10DB\u10D8",ss:"%d \u10EC\u10D0\u10DB\u10D8",m:"\u10EC\u10E3\u10D7\u10D8",mm:"%d \u10EC\u10E3\u10D7\u10D8",h:"\u10E1\u10D0\u10D0\u10D7\u10D8",hh:"%d \u10E1\u10D0\u10D0\u10D7\u10D8",d:"\u10D3\u10E6\u10D4",dd:"%d \u10D3\u10E6\u10D4",M:"\u10D7\u10D5\u10D4",MM:"%d \u10D7\u10D5\u10D4",y:"\u10EC\u10D4\u10DA\u10D8",yy:"%d \u10EC\u10D4\u10DA\u10D8"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal(t,n){let e=Number(t);return e===0?e.toString():e===1?e+"-\u10DA\u10D8":e<20||e<=100&&e%20===0||e%100===0?"\u10DB\u10D4-"+e:e+"-\u10D4"},week:{dow:1,doy:4}},pC={0:"-\u0448\u0456",1:"-\u0448\u0456",2:"-\u0448\u0456",3:"-\u0448\u0456",4:"-\u0448\u0456",5:"-\u0448\u0456",6:"-\u0448\u044B",7:"-\u0448\u0456",8:"-\u0448\u0456",9:"-\u0448\u044B",10:"-\u0448\u044B",20:"-\u0448\u044B",30:"-\u0448\u044B",40:"-\u0448\u044B",50:"-\u0448\u0456",60:"-\u0448\u044B",70:"-\u0448\u0456",80:"-\u0448\u0456",90:"-\u0448\u044B",100:"-\u0448\u0456"},pfe={abbr:"kk",months:"\u049B\u0430\u04A3\u0442\u0430\u0440_\u0430\u049B\u043F\u0430\u043D_\u043D\u0430\u0443\u0440\u044B\u0437_\u0441\u04D9\u0443\u0456\u0440_\u043C\u0430\u043C\u044B\u0440_\u043C\u0430\u0443\u0441\u044B\u043C_\u0448\u0456\u043B\u0434\u0435_\u0442\u0430\u043C\u044B\u0437_\u049B\u044B\u0440\u043A\u04AF\u0439\u0435\u043A_\u049B\u0430\u0437\u0430\u043D_\u049B\u0430\u0440\u0430\u0448\u0430_\u0436\u0435\u043B\u0442\u043E\u049B\u0441\u0430\u043D".split("_"),monthsShort:"\u049B\u0430\u04A3_\u0430\u049B\u043F_\u043D\u0430\u0443_\u0441\u04D9\u0443_\u043C\u0430\u043C_\u043C\u0430\u0443_\u0448\u0456\u043B_\u0442\u0430\u043C_\u049B\u044B\u0440_\u049B\u0430\u0437_\u049B\u0430\u0440_\u0436\u0435\u043B".split("_"),weekdays:"\u0436\u0435\u043A\u0441\u0435\u043D\u0431\u0456_\u0434\u04AF\u0439\u0441\u0435\u043D\u0431\u0456_\u0441\u0435\u0439\u0441\u0435\u043D\u0431\u0456_\u0441\u04D9\u0440\u0441\u0435\u043D\u0431\u0456_\u0431\u0435\u0439\u0441\u0435\u043D\u0431\u0456_\u0436\u04B1\u043C\u0430_\u0441\u0435\u043D\u0431\u0456".split("_"),weekdaysShort:"\u0436\u0435\u043A_\u0434\u04AF\u0439_\u0441\u0435\u0439_\u0441\u04D9\u0440_\u0431\u0435\u0439_\u0436\u04B1\u043C_\u0441\u0435\u043D".split("_"),weekdaysMin:"\u0436\u043A_\u0434\u0439_\u0441\u0439_\u0441\u0440_\u0431\u0439_\u0436\u043C_\u0441\u043D".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0411\u04AF\u0433\u0456\u043D \u0441\u0430\u0493\u0430\u0442] LT",nextDay:"[\u0415\u0440\u0442\u0435\u04A3 \u0441\u0430\u0493\u0430\u0442] LT",nextWeek:"dddd [\u0441\u0430\u0493\u0430\u0442] LT",lastDay:"[\u041A\u0435\u0448\u0435 \u0441\u0430\u0493\u0430\u0442] LT",lastWeek:"[\u04E8\u0442\u043A\u0435\u043D \u0430\u043F\u0442\u0430\u043D\u044B\u04A3] dddd [\u0441\u0430\u0493\u0430\u0442] LT",sameElse:"L"},relativeTime:{future:"%s \u0456\u0448\u0456\u043D\u0434\u0435",past:"%s \u0431\u04B1\u0440\u044B\u043D",s:"\u0431\u0456\u0440\u043D\u0435\u0448\u0435 \u0441\u0435\u043A\u0443\u043D\u0434",ss:"%d \u0441\u0435\u043A\u0443\u043D\u0434",m:"\u0431\u0456\u0440 \u043C\u0438\u043D\u0443\u0442",mm:"%d \u043C\u0438\u043D\u0443\u0442",h:"\u0431\u0456\u0440 \u0441\u0430\u0493\u0430\u0442",hh:"%d \u0441\u0430\u0493\u0430\u0442",d:"\u0431\u0456\u0440 \u043A\u04AF\u043D",dd:"%d \u043A\u04AF\u043D",M:"\u0431\u0456\u0440 \u0430\u0439",MM:"%d \u0430\u0439",y:"\u0431\u0456\u0440 \u0436\u044B\u043B",yy:"%d \u0436\u044B\u043B"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal(t){let n=t%10,e=t>=100?100:null;return t+(pC[t]||pC[n]||pC[e])},week:{dow:1,doy:7}};var mfe={abbr:"ko",months:"1\uC6D4_2\uC6D4_3\uC6D4_4\uC6D4_5\uC6D4_6\uC6D4_7\uC6D4_8\uC6D4_9\uC6D4_10\uC6D4_11\uC6D4_12\uC6D4".split("_"),monthsShort:"1\uC6D4_2\uC6D4_3\uC6D4_4\uC6D4_5\uC6D4_6\uC6D4_7\uC6D4_8\uC6D4_9\uC6D4_10\uC6D4_11\uC6D4_12\uC6D4".split("_"),weekdays:"\uC77C\uC694\uC77C_\uC6D4\uC694\uC77C_\uD654\uC694\uC77C_\uC218\uC694\uC77C_\uBAA9\uC694\uC77C_\uAE08\uC694\uC77C_\uD1A0\uC694\uC77C".split("_"),weekdaysShort:"\uC77C_\uC6D4_\uD654_\uC218_\uBAA9_\uAE08_\uD1A0".split("_"),weekdaysMin:"\uC77C_\uC6D4_\uD654_\uC218_\uBAA9_\uAE08_\uD1A0".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD",LL:"YYYY\uB144 MMMM D\uC77C",LLL:"YYYY\uB144 MMMM D\uC77C A h:mm",LLLL:"YYYY\uB144 MMMM D\uC77C dddd A h:mm",l:"YYYY.MM.DD",ll:"YYYY\uB144 MMMM D\uC77C",lll:"YYYY\uB144 MMMM D\uC77C A h:mm",llll:"YYYY\uB144 MMMM D\uC77C dddd A h:mm"},calendar:{sameDay:"\uC624\uB298 LT",nextDay:"\uB0B4\uC77C LT",nextWeek:"dddd LT",lastDay:"\uC5B4\uC81C LT",lastWeek:"\uC9C0\uB09C\uC8FC dddd LT",sameElse:"L"},relativeTime:{future:"%s \uD6C4",past:"%s \uC804",s:"\uBA87 \uCD08",ss:"%d\uCD08",m:"1\uBD84",mm:"%d\uBD84",h:"\uD55C \uC2DC\uAC04",hh:"%d\uC2DC\uAC04",d:"\uD558\uB8E8",dd:"%d\uC77C",M:"\uD55C \uB2EC",MM:"%d\uB2EC",y:"\uC77C \uB144",yy:"%d\uB144"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(t,n){switch(n){case"d":case"D":case"DDD":return t+"\uC77C";case"M":return t+"\uC6D4";case"w":case"W":return t+"\uC8FC";default:return t.toString(10)}},meridiemParse:/오전|오후/,isPM:function(t){return t==="\uC624\uD6C4"},meridiem:function(t,n,e){return t<12?"\uC624\uC804":"\uC624\uD6C4"}};var Uz={ss:"sekund\u0117_sekund\u017Ei\u0173_sekundes",m:"minut\u0117_minut\u0117s_minut\u0119",mm:"minut\u0117s_minu\u010Di\u0173_minutes",h:"valanda_valandos_valand\u0105",hh:"valandos_valand\u0173_valandas",d:"diena_dienos_dien\u0105",dd:"dienos_dien\u0173_dienas",M:"m\u0117nuo_m\u0117nesio_m\u0117nes\u012F",MM:"m\u0117nesiai_m\u0117nesi\u0173_m\u0117nesius",y:"metai_met\u0173_metus",yy:"metai_met\u0173_metus"};function $z(t,n,e,i){return n?"kelios sekund\u0117s":i?"keli\u0173 sekund\u017Ei\u0173":"kelias sekundes"}function tc(t,n,e,i){return n?es(e)[0]:i?es(e)[1]:es(e)[2]}function ZI(t){return t%10===0||t>10&&t<20}function es(t){return Uz[t].split("_")}function Ql(t,n,e,i){let r=t+" ";return t===1?r+tc(t,n,e[0],i):n?r+(ZI(t)?es(e)[1]:es(e)[0]):i?r+es(e)[1]:r+(ZI(t)?es(e)[1]:es(e)[2])}var gfe={abbr:"lt",months:{format:"sausio_vasario_kovo_baland\u017Eio_gegu\u017E\u0117s_bir\u017Eelio_liepos_rugpj\u016B\u010Dio_rugs\u0117jo_spalio_lapkri\u010Dio_gruod\u017Eio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegu\u017E\u0117_bir\u017Eelis_liepa_rugpj\u016Btis_rugs\u0117jis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadien\u012F_pirmadien\u012F_antradien\u012F_tre\u010Diadien\u012F_ketvirtadien\u012F_penktadien\u012F_\u0161e\u0161tadien\u012F".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_tre\u010Diadienis_ketvirtadienis_penktadienis_\u0161e\u0161tadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_\u0160e\u0161".split("_"),weekdaysMin:"S_P_A_T_K_Pn_\u0160".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[\u0160iandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Pra\u0117jus\u012F] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prie\u0161 %s",s:$z,ss:Ql,m:tc,mm:Ql,h:tc,hh:Ql,d:tc,dd:Ql,M:tc,MM:Ql,y:tc,yy:Ql},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal(t){return t+"-oji"},week:{dow:1,doy:4}};var _fe={abbr:"lv",months:"Janv\u0101ris_Febru\u0101ris_Marts_Apr\u012Blis_Maijs_J\u016Bnijs_J\u016Blijs_Augusts_Septembris_Oktobris_Novembris_Decembris".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mai_J\u016Bn_J\u016Bl_Aug_Sep_Okt_Nov_Dec".split("_"),weekdays:"Sv\u0113tdiena_Pirmdiena_Otrdiena_Tre\u0161diena_Ceturtdiena_Piektdiena_Sestdiena".split("_"),weekdaysShort:"Sv\u0113td_Pirmd_Otrd_Tre\u0161d_Ceturtd_Piektd_Sestd".split("_"),weekdaysMin:"Sv_Pi_Ot_Tr_Ce_Pk_Se".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"p\u0113c %s",past:"pirms %s",s:"da\u017E\u0101m sekund\u0113m",ss:"%d sekund\u0113m",m:"min\u016Btes",mm:"%d min\u016Bt\u0113m",h:"stundas",hh:"%d stund\u0101m",d:"dienas",dd:"%d dien\u0101m",M:"m\u0113ne\u0161a",MM:"%d m\u0113ne\u0161iem",y:"gada",yy:"%d gadiem"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal(t){return t+"."},week:{dow:1,doy:4}};function Ni(t,n,e,i){switch(e){case"s":return n?"\u0445\u044D\u0434\u0445\u044D\u043D \u0441\u0435\u043A\u0443\u043D\u0434":"\u0445\u044D\u0434\u0445\u044D\u043D \u0441\u0435\u043A\u0443\u043D\u0434\u044B\u043D";case"ss":return t+(n?" \u0441\u0435\u043A\u0443\u043D\u0434":" \u0441\u0435\u043A\u0443\u043D\u0434\u044B\u043D");case"m":case"mm":return t+(n?" \u043C\u0438\u043D\u0443\u0442":" \u043C\u0438\u043D\u0443\u0442\u044B\u043D");case"h":case"hh":return t+(n?" \u0446\u0430\u0433":" \u0446\u0430\u0433\u0438\u0439\u043D");case"d":case"dd":return t+(n?" \u04E9\u0434\u04E9\u0440":" \u04E9\u0434\u0440\u0438\u0439\u043D");case"M":case"MM":return t+(n?" \u0441\u0430\u0440":" \u0441\u0430\u0440\u044B\u043D");case"y":case"yy":return t+(n?" \u0436\u0438\u043B":" \u0436\u0438\u043B\u0438\u0439\u043D");default:return t.toString(10)}}var yfe={abbr:"mn",months:"\u041D\u044D\u0433\u0434\u04AF\u0433\u044D\u044D\u0440 \u0441\u0430\u0440_\u0425\u043E\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u04E9\u0440\u04E9\u0432\u0434\u04AF\u0433\u044D\u044D\u0440 \u0441\u0430\u0440_\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0417\u0443\u0440\u0433\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u043E\u043B\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u041D\u0430\u0439\u043C\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0415\u0441\u0434\u04AF\u0433\u044D\u044D\u0440 \u0441\u0430\u0440_\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043D \u043D\u044D\u0433\u0434\u04AF\u0433\u044D\u044D\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043D \u0445\u043E\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440".split("_"),monthsShort:"1 \u0441\u0430\u0440_2 \u0441\u0430\u0440_3 \u0441\u0430\u0440_4 \u0441\u0430\u0440_5 \u0441\u0430\u0440_6 \u0441\u0430\u0440_7 \u0441\u0430\u0440_8 \u0441\u0430\u0440_9 \u0441\u0430\u0440_10 \u0441\u0430\u0440_11 \u0441\u0430\u0440_12 \u0441\u0430\u0440".split("_"),monthsParseExact:!0,weekdays:"\u041D\u044F\u043C_\u0414\u0430\u0432\u0430\u0430_\u041C\u044F\u0433\u043C\u0430\u0440_\u041B\u0445\u0430\u0433\u0432\u0430_\u041F\u04AF\u0440\u044D\u0432_\u0411\u0430\u0430\u0441\u0430\u043D_\u0411\u044F\u043C\u0431\u0430".split("_"),weekdaysShort:"\u041D\u044F\u043C_\u0414\u0430\u0432_\u041C\u044F\u0433_\u041B\u0445\u0430_\u041F\u04AF\u0440_\u0411\u0430\u0430_\u0411\u044F\u043C".split("_"),weekdaysMin:"\u041D\u044F_\u0414\u0430_\u041C\u044F_\u041B\u0445_\u041F\u04AF_\u0411\u0430_\u0411\u044F".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY \u043E\u043D\u044B MMMM\u044B\u043D D",LLL:"YYYY \u043E\u043D\u044B MMMM\u044B\u043D D HH:mm",LLLL:"dddd, YYYY \u043E\u043D\u044B MMMM\u044B\u043D D HH:mm"},meridiemParse:/ҮӨ|ҮХ/i,isPM:function(t){return t==="\u04AE\u0425"},meridiem:function(t,n,e){return t<12?"\u04AE\u04E8":"\u04AE\u0425"},calendar:{sameDay:"[\u04E8\u043D\u04E9\u04E9\u0434\u04E9\u0440] LT",nextDay:"[\u041C\u0430\u0440\u0433\u0430\u0430\u0448] LT",nextWeek:"[\u0418\u0440\u044D\u0445] dddd LT",lastDay:"[\u04E8\u0447\u0438\u0433\u0434\u04E9\u0440] LT",lastWeek:"[\u04E8\u043D\u0433\u04E9\u0440\u0441\u04E9\u043D] dddd LT",sameElse:"L"},relativeTime:{future:"%s \u0434\u0430\u0440\u0430\u0430",past:"%s \u04E9\u043C\u043D\u04E9",s:Ni,ss:Ni,m:Ni,mm:Ni,h:Ni,hh:Ni,d:Ni,dd:Ni,M:Ni,MM:Ni,y:Ni,yy:Ni},dayOfMonthOrdinalParse:/\d{1,2} өдөр/,ordinal:function(t,n){switch(n){case"d":case"D":case"DDD":return t+" \u04E9\u0434\u04E9\u0440";default:return t.toString(10)}}};var vfe={abbr:"nb",months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"s\xF8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xF8rdag".split("_"),weekdaysShort:"s\xF8._ma._ti._on._to._fr._l\xF8.".split("_"),weekdaysMin:"s\xF8_ma_ti_on_to_fr_l\xF8".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i g\xE5r kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en m\xE5ned",MM:"%d m\xE5neder",y:"ett \xE5r",yy:"%d \xE5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var JI="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),zz="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),mC=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],XI=/^(januari|februari|maart|april|mei|april|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,bfe={abbr:"nl-be",months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?zz[Ne(t,e)]:JI[Ne(t,e)]:JI},monthsRegex:XI,monthsShortRegex:XI,monthsStrictRegex:/^(januari|februari|maart|mei|ju[nl]i|april|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:mC,longMonthsParse:mC,shortMonthsParse:mC,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xE9\xE9n minuut",mm:"%d minuten",h:"\xE9\xE9n uur",hh:"%d uur",d:"\xE9\xE9n dag",dd:"%d dagen",M:"\xE9\xE9n maand",MM:"%d maanden",y:"\xE9\xE9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal(t){let n=Number(t);return n+(n===1||n===8||n>=20?"ste":"de")},week:{dow:1,doy:4}};var ek="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),Yz="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),gC=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],tk=/^(januari|februari|maart|april|mei|april|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,Cfe={abbr:"nl",months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?Yz[Ne(t,e)]:ek[Ne(t,e)]:ek},monthsRegex:tk,monthsShortRegex:tk,monthsStrictRegex:/^(januari|februari|maart|mei|ju[nl]i|april|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:gC,longMonthsParse:gC,shortMonthsParse:gC,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xE9\xE9n minuut",mm:"%d minuten",h:"\xE9\xE9n uur",hh:"%d uur",d:"\xE9\xE9n dag",dd:"%d dagen",M:"\xE9\xE9n maand",MM:"%d maanden",y:"\xE9\xE9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal(t){let n=Number(t);return n+(n===1||n===8||n>=20?"ste":"de")},week:{dow:1,doy:4}};var _C="stycze\u0144_luty_marzec_kwiecie\u0144_maj_czerwiec_lipiec_sierpie\u0144_wrzesie\u0144_pa\u017Adziernik_listopad_grudzie\u0144".split("_"),nk="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrze\u015Bnia_pa\u017Adziernika_listopada_grudnia".split("_");function ud(t){return t%10<5&&t%10>1&&~~(t/10)%10!==1}function la(t,n,e){let i=t+" ";switch(e){case"ss":return i+(ud(t)?"sekundy":"sekund");case"m":return n?"minuta":"minut\u0119";case"mm":return i+(ud(t)?"minuty":"minut");case"h":return n?"godzina":"godzin\u0119";case"hh":return i+(ud(t)?"godziny":"godzin");case"MM":return i+(ud(t)?"miesi\u0105ce":"miesi\u0119cy");case"yy":return i+(ud(t)?"lata":"lat")}}var wfe={abbr:"pl",months(t,n,e){return t?n===""?"("+nk[Ne(t,e)]+"|"+_C[Ne(t,e)]+")":/D MMMM/.test(n)?nk[Ne(t,e)]:_C[Ne(t,e)]:_C},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_pa\u017A_lis_gru".split("_"),weekdays:"niedziela_poniedzia\u0142ek_wtorek_\u015Broda_czwartek_pi\u0105tek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_\u015Br_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_\u015Ar_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dzi\u015B o] LT",nextDay:"[Jutro o] LT",nextWeek(t){switch(Xt(t)){case 0:return"[W niedziel\u0119 o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W \u015Brod\u0119 o] LT";case 5:return"[W pi\u0105tek o] LT";case 6:return"[W sobot\u0119 o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek(t){switch(Xt(t)){case 0:return"[W zesz\u0142\u0105 niedziel\u0119 o] LT";case 3:return"[W zesz\u0142\u0105 \u015Brod\u0119 o] LT";case 4:return"[W zesz\u0142\u0105 czwartek o] LT";case 5:return"[W zesz\u0142\u0105 pi\u0105tek o] LT";case 6:return"[W zesz\u0142\u0105 sobot\u0119 o] LT";default:return"[W zesz\u0142y] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:la,m:la,mm:la,h:la,hh:la,d:"1 dzie\u0144",dd:"%d dni",M:"miesi\u0105c",MM:la,y:"rok",yy:la},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var Dfe={abbr:"pt-br",months:"Janeiro_Fevereiro_Mar\xE7o_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Ter\xE7a-feira_Quarta-feira_Quinta-feira_Sexta-feira_S\xE1bado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_S\xE1b".split("_"),weekdaysMin:"Do_2\xAA_3\xAA_4\xAA_5\xAA_6\xAA_S\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [\xE0s] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [\xE0s] HH:mm"},calendar:{sameDay:"[Hoje \xE0s] LT",nextDay:"[Amanh\xE3 \xE0s] LT",nextWeek:"dddd [\xE0s] LT",lastDay:"[Ontem \xE0s] LT",lastWeek(t){return Xt(t)===0||Xt(t)===6?"[\xDAltimo] dddd [\xE0s] LT":"[\xDAltima] dddd [\xE0s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atr\xE1s",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xEAs",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA"};function Kl(t,n,e){let i={ss:"secunde",mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"},r=" ";return(t%100>=20||t>=100&&t%100===0)&&(r=" de "),t+r+i[e]}var Mfe={abbr:"ro",months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"duminic\u0103_luni_mar\u021Bi_miercuri_joi_vineri_s\xE2mb\u0103t\u0103".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_S\xE2m".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_S\xE2".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[m\xE2ine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s \xEEn urm\u0103",s:"c\xE2teva secunde",ss:Kl,m:"un minut",mm:Kl,h:"o or\u0103",hh:Kl,d:"o zi",dd:Kl,M:"o lun\u0103",MM:Kl,y:"un an",yy:Kl},week:{dow:1,doy:7}};function Wz(t,n){let e=t.split("_");return n%10===1&&n%100!==11?e[0]:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?e[1]:e[2]}function ca(t,n,e){let i={ss:n?"\u0441\u0435\u043A\u0443\u043D\u0434\u0430_\u0441\u0435\u043A\u0443\u043D\u0434\u044B_\u0441\u0435\u043A\u0443\u043D\u0434":"\u0441\u0435\u043A\u0443\u043D\u0434\u0443_\u0441\u0435\u043A\u0443\u043D\u0434\u044B_\u0441\u0435\u043A\u0443\u043D\u0434",mm:n?"\u043C\u0438\u043D\u0443\u0442\u0430_\u043C\u0438\u043D\u0443\u0442\u044B_\u043C\u0438\u043D\u0443\u0442":"\u043C\u0438\u043D\u0443\u0442\u0443_\u043C\u0438\u043D\u0443\u0442\u044B_\u043C\u0438\u043D\u0443\u0442",hh:"\u0447\u0430\u0441_\u0447\u0430\u0441\u0430_\u0447\u0430\u0441\u043E\u0432",dd:"\u0434\u0435\u043D\u044C_\u0434\u043D\u044F_\u0434\u043D\u0435\u0439",MM:"\u043C\u0435\u0441\u044F\u0446_\u043C\u0435\u0441\u044F\u0446\u0430_\u043C\u0435\u0441\u044F\u0446\u0435\u0432",yy:"\u0433\u043E\u0434_\u0433\u043E\u0434\u0430_\u043B\u0435\u0442"};return e==="m"?n?"\u043C\u0438\u043D\u0443\u0442\u0430":"\u043C\u0438\u043D\u0443\u0442\u0443":t+" "+Wz(i[e],+t)}var yC=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[йя]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i],Sfe={abbr:"ru",months:{format:"\u044F\u043D\u0432\u0430\u0440\u044F_\u0444\u0435\u0432\u0440\u0430\u043B\u044F_\u043C\u0430\u0440\u0442\u0430_\u0430\u043F\u0440\u0435\u043B\u044F_\u043C\u0430\u044F_\u0438\u044E\u043D\u044F_\u0438\u044E\u043B\u044F_\u0430\u0432\u0433\u0443\u0441\u0442\u0430_\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044F_\u043E\u043A\u0442\u044F\u0431\u0440\u044F_\u043D\u043E\u044F\u0431\u0440\u044F_\u0434\u0435\u043A\u0430\u0431\u0440\u044F".split("_"),standalone:"\u044F\u043D\u0432\u0430\u0440\u044C_\u0444\u0435\u0432\u0440\u0430\u043B\u044C_\u043C\u0430\u0440\u0442_\u0430\u043F\u0440\u0435\u043B\u044C_\u043C\u0430\u0439_\u0438\u044E\u043D\u044C_\u0438\u044E\u043B\u044C_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044C_\u043E\u043A\u0442\u044F\u0431\u0440\u044C_\u043D\u043E\u044F\u0431\u0440\u044C_\u0434\u0435\u043A\u0430\u0431\u0440\u044C".split("_")},monthsShort:{format:"\u044F\u043D\u0432._\u0444\u0435\u0432\u0440._\u043C\u0430\u0440._\u0430\u043F\u0440._\u043C\u0430\u044F_\u0438\u044E\u043D\u044F_\u0438\u044E\u043B\u044F_\u0430\u0432\u0433._\u0441\u0435\u043D\u0442._\u043E\u043A\u0442._\u043D\u043E\u044F\u0431._\u0434\u0435\u043A.".split("_"),standalone:"\u044F\u043D\u0432._\u0444\u0435\u0432\u0440._\u043C\u0430\u0440\u0442_\u0430\u043F\u0440._\u043C\u0430\u0439_\u0438\u044E\u043D\u044C_\u0438\u044E\u043B\u044C_\u0430\u0432\u0433._\u0441\u0435\u043D\u0442._\u043E\u043A\u0442._\u043D\u043E\u044F\u0431._\u0434\u0435\u043A.".split("_")},weekdays:{standalone:"\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435_\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A_\u0432\u0442\u043E\u0440\u043D\u0438\u043A_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043F\u044F\u0442\u043D\u0438\u0446\u0430_\u0441\u0443\u0431\u0431\u043E\u0442\u0430".split("_"),format:"\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435_\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A_\u0432\u0442\u043E\u0440\u043D\u0438\u043A_\u0441\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043F\u044F\u0442\u043D\u0438\u0446\u0443_\u0441\u0443\u0431\u0431\u043E\u0442\u0443".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/},weekdaysShort:"\u0432\u0441_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u0432\u0441_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),monthsParse:yC,longMonthsParse:yC,shortMonthsParse:yC,monthsRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsShortRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsStrictRegex:/^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,monthsShortStrictRegex:/^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., H:mm",LLLL:"dddd, D MMMM YYYY \u0433., H:mm"},calendar:{sameDay:"[\u0421\u0435\u0433\u043E\u0434\u043D\u044F \u0432] LT",nextDay:"[\u0417\u0430\u0432\u0442\u0440\u0430 \u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432] LT",nextWeek(t,n){if(dd(n)!==dd(t))switch(Xt(t)){case 0:return"[\u0412 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0435] dddd [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439] dddd [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0443\u044E] dddd [\u0432] LT"}else return Xt(t)===2?"[\u0412\u043E] dddd [\u0432] LT":"[\u0412] dddd [\u0432] LT"},lastWeek(t,n){if(dd(n)!==dd(t))switch(Xt(t)){case 0:return"[\u0412 \u043F\u0440\u043E\u0448\u043B\u043E\u0435] dddd [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u043F\u0440\u043E\u0448\u043B\u044B\u0439] dddd [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u043F\u0440\u043E\u0448\u043B\u0443\u044E] dddd [\u0432] LT"}else return Xt(t)===2?"[\u0412\u043E] dddd [\u0432] LT":"[\u0412] dddd [\u0432] LT"},sameElse:"L"},relativeTime:{future:"\u0447\u0435\u0440\u0435\u0437 %s",past:"%s \u043D\u0430\u0437\u0430\u0434",s:"\u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0441\u0435\u043A\u0443\u043D\u0434",ss:ca,m:ca,mm:ca,h:"\u0447\u0430\u0441",hh:ca,d:"\u0434\u0435\u043D\u044C",dd:ca,M:"\u043C\u0435\u0441\u044F\u0446",MM:ca,y:"\u0433\u043E\u0434",yy:ca},meridiemParse:/ночи|утра|дня|вечера/i,isPM(t){return/^(дня|вечера)$/.test(t)},meridiem(t,n,e){return t<4?"\u043D\u043E\u0447\u0438":t<12?"\u0443\u0442\u0440\u0430":t<17?"\u0434\u043D\u044F":"\u0432\u0435\u0447\u0435\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го|я)/,ordinal(t,n){let e=Number(t);switch(n){case"M":case"d":case"DDD":return e+"-\u0439";case"D":return e+"-\u0433\u043E";case"w":case"W":return e+"-\u044F";default:return e.toString(10)}},week:{dow:1,doy:4}};var Gz="janu\xE1r_febru\xE1r_marec_apr\xEDl_m\xE1j_j\xFAn_j\xFAl_august_september_okt\xF3ber_november_december".split("_"),qz="jan_feb_mar_apr_m\xE1j_j\xFAn_j\xFAl_aug_sep_okt_nov_dec".split("_");function Zl(t){return t>1&&t<5&&~~(t/10)!==1}function Li(t,n,e,i){let r=t+" ";switch(e){case"s":return n||i?"p\xE1r sek\xFAnd":"p\xE1r sekundami";case"ss":return n||i?r+(Zl(t)?"sekundy":"sek\xFAnd"):r+"sekundami";case"m":return n?"min\xFAta":i?"min\xFAtu":"min\xFAtou";case"mm":return n||i?r+(Zl(t)?"min\xFAty":"min\xFAt"):r+"min\xFAtami";case"h":return n?"hodina":i?"hodinu":"hodinou";case"hh":return n||i?r+(Zl(t)?"hodiny":"hod\xEDn"):r+"hodinami";case"d":return n||i?"de\u0148":"d\u0148om";case"dd":return n||i?r+(Zl(t)?"dni":"dn\xED"):r+"d\u0148ami";case"M":return n||i?"mesiac":"mesiacom";case"MM":return n||i?r+(Zl(t)?"mesiace":"mesiacov"):r+"mesiacmi";case"y":return n||i?"rok":"rokom";case"yy":return n||i?r+(Zl(t)?"roky":"rokov"):r+"rokmi"}}var Tfe={abbr:"sk",months:Gz,monthsShort:qz,weekdays:"nede\u013Ea_pondelok_utorok_streda_\u0161tvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_\u0161t_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_\u0161t_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek(t){switch(Xt(t)){case 0:return"[v nede\u013Eu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo \u0161tvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[v\u010Dera o] LT",lastWeek(t){switch(Xt(t)){case 0:return"[minul\xFA nede\u013Eu o] LT";case 1:case 2:return"[minul\xFD] dddd [o] LT";case 3:return"[minul\xFA stredu o] LT";case 4:case 5:return"[minul\xFD] dddd [o] LT";case 6:return"[minul\xFA sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"o %s",past:"pred %s",s:Li,ss:Li,m:Li,mm:Li,h:Li,hh:Li,d:Li,dd:Li,M:Li,MM:Li,y:Li,yy:Li},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};function Fi(t,n,e,i){var r=t+" ";switch(e){case"s":return n||i?"nekaj sekund":"nekaj sekundami";case"ss":return t===1?r+=n?"sekundo":"sekundi":t===2?r+=n||i?"sekundi":"sekundah":t<5?r+=n||i?"sekunde":"sekundah":r+="sekund",r;case"m":return n?"ena minuta":"eno minuto";case"mm":return t===1?r+=n?"minuta":"minuto":t===2?r+=n||i?"minuti":"minutama":t<5?r+=n||i?"minute":"minutami":r+=n||i?"minut":"minutami",r;case"h":return n?"ena ura":"eno uro";case"hh":return t===1?r+=n?"ura":"uro":t===2?r+=n||i?"uri":"urama":t<5?r+=n||i?"ure":"urami":r+=n||i?"ur":"urami",r;case"d":return n||i?"en dan":"enim dnem";case"dd":return t===1?r+=n||i?"dan":"dnem":t===2?r+=n||i?"dni":"dnevoma":r+=n||i?"dni":"dnevi",r;case"M":return n||i?"en mesec":"enim mesecem";case"MM":return t===1?r+=n||i?"mesec":"mesecem":t===2?r+=n||i?"meseca":"mesecema":t<5?r+=n||i?"mesece":"meseci":r+=n||i?"mesecev":"meseci",r;case"y":return n||i?"eno leto":"enim letom";case"yy":return t===1?r+=n||i?"leto":"letom":t===2?r+=n||i?"leti":"letoma":t<5?r+=n||i?"leta":"leti":r+=n||i?"let":"leti",r}}var Efe={abbr:"sl",months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_\u010Detrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._\u010Det._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_\u010De_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek(t){switch(Xt(t)){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[v\u010Deraj ob] LT",lastWeek(t){switch(Xt(t)){case 0:return"[prej\u0161njo] [nedeljo] [ob] LT";case 3:return"[prej\u0161njo] [sredo] [ob] LT";case 6:return"[prej\u0161njo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prej\u0161nji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"\u010Dez %s",past:"pred %s",s:Fi,ss:Fi,m:Fi,mm:Fi,h:Fi,hh:Fi,d:Fi,dd:Fi,M:Fi,MM:Fi,y:Fi,yy:Fi},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}};var xfe={abbr:"sq",months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_N\xEBntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_N\xEBn_Dhj".split("_"),weekdays:"E Diel\xEB_E H\xEBn\xEB_E Mart\xEB_E M\xEBrkur\xEB_E Enjte_E Premte_E Shtun\xEB".split("_"),weekdaysShort:"Die_H\xEBn_Mar_M\xEBr_Enj_Pre_Sht".split("_"),weekdaysMin:"Di_He_Ma_Me_En_Pr_Sh".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot n\xEB] LT",nextDay:"[Nes\xEBr n\xEB] LT",nextWeek:"dddd [n\xEB] LT",lastDay:"[Dje n\xEB] LT",lastWeek:"dddd [e kaluar n\xEB] LT",sameElse:"L"},relativeTime:{future:"n\xEB %s",past:"para %sve",s:"disa sekonda",ss:"%d sekonda",m:"nj\xEB minut",mm:"%d minuta",h:"nj\xEB or\xEB",hh:"%d or\xEB",d:"nj\xEB dit\xEB",dd:"%d dit\xEB",M:"nj\xEB muaj",MM:"%d muaj",y:"nj\xEB vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var Ife={abbr:"sv",months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"s\xF6ndag_m\xE5ndag_tisdag_onsdag_torsdag_fredag_l\xF6rdag".split("_"),weekdaysShort:"s\xF6n_m\xE5n_tis_ons_tor_fre_l\xF6r".split("_"),weekdaysMin:"s\xF6_m\xE5_ti_on_to_fr_l\xF6".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Ig\xE5r] LT",nextWeek:"[P\xE5] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"f\xF6r %s sedan",s:"n\xE5gra sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en m\xE5nad",MM:"%d m\xE5nader",y:"ett \xE5r",yy:"%d \xE5r"},dayOfMonthOrdinalParse:/\d{1,2}(e|a)/,ordinal(t){let n=Number(t),e=n%10,i=~~(n%100/10)===1?"e":e===1||e===2?"a":"e";return n+i},week:{dow:1,doy:4}},kfe={abbr:"th",months:"\u0E21\u0E01\u0E23\u0E32\u0E04\u0E21_\u0E01\u0E38\u0E21\u0E20\u0E32\u0E1E\u0E31\u0E19\u0E18\u0E4C_\u0E21\u0E35\u0E19\u0E32\u0E04\u0E21_\u0E40\u0E21\u0E29\u0E32\u0E22\u0E19_\u0E1E\u0E24\u0E29\u0E20\u0E32\u0E04\u0E21_\u0E21\u0E34\u0E16\u0E38\u0E19\u0E32\u0E22\u0E19_\u0E01\u0E23\u0E01\u0E0E\u0E32\u0E04\u0E21_\u0E2A\u0E34\u0E07\u0E2B\u0E32\u0E04\u0E21_\u0E01\u0E31\u0E19\u0E22\u0E32\u0E22\u0E19_\u0E15\u0E38\u0E25\u0E32\u0E04\u0E21_\u0E1E\u0E24\u0E28\u0E08\u0E34\u0E01\u0E32\u0E22\u0E19_\u0E18\u0E31\u0E19\u0E27\u0E32\u0E04\u0E21".split("_"),monthsShort:"\u0E21.\u0E04._\u0E01.\u0E1E._\u0E21\u0E35.\u0E04._\u0E40\u0E21.\u0E22._\u0E1E.\u0E04._\u0E21\u0E34.\u0E22._\u0E01.\u0E04._\u0E2A.\u0E04._\u0E01.\u0E22._\u0E15.\u0E04._\u0E1E.\u0E22._\u0E18.\u0E04.".split("_"),monthsParseExact:!0,weekdays:"\u0E2D\u0E32\u0E17\u0E34\u0E15\u0E22\u0E4C_\u0E08\u0E31\u0E19\u0E17\u0E23\u0E4C_\u0E2D\u0E31\u0E07\u0E04\u0E32\u0E23_\u0E1E\u0E38\u0E18_\u0E1E\u0E24\u0E2B\u0E31\u0E2A\u0E1A\u0E14\u0E35_\u0E28\u0E38\u0E01\u0E23\u0E4C_\u0E40\u0E2A\u0E32\u0E23\u0E4C".split("_"),weekdaysShort:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),weekdaysMin:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm",LLLL:"\u0E27\u0E31\u0E19dddd\u0E17\u0E35\u0E48 D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM(t){return t==="\u0E2B\u0E25\u0E31\u0E07\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07"},meridiem(t,n,e){return t<12?"\u0E01\u0E48\u0E2D\u0E19\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07":"\u0E2B\u0E25\u0E31\u0E07\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07"},calendar:{sameDay:"[\u0E27\u0E31\u0E19\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",nextDay:"[\u0E1E\u0E23\u0E38\u0E48\u0E07\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",nextWeek:"dddd[\u0E2B\u0E19\u0E49\u0E32 \u0E40\u0E27\u0E25\u0E32] LT",lastDay:"[\u0E40\u0E21\u0E37\u0E48\u0E2D\u0E27\u0E32\u0E19\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",lastWeek:"[\u0E27\u0E31\u0E19]dddd[\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27 \u0E40\u0E27\u0E25\u0E32] LT",sameElse:"L"},relativeTime:{future:"\u0E2D\u0E35\u0E01 %s",past:"%s\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27",s:"\u0E44\u0E21\u0E48\u0E01\u0E35\u0E48\u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",ss:"%d \u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",m:"1 \u0E19\u0E32\u0E17\u0E35",mm:"%d \u0E19\u0E32\u0E17\u0E35",h:"1 \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",hh:"%d \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",d:"1 \u0E27\u0E31\u0E19",dd:"%d \u0E27\u0E31\u0E19",M:"1 \u0E40\u0E14\u0E37\u0E2D\u0E19",MM:"%d \u0E40\u0E14\u0E37\u0E2D\u0E19",y:"1 \u0E1B\u0E35",yy:"%d \u0E1B\u0E35"}},ik={abbr:"th-be",months:"\u0E21\u0E01\u0E23\u0E32\u0E04\u0E21_\u0E01\u0E38\u0E21\u0E20\u0E32\u0E1E\u0E31\u0E19\u0E18\u0E4C_\u0E21\u0E35\u0E19\u0E32\u0E04\u0E21_\u0E40\u0E21\u0E29\u0E32\u0E22\u0E19_\u0E1E\u0E24\u0E29\u0E20\u0E32\u0E04\u0E21_\u0E21\u0E34\u0E16\u0E38\u0E19\u0E32\u0E22\u0E19_\u0E01\u0E23\u0E01\u0E0E\u0E32\u0E04\u0E21_\u0E2A\u0E34\u0E07\u0E2B\u0E32\u0E04\u0E21_\u0E01\u0E31\u0E19\u0E22\u0E32\u0E22\u0E19_\u0E15\u0E38\u0E25\u0E32\u0E04\u0E21_\u0E1E\u0E24\u0E28\u0E08\u0E34\u0E01\u0E32\u0E22\u0E19_\u0E18\u0E31\u0E19\u0E27\u0E32\u0E04\u0E21".split("_"),monthsShort:"\u0E21.\u0E04._\u0E01.\u0E1E._\u0E21\u0E35.\u0E04._\u0E40\u0E21.\u0E22._\u0E1E.\u0E04._\u0E21\u0E34.\u0E22._\u0E01.\u0E04._\u0E2A.\u0E04._\u0E01.\u0E22._\u0E15.\u0E04._\u0E1E.\u0E22._\u0E18.\u0E04.".split("_"),monthsParseExact:!0,weekdays:"\u0E2D\u0E32\u0E17\u0E34\u0E15\u0E22\u0E4C_\u0E08\u0E31\u0E19\u0E17\u0E23\u0E4C_\u0E2D\u0E31\u0E07\u0E04\u0E32\u0E23_\u0E1E\u0E38\u0E18_\u0E1E\u0E24\u0E2B\u0E31\u0E2A\u0E1A\u0E14\u0E35_\u0E28\u0E38\u0E01\u0E23\u0E4C_\u0E40\u0E2A\u0E32\u0E23\u0E4C".split("_"),weekdaysShort:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),weekdaysMin:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm",LLLL:"\u0E27\u0E31\u0E19dddd\u0E17\u0E35\u0E48 D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM(t){return t==="\u0E2B\u0E25\u0E31\u0E07\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07"},meridiem(t,n,e){return t<12?"\u0E01\u0E48\u0E2D\u0E19\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07":"\u0E2B\u0E25\u0E31\u0E07\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07"},calendar:{sameDay:"[\u0E27\u0E31\u0E19\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",nextDay:"[\u0E1E\u0E23\u0E38\u0E48\u0E07\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",nextWeek:"dddd[\u0E2B\u0E19\u0E49\u0E32 \u0E40\u0E27\u0E25\u0E32] LT",lastDay:"[\u0E40\u0E21\u0E37\u0E48\u0E2D\u0E27\u0E32\u0E19\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",lastWeek:"[\u0E27\u0E31\u0E19]dddd[\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27 \u0E40\u0E27\u0E25\u0E32] LT",sameElse:"L"},relativeTime:{future:"\u0E2D\u0E35\u0E01 %s",past:"%s\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27",s:"\u0E44\u0E21\u0E48\u0E01\u0E35\u0E48\u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",ss:"%d \u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",m:"1 \u0E19\u0E32\u0E17\u0E35",mm:"%d \u0E19\u0E32\u0E17\u0E35",h:"1 \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",hh:"%d \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",d:"1 \u0E27\u0E31\u0E19",dd:"%d \u0E27\u0E31\u0E19",M:"1 \u0E40\u0E14\u0E37\u0E2D\u0E19",MM:"%d \u0E40\u0E14\u0E37\u0E2D\u0E19",y:"1 \u0E1B\u0E35",yy:"%d \u0E1B\u0E35"},preparse(t,n){let e=ik.longDateFormat[n]?ik.longDateFormat[n]:n;if(e.indexOf("YYYY",e.length-4)!==-1){let i=t.substr(0,t.length-4),r=parseInt(t.substr(t.length-4),10)-543;return i+r}return t},getFullYear(t,n=!1){return 543+(n?t.getUTCFullYear():t.getFullYear())}};var vC={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'\xFCnc\xFC",4:"'\xFCnc\xFC",100:"'\xFCnc\xFC",6:"'nc\u0131",9:"'uncu",10:"'uncu",30:"'uncu",60:"'\u0131nc\u0131",90:"'\u0131nc\u0131"},Afe={abbr:"tr",months:"Ocak_\u015Eubat_Mart_Nisan_May\u0131s_Haziran_Temmuz_A\u011Fustos_Eyl\xFCl_Ekim_Kas\u0131m_Aral\u0131k".split("_"),monthsShort:"Oca_\u015Eub_Mar_Nis_May_Haz_Tem_A\u011Fu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Sal\u0131_\xC7ar\u015Famba_Per\u015Fembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_\xC7ar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_\xC7a_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xFCn saat] LT",nextDay:"[yar\u0131n saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[d\xFCn] LT",lastWeek:"[ge\xE7en] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \xF6nce",s:"birka\xE7 saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir g\xFCn",dd:"%d g\xFCn",M:"bir ay",MM:"%d ay",y:"bir y\u0131l",yy:"%d y\u0131l"},dayOfMonthOrdinalParse:/\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/,ordinal(t){let n=Number(t);if(n===0)return n+"'\u0131nc\u0131";let e=n%10,i=n%100-e,r=n>=100?100:null;return n+(vC[e]||vC[i]||vC[r])},week:{dow:1,doy:7}};function Qz(t,n){let e=t.split("_");return n%10===1&&n%100!==11?e[0]:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?e[1]:e[2]}function ua(t,n,e){let i={ss:n?"\u0441\u0435\u043A\u0443\u043D\u0434\u0430_\u0441\u0435\u043A\u0443\u043D\u0434\u0438_\u0441\u0435\u043A\u0443\u043D\u0434":"\u0441\u0435\u043A\u0443\u043D\u0434\u0443_\u0441\u0435\u043A\u0443\u043D\u0434\u0438_\u0441\u0435\u043A\u0443\u043D\u0434",mm:n?"\u0445\u0432\u0438\u043B\u0438\u043D\u0430_\u0445\u0432\u0438\u043B\u0438\u043D\u0438_\u0445\u0432\u0438\u043B\u0438\u043D":"\u0445\u0432\u0438\u043B\u0438\u043D\u0443_\u0445\u0432\u0438\u043B\u0438\u043D\u0438_\u0445\u0432\u0438\u043B\u0438\u043D",hh:n?"\u0433\u043E\u0434\u0438\u043D\u0430_\u0433\u043E\u0434\u0438\u043D\u0438_\u0433\u043E\u0434\u0438\u043D":"\u0433\u043E\u0434\u0438\u043D\u0443_\u0433\u043E\u0434\u0438\u043D\u0438_\u0433\u043E\u0434\u0438\u043D",dd:"\u0434\u0435\u043D\u044C_\u0434\u043D\u0456_\u0434\u043D\u0456\u0432",MM:"\u043C\u0456\u0441\u044F\u0446\u044C_\u043C\u0456\u0441\u044F\u0446\u0456_\u043C\u0456\u0441\u044F\u0446\u0456\u0432",yy:"\u0440\u0456\u043A_\u0440\u043E\u043A\u0438_\u0440\u043E\u043A\u0456\u0432"};return e==="m"?n?"\u0445\u0432\u0438\u043B\u0438\u043D\u0430":"\u0445\u0432\u0438\u043B\u0438\u043D\u0443":e==="h"?n?"\u0433\u043E\u0434\u0438\u043D\u0430":"\u0433\u043E\u0434\u0438\u043D\u0443":t+" "+Qz(i[e],+t)}function Kz(t,n,e){let i={nominative:"\u043D\u0435\u0434\u0456\u043B\u044F_\u043F\u043E\u043D\u0435\u0434\u0456\u043B\u043E\u043A_\u0432\u0456\u0432\u0442\u043E\u0440\u043E\u043A_\u0441\u0435\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440_\u043F\u2019\u044F\u0442\u043D\u0438\u0446\u044F_\u0441\u0443\u0431\u043E\u0442\u0430".split("_"),accusative:"\u043D\u0435\u0434\u0456\u043B\u044E_\u043F\u043E\u043D\u0435\u0434\u0456\u043B\u043E\u043A_\u0432\u0456\u0432\u0442\u043E\u0440\u043E\u043A_\u0441\u0435\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440_\u043F\u2019\u044F\u0442\u043D\u0438\u0446\u044E_\u0441\u0443\u0431\u043E\u0442\u0443".split("_"),genitive:"\u043D\u0435\u0434\u0456\u043B\u0456_\u043F\u043E\u043D\u0435\u0434\u0456\u043B\u043A\u0430_\u0432\u0456\u0432\u0442\u043E\u0440\u043A\u0430_\u0441\u0435\u0440\u0435\u0434\u0438_\u0447\u0435\u0442\u0432\u0435\u0440\u0433\u0430_\u043F\u2019\u044F\u0442\u043D\u0438\u0446\u0456_\u0441\u0443\u0431\u043E\u0442\u0438".split("_")};if(!t)return i.nominative;let r=/(\[[ВвУу]\]) ?dddd/.test(n)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(n)?"genitive":"nominative";return i[r][Xt(t,e)]}function Jl(t){return function(n){return t+"\u043E"+(ke(n)===11?"\u0431":"")+"] LT"}}var Pfe={abbr:"uk",months:{format:"\u0441\u0456\u0447\u043D\u044F_\u043B\u044E\u0442\u043E\u0433\u043E_\u0431\u0435\u0440\u0435\u0437\u043D\u044F_\u043A\u0432\u0456\u0442\u043D\u044F_\u0442\u0440\u0430\u0432\u043D\u044F_\u0447\u0435\u0440\u0432\u043D\u044F_\u043B\u0438\u043F\u043D\u044F_\u0441\u0435\u0440\u043F\u043D\u044F_\u0432\u0435\u0440\u0435\u0441\u043D\u044F_\u0436\u043E\u0432\u0442\u043D\u044F_\u043B\u0438\u0441\u0442\u043E\u043F\u0430\u0434\u0430_\u0433\u0440\u0443\u0434\u043D\u044F".split("_"),standalone:"\u0441\u0456\u0447\u0435\u043D\u044C_\u043B\u044E\u0442\u0438\u0439_\u0431\u0435\u0440\u0435\u0437\u0435\u043D\u044C_\u043A\u0432\u0456\u0442\u0435\u043D\u044C_\u0442\u0440\u0430\u0432\u0435\u043D\u044C_\u0447\u0435\u0440\u0432\u0435\u043D\u044C_\u043B\u0438\u043F\u0435\u043D\u044C_\u0441\u0435\u0440\u043F\u0435\u043D\u044C_\u0432\u0435\u0440\u0435\u0441\u0435\u043D\u044C_\u0436\u043E\u0432\u0442\u0435\u043D\u044C_\u043B\u0438\u0441\u0442\u043E\u043F\u0430\u0434_\u0433\u0440\u0443\u0434\u0435\u043D\u044C".split("_")},monthsShort:"\u0441\u0456\u0447_\u043B\u044E\u0442_\u0431\u0435\u0440_\u043A\u0432\u0456\u0442_\u0442\u0440\u0430\u0432_\u0447\u0435\u0440\u0432_\u043B\u0438\u043F_\u0441\u0435\u0440\u043F_\u0432\u0435\u0440_\u0436\u043E\u0432\u0442_\u043B\u0438\u0441\u0442_\u0433\u0440\u0443\u0434".split("_"),weekdays:Kz,weekdaysShort:"\u043D\u0434_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043D\u0434_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0440.",LLL:"D MMMM YYYY \u0440., HH:mm",LLLL:"dddd, D MMMM YYYY \u0440., HH:mm"},calendar:{sameDay:Jl("[\u0421\u044C\u043E\u0433\u043E\u0434\u043D\u0456 "),nextDay:Jl("[\u0417\u0430\u0432\u0442\u0440\u0430 "),lastDay:Jl("[\u0412\u0447\u043E\u0440\u0430 "),nextWeek:Jl("[\u0423] dddd ["),lastWeek(t){switch(Xt(t)){case 0:case 3:case 5:case 6:return Jl("[\u041C\u0438\u043D\u0443\u043B\u043E\u0457] dddd [")(t);case 1:case 2:case 4:return Jl("[\u041C\u0438\u043D\u0443\u043B\u043E\u0433\u043E] dddd [")(t)}},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"%s \u0442\u043E\u043C\u0443",s:"\u0434\u0435\u043A\u0456\u043B\u044C\u043A\u0430 \u0441\u0435\u043A\u0443\u043D\u0434",ss:ua,m:ua,mm:ua,h:"\u0433\u043E\u0434\u0438\u043D\u0443",hh:ua,d:"\u0434\u0435\u043D\u044C",dd:ua,M:"\u043C\u0456\u0441\u044F\u0446\u044C",MM:ua,y:"\u0440\u0456\u043A",yy:ua},meridiemParse:/ночі|ранку|дня|вечора/,isPM(t){return/^(дня|вечора)$/.test(t)},meridiem(t,n,e){return t<4?"\u043D\u043E\u0447\u0456":t<12?"\u0440\u0430\u043D\u043A\u0443":t<17?"\u0434\u043D\u044F":"\u0432\u0435\u0447\u043E\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го)/,ordinal(t,n){let e=Number(t);switch(n){case"M":case"d":case"DDD":case"w":case"W":return e+"-\u0439";case"D":return e+"-\u0433\u043E";default:return e.toString()}},week:{dow:1,doy:7}};var Ofe={abbr:"vi",months:"th\xE1ng 1_th\xE1ng 2_th\xE1ng 3_th\xE1ng 4_th\xE1ng 5_th\xE1ng 6_th\xE1ng 7_th\xE1ng 8_th\xE1ng 9_th\xE1ng 10_th\xE1ng 11_th\xE1ng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),monthsParseExact:!0,weekdays:"ch\u1EE7 nh\u1EADt_th\u1EE9 hai_th\u1EE9 ba_th\u1EE9 t\u01B0_th\u1EE9 n\u0103m_th\u1EE9 s\xE1u_th\u1EE9 b\u1EA3y".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM(t){return/^ch$/i.test(t)},meridiem(t,n,e){return t<12?e?"sa":"SA":e?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [n\u0103m] YYYY",LLL:"D MMMM [n\u0103m] YYYY HH:mm",LLLL:"dddd, D MMMM [n\u0103m] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[H\xF4m nay l\xFAc] LT",nextDay:"[Ng\xE0y mai l\xFAc] LT",nextWeek:"dddd [tu\u1EA7n t\u1EDBi l\xFAc] LT",lastDay:"[H\xF4m qua l\xFAc] LT",lastWeek:"dddd [tu\u1EA7n tr\u01B0\u1EDBc l\xFAc] LT",sameElse:"L"},relativeTime:{future:"%s t\u1EDBi",past:"%s tr\u01B0\u1EDBc",s:"v\xE0i gi\xE2y",ss:"%d gi\xE2y",m:"m\u1ED9t ph\xFAt",mm:"%d ph\xFAt",h:"m\u1ED9t gi\u1EDD",hh:"%d gi\u1EDD",d:"m\u1ED9t ng\xE0y",dd:"%d ng\xE0y",M:"m\u1ED9t th\xE1ng",MM:"%d th\xE1ng",y:"m\u1ED9t n\u0103m",yy:"%d n\u0103m"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal(t){return""+t},week:{dow:1,doy:4}};var Rfe={abbr:"zh-cn",months:"\u4E00\u6708_\u4E8C\u6708_\u4E09\u6708_\u56DB\u6708_\u4E94\u6708_\u516D\u6708_\u4E03\u6708_\u516B\u6708_\u4E5D\u6708_\u5341\u6708_\u5341\u4E00\u6708_\u5341\u4E8C\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661F\u671F\u65E5_\u661F\u671F\u4E00_\u661F\u671F\u4E8C_\u661F\u671F\u4E09_\u661F\u671F\u56DB_\u661F\u671F\u4E94_\u661F\u671F\u516D".split("_"),weekdaysShort:"\u5468\u65E5_\u5468\u4E00_\u5468\u4E8C_\u5468\u4E09_\u5468\u56DB_\u5468\u4E94_\u5468\u516D".split("_"),weekdaysMin:"\u65E5_\u4E00_\u4E8C_\u4E09_\u56DB_\u4E94_\u516D".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5E74M\u6708D\u65E5",LLL:"YYYY\u5E74M\u6708D\u65E5Ah\u70B9mm\u5206",LLLL:"YYYY\u5E74M\u6708D\u65E5ddddAh\u70B9mm\u5206",l:"YYYY/M/D",ll:"YYYY\u5E74M\u6708D\u65E5",lll:"YYYY\u5E74M\u6708D\u65E5 HH:mm",llll:"YYYY\u5E74M\u6708D\u65E5dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour(t,n){return t===12&&(t=0),n==="\u51CC\u6668"||n==="\u65E9\u4E0A"||n==="\u4E0A\u5348"?t:n==="\u4E0B\u5348"||n==="\u665A\u4E0A"?t+12:t>=11?t:t+12},meridiem(t,n,e){let i=t*100+n;return i<600?"\u51CC\u6668":i<900?"\u65E9\u4E0A":i<1130?"\u4E0A\u5348":i<1230?"\u4E2D\u5348":i<1800?"\u4E0B\u5348":"\u665A\u4E0A"},calendar:{sameDay:"[\u4ECA\u5929]LT",nextDay:"[\u660E\u5929]LT",nextWeek:"[\u4E0B]ddddLT",lastDay:"[\u6628\u5929]LT",lastWeek:"[\u4E0A]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal(t,n){let e=Number(t);switch(n){case"d":case"D":case"DDD":return e+"\u65E5";case"M":return e+"\u6708";case"w":case"W":return e+"\u5468";default:return e.toString()}},relativeTime:{future:"%s\u5185",past:"%s\u524D",s:"\u51E0\u79D2",ss:"%d \u79D2",m:"1 \u5206\u949F",mm:"%d \u5206\u949F",h:"1 \u5C0F\u65F6",hh:"%d \u5C0F\u65F6",d:"1 \u5929",dd:"%d \u5929",M:"1 \u4E2A\u6708",MM:"%d \u4E2A\u6708",y:"1 \u5E74",yy:"%d \u5E74"},week:{dow:1,doy:4}};var Zz={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},Jz={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},rk=function(t){return t===0?0:t===1?1:t===2?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},Xz={s:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u062B\u0627\u0646\u06CC\u0647","\u06CC\u06A9 \u062B\u0627\u0646\u06CC\u0647",["\u062F\u0648 \u062B\u0627\u0646\u06CC\u0647","\u062F\u0648 \u062B\u0627\u0646\u06CC\u0647"],"%d \u062B\u0627\u0646\u06CC\u0647","%d \u062B\u0627\u0646\u06CC\u0647","%d \u062B\u0627\u0646\u06CC\u0647"],m:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u062F\u0642\u06CC\u0642\u0647","\u06CC\u06A9 \u062F\u0642\u06CC\u0642\u0647",["\u062F\u0648 \u062F\u0642\u06CC\u0642\u0647","\u062F\u0648 \u062F\u0642\u06CC\u0642\u0647"],"%d \u062F\u0642\u06CC\u0642\u0647","%d \u062F\u0642\u06CC\u0642\u0647","%d \u062F\u0642\u06CC\u0642\u0647"],h:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u0633\u0627\u0639\u062A","\u06CC\u06A9 \u0633\u0627\u0639\u062A",["\u062F\u0648 \u0633\u0627\u0639\u062A","\u062F\u0648 \u0633\u0627\u0639\u062A"],"%d \u0633\u0627\u0639\u062A","%d \u0633\u0627\u0639\u062A","%d \u0633\u0627\u0639\u062A"],d:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u0631\u0648\u0632","\u06CC\u06A9 \u0631\u0648\u0632",["\u062F\u0648 \u0631\u0648\u0632","\u062F\u0648 \u0631\u0648\u0632"],"%d \u0631\u0648\u0632","%d \u0631\u0648\u0632","%d \u0631\u0648\u0632"],M:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u0645\u0627\u0647","\u06CC\u06A9 \u0645\u0627\u0647",["\u062F\u0648 \u0645\u0627\u0647","\u062F\u0648 \u0645\u0627\u0647"],"%d \u0645\u0627\u0647","%d \u0645\u0627\u0647","%d \u0645\u0627\u0647"],y:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u0633\u0627\u0644","\u06CC\u06A9 \u0633\u0627\u0644",["\u062F\u0648 \u0633\u0627\u0644","\u062F\u0648 \u0633\u0627\u0644"],"%d \u0633\u0627\u0644","%d \u0633\u0627\u0644","%d \u0633\u0627\u0644"]},Vi=function(t){return function(n,e){let i=rk(n),r=Xz[t][rk(n)];return i===2&&(r=r[e?0:1]),r.replace(/%d/i,n.toString())}},ok=["\u0698\u0627\u0646\u0648\u06CC\u0647","\u0641\u0648\u0631\u06CC\u0647","\u0645\u0627\u0631\u0633","\u0622\u0648\u0631\u06CC\u0644","\u0645\u06CC","\u0698\u0648\u0626\u0646","\u062C\u0648\u0644\u0627\u06CC","\u0622\u06AF\u0648\u0633\u062A","\u0633\u067E\u062A\u0627\u0645\u0628\u0631","\u0627\u06A9\u062A\u0628\u0631","\u0646\u0648\u0627\u0645\u0628\u0631","\u062F\u0633\u0627\u0645\u0628\u0631"],Nfe={abbr:"fa",months:ok,monthsShort:ok,weekdays:"\u06CC\u06A9\u0634\u0646\u0628\u0647_\u062F\u0648\u0634\u0646\u0628\u0647_\u0633\u0647 \u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067E\u0646\u062C \u0634\u0646\u0628\u0647_\u062C\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysShort:"\u06CC\u06A9\u0634\u0646\u0628\u0647_\u062F\u0648\u200C\u0634\u0646\u0628\u0647_\u0633\u0647\u200C\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u200C\u0634\u0646\u0628\u0647_\u067E\u0646\u062C\u200C\u0634\u0646\u0628\u0647_\u062C\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysMin:"\u06CC_\u062F_\u0633_\u0686_\u067E_\u062C_\u0634".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200FM/\u200FYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM(t){return t==="\u0645"},meridiem(t,n,e){return t<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0645\u0631\u0648\u0632 \u062F\u0631 \u0633\u0627\u0639\u062A] LT",nextDay:"[\u0641\u0631\u062F\u0627 \u062F\u0631 \u0633\u0627\u0639\u062A] LT",nextWeek:"dddd [\u062F\u0631 \u0633\u0627\u0639\u062A] LT",lastDay:"[\u062F\u06CC\u0631\u0648\u0632 \u062F\u0631 \u0633\u0627\u0639\u062A] LT",lastWeek:"dddd [\u062F\u0631 \u0633\u0627\u0639\u062A] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062F %s",past:"\u067E\u06CC\u0634 %s",s:Vi("s"),ss:Vi("s"),m:Vi("m"),mm:Vi("m"),h:Vi("h"),hh:Vi("h"),d:Vi("d"),dd:Vi("d"),M:Vi("M"),MM:Vi("M"),y:Vi("y"),yy:Vi("y")},preparse(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(n){return Jz[n]}).replace(/،/g,",")},postformat(t){return t.replace(/\d/g,function(n){return Zz[n]}).replace(/,/g,"\u060C")},week:{dow:6,doy:80}};var LC=class{constructor(n,e){this.open=n,this.close=e||n}isManual(){return this.open==="manual"||this.close==="manual"}},eY={hover:["mouseover","mouseout"],focus:["focusin","focusout"]};function FC(t,n=eY){let e=(t||"").trim();if(e.length===0)return[];let i=e.split(/\s+/).map(o=>o.split(":")).map(o=>{let s=n[o[0]]||o;return new LC(s[0],s[1])}),r=i.filter(o=>o.isManual());if(r.length>1)throw new Error("Triggers parse error: only one manual trigger is allowed");if(r.length===1&&i.length>1)throw new Error("Triggers parse error: manual trigger can't be mixed with other triggers");return i}function Ok(t,n){let e=FC(n.triggers),i=n.target;if(e.length===1&&e[0].isManual())return Function.prototype;let r=[],o=[],s=()=>{o.forEach(a=>r.push(a())),o.length=0};return e.forEach(a=>{let l=a.open===a.close,c=l?n.toggle:n.show;if(!l&&a.close&&n.hide){let u=a.close,p=n.hide,v=()=>t.listen(i,u,p);o.push(v)}c&&r.push(t.listen(i,a.open,()=>c(s)))}),()=>{r.forEach(a=>a())}}function Rk(t,n){return n.outsideClick?t.listen("document","click",e=>{n.target&&n.target.contains(e.target)||n.targets&&n.targets.some(i=>i.contains(e.target))||n.hide&&n.hide()}):Function.prototype}function Nk(t,n){return n.outsideEsc?t.listen("document","keyup.esc",e=>{n.target&&n.target.contains(e.target)||n.targets&&n.targets.some(i=>i.contains(e.target))||n.hide&&n.hide()}):Function.prototype}var zt=typeof window<"u"&&window||{},Yt=zt.document,Vfe=zt.location,jfe=zt.gc?()=>zt.gc():()=>null,Hfe=zt.performance?zt.performance:null,Bfe=zt.Event,Ufe=zt.MouseEvent,$fe=zt.KeyboardEvent,zfe=zt.EventTarget,Yfe=zt.History,Wfe=zt.Location,Gfe=zt.EventListener,Lk=function(t){return t.isBs4="bs4",t.isBs5="bs5",t}(Lk||{}),ns;function Fk(){let t=zt.document.createElement("span");t.innerText="testing bs version",t.classList.add("d-none"),t.classList.add("pl-1"),zt.document.head.appendChild(t);let n=zt.getComputedStyle(t).paddingLeft;return n&&parseFloat(n)?(zt.document.head.removeChild(t),"bs4"):(zt.document.head.removeChild(t),"bs5")}function tY(){return ns||(ns=Fk()),ns==="bs4"}function nY(){return ns||(ns=Fk()),ns==="bs5"}function is(){return{isBs4:tY(),isBs5:nY()}}function iY(){let t=is(),n=Object.keys(t).find(e=>t[e]);return Lk[n]}function Vk(){let t="Change";return function(e,i){let r=` __${i}Value`;Object.defineProperty(e,i,{get(){return this[r]},set(o){let s=this[r];this[r]=o,s!==o&&this[i+t]&&this[i+t].emit(o)}})}}var Rm=class{static reflow(n){n.offsetHeight}static getStyles(n){let e=n.ownerDocument.defaultView;return(!e||!e.opener)&&(e=zt),e.getComputedStyle(n)}static stackOverflowConfig(){let n=iY();return{crossorigin:"anonymous",integrity:n==="bs5"?"sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65":"sha384-TX8t27EcRE3e/ihU7zmQxVncDAy5uIKz4rEkgIXeMed4M0jlfIDPvg6uqKI2xXr2",cdnLink:n==="bs5"?"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css":"https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css"}}},Pk={},rY=typeof console>"u"||!("warn"in console);function qn(t){!i1()||rY||t in Pk||(Pk[t]=!0,console.warn(t))}var zk=function(t){return t.top="top",t.bottom="bottom",t.left="left",t.right="right",t.auto="auto",t.end="right",t.start="left",t["top left"]="top left",t["top right"]="top right",t["right top"]="right top",t["right bottom"]="right bottom",t["bottom right"]="bottom right",t["bottom left"]="bottom left",t["left bottom"]="left bottom",t["left top"]="left top",t["top start"]="top left",t["top end"]="top right",t["end top"]="right top",t["end bottom"]="right bottom",t["bottom end"]="bottom right",t["bottom start"]="bottom left",t["start bottom"]="start bottom",t["start top"]="left top",t}(zk||{}),Dd=function(t){return t.top="top",t.bottom="bottom",t.left="start",t.right="end",t.auto="auto",t.end="end",t.start="start",t["top left"]="top start",t["top right"]="top end",t["right top"]="end top",t["right bottom"]="end bottom",t["bottom right"]="bottom end",t["bottom left"]="bottom start",t["left bottom"]="start bottom",t["left top"]="start top",t["top start"]="top start",t["top end"]="top end",t["end top"]="end top",t["end bottom"]="end bottom",t["bottom end"]="bottom end",t["bottom start"]="bottom start",t["start bottom"]="start bottom",t["start top"]="start top",t}(Dd||{});function va(t,n){if(t.nodeType!==1)return[];let i=t.ownerDocument.defaultView?.getComputedStyle(t,null);return n?i&&i[n]:i}function BC(t){if(!t)return document.documentElement;let n=null,e=t?.offsetParent,i;for(;e===n&&t.nextElementSibling&&i!==t.nextElementSibling;)i=t.nextElementSibling,e=i.offsetParent;let r=e&&e.nodeName;return!r||r==="BODY"||r==="HTML"?i?i.ownerDocument.documentElement:document.documentElement:e&&["TH","TD","TABLE"].indexOf(e.nodeName)!==-1&&va(e,"position")==="static"?BC(e):e}function oY(t){let{nodeName:n}=t;return n==="BODY"?!1:n==="HTML"||BC(t.firstElementChild)===t}function VC(t){return t.parentNode!==null?VC(t.parentNode):t}function Vm(t,n){if(!t||!t.nodeType||!n||!n.nodeType)return document.documentElement;let e=t.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING,i=e?t:n,r=e?n:t,o=document.createRange();o.setStart(i,0),o.setEnd(r,0);let s=o.commonAncestorContainer;if(t!==s&&n!==s||i.contains(r))return oY(s)?s:BC(s);let a=VC(t);return a.host?Vm(a.host,n):Vm(t,VC(n).host)}function Yk(t){if(!t||!t.parentElement)return document.documentElement;let n=t.parentElement;for(;n?.parentElement&&va(n,"transform")==="none";)n=n.parentElement;return n||document.documentElement}function jk(t,n){let e=n==="x"?"Left":"Top",i=e==="Left"?"Right":"Bottom";return parseFloat(t[`border${e}Width`])+parseFloat(t[`border${i}Width`])}function Hk(t,n,e){let i=n,r=e;return Math.max(i[`offset${t}`],i[`scroll${t}`],r[`client${t}`],r[`offset${t}`],r[`scroll${t}`],0)}function Wk(t){let n=t.body,e=t.documentElement;return{height:Hk("Height",n,e),width:Hk("Width",n,e)}}function Md(t){return G(E({},t),{right:(t.left||0)+t.width,bottom:(t.top||0)+t.height})}function sY(t){return t!==""&&!isNaN(parseFloat(t))&&isFinite(Number(t))}function Ct(t){return typeof t=="number"||Object.prototype.toString.call(t)==="[object Number]"}function Bk(t){let n=t.getBoundingClientRect();if(!(n&&Ct(n.top)&&Ct(n.left)&&Ct(n.bottom)&&Ct(n.right)))return n;let e={left:n.left,top:n.top,width:n.right-n.left,height:n.bottom-n.top},i=t.nodeName==="HTML"?Wk(t.ownerDocument):void 0,r=i?.width||t.clientWidth||Ct(n.right)&&Ct(e.left)&&n.right-e.left||0,o=i?.height||t.clientHeight||Ct(n.bottom)&&Ct(e.top)&&n.bottom-e.top||0,s=t.offsetWidth-r,a=t.offsetHeight-o;if(s||a){let l=va(t);s-=jk(l,"x"),a-=jk(l,"y"),e.width-=s,e.height-=a}return Md(e)}function UC(t,n,e=!1){let i=n.nodeName==="HTML",r=Bk(t),o=Bk(n),s=va(n),a=parseFloat(s.borderTopWidth),l=parseFloat(s.borderLeftWidth);e&&i&&(o.top=Math.max(o.top??0,0),o.left=Math.max(o.left??0,0));let c=Md({top:(r.top??0)-(o.top??0)-a,left:(r.left??0)-(o.left??0)-l,width:r.width,height:r.height});if(c.marginTop=0,c.marginLeft=0,i){let u=parseFloat(s.marginTop),p=parseFloat(s.marginLeft);Ct(c.top)&&(c.top-=a-u),Ct(c.bottom)&&(c.bottom-=a-u),Ct(c.left)&&(c.left-=l-p),Ct(c.right)&&(c.right-=l-p),c.marginTop=u,c.marginLeft=p}return c}function $C(t){return t.nodeName==="HTML"?t:t.parentNode||t.host}function Gk(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body;default:}let{overflow:n,overflowX:e,overflowY:i}=va(t);return/(auto|scroll|overlay)/.test(String(n)+String(i)+String(e))?t:Gk($C(t))}function Uk(t,n="top"){let e=n==="top"?"scrollTop":"scrollLeft",i=t.nodeName;if(i==="BODY"||i==="HTML"){let r=t.ownerDocument.documentElement;return(t.ownerDocument.scrollingElement||r)[e]}return t[e]}function aY(t,n=!1){let e=t.ownerDocument.documentElement,i=UC(t,e),r=Math.max(e.clientWidth,window.innerWidth||0),o=Math.max(e.clientHeight,window.innerHeight||0),s=n?0:Uk(e),a=n?0:Uk(e,"left"),l={top:s-Number(i?.top)+Number(i?.marginTop),left:a-Number(i?.left)+Number(i?.marginLeft),width:r,height:o};return Md(l)}function qk(t){let n=t.nodeName;return n==="BODY"||n==="HTML"?!1:va(t,"position")==="fixed"?!0:qk($C(t))}function zC(t,n,e=0,i,r=!1){let o={top:0,left:0},s=r?Yk(t):Vm(t,n);if(i==="viewport")o=aY(s,r);else{let a;i==="scrollParent"?(a=Gk($C(n)),a.nodeName==="BODY"&&(a=t.ownerDocument.documentElement)):i==="window"?a=t.ownerDocument.documentElement:a=i;let l=UC(a,s,r);if(l&&a.nodeName==="HTML"&&!qk(s)){let{height:c,width:u}=Wk(t.ownerDocument);Ct(o.top)&&Ct(l.top)&&Ct(l.marginTop)&&(o.top+=l.top-l.marginTop),Ct(o.top)&&(o.bottom=Number(c)+Number(l.top)),Ct(o.left)&&Ct(l.left)&&Ct(l.marginLeft)&&(o.left+=l.left-l.marginLeft),Ct(o.top)&&(o.right=Number(u)+Number(l.left))}else l&&(o=l)}return Ct(o.left)&&(o.left+=e),Ct(o.top)&&(o.top+=e),Ct(o.right)&&(o.right-=e),Ct(o.bottom)&&(o.bottom-=e),o}function lY({width:t,height:n}){return t*n}function Qk(t,n,e,i,r=["top","bottom","right","left"],o="viewport",s=0){if(t.indexOf("auto")===-1)return t;let a=zC(e,i,s,o),l={top:{width:a?.width??0,height:(n?.top??0)-(a?.top??0)},right:{width:(a?.right??0)-(n?.right??0),height:a?.height??0},bottom:{width:a?.width??0,height:(a?.bottom??0)-(n?.bottom??0)},left:{width:(n.left??0)-(a?.left??0),height:a?.height??0}},c=Object.keys(l).map(_=>G(E({position:_},l[_]),{area:lY(l[_])})).sort((_,M)=>M.area-_.area),u=c.filter(({width:_,height:M})=>_>=e.clientWidth&&M>=e.clientHeight);u=u.filter(({position:_})=>r.some(M=>M===_));let p=u.length>0?u[0].position:c[0].position,v=t.split(" ")[1];return e.className=e.className.replace(/bs-tooltip-auto/g,`bs-tooltip-${is().isBs5?Dd[p]:p}`),p+(v?`-${v}`:"")}function cY(t){return{width:t.offsets.target.width,height:t.offsets.target.height,left:Math.floor(t.offsets.target.left??0),top:Math.round(t.offsets.target.top??0),bottom:Math.round(t.offsets.target.bottom??0),right:Math.floor(t.offsets.target.right??0)}}function uY(t){let n={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,e=>n[e])}function dY(t){return t==="right"?"left":t==="left"?"right":t}var Nm=(t,n=0)=>t?parseFloat(t):n;function Kk(t){let e=t.ownerDocument.defaultView?.getComputedStyle(t),i=Nm(e?.marginTop)+Nm(e?.marginBottom),r=Nm(e?.marginLeft)+Nm(e?.marginRight);return{width:Number(t.offsetWidth)+r,height:Number(t.offsetHeight)+i}}function Zk(t,n,e){let i=e?Yk(t):Vm(t,n);return UC(n,i,e)}function jC(t,n,e){let i=e.split(" ")[0],r=Kk(t),o={width:r.width,height:r.height},s=["right","left"].indexOf(i)!==-1,a=s?"top":"left",l=s?"left":"top",c=s?"height":"width",u=s?"width":"height";return o[a]=(n[a]??0)+n[c]/2-r[c]/2,o[l]=i===l?(n[l]??0)-r[u]:n[uY(l)]??0,o}function Jk(t,n){return!!t.modifiers[n]?.enabled}var fY={top:["top","top start","top end"],bottom:["bottom","bottom start","bottom end"],start:["start","start top","start bottom"],end:["end","end top","end bottom"]};function Lm(t,n){return is().isBs5?fY[n].includes(t):!1}function hY(t){return is().isBs5?Lm(t,"end")?"ms-2":Lm(t,"start")?"me-2":Lm(t,"top")?"mb-2":Lm(t,"bottom")?"mt-2":"":""}function pY(t,n){let e=t.instance.target,i=e.className,r=is().isBs5?Dd[t.placement]:t.placement;if(t.placementAuto&&(i=i.replace(/bs-popover-auto/g,`bs-popover-${r}`),i=i.replace(/ms-2|me-2|mb-2|mt-2/g,""),i=i.replace(/bs-tooltip-auto/g,`bs-tooltip-${r}`),i=i.replace(/\sauto/g,` ${r}`),i.indexOf("popover")!==-1&&(i=i+" "+hY(r)),i.indexOf("popover")!==-1&&i.indexOf("popover-auto")===-1&&(i+=" popover-auto"),i.indexOf("tooltip")!==-1&&i.indexOf("tooltip-auto")===-1&&(i+=" tooltip-auto")),i=i.replace(/left|right|top|bottom|end|start/g,`${r.split(" ")[0]}`),n){n.setAttribute(e,"class",i);return}e.className=i}function $k(t,n,e){!t||!n||Object.keys(n).forEach(i=>{let r="";if(["width","height","top","right","bottom","left"].indexOf(i)!==-1&&sY(n[i])&&(r="px"),e){e.setStyle(t,i,`${String(n[i])}${r}`);return}t.style[i]=String(n[i])+r})}function mY(t){let n=t.offsets.target,e=t.instance.target.querySelector(".arrow");if(!e)return t;let i=["left","right"].indexOf(t.placement.split(" ")[0])!==-1,r=i?"height":"width",o=i?"Top":"Left",s=o.toLowerCase(),a=i?"left":"top",l=i?"bottom":"right",c=Kk(e)[r],u=t.placement.split(" ")[1];(t.offsets.host[l]??0)-c<(n[s]??0)&&(n[s]-=(n[s]??0)-((t.offsets.host[l]??0)-c)),Number(t.offsets.host[s])+Number(c)>(n[l]??0)&&(n[s]+=Number(t.offsets.host[s])+Number(c)-Number(n[l])),n=Md(n);let p=va(t.instance.target),v=parseFloat(p[`margin${o}`])||0,_=parseFloat(p[`border${o}Width`])||0,M;if(!u)M=Number(t.offsets.host[s])+Number(t.offsets.host[r]/2-c/2);else{let P=parseFloat(p.borderRadius)||0,F=Number(v+_+P);M=s===u?Number(t.offsets.host[s])+F:Number(t.offsets.host[s])+Number(t.offsets.host[r]-F)}let x=M-(n[s]??0)-v-_;return x=Math.max(Math.min(n[r]-(c+5),x),0),t.offsets.arrow={[s]:Math.round(x),[a]:""},t.instance.arrow=e,t}function gY(t){if(t.offsets.target=Md(t.offsets.target),!Jk(t.options,"flip"))return t.offsets.target=E(E({},t.offsets.target),jC(t.instance.target,t.offsets.host,t.placement)),t;let n=zC(t.instance.target,t.instance.host,0,"viewport",!1),e=t.placement.split(" ")[0],i=t.placement.split(" ")[1]||"",r=t.offsets.host,o=t.instance.target,s=t.instance.host,a=Qk("auto",r,o,s,t.options.allowedPositions),l=[e,a];return l.forEach((c,u)=>{if(e!==c||l.length===u+1)return;e=t.placement.split(" ")[0];let p=e==="left"&&Math.floor(t.offsets.target.right??0)>Math.floor(t.offsets.host.left??0)||e==="right"&&Math.floor(t.offsets.target.left??0)Math.floor(t.offsets.host.top??0)||e==="bottom"&&Math.floor(t.offsets.target.top??0)Math.floor(n.right??0),M=Math.floor(t.offsets.target.top??0)Math.floor(n.bottom??0),P=e==="left"&&v||e==="right"&&_||e==="top"&&M||e==="bottom"&&x,F=["top","bottom"].indexOf(e)!==-1,K=F&&i==="left"&&v||F&&i==="right"&&_||!F&&i==="left"&&M||!F&&i==="right"&&x;(p||P||K)&&((p||P)&&(e=l[u+1]),K&&(i=dY(i)),t.placement=e+(i?` ${i}`:""),t.offsets.target=E(E({},t.offsets.target),jC(t.instance.target,t.offsets.host,t.placement)))}),t}function _Y(t,n,e,i){if(!t||!n)return;let r=Zk(t,n);!e.match(/^(auto)*\s*(left|right|top|bottom|start|end)*$/)&&!e.match(/^(left|right|top|bottom|start|end)*(?: (left|right|top|bottom|start|end))*$/)&&(e="auto");let o=!!e.match(/auto/g),s=e.match(/auto\s(left|right|top|bottom|start|end)/)?e.split(" ")[1]||"auto":e,a=s.match(/^(left|right|top|bottom|start|end)* ?(?!\1)(left|right|top|bottom|start|end)?/);a&&(s=a[1]+(a[2]?` ${a[2]}`:"")),["left right","right left","top bottom","bottom top"].indexOf(s)!==-1&&(s="auto"),s=Qk(s,r,t,n,i?i.allowedPositions:void 0);let l=jC(t,r,s);return{options:i||{modifiers:{}},instance:{target:t,host:n,arrow:void 0},offsets:{target:l,host:r,arrow:void 0},positionFixed:!1,placement:s,placementAuto:o}}function yY(t){if(!Jk(t.options,"preventOverflow"))return t;let n="transform",e=t.instance.target.style,{top:i,left:r,[n]:o}=e;e.top="",e.left="",e[n]="";let s=zC(t.instance.target,t.instance.host,0,t.options.modifiers.preventOverflow?.boundariesElement||"scrollParent",!1);e.top=i,e.left=r,e[n]=o;let a=["left","right","top","bottom"],l={primary(c){let u=t.offsets.target[c];return(t.offsets.target[c]??0)<(s[c]??0)&&(u=Math.max(t.offsets.target[c]??0,s[c]??0)),{[c]:u}},secondary(c){let u=c==="right",p=u?"left":"top",v=u?"width":"height",_=t.offsets.target[p];return(t.offsets.target[c]??0)>(s[c]??0)&&(_=Math.min(t.offsets.target[p]??0,(s[c]??0)-t.offsets.target[v])),{[p]:_}}};return a.forEach(c=>{let u=["left","top","start"].indexOf(c)!==-1?l.primary:l.secondary;t.offsets.target=E(E({},t.offsets.target),u(c))}),t}function vY(t){let n=t.placement,e=n.split(" ")[0],i=n.split(" ")[1];if(i){let{host:r,target:o}=t.offsets,s=["bottom","top"].indexOf(e)!==-1,a=s?"left":"top",l=s?"width":"height",c={start:{[a]:r[a]},end:{[a]:(r[a]??0)+r[l]-o[l]}};t.offsets.target=G(E({},o),{[a]:a===i?c.start[a]:c.end[a]})}return t}var HC=class{position(n,e){return this.offset(n,e)}offset(n,e){return Zk(e,n)}positionElements(n,e,i,r,o){let s=[gY,vY,yY,mY],a=zk[i],l=_Y(e,n,a,o);if(l)return s.reduce((c,u)=>u(c),l)}},bY=new HC;function CY(t,n,e,i,r,o){let s=bY.positionElements(t,n,e,i,r);if(!s)return;let a=cY(s);$k(n,{"will-change":"transform",top:"0px",left:"0px",transform:`translate3d(${a.left}px, ${a.top}px, 0px)`},o),s.instance.arrow&&$k(s.instance.arrow,s.offsets.arrow,o),pY(s,o)}var cn=(()=>{class t{constructor(e,i,r){this.update$$=new ie,this.positionElements=new Map,this.isDisabled=!1,Ws(r)&&e.runOutsideAngular(()=>{this.triggerEvent$=Wa(_i(window,"scroll",{passive:!0}),_i(window,"resize",{passive:!0}),J(0,Ua),this.update$$),this.triggerEvent$.subscribe(()=>{this.isDisabled||this.positionElements.forEach(o=>{CY(Fm(o.target),Fm(o.element),o.attachment,o.appendToBody,this.options,i.createRenderer(null,null))})})})}position(e){this.addPositionElement(e)}get event$(){return this.triggerEvent$}disable(){this.isDisabled=!0}enable(){this.isDisabled=!1}addPositionElement(e){this.positionElements.set(Fm(e.element),e)}calcPosition(){this.update$$.next(null)}deletePositionElement(e){this.positionElements.delete(Fm(e))}setOptions(e){this.options=e}static{this.\u0275fac=function(i){return new(i||t)(j(xe),j(jn),j(ti))}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function Fm(t){return typeof t=="string"?document.querySelector(t):t instanceof Y?t.nativeElement:t??null}var sc=class extends Ve{constructor(n,e,i){super(n),e.pipe(Ss(z_)).pipe(Uc((s,a)=>a?i(s,a):s,n)).subscribe(s=>this.next(s))}},ac=class t extends ae{constructor(n,e,i){super(),this._dispatcher=n,this._reducer=e,this.source=i}select(n){return(this.source?.pipe(q(n))||new ae().pipe(q(n))).pipe(Qr())}lift(n){let e=new t(this._dispatcher,this._reducer,this);return e.operator=n,e}dispatch(n){this._dispatcher.next(n)}next(n){this._dispatcher.next(n)}error(n){this._dispatcher.error(n)}complete(){}};function wY(t,n){t&1&&(d(0,"td"),y(1,"\xA0\xA0\xA0"),f())}function DY(t,n){if(t&1){let e=N();d(0,"td")(1,"a",1),D("click",function(){C(e);let r=m();return w(r.changeMinutes(r.minuteStep))}),I(2,"span",2),f()()}if(t&2){let e=m();h(),B("disabled",!e.canIncrementMinutes||!e.isEditable)}}function MY(t,n){t&1&&(d(0,"td"),y(1,"\xA0"),f())}function SY(t,n){if(t&1){let e=N();d(0,"td")(1,"a",1),D("click",function(){C(e);let r=m();return w(r.changeSeconds(r.secondsStep))}),I(2,"span",2),f()()}if(t&2){let e=m();h(),B("disabled",!e.canIncrementSeconds||!e.isEditable)}}function TY(t,n){t&1&&(d(0,"td"),y(1,"\xA0\xA0\xA0"),f())}function EY(t,n){t&1&&I(0,"td")}function xY(t,n){t&1&&(d(0,"td"),y(1,"\xA0:\xA0"),f())}function IY(t,n){if(t&1){let e=N();d(0,"td",4)(1,"input",5),D("wheel",function(r){C(e);let o=m();return o.prevDef(r),w(o.changeMinutes(o.minuteStep*o.wheelSign(r),"wheel"))})("keydown.ArrowUp",function(){C(e);let r=m();return w(r.changeMinutes(r.minuteStep,"key"))})("keydown.ArrowDown",function(){C(e);let r=m();return w(r.changeMinutes(-r.minuteStep,"key"))})("change",function(r){C(e);let o=m();return w(o.updateMinutes(r.target))}),f()()}if(t&2){let e=m();B("has-error",e.invalidMinutes),h(),B("is-invalid",e.invalidMinutes),g("placeholder",e.minutesPlaceholder)("readonly",e.readonlyInput)("disabled",e.disabled)("value",e.minutes),ee("aria-label",e.labelMinutes)}}function kY(t,n){t&1&&(d(0,"td"),y(1,"\xA0:\xA0"),f())}function AY(t,n){if(t&1){let e=N();d(0,"td",4)(1,"input",5),D("wheel",function(r){C(e);let o=m();return o.prevDef(r),w(o.changeSeconds(o.secondsStep*o.wheelSign(r),"wheel"))})("keydown.ArrowUp",function(){C(e);let r=m();return w(r.changeSeconds(r.secondsStep,"key"))})("keydown.ArrowDown",function(){C(e);let r=m();return w(r.changeSeconds(-r.secondsStep,"key"))})("change",function(r){C(e);let o=m();return w(o.updateSeconds(r.target))}),f()()}if(t&2){let e=m();B("has-error",e.invalidSeconds),h(),B("is-invalid",e.invalidSeconds),g("placeholder",e.secondsPlaceholder)("readonly",e.readonlyInput)("disabled",e.disabled)("value",e.seconds),ee("aria-label",e.labelSeconds)}}function PY(t,n){t&1&&(d(0,"td"),y(1,"\xA0\xA0\xA0"),f())}function OY(t,n){if(t&1){let e=N();d(0,"td")(1,"button",8),D("click",function(){C(e);let r=m();return w(r.toggleMeridian())}),y(2),f()()}if(t&2){let e=m();h(),B("disabled",!e.isEditable||!e.canToggleMeridian),g("disabled",!e.isEditable||!e.canToggleMeridian),h(),oe("",e.meridian," ")}}function RY(t,n){t&1&&(d(0,"td"),y(1,"\xA0\xA0\xA0"),f())}function NY(t,n){if(t&1){let e=N();d(0,"td")(1,"a",1),D("click",function(){C(e);let r=m();return w(r.changeMinutes(-r.minuteStep))}),I(2,"span",7),f()()}if(t&2){let e=m();h(),B("disabled",!e.canDecrementMinutes||!e.isEditable)}}function LY(t,n){t&1&&(d(0,"td"),y(1,"\xA0"),f())}function FY(t,n){if(t&1){let e=N();d(0,"td")(1,"a",1),D("click",function(){C(e);let r=m();return w(r.changeSeconds(-r.secondsStep))}),I(2,"span",7),f()()}if(t&2){let e=m();h(),B("disabled",!e.canDecrementSeconds||!e.isEditable)}}function VY(t,n){t&1&&(d(0,"td"),y(1,"\xA0\xA0\xA0"),f())}function jY(t,n){t&1&&I(0,"td")}var rs=(()=>{class t{static{this.WRITE_VALUE="[timepicker] write value from ng model"}static{this.CHANGE_HOURS="[timepicker] change hours"}static{this.CHANGE_MINUTES="[timepicker] change minutes"}static{this.CHANGE_SECONDS="[timepicker] change seconds"}static{this.SET_TIME_UNIT="[timepicker] set time unit"}static{this.UPDATE_CONTROLS="[timepicker] update controls"}writeValue(e){return{type:t.WRITE_VALUE,payload:e}}changeHours(e){return{type:t.CHANGE_HOURS,payload:e}}changeMinutes(e){return{type:t.CHANGE_MINUTES,payload:e}}changeSeconds(e){return{type:t.CHANGE_SECONDS,payload:e}}setTime(e){return{type:t.SET_TIME_UNIT,payload:e}}updateControls(e){return{type:t.UPDATE_CONTROLS,payload:e}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),HY=10,BY=24,rA=12,UY=60,$Y=60;function qC(t){return!t||t instanceof Date&&isNaN(t.getHours())?!1:typeof t=="string"?qC(new Date(t)):!0}function WC(t,n){return!(t.min&&nt.max)}function lc(t){return typeof t>"u"?NaN:typeof t=="number"?t:parseInt(t,HY)}function oA(t,n=!1){let e=lc(t);return isNaN(e)||e<0||e>(n?rA:BY)?NaN:e}function sA(t){let n=lc(t);return isNaN(n)||n<0||n>UY?NaN:n}function aA(t){let n=lc(t);return isNaN(n)||n<0||n>$Y?NaN:n}function Xk(t){return typeof t=="string"?new Date(t):t}function ji(t,n){if(!t)return ji(Hm(new Date,0,0,0),n);if(!n)return t;let e=t.getHours(),i=t.getMinutes(),r=t.getSeconds();return n.hour&&(e=e+lc(n.hour)),n.minute&&(i=i+lc(n.minute)),n.seconds&&(r=r+lc(n.seconds)),Hm(t,e,i,r)}function lA(t,n){let e=oA(n.hour),i=sA(n.minute),r=aA(n.seconds)||0;return n.isPM&&e!==12&&(e+=rA),t?isNaN(e)||isNaN(i)?t:Hm(t,e,i,r):!isNaN(e)&&!isNaN(i)?Hm(new Date,e,i,r):t}function Hm(t,n,e,i){let r=new Date(t.getFullYear(),t.getMonth(),t.getDate(),n,e,i,t.getMilliseconds());return r.setFullYear(t.getFullYear()),r.setMonth(t.getMonth()),r.setDate(t.getDate()),r}function GC(t){let n=t.toString();return n.length>1?n:`0${n}`}function cA(t,n){return!isNaN(oA(t,n))}function uA(t){return!isNaN(sA(t))}function dA(t){return!isNaN(aA(t))}function zY(t,n,e){let i=lA(new Date,t);return!(!i||n&&i>n||e&&i0&&!n.canIncrementHours||t.step<0&&!n.canDecrementHours)}function GY(t,n){return!(!t.step||t.step>0&&!n.canIncrementMinutes||t.step<0&&!n.canDecrementMinutes)}function qY(t,n){return!(!t.step||t.step>0&&!n.canIncrementSeconds||t.step<0&&!n.canDecrementSeconds)}function tA(t){let{hourStep:n,minuteStep:e,secondsStep:i,readonlyInput:r,disabled:o,mousewheel:s,arrowkeys:a,showSpinners:l,showMeridian:c,showSeconds:u,meridians:p,min:v,max:_}=t;return{hourStep:n,minuteStep:e,secondsStep:i,readonlyInput:r,disabled:o,mousewheel:s,arrowkeys:a,showSpinners:l,showMeridian:c,showSeconds:u,meridians:p,min:v,max:_}}function QY(t,n){let{min:r,max:o,hourStep:s,minuteStep:a,secondsStep:l,showSeconds:c}=n,u={canIncrementHours:!0,canIncrementMinutes:!0,canIncrementSeconds:!0,canDecrementHours:!0,canDecrementMinutes:!0,canDecrementSeconds:!0,canToggleMeridian:!0};if(!t)return u;if(o){let p=ji(t,{hour:s});if(u.canIncrementHours=o>p&&t.getHours()+s<24,!u.canIncrementHours){let v=ji(t,{minute:a});u.canIncrementMinutes=c?o>v:o>=v}if(!u.canIncrementMinutes){let v=ji(t,{seconds:l});u.canIncrementSeconds=o>=v}t.getHours()<12&&(u.canToggleMeridian=ji(t,{hour:12})=12&&(u.canToggleMeridian=ji(t,{hour:-12})>r)}return u}var fA=(()=>{class t{constructor(){this.hourStep=1,this.minuteStep=5,this.secondsStep=10,this.showMeridian=!0,this.meridians=["AM","PM"],this.readonlyInput=!1,this.disabled=!1,this.allowEmptyTime=!1,this.mousewheel=!0,this.arrowkeys=!0,this.showSpinners=!0,this.showSeconds=!1,this.showMinutes=!0,this.hoursPlaceholder="HH",this.minutesPlaceholder="MM",this.secondsPlaceholder="SS",this.ariaLabelHours="hours",this.ariaLabelMinutes="minutes",this.ariaLabelSeconds="seconds"}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),hA={value:void 0,config:new fA,controls:{canIncrementHours:!0,canIncrementMinutes:!0,canIncrementSeconds:!0,canDecrementHours:!0,canDecrementMinutes:!0,canDecrementSeconds:!0,canToggleMeridian:!0}};function nA(t=hA,n){switch(n.type){case rs.WRITE_VALUE:return Object.assign({},t,{value:n.payload});case rs.CHANGE_HOURS:{if(!jm(t.config,n.payload)||!WY(n.payload,t.controls))return t;let e=ji(t.value,{hour:n.payload.step});return(t.config.max||t.config.min)&&!WC(t.config,e)?t:Object.assign({},t,{value:e})}case rs.CHANGE_MINUTES:{if(!jm(t.config,n.payload)||!GY(n.payload,t.controls))return t;let e=ji(t.value,{minute:n.payload.step});return(t.config.max||t.config.min)&&!WC(t.config,e)?t:Object.assign({},t,{value:e})}case rs.CHANGE_SECONDS:{if(!jm(t.config,n.payload)||!qY(n.payload,t.controls))return t;let e=ji(t.value,{seconds:n.payload.step});return(t.config.max||t.config.min)&&!WC(t.config,e)?t:Object.assign({},t,{value:e})}case rs.SET_TIME_UNIT:{if(!jm(t.config))return t;let e=lA(t.value,n.payload);return Object.assign({},t,{value:e})}case rs.UPDATE_CONTROLS:{let e=QY(t.value,n.payload),i={value:t.value,config:n.payload,controls:e};return t.config.showMeridian!==i.config.showMeridian&&t.value&&(i.value=new Date(t.value)),Object.assign({},t,i)}default:return t}}var iA=(()=>{class t extends ac{constructor(){let e=new Ve({type:"[mini-ngrx] dispatcher init"}),i=new sc(hA,e,nA);super(e,nA,i)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),KY={provide:Rt,useExisting:ze(()=>cc),multi:!0},cc=(()=>{class t{constructor(e,i,r,o){this._cd=i,this._store=r,this._timepickerActions=o,this.hourStep=1,this.minuteStep=5,this.secondsStep=10,this.readonlyInput=!1,this.disabled=!1,this.mousewheel=!0,this.arrowkeys=!0,this.showSpinners=!0,this.showMeridian=!0,this.showMinutes=!0,this.showSeconds=!1,this.meridians=["AM","PM"],this.hoursPlaceholder="HH",this.minutesPlaceholder="MM",this.secondsPlaceholder="SS",this.isValid=new O,this.meridianChange=new O,this.hours="",this.minutes="",this.seconds="",this.meridian="",this.invalidHours=!1,this.invalidMinutes=!1,this.invalidSeconds=!1,this.labelHours="hours",this.labelMinutes="minutes",this.labelSeconds="seconds",this.canIncrementHours=!0,this.canIncrementMinutes=!0,this.canIncrementSeconds=!0,this.canDecrementHours=!0,this.canDecrementMinutes=!0,this.canDecrementSeconds=!0,this.canToggleMeridian=!0,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.config=e,Object.assign(this,this.config),this.timepickerSub=r.select(s=>s.value).subscribe(s=>{this._renderTime(s),this.onChange(s),this._store.dispatch(this._timepickerActions.updateControls(tA(this)))}),r.select(s=>s.controls).subscribe(s=>{let a=eA(this.hours,this.minutes,this.seconds,this.isPM()),l=this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||a;this.isValid.emit(l),Object.assign(this,s),i.markForCheck()})}get isSpinnersVisible(){return this.showSpinners&&!this.readonlyInput}get isEditable(){return!(this.readonlyInput||this.disabled)}resetValidation(){this.invalidHours=!1,this.invalidMinutes=!1,this.invalidSeconds=!1}isPM(){return this.showMeridian&&this.meridian===this.meridians[1]}prevDef(e){e.preventDefault()}wheelSign(e){return Math.sign(e.deltaY||0)*-1}ngOnChanges(){this._store.dispatch(this._timepickerActions.updateControls(tA(this)))}changeHours(e,i=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeHours({step:e,source:i}))}changeMinutes(e,i=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeMinutes({step:e,source:i}))}changeSeconds(e,i=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeSeconds({step:e,source:i}))}updateHours(e){this.resetValidation(),this.hours=e.value;let i=cA(this.hours,this.isPM())&&this.isValidLimit();if(!(this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||i)){this.invalidHours=!0,this.isValid.emit(!1),this.onChange(null);return}this._updateTime()}updateMinutes(e){this.resetValidation(),this.minutes=e.value;let i=uA(this.minutes)&&this.isValidLimit();if(!(this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||i)){this.invalidMinutes=!0,this.isValid.emit(!1),this.onChange(null);return}this._updateTime()}updateSeconds(e){this.resetValidation(),this.seconds=e.value;let i=dA(this.seconds)&&this.isValidLimit();if(!(this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||i)){this.invalidSeconds=!0,this.isValid.emit(!1),this.onChange(null);return}this._updateTime()}isValidLimit(){return zY({hour:this.hours,minute:this.minutes,seconds:this.seconds,isPM:this.isPM()},this.max,this.min)}isOneOfDatesIsEmpty(){return YY(this.hours,this.minutes,this.seconds)}_updateTime(){let e=this.showSeconds?this.seconds:void 0,i=this.showMinutes?this.minutes:void 0,r=eA(this.hours,i,e,this.isPM());if(!(this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||r)){this.isValid.emit(!1),this.onChange(null);return}this._store.dispatch(this._timepickerActions.setTime({hour:this.hours,minute:this.minutes,seconds:this.seconds,isPM:this.isPM()}))}toggleMeridian(){if(!this.showMeridian||!this.isEditable)return;this._store.dispatch(this._timepickerActions.changeHours({step:12,source:""}))}writeValue(e){qC(e)?(this.resetValidation(),this._store.dispatch(this._timepickerActions.writeValue(Xk(e)))):e==null&&this._store.dispatch(this._timepickerActions.writeValue())}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this.disabled=e,this._cd.markForCheck()}ngOnDestroy(){this.timepickerSub?.unsubscribe()}_renderTime(e){if(!e||!qC(e)){this.hours="",this.minutes="",this.seconds="",this.meridian=this.meridians[0],this.meridianChange.emit(this.meridian);return}let i=Xk(e);if(!i)return;let r=12,o=i.getHours();this.showMeridian&&(this.meridian=this.meridians[o>=r?1:0],this.meridianChange.emit(this.meridian),o=o%r,o===0&&(o=r)),this.hours=GC(o),this.minutes=GC(i.getMinutes()),this.seconds=GC(i.getUTCSeconds())}static{this.\u0275fac=function(i){return new(i||t)(b(fA),b(ct),b(iA),b(rs))}}static{this.\u0275cmp=L({type:t,selectors:[["timepicker"]],inputs:{hourStep:"hourStep",minuteStep:"minuteStep",secondsStep:"secondsStep",readonlyInput:"readonlyInput",disabled:"disabled",mousewheel:"mousewheel",arrowkeys:"arrowkeys",showSpinners:"showSpinners",showMeridian:"showMeridian",showMinutes:"showMinutes",showSeconds:"showSeconds",meridians:"meridians",min:"min",max:"max",hoursPlaceholder:"hoursPlaceholder",minutesPlaceholder:"minutesPlaceholder",secondsPlaceholder:"secondsPlaceholder"},outputs:{isValid:"isValid",meridianChange:"meridianChange"},features:[pe([KY,iA,rs]),Se],decls:31,vars:33,consts:[[1,"text-center",3,"hidden"],["href","javascript:void(0);",1,"btn","btn-link",3,"click"],[1,"bs-chevron","bs-chevron-up"],[4,"ngIf"],[1,"form-group","mb-3"],["type","text","maxlength","2",1,"form-control","text-center","bs-timepicker-field",3,"wheel","keydown.ArrowUp","keydown.ArrowDown","change","placeholder","readonly","disabled","value"],["class","form-group mb-3",3,"has-error",4,"ngIf"],[1,"bs-chevron","bs-chevron-down"],["type","button",1,"btn","btn-default","text-center",3,"click","disabled"]],template:function(i,r){i&1&&(d(0,"table")(1,"tbody")(2,"tr",0)(3,"td")(4,"a",1),D("click",function(){return r.changeHours(r.hourStep)}),I(5,"span",2),f()(),T(6,wY,2,0,"td",3)(7,DY,3,2,"td",3)(8,MY,2,0,"td",3)(9,SY,3,2,"td",3)(10,TY,2,0,"td",3)(11,EY,1,0,"td",3),f(),d(12,"tr")(13,"td",4)(14,"input",5),D("wheel",function(s){return r.prevDef(s),r.changeHours(r.hourStep*r.wheelSign(s),"wheel")})("keydown.ArrowUp",function(){return r.changeHours(r.hourStep,"key")})("keydown.ArrowDown",function(){return r.changeHours(-r.hourStep,"key")})("change",function(s){return r.updateHours(s.target)}),f()(),T(15,xY,2,0,"td",3)(16,IY,2,9,"td",6)(17,kY,2,0,"td",3)(18,AY,2,9,"td",6)(19,PY,2,0,"td",3)(20,OY,3,4,"td",3),f(),d(21,"tr",0)(22,"td")(23,"a",1),D("click",function(){return r.changeHours(-r.hourStep)}),I(24,"span",7),f()(),T(25,RY,2,0,"td",3)(26,NY,3,2,"td",3)(27,LY,2,0,"td",3)(28,FY,3,2,"td",3)(29,VY,2,0,"td",3)(30,jY,1,0,"td",3),f()()()),i&2&&(h(2),g("hidden",!r.showSpinners),h(2),B("disabled",!r.canIncrementHours||!r.isEditable),h(2),g("ngIf",r.showMinutes),h(),g("ngIf",r.showMinutes),h(),g("ngIf",r.showSeconds),h(),g("ngIf",r.showSeconds),h(),g("ngIf",r.showMeridian),h(),g("ngIf",r.showMeridian),h(2),B("has-error",r.invalidHours),h(),B("is-invalid",r.invalidHours),g("placeholder",r.hoursPlaceholder)("readonly",r.readonlyInput)("disabled",r.disabled)("value",r.hours),ee("aria-label",r.labelHours),h(),g("ngIf",r.showMinutes),h(),g("ngIf",r.showMinutes),h(),g("ngIf",r.showSeconds),h(),g("ngIf",r.showSeconds),h(),g("ngIf",r.showMeridian),h(),g("ngIf",r.showMeridian),h(),g("hidden",!r.showSpinners),h(2),B("disabled",!r.canDecrementHours||!r.isEditable),h(2),g("ngIf",r.showMinutes),h(),g("ngIf",r.showMinutes),h(),g("ngIf",r.showSeconds),h(),g("ngIf",r.showSeconds),h(),g("ngIf",r.showMeridian),h(),g("ngIf",r.showMeridian))},dependencies:[Te],styles:[`.bs-chevron{border-style:solid;display:block;width:9px;height:9px;position:relative;border-width:3px 0px 0 3px}.bs-chevron-up{-webkit-transform:rotate(45deg);transform:rotate(45deg);top:2px}.bs-chevron-down{-webkit-transform:rotate(-135deg);transform:rotate(-135deg);top:-2px}.bs-timepicker-field{width:65px;padding:.375rem .55rem} +`],encapsulation:2,changeDetection:0})}}return t})(),uc=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({})}}return t})();var ba=class{constructor(n,e,i){this.nodes=n,this.viewRef=e,this.componentRef=i}},QC=class{constructor(n,e,i,r,o,s,a,l,c){this._viewContainerRef=n,this._renderer=e,this._elementRef=i,this._injector=r,this._componentFactoryResolver=o,this._ngZone=s,this._applicationRef=a,this._posService=l,this._document=c,this.onBeforeShow=new O,this.onShown=new O,this.onBeforeHide=new O,this.onHidden=new O,this._providers=[],this._isHiding=!1,this.containerDefaultSelector="body",this._listenOpts={},this._globalListener=Function.prototype}get isShown(){return this._isHiding?!1:!!this._componentRef}attach(n){return this._componentFactory=this._componentFactoryResolver.resolveComponentFactory(n),this}to(n){return this.container=n||this.container,this}position(n){return n?(this.attachment=n.attachment||this.attachment,this._elementRef=n.target||this._elementRef,this):this}provide(n){return this._providers.push(n),this}show(n={}){if(this._subscribePositioning(),this._innerComponent=void 0,!this._componentRef){this.onBeforeShow.emit(),this._contentRef=this._getContentRef(n.content,n.context,n.initialState);let e=Nt.create({providers:this._providers,parent:this._injector});if(!this._componentFactory)return;if(this._componentRef=this._componentFactory.create(e,this._contentRef.nodes),this._applicationRef.attachView(this._componentRef.hostView),this.instance=this._componentRef.instance,Object.assign(this._componentRef.instance,n),this.container instanceof Y&&this.container.nativeElement.appendChild(this._componentRef.location.nativeElement),typeof this.container=="string"&&typeof this._document<"u"){let i=this._document.querySelector(this.container)||this._document.querySelector(this.containerDefaultSelector);if(!i)return;i.appendChild(this._componentRef.location.nativeElement)}!this.container&&this._elementRef&&this._elementRef.nativeElement.parentElement&&this._elementRef.nativeElement.parentElement.appendChild(this._componentRef.location.nativeElement),this._contentRef.componentRef&&(this._innerComponent=this._contentRef.componentRef.instance,this._contentRef.componentRef.changeDetectorRef.markForCheck(),this._contentRef.componentRef.changeDetectorRef.detectChanges()),this._componentRef.changeDetectorRef.markForCheck(),this._componentRef.changeDetectorRef.detectChanges(),this.onShown.emit(n.id?{id:n.id}:this._componentRef.instance)}return this._registerOutsideClick(),this._componentRef}hide(n){if(!this._componentRef)return this;this._posService.deletePositionElement(this._componentRef.location),this.onBeforeHide.emit(this._componentRef.instance);let e=this._componentRef.location.nativeElement;return e.parentNode?.removeChild(e),this._contentRef?.componentRef?.destroy(),this._viewContainerRef&&this._contentRef?.viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._contentRef.viewRef)),this._contentRef?.viewRef?.destroy(),this._componentRef?.destroy(),this._contentRef=void 0,this._componentRef=void 0,this._removeGlobalListener(),this.onHidden.emit(n?{id:n}:null),this}toggle(){if(this.isShown){this.hide();return}this.show()}dispose(){this.isShown&&this.hide(),this._unsubscribePositioning(),this._unregisterListenersFn&&this._unregisterListenersFn()}listen(n){this.triggers=n.triggers||this.triggers,this._listenOpts.outsideClick=n.outsideClick,this._listenOpts.outsideEsc=n.outsideEsc,n.target=n.target||this._elementRef?.nativeElement;let e=this._listenOpts.hide=()=>n.hide?n.hide():void this.hide(),i=this._listenOpts.show=o=>{n.show?n.show(o):this.show(o),o()},r=o=>{this.isShown?e():i(o)};return this._renderer&&(this._unregisterListenersFn=Ok(this._renderer,{target:n.target,triggers:n.triggers,show:i,hide:e,toggle:r})),this}_removeGlobalListener(){this._globalListener&&(this._globalListener(),this._globalListener=Function.prototype)}attachInline(n,e){return n&&e&&(this._inlineViewRef=n.createEmbeddedView(e)),this}_registerOutsideClick(){if(!this._componentRef||!this._componentRef.location)return;let n=Function.prototype,e=Function.prototype;if(this._listenOpts.outsideClick){let i=this._componentRef.location.nativeElement;setTimeout(()=>{this._renderer&&this._elementRef&&(n=Rk(this._renderer,{targets:[i,this._elementRef.nativeElement],outsideClick:this._listenOpts.outsideClick,hide:()=>this._listenOpts.hide&&this._listenOpts.hide()}))})}if(this._listenOpts.outsideEsc&&this._renderer&&this._elementRef){let i=this._componentRef.location.nativeElement;e=Nk(this._renderer,{targets:[i,this._elementRef.nativeElement],outsideEsc:this._listenOpts.outsideEsc,hide:()=>this._listenOpts.hide&&this._listenOpts.hide()})}this._globalListener=()=>{n(),e()}}getInnerComponent(){return this._innerComponent}_subscribePositioning(){this._zoneSubscription||!this.attachment||(this.onShown.subscribe(()=>{this._posService.position({element:this._componentRef?.location,target:this._elementRef,attachment:this.attachment,appendToBody:this.container==="body"})}),this._zoneSubscription=this._ngZone.onStable.subscribe(()=>{this._componentRef&&this._posService.calcPosition()}))}_unsubscribePositioning(){this._zoneSubscription&&(this._zoneSubscription.unsubscribe(),this._zoneSubscription=void 0)}_getContentRef(n,e,i){if(!n)return new ba([]);if(n instanceof Ot){if(this._viewContainerRef){let s=this._viewContainerRef.createEmbeddedView(n,e);return s.markForCheck(),new ba([s.rootNodes],s)}let o=n.createEmbeddedView({});return this._applicationRef.attachView(o),new ba([o.rootNodes],o)}if(typeof n=="function"){let o=this._componentFactoryResolver.resolveComponentFactory(n),s=Nt.create({providers:this._providers,parent:this._injector}),a=o.create(s);return Object.assign(a.instance,i),this._applicationRef.attachView(a.hostView),new ba([[a.location.nativeElement]],a.hostView,a)}let r=this._renderer?[this._renderer.createText(`${n}`)]:[];return new ba([r])}},tn=(()=>{class t{constructor(e,i,r,o,s,a){this._componentFactoryResolver=e,this._ngZone=i,this._injector=r,this._posService=o,this._applicationRef=s,this._document=a}createLoader(e,i,r){return new QC(i,r,e,this._injector,this._componentFactoryResolver,this._ngZone,this._applicationRef,this._posService,this._document)}static{this.\u0275fac=function(i){return new(i||t)(j(Lo),j(xe),j(Nt),j(cn),j(Hn),j(Pe))}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var JY=["*"],KC=(()=>{class t{constructor(){this.adaptivePosition=!0,this.placement="top",this.triggers="hover focus",this.delay=0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),XY=(()=>{class t{get _bsVersions(){return is()}constructor(e){Object.assign(this,e)}ngAfterViewInit(){this.classMap={in:!1,fade:!1},this.placement&&(this._bsVersions.isBs5&&(this.placement=Dd[this.placement]),this.classMap[this.placement]=!0),this.classMap[`tooltip-${this.placement}`]=!0,this.classMap.in=!0,this.animation&&(this.classMap.fade=!0),this.containerClass&&(this.classMap[this.containerClass]=!0)}static{this.\u0275fac=function(i){return new(i||t)(b(KC))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-tooltip-container"]],hostAttrs:["role","tooltip"],hostVars:3,hostBindings:function(i,r){i&2&&(ee("id",r.id),sn("show tooltip in tooltip-"+r.placement+" bs-tooltip-"+r.placement+" "+r.placement+" "+r.containerClass))},ngContentSelectors:JY,decls:3,vars:0,consts:[[1,"tooltip-arrow","arrow"],[1,"tooltip-inner"]],template:function(i,r){i&1&&(An(),I(0,"div",0),d(1,"div",1),Cn(2),f())},styles:[".tooltip[_nghost-%COMP%]{display:block;pointer-events:none;position:absolute}.tooltip[_nghost-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{position:absolute}"],changeDetection:0})}}return t})(),e5=0,pA=(()=>{class t{get isOpen(){return this._tooltip.isShown}set isOpen(e){e?this.show():this.hide()}set htmlContent(e){qn("tooltipHtml was deprecated, please use `tooltip` instead"),this.tooltip=e}set _placement(e){qn("tooltipPlacement was deprecated, please use `placement` instead"),this.placement=e}set _isOpen(e){qn("tooltipIsOpen was deprecated, please use `isOpen` instead"),this.isOpen=e}get _isOpen(){return qn("tooltipIsOpen was deprecated, please use `isOpen` instead"),this.isOpen}set _enable(e){qn("tooltipEnable was deprecated, please use `isDisabled` instead"),this.isDisabled=!e}get _enable(){return qn("tooltipEnable was deprecated, please use `isDisabled` instead"),this.isDisabled}set _appendToBody(e){qn('tooltipAppendToBody was deprecated, please use `container="body"` instead'),this.container=e?"body":this.container}get _appendToBody(){return qn('tooltipAppendToBody was deprecated, please use `container="body"` instead'),this.container==="body"}set _popupClass(e){qn("tooltipClass deprecated")}set _tooltipContext(e){qn("tooltipContext deprecated")}set _tooltipPopupDelay(e){qn("tooltipPopupDelay is deprecated, use `delay` instead"),this.delay=e}get _tooltipTrigger(){return qn("tooltipTrigger was deprecated, please use `triggers` instead"),this.triggers}set _tooltipTrigger(e){qn("tooltipTrigger was deprecated, please use `triggers` instead"),this.triggers=(e||"").toString()}constructor(e,i,r,o,s,a){this._elementRef=o,this._renderer=s,this._positionService=a,this.tooltipId=e5++,this.adaptivePosition=!0,this.tooltipChange=new O,this.placement="top",this.triggers="hover focus",this.containerClass="",this.isDisabled=!1,this.delay=0,this.tooltipAnimation=!0,this.tooltipFadeDuration=150,this.tooltipStateChanged=new O,this._tooltip=i.createLoader(this._elementRef,e,this._renderer).provide({provide:KC,useValue:r}),Object.assign(this,r),this.onShown=this._tooltip.onShown,this.onHidden=this._tooltip.onHidden}ngOnInit(){this._tooltip.listen({triggers:this.triggers,show:()=>this.show()}),this.tooltipChange.subscribe(e=>{e||this._tooltip.hide()}),this.onShown.subscribe(()=>{this.setAriaDescribedBy()}),this.onHidden.subscribe(()=>{this.setAriaDescribedBy()})}setAriaDescribedBy(){this._ariaDescribedby=this.isOpen?`tooltip-${this.tooltipId}`:void 0,this._ariaDescribedby?this._renderer.setAttribute(this._elementRef.nativeElement,"aria-describedby",this._ariaDescribedby):this._renderer.removeAttribute(this._elementRef.nativeElement,"aria-describedby")}toggle(){if(this.isOpen)return this.hide();this.show()}show(){if(this._positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition},preventOverflow:{enabled:this.adaptivePosition,boundariesElement:this.boundariesElement||"scrollParent"}}}),this.isOpen||this.isDisabled||this._delayTimeoutId||!this.tooltip)return;let e=()=>{this._delayTimeoutId&&(this._delayTimeoutId=void 0),this._tooltip.attach(XY).to(this.container).position({attachment:this.placement}).show({content:this.tooltip,placement:this.placement,containerClass:this.containerClass,id:`tooltip-${this.tooltipId}`})},i=()=>{this._tooltipCancelShowFn&&this._tooltipCancelShowFn()};this.delay?(this._delaySubscription&&this._delaySubscription.unsubscribe(),this._delaySubscription=Ts(this.delay).subscribe(()=>{e(),i()}),this.triggers&&FC(this.triggers).forEach(r=>{r.close&&(this._tooltipCancelShowFn=this._renderer.listen(this._elementRef.nativeElement,r.close,()=>{this._delaySubscription?.unsubscribe(),i()}))})):e()}hide(){this._delayTimeoutId&&(clearTimeout(this._delayTimeoutId),this._delayTimeoutId=void 0),this._tooltip.isShown&&(this._tooltip.instance?.classMap&&(this._tooltip.instance.classMap.in=!1),setTimeout(()=>{this._tooltip.hide()},this.tooltipFadeDuration))}ngOnDestroy(){this._tooltip.dispose(),this.tooltipChange.unsubscribe(),this._delaySubscription&&this._delaySubscription.unsubscribe(),this.onShown.unsubscribe(),this.onHidden.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(b(_t),b(tn),b(KC),b(Y),b(Ae),b(cn))}}static{this.\u0275dir=U({type:t,selectors:[["","tooltip",""],["","tooltipHtml",""]],inputs:{adaptivePosition:"adaptivePosition",tooltip:"tooltip",placement:"placement",triggers:"triggers",container:"container",containerClass:"containerClass",boundariesElement:"boundariesElement",isOpen:"isOpen",isDisabled:"isDisabled",delay:"delay",htmlContent:[0,"tooltipHtml","htmlContent"],_placement:[0,"tooltipPlacement","_placement"],_isOpen:[0,"tooltipIsOpen","_isOpen"],_enable:[0,"tooltipEnable","_enable"],_appendToBody:[0,"tooltipAppendToBody","_appendToBody"],tooltipAnimation:"tooltipAnimation",_popupClass:[0,"tooltipClass","_popupClass"],_tooltipContext:[0,"tooltipContext","_tooltipContext"],_tooltipPopupDelay:[0,"tooltipPopupDelay","_tooltipPopupDelay"],tooltipFadeDuration:"tooltipFadeDuration",_tooltipTrigger:[0,"tooltipTrigger","_tooltipTrigger"]},outputs:{tooltipChange:"tooltipChange",onShown:"onShown",onHidden:"onHidden",tooltipStateChanged:"tooltipStateChanged"},exportAs:["bs-tooltip"],features:[pe([tn,cn])]})}}return hM([Vk(),pM("design:type",Object)],t.prototype,"tooltip",void 0),t})(),ZC=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({imports:[He]})}}return t})();function n5(t,n){if(t&1){let e=N();d(0,"button",2),D("click",function(){let r=C(e).$implicit,o=m();return w(o.selectFromRanges(r))}),y(1),f()}if(t&2){let e=n.$implicit,i=m();B("selected",i.compareRanges(e)),h(),oe(" ",e.label," ")}}function i5(t,n){if(t&1){let e=N();Lt(0),y(1," \u200B "),d(2,"button",2),D("click",function(){C(e);let r=m();return w(r.view("month"))}),d(3,"span"),y(4),f()(),Ft()}if(t&2){let e=m();h(2),g("disabled",e.isDisabled),h(2),H(e.calendar.monthTitle)}}var r5=[[["bs-datepicker-navigation-view"]],"*"],o5=["bs-datepicker-navigation-view","*"];function s5(t,n){t&1&&I(0,"bs-current-date",4)}function a5(t,n){t&1&&I(0,"bs-timepicker")}function l5(t,n){if(t&1){let e=N();d(0,"td",4),D("click",function(){let r=C(e).$implicit,o=m(2);return w(o.viewYear(r))})("mouseenter",function(){let r=C(e).$implicit,o=m(2);return w(o.hoverYear(r,!0))})("mouseleave",function(){let r=C(e).$implicit,o=m(2);return w(o.hoverYear(r,!1))}),d(1,"span"),y(2),f()()}if(t&2){let e=n.$implicit;B("disabled",e.isDisabled)("is-highlighted",e.isHovered),h(),B("selected",e.isSelected),h(),H(e.label)}}function c5(t,n){if(t&1&&(d(0,"tr"),T(1,l5,3,7,"td",3),f()),t&2){let e=n.$implicit;h(),g("ngForOf",e)}}function u5(t,n){if(t&1){let e=N();d(0,"td",4),D("click",function(){let r=C(e).$implicit,o=m(2);return w(o.viewMonth(r))})("mouseenter",function(){let r=C(e).$implicit,o=m(2);return w(o.hoverMonth(r,!0))})("mouseleave",function(){let r=C(e).$implicit,o=m(2);return w(o.hoverMonth(r,!1))}),d(1,"span"),y(2),f()()}if(t&2){let e=n.$implicit;B("disabled",e.isDisabled)("is-highlighted",e.isHovered),h(),B("selected",e.isSelected),h(),H(e.label)}}function d5(t,n){if(t&1&&(d(0,"tr"),T(1,u5,3,7,"td",3),f()),t&2){let e=n.$implicit;h(),g("ngForOf",e)}}var f5=["bsDatepickerDayDecorator",""];function h5(t,n){t&1&&I(0,"th")}function p5(t,n){if(t&1&&(d(0,"th",5),y(1),f()),t&2){let e=n.index,i=m();h(),oe("",i.calendar.weekdays[e]," ")}}function m5(t,n){if(t&1){let e=N();d(0,"span",11),D("click",function(){C(e);let r=m(2).$implicit,o=m();return w(o.selectWeek(r))}),y(1),f()}if(t&2){let e=m(2).index,i=m();h(),H(i.calendar.weekNumbers[e])}}function g5(t,n){if(t&1){let e=N();d(0,"span",12),D("click",function(){C(e);let r=m(2).$implicit,o=m();return w(o.selectWeek(r))})("mouseenter",function(){C(e);let r=m(2).$implicit,o=m();return w(o.weekHoverHandler(r,!0))})("mouseleave",function(){C(e);let r=m(2).$implicit,o=m();return w(o.weekHoverHandler(r,!1))}),y(1),f()}if(t&2){let e=m(2).index,i=m();h(),H(i.calendar.weekNumbers[e])}}function _5(t,n){if(t&1&&(d(0,"td",8),T(1,m5,2,1,"span",9)(2,g5,2,1,"span",10),f()),t&2){let e=m(2);B("active-week",e.isWeekHovered),h(),g("ngIf",e.isiOS),h(),g("ngIf",!e.isiOS)}}function y5(t,n){if(t&1){let e=N();d(0,"span",17),D("click",function(){C(e);let r=m().$implicit,o=m(2);return w(o.selectDay(r))})("mouseenter",function(){C(e);let r=m().$implicit,o=m(2);return w(o.hoverDay(r,!0))})("mouseleave",function(){C(e);let r=m().$implicit,o=m(2);return w(o.hoverDay(r,!1))}),y(1),f()}if(t&2){let e=m().$implicit;Vt("tooltip",e.tooltipText),g("day",e),h(),oe("",e.label," 3")}}function v5(t,n){if(t&1){let e=N();d(0,"span",18),D("click",function(){C(e);let r=m().$implicit,o=m(2);return w(o.selectDay(r))})("mouseenter",function(){C(e);let r=m().$implicit,o=m(2);return w(o.hoverDay(r,!0))})("mouseleave",function(){C(e);let r=m().$implicit,o=m(2);return w(o.hoverDay(r,!1))}),y(1),f()}if(t&2){let e=m().$implicit;g("day",e),h(),oe("",e.label," 2")}}function b5(t,n){if(t&1){let e=N();d(0,"span",19),D("click",function(){C(e);let r=m().$implicit,o=m(2);return w(o.selectDay(r))}),y(1),f()}if(t&2){let e=m().$implicit;g("day",e),h(),oe("",e.label," 1")}}function C5(t,n){if(t&1&&(d(0,"td",13),T(1,y5,2,3,"span",14)(2,v5,2,2,"span",15)(3,b5,2,2,"span",16),f()),t&2){let e=m(2);h(),g("ngIf",!e.isiOS&&e.isShowTooltip),h(),g("ngIf",!e.isiOS&&!e.isShowTooltip),h(),g("ngIf",e.isiOS)}}function w5(t,n){if(t&1&&(d(0,"tr"),T(1,_5,3,4,"td",6)(2,C5,4,3,"td",7),f()),t&2){let e=n.$implicit,i=m();h(),g("ngIf",i.options&&i.options.showWeekNumbers),h(),g("ngForOf",e.days)}}var bA=["startTP"];function D5(t,n){if(t&1){let e=N();d(0,"bs-days-calendar-view",13),se(1,"async"),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.dayHoverHandler(r))})("onHoverWeek",function(r){C(e);let o=m(3);return w(o.weekHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.daySelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)("isDisabled",i.isDatePickerDisabled)("options",ye(1,5,i.options$))}}function M5(t,n){if(t&1&&I(0,"timepicker",15,1),t&2){let e=m(4);g("disabled",e.isDatePickerDisabled)}}function S5(t,n){if(t&1&&(d(0,"div",14),I(1,"timepicker",15,0),T(3,M5,2,1,"timepicker",16),f()),t&2){let e=m(3);h(),g("disabled",e.isDatePickerDisabled),h(2),g("ngIf",e.isRangePicker)}}function T5(t,n){if(t&1&&(Lt(0),d(1,"div",10),T(2,D5,2,7,"bs-days-calendar-view",11),se(3,"async"),f(),T(4,S5,4,2,"div",12),Ft()),t&2){let e=m(2);h(2),g("ngForOf",ye(3,2,e.daysCalendar$)),h(2),g("ngIf",e.withTimepicker)}}function E5(t,n){if(t&1){let e=N();d(0,"bs-month-calendar-view",18),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.monthHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.monthSelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function x5(t,n){if(t&1&&(d(0,"div",10),T(1,E5,1,3,"bs-month-calendar-view",17),se(2,"async"),f()),t&2){let e=m(2);h(),g("ngForOf",ye(2,1,e.monthsCalendar))}}function I5(t,n){if(t&1){let e=N();d(0,"bs-years-calendar-view",18),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.yearHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.yearSelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function k5(t,n){if(t&1&&(d(0,"div",10),T(1,I5,1,3,"bs-years-calendar-view",17),se(2,"async"),f()),t&2){let e=m(2);h(),g("ngForOf",ye(2,1,e.yearsCalendar))}}function A5(t,n){t&1&&(d(0,"div",19)(1,"button",20),y(2,"Apply"),f(),d(3,"button",21),y(4,"Cancel"),f()())}function P5(t,n){if(t&1){let e=N();d(0,"div",24)(1,"button",25),D("click",function(){C(e);let r=m(3);return w(r.setToday())}),y(2),f()()}if(t&2){let e=m(3);B("today-left",e.todayPos==="left")("today-right",e.todayPos==="right")("today-center",e.todayPos==="center"),h(2),H(e.todayBtnLbl)}}function O5(t,n){if(t&1){let e=N();d(0,"div",26)(1,"button",25),D("click",function(){C(e);let r=m(3);return w(r.clearDate())}),y(2),f()()}if(t&2){let e=m(3);B("clear-left",e.clearPos==="left")("clear-right",e.clearPos==="right")("clear-center",e.clearPos==="center"),h(2),H(e.clearBtnLbl)}}function R5(t,n){if(t&1&&(d(0,"div",19),T(1,P5,3,7,"div",22)(2,O5,3,7,"div",23),f()),t&2){let e=m(2);h(),g("ngIf",e.showTodayBtn),h(),g("ngIf",e.showClearBtn)}}function N5(t,n){if(t&1){let e=N();d(0,"div",27)(1,"bs-custom-date-view",28),D("onSelect",function(r){C(e);let o=m(2);return w(o.setRangeOnCalendar(r))}),f()()}if(t&2){let e=m(2);h(),g("selectedRange",e.chosenRange)("ranges",e.customRanges)("customRangeLabel",e.customRangeBtnLbl)}}function L5(t,n){if(t&1){let e=N();d(0,"div",3)(1,"div",4),D("@datepickerAnimation.done",function(){C(e);let r=m();return w(r.positionServiceEnable())}),d(2,"div",5),se(3,"async"),T(4,T5,5,4,"ng-container",6)(5,x5,3,3,"div",7)(6,k5,3,3,"div",7),f(),T(7,A5,5,0,"div",8)(8,R5,3,2,"div",8),f(),T(9,N5,2,3,"div",9),f()}if(t&2){let e=m();g("ngClass",e.containerClass),h(),g("@datepickerAnimation",e.animationState),h(),g("ngSwitch",ye(3,9,e.viewMode)),h(2),g("ngSwitchCase","day"),h(),g("ngSwitchCase","month"),h(),g("ngSwitchCase","year"),h(),g("ngIf",!1),h(),g("ngIf",e.showTodayBtn||e.showClearBtn),h(),g("ngIf",e.customRanges&&e.customRanges.length>0)}}function F5(t,n){if(t&1){let e=N();d(0,"bs-days-calendar-view",13),se(1,"async"),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.dayHoverHandler(r))})("onHoverWeek",function(r){C(e);let o=m(3);return w(o.weekHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.daySelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)("isDisabled",i.isDatePickerDisabled)("options",ye(1,5,i.options$))}}function V5(t,n){if(t&1&&I(0,"timepicker",15,1),t&2){let e=m(4);g("disabled",e.isDatePickerDisabled)}}function j5(t,n){if(t&1&&(d(0,"div",14),I(1,"timepicker",15,0),T(3,V5,2,1,"timepicker",16),f()),t&2){let e=m(3);h(),g("disabled",e.isDatePickerDisabled),h(2),g("ngIf",e.isRangePicker)}}function H5(t,n){if(t&1&&(Lt(0),d(1,"div",10),T(2,F5,2,7,"bs-days-calendar-view",11),se(3,"async"),f(),T(4,j5,4,2,"div",12),Ft()),t&2){let e=m(2);h(2),g("ngForOf",ye(3,2,e.daysCalendar$)),h(2),g("ngIf",e.withTimepicker)}}function B5(t,n){if(t&1){let e=N();d(0,"bs-month-calendar-view",18),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.monthHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.monthSelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function U5(t,n){if(t&1&&(d(0,"div",10),T(1,B5,1,3,"bs-month-calendar-view",17),se(2,"async"),f()),t&2){let e=m(2);h(),g("ngForOf",ye(2,1,e.monthsCalendar))}}function $5(t,n){if(t&1){let e=N();d(0,"bs-years-calendar-view",18),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.yearHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.yearSelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function z5(t,n){if(t&1&&(d(0,"div",10),T(1,$5,1,3,"bs-years-calendar-view",17),se(2,"async"),f()),t&2){let e=m(2);h(),g("ngForOf",ye(2,1,e.yearsCalendar))}}function Y5(t,n){t&1&&(d(0,"div",19)(1,"button",20),y(2,"Apply"),f(),d(3,"button",21),y(4,"Cancel"),f()())}function W5(t,n){if(t&1){let e=N();d(0,"div",24)(1,"button",25),D("click",function(){C(e);let r=m(3);return w(r.setToday())}),y(2),f()()}if(t&2){let e=m(3);B("today-left",e.todayPos==="left")("today-right",e.todayPos==="right")("today-center",e.todayPos==="center"),h(2),H(e.todayBtnLbl)}}function G5(t,n){if(t&1){let e=N();d(0,"div",26)(1,"button",25),D("click",function(){C(e);let r=m(3);return w(r.clearDate())}),y(2),f()()}if(t&2){let e=m(3);B("clear-left",e.clearPos==="left")("clear-right",e.clearPos==="right")("clear-center",e.clearPos==="center"),h(2),H(e.clearBtnLbl)}}function q5(t,n){if(t&1&&(d(0,"div",19),T(1,W5,3,7,"div",22)(2,G5,3,7,"div",23),f()),t&2){let e=m(2);h(),g("ngIf",e.showTodayBtn),h(),g("ngIf",e.showClearBtn)}}function Q5(t,n){if(t&1){let e=N();d(0,"div",27)(1,"bs-custom-date-view",28),D("onSelect",function(r){C(e);let o=m(2);return w(o.setRangeOnCalendar(r))}),f()()}if(t&2){let e=m(2);h(),g("selectedRange",e.chosenRange)("ranges",e.customRanges)("customRangeLabel",e.customRangeBtnLbl)}}function K5(t,n){if(t&1){let e=N();d(0,"div",3)(1,"div",4),D("@datepickerAnimation.done",function(){C(e);let r=m();return w(r.positionServiceEnable())}),d(2,"div",5),se(3,"async"),T(4,H5,5,4,"ng-container",6)(5,U5,3,3,"div",7)(6,z5,3,3,"div",7),f(),T(7,Y5,5,0,"div",8)(8,q5,3,2,"div",8),f(),T(9,Q5,2,3,"div",9),f()}if(t&2){let e=m();g("ngClass",e.containerClass),h(),g("@datepickerAnimation",e.animationState),h(),g("ngSwitch",ye(3,9,e.viewMode)),h(2),g("ngSwitchCase","day"),h(),g("ngSwitchCase","month"),h(),g("ngSwitchCase","year"),h(),g("ngIf",!1),h(),g("ngIf",e.showTodayBtn||e.showClearBtn),h(),g("ngIf",e.customRanges&&e.customRanges.length>0)}}var Z5=["endTP"];function J5(t,n){if(t&1){let e=N();d(0,"bs-days-calendar-view",13),se(1,"async"),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.dayHoverHandler(r))})("onHoverWeek",function(r){C(e);let o=m(3);return w(o.weekHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.daySelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)("isDisabled",i.isDatePickerDisabled)("options",ye(1,5,i.options$))}}function X5(t,n){if(t&1&&I(0,"timepicker",15,1),t&2){let e=m(4);g("disabled",e.isDatePickerDisabled)}}function eW(t,n){if(t&1&&(d(0,"div",14),I(1,"timepicker",15,0),T(3,X5,2,1,"timepicker",16),f()),t&2){let e=m(3);h(),g("disabled",e.isDatePickerDisabled),h(2),g("ngIf",e.isRangePicker)}}function tW(t,n){if(t&1&&(Lt(0),d(1,"div",10),T(2,J5,2,7,"bs-days-calendar-view",11),se(3,"async"),f(),T(4,eW,4,2,"div",12),Ft()),t&2){let e=m(2);h(2),g("ngForOf",ye(3,2,e.daysCalendar$)),h(2),g("ngIf",e.withTimepicker)}}function nW(t,n){if(t&1){let e=N();d(0,"bs-month-calendar-view",18),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.monthHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.monthSelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function iW(t,n){if(t&1&&(d(0,"div",10),T(1,nW,1,3,"bs-month-calendar-view",17),se(2,"async"),f()),t&2){let e=m(2);h(),g("ngForOf",ye(2,1,e.monthsCalendar))}}function rW(t,n){if(t&1){let e=N();d(0,"bs-years-calendar-view",18),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.yearHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.yearSelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function oW(t,n){if(t&1&&(d(0,"div",10),T(1,rW,1,3,"bs-years-calendar-view",17),se(2,"async"),f()),t&2){let e=m(2);h(),g("ngForOf",ye(2,1,e.yearsCalendar))}}function sW(t,n){t&1&&(d(0,"div",19)(1,"button",20),y(2,"Apply"),f(),d(3,"button",21),y(4,"Cancel"),f()())}function aW(t,n){if(t&1){let e=N();d(0,"div",24)(1,"button",25),D("click",function(){C(e);let r=m(3);return w(r.setToday())}),y(2),f()()}if(t&2){let e=m(3);B("today-left",e.todayPos==="left")("today-right",e.todayPos==="right")("today-center",e.todayPos==="center"),h(2),H(e.todayBtnLbl)}}function lW(t,n){if(t&1){let e=N();d(0,"div",26)(1,"button",25),D("click",function(){C(e);let r=m(3);return w(r.clearDate())}),y(2),f()()}if(t&2){let e=m(3);B("clear-left",e.clearPos==="left")("clear-right",e.clearPos==="right")("clear-center",e.clearPos==="center"),h(2),H(e.clearBtnLbl)}}function cW(t,n){if(t&1&&(d(0,"div",19),T(1,aW,3,7,"div",22)(2,lW,3,7,"div",23),f()),t&2){let e=m(2);h(),g("ngIf",e.showTodayBtn),h(),g("ngIf",e.showClearBtn)}}function uW(t,n){if(t&1){let e=N();d(0,"div",27)(1,"bs-custom-date-view",28),D("onSelect",function(r){C(e);let o=m(2);return w(o.setRangeOnCalendar(r))}),f()()}if(t&2){let e=m(2);h(),g("selectedRange",e.chosenRange)("ranges",e.customRanges)("customRangeLabel",e.customRangeBtnLbl)}}function dW(t,n){if(t&1){let e=N();d(0,"div",3)(1,"div",4),D("@datepickerAnimation.done",function(){C(e);let r=m();return w(r.positionServiceEnable())}),d(2,"div",5),se(3,"async"),T(4,tW,5,4,"ng-container",6)(5,iW,3,3,"div",7)(6,oW,3,3,"div",7),f(),T(7,sW,5,0,"div",8)(8,cW,3,2,"div",8),f(),T(9,uW,2,3,"div",9),f()}if(t&2){let e=m();g("ngClass",e.containerClass),h(),g("@datepickerAnimation",e.animationState),h(),g("ngSwitch",ye(3,9,e.viewMode)),h(2),g("ngSwitchCase","day"),h(),g("ngSwitchCase","month"),h(),g("ngSwitchCase","year"),h(),g("ngIf",!1),h(),g("ngIf",e.showTodayBtn||e.showClearBtn),h(),g("ngIf",e.customRanges&&e.customRanges.length>0)}}function fW(t,n){if(t&1){let e=N();d(0,"bs-days-calendar-view",13),se(1,"async"),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.dayHoverHandler(r))})("onHoverWeek",function(r){C(e);let o=m(3);return w(o.weekHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.daySelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)("isDisabled",i.isDatePickerDisabled)("options",ye(1,5,i.options$))}}function hW(t,n){if(t&1&&I(0,"timepicker",15,1),t&2){let e=m(4);g("disabled",e.isDatePickerDisabled)}}function pW(t,n){if(t&1&&(d(0,"div",14),I(1,"timepicker",15,0),T(3,hW,2,1,"timepicker",16),f()),t&2){let e=m(3);h(),g("disabled",e.isDatePickerDisabled),h(2),g("ngIf",e.isRangePicker)}}function mW(t,n){if(t&1&&(Lt(0),d(1,"div",10),T(2,fW,2,7,"bs-days-calendar-view",11),se(3,"async"),f(),T(4,pW,4,2,"div",12),Ft()),t&2){let e=m(2);h(2),g("ngForOf",ye(3,2,e.daysCalendar$)),h(2),g("ngIf",e.withTimepicker)}}function gW(t,n){if(t&1){let e=N();d(0,"bs-month-calendar-view",18),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.monthHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.monthSelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function _W(t,n){if(t&1&&(d(0,"div",10),T(1,gW,1,3,"bs-month-calendar-view",17),se(2,"async"),f()),t&2){let e=m(2);h(),g("ngForOf",ye(2,1,e.monthsCalendar))}}function yW(t,n){if(t&1){let e=N();d(0,"bs-years-calendar-view",18),D("onNavigate",function(r){C(e);let o=m(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=m(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=m(3);return w(o.yearHoverHandler(r))})("onSelect",function(r){C(e);let o=m(3);return w(o.yearSelectHandler(r))}),f()}if(t&2){let e=n.$implicit,i=m(3);B("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function vW(t,n){if(t&1&&(d(0,"div",10),T(1,yW,1,3,"bs-years-calendar-view",17),se(2,"async"),f()),t&2){let e=m(2);h(),g("ngForOf",ye(2,1,e.yearsCalendar))}}function bW(t,n){t&1&&(d(0,"div",19)(1,"button",20),y(2,"Apply"),f(),d(3,"button",21),y(4,"Cancel"),f()())}function CW(t,n){if(t&1){let e=N();d(0,"div",24)(1,"button",25),D("click",function(){C(e);let r=m(3);return w(r.setToday())}),y(2),f()()}if(t&2){let e=m(3);B("today-left",e.todayPos==="left")("today-right",e.todayPos==="right")("today-center",e.todayPos==="center"),h(2),H(e.todayBtnLbl)}}function wW(t,n){if(t&1){let e=N();d(0,"div",26)(1,"button",25),D("click",function(){C(e);let r=m(3);return w(r.clearDate())}),y(2),f()()}if(t&2){let e=m(3);B("clear-left",e.clearPos==="left")("clear-right",e.clearPos==="right")("clear-center",e.clearPos==="center"),h(2),H(e.clearBtnLbl)}}function DW(t,n){if(t&1&&(d(0,"div",19),T(1,CW,3,7,"div",22)(2,wW,3,7,"div",23),f()),t&2){let e=m(2);h(),g("ngIf",e.showTodayBtn),h(),g("ngIf",e.showClearBtn)}}function MW(t,n){if(t&1){let e=N();d(0,"div",27)(1,"bs-custom-date-view",28),D("onSelect",function(r){C(e);let o=m(2);return w(o.setRangeOnCalendar(r))}),f()()}if(t&2){let e=m(2);h(),g("selectedRange",e.chosenRange)("ranges",e.customRanges)("customRangeLabel",e.customRangeBtnLbl)}}function SW(t,n){if(t&1){let e=N();d(0,"div",3)(1,"div",4),D("@datepickerAnimation.done",function(){C(e);let r=m();return w(r.positionServiceEnable())}),d(2,"div",5),se(3,"async"),T(4,mW,5,4,"ng-container",6)(5,_W,3,3,"div",7)(6,vW,3,3,"div",7),f(),T(7,bW,5,0,"div",8)(8,DW,3,2,"div",8),f(),T(9,MW,2,3,"div",9),f()}if(t&2){let e=m();g("ngClass",e.containerClass),h(),g("@datepickerAnimation",e.animationState),h(),g("ngSwitch",ye(3,9,e.viewMode)),h(2),g("ngSwitchCase","day"),h(),g("ngSwitchCase","month"),h(),g("ngSwitchCase","year"),h(),g("ngIf",!1),h(),g("ngIf",e.showTodayBtn||e.showClearBtn),h(),g("ngIf",e.customRanges&&e.customRanges.length>0)}}var ur=(()=>{class t{constructor(){this.adaptivePosition=!1,this.useUtc=!1,this.isAnimated=!1,this.startView="day",this.returnFocusToInput=!1,this.containerClass="theme-green",this.displayMonths=1,this.showWeekNumbers=!0,this.dateInputFormat="L",this.rangeSeparator=" - ",this.rangeInputFormat="L",this.monthTitle="MMMM",this.yearTitle="YYYY",this.dayLabel="D",this.monthLabel="MMMM",this.yearLabel="YYYY",this.weekNumbers="w",this.showTodayButton=!1,this.showClearButton=!1,this.todayPosition="center",this.clearPosition="right",this.todayButtonLabel="Today",this.clearButtonLabel="Clear",this.customRangeButtonLabel="Custom Range",this.withTimepicker=!1,this.allowedPositions=["top","bottom"],this.keepDatepickerOpened=!1,this.keepDatesOutOfRules=!1}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),mA="220ms cubic-bezier(0, 0, 0.2, 1)",$m=uo("datepickerAnimation",[Fr("animated-down",xt({height:"*",overflow:"hidden"})),ci("* => animated-down",[xt({height:0,overflow:"hidden"}),On(mA)]),Fr("animated-up",xt({height:"*",overflow:"hidden"})),ci("* => animated-up",[xt({height:"*",overflow:"hidden"}),On(mA)]),ci("* => unanimated",On("0s"))]),Um=class{constructor(){this.containerClass="",this.customRanges=[],this.chosenRange=[],this._daysCalendarSub=new We,this.selectedTimeSub=new We}set minDate(n){this._effects?.setMinDate(n)}set maxDate(n){this._effects?.setMaxDate(n)}set daysDisabled(n){this._effects?.setDaysDisabled(n)}set datesDisabled(n){this._effects?.setDatesDisabled(n)}set datesEnabled(n){this._effects?.setDatesEnabled(n)}set isDisabled(n){this._effects?.setDisabled(n)}set dateCustomClasses(n){this._effects?.setDateCustomClasses(n)}set dateTooltipTexts(n){this._effects?.setDateTooltipTexts(n)}set daysCalendar$(n){this._daysCalendar$=n,this._daysCalendarSub.unsubscribe(),this._daysCalendarSub.add(this._daysCalendar$.subscribe(e=>{this.multipleCalendars=!!e&&e.length>1}))}get daysCalendar$(){return this._daysCalendar$}setViewMode(n){}navigateTo(n){}dayHoverHandler(n){}weekHoverHandler(n){}monthHoverHandler(n){}yearHoverHandler(n){}timeSelectHandler(n,e){}daySelectHandler(n){}monthSelectHandler(n){}yearSelectHandler(n){}setRangeOnCalendar(n){}setToday(){}clearDate(){}_stopPropagation(n){n.stopPropagation()}},wt=(()=>{class t{static{this.CALCULATE="[datepicker] calculate dates matrix"}static{this.FORMAT="[datepicker] format datepicker values"}static{this.FLAG="[datepicker] set flags"}static{this.SELECT="[datepicker] select date"}static{this.NAVIGATE_OFFSET="[datepicker] shift view date"}static{this.NAVIGATE_TO="[datepicker] change view date"}static{this.SET_OPTIONS="[datepicker] update render options"}static{this.HOVER="[datepicker] hover date"}static{this.CHANGE_VIEWMODE="[datepicker] switch view mode"}static{this.SET_MIN_DATE="[datepicker] set min date"}static{this.SET_MAX_DATE="[datepicker] set max date"}static{this.SET_DAYSDISABLED="[datepicker] set days disabled"}static{this.SET_DATESDISABLED="[datepicker] set dates disabled"}static{this.SET_DATESENABLED="[datepicker] set dates enabled"}static{this.SET_IS_DISABLED="[datepicker] set is disabled"}static{this.SET_DATE_CUSTOM_CLASSES="[datepicker] set date custom classes"}static{this.SET_DATE_TOOLTIP_TEXTS="[datepicker] set date tooltip texts"}static{this.SET_LOCALE="[datepicker] set datepicker locale"}static{this.SELECT_TIME="[datepicker] select time"}static{this.SELECT_RANGE="[daterangepicker] select dates range"}calculate(){return{type:t.CALCULATE}}format(){return{type:t.FORMAT}}flag(){return{type:t.FLAG}}select(e){return{type:t.SELECT,payload:e}}selectTime(e,i){return{type:t.SELECT_TIME,payload:{date:e,index:i}}}changeViewMode(e){return{type:t.CHANGE_VIEWMODE,payload:e}}navigateTo(e){return{type:t.NAVIGATE_TO,payload:e}}navigateStep(e){return{type:t.NAVIGATE_OFFSET,payload:e}}setOptions(e){return{type:t.SET_OPTIONS,payload:e}}selectRange(e){return{type:t.SELECT_RANGE,payload:e}}hoverDay(e){return{type:t.HOVER,payload:e.isHovered?e.cell.date:null}}minDate(e){return{type:t.SET_MIN_DATE,payload:e}}maxDate(e){return{type:t.SET_MAX_DATE,payload:e}}daysDisabled(e){return{type:t.SET_DAYSDISABLED,payload:e}}datesDisabled(e){return{type:t.SET_DATESDISABLED,payload:e}}datesEnabled(e){return{type:t.SET_DATESENABLED,payload:e}}isDisabled(e){return{type:t.SET_IS_DISABLED,payload:e}}setDateCustomClasses(e){return{type:t.SET_DATE_CUSTOM_CLASSES,payload:e}}setDateTooltipTexts(e){return{type:t.SET_DATE_TOOLTIP_TEXTS,payload:e}}setLocale(e){return{type:t.SET_LOCALE,payload:e}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),nw=(()=>{class t{constructor(){this._defaultLocale="en",this._locale=new Ve(this._defaultLocale),this._localeChange=this._locale.asObservable()}get locale(){return this._locale}get localeChange(){return this._localeChange}get currentLocale(){return this._locale.getValue()}use(e){e!==this.currentLocale&&this._locale.next(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),ss=(()=>{class t{constructor(e,i){this._actions=e,this._localeService=i,this._subs=[]}init(e){return this._store=e,this}setValue(e){this._store?.dispatch(this._actions.select(e))}setRangeValue(e){this._store?.dispatch(this._actions.selectRange(e))}setMinDate(e){return this._store?.dispatch(this._actions.minDate(e)),this}setMaxDate(e){return this._store?.dispatch(this._actions.maxDate(e)),this}setDaysDisabled(e){return this._store?.dispatch(this._actions.daysDisabled(e)),this}setDatesDisabled(e){return this._store?.dispatch(this._actions.datesDisabled(e)),this}setDatesEnabled(e){return this._store?.dispatch(this._actions.datesEnabled(e)),this}setDisabled(e){return this._store?.dispatch(this._actions.isDisabled(e)),this}setDateCustomClasses(e){return this._store?.dispatch(this._actions.setDateCustomClasses(e)),this}setDateTooltipTexts(e){return this._store?.dispatch(this._actions.setDateTooltipTexts(e)),this}setOptions(e){let i=Object.assign({locale:this._localeService.currentLocale},e);return this._store?.dispatch(this._actions.setOptions(i)),this}setBindings(e){return this._store?(e.selectedTime=this._store.select(i=>i.selectedTime).pipe(he(i=>!!i)),e.daysCalendar$=this._store.select(i=>i.flaggedMonths).pipe(he(i=>!!i)),e.monthsCalendar=this._store.select(i=>i.flaggedMonthsCalendar).pipe(he(i=>!!i)),e.yearsCalendar=this._store.select(i=>i.yearsCalendarFlagged).pipe(he(i=>!!i)),e.viewMode=this._store.select(i=>i.view?.mode),e.options$=Eo([this._store.select(i=>i.showWeekNumbers),this._store.select(i=>i.displayMonths)]).pipe(q(i=>({showWeekNumbers:i[0],displayMonths:i[1]}))),this):this}setEventHandlers(e){return e.setViewMode=i=>{this._store?.dispatch(this._actions.changeViewMode(i))},e.navigateTo=i=>{this._store?.dispatch(this._actions.navigateStep(i.step))},e.dayHoverHandler=i=>{let r=i.cell;r.isOtherMonth||r.isDisabled||(this._store?.dispatch(this._actions.hoverDay(i)),r.isHovered=i.isHovered)},e.monthHoverHandler=i=>{i.cell.isHovered=i.isHovered},e.yearHoverHandler=i=>{i.cell.isHovered=i.isHovered},this}registerDatepickerSideEffects(){return this._store?(this._subs.push(this._store.select(e=>e.view).subscribe(()=>{this._store?.dispatch(this._actions.calculate())})),this._subs.push(this._store.select(e=>e.monthsModel).pipe(he(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.format()))),this._subs.push(this._store.select(e=>e.formattedMonths).pipe(he(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.selectedDate).pipe(he(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.selectedRange).pipe(he(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.monthsCalendar).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.yearsCalendarModel).pipe(he(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.hoveredDate).pipe(he(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.dateCustomClasses).pipe(he(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.dateTooltipTexts).pipe(he(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._localeService.localeChange.subscribe(e=>this._store?.dispatch(this._actions.setLocale(e)))),this):this}destroy(){for(let e of this._subs)e.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(j(wt),j(nw))}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),TW={width:7,height:6},EW=24*60*60*1e3;var xW={date:new Date,mode:"day"},CA=Object.assign(new ur,{locale:"en",view:xW,selectedRange:[],selectedTime:[],monthViewOptions:TW});function IW(t,n){if(uk(t,n.firstDayOfWeek))return t;let e=cr(t),i=kW(e,n.firstDayOfWeek);return en(t,{day:-i})}function kW(t,n){let e=Number(n);if(isNaN(e))return 0;if(e===0)return t;let i=t-e%7;return i<0?i+7:i}function ew(t,n,e){let i=n&&ts(Cd(t,"month"),n,"day"),r=e&&yo(jr(t,"month"),e,"day");return i||r||!1}function Sd(t,n,e){let i=n&&ts(Cd(t,"year"),n,"day"),r=e&&yo(jr(t,"year"),e,"day");return i||r||!1}function iw(t,n,e){return!n||!ut(n)||!n.length?!1:e&&e==="year"&&!n[0].getDate()?n.some(i=>wd(t,i,"year")):n.some(i=>wd(t,i,"date"))}function rw(t,n,e){return!n||!ut(n)||!n.length?!1:!n.some(i=>wd(t,i,e||"date"))}function wA(t,n=0){let e=t&&t.yearsCalendarModel&&t.yearsCalendarModel[n];return e?.years[0]&&e.years[0][0]&&e.years[0][0].date}function AW(t,n){return!t||!n||!t.length&&!t[0].value||t.forEach(e=>(!e||!e.value||e.value instanceof Date||!(e.value instanceof Array&&e.value.length)||(e.value=MA(e.value,n)),t)),t}function DA(t,n){return!t||!n||t instanceof Array&&!t.length||t instanceof Date?t:MA(t,n)}function MA(t,n){return t instanceof Array?t.map(i=>i&&(yo(i,n,"date")&&(i=n),i)):t}function gA(t){return t&&SA(t)}function _A(t){return t?.length&&t.map(n=>n&&SA(n)),t}function SA(t){let n=new Date;return t.setMilliseconds(n.getMilliseconds()),t.setSeconds(n.getSeconds()),t.setMinutes(n.getMinutes()),t.setHours(n.getHours()),t}function ow(t,n){let e=t.initialDate,i=new Array(t.height);for(let r=0;rs),month:e}}function PW(t,n,e){return{month:t.month,monthTitle:fi(t.month,n.monthTitle,n.locale),yearTitle:fi(t.month,n.yearTitle,n.locale),weekNumbers:OW(t.daysMatrix,n.weekNumbers,n.locale),weekdays:RW(n.locale),weeks:t.daysMatrix.map((i,r)=>({days:i.map((o,s)=>({date:o,label:fi(o,n.dayLabel,n.locale),monthIndex:e,weekIndex:r,dayIndex:s}))})),hideLeftArrow:!1,hideRightArrow:!1,disableLeftArrow:!1,disableRightArrow:!1}}function OW(t,n,e){return t.map(i=>i[0]?fi(i[0],n,e):"")}function RW(t){let n=mn(t),e=n.weekdaysShort(),i=n.firstDayOfWeek();return[...e.slice(i),...e.slice(0,i)]}function NW(t,n){return t.weeks.forEach(e=>{e.days.forEach((i,r)=>{let o=!_a(i.date,t.month),s=!o&&_o(i.date,n.hoveredDate),a=!o&&n.selectedRange&&_o(i.date,n.selectedRange[0]),l=!o&&n.selectedRange&&_o(i.date,n.selectedRange[1]),c=!o&&_o(i.date,n.selectedDate)||a||l,u=!o&&n.selectedRange&&LW(i.date,n.selectedRange,n.hoveredDate),p=n.isDisabled||ts(i.date,n.minDate,"day")||yo(i.date,n.maxDate,"day")||Ik(i.date,n.daysDisabled)||iw(i.date,n.datesDisabled)||rw(i.date,n.datesEnabled),v=new Date,_=!o&&_o(i.date,v),M=n.dateCustomClasses&&n.dateCustomClasses.map(F=>_o(i.date,F.date)?F.classes:[]).reduce((F,K)=>F.concat(K),[]).join(" ")||"",x=n.dateTooltipTexts&&n.dateTooltipTexts.map(F=>_o(i.date,F.date)?F.tooltipText:"").reduce((F,K)=>(F.push(K),F),[]).join(" ")||"",P=Object.assign({},i,{isOtherMonth:o,isHovered:s,isSelected:c,isSelectionStart:a,isSelectionEnd:l,isInRange:u,isDisabled:p,isToday:_,customClasses:M,tooltipText:x});(i.isOtherMonth!==P.isOtherMonth||i.isHovered!==P.isHovered||i.isSelected!==P.isSelected||i.isSelectionStart!==P.isSelectionStart||i.isSelectionEnd!==P.isSelectionEnd||i.isDisabled!==P.isDisabled||i.isInRange!==P.isInRange||i.customClasses!==P.customClasses||i.tooltipText!==P.tooltipText)&&(e.days[r]=P)})}),t.hideLeftArrow=n.isDisabled||!!n.monthIndex&&n.monthIndex>0&&n.monthIndex!==n.displayMonths,t.hideRightArrow=n.isDisabled||(!!n.monthIndex||n.monthIndex===0)&&!!n.displayMonths&&n.monthIndexn[0]&&t<=n[1]:e?t>n[0]&&t<=e:!1}function yA(t,n){return n?t>=n:!0}var FW=4,VW=3,jW={month:1};function TA(t,n){let e=jr(t,"year");return{months:ow({width:VW,height:FW,initialDate:e,shift:jW},o=>({date:o,label:fi(o,n.monthLabel,n.locale)})),monthTitle:"",yearTitle:fi(t,n.yearTitle,n.locale),hideRightArrow:!1,hideLeftArrow:!1,disableRightArrow:!1,disableLeftArrow:!1}}function HW(t,n){return t.months.forEach((e,i)=>{e.forEach((r,o)=>{let s,a=_a(r.date,n.hoveredMonth),l=n.isDisabled||iw(r.date,n.datesDisabled)||rw(r.date,n.datesEnabled,"month")||ew(r.date,n.minDate,n.maxDate);!n.selectedDate&&n.selectedRange?(s=_a(r.date,n.selectedRange[0]),s||(s=_a(r.date,n.selectedRange[1]))):s=_a(r.date,n.selectedDate);let c=Object.assign(r,{isHovered:a,isDisabled:l,isSelected:s});(r.isHovered!==c.isHovered||r.isDisabled!==c.isDisabled||r.isSelected!==c.isSelected)&&(t.months[i][o]=c)})}),t.hideLeftArrow=!!n.monthIndex&&n.monthIndex>0&&n.monthIndex!==n.displayMonths,t.hideRightArrow=(!!n.monthIndex||n.monthIndex===0)&&(!!n.displayMonths||n.displayMonths===0)&&n.monthIndex({date:a,label:fi(a,n.yearLabel,n.locale)})),s=$W(o,n);return{years:o,monthTitle:"",yearTitle:s,hideLeftArrow:!1,hideRightArrow:!1,disableLeftArrow:!1,disableRightArrow:!1}}function UW(t,n){return n&&t.getFullYear()>=n.getFullYear()&&t.getFullYear(){r.forEach((s,a)=>{let l,c=ya(s.date,n.hoveredYear),u=n.isDisabled||iw(s.date,n.datesDisabled,"year")||rw(s.date,n.datesEnabled,"year")||Sd(s.date,n.minDate,n.maxDate);!n.selectedDate&&n.selectedRange?(l=ya(s.date,n.selectedRange[0]),l||(l=ya(s.date,n.selectedRange[1]))):l=ya(s.date,n.selectedDate);let p=Object.assign(s,{isHovered:c,isDisabled:u,isSelected:l});(s.isHovered!==p.isHovered||s.isDisabled!==p.isDisabled||s.isSelected!==p.isSelected)&&(t.years[o][a]=p)})}),t.hideLeftArrow=!!n.yearIndex&&n.yearIndex>0&&n.yearIndex!==n.displayMonths,t.hideRightArrow=!!n.yearIndex&&!!n.displayMonths&&n.yearIndexs)),e.value instanceof Date&&(e.selectedDate=e.value,e.selectedTime=[e.value])),Object.assign({},t,e)}case wt.SELECT_RANGE:{if(!t.view)return t;let e={selectedRange:n.payload,view:t.view};e.selectedRange?.forEach((s,a)=>{if(Array.isArray(t.selectedTime)){let l=t.selectedTime[a];l&&tw(s,l)}});let i=t.view.mode,r=n.payload&&n.payload[0]||t.view.date,o=XC(r,t.minDate,t.maxDate);return e.view={mode:i,date:o},Object.assign({},t,e)}case wt.SET_MIN_DATE:return Object.assign({},t,{minDate:n.payload});case wt.SET_MAX_DATE:return Object.assign({},t,{maxDate:n.payload});case wt.SET_IS_DISABLED:return Object.assign({},t,{isDisabled:n.payload});case wt.SET_DATE_CUSTOM_CLASSES:return Object.assign({},t,{dateCustomClasses:n.payload});case wt.SET_DATE_TOOLTIP_TEXTS:return Object.assign({},t,{dateTooltipTexts:n.payload});default:return t}}function YW(t){if(!t.view)return t;let n;t.displayOneMonthRange&&IA(t.view.date,t.minDate,t.maxDate)?n=1:n=t.displayMonths||1;let e=t.view.date;if(t.view.mode==="day"&&t.monthViewOptions){t.showPreviousMonth&&t.selectedRange&&t.selectedRange.length===0&&(e=en(e,{month:-1})),t.monthViewOptions.firstDayOfWeek=mn(t.locale).firstDayOfWeek();let i=new Array(n);for(let r=0;rt.monthViewOptions?JC(o.month,t.monthViewOptions):null).filter(o=>o!==null))}return Object.assign({},t,{monthsModel:i})}if(t.view.mode==="month"){let i=new Array(n);for(let r=0;rPW(r,Td(t),o));return Object.assign({},t,{formattedMonths:i})}let n=t.displayMonths||1,e=t.view.date;if(t.view.mode==="month"){let i=new Array(n);for(let r=0;rNW(i,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,daysDisabled:t.daysDisabled,datesDisabled:t.datesDisabled,datesEnabled:t.datesEnabled,hoveredDate:t.hoveredDate,selectedDate:t.selectedDate,selectedRange:t.selectedRange,displayMonths:n,dateCustomClasses:t.dateCustomClasses,dateTooltipTexts:t.dateTooltipTexts,monthIndex:r}));return Object.assign({},t,{flaggedMonths:e})}if(t.view.mode==="month"&&t.monthsCalendar){let e=t.monthsCalendar.map((i,r)=>HW(i,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,hoveredMonth:t.hoveredMonth,selectedDate:t.selectedDate,datesDisabled:t.datesDisabled,datesEnabled:t.datesEnabled,selectedRange:t.selectedRange,displayMonths:n,monthIndex:r}));return Object.assign({},t,{flaggedMonthsCalendar:e})}if(t.view.mode==="year"&&t.yearsCalendarModel){let e=t.yearsCalendarModel.map((i,r)=>zW(i,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,hoveredYear:t.hoveredYear,selectedDate:t.selectedDate,datesDisabled:t.datesDisabled,datesEnabled:t.datesEnabled,selectedRange:t.selectedRange,displayMonths:n,yearIndex:r}));return Object.assign({},t,{yearsCalendarFlagged:e})}return t}function qW(t,n){if(!t.view)return t;let e=QW(t,n);if(!e)return t;let i={view:{mode:t.view.mode,date:e}};return Object.assign({},t,i)}function QW(t,n){if(t.view){if(t.view.mode==="year"&&t.minMode==="year"){let e=wA(t,0);if(e){let i=en(e,{year:-EA});return en(i,n.payload)}}return en(jr(t.view.date,"month"),n.payload)}}function Td(t){return{locale:t.locale,monthTitle:t.monthTitle,yearTitle:t.yearTitle,dayLabel:t.dayLabel,monthLabel:t.monthLabel,yearLabel:t.yearLabel,weekNumbers:t.weekNumbers}}function XC(t,n,e){let i=Array.isArray(t)?t[0]:t;return n&&yo(n,i,"day")?n:e&&ts(e,i,"day")?e:i}function IA(t,n,e){return e&&wd(e,t,"day")?!0:n&&e&&n.getMonth()===e.getMonth()}var as=(()=>{class t extends ac{constructor(){let e=new Ve({type:"[datepicker] dispatcher init"}),i=new sc(CA,e,vA);super(e,vA,i)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),Ym=(()=>{class t{constructor(){this.onSelect=new O}selectFromRanges(e){this.onSelect.emit(e)}compareRanges(e){return JSON.stringify(e?.value)===JSON.stringify(this.selectedRange)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-custom-date-view"]],inputs:{ranges:"ranges",selectedRange:"selectedRange",customRangeLabel:"customRangeLabel"},outputs:{onSelect:"onSelect"},decls:2,vars:1,consts:[[1,"bs-datepicker-predefined-btns"],["type","button","class","btn",3,"selected","click",4,"ngFor","ngForOf"],["type","button",1,"btn",3,"click"]],template:function(i,r){i&1&&(d(0,"div",0),T(1,n5,2,3,"button",1),f()),i&2&&(h(),g("ngForOf",r.ranges))},dependencies:[Ge],encapsulation:2,changeDetection:0})}}return t})(),fc=function(t){return t[t.UP=0]="UP",t[t.DOWN=1]="DOWN",t}(fc||{}),lw=(()=>{class t{constructor(){this.isDisabled=!1,this.onNavigate=new O,this.onViewMode=new O}navTo(e){this.onNavigate.emit(e?fc.DOWN:fc.UP)}view(e){this.isDisabled||this.onViewMode.emit(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-datepicker-navigation-view"]],inputs:{calendar:"calendar",isDisabled:"isDisabled"},outputs:{onNavigate:"onNavigate",onViewMode:"onViewMode"},decls:12,vars:9,consts:[["type","button",1,"previous",3,"click","disabled"],[4,"ngIf"],["type","button",1,"current",3,"click","disabled"],["type","button",1,"next",3,"click","disabled"]],template:function(i,r){i&1&&(d(0,"button",0),D("click",function(){return r.navTo(!0)}),d(1,"span"),y(2,"\u2039"),f()(),T(3,i5,5,2,"ng-container",1),y(4," \u200B "),d(5,"button",2),D("click",function(){return r.view("year")}),d(6,"span"),y(7),f()(),y(8," \u200B "),d(9,"button",3),D("click",function(){return r.navTo(!1)}),d(10,"span"),y(11,"\u203A"),f()()),i&2&&(dn("visibility",r.calendar.hideLeftArrow?"hidden":"visible"),g("disabled",r.calendar.disableLeftArrow),h(3),g("ngIf",r.calendar&&r.calendar.monthTitle),h(2),g("disabled",r.isDisabled),h(2),H(r.calendar.yearTitle),h(2),dn("visibility",r.calendar.hideRightArrow?"hidden":"visible"),g("disabled",r.calendar.disableRightArrow))},dependencies:[Te],encapsulation:2,changeDetection:0})}}return t})(),KW=(()=>{class t{constructor(){this.ampm="ok",this.hours=0,this.minutes=0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-timepicker"]],decls:16,vars:3,consts:[[1,"bs-timepicker-container"],[1,"bs-timepicker-controls"],["type","button",1,"bs-decrease"],["type","text","placeholder","00",3,"value"],["type","button",1,"bs-increase"],["type","button",1,"switch-time-format"],["src","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAKCAYAAABi8KSDAAABSElEQVQYV3XQPUvDUBQG4HNuagtVqc6KgouCv6GIuIntYBLB9hcIQpLStCAIV7DYmpTcRWcXqZio3Vwc/UCc/QEqfgyKGbr0I7nS1EiHeqYzPO/h5SD0jaxUZjmSLCB+OFb+UFINFwASAEAdpu9gaGXVyAHHFQBkHpKHc6a9dzECvADyY9sqlAMsK9W0jzxDXqeytr3mhQckxSji27TJJ5/rPmIpwJJq3HrtduriYOurv1a4i1p5HnhkG9OFymi0ReoO05cGwb+ayv4dysVygjeFmsP05f8wpZQ8fsdvfmuY9zjWSNqUtgYFVnOVReILYoBFzdQI5/GGFzNHhGbeZnopDGU29sZbscgldmC99w35VOATTycIMMcBXIfpSVGzZhA6C8hh00conln6VQ9TGgV32OEAKQC4DrBq7CJwd0ggR7Vq/rPrfgB+C3sGypY5DAAAAABJRU5ErkJggg==","alt",""]],template:function(i,r){i&1&&(d(0,"div",0)(1,"div",1)(2,"button",2),y(3,"-"),f(),I(4,"input",3),d(5,"button",4),y(6,"+"),f()(),d(7,"div",1)(8,"button",2),y(9,"-"),f(),I(10,"input",3),d(11,"button",4),y(12,"+"),f()(),d(13,"button",5),y(14),I(15,"img",6),f()()),i&2&&(h(4),g("value",r.hours),h(6),g("value",r.minutes),h(4),oe("",r.ampm," "))},encapsulation:2})}}return t})(),ZW=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-current-date"]],inputs:{title:"title"},decls:3,vars:1,consts:[[1,"current-timedate"]],template:function(i,r){i&1&&(d(0,"div",0)(1,"span"),y(2),f()()),i&2&&(h(2),H(r.title))},encapsulation:2})}}return t})(),cw=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-calendar-layout"]],ngContentSelectors:o5,decls:6,vars:2,consts:[["title","hey there",4,"ngIf"],[1,"bs-datepicker-head"],[1,"bs-datepicker-body"],[4,"ngIf"],["title","hey there"]],template:function(i,r){i&1&&(An(r5),T(0,s5,1,0,"bs-current-date",0),d(1,"div",1),Cn(2),f(),d(3,"div",2),Cn(4,1),f(),T(5,a5,1,0,"bs-timepicker",3)),i&2&&(g("ngIf",!1),h(5),g("ngIf",!1))},dependencies:[Te,ZW,KW],encapsulation:2})}}return t})(),Wm=(()=>{class t{constructor(){this.onNavigate=new O,this.onViewMode=new O,this.onSelect=new O,this.onHover=new O}navigateTo(e){let i=fc.DOWN===e?-1:1;this.onNavigate.emit({step:{year:i*zm}})}viewYear(e){this.onSelect.emit(e)}hoverYear(e,i){this.onHover.emit({cell:e,isHovered:i})}changeViewMode(e){this.onViewMode.emit(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-years-calendar-view"]],inputs:{calendar:"calendar"},outputs:{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"},decls:5,vars:2,consts:[[3,"onNavigate","onViewMode","calendar"],["role","grid",1,"years"],[4,"ngFor","ngForOf"],["role","gridcell",3,"disabled","is-highlighted","click","mouseenter","mouseleave",4,"ngFor","ngForOf"],["role","gridcell",3,"click","mouseenter","mouseleave"]],template:function(i,r){i&1&&(d(0,"bs-calendar-layout")(1,"bs-datepicker-navigation-view",0),D("onNavigate",function(s){return r.navigateTo(s)})("onViewMode",function(s){return r.changeViewMode(s)}),f(),d(2,"table",1)(3,"tbody"),T(4,c5,2,1,"tr",2),f()()()),i&2&&(h(),g("calendar",r.calendar),h(3),g("ngForOf",r.calendar==null?null:r.calendar.years))},dependencies:[cw,lw,Ge],encapsulation:2})}}return t})(),Gm=(()=>{class t{constructor(){this.onNavigate=new O,this.onViewMode=new O,this.onSelect=new O,this.onHover=new O}navigateTo(e){let i=fc.DOWN===e?-1:1;this.onNavigate.emit({step:{year:i}})}viewMonth(e){this.onSelect.emit(e)}hoverMonth(e,i){this.onHover.emit({cell:e,isHovered:i})}changeViewMode(e){this.onViewMode.emit(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-month-calendar-view"]],inputs:{calendar:"calendar"},outputs:{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"},decls:5,vars:2,consts:[[3,"onNavigate","onViewMode","calendar"],["role","grid",1,"months"],[4,"ngFor","ngForOf"],["role","gridcell",3,"disabled","is-highlighted","click","mouseenter","mouseleave",4,"ngFor","ngForOf"],["role","gridcell",3,"click","mouseenter","mouseleave"]],template:function(i,r){i&1&&(d(0,"bs-calendar-layout")(1,"bs-datepicker-navigation-view",0),D("onNavigate",function(s){return r.navigateTo(s)})("onViewMode",function(s){return r.changeViewMode(s)}),f(),d(2,"table",1)(3,"tbody"),T(4,d5,2,1,"tr",2),f()()()),i&2&&(h(),g("calendar",r.calendar),h(3),g("ngForOf",r.calendar==null?null:r.calendar.months))},dependencies:[cw,lw,Ge],encapsulation:2})}}return t})(),JW=(()=>{class t{constructor(e,i,r){this._config=e,this._elRef=i,this._renderer=r,this.day={date:new Date,label:""}}ngOnInit(){this.day?.isToday&&this._config&&this._config.customTodayClass&&this._renderer.addClass(this._elRef.nativeElement,this._config.customTodayClass),typeof this.day?.customClasses=="string"&&this.day?.customClasses.split(" ").filter(e=>e).forEach(e=>{this._renderer.addClass(this._elRef.nativeElement,e)})}static{this.\u0275fac=function(i){return new(i||t)(b(ur),b(Y),b(Ae))}}static{this.\u0275cmp=L({type:t,selectors:[["","bsDatepickerDayDecorator",""]],hostVars:16,hostBindings:function(i,r){i&2&&B("disabled",r.day.isDisabled)("is-highlighted",r.day.isHovered)("is-other-month",r.day.isOtherMonth)("is-active-other-month",r.day.isOtherMonthHovered)("in-range",r.day.isInRange)("select-start",r.day.isSelectionStart)("select-end",r.day.isSelectionEnd)("selected",r.day.isSelected)},inputs:{day:"day"},attrs:f5,decls:1,vars:1,template:function(i,r){i&1&&y(0),i&2&&H(r.day&&r.day.label||"")},encapsulation:2,changeDetection:0})}}return t})(),Ed=(()=>{class t{constructor(e){this._config=e,this.onNavigate=new O,this.onViewMode=new O,this.onSelect=new O,this.onHover=new O,this.onHoverWeek=new O,this.isiOS=/iPad|iPhone|iPod/.test(navigator.platform)||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1,this._config.dateTooltipTexts&&this._config.dateTooltipTexts.length>0&&(this.isShowTooltip=!0)}navigateTo(e){let i=fc.DOWN===e?-1:1;this.onNavigate.emit({step:{month:i}})}changeViewMode(e){this.onViewMode.emit(e)}selectDay(e){this.onSelect.emit(e)}selectWeek(e){if(!this._config.selectWeek&&!this._config.selectWeekDateRange||e.days.length===0)return;if(this._config.selectWeek&&e.days[0]&&!e.days[0].isDisabled&&this._config.selectFromOtherMonth){this.onSelect.emit(e.days[0]);return}let i=e.days.find(r=>(this._config.selectFromOtherMonth||!r.isOtherMonth)&&!r.isDisabled);if(this.onSelect.emit(i),this._config.selectWeekDateRange){let o=e.days.slice(0).reverse().find(s=>(this._config.selectFromOtherMonth||!s.isOtherMonth)&&!s.isDisabled);this.onSelect.emit(o)}}weekHoverHandler(e,i){if(!this._config.selectWeek&&!this._config.selectWeekDateRange)return;e.days.find(o=>(this._config.selectFromOtherMonth||!o.isOtherMonth)&&!o.isDisabled)&&(e.isHovered=i,this.isWeekHovered=i,this.onHoverWeek.emit(e))}hoverDay(e,i){this._config.selectFromOtherMonth&&e.isOtherMonth&&(e.isOtherMonthHovered=i),this._config.dateTooltipTexts&&(e.tooltipText="",this._config.dateTooltipTexts.forEach(r=>{if(_o(r.date,e.date)){e.tooltipText=r.tooltipText;return}})),this.onHover.emit({cell:e,isHovered:i})}static{this.\u0275fac=function(i){return new(i||t)(b(ur))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-days-calendar-view"]],inputs:{calendar:"calendar",options:"options",isDisabled:"isDisabled"},outputs:{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"},decls:9,vars:5,consts:[[3,"onNavigate","onViewMode","calendar","isDisabled"],["role","grid",1,"days","weeks"],[4,"ngIf"],["aria-label","weekday",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],["aria-label","weekday"],["class","week",3,"active-week",4,"ngIf"],["role","gridcell",4,"ngFor","ngForOf"],[1,"week"],[3,"click",4,"ngIf"],[3,"click","mouseenter","mouseleave",4,"ngIf"],[3,"click"],[3,"click","mouseenter","mouseleave"],["role","gridcell"],["bsDatepickerDayDecorator","",3,"day","tooltip","click","mouseenter","mouseleave",4,"ngIf"],["bsDatepickerDayDecorator","",3,"day","click","mouseenter","mouseleave",4,"ngIf"],["bsDatepickerDayDecorator","",3,"day","click",4,"ngIf"],["bsDatepickerDayDecorator","",3,"click","mouseenter","mouseleave","day","tooltip"],["bsDatepickerDayDecorator","",3,"click","mouseenter","mouseleave","day"],["bsDatepickerDayDecorator","",3,"click","day"]],template:function(i,r){i&1&&(d(0,"bs-calendar-layout")(1,"bs-datepicker-navigation-view",0),D("onNavigate",function(s){return r.navigateTo(s)})("onViewMode",function(s){return r.changeViewMode(s)}),f(),d(2,"table",1)(3,"thead")(4,"tr"),T(5,h5,1,0,"th",2)(6,p5,2,1,"th",3),f()(),d(7,"tbody"),T(8,w5,3,2,"tr",4),f()()()),i&2&&(h(),g("calendar",r.calendar)("isDisabled",!!r.isDisabled),h(4),g("ngIf",r.options&&r.options.showWeekNumbers),h(),g("ngForOf",r.calendar.weekdays),h(2),g("ngForOf",r.calendar.weeks))},dependencies:[cw,lw,Te,Ge,JW,ZC,pA],encapsulation:2})}}return t})(),uw=(()=>{class t extends Um{set value(e){this._effects?.setValue(e)}get isDatePickerDisabled(){return!!this._config.isDisabled}get isDatepickerDisabled(){return this.isDatePickerDisabled?"":null}get isDatepickerReadonly(){return this.isDatePickerDisabled?"":null}constructor(e,i,r,o,s,a,l){super(),this._config=i,this._store=r,this._element=o,this._actions=s,this._positionService=l,this.valueChange=new O,this.animationState="void",this.isRangePicker=!1,this._subs=[],this._effects=a,e.setStyle(o.nativeElement,"display","block"),e.setStyle(o.nativeElement,"position","absolute")}ngOnInit(){this._positionService.setOptions({modifiers:{flip:{enabled:this._config.adaptivePosition},preventOverflow:{enabled:this._config.adaptivePosition}},allowedPositions:this._config.allowedPositions}),this._positionService.event$?.pipe(Mt(1)).subscribe(()=>{if(this._positionService.disable(),this._config.isAnimated){this.animationState=this.isTopPosition?"animated-up":"animated-down";return}this.animationState="unanimated"}),this.isOtherMonthsActive=this._config.selectFromOtherMonth,this.containerClass=this._config.containerClass,this.showTodayBtn=this._config.showTodayButton,this.todayBtnLbl=this._config.todayButtonLabel,this.todayPos=this._config.todayPosition,this.showClearBtn=this._config.showClearButton,this.clearBtnLbl=this._config.clearButtonLabel,this.clearPos=this._config.clearPosition,this.customRangeBtnLbl=this._config.customRangeButtonLabel,this.withTimepicker=this._config.withTimepicker,this._effects?.init(this._store).setOptions(this._config).setBindings(this).setEventHandlers(this).registerDatepickerSideEffects();let e;this._subs.push(this._store.select(i=>i.selectedDate).subscribe(i=>{e=i,this.valueChange.emit(i)})),this._subs.push(this._store.select(i=>i.selectedTime).subscribe(i=>{!i||!i[0]||!(i[0]instanceof Date)||i[0]===e||this.valueChange.emit(i[0])})),this._store.dispatch(this._actions.changeViewMode(this._config.startView))}ngAfterViewInit(){this.selectedTimeSub.add(this.selectedTime?.subscribe(e=>{Array.isArray(e)&&e.length>=1&&this.startTimepicker?.writeValue(e[0])})),this.startTimepicker?.registerOnChange(e=>{this.timeSelectHandler(e,0)})}get isTopPosition(){return this._element.nativeElement.classList.contains("top")}positionServiceEnable(){this._positionService.enable()}timeSelectHandler(e,i){this._store.dispatch(this._actions.selectTime(e,i))}daySelectHandler(e){!e||(this.isOtherMonthsActive?e.isDisabled:e.isOtherMonth||e.isDisabled)||this._store.dispatch(this._actions.select(e.date))}monthSelectHandler(e){!e||e.isDisabled||this._store.dispatch(this._actions.navigateTo({unit:{month:Ne(e.date),year:$t(e.date)},viewMode:"day"}))}yearSelectHandler(e){!e||e.isDisabled||this._store.dispatch(this._actions.navigateTo({unit:{year:$t(e.date)},viewMode:"month"}))}setToday(){this._store.dispatch(this._actions.select(new Date))}clearDate(){this._store.dispatch(this._actions.select(void 0))}ngOnDestroy(){for(let e of this._subs)e.unsubscribe();this.selectedTimeSub.unsubscribe(),this._effects?.destroy()}static{this.\u0275fac=function(i){return new(i||t)(b(Ae),b(ur),b(as),b(Y),b(wt),b(ss),b(cn))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-datepicker-container"]],viewQuery:function(i,r){if(i&1&&jt(bA,5),i&2){let o;et(o=tt())&&(r.startTimepicker=o.first)}},hostAttrs:["role","dialog","aria-label","calendar",1,"bottom"],hostVars:2,hostBindings:function(i,r){i&1&&D("click",function(s){return r._stopPropagation(s)}),i&2&&ee("disabled",r.isDatepickerDisabled)("readonly",r.isDatepickerReadonly)},features:[pe([as,ss,wt]),Tt],decls:2,vars:3,consts:[["startTP",""],["endTP",""],["class","bs-datepicker",3,"ngClass",4,"ngIf"],[1,"bs-datepicker",3,"ngClass"],[1,"bs-datepicker-container"],["role","application",1,"bs-calendar-container",3,"ngSwitch"],[4,"ngSwitchCase"],["class","bs-media-container",4,"ngSwitchCase"],["class","bs-datepicker-buttons",4,"ngIf"],["class","bs-datepicker-custom-range",4,"ngIf"],[1,"bs-media-container"],[3,"bs-datepicker-multiple","calendar","isDisabled","options","onNavigate","onViewMode","onHover","onHoverWeek","onSelect",4,"ngFor","ngForOf"],["class","bs-timepicker-in-datepicker-container",4,"ngIf"],[3,"onNavigate","onViewMode","onHover","onHoverWeek","onSelect","calendar","isDisabled","options"],[1,"bs-timepicker-in-datepicker-container"],[3,"disabled"],[3,"disabled",4,"ngIf"],[3,"bs-datepicker-multiple","calendar","onNavigate","onViewMode","onHover","onSelect",4,"ngFor","ngForOf"],[3,"onNavigate","onViewMode","onHover","onSelect","calendar"],[1,"bs-datepicker-buttons"],["type","button",1,"btn","btn-success"],["type","button",1,"btn","btn-default"],["class","btn-today-wrapper",3,"today-left","today-right","today-center",4,"ngIf"],["class","btn-clear-wrapper",3,"clear-left","clear-right","clear-center",4,"ngIf"],[1,"btn-today-wrapper"],[1,"btn","btn-success",3,"click"],[1,"btn-clear-wrapper"],[1,"bs-datepicker-custom-range"],[3,"onSelect","selectedRange","ranges","customRangeLabel"]],template:function(i,r){i&1&&(T(0,L5,10,11,"div",2),se(1,"async")),i&2&&g("ngIf",ye(1,1,r.viewMode))},dependencies:[Te,fn,Ti,Tr,Ge,Ed,uc,cc,Gm,Wm,Ym,Er],encapsulation:2,data:{animation:[$m]}})}}return t})(),dc,dw=(()=>{class t{get readonlyValue(){return this.isDisabled?"":null}constructor(e,i,r,o,s){this._config=e,this._elementRef=i,this._renderer=r,this.placement="bottom",this.triggers="click",this.outsideClick=!0,this.container="body",this.outsideEsc=!0,this.isDestroy$=new ie,this.isDisabled=!1,this.bsValueChange=new O,this._subs=[],this._dateInputFormat$=new ie,Object.assign(this,this._config),this._datepicker=s.createLoader(i,o,r),this.onShown=this._datepicker.onShown,this.onHidden=this._datepicker.onHidden,this.isOpen$=new Ve(this.isOpen)}get isOpen(){return this._datepicker.isShown}set isOpen(e){this.isOpen$.next(e)}set bsValue(e){this._bsValue&&e&&this._bsValue.getTime()===e.getTime()||(!this._bsValue&&e&&!this._config.withTimepicker&&tw(e,new Date),e&&this.bsConfig?.initCurrentTime&&(e=gA(e)),this.initPreviousValue(),this._bsValue=e,this.bsValueChange.emit(e))}get dateInputFormat$(){return this._dateInputFormat$}ngOnInit(){this._datepicker.listen({outsideClick:this.outsideClick,outsideEsc:this.outsideEsc,triggers:this.triggers,show:()=>this.show()}),this.setConfig(),this.initPreviousValue()}initPreviousValue(){dc=this._bsValue}ngOnChanges(e){e.bsConfig&&(e.bsConfig.currentValue?.initCurrentTime&&e.bsConfig.currentValue?.initCurrentTime!==e.bsConfig.previousValue?.initCurrentTime&&this._bsValue&&(this.initPreviousValue(),this._bsValue=gA(this._bsValue),this.bsValueChange.emit(this._bsValue)),this.setConfig(),this._dateInputFormat$.next(this.bsConfig&&this.bsConfig.dateInputFormat)),!(!this._datepickerRef||!this._datepickerRef.instance)&&(e.minDate&&(this._datepickerRef.instance.minDate=this.minDate),e.maxDate&&(this._datepickerRef.instance.maxDate=this.maxDate),e.daysDisabled&&(this._datepickerRef.instance.daysDisabled=this.daysDisabled),e.datesDisabled&&(this._datepickerRef.instance.datesDisabled=this.datesDisabled),e.datesEnabled&&(this._datepickerRef.instance.datesEnabled=this.datesEnabled),e.isDisabled&&(this._datepickerRef.instance.isDisabled=this.isDisabled),e.dateCustomClasses&&(this._datepickerRef.instance.dateCustomClasses=this.dateCustomClasses),e.dateTooltipTexts&&(this._datepickerRef.instance.dateTooltipTexts=this.dateTooltipTexts))}initSubscribes(){this._subs.push(this.bsValueChange.subscribe(e=>{this._datepickerRef&&(this._datepickerRef.instance.value=e)})),this._datepickerRef&&this._subs.push(this._datepickerRef.instance.valueChange.subscribe(e=>{this.initPreviousValue(),this.bsValue=e,!this.keepDatepickerModalOpened()&&this.hide()}))}keepDatepickerModalOpened(){return!dc||!this.bsConfig?.keepDatepickerOpened||!this._config.withTimepicker?!1:this.isDateSame()}isDateSame(){return dc instanceof Date&&this._bsValue?.getDate()===dc?.getDate()&&this._bsValue?.getMonth()===dc?.getMonth()&&this._bsValue?.getFullYear()===dc?.getFullYear()}ngAfterViewInit(){this.isOpen$.pipe(he(e=>e!==this.isOpen),vi(this.isDestroy$)).subscribe(()=>this.toggle())}show(){this._datepicker.isShown||(this.setConfig(),this._datepickerRef=this._datepicker.provide({provide:ur,useValue:this._config}).attach(uw).to(this.container).position({attachment:this.placement}).show({placement:this.placement}),this.initSubscribes())}hide(){this.isOpen&&this._datepicker.hide();for(let e of this._subs)e.unsubscribe();this._config.returnFocusToInput&&this._renderer.selectRootElement(this._elementRef.nativeElement).focus()}toggle(){if(this.isOpen)return this.hide();this.show()}setConfig(){this._config=Object.assign({},this._config,this.bsConfig,{value:this._config.keepDatesOutOfRules?this._bsValue:DA(this._bsValue,this.maxDate||this.bsConfig&&this.bsConfig.maxDate),isDisabled:this.isDisabled,minDate:this.minDate||this.bsConfig&&this.bsConfig.minDate,maxDate:this.maxDate||this.bsConfig&&this.bsConfig.maxDate,daysDisabled:this.daysDisabled||this.bsConfig&&this.bsConfig.daysDisabled,dateCustomClasses:this.dateCustomClasses||this.bsConfig&&this.bsConfig.dateCustomClasses,dateTooltipTexts:this.dateTooltipTexts||this.bsConfig&&this.bsConfig.dateTooltipTexts,datesDisabled:this.datesDisabled||this.bsConfig&&this.bsConfig.datesDisabled,datesEnabled:this.datesEnabled||this.bsConfig&&this.bsConfig.datesEnabled,minMode:this.minMode||this.bsConfig&&this.bsConfig.minMode,initCurrentTime:this.bsConfig?.initCurrentTime,keepDatepickerOpened:this.bsConfig?.keepDatepickerOpened,keepDatesOutOfRules:this.bsConfig?.keepDatesOutOfRules})}unsubscribeSubscriptions(){this._subs?.length&&(this._subs.map(e=>e.unsubscribe()),this._subs.length=0)}ngOnDestroy(){this._datepicker.dispose(),this.isOpen$.next(!1),this.isDestroy$&&(this.isDestroy$.next(null),this.isDestroy$.complete()),this.unsubscribeSubscriptions()}static{this.\u0275fac=function(i){return new(i||t)(b(ur),b(Y),b(Ae),b(_t),b(tn))}}static{this.\u0275dir=U({type:t,selectors:[["","bsDatepicker",""]],hostVars:1,hostBindings:function(i,r){i&2&&ee("readonly",r.readonlyValue)},inputs:{placement:"placement",triggers:"triggers",outsideClick:"outsideClick",container:"container",outsideEsc:"outsideEsc",isDisabled:"isDisabled",minDate:"minDate",maxDate:"maxDate",ignoreMinMaxErrors:"ignoreMinMaxErrors",minMode:"minMode",daysDisabled:"daysDisabled",datesDisabled:"datesDisabled",datesEnabled:"datesEnabled",dateCustomClasses:"dateCustomClasses",dateTooltipTexts:"dateTooltipTexts",isOpen:"isOpen",bsValue:"bsValue",bsConfig:"bsConfig"},outputs:{onShown:"onShown",onHidden:"onHidden",bsValueChange:"bsValueChange"},exportAs:["bsDatepicker"],features:[pe([tn]),Se]})}}return t})();var XW=(()=>{class t extends uw{get disabledValue(){return this.isDatePickerDisabled?"":null}get readonlyValue(){return this.isDatePickerDisabled?"":null}constructor(e,i,r,o,s,a,l){super(e,i,r,o,s,a,l),e.setStyle(o.nativeElement,"display","inline-block"),e.setStyle(o.nativeElement,"position","static")}static{this.\u0275fac=function(i){return new(i||t)(b(Ae),b(ur),b(as),b(Y),b(wt),b(ss),b(cn))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-datepicker-inline-container"]],hostVars:2,hostBindings:function(i,r){i&1&&D("click",function(s){return r._stopPropagation(s)}),i&2&&ee("disabled",r.disabledValue)("readonly",r.readonlyValue)},features:[pe([as,ss,cn]),Tt],decls:2,vars:3,consts:[["startTP",""],["endTP",""],["class","bs-datepicker",3,"ngClass",4,"ngIf"],[1,"bs-datepicker",3,"ngClass"],[1,"bs-datepicker-container"],["role","application",1,"bs-calendar-container",3,"ngSwitch"],[4,"ngSwitchCase"],["class","bs-media-container",4,"ngSwitchCase"],["class","bs-datepicker-buttons",4,"ngIf"],["class","bs-datepicker-custom-range",4,"ngIf"],[1,"bs-media-container"],[3,"bs-datepicker-multiple","calendar","isDisabled","options","onNavigate","onViewMode","onHover","onHoverWeek","onSelect",4,"ngFor","ngForOf"],["class","bs-timepicker-in-datepicker-container",4,"ngIf"],[3,"onNavigate","onViewMode","onHover","onHoverWeek","onSelect","calendar","isDisabled","options"],[1,"bs-timepicker-in-datepicker-container"],[3,"disabled"],[3,"disabled",4,"ngIf"],[3,"bs-datepicker-multiple","calendar","onNavigate","onViewMode","onHover","onSelect",4,"ngFor","ngForOf"],[3,"onNavigate","onViewMode","onHover","onSelect","calendar"],[1,"bs-datepicker-buttons"],["type","button",1,"btn","btn-success"],["type","button",1,"btn","btn-default"],["class","btn-today-wrapper",3,"today-left","today-right","today-center",4,"ngIf"],["class","btn-clear-wrapper",3,"clear-left","clear-right","clear-center",4,"ngIf"],[1,"btn-today-wrapper"],[1,"btn","btn-success",3,"click"],[1,"btn-clear-wrapper"],[1,"bs-datepicker-custom-range"],[3,"onSelect","selectedRange","ranges","customRangeLabel"]],template:function(i,r){i&1&&(T(0,K5,10,11,"div",2),se(1,"async")),i&2&&g("ngIf",ye(1,1,r.viewMode))},dependencies:[Te,fn,Ti,Tr,Ge,Ed,uc,cc,Gm,Wm,Ym,Er],encapsulation:2,data:{animation:[$m]}})}}return t})();var fw=(()=>{class t extends Um{set value(e){this._effects?.setRangeValue(e)}get isDatePickerDisabled(){return!!this._config.isDisabled}get isDatepickerDisabled(){return this.isDatePickerDisabled?"":null}get isDatepickerReadonly(){return this.isDatePickerDisabled?"":null}constructor(e,i,r,o,s,a,l){super(),this._config=i,this._store=r,this._element=o,this._actions=s,this._positionService=l,this.valueChange=new O,this.animationState="void",this._rangeStack=[],this.chosenRange=[],this._subs=[],this.isRangePicker=!0,this._effects=a,this.customRanges=this._config.ranges||[],this.customRangeBtnLbl=this._config.customRangeButtonLabel,e.setStyle(o.nativeElement,"display","block"),e.setStyle(o.nativeElement,"position","absolute")}ngOnInit(){this._positionService.setOptions({modifiers:{flip:{enabled:this._config.adaptivePosition},preventOverflow:{enabled:this._config.adaptivePosition}},allowedPositions:this._config.allowedPositions}),this._positionService.event$?.pipe(Mt(1)).subscribe(()=>{if(this._positionService.disable(),this._config.isAnimated){this.animationState=this.isTopPosition?"animated-up":"animated-down";return}this.animationState="unanimated"}),this.containerClass=this._config.containerClass,this.isOtherMonthsActive=this._config.selectFromOtherMonth,this.withTimepicker=this._config.withTimepicker,this._effects?.init(this._store).setOptions(this._config).setBindings(this).setEventHandlers(this).registerDatepickerSideEffects();let e;this._subs.push(this._store.select(i=>i.selectedRange).subscribe(i=>{e=i,this.valueChange.emit(i),this.chosenRange=i||[]})),this._subs.push(this._store.select(i=>i.selectedTime).subscribe(i=>{!i||!i[0]||!i[1]||!(i[0]instanceof Date)||!(i[1]instanceof Date)||e&&i[0]===e[0]&&i[1]===e[1]||(this.valueChange.emit(i),this.chosenRange=i||[])}))}ngAfterViewInit(){this.selectedTimeSub.add(this.selectedTime?.subscribe(e=>{Array.isArray(e)&&e.length>=2&&(this.startTimepicker?.writeValue(e[0]),this.endTimepicker?.writeValue(e[1]))})),this.startTimepicker?.registerOnChange(e=>{this.timeSelectHandler(e,0)}),this.endTimepicker?.registerOnChange(e=>{this.timeSelectHandler(e,1)})}get isTopPosition(){return this._element.nativeElement.classList.contains("top")}positionServiceEnable(){this._positionService.enable()}timeSelectHandler(e,i){this._store.dispatch(this._actions.selectTime(e,i))}daySelectHandler(e){!e||(this.isOtherMonthsActive?e.isDisabled:e.isOtherMonth||e.isDisabled)||this.rangesProcessing(e)}monthSelectHandler(e){if(!(!e||e.isDisabled)){if(e.isSelected=!0,this._config.minMode!=="month"){if(e.isDisabled)return;this._store.dispatch(this._actions.navigateTo({unit:{month:Ne(e.date),year:$t(e.date)},viewMode:"day"}));return}this.rangesProcessing(e)}}yearSelectHandler(e){if(!(!e||e.isDisabled)){if(e.isSelected=!0,this._config.minMode!=="year"){if(e.isDisabled)return;this._store.dispatch(this._actions.navigateTo({unit:{year:$t(e.date)},viewMode:"month"}));return}this.rangesProcessing(e)}}rangesProcessing(e){this._rangeStack.length===1&&(this._rangeStack=e.date>=this._rangeStack[0]?[this._rangeStack[0],e.date]:[e.date]),this._config.maxDateRange&&this.setMaxDateRangeOnCalendar(e.date),this._rangeStack.length===0&&(this._rangeStack=[e.date],this._config.maxDateRange&&this.setMaxDateRangeOnCalendar(e.date)),this._store.dispatch(this._actions.selectRange(this._rangeStack)),this._rangeStack.length===2&&(this._rangeStack=[])}ngOnDestroy(){for(let e of this._subs)e.unsubscribe();this.selectedTimeSub.unsubscribe(),this._effects?.destroy()}setRangeOnCalendar(e){e&&(this._rangeStack=e.value instanceof Date?[e.value]:e.value),this._store.dispatch(this._actions.selectRange(this._rangeStack))}setMaxDateRangeOnCalendar(e){let i=new Date(e);if(this._config.maxDate){let r=this._config.maxDate.getTime(),o=e.getTime()+(this._config.maxDateRange||0)*EW;i=o>r?new Date(this._config.maxDate):new Date(o)}else i.setDate(e.getDate()+(this._config.maxDateRange||0));this._effects?.setMaxDate(i)}static{this.\u0275fac=function(i){return new(i||t)(b(Ae),b(ur),b(as),b(Y),b(wt),b(ss),b(cn))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-daterangepicker-container"]],viewQuery:function(i,r){if(i&1&&(jt(bA,5),jt(Z5,5)),i&2){let o;et(o=tt())&&(r.startTimepicker=o.first),et(o=tt())&&(r.endTimepicker=o.first)}},hostAttrs:["role","dialog","aria-label","calendar",1,"bottom"],hostVars:2,hostBindings:function(i,r){i&1&&D("click",function(s){return r._stopPropagation(s)}),i&2&&ee("disabled",r.isDatepickerDisabled)("readonly",r.isDatepickerReadonly)},features:[pe([as,ss,wt,cn]),Tt],decls:2,vars:3,consts:[["startTP",""],["endTP",""],["class","bs-datepicker",3,"ngClass",4,"ngIf"],[1,"bs-datepicker",3,"ngClass"],[1,"bs-datepicker-container"],["role","application",1,"bs-calendar-container",3,"ngSwitch"],[4,"ngSwitchCase"],["class","bs-media-container",4,"ngSwitchCase"],["class","bs-datepicker-buttons",4,"ngIf"],["class","bs-datepicker-custom-range",4,"ngIf"],[1,"bs-media-container"],[3,"bs-datepicker-multiple","calendar","isDisabled","options","onNavigate","onViewMode","onHover","onHoverWeek","onSelect",4,"ngFor","ngForOf"],["class","bs-timepicker-in-datepicker-container",4,"ngIf"],[3,"onNavigate","onViewMode","onHover","onHoverWeek","onSelect","calendar","isDisabled","options"],[1,"bs-timepicker-in-datepicker-container"],[3,"disabled"],[3,"disabled",4,"ngIf"],[3,"bs-datepicker-multiple","calendar","onNavigate","onViewMode","onHover","onSelect",4,"ngFor","ngForOf"],[3,"onNavigate","onViewMode","onHover","onSelect","calendar"],[1,"bs-datepicker-buttons"],["type","button",1,"btn","btn-success"],["type","button",1,"btn","btn-default"],["class","btn-today-wrapper",3,"today-left","today-right","today-center",4,"ngIf"],["class","btn-clear-wrapper",3,"clear-left","clear-right","clear-center",4,"ngIf"],[1,"btn-today-wrapper"],[1,"btn","btn-success",3,"click"],[1,"btn-clear-wrapper"],[1,"bs-datepicker-custom-range"],[3,"onSelect","selectedRange","ranges","customRangeLabel"]],template:function(i,r){i&1&&(T(0,dW,10,11,"div",2),se(1,"async")),i&2&&g("ngIf",ye(1,1,r.viewMode))},dependencies:[Te,fn,Ti,Tr,Ge,Ed,uc,cc,Gm,Wm,Ym,Er],encapsulation:2,data:{animation:[$m]}})}}return t})(),e8=(()=>{class t extends fw{get disabledValue(){return this.isDatePickerDisabled?"":null}get readonlyValue(){return this.isDatePickerDisabled?"":null}constructor(e,i,r,o,s,a,l){super(e,i,r,o,s,a,l),e.setStyle(o.nativeElement,"display","inline-block"),e.setStyle(o.nativeElement,"position","static")}static{this.\u0275fac=function(i){return new(i||t)(b(Ae),b(ur),b(as),b(Y),b(wt),b(ss),b(cn))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-daterangepicker-inline-container"]],hostVars:2,hostBindings:function(i,r){i&1&&D("click",function(s){return r._stopPropagation(s)}),i&2&&ee("disabled",r.disabledValue)("readonly",r.readonlyValue)},features:[pe([as,ss,wt,cn]),Tt],decls:2,vars:3,consts:[["startTP",""],["endTP",""],["class","bs-datepicker",3,"ngClass",4,"ngIf"],[1,"bs-datepicker",3,"ngClass"],[1,"bs-datepicker-container"],["role","application",1,"bs-calendar-container",3,"ngSwitch"],[4,"ngSwitchCase"],["class","bs-media-container",4,"ngSwitchCase"],["class","bs-datepicker-buttons",4,"ngIf"],["class","bs-datepicker-custom-range",4,"ngIf"],[1,"bs-media-container"],[3,"bs-datepicker-multiple","calendar","isDisabled","options","onNavigate","onViewMode","onHover","onHoverWeek","onSelect",4,"ngFor","ngForOf"],["class","bs-timepicker-in-datepicker-container",4,"ngIf"],[3,"onNavigate","onViewMode","onHover","onHoverWeek","onSelect","calendar","isDisabled","options"],[1,"bs-timepicker-in-datepicker-container"],[3,"disabled"],[3,"disabled",4,"ngIf"],[3,"bs-datepicker-multiple","calendar","onNavigate","onViewMode","onHover","onSelect",4,"ngFor","ngForOf"],[3,"onNavigate","onViewMode","onHover","onSelect","calendar"],[1,"bs-datepicker-buttons"],["type","button",1,"btn","btn-success"],["type","button",1,"btn","btn-default"],["class","btn-today-wrapper",3,"today-left","today-right","today-center",4,"ngIf"],["class","btn-clear-wrapper",3,"clear-left","clear-right","clear-center",4,"ngIf"],[1,"btn-today-wrapper"],[1,"btn","btn-success",3,"click"],[1,"btn-clear-wrapper"],[1,"bs-datepicker-custom-range"],[3,"onSelect","selectedRange","ranges","customRangeLabel"]],template:function(i,r){i&1&&(T(0,SW,10,11,"div",2),se(1,"async")),i&2&&g("ngIf",ye(1,1,r.viewMode))},dependencies:[Te,fn,Ti,Tr,Ge,Ed,uc,cc,Gm,Wm,Ym,Er],encapsulation:2,data:{animation:[$m]}})}}return t})();var t8={provide:Rt,useExisting:ze(()=>qm),multi:!0},n8={provide:co,useExisting:ze(()=>qm),multi:!0},qm=(()=>{class t{constructor(e,i,r,o,s){this._picker=e,this._localeService=i,this._renderer=r,this._elRef=o,this.changeDetection=s,this._onChange=Function.prototype,this._onTouched=Function.prototype,this._validatorChange=Function.prototype,this._subs=new We}onChange(e){this.writeValue(e.target.value),this._onChange(this._value),this._picker._config.returnFocusToInput&&this._renderer.selectRootElement(this._elRef.nativeElement).focus(),this._onTouched()}onBlur(){this._onTouched()}hide(){this._picker.hide(),this._renderer.selectRootElement(this._elRef.nativeElement).blur(),this._picker._config.returnFocusToInput&&this._renderer.selectRootElement(this._elRef.nativeElement).focus()}ngOnInit(){let e=i=>{this._setInputValue(i),this._value!==i&&(this._value=i,this._onChange(i),this._onTouched()),this.changeDetection.markForCheck()};this._picker._bsValue&&e(this._picker._bsValue),this._subs.add(this._picker.bsValueChange.subscribe(e)),this._subs.add(this._localeService.localeChange.subscribe(()=>{this._setInputValue(this._value)})),this._subs.add(this._picker.dateInputFormat$.pipe(Qr()).subscribe(()=>{this._setInputValue(this._value)}))}ngOnDestroy(){this._subs.unsubscribe()}_setInputValue(e){let i=e?fi(e,this._picker._config.dateInputFormat,this._localeService.currentLocale):"";this._renderer.setProperty(this._elRef.nativeElement,"value",i)}validate(e){let i=e.value;if(i==null||i==="")return null;if(bd(i)){if(!go(i))return{bsDate:{invalid:i}};if(this._picker&&this._picker.minDate&&ts(i,this._picker.minDate,"date"))return this.writeValue(this._picker.minDate),this._picker.ignoreMinMaxErrors?null:{bsDate:{minDate:this._picker.minDate}};if(this._picker&&this._picker.maxDate&&yo(i,this._picker.maxDate,"date"))return this.writeValue(this._picker.maxDate),this._picker.ignoreMinMaxErrors?null:{bsDate:{maxDate:this._picker.maxDate}}}return null}registerOnValidatorChange(e){this._validatorChange=e}writeValue(e){if(!e)this._value=void 0;else{let i=this._localeService.currentLocale;if(!mn(i))throw new Error(`Locale "${i}" is not defined, please add it with "defineLocale(...)"`);if(this._value=rc(e,this._picker._config.dateInputFormat,this._localeService.currentLocale),this._picker._config.useUtc){let o=RC(this._value);this._value=o===null?void 0:o}}this._picker.bsValue=this._value}setDisabledState(e){if(this._picker.isDisabled=e,e){this._renderer.setAttribute(this._elRef.nativeElement,"disabled","disabled");return}this._renderer.removeAttribute(this._elRef.nativeElement,"disabled")}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}static{this.\u0275fac=function(i){return new(i||t)(b(dw,1),b(nw),b(Ae),b(Y),b(ct))}}static{this.\u0275dir=U({type:t,selectors:[["input","bsDatepicker",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s)})("blur",function(){return r.onBlur()})("keyup.esc",function(){return r.hide()})("keydown.enter",function(){return r.hide()})},features:[pe([t8,n8])]})}}return t})(),i8=(()=>{class t extends ur{constructor(){super(...arguments),this.displayMonths=2}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})()}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),os,r8=(()=>{class t{get isOpen(){return this._datepicker.isShown}set isOpen(e){this.isOpen$.next(e)}set bsValue(e){this._bsValue!==e&&(e&&this.bsConfig?.initCurrentTime&&(e=_A(e)),this.initPreviousValue(),this._bsValue=e,this.bsValueChange.emit(e))}get isDatepickerReadonly(){return this.isDisabled?"":null}get rangeInputFormat$(){return this._rangeInputFormat$}constructor(e,i,r,o,s){this._config=e,this._elementRef=i,this._renderer=r,this.placement="bottom",this.triggers="click",this.outsideClick=!0,this.container="body",this.outsideEsc=!0,this.isDestroy$=new ie,this.isDisabled=!1,this.bsValueChange=new O,this._subs=[],this._rangeInputFormat$=new ie,this._datepicker=s.createLoader(i,o,r),Object.assign(this,e),this.onShown=this._datepicker.onShown,this.onHidden=this._datepicker.onHidden,this.isOpen$=new Ve(this.isOpen)}ngOnInit(){this.isDestroy$=new ie,this._datepicker.listen({outsideClick:this.outsideClick,outsideEsc:this.outsideEsc,triggers:this.triggers,show:()=>this.show()}),this.initPreviousValue(),this.setConfig()}ngOnChanges(e){e.bsConfig&&(e.bsConfig.currentValue?.initCurrentTime&&e.bsConfig.currentValue?.initCurrentTime!==e.bsConfig.previousValue?.initCurrentTime&&this._bsValue&&(this.initPreviousValue(),this._bsValue=_A(this._bsValue),this.bsValueChange.emit(this._bsValue)),this.setConfig(),this._rangeInputFormat$.next(e.bsConfig.currentValue&&e.bsConfig.currentValue.rangeInputFormat)),!(!this._datepickerRef||!this._datepickerRef.instance)&&(e.minDate&&(this._datepickerRef.instance.minDate=this.minDate),e.maxDate&&(this._datepickerRef.instance.maxDate=this.maxDate),e.datesDisabled&&(this._datepickerRef.instance.datesDisabled=this.datesDisabled),e.datesEnabled&&(this._datepickerRef.instance.datesEnabled=this.datesEnabled),e.daysDisabled&&(this._datepickerRef.instance.daysDisabled=this.daysDisabled),e.isDisabled&&(this._datepickerRef.instance.isDisabled=this.isDisabled),e.dateCustomClasses&&(this._datepickerRef.instance.dateCustomClasses=this.dateCustomClasses))}ngAfterViewInit(){this.isOpen$.pipe(he(e=>e!==this.isOpen),vi(this.isDestroy$)).subscribe(()=>this.toggle())}show(){this._datepicker.isShown||(this.setConfig(),this._datepickerRef=this._datepicker.provide({provide:ur,useValue:this._config}).attach(fw).to(this.container).position({attachment:this.placement}).show({placement:this.placement}),this.initSubscribes())}initSubscribes(){this._subs.push(this.bsValueChange.subscribe(e=>{this._datepickerRef&&(this._datepickerRef.instance.value=e)})),this._datepickerRef&&this._subs.push(this._datepickerRef.instance.valueChange.pipe(he(e=>e&&e[0]&&!!e[1])).subscribe(e=>{this.initPreviousValue(),this.bsValue=e,!this.keepDatepickerModalOpened()&&this.hide()}))}initPreviousValue(){os=this._bsValue}keepDatepickerModalOpened(){return!os||!this.bsConfig?.keepDatepickerOpened||!this._config.withTimepicker?!1:this.isDateSame()}isDateSame(){return this._bsValue?.[0]?.getDate()===os?.[0]?.getDate()&&this._bsValue?.[0]?.getMonth()===os?.[0]?.getMonth()&&this._bsValue?.[0]?.getFullYear()===os?.[0]?.getFullYear()&&this._bsValue?.[1]?.getDate()===os?.[1]?.getDate()&&this._bsValue?.[1]?.getMonth()===os?.[1]?.getMonth()&&this._bsValue?.[1]?.getFullYear()===os?.[1]?.getFullYear()}setConfig(){this._config=Object.assign({},this._config,this.bsConfig,{value:this.bsConfig?.keepDatesOutOfRules?this._bsValue:DA(this._bsValue,this.maxDate||this.bsConfig&&this.bsConfig.maxDate),isDisabled:this.isDisabled,minDate:this.minDate||this.bsConfig&&this.bsConfig.minDate,maxDate:this.maxDate||this.bsConfig&&this.bsConfig.maxDate,daysDisabled:this.daysDisabled||this.bsConfig&&this.bsConfig.daysDisabled,dateCustomClasses:this.dateCustomClasses||this.bsConfig&&this.bsConfig.dateCustomClasses,datesDisabled:this.datesDisabled||this.bsConfig&&this.bsConfig.datesDisabled,datesEnabled:this.datesEnabled||this.bsConfig&&this.bsConfig.datesEnabled,ranges:AW(this.bsConfig&&this.bsConfig.ranges,this.maxDate||this.bsConfig&&this.bsConfig.maxDate),maxDateRange:this.bsConfig&&this.bsConfig.maxDateRange,initCurrentTime:this.bsConfig?.initCurrentTime,keepDatepickerOpened:this.bsConfig?.keepDatepickerOpened,keepDatesOutOfRules:this.bsConfig?.keepDatesOutOfRules})}hide(){this.isOpen&&this._datepicker.hide();for(let e of this._subs)e.unsubscribe();this._config.returnFocusToInput&&this._renderer.selectRootElement(this._elementRef.nativeElement).focus()}toggle(){if(this.isOpen)return this.hide();this.show()}unsubscribeSubscriptions(){this._subs?.length&&(this._subs.map(e=>e.unsubscribe()),this._subs.length=0)}ngOnDestroy(){this._datepicker.dispose(),this.isOpen$.next(!1),this.isDestroy$&&(this.isDestroy$.next(null),this.isDestroy$.complete()),this.unsubscribeSubscriptions()}static{this.\u0275fac=function(i){return new(i||t)(b(i8),b(Y),b(Ae),b(_t),b(tn))}}static{this.\u0275dir=U({type:t,selectors:[["","bsDaterangepicker",""]],hostVars:1,hostBindings:function(i,r){i&2&&ee("readonly",r.isDatepickerReadonly)},inputs:{placement:"placement",triggers:"triggers",outsideClick:"outsideClick",container:"container",outsideEsc:"outsideEsc",isOpen:"isOpen",bsValue:"bsValue",bsConfig:"bsConfig",isDisabled:"isDisabled",minDate:"minDate",maxDate:"maxDate",dateCustomClasses:"dateCustomClasses",daysDisabled:"daysDisabled",datesDisabled:"datesDisabled",datesEnabled:"datesEnabled"},outputs:{onShown:"onShown",onHidden:"onHidden",bsValueChange:"bsValueChange"},exportAs:["bsDaterangepicker"],features:[pe([tn]),Se]})}}return t})(),o8={provide:Rt,useExisting:ze(()=>kA),multi:!0},s8={provide:co,useExisting:ze(()=>kA),multi:!0},kA=(()=>{class t{constructor(e,i,r,o,s){this._picker=e,this._localeService=i,this._renderer=r,this._elRef=o,this.changeDetection=s,this._onChange=Function.prototype,this._onTouched=Function.prototype,this._validatorChange=Function.prototype,this._subs=new We}ngOnInit(){let e=i=>{this._setInputValue(i),this._value!==i&&(this._value=i,this._onChange(i),this._onTouched()),this.changeDetection.markForCheck()};this._picker._bsValue&&e(this._picker._bsValue),this._subs.add(this._picker.bsValueChange.subscribe(i=>{this._setInputValue(i),this._value!==i&&(this._value=i,this._onChange(i),this._onTouched()),this.changeDetection.markForCheck()})),this._subs.add(this._localeService.localeChange.subscribe(()=>{this._setInputValue(this._value)})),this._subs.add(this._picker.rangeInputFormat$.pipe(Qr()).subscribe(()=>{this._setInputValue(this._value)}))}ngOnDestroy(){this._subs.unsubscribe()}onKeydownEvent(e){(e.keyCode===13||e.code==="Enter")&&this.hide()}_setInputValue(e){let i="";if(e){let r=e[0]?fi(e[0],this._picker._config.rangeInputFormat,this._localeService.currentLocale):"",o=e[1]?fi(e[1],this._picker._config.rangeInputFormat,this._localeService.currentLocale):"";i=r&&o?r+this._picker._config.rangeSeparator+o:""}this._renderer.setProperty(this._elRef.nativeElement,"value",i)}onChange(e){this.writeValue(e.target.value),this._onChange(this._value),this._picker._config.returnFocusToInput&&this._renderer.selectRootElement(this._elRef.nativeElement).focus(),this._onTouched()}validate(e){let i=e.value,r=[];if(i==null||!ut(i))return null;i=i.slice().sort((a,l)=>a.getTime()-l.getTime());let o=go(i[0]),s=go(i[1]);return o?s?(this._picker&&this._picker.minDate&&ts(i[0],this._picker.minDate,"date")&&(i[0]=this._picker.minDate,r.push({bsDate:{minDate:this._picker.minDate}})),this._picker&&this._picker.maxDate&&yo(i[1],this._picker.maxDate,"date")&&(i[1]=this._picker.maxDate,r.push({bsDate:{maxDate:this._picker.maxDate}})),r.length>0?(this.writeValue(i),r):null):{bsDate:{invalid:i[1]}}:{bsDate:{invalid:i[0]}}}registerOnValidatorChange(e){this._validatorChange=e}writeValue(e){if(!e)this._value=void 0;else{let i=this._localeService.currentLocale;if(!mn(i))throw new Error(`Locale "${i}" is not defined, please add it with "defineLocale(...)"`);let o=[];if(typeof e=="string"){let s=this._picker._config.rangeSeparator.trim();e.replace(/[^-]/g,"").length>1?o=e.split(this._picker._config.rangeSeparator):o=e.split(s.length>0?s:this._picker._config.rangeSeparator).map(a=>a.trim())}Array.isArray(e)&&(o=e),this._value=o.map(s=>this._picker._config.useUtc?RC(rc(s,this._picker._config.rangeInputFormat,this._localeService.currentLocale)):rc(s,this._picker._config.rangeInputFormat,this._localeService.currentLocale)).map(s=>isNaN(s.valueOf())?void 0:s)}this._picker.bsValue=this._value}setDisabledState(e){if(this._picker.isDisabled=e,e){this._renderer.setAttribute(this._elRef.nativeElement,"disabled","disabled");return}this._renderer.removeAttribute(this._elRef.nativeElement,"disabled")}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}onBlur(){this._onTouched()}hide(){this._picker.hide(),this._renderer.selectRootElement(this._elRef.nativeElement).blur(),this._picker._config.returnFocusToInput&&this._renderer.selectRootElement(this._elRef.nativeElement).focus()}static{this.\u0275fac=function(i){return new(i||t)(b(r8,1),b(nw),b(Ae),b(Y),b(ct))}}static{this.\u0275dir=U({type:t,selectors:[["input","bsDaterangepicker",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s)})("keyup.esc",function(){return r.hide()})("keydown",function(s){return r.onKeydownEvent(s)})("blur",function(){return r.onBlur()})},features:[pe([o8,s8])]})}}return t})(),AA=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({imports:[He,ZC,uc,Ed,uw,XW,fw,e8]})}}return t})();function l8(t,n){if(t&1&&(d(0,"div",3),y(1),f()),t&2){let e=m();h(),oe(" Please enter ",e.label()," ")}}var Qm=class t{constructor(n){this.ngControl=n;this.ngControl.valueAccessor=this,this.bsConfig={containerClass:"theme-blue",isAnimated:!0,adaptivePosition:!0,dateInputFormat:"DD/MM/YYYY"}}label=un("");maxDate=un();bsConfig;writeValue(n){}registerOnChange(n){}registerOnTouched(n){}get control(){return this.ngControl.control}static \u0275fac=function(e){return new(e||t)(b(Gn,2))};static \u0275cmp=L({type:t,selectors:[["app-date-picker"]],inputs:{label:[1,"label"],maxDate:[1,"maxDate"]},decls:5,vars:8,consts:[[1,"mb-3","form-floating"],["bsDatepicker","",1,"form-control",3,"formControl","placeholder","bsConfig","maxDate"],["class","invalid-feedback text-start",4,"ngIf"],[1,"invalid-feedback","text-start"]],template:function(e,i){e&1&&(d(0,"div",0),I(1,"input",1),d(2,"label"),y(3),f(),T(4,l8,2,1,"div",2),f()),e&2&&(h(),B("is-invalid",i.control.touched&&i.control.invalid),g("formControl",i.control)("placeholder",i.label())("bsConfig",i.bsConfig)("maxDate",i.maxDate()),h(2),H(i.label()),h(),g("ngIf",i.control==null?null:i.control.hasError("required")))},dependencies:[AA,dw,qm,Te,jl,Bt,kt,ea],encapsulation:2})};function c8(t,n){if(t&1&&(d(0,"li"),y(1),f()),t&2){let e=n.$implicit;h(),H(e)}}function u8(t,n){if(t&1&&(d(0,"div",10)(1,"ul"),yt(2,c8,2,1,"li",null,_l),f()()),t&2){let e=m();h(2),vt(e.validationErrors)}}var Km=class t{accountService=S(lt);fb=S(yI);router=S(hn);cancelRegister=Us();maxDate=new Date;validationErrors;registerForm=new Go({});register(){let n=this.getDateOnly(this.registerForm.get("dateOfBirth")?.value);this.registerForm.patchValue({dateOfBirth:n}),this.accountService.register(this.registerForm.value).subscribe({next:e=>this.router.navigateByUrl("/members"),error:e=>this.validationErrors=e})}cancel(){this.cancelRegister.emit(!1)}ngOnInit(){this.initializeFrom(),this.maxDate.setFullYear(this.maxDate.getFullYear()-18)}initializeFrom(){this.registerForm=this.fb.group({gender:["male"],username:["",Ei.required],knownAs:["",Ei.required],dateOfBirth:["",Ei.required],city:["",Ei.required],country:["",Ei.required],password:["",[Ei.required,Ei.minLength(4),Ei.maxLength(8)]],confirmPassword:[,[Ei.required,this.matchValue("password")]]}),this.registerForm.controls.password.valueChanges.subscribe({next:()=>{this.registerForm.controls.confirmPassword.updateValueAndValidity()}})}matchValue(n){return e=>e.value===e.parent?.get(n)?.value?null:{isMatching:!0}}getDateOnly(n){if(n)return new Date(n).toISOString().slice(0,10)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-register"]],outputs:{cancelRegister:"cancelRegister"},decls:26,vars:21,consts:[["autocomplete","off",3,"ngSubmit","formGroup"],[1,"text-center","text-primary"],[1,"mv-3"],[2,"margin-bottom","10px"],[1,"form-check-label",2,"margin-left","8px"],["type","radio","formControlName","gender","value","male",1,"form-check-input"],["type","radio","formControlName","gender","value","female",1,"form-check-input"],[3,"formControl","label","type"],[3,"formControl","label"],[3,"formControl","label","maxDate"],[1,"alert","alert-danger","text-start"],[1,"form-group","text-center"],["type","submit",1,"btn","btn-success","me-2",3,"disabled"],["type","submit",1,"btn","btn-default","me-2",3,"click"]],template:function(e,i){e&1&&(d(0,"form",0),D("ngSubmit",function(){return i.register()}),d(1,"h2",1),y(2,"Sign up"),f(),I(3,"hr"),d(4,"div",2)(5,"label",3),y(6," I'm a: "),f(),d(7,"label",4),I(8,"input",5),y(9," Male "),f(),d(10,"label",4),I(11,"input",6),y(12," Female "),f()(),I(13,"app-text-input",7)(14,"app-text-input",8)(15,"app-date-picker",9)(16,"app-text-input",8)(17,"app-text-input",8)(18,"app-text-input",7)(19,"app-text-input",7),T(20,u8,4,0,"div",10),d(21,"div",11)(22,"button",12),y(23,"Register"),f(),d(24,"button",13),D("click",function(){return i.cancel()}),y(25,"Cancle"),f()()()),e&2&&(g("formGroup",i.registerForm),h(13),g("formControl",i.registerForm.get("username"))("label","Username")("type","text"),h(),g("formControl",i.registerForm.get("knownAs"))("label","known As"),h(),g("formControl",i.registerForm.get("dateOfBirth"))("label","Date of Birth")("maxDate",i.maxDate),h(),g("formControl",i.registerForm.get("city"))("label","City"),h(),g("formControl",i.registerForm.get("country"))("label","Country"),h(),g("formControl",i.registerForm.get("password"))("label","Password")("type","password"),h(),g("formControl",i.registerForm.get("confirmPassword"))("label","Confirm password")("type","password"),h(),je(i.validationErrors?20:-1),h(2),g("disabled",!i.registerForm.valid))},dependencies:[jl,Ii,Bt,$b,kt,xi,ea,Yb,Wb,vm,Qm],encapsulation:2})};function d8(t,n){if(t&1){let e=N();d(0,"h1"),y(1,"Find your match"),f(),d(2,"p",3),y(3,"Come on in to view your matches... all you need to do is sign up?"),f(),d(4,"div",4)(5,"button",5),D("click",function(){C(e);let r=m();return w(r.registerToggle())}),y(6,"Register"),f(),d(7,"button",6),y(8,"Learn more"),f()()}}function f8(t,n){if(t&1){let e=N();d(0,"div",2)(1,"div",7)(2,"div",8)(3,"app-register",9),D("cancelRegister",function(r){C(e);let o=m();return w(o.cancelRegisterMode(r))}),f()()()()}}var xd=class t{registerMode=!1;registerToggle(){this.registerMode=!this.registerMode}cancelRegisterMode(n){this.registerMode=n}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-home"]],decls:4,vars:1,consts:[[1,"container","mt-5"],[2,"text-align","center"],[1,"container"],[1,"lead"],[1,"text-center"],[1,"btn","btn-primary","btn-lg","me-2",3,"click"],[1,"btn","btn-info","btn-lg","me-2"],[1,"row","justify-content-center"],[1,"col-4"],[3,"cancelRegister"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"div",1),T(2,d8,9,0)(3,f8,4,0,"div",2),f()()),e&2&&(h(2),je(i.registerMode?3:2))},dependencies:[Km],encapsulation:2})};var Id=class{gender;minAge=18;maxAge=99;pageNumber=1;pageSize=5;orderBy="lastActive";constructor(n){this.gender=n?.gender==="female"?"male":"female"}};var Hi=class t{http=S(Yn);accountService=S(lt);baseUrl=Kt.apiUrl;paginatedResult=qe(null);memberCache=new Map;user=this.accountService.currentUser();userParams=qe(new Id(this.user));resetUserParams(){this.userParams.set(new Id(this.user))}getMembers(){let n=this.memberCache.get(Object.values(this.userParams()).join("-"));if(n)return ta(n,this.paginatedResult);let e=Hl(this.userParams().pageNumber,this.userParams().pageSize);return e=e.append("minAge",this.userParams().minAge.toString()),e=e.append("maxAge",this.userParams().maxAge.toString()),e=e.append("gender",this.userParams().gender),e=e.append("orderBy",this.userParams().orderBy),this.http.get(this.baseUrl+"users",{params:e,observe:"response"}).subscribe({next:i=>{ta(i,this.paginatedResult),this.memberCache.set(Object.values(this.userParams()).join("-"),i)}})}getMember(n){let e=[...this.memberCache.values()].reduce((i,r)=>i.concat(r.body),[]).find(i=>i.username==n);return e?J(e):this.http.get(this.baseUrl+"users/"+n)}updateMember(n){return this.http.put(this.baseUrl+"users",n).pipe()}setMainPhoto(n){return this.http.put(this.baseUrl+"users/set-main-photo/"+n.id,{}).pipe()}deletePhoto(n){return this.http.delete(this.baseUrl+"users/delete-photo/"+n.id).pipe()}getTagsForPhoto(n){return this.http.get(this.baseUrl+"users/tags/"+n)}getPhotosWithTags(){return this.http.get(this.baseUrl+"users/photos-tags")}getAllTags(){return this.http.get(this.baseUrl+"users/tags")}addTagToPhoto(n,e){return this.http.post(`${this.baseUrl}users/assign-tags/${n}`,JSON.stringify(e),{headers:{"Content-Type":"application/json"}})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};var h8=()=>({tab:"Messages"});function p8(t,n){t&1&&I(0,"i",16)}var hc=class t{member=un.required();presenceService=S(Zo);likesService=S(qo);hasLiked=Ji(()=>this.likesService.likeIds().includes(this.member().id));isOnline=Ji(()=>this.presenceService.onlineUsers().includes(this.member().username));toggleLike(){this.likesService.toggleLike(this.member().id).subscribe({next:()=>{this.hasLiked()?this.likesService.likeIds.update(n=>n.filter(e=>e!=this.member().id)):this.likesService.likeIds.update(n=>[...n,this.member().id])}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-card"]],inputs:{member:[1,"member"]},decls:22,vars:13,consts:[[1,"card","mb-4"],[1,"card-img-wrapper"],[1,"card-img-top",3,"src","alt"],[1,"list-inline","member-icons","animate","text-center"],[1,"list-inline-item"],[1,"btn","btn-primary",3,"routerLink"],[1,"fa","fa-user"],[1,"btn","btn-primary",3,"click"],[1,"fa","fa-heart"],[1,"btn","btn-primary",3,"routerLink","queryParams"],[1,"fa","fa-envelope"],[1,"card-body","p-1"],[1,"card-title","text-center","mb-1"],[1,"fa","fa-user","me-2"],["class","fa fa-heart ms-2","style","color: red;",4,"ngIf"],[1,"card-text","text-muted","text-center"],[1,"fa","fa-heart","ms-2",2,"color","red"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"div",1),I(2,"img",2),d(3,"ul",3)(4,"li",4)(5,"button",5),I(6,"i",6),f()(),d(7,"li",4)(8,"button",7),D("click",function(){return i.toggleLike()}),I(9,"i",8),f()(),d(10,"li",4)(11,"button",9),I(12,"i",10),f()()()(),d(13,"div",11)(14,"h6",12)(15,"span"),I(16,"i",13),f(),y(17),I(18,"br"),T(19,p8,1,0,"i",14),f(),d(20,"p",15),y(21),f()()()),e&2&&(h(2),Vt("src",i.member().photoUrl||"https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain",Xe),Vt("alt",i.member().knownAs),h(3),g("routerLink","/members/"+i.member().username),h(6),jo("routerLink","/members/",i.member().username,""),g("queryParams",Zi(12,h8)),h(4),B("is-online",i.isOnline()),h(2),Dr(" ",i.member().knownAs,", ",i.member().age,""),h(2),g("ngIf",i.hasLiked()),h(2),H(i.member().city))},dependencies:[Pr,Te],styles:[".card[_ngcontent-%COMP%]:hover img[_ngcontent-%COMP%]{transform:scale(1.2);transition-duration:.5s;transition-timing-function:ease-out}.card[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{transform:scale(1);transition-duration:.5s;transition-timing-function:ease-out}.card-img-wrapper[_ngcontent-%COMP%]{overflow:hidden;position:relative}.member-icons[_ngcontent-%COMP%]{position:absolute;bottom:-30%;left:0;right:0;margin-right:auto;margin-left:auto;opacity:0;transition:all .3s ease-in-out}.card-img-wrapper[_ngcontent-%COMP%]:hover .member-icons[_ngcontent-%COMP%]{bottom:0;opacity:1}@keyframes _ngcontent-%COMP%_fa-blink{0%{opacity:1}to{opacity:.4}}.is-online[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_fa-blink 1.5s linear infinite;color:#01bd2a}"]})};var m8=(t,n)=>({"pull-left":t,"float-left":n}),g8=(t,n)=>({"pull-right":t,"float-right":n}),Zm=(t,n)=>({disabled:t,currentPage:n}),_8=(t,n,e)=>({disabled:t,$implicit:n,currentPage:e});function y8(t,n){if(t&1){let e=N();d(0,"li",11)(1,"a",12),D("click",function(r){C(e);let o=m();return w(o.selectPage(1,r))}),wi(2,13),f()()}if(t&2){let e=m(),i=Et(13);B("disabled",e.noPrevious()||e.disabled),h(2),g("ngTemplateOutlet",e.customFirstTemplate||i)("ngTemplateOutletContext",ro(4,Zm,e.noPrevious()||e.disabled,e.page))}}function v8(t,n){if(t&1){let e=N();d(0,"li",14)(1,"a",12),D("click",function(r){C(e);let o=m();return w(o.selectPage(o.page-1,r))}),wi(2,13),f()()}if(t&2){let e=m(),i=Et(11);B("disabled",e.noPrevious()||e.disabled),h(2),g("ngTemplateOutlet",e.customPreviousTemplate||i)("ngTemplateOutletContext",ro(4,Zm,e.noPrevious()||e.disabled,e.page))}}function b8(t,n){if(t&1){let e=N();d(0,"li",15)(1,"a",12),D("click",function(r){let o=C(e).$implicit,s=m();return w(s.selectPage(o.number,r))}),wi(2,13),f()()}if(t&2){let e=n.$implicit,i=m(),r=Et(7);B("active",e.active)("disabled",i.disabled&&!e.active),h(2),g("ngTemplateOutlet",i.customPageTemplate||r)("ngTemplateOutletContext",JE(6,_8,i.disabled,e,i.page))}}function C8(t,n){if(t&1){let e=N();d(0,"li",16)(1,"a",12),D("click",function(r){C(e);let o=m();return w(o.selectPage(o.page+1,r))}),wi(2,13),f()()}if(t&2){let e=m(),i=Et(9);B("disabled",e.noNext()||e.disabled),h(2),g("ngTemplateOutlet",e.customNextTemplate||i)("ngTemplateOutletContext",ro(4,Zm,e.noNext()||e.disabled,e.page))}}function w8(t,n){if(t&1){let e=N();d(0,"li",17)(1,"a",12),D("click",function(r){C(e);let o=m();return w(o.selectPage(o.totalPages,r))}),wi(2,13),f()()}if(t&2){let e=m(),i=Et(15);B("disabled",e.noNext()||e.disabled),h(2),g("ngTemplateOutlet",e.customLastTemplate||i)("ngTemplateOutletContext",ro(4,Zm,e.noNext()||e.disabled,e.page))}}function D8(t,n){if(t&1&&y(0),t&2){let e=n.$implicit;H(e.text)}}function M8(t,n){if(t&1&&y(0),t&2){let e=m();H(e.getText("next"))}}function S8(t,n){if(t&1&&y(0),t&2){let e=m();H(e.getText("previous"))}}function T8(t,n){if(t&1&&y(0),t&2){let e=m();H(e.getText("first"))}}function E8(t,n){if(t&1&&y(0),t&2){let e=m();H(e.getText("last"))}}var PA=(()=>{class t{constructor(){this.main={itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",pageBtnClass:"",rotate:!0},this.pager={itemsPerPage:15,previousText:"\xAB Previous",nextText:"Next \xBB",pageBtnClass:"",align:!0}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),x8={provide:Rt,useExisting:ze(()=>I8),multi:!0},I8=(()=>{class t{constructor(e,i,r){this.elementRef=e,this.changeDetection=r,this.align=!1,this.boundaryLinks=!1,this.directionLinks=!0,this.firstText="First",this.previousText="\xAB Previous",this.nextText="Next \xBB",this.lastText="Last",this.rotate=!0,this.pageBtnClass="",this.disabled=!1,this.numPages=new O,this.pageChanged=new O,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.classMap="",this.inited=!1,this._itemsPerPage=15,this._totalItems=0,this._totalPages=0,this._page=1,this.elementRef=e,this.config||this.configureOptions(Object.assign({},i.main,i.pager))}get itemsPerPage(){return this._itemsPerPage}set itemsPerPage(e){this._itemsPerPage=e,this.totalPages=this.calculateTotalPages()}get totalItems(){return this._totalItems}set totalItems(e){this._totalItems=e,this.totalPages=this.calculateTotalPages()}get totalPages(){return this._totalPages}set totalPages(e){this._totalPages=e,this.numPages.emit(e),this.inited&&this.selectPage(this.page)}get page(){return this._page}set page(e){let i=this._page;this._page=e>this.totalPages?this.totalPages:e||1,this.changeDetection.markForCheck(),!(i===this._page||typeof i>"u")&&this.pageChanged.emit({page:this._page,itemsPerPage:this.itemsPerPage})}configureOptions(e){this.config=Object.assign({},e)}ngOnInit(){typeof window<"u"&&(this.classMap=this.elementRef.nativeElement.getAttribute("class")||""),typeof this.maxSize>"u"&&(this.maxSize=this.config?.maxSize||0),typeof this.rotate>"u"&&(this.rotate=!!this.config?.rotate),typeof this.boundaryLinks>"u"&&(this.boundaryLinks=!!this.config?.boundaryLinks),typeof this.directionLinks>"u"&&(this.directionLinks=!!this.config?.directionLinks),typeof this.pageBtnClass>"u"&&(this.pageBtnClass=this.config?.pageBtnClass||""),typeof this.itemsPerPage>"u"&&(this.itemsPerPage=this.config?.itemsPerPage||0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.inited=!0}writeValue(e){this.page=e,this.pages=this.getPages(this.page,this.totalPages)}getText(e){return this[`${e}Text`]||this.config[`${e}Text`]}noPrevious(){return this.page===1}noNext(){return this.page===this.totalPages}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}selectPage(e,i){i&&i.preventDefault(),this.disabled||(i&&i.target&&i.target.blur(),this.writeValue(e),this.onChange(this.page))}makePage(e,i,r){return{text:i,number:e,active:r}}getPages(e,i){let r=[],o=1,s=i,a=typeof this.maxSize<"u"&&this.maxSizei&&(s=i,o=s-this.maxSize+1)):(o=(Math.ceil(e/this.maxSize)-1)*this.maxSize+1,s=Math.min(o+this.maxSize-1,i)));for(let l=o;l<=s;l++){let c=this.makePage(l,l.toString(),l===e);r.push(c)}if(a&&!this.rotate){if(o>1){let l=this.makePage(o-1,"...",!1);r.unshift(l)}if(sCa),multi:!0},Ca=(()=>{class t{constructor(e,i,r){this.elementRef=e,this.changeDetection=r,this.align=!0,this.boundaryLinks=!1,this.directionLinks=!0,this.rotate=!0,this.pageBtnClass="",this.disabled=!1,this.numPages=new O,this.pageChanged=new O,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.classMap="",this.inited=!1,this._itemsPerPage=10,this._totalItems=0,this._totalPages=0,this._page=1,this.elementRef=e,this.config||this.configureOptions(i.main)}get itemsPerPage(){return this._itemsPerPage}set itemsPerPage(e){this._itemsPerPage=e,this.totalPages=this.calculateTotalPages()}get totalItems(){return this._totalItems}set totalItems(e){this._totalItems=e,this.totalPages=this.calculateTotalPages()}get totalPages(){return this._totalPages}set totalPages(e){this._totalPages=e,this.numPages.emit(e),this.inited&&this.selectPage(this.page)}get page(){return this._page}set page(e){let i=this._page;this._page=e>this.totalPages?this.totalPages:e||1,this.changeDetection.markForCheck(),!(i===this._page||typeof i>"u")&&this.pageChanged.emit({page:this._page,itemsPerPage:this.itemsPerPage})}configureOptions(e){this.config=Object.assign({},e)}ngOnInit(){typeof window<"u"&&(this.classMap=this.elementRef.nativeElement.getAttribute("class")||""),typeof this.maxSize>"u"&&(this.maxSize=this.config?.maxSize||0),typeof this.rotate>"u"&&(this.rotate=!!this.config?.rotate),typeof this.boundaryLinks>"u"&&(this.boundaryLinks=!!this.config?.boundaryLinks),typeof this.directionLinks>"u"&&(this.directionLinks=!!this.config?.directionLinks),typeof this.pageBtnClass>"u"&&(this.pageBtnClass=this.config?.pageBtnClass||""),typeof this.itemsPerPage>"u"&&(this.itemsPerPage=this.config?.itemsPerPage||0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.inited=!0}writeValue(e){this.page=e,this.pages=this.getPages(this.page,this.totalPages)}getText(e){return this[`${e}Text`]||this.config[`${e}Text`]}noPrevious(){return this.page===1}noNext(){return this.page===this.totalPages}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}selectPage(e,i){i&&i.preventDefault(),this.disabled||(i&&i.target&&i.target.blur(),this.writeValue(e),this.onChange(this.page))}makePage(e,i,r){return{text:i,number:e,active:r}}getPages(e,i){let r=[],o=1,s=i,a=typeof this.maxSize<"u"&&this.maxSizei&&(s=i,o=s-this.maxSize+1)):(o=(Math.ceil(e/this.maxSize)-1)*this.maxSize+1,s=Math.min(o+this.maxSize-1,i)));for(let l=o;l<=s;l++){let c=this.makePage(l,l.toString(),l===e);r.push(c)}if(a&&!this.rotate){if(o>1){let l=this.makePage(o-1,"...",!1);r.unshift(l)}if(s{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({imports:[He]})}}return t})();var A8={provide:Rt,useExisting:ze(()=>P8),multi:!0},P8=(()=>{class t{constructor(){this.btnCheckboxTrue=!0,this.btnCheckboxFalse=!1,this.state=!1,this.isDisabled=!1,this.onChange=Function.prototype,this.onTouched=Function.prototype}onClick(){this.isDisabled||(this.toggle(!this.state),this.onChange(this.value))}ngOnInit(){this.toggle(this.trueValue===this.value)}get trueValue(){return typeof this.btnCheckboxTrue<"u"?this.btnCheckboxTrue:!0}get falseValue(){return typeof this.btnCheckboxFalse<"u"?this.btnCheckboxFalse:!1}toggle(e){this.state=e,this.value=this.state?this.trueValue:this.falseValue}writeValue(e){this.state=this.trueValue===e,this.value=e?this.trueValue:this.falseValue}setDisabledState(e){this.isDisabled=e}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=U({type:t,selectors:[["","btnCheckbox",""]],hostVars:3,hostBindings:function(i,r){i&1&&D("click",function(){return r.onClick()}),i&2&&(ee("aria-pressed",r.state),B("active",r.state))},inputs:{btnCheckboxTrue:"btnCheckboxTrue",btnCheckboxFalse:"btnCheckboxFalse"},features:[pe([A8])]})}}return t})(),O8={provide:Rt,useExisting:ze(()=>ls),multi:!0},ls=(()=>{class t{get value(){return this.group?this.group.value:this._value}set value(e){if(this.group){this.group.value=e;return}this._value=e,this._onChange(e)}get disabled(){return this._disabled}set disabled(e){this.setDisabledState(e)}get controlOrGroupDisabled(){return this.disabled||this.group&&this.group.disabled?!0:void 0}get hasDisabledClass(){return this.controlOrGroupDisabled&&!this.isActive}get isActive(){return this.btnRadio===this.value}get tabindex(){if(!this.controlOrGroupDisabled)return this.isActive||this.group==null?0:-1}get hasFocus(){return this._hasFocus}constructor(e,i,r,o){this.el=e,this.cdr=i,this.renderer=r,this.group=o,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.uncheckable=!1,this.role="radio",this._disabled=!1,this._hasFocus=!1}toggleIfAllowed(){this.canToggle()&&(this.uncheckable&&this.btnRadio===this.value?this.value=void 0:this.value=this.btnRadio)}onSpacePressed(e){this.toggleIfAllowed(),e.preventDefault()}focus(){this.el.nativeElement.focus()}onFocus(){this._hasFocus=!0}onBlur(){this._hasFocus=!1,this.onTouched()}canToggle(){return!this.controlOrGroupDisabled&&(this.uncheckable||this.btnRadio!==this.value)}ngOnChanges(e){"uncheckable"in e&&(this.uncheckable=this.uncheckable!==!1&&typeof this.uncheckable<"u")}_onChange(e){if(this.group){this.group.value=e;return}this.onTouched(),this.onChange(e)}writeValue(e){this.value=e,this.cdr.markForCheck()}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){if(this._disabled=e,e){this.renderer.setAttribute(this.el.nativeElement,"disabled","disabled");return}this.renderer.removeAttribute(this.el.nativeElement,"disabled")}static{this.\u0275fac=function(i){return new(i||t)(b(Y),b(ct),b(Ae),b(ze(()=>OA),8))}}static{this.\u0275dir=U({type:t,selectors:[["","btnRadio",""]],hostVars:8,hostBindings:function(i,r){i&1&&D("click",function(){return r.toggleIfAllowed()})("keydown.space",function(s){return r.onSpacePressed(s)})("focus",function(){return r.onFocus()})("blur",function(){return r.onBlur()}),i&2&&(ee("aria-disabled",r.controlOrGroupDisabled)("aria-checked",r.isActive)("role",r.role)("tabindex",r.tabindex),B("disabled",r.hasDisabledClass)("active",r.isActive))},inputs:{btnRadio:"btnRadio",uncheckable:"uncheckable",value:"value",disabled:"disabled"},features:[pe([O8]),Se]})}}return t})(),R8={provide:Rt,useExisting:ze(()=>OA),multi:!0},OA=(()=>{class t{constructor(e){this.cdr=e,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.role="radiogroup",this._disabled=!1}get value(){return this._value}set value(e){this._value=e,this.onChange(e)}get disabled(){return this._disabled}get tabindex(){return this._disabled?null:0}writeValue(e){this._value=e,this.cdr.markForCheck()}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this.radioButtons&&(this._disabled=e,this.radioButtons.forEach(i=>{i.setDisabledState(e)}),this.cdr.markForCheck())}onFocus(){if(this._disabled)return;let e=this.getActiveOrFocusedRadio();if(e){e.focus();return}if(this.radioButtons){let i=this.radioButtons.find(r=>!r.disabled);i&&i.focus()}}onBlur(){this.onTouched&&this.onTouched()}selectNext(e){this.selectInDirection("next"),e.preventDefault()}selectPrevious(e){this.selectInDirection("previous"),e.preventDefault()}selectInDirection(e){if(this._disabled)return;function i(o,s){let l=(o+(e==="next"?1:-1))%s.length;return l<0&&(l=s.length-1),l}let r=this.getActiveOrFocusedRadio();if(r&&this.radioButtons){let o=this.radioButtons.toArray(),s=o.indexOf(r);for(let a=i(s,o);a!==s;a=i(a,o))if(o[a].canToggle()){o[a].toggleIfAllowed(),o[a].focus();break}}}getActiveOrFocusedRadio(){if(this.radioButtons)return this.radioButtons.find(e=>e.isActive)||this.radioButtons.find(e=>e.hasFocus)}static{this.\u0275fac=function(i){return new(i||t)(b(ct))}}static{this.\u0275dir=U({type:t,selectors:[["","btnRadioGroup",""]],contentQueries:function(i,r,o){if(i&1&&Ho(o,ls,4),i&2){let s;et(s=tt())&&(r.radioButtons=s)}},hostVars:2,hostBindings:function(i,r){i&1&&D("focus",function(){return r.onFocus()})("blur",function(){return r.onBlur()})("keydown.ArrowRight",function(s){return r.selectNext(s)})("keydown.ArrowDown",function(s){return r.selectNext(s)})("keydown.ArrowLeft",function(s){return r.selectPrevious(s)})("keydown.ArrowUp",function(s){return r.selectPrevious(s)}),i&2&&ee("role",r.role)("tabindex",r.tabindex)},features:[pe([R8])]})}}return t})(),mc=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({})}}return t})();var N8=(t,n)=>n.value,L8=(t,n)=>n.id;function F8(t,n){if(t&1&&(d(0,"option",10),y(1),f()),t&2){let e=n.$implicit;g("value",e.value),h(),H(e.display)}}function V8(t,n){if(t&1&&(d(0,"div",17)(1,"p"),I(2,"app-member-card",19),f()()),t&2){let e=n.$implicit;h(2),g("member",e)}}function j8(t,n){if(t&1){let e=N();d(0,"div",18)(1,"pagination",20),D("pageChanged",function(r){C(e);let o=m();return w(o.pageChange(r))}),Re("ngModelChange",function(r){let o;C(e);let s=m();return Le((o=s.paginatedResult())==null?null:o.pagination.currentPage,r)||(((o=s.paginatedResult())==null?null:o.pagination).currentPage=r),w(r)}),f()()}if(t&2){let e,i,r,o=m();h(),g("boundaryLinks",!0)("totalItems",(e=o.paginatedResult())==null?null:e.pagination.totalItems)("itemsPerPage",(i=o.paginatedResult())==null?null:i.pagination.itemsPerPage),Oe("ngModel",(r=o.paginatedResult())==null?null:r.pagination.currentPage),g("maxSize",10)}}var Jm=class t{membersService=S(Hi);genderList=[{value:"male",display:"Males"},{value:"female",display:"Females"}];ngOnInit(){this.membersService.paginatedResult()||this.loadMembers()}loadMembers(){this.membersService.getMembers()}resetFilters(){this.membersService.resetUserParams(),this.loadMembers()}pageChange(n){this.membersService.userParams().pageNumber!=n.page&&(this.membersService.userParams().pageNumber=n.page,this.loadMembers())}paginatedResult(){return this.membersService.paginatedResult()}userParams(){return this.membersService.userParams()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-lists"]],decls:34,vars:7,consts:[["form","ngForm"],[1,"row"],[1,"text-center","mt-3"],[1,"container","mt-3"],[1,"d-flex","mb-3",3,"ngSubmit"],[1,"d-flex","mx-2"],[1,"col-form-label"],["type","number","name","minAge",1,"form-control","ms-1",2,"width","70px",3,"ngModelChange","ngModel"],["type","number","name","maxAge",1,"form-control","ms-1",2,"width","70px",3,"ngModelChange","ngModel"],["name","gender",1,"form-select","ms-1",2,"width","130px",3,"ngModelChange","ngModel"],[3,"value"],["type","submit",1,"btn","btn-primary","ms-1"],["type","button",1,"btn","btn-info","ms-1",3,"click"],[1,"col"],[1,"btn-group","float-end"],["name","orderBy","btnRadio","lastActive",1,"btn","btn-primary",3,"click","ngModelChange","ngModel"],["name","orderBy","btnRadio","created",1,"btn","btn-primary",3,"click","ngModelChange","ngModel"],[1,"col-2"],[1,"d-flex","justify-content-center"],[3,"member"],["previousText","\u2039","nextText","\u203A","firstText","\xAB","lastText","\xBB",3,"pageChanged","ngModelChange","boundaryLinks","totalItems","itemsPerPage","ngModel","maxSize"]],template:function(e,i){if(e&1){let r=N();d(0,"div",1)(1,"div",2)(2,"h2"),y(3),f()(),d(4,"div",3)(5,"form",4,0),D("ngSubmit",function(){return C(r),w(i.loadMembers())}),d(7,"div",5)(8,"label",6),y(9,"Age from: "),f(),d(10,"input",7),Re("ngModelChange",function(s){return C(r),Le(i.userParams().minAge,s)||(i.userParams().minAge=s),w(s)}),f()(),d(11,"div",5)(12,"label",6),y(13,"Age to: "),f(),d(14,"input",8),Re("ngModelChange",function(s){return C(r),Le(i.userParams().maxAge,s)||(i.userParams().maxAge=s),w(s)}),f()(),d(15,"div",5)(16,"label",6),y(17,"Show "),f(),d(18,"select",9),Re("ngModelChange",function(s){return C(r),Le(i.userParams().gender,s)||(i.userParams().gender=s),w(s)}),yt(19,F8,2,2,"option",10,N8),f()(),d(21,"button",11),y(22,"Apply filters "),f(),d(23,"button",12),D("click",function(){return C(r),w(i.resetFilters())}),y(24,"Reset filters "),f(),d(25,"div",13)(26,"div",14)(27,"button",15),D("click",function(){return C(r),w(i.loadMembers())}),Re("ngModelChange",function(s){return C(r),Le(i.userParams().orderBy,s)||(i.userParams().orderBy=s),w(s)}),y(28,"Last active"),f(),d(29,"button",16),D("click",function(){return C(r),w(i.loadMembers())}),Re("ngModelChange",function(s){return C(r),Le(i.userParams().orderBy,s)||(i.userParams().orderBy=s),w(s)}),y(30,"Newest members"),f()()()()(),yt(31,V8,3,1,"div",17,L8),f(),T(33,j8,2,5,"div",18)}if(e&2){let r,o,s;h(3),oe("Your matches - ",(r=i.paginatedResult())==null||r.pagination==null?null:r.pagination.totalItems,""),h(7),Oe("ngModel",i.userParams().minAge),h(4),Oe("ngModel",i.userParams().maxAge),h(4),Oe("ngModel",i.userParams().gender),h(),vt(i.genderList),h(8),Oe("ngModel",i.userParams().orderBy),h(2),Oe("ngModel",i.userParams().orderBy),h(2),vt((o=i.paginatedResult())==null?null:o.items),h(2),je((s=i.paginatedResult())!=null&&s.pagination?33:-1)}},dependencies:[hc,pc,Ca,Dn,Ii,Kp,Zp,Bt,Ub,Vl,kt,xi,pn,ir,mc,ls],encapsulation:2})};var H8=["*"],B8=t=>["nav-item",t];function U8(t,n){if(t&1){let e=N();d(0,"span",7),D("click",function(r){C(e);let o=m().$implicit,s=m();return r.preventDefault(),w(s.removeTab(o))}),y(1," \u274C"),f()}}function $8(t,n){if(t&1){let e=N();d(0,"li",3),D("keydown",function(r){let o=C(e).index,s=m();return w(s.keyNavActions(r,o))}),d(1,"a",4),D("click",function(){let r=C(e).$implicit;return w(r.active=!0)}),d(2,"span",5),y(3),f(),T(4,U8,2,0,"span",6),f()()}if(t&2){let e=n.$implicit;B("active",e.active)("disabled",e.disabled),g("ngClass",Mr(15,B8,e.customClass||"")),h(),B("active",e.active)("disabled",e.disabled),ee("aria-controls",e.id?e.id:"")("aria-selected",!!e.active)("id",e.id?e.id+"-link":""),h(),g("ngTransclude",e.headingRef),h(),H(e.heading),h(),g("ngIf",e.removable)}}var z8=(()=>{class t{set ngTransclude(e){this._ngTransclude=e,e&&this.viewRef.createEmbeddedView(e)}get ngTransclude(){return this._ngTransclude}constructor(e){this.viewRef=e}static{this.\u0275fac=function(i){return new(i||t)(b(_t))}}static{this.\u0275dir=U({type:t,selectors:[["","ngTransclude",""]],inputs:{ngTransclude:"ngTransclude"}})}}return t})(),Y8=(()=>{class t{constructor(){this.type="tabs",this.isKeysAllowed=!0,this.ariaLabel="Tabs"}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),wa=(()=>{class t{get vertical(){return this._vertical}set vertical(e){this._vertical=e,this.setClassMap()}get justified(){return this._justified}set justified(e){this._justified=e,this.setClassMap()}get type(){return this._type}set type(e){this._type=e,this.setClassMap()}get isKeysAllowed(){return this._isKeysAllowed}set isKeysAllowed(e){this._isKeysAllowed=e}constructor(e,i,r){this.renderer=i,this.elementRef=r,this.clazz=!0,this.tabs=[],this.classMap={},this.ariaLabel="Tabs",this.isDestroyed=!1,this._vertical=!1,this._justified=!1,this._type="tabs",this._isKeysAllowed=!0,Object.assign(this,e)}ngOnDestroy(){this.isDestroyed=!0}addTab(e){this.tabs.push(e),e.active=this.tabs.length===1&&!e.active}removeTab(e,i={reselect:!0,emit:!0}){let r=this.tabs.indexOf(e);if(!(r===-1||this.isDestroyed)){if(i.reselect&&e.active&&this.hasAvailableTabs(r)){let o=this.getClosestTabIndex(r);this.tabs[o].active=!0}i.emit&&e.removed.emit(e),this.tabs.splice(r,1),e.elementRef.nativeElement.parentNode&&this.renderer.removeChild(e.elementRef.nativeElement.parentNode,e.elementRef.nativeElement)}}keyNavActions(e,i){if(!this.isKeysAllowed)return;let r=Array.from(this.elementRef.nativeElement.querySelectorAll(".nav-link"));if(e.keyCode===13||e.key==="Enter"||e.keyCode===32||e.key==="Space"){e.preventDefault(),r[i%r.length].click();return}if(e.keyCode===39||e.key==="RightArrow"){let o,s=1;do o=r[(i+s)%r.length],s++;while(o.classList.contains("disabled"));o.focus();return}if(e.keyCode===37||e.key==="LeftArrow"){let o,s=1,a=i;do a-s<0?(a=r.length-1,o=r[a],s=0):o=r[a-s],s++;while(o.classList.contains("disabled"));o.focus();return}if(e.keyCode===36||e.key==="Home"){e.preventDefault();let o,s=0;do o=r[s%r.length],s++;while(o.classList.contains("disabled"));o.focus();return}if(e.keyCode===35||e.key==="End"){e.preventDefault();let o,s=1,a=i;do a-s<0?(a=r.length-1,o=r[a],s=0):o=r[a-s],s++;while(o.classList.contains("disabled"));o.focus();return}if((e.keyCode===46||e.key==="Delete")&&this.tabs[i].removable){if(this.removeTab(this.tabs[i]),r[i+1]){r[(i+1)%r.length].focus();return}r[r.length-1]&&r[0].focus()}}getClosestTabIndex(e){let i=this.tabs.length;if(!i)return-1;for(let r=1;r<=i;r+=1){let o=e-r,s=e+r;if(this.tabs[o]&&!this.tabs[o].disabled)return o;if(this.tabs[s]&&!this.tabs[s].disabled)return s}return-1}hasAvailableTabs(e){let i=this.tabs.length;if(!i)return!1;for(let r=0;r{class t{get customClass(){return this._customClass}set customClass(e){this.customClass&&this.customClass.split(" ").forEach(i=>{this.renderer.removeClass(this.elementRef.nativeElement,i)}),this._customClass=e?e.trim():"",this.customClass&&this.customClass.split(" ").forEach(i=>{this.renderer.addClass(this.elementRef.nativeElement,i)})}get active(){return this._active}set active(e){if(this._active!==e){if(this.disabled&&e||!e){this._active&&!e&&(this.deselect.emit(this),this._active=e);return}this._active=e,this.selectTab.emit(this),this.tabset.tabs.forEach(i=>{i!==this&&(i.active=!1)})}}get ariaLabelledby(){return this.id?`${this.id}-link`:""}constructor(e,i,r){this.elementRef=i,this.renderer=r,this.disabled=!1,this.removable=!1,this.selectTab=new O,this.deselect=new O,this.removed=new O,this.addClass=!0,this.role="tabpanel",this._active=!1,this._customClass="",this.tabset=e,this.tabset.addTab(this)}ngOnInit(){this.removable=!!this.removable}ngOnDestroy(){this.tabset.removeTab(this,{reselect:!1,emit:!1})}static{this.\u0275fac=function(i){return new(i||t)(b(wa),b(Y),b(Ae))}}static{this.\u0275dir=U({type:t,selectors:[["tab"],["","tab",""]],hostVars:7,hostBindings:function(i,r){i&2&&(ee("id",r.id)("role",r.role)("aria-labelledby",r.ariaLabelledby),B("active",r.active)("tab-pane",r.addClass))},inputs:{heading:"heading",id:"id",disabled:"disabled",removable:"removable",customClass:"customClass",active:"active"},outputs:{selectTab:"selectTab",deselect:"deselect",removed:"removed"},exportAs:["tab"]})}}return t})();var _c=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({imports:[He]})}}return t})();function Xm(t){return t==null?"":typeof t=="string"?t:`${t}px`}var W8=new $("cdk-dir-doc",{providedIn:"root",factory:G8});function G8(){return S(Pe)}var q8=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function gw(t){let n=t?.toLowerCase()||"";return n==="auto"&&typeof navigator<"u"&&navigator?.language?q8.test(navigator.language)?"rtl":"ltr":n==="rtl"?"rtl":"ltr"}var yc=(()=>{class t{value="ltr";change=new O;constructor(){let e=S(W8,{optional:!0});if(e){let i=e.body?e.body.dir:null,r=e.documentElement?e.documentElement.dir:null;this.value=gw(i||r||"ltr")}}ngOnDestroy(){this.change.complete()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var eg=(()=>{class t{_dir="ltr";_isInitialized=!1;_rawDir;change=new O;get dir(){return this._dir}set dir(e){let i=this._dir;this._dir=gw(e),this._rawDir=e,i!==this._dir&&this._isInitialized&&this.change.emit(this._dir)}get value(){return this.dir}ngAfterContentInit(){this._isInitialized=!0}ngOnDestroy(){this.change.complete()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=U({type:t,selectors:[["","dir",""]],hostVars:1,hostBindings:function(i,r){i&2&&ee("dir",r._rawDir)},inputs:{dir:"dir"},outputs:{change:"dirChange"},exportAs:["dir"],features:[pe([{provide:yc,useExisting:t}])]})}return t})();var _w;try{_w=typeof Intl<"u"&&Intl.v8BreakIterator}catch{_w=!1}var yw=(()=>{class t{_platformId=S(ti);isBrowser=this._platformId?Ws(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||_w)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Hr=function(t){return t[t.NORMAL=0]="NORMAL",t[t.NEGATED=1]="NEGATED",t[t.INVERTED=2]="INVERTED",t}(Hr||{}),tg;function vw(){if(typeof document!="object"||!document)return Hr.NORMAL;if(tg==null){let t=document.createElement("div"),n=t.style;t.dir="rtl",n.width="1px",n.overflow="auto",n.visibility="hidden",n.pointerEvents="none",n.position="absolute";let e=document.createElement("div"),i=e.style;i.width="2px",i.height="1px",t.appendChild(e),document.body.appendChild(t),tg=Hr.NORMAL,t.scrollLeft===0&&(t.scrollLeft=1,tg=t.scrollLeft===0?Hr.NEGATED:Hr.INVERTED),t.remove()}return tg}function Z8(t,n){if(t&1){let e=N();d(0,"div",1),D("click",function(){let r=C(e).index,o=m();return w(o.config.disableBullets?null:o.gallery.ref(o.galleryId).set(r))}),I(1,"div",2),f()}if(t&2){let e=n.index,i=m();dn("width",i.config==null?null:i.config.bulletSize,"px")("height",i.config==null?null:i.config.bulletSize,"px"),B("g-bullet-active",e===i.state.currIndex)}}function J8(t,n){if(t&1){let e=N();d(0,"i",2),D("click",function(){C(e);let r=m();return w(r.gallery.ref(r.id).prev(r.config.scrollBehavior))}),f()}if(t&2){let e=m();g("innerHtml",e.navIcon,ii)}}function X8(t,n){if(t&1){let e=N();d(0,"i",3),D("click",function(){C(e);let r=m();return w(r.gallery.ref(r.id).next(r.config.scrollBehavior))}),f()}if(t&2){let e=m();g("innerHtml",e.navIcon,ii)}}var e6=["iframe"];function t6(t,n){if(t&1&&I(0,"iframe",3,1),t&2){let e=m();g("src",e.iframeSrc,Ah),ee("loading",e.loadingAttr)}}function n6(t,n){if(t&1&&I(0,"iframe",4,1),t&2){let e=m();g("src",e.iframeSrc,Ah),ee("loading",e.loadingAttr)}}var i6=["video"];function r6(t,n){if(t&1&&I(0,"source",5),t&2){let e=m().$implicit;g("src",e==null?null:e.url,Xe)("type",e.type)}}function o6(t,n){if(t&1&&I(0,"source",6),t&2){let e=m().$implicit;g("src",e==null?null:e.url,Xe)}}function s6(t,n){if(t&1&&(Lt(0),T(1,r6,1,2,"source",4)(2,o6,1,1,"ng-template",null,1,Pn),Ft()),t&2){let e=n.$implicit,i=Et(3);h(),g("ngIf",e==null?null:e.type)("ngIfElse",i)}}function a6(t,n){if(t&1){let e=N();Lt(0),d(1,"img",8),D("load",function(){C(e);let r=m();return w(r.state="success")})("error",function(r){C(e);let o=m();return o.state="failed",w(o.error.emit(r))}),f(),Ft()}if(t&2){let e=m();h(),dn("visibility",e.state==="success"?"visible":"hidden"),g("@fadeIn",e.state)("src",e.src,Xe),ee("alt",e.alt)("loading",e.loadingAttr)}}function l6(t,n){if(t&1){let e=N();d(0,"img",9),D("load",function(){C(e);let r=m();return w(r.state="success")})("error",function(r){C(e);let o=m();return o.state="failed",w(o.error.emit(r))}),f()}if(t&2){let e=m();dn("visibility",e.state==="success"?"visible":"hidden"),g("galleryImage",e.index)("@fadeIn",e.state)("src",e.src,Xe),ee("alt",e.alt)("loading",e.loadingAttr)}}function c6(t,n){if(t&1&&I(0,"div",12),t&2){let e=m(2);g("innerHTML",e.errorTemplate,ii)}}function u6(t,n){if(t&1&&(Lt(0),d(1,"h4"),I(2,"div",13),f(),Ft()),t&2){let e=m(3);h(2),g("innerHTML",e.errorSvg,ii)}}function d6(t,n){if(t&1&&(d(0,"h2"),I(1,"div",14),f(),d(2,"p"),y(3,"Unable to load the image!"),f()),t&2){let e=m(3);h(),g("innerHTML",e.errorSvg,ii)}}function f6(t,n){if(t&1&&T(0,u6,3,1,"ng-container",5)(1,d6,4,1,"ng-template",null,2,Pn),t&2){let e=Et(2),i=m(2);g("ngIf",i.isThumbnail)("ngIfElse",e)}}function h6(t,n){if(t&1&&(d(0,"div",10),T(1,c6,1,1,"div",11)(2,f6,3,2,"ng-template",null,1,Pn),f()),t&2){let e=Et(3),i=m();h(),g("ngIf",i.errorTemplate)("ngIfElse",e)}}function p6(t,n){if(t&1&&I(0,"div",16),t&2){let e=m(2);g("innerHTML",e.loaderTemplate,ii)}}function m6(t,n){t&1&&I(0,"div",18)}function g6(t,n){if(t&1&&T(0,m6,1,0,"div",17),t&2){let e=m(2);g("ngIf",e.isThumbnail)}}function _6(t,n){if(t&1&&(Lt(0),T(1,p6,1,1,"div",15)(2,g6,1,1,"ng-template",null,3,Pn),Ft()),t&2){let e=Et(3),i=m();h(),g("ngIf",i.loaderTemplate)("ngIfElse",e)}}function y6(t,n){t&1&&wi(0)}function v6(t,n){if(t&1&&(d(0,"div",9),T(1,y6,1,0,"ng-container",10),f()),t&2){let e=m(3);h(),g("ngTemplateOutlet",e.config.imageTemplate)("ngTemplateOutletContext",e.imageContext)}}function b6(t,n){if(t&1){let e=N();Lt(0),d(1,"gallery-image",7),D("error",function(r){C(e);let o=m(2);return w(o.error.emit(r))}),f(),T(2,v6,2,2,"div",8),Ft()}if(t&2){let e=m(2);h(),g("src",e.imageData.src)("alt",e.imageData.alt)("index",e.index)("loadingAttr",e.config.loadingAttr)("loadingIcon",e.config.loadingIcon)("loadingError",e.config.loadingError),h(),g("ngIf",e.config.imageTemplate)}}function C6(t,n){if(t&1){let e=N();d(0,"gallery-video",11),D("error",function(r){C(e);let o=m(2);return w(o.error.emit(r))}),f()}if(t&2){let e=m(2);g("src",e.videoData.src)("mute",e.videoData.mute)("poster",e.videoData.poster)("controls",e.videoData.controls)("controlsList",e.videoData.controlsList)("disablePictureInPicture",e.videoData.disablePictureInPicture)("play",e.isAutoPlay)("pause",e.currIndex!==e.index)}}function w6(t,n){if(t&1&&I(0,"gallery-iframe",12),t&2){let e=m(2);g("src",e.youtubeSrc)("autoplay",e.isAutoPlay)("loadingAttr",e.config.loadingAttr)("pause",e.currIndex!==e.index)}}function D6(t,n){if(t&1&&I(0,"gallery-iframe",12),t&2){let e=m(2);g("src",e.vimeoSrc)("autoplay",e.isAutoPlay)("loadingAttr",e.config.loadingAttr)("pause",e.currIndex!==e.index)}}function M6(t,n){if(t&1&&I(0,"gallery-iframe",13),t&2){let e=m(2);g("src",e.data.src)("loadingAttr",e.config.loadingAttr)}}function S6(t,n){t&1&&wi(0)}function T6(t,n){if(t&1&&(d(0,"div",9),T(1,S6,1,0,"ng-container",10),f()),t&2){let e=m(3);h(),g("ngTemplateOutlet",e.config.itemTemplate)("ngTemplateOutletContext",e.itemContext)}}function E6(t,n){if(t&1&&(Lt(0),T(1,T6,2,2,"div",8),Ft()),t&2){let e=m(2);h(),g("ngIf",e.config.itemTemplate)}}function x6(t,n){if(t&1&&(Lt(0,1),T(1,b6,3,7,"ng-container",2)(2,C6,1,8,"gallery-video",3)(3,w6,1,4,"gallery-iframe",4)(4,D6,1,4,"gallery-iframe",4)(5,M6,1,2,"gallery-iframe",5)(6,E6,2,1,"ng-container",6),Ft()),t&2){let e=m();g("ngSwitch",e.type),h(),g("ngSwitchCase",e.Types.Image),h(),g("ngSwitchCase",e.Types.Video),h(),g("ngSwitchCase",e.Types.Youtube),h(),g("ngSwitchCase",e.Types.Vimeo),h(),g("ngSwitchCase",e.Types.Iframe)}}var FA=["slider"],I6=["*"];function k6(t,n){if(t&1){let e=N();d(0,"gallery-item",5),D("activeIndexChange",function(r){C(e);let o=m();return w(o.onActiveIndexChange(r))})("click",function(){let r=C(e).index,o=m();return w(o.itemClick.emit(r))})("error",function(r){let o=C(e).index,s=m();return w(s.error.emit({itemIndex:o,error:r}))}),f()}if(t&2){let e=n.$implicit,i=n.index,r=m();g("type",e.type)("config",r.config)("data",e.data)("currIndex",r.state.currIndex)("index",i)("count",r.state.items.length)("itemIntersectionObserverDisabled",r.isScrolling||r.isSliding||r.isResizing)("adapter",r.adapter),ee("galleryId",r.galleryId)}}function A6(t,n){t&1&&(d(0,"div",6)(1,"div",7),y(2,"RESIZING"),f(),d(3,"div",8),y(4,"SCROLLING"),f(),d(5,"div",9),y(6,"SLIDING"),f()())}function P6(t,n){t&1&&wi(0)}function O6(t,n){if(t&1&&(d(0,"div",2),T(1,P6,1,0,"ng-container",3),f()),t&2){let e=m();h(),g("ngTemplateOutlet",e.config.thumbTemplate)("ngTemplateOutletContext",e.imageContext)}}function R6(t,n){if(t&1){let e=N();d(0,"gallery-thumb",4),D("click",function(){let r=C(e).index,o=m();return w(o.config.disableThumbs?null:o.thumbClick.emit(r))})("error",function(r){let o=C(e).index,s=m();return w(s.error.emit({itemIndex:o,error:r}))}),f()}if(t&2){let e=n.$implicit,i=n.index,r=m();g("type",e.type)("config",r.config)("data",e.data)("currIndex",r.state.currIndex)("index",i)("count",r.state.items.length),ee("galleryId",r.galleryId)}}var N6=(t,n)=>({state:t,config:n});function L6(t,n){if(t&1){let e=N();d(0,"gallery-thumbs",7),D("thumbClick",function(r){C(e);let o=m();return w(o.thumbClick.emit(r))})("error",function(r){C(e);let o=m();return w(o.error.emit(r))}),f()}if(t&2){let e=m();g("state",e.state)("config",e.config)("galleryId",e.galleryId)}}function F6(t,n){if(t&1&&I(0,"gallery-nav",8),t&2){let e=m();g("state",e.state)("config",e.config)("galleryId",e.galleryId)}}function V6(t,n){if(t&1&&I(0,"gallery-bullets",8),t&2){let e=m();g("state",e.state)("config",e.config)("galleryId",e.galleryId)}}function j6(t,n){if(t&1&&I(0,"gallery-counter",9),t&2){let e=m();g("state",e.state)}}function H6(t,n){t&1&&wi(0)}var hi=function(t){return t.INITIALIZED="initialized",t.ITEMS_CHANGED="itemsChanged",t.INDEX_CHANGED="indexChanged",t.PLAY="play",t.STOP="stop",t}(hi||{}),bw=function(t){return t.Cover="cover",t.Contain="contain",t}(bw||{}),rg=function(t){return t.Preload="preload",t.Lazy="lazy",t.Default="default",t}(rg||{}),VA=function(t){return t.Eager="eager",t.Lazy="lazy",t}(VA||{}),vc=function(t){return t.Top="top",t.Left="left",t.Right="right",t.Bottom="bottom",t}(vc||{}),jA=function(t){return t.Top="top",t.Bottom="bottom",t}(jA||{}),HA=function(t){return t.Top="top",t.Bottom="bottom",t}(HA||{}),Ad=function(t){return t.Horizontal="horizontal",t.Vertical="vertical",t}(Ad||{}),Bi=function(t){return t.Image="image",t.Video="video",t.Youtube="youtube",t.Vimeo="vimeo",t.Iframe="iframe",t}(Bi||{}),RA={action:hi.INITIALIZED,isPlaying:!1,hasNext:!1,hasPrev:!1,currIndex:0,items:[]},NA={nav:!0,loop:!1,bullets:!1,thumbs:!1,debug:!1,bulletSize:6,counter:!1,autoplay:!1,thumbWidth:120,thumbHeight:90,disableBullets:!1,disableThumbs:!1,disableScroll:!1,disableThumbScroll:!1,disableMouseScroll:!1,disableThumbMouseScroll:!1,autoplayInterval:3e3,scrollDuration:468,scrollEase:{x1:.42,y1:0,x2:.58,y2:1},thumbCentralized:!1,thumbAutosize:!1,itemAutosize:!1,autoHeight:!1,scrollBehavior:"smooth",resizeDebounceTime:0,loadingAttr:VA.Lazy,imageSize:bw.Contain,thumbImageSize:bw.Cover,bulletPosition:jA.Bottom,counterPosition:HA.Top,thumbPosition:vc.Bottom,loadingStrategy:rg.Preload,orientation:Ad.Horizontal,navIcon:'',loadingIcon:''},Pd=class{constructor(n){this.data=n,this.type=Bi.Image}},Cw=class{constructor(n){this.data=n,this.type=Bi.Video}},ww=class{constructor(n){this.data=n,this.type=Bi.Iframe}},Dw=class{constructor(n){this.data=G(E({},n),{src:`https://youtube.com/embed/${n.src}`,thumb:n.thumb?n.thumb:`//img.youtube.com/vi/${n.src}/default.jpg`}),this.type=Bi.Youtube}},Mw=class{constructor(n){this.data=G(E({},n),{src:`https://player.vimeo.com/video/${n.src}`,thumb:n.thumb?n.thumb:this.getVimeoThumb(n.src)}),this.type=Bi.Vimeo}getVimeoThumb(n){return`//vumbnail.com/${n}.jpg`}},ng=t=>he(n=>t.indexOf(n.action)>-1),Sw=class{get stateSnapshot(){return this._state.value}get configSnapshot(){return this._config.value}get initialized(){return this.state.pipe(ng([hi.INITIALIZED]))}get itemsChanged(){return this.state.pipe(ng([hi.ITEMS_CHANGED]))}get indexChanged(){return this.state.pipe(ng([hi.INDEX_CHANGED]))}get playingChanged(){return this.state.pipe(ng([hi.PLAY,hi.STOP]))}constructor(n,e){this.deleteInstance=e,this.itemClick=new ie,this.thumbClick=new ie,this.error=new ie,this._state=new Ve(RA),this._config=new Ve(n),this.state=this._state.asObservable(),this.config=this._config.asObservable()}setState(n){this._state.next(E(E({},this.stateSnapshot),n))}setConfig(n){this._config.next(E(E({},this._config.value),n))}add(n,e){let i=[...this.stateSnapshot.items,n];this.setState({action:hi.ITEMS_CHANGED,items:i,hasNext:i.length>1,currIndex:e?i.length-1:this.stateSnapshot.currIndex})}addImage(n,e){this.add(new Pd(n),e)}addVideo(n,e){this.add(new Cw(n),e)}addIframe(n,e){this.add(new ww(n),e)}addYoutube(n,e){this.add(new Dw(n),e)}addVimeo(n,e){this.add(new Mw(n),e)}remove(n){let e=this.stateSnapshot,i=[...e.items.slice(0,n),...e.items.slice(n+1,e.items.length)];this.setState({action:hi.ITEMS_CHANGED,currIndex:n<1?e.currIndex:n-1,items:i,hasNext:i.length>1,hasPrev:n>0})}load(n){n&&this.setState({action:hi.ITEMS_CHANGED,items:n,hasNext:n.length>1,hasPrev:!1})}set(n,e=this._config.value.scrollBehavior){if(n<0||n>=this.stateSnapshot.items.length){console.error(`[NgGallery]: Unable to set the active item because the given index (${n}) is outside the items range!`);return}n!==this.stateSnapshot.currIndex&&this.setState({behavior:e,action:hi.INDEX_CHANGED,currIndex:n,hasNext:n0})}next(n=this._config.value.scrollBehavior,e=!0){this.stateSnapshot.hasNext?this.set(this.stateSnapshot.currIndex+1,n):e&&this._config.value.loop&&this.set(0,n)}prev(n=this._config.value.scrollBehavior,e=!0){this.stateSnapshot.hasPrev?this.set(this.stateSnapshot.currIndex-1,n):e&&this._config.value.loop&&this.set(this.stateSnapshot.items.length-1,n)}play(n){n&&this.setConfig({autoplayInterval:n}),this.setState({action:hi.PLAY,behavior:"auto",isPlaying:!0})}stop(){this.setState({action:hi.STOP,isPlaying:!1})}reset(){this.setState(RA)}destroy(){this._state.complete(),this._config.complete(),this.itemClick.complete(),this.thumbClick.complete(),this.deleteInstance()}},B6=new $("GALLERY_CONFIG"),bc=(()=>{class t{constructor(e){this._instances=new Map,this.config=e?E(E({},NA),e):NA}ref(e="root",i){if(this._instances.has(e)){let r=this._instances.get(e);return i&&r.setConfig(i),r}else return this._instances.set(e,new Sw(E(E({},this.config),i),this.deleteInstance(e))).get(e)}destroyAll(){this._instances.forEach(e=>e.destroy())}resetAll(){this._instances.forEach(e=>e.reset())}debugConsole(...e){this.config.debug&&console.log(...e)}deleteInstance(e){return()=>{this._instances.has(e)&&this._instances.delete(e)}}static{this.\u0275fac=function(i){return new(i||t)(j(B6,8))}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),U6=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-counter"]],inputs:{state:"state"},decls:2,vars:1,consts:[[1,"g-counter"]],template:function(i,r){i&1&&(d(0,"div",0),y(1),f()),i&2&&(h(),H(r.state.currIndex+1+" / "+r.state.items.length))},styles:[".g-counter[_ngcontent-%COMP%]{font-weight:700;-webkit-user-select:none;user-select:none;opacity:.6;transition:opacity linear .15s;z-index:50;position:absolute;left:50%;transform:translate(-50%) perspective(1px);font-size:12px;padding:4px 10px;color:var(--g-font-color);background-color:var(--g-overlay-color);box-shadow:var(--g-box-shadow);top:var(--counter-top);bottom:var(--counter-bottom);border-radius:var(--counter-border-radius)}.g-counter[_ngcontent-%COMP%]:hover{opacity:.8}"],changeDetection:0})}}return t})(),$6=(()=>{class t{constructor(e){this.gallery=e}static{this.\u0275fac=function(i){return new(i||t)(b(bc))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-bullets"]],inputs:{galleryId:"galleryId",state:"state",config:"config"},decls:1,vars:1,consts:[["class","g-bullet",3,"g-bullet-active","width","height","click",4,"ngFor","ngForOf"],[1,"g-bullet",3,"click"],[1,"g-bullet-inner"]],template:function(i,r){i&1&&T(0,Z8,2,6,"div",0),i&2&&g("ngForOf",r.state.items)},dependencies:[He,Ge],styles:["[_nghost-%COMP%]{position:absolute;left:50%;z-index:99;transform:translate(-50%);display:flex;gap:6px;top:var(--bullets-top);bottom:var(--bullets-bottom)}[_nghost-%COMP%], .g-bullet[_ngcontent-%COMP%], .g-bullet-inner[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}.g-bullet[_ngcontent-%COMP%]{cursor:var(--bullets-cursor);z-index:20}.g-bullet[_ngcontent-%COMP%]:hover .g-bullet-inner[_ngcontent-%COMP%]{opacity:var(--bullets-hover-opacity)}.g-bullet-active[_ngcontent-%COMP%] .g-bullet-inner[_ngcontent-%COMP%]{opacity:var(--bullets-active-opacity)}.g-bullet-inner[_ngcontent-%COMP%]{background-color:var(--g-overlay-color);opacity:var(--bullets-opacity);width:100%;height:100%;border-radius:50%;transition:opacity linear .15s}"],changeDetection:0})}}return t})(),z6=(()=>{class t{constructor(e,i,r){this.gallery=e,this._sanitizer=i,this.dir=r}ngOnInit(){this.navIcon=this._sanitizer.bypassSecurityTrustHtml(this.config.navIcon)}rightButton(){}leftButton(){}static{this.\u0275fac=function(i){return new(i||t)(b(bc),b(so),b(yc))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-nav"]],inputs:{id:[0,"galleryId","id"],state:"state",config:"config"},decls:2,vars:2,consts:[["class","g-nav-prev","aria-label","Previous","role","button",3,"innerHtml","click",4,"ngIf"],["class","g-nav-next","aria-label","Next","role","button",3,"innerHtml","click",4,"ngIf"],["aria-label","Previous","role","button",1,"g-nav-prev",3,"click","innerHtml"],["aria-label","Next","role","button",1,"g-nav-next",3,"click","innerHtml"]],template:function(i,r){i&1&&T(0,J8,1,1,"i",0)(1,X8,1,1,"i",1),i&2&&(g("ngIf",r.config.loop||r.state.hasPrev),h(),g("ngIf",r.config.loop||r.state.hasNext))},dependencies:[He,Te],styles:[".g-nav-next[_ngcontent-%COMP%], .g-nav-prev[_ngcontent-%COMP%]{position:absolute;top:50%;display:flex;padding:16px 8px;cursor:pointer;z-index:999;opacity:.6;transition:opacity linear .15s,right linear .15s,left linear .15s}.g-nav-next[_ngcontent-%COMP%]:hover, .g-nav-prev[_ngcontent-%COMP%]:hover{opacity:1}.g-nav-next[_ngcontent-%COMP%] svg, .g-nav-prev[_ngcontent-%COMP%] svg{filter:var(--g-nav-drop-shadow);width:28px;height:28px;fill:#fff}.g-nav-next[_ngcontent-%COMP%]{left:var(--nav-next-left);right:var(--nav-next-right);transform:var(--nav-next-transform)}.g-nav-next[_ngcontent-%COMP%]:hover{left:var(--nav-next-hover-left);right:var(--nav-next-hover-right)}.g-nav-prev[_ngcontent-%COMP%]{left:var(--nav-prev-left);right:var(--nav-prev-right);transform:var(--nav-prev-transform)}.g-nav-prev[_ngcontent-%COMP%]:hover{left:var(--nav-prev-hover-left);right:var(--nav-prev-hover-right)}"],changeDetection:0})}}return t})(),Y6=2,W6=4,G6=8,q6=16,og=class{get scrollValue(){return this.slider.scrollLeft}get clientSize(){return this.slider.clientWidth}get isContentLessThanContainer(){return this.clientSize>=this.slider.firstElementChild.clientWidth}constructor(n,e){this.slider=n,this.config=e,this.hammerDirection=Y6|W6,this.scrollSnapType="x mandatory"}getScrollToValue(n,e){let i=n.offsetLeft-(this.clientSize-n.clientWidth)/2;return{behavior:e,start:i}}getRootMargin(){return"1000px 1px 1000px 1px"}getElementRootMargin(n,e){let i=-1*((n.clientWidth-e.clientWidth)/2)+1;return`0px ${i}px 0px ${i}px`}getCentralizerStartSize(){return this.isContentLessThanContainer?(this.clientSize-this.slider.firstElementChild.clientWidth)/2:this.clientSize/2-this.slider.firstElementChild.firstElementChild?.clientWidth/2}getCentralizerEndSize(){return this.isContentLessThanContainer?(this.clientSize-this.slider.firstElementChild.clientWidth)/2:this.clientSize/2-this.slider.firstElementChild.lastElementChild?.clientWidth/2}getHammerVelocity(n){return n.velocityX}getHammerValue(n,e,i){return{behavior:i,left:n-e.deltaX}}},sg=class{get scrollValue(){return this.slider.scrollTop}get clientSize(){return this.slider.clientHeight}get isContentLessThanContainer(){return this.clientSize>=this.slider.firstElementChild.clientHeight}constructor(n,e){this.slider=n,this.config=e,this.hammerDirection=G6|q6,this.scrollSnapType="y mandatory"}getScrollToValue(n,e){let i=n.offsetTop-(this.clientSize-n.clientHeight)/2;return{behavior:e,top:i}}getRootMargin(){return"1px 1000px 1px 1000px"}getElementRootMargin(n,e){let i=-1*((n.clientHeight-e.clientHeight)/2)+1;return`${i}px 0px ${i}px 0px`}getCentralizerStartSize(){return this.isContentLessThanContainer?(this.clientSize-this.slider.firstElementChild.clientHeight)/2:this.clientSize/2-this.slider.firstElementChild.firstElementChild?.clientHeight/2}getCentralizerEndSize(){return this.isContentLessThanContainer?(this.clientSize-this.slider.firstElementChild.clientHeight)/2:this.clientSize/2-this.slider.firstElementChild.lastElementChild?.clientHeight/2}getHammerVelocity(n){return n.velocityY}getHammerValue(n,e,i){return{behavior:i,top:n-e.deltaY}}};var Q6=4,K6=.001,Z6=1e-7,J6=10,kd=11,ig=1/(kd-1),X6=typeof Float32Array=="function";function BA(t,n){return 1-3*n+3*t}function UA(t,n){return 3*n-6*t}function $A(t){return 3*t}function ag(t,n,e){return((BA(n,e)*t+UA(n,e))*t+$A(n))*t}function zA(t,n,e){return 3*BA(n,e)*t*t+2*UA(n,e)*t+$A(n)}function eG(t,n,e,i,r){let o,s,a=0;do s=n+(e-n)/2,o=ag(s,i,r)-t,o>0?e=s:n=s;while(Math.abs(o)>Z6&&++a=K6?tG(s,p,t,e):v===0?p:eG(s,a,a+ig,t,e)}return function(a){return a===0?0:a===1?1:ag(o(a),n,i)}}var YA=(()=>{class t{get _w(){return this._document.defaultView}get _now(){return this._w.performance?.now?.bind(this._w.performance)||Date.now}set smoothScroll(e){e&&this._zone.runOutsideAngular(()=>{this.scrollTo(e)})}constructor(e,i,r,o){this._document=e,this._zone=i,this._dir=r,this._scrollController=new ie,this._finished=new ie,this.isScrollingChange=new O,this._el=o.nativeElement}ngOnInit(){this._subscription=this._scrollController.pipe(St(e=>(this._zone.run(()=>{this.isScrollingChange.emit(!0)}),this._el.classList.add("g-scrolling"),this._el.style.setProperty("--slider-scroll-snap-type","none"),J(null).pipe(Ga(()=>this._step(e).pipe(J_(i=>this._isFinished(i)),vi(this._finished))),yi(()=>this.resetElement()),vi(this._interrupted()))))).subscribe()}ngOnDestroy(){this._subscription?.unsubscribe(),this._scrollController.complete()}_scrollElement(e,i){this._el.scrollLeft=e,this._el.scrollTop=i}resetElement(){this._zone.run(()=>{this.isScrollingChange.emit(!1)}),this._el.classList.remove("g-scrolling"),this._isInterruptedByMouse||this._el.style.setProperty("--slider-scroll-snap-type",this.adapter.scrollSnapType),this._isInterruptedByMouse=!1}_isFinished(e){return e.currentX!==e.x||e.currentY!==e.y?!0:(this._finished.next(),!1)}_interrupted(){let e;return this.interruptOnMousemove&&typeof Hammer<"u"?(this._hammer=new Hammer(this._el,{inputClass:Hammer.MouseInput}),this._hammer.get("pan").set({direction:this.adapter.hammerDirection}),e=Wa(new ae(i=>(this._hammer.on("panstart",()=>{this._isInterruptedByMouse=!0,i.next(),i.complete()}),()=>{this._hammer.destroy()})),_i(this._el,"wheel",{passive:!0,capture:!0}),_i(this._el,"touchmove",{passive:!0,capture:!0}))):e=Wa(_i(this._el,"wheel",{passive:!0,capture:!0}),_i(this._el,"touchmove",{passive:!0,capture:!0})),e.pipe(Mt(1))}_step(e){return new ae(i=>{let r=(this._now()-e.startTime)/e.duration;r=r>1?1:r;let o=e.easing(r);e.currentX=e.startX+(e.x-e.startX)*o,e.currentY=e.startY+(e.y-e.startY)*o,this._scrollElement(e.currentX,e.currentY),requestAnimationFrame(()=>{i.next(e),i.complete()})})}_applyScrollToOptions(e){e.duration||this._scrollElement(e.left,e.top);let i={scrollable:this._el,startTime:this._now(),startX:this._el.scrollLeft,startY:this._el.scrollTop,x:e.left==null?this._el.scrollLeft:~~e.left,y:e.top==null?this._el.scrollTop:~~e.top,duration:e.duration,easing:iG(e.easing.x1,e.easing.y1,e.easing.x2,e.easing.y2)};this._scrollController.next(i)}scrollTo(e){let i=this._dir.value==="rtl",r=vw(),o=G(E({},e),{left:e.left==null?i?e.end:e.start:e.left,right:e.right==null?i?e.start:e.end:e.right,duration:e.behavior==="smooth"?this.config.scrollDuration:0,easing:this.config.scrollEase});return o.bottom!=null&&(o.top=this._el.scrollHeight-this._el.clientHeight-o.bottom),i&&r!==Hr.NORMAL?(o.left!=null&&(o.right=this._el.scrollWidth-this._el.clientWidth-o.left),r===Hr.INVERTED?o.left=o.right:r===Hr.NEGATED&&(o.left=o.right?-o.right:o.right)):o.right!=null&&(o.left=this._el.scrollWidth-this._el.clientWidth-o.right),this._applyScrollToOptions(o)}static{this.\u0275fac=function(i){return new(i||t)(b(Pe),b(xe),b(eg),b(Y))}}static{this.\u0275dir=U({type:t,selectors:[["","smoothScroll",""]],inputs:{smoothScroll:"smoothScroll",adapter:"adapter",config:"config",interruptOnMousemove:[0,"smoothScrollInterruptOnMousemove","interruptOnMousemove"]},outputs:{isScrollingChange:"isScrollingChange"},features:[pe([eg])]})}}return t})(),WA=(()=>{class t{get _viewport(){return this._el.nativeElement}constructor(e,i,r,o,s){this._document=e,this._el=i,this._dir=r,this._platform=o,this._zone=s,this.activeIndexChange=new O,this.isSlidingChange=new O}ngOnChanges(e){e.enabled&&e.enabled?.currentValue!==e.enabled?.previousValue&&(this.enabled?this._subscribe():this._unsubscribe()),!e.adapter?.firstChange&&e.adapter?.currentValue!==e.adapter?.previousValue&&(this.enabled?this._subscribe():this._unsubscribe())}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe(),!this._platform.ANDROID&&!this._platform.IOS&&typeof Hammer<"u"&&this._zone.runOutsideAngular(()=>{let e=this.adapter.hammerDirection;this._hammer=new Hammer(this._el.nativeElement,{inputClass:Hammer.MouseInput}),this._hammer.get("pan").set({direction:e});let i;this._hammer.on("panstart",()=>{this._zone.run(()=>{this.isSlidingChange.emit(!0)}),i=this.adapter.scrollValue,this._viewport.classList.add("g-sliding"),this._viewport.style.setProperty("--slider-scroll-snap-type","none")}),this._hammer.on("panmove",r=>this._viewport.scrollTo(this.adapter.getHammerValue(i,r,"auto"))),this._hammer.on("panend",r=>{this._document.onselectstart=null,this._viewport.classList.remove("g-sliding");let o=this.getIndexOnMouseUp(r);this._zone.run(()=>{this.isSlidingChange.emit(!1),this.activeIndexChange.emit(o)})})})}_unsubscribe(){this._hammer?.destroy()}getIndexOnMouseUp(e){let i=this.items[this.state.currIndex].nativeElement,r=this.getElementFromViewportCenter();if(r&&r!==i)return+r.getAttribute("galleryIndex");let o=this.adapter.getHammerVelocity(e);return Math.abs(o)>.3?this.config.orientation===Ad.Horizontal?o>0?this._dir.value==="rtl"?this.state.currIndex+1:this.state.currIndex-1:this._dir.value==="rtl"?this.state.currIndex-1:this.state.currIndex+1:o>0?this.state.currIndex-1:this.state.currIndex+1:-1}getElementFromViewportCenter(){let e=this._viewport.getBoundingClientRect();return this._document.elementsFromPoint(e.x+e.width/2,e.y+e.height/2).find(r=>r.getAttribute("galleryId")===this.galleryId)}static{this.\u0275fac=function(i){return new(i||t)(b(Pe),b(Y),b(yc),b(yw),b(xe))}}static{this.\u0275dir=U({type:t,selectors:[["","hammerSliding",""]],inputs:{enabled:[0,"hammerSliding","enabled"],galleryId:"galleryId",items:"items",adapter:"adapter",state:"state",config:"config"},outputs:{activeIndexChange:"activeIndexChange",isSlidingChange:"isSlidingChange"},features:[Se]})}}return t})(),lg=class{observe(n,e,i){return rG(n,e,i).pipe(q(r=>r.isIntersecting?(r.target.classList.add("g-item-highlight"),+r.target.getAttribute("galleryIndex")):(r.target.classList.remove("g-item-highlight"),-1)),he(r=>r!==-1))}};function rG(t,n,e){return new ae(i=>{let r=new IntersectionObserver(o=>i.next(o),{root:t,rootMargin:e,threshold:1});return n.forEach(o=>r.observe(o)),()=>{n.forEach(o=>r.unobserve(o)),r.disconnect()}}).pipe(Ze(i=>i))}var oG=(()=>{class t{get _viewport(){return this._el.nativeElement}constructor(e,i){this._zone=e,this._el=i,this._sensor=new lg,this.activeIndexChange=new O}ngOnChanges(){this.config.itemAutosize||this.disabled?this._unsubscribe():this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){if(this._unsubscribe(),this.adapter&&this.items?.length){let e=this.adapter.getRootMargin();this.config.debug&&this._viewport.style.setProperty("--intersection-margin",`"INTERSECTION(${e})"`),this._zone.runOutsideAngular(()=>{this._currentSubscription=this._sensor.observe(this._viewport,this.items.map(i=>i.nativeElement),e).subscribe(i=>{this._zone.run(()=>this.activeIndexChange.emit(i))})})}}_unsubscribe(){this._currentSubscription?.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(b(xe),b(Y))}}static{this.\u0275dir=U({type:t,selectors:[["","sliderIntersectionObserver",""]],inputs:{adapter:"adapter",items:"items",config:"config",disabled:[0,"sliderIntersectionObserverDisabled","disabled"]},outputs:{activeIndexChange:"activeIndexChange"},features:[Se]})}}return t})();function cg(t,n){return new ae(e=>{let i=new ResizeObserver(r=>e.next(r));return i.observe(t),n&&n(i),()=>i.disconnect()}).pipe(Ze(e=>e))}var sG=(()=>{class t{set src(e){this.videoSrc=e,this.iframeSrc=this._sanitizer.bypassSecurityTrustResourceUrl(e)}set pauseVideo(e){if(this.iframe?.nativeElement&&e){let i=this.iframe.nativeElement;i.src=null,!this.autoplay&&this.videoSrc&&(this.iframeSrc=this._sanitizer.bypassSecurityTrustResourceUrl(this.videoSrc))}}constructor(e){this._sanitizer=e}static{this.\u0275fac=function(i){return new(i||t)(b(so))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-iframe"]],viewQuery:function(i,r){if(i&1&&jt(e6,5),i&2){let o;et(o=tt())&&(r.iframe=o.first)}},inputs:{src:"src",pauseVideo:[0,"pause","pauseVideo"],autoplay:"autoplay",loadingAttr:"loadingAttr"},decls:3,vars:2,consts:[["default",""],["iframe",""],["allowfullscreen","","allow","","style","border:none",3,"src",4,"ngIf","ngIfElse"],["allowfullscreen","","allow","",2,"border","none",3,"src"],["allowfullscreen","",2,"border","none",3,"src"]],template:function(i,r){if(i&1&&T(0,t6,2,2,"iframe",2)(1,n6,2,2,"ng-template",null,0,Pn),i&2){let o=Et(2);g("ngIf",r.autoplay)("ngIfElse",o)}},dependencies:[Te],encapsulation:2,changeDetection:0})}}return t})(),aG=(()=>{class t{constructor(){this.error=new O}set pauseVideo(e){if(this.video.nativeElement){let i=this.video.nativeElement;e&&!i.paused&&i.pause()}}set playVideo(e){if(this.video.nativeElement){let i=this.video.nativeElement;e&&i.play()}}ngOnInit(){this.src instanceof Array?this.videoSources=[...this.src]:this.videoSources=[{url:this.src}]}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-video"]],viewQuery:function(i,r){if(i&1&&jt(i6,7),i&2){let o;et(o=tt())&&(r.video=o.first)}},inputs:{src:"src",poster:"poster",mute:"mute",loop:"loop",controls:"controls",controlsList:"controlsList",disableRemotePlayback:"disableRemotePlayback",disablePictureInPicture:"disablePictureInPicture",pauseVideo:[0,"pause","pauseVideo"],playVideo:[0,"play","playVideo"]},outputs:{error:"error"},decls:3,vars:8,consts:[["video",""],["noType",""],[3,"error","disableRemotePlayback","controls","loop","poster"],[4,"ngFor","ngForOf"],[3,"src","type",4,"ngIf","ngIfElse"],[3,"src","type"],[3,"src"]],template:function(i,r){if(i&1){let o=N();d(0,"video",2,0),D("error",function(a){return C(o),w(r.error.emit(a))}),T(2,s6,4,2,"ng-container",3),f()}i&2&&(g("disableRemotePlayback",r.disableRemotePlayback)("controls",r.controls)("loop",r.loop)("poster",r.poster,Xe),ee("mute",r.mute)("controlsList",r.controlsList)("disablePictureInPicture",r.disablePictureInPicture),h(2),g("ngForOf",r.videoSources))},dependencies:[Ge,Te],encapsulation:2,changeDetection:0})}}return t})(),lG=` + + + + + + + + +`,dg=(()=>{class t{constructor(){this.trigger$=new Ve(null),this.images=new Map}getActiveItem(e){return this.trigger$.pipe(St(()=>e.pipe(St(i=>{let r=this.images.get(i.currIndex);return r?r.state.pipe(he(o=>o!=="loading"),q(()=>r.target)):Pt}))))}addItem(e,i){this.images.set(e,i),this.trigger$.next()}deleteItem(e){this.images.has(e)&&(this.images.delete(e),this.trigger$.next())}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac})}}return t})(),cG=(()=>{class t{onLoad(){this.item.state$.next("success")}onError(){this.item.state$.next("failed")}constructor(e,i,r){if(this.el=e,this.manager=i,this.item=r,r)r.isItemContainImage=!0;else throw new Error("[NgGallery]: galleryImage directive should be only used inside gallery item templates!")}ngOnInit(){this.manager.addItem(this.index,{state:this.item.state$.asObservable(),target:this.el.nativeElement})}ngOnDestroy(){this.manager.deleteItem(this.index)}static{this.\u0275fac=function(i){return new(i||t)(b(Y),b(dg),b(ug))}}static{this.\u0275dir=U({type:t,selectors:[["img","galleryImage",""]],hostBindings:function(i,r){i&1&&D("load",function(s){return r.onLoad(s)})("error",function(s){return r.onError(s)})},inputs:{index:[0,"galleryImage","index"]}})}}return t})(),GA=(()=>{class t{get imageState(){return this.state}constructor(e){this._sanitizer=e,this.state="loading",this.errorIcon=lG,this.error=new O}ngOnInit(){this.loadingIcon&&(this.loaderTemplate=this._sanitizer.bypassSecurityTrustHtml(this.loadingIcon)),this.loadingError&&(this.errorTemplate=this._sanitizer.bypassSecurityTrustHtml(this.loadingError)),this.errorIcon&&(this.errorSvg=this._sanitizer.bypassSecurityTrustHtml(this.errorIcon))}static{this.\u0275fac=function(i){return new(i||t)(b(so))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-image"]],hostVars:1,hostBindings:function(i,r){i&2&&ee("imageState",r.imageState)},inputs:{isThumbnail:"isThumbnail",index:"index",loadingAttr:"loadingAttr",alt:"alt",src:"src",loadingIcon:"loadingIcon",loadingError:"loadingError",errorIcon:"errorIcon"},outputs:{error:"error"},decls:6,vars:5,consts:[["main",""],["defaultError",""],["isLarge",""],["defaultLoader",""],[3,"ngSwitch"],[4,"ngIf","ngIfElse"],["class","g-image-error-message",4,"ngSwitchCase"],[4,"ngSwitchCase"],[1,"g-image-item",3,"load","error","src"],[1,"g-image-item",3,"load","error","galleryImage","src"],[1,"g-image-error-message"],[3,"innerHTML",4,"ngIf","ngIfElse"],[3,"innerHTML"],[1,"gallery-thumb-error",3,"innerHTML"],[1,"gallery-image-error",3,"innerHTML"],["class","g-loading",3,"innerHTML",4,"ngIf","ngIfElse"],[1,"g-loading",3,"innerHTML"],["class","g-thumb-loading",4,"ngIf"],[1,"g-thumb-loading"]],template:function(i,r){if(i&1&&(Lt(0,4),T(1,a6,2,6,"ng-container",5)(2,l6,1,7,"ng-template",null,0,Pn)(4,h6,4,2,"div",6)(5,_6,4,2,"ng-container",7),Ft()),i&2){let o=Et(3);g("ngSwitch",r.state),h(),g("ngIf",r.isThumbnail)("ngIfElse",o),h(3),g("ngSwitchCase","failed"),h(),g("ngSwitchCase","loading")}},dependencies:[Ti,Tr,Te,cG],styles:['[_nghost-%COMP%]{display:flex;width:100%;height:100%;max-height:100%;max-width:100%;transition:opacity .3s cubic-bezier(.5,0,.5,1);opacity:var(--g-thumb-opacity)}[imageState=success][_nghost-%COMP%]{align-self:center}[_nghost-%COMP%] svg{width:100%;height:100%}.gallery-image-error[_ngcontent-%COMP%]{width:100px;height:100px}.gallery-thumb-error[_ngcontent-%COMP%]{width:40px;height:40px}img.g-image-item[_ngcontent-%COMP%]{object-fit:var(--image-object-fit);width:100%;height:100%;pointer-events:none;max-height:100%;max-width:100%}.g-image-error-message[_ngcontent-%COMP%]{position:absolute;z-index:10;inset:0;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column}h2[_ngcontent-%COMP%], h4[_ngcontent-%COMP%]{color:coral;margin:0}h2[_ngcontent-%COMP%]{font-size:3.5em;margin-bottom:.3em}h4[_ngcontent-%COMP%]{font-size:1.6em}.g-loading[_ngcontent-%COMP%]{position:absolute;transform:translate3d(-50%,-50%,0);left:50%;top:50%;width:80px;height:80px}.g-active-thumb[_ngcontent-%COMP%] .g-thumb-loading[_ngcontent-%COMP%]{background-color:#464646}.g-thumb-loading[_ngcontent-%COMP%]{position:relative;overflow:hidden;width:100%;height:100%;background-color:#262626}.g-thumb-loading[_ngcontent-%COMP%]:before{content:"";position:absolute;inset:0 0 0 50%;z-index:1;width:500%;margin-left:-250%;animation:_ngcontent-%COMP%_phAnimation .8s linear infinite;background:linear-gradient(to right,#fff0 46%,#ffffff59,#fff0 54%) 50% 50%}@keyframes _ngcontent-%COMP%_phAnimation{0%{transform:translate3d(-30%,0,0)}to{transform:translate3d(30%,0,0)}}'],data:{animation:[uo("fadeIn",[ci("* => success",[xt({opacity:0}),On("300ms ease-in",xt({opacity:1}))])])]},changeDetection:0})}}return t})(),ug=(()=>{class t{get isActive(){return this.index===this.currIndex}get isIndexAttr(){return this.index}get itemState(){return this.state$.value}get imageContext(){return{$implicit:this.imageData,index:this.index,type:this.type,active:this.isActive,count:this.count,first:this.index===0,last:this.index===this.count-1}}get itemContext(){return{$implicit:this.data,index:this.index,type:this.type,active:this.isActive,count:this.count,first:this.index===0,last:this.index===this.count-1}}get nativeElement(){return this.el.nativeElement}get isAutoPlay(){if(this.isActive&&(this.type===Bi.Video||this.type===Bi.Youtube||this.type===Bi.Vimeo))return this.videoData.autoplay}get youtubeSrc(){let e=0;this.isActive&&this.type===Bi.Youtube&&this.data.autoplay&&(e=1);let i=new URL(this.data.src);return i.search=new URLSearchParams(G(E({wmode:"transparent"},this.data.params),{autoplay:e})).toString(),i.href}get vimeoSrc(){let e=0;this.isActive&&this.type===Bi.Vimeo&&this.data.autoplay&&(e=1);let i=new URL(this.data.src);return i.search=new URLSearchParams(G(E({},this.data.params),{autoplay:e})).toString(),i.href}get load(){switch(this.config.loadingStrategy){case rg.Preload:return!0;case rg.Lazy:return this.currIndex===this.index;default:return this.currIndex===this.index||this.currIndex===this.index-1||this.currIndex===this.index+1}}get imageData(){return this.data}get videoData(){return this.data}constructor(e){this.el=e,this.Types=Bi,this.state$=new Ve("loading"),this.error=new O}ngAfterViewInit(){this.isItemContainImage||this.state$.next("success")}static{this.\u0275fac=function(i){return new(i||t)(b(Y))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-item"]],hostVars:4,hostBindings:function(i,r){i&2&&(ee("galleryIndex",r.isIndexAttr)("itemState",r.itemState),B("g-active-item",r.isActive))},inputs:{config:"config",index:"index",count:"count",currIndex:"currIndex",type:"type",data:"data"},outputs:{error:"error"},decls:1,vars:1,consts:[[3,"ngSwitch",4,"ngIf"],[3,"ngSwitch"],[4,"ngSwitchCase"],[3,"src","mute","poster","controls","controlsList","disablePictureInPicture","play","pause","error",4,"ngSwitchCase"],[3,"src","autoplay","loadingAttr","pause",4,"ngSwitchCase"],[3,"src","loadingAttr",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"error","src","alt","index","loadingAttr","loadingIcon","loadingError"],["class","g-template g-item-template",4,"ngIf"],[1,"g-template","g-item-template"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"error","src","mute","poster","controls","controlsList","disablePictureInPicture","play","pause"],[3,"src","autoplay","loadingAttr","pause"],[3,"src","loadingAttr"]],template:function(i,r){i&1&&T(0,x6,7,6,"ng-container",0),i&2&&g("ngIf",r.load)},dependencies:[He,Te,zs,Ti,Tr,U0,GA,aG,sG],styles:["[_nghost-%COMP%]{cursor:var(--g-item-cursor);height:var(--g-item-height);width:var(--g-item-width);max-height:var(--g-item-max-height);max-width:var(--slider-width);z-index:10;position:relative;overflow:hidden;display:flex;flex-direction:column;flex:0 0 auto;scroll-snap-align:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}[itemState=loading][_nghost-%COMP%]{width:var(--slider-width);height:var(--slider-height)}[_nghost-%COMP%] > *[_ngcontent-%COMP%]{height:100%}[_nghost-%COMP%] video, [_nghost-%COMP%] iframe{width:100%;height:100%}gallery-image[_ngcontent-%COMP%]{width:var(--g-item-width);height:var(--g-item-height)}.g-template[_ngcontent-%COMP%]{position:absolute;z-index:10;inset:0;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column}"],changeDetection:0})}}return t})(),uG=(()=>{class t{get _viewport(){return this._item.nativeElement.parentElement.parentElement}constructor(e,i){this._zone=e,this._item=i,this._sensor=new lg,this.activeIndexChange=new O}ngOnChanges(){this.config.itemAutosize&&!this.disabled?this._subscribe():this._unsubscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe(),this.adapter&&this._zone.runOutsideAngular(()=>{this._currentSubscription=Eo([cg(this._viewport),cg(this._item.nativeElement)]).pipe(St(()=>this._item.state$),he(e=>e!=="loading"),St(()=>{let e=this.adapter.getElementRootMargin(this._viewport,this._item.nativeElement);return this.config.debug&&this._item.nativeElement.style.setProperty("--item-intersection-margin",`"VIEWPORT(${this._viewport.clientWidth}x${this._viewport.clientHeight}) ITEM(${this._item.nativeElement.clientWidth}x${this._item.nativeElement.clientHeight}) INTERSECTION(${e})"`),this._sensor.observe(this._viewport,[this._item.nativeElement],e)})).subscribe(e=>{this._zone.run(()=>this.activeIndexChange.emit(e))})})}_unsubscribe(){this._currentSubscription?.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(b(xe),b(ug))}}static{this.\u0275dir=U({type:t,selectors:[["","itemIntersectionObserver",""]],inputs:{adapter:"adapter",config:"config",disabled:[0,"itemIntersectionObserverDisabled","disabled"]},outputs:{activeIndexChange:"activeIndexChange"},features:[Se]})}}return t})(),dG=(()=>{class t{get _viewport(){return this._el.nativeElement}get _galleryCore(){return this._el.nativeElement.parentElement.parentElement.parentElement}get _isAutoHeight(){return this.config.autoHeight&&!this.config.itemAutosize&&this.config.orientation==="horizontal"&&(this.config.thumbPosition==="top"||this.config.thumbPosition==="bottom")}constructor(e,i,r,o){this._el=e,this._zone=i,this._gallery=r,this._imgManager=o,this.isResizingChange=new O}ngOnInit(){let e=this._gallery.ref(this.galleryId),i=getComputedStyle(this._viewport).getPropertyValue("transition-duration");parseFloat(i)===0?this._afterHeightChanged$=J(null):this._afterHeightChanged$=_i(this._viewport,"transitionend"),this._zone.runOutsideAngular(()=>{this._resizeSubscription=cg(this._viewport,r=>this._resizeObserver=r).pipe(he(()=>!this._shouldSkip||!(this._shouldSkip=!1)),pt(()=>this.setResizingState()),Rf(this.config.resizeDebounceTime,Ua),pt(r=>ve(this,null,function*(){if(this.updateSliderSize(),this._isAutoHeight){let o=yield xf(this._imgManager.getActiveItem(e.state));o.height===this._viewport.clientHeight?this.resetResizingState():(this.setResizingState({unobserve:!0}),this._galleryCore.style.setProperty("--slider-height",`${o.height}px`),yield xf(this._afterHeightChanged$),this.resetResizingState({shouldSkip:r.contentRect.height===this._viewport.clientHeight,observe:!0}))}else requestAnimationFrame(()=>this.resetResizingState({shouldSkip:!0}))}))).subscribe()})}ngOnChanges(){this._isAutoHeight?this._subscribeAutoHeight():this._unsubscribeAutoHeight()}ngOnDestroy(){this._resizeSubscription?.unsubscribe(),this._unsubscribeAutoHeight()}ngAfterViewChecked(){this.updateSliderSize()}updateSliderSize(){this._galleryCore.style.setProperty("--slider-width",`${this._viewport.clientWidth}px`),this.config.autoHeight||this._galleryCore.style.setProperty("--slider-height",`${this._viewport.clientHeight}px`),this.updateCentralizeCSSVariables()}updateCentralizeCSSVariables(){this.config.itemAutosize&&(this._galleryCore.style.setProperty("--slider-centralize-start-size",`${this.adapter.getCentralizerStartSize()}px`),this._galleryCore.style.setProperty("--slider-centralize-end-size",`${this.adapter.getCentralizerEndSize()}px`))}_subscribeAutoHeight(){this._unsubscribeAutoHeight(),this._shouldSkip=!1,this._zone.runOutsideAngular(()=>{let i=this._gallery.ref(this.galleryId).state.pipe(Qr((r,o)=>r.currIndex===o.currIndex));this._autoHeightSubscription=this._imgManager.getActiveItem(i).pipe(St(r=>(this.setResizingState({unobserve:!0}),this._galleryCore.style.setProperty("--slider-height",`${r.clientHeight}px`),r.height===this._viewport.clientHeight?(this.resetResizingState({shouldSkip:!0,observe:!0}),Pt):this._afterHeightChanged$.pipe(pt(()=>this.resetResizingState({shouldSkip:!0,observe:!0})),Mt(1))))).subscribe()})}_unsubscribeAutoHeight(){this._autoHeightSubscription?.unsubscribe()}setResizingState({unobserve:e}={}){this._zone.run(()=>{this.isResizingChange.emit(!0)}),this._viewport.classList.add("g-resizing"),e&&this._resizeObserver.unobserve(this._viewport)}resetResizingState({shouldSkip:e,observe:i}={}){this._zone.run(()=>{this.isResizingChange.emit(!1)}),this._viewport.classList.remove("g-resizing"),this._shouldSkip=e,i&&this._resizeObserver.observe(this._viewport)}static{this.\u0275fac=function(i){return new(i||t)(b(Y),b(xe),b(bc),b(dg))}}static{this.\u0275dir=U({type:t,selectors:[["","sliderResizeObserver",""]],inputs:{galleryId:"galleryId",adapter:"adapter",config:"config"},outputs:{isResizingChange:"isResizingChange"},features:[Se]})}}return t})(),fG=(()=>{class t{get slider(){return this.sliderEl.nativeElement}constructor(e){this._gallery=e,this.position$=new ie,this.itemClick=new O,this.error=new O,this.items=new sl}ngOnChanges(e){if(e.config){if(e.config.currentValue?.orientation!==e.config.previousValue?.orientation)switch(this.config.orientation){case Ad.Horizontal:this.adapter=new og(this.slider,this.config);break;case Ad.Vertical:this.adapter=new sg(this.slider,this.config);break}e.config.firstChange||requestAnimationFrame(()=>{this.scrollToIndex(this.state.currIndex,"auto")})}e.state&&e.state.currentValue?.currIndex!==e.state.previousValue?.currIndex&&requestAnimationFrame(()=>{this.scrollToIndex(this.state.currIndex,e.state.firstChange?"auto":this.state.behavior)})}ngAfterViewInit(){this.items.notifyOnChanges(),this.items$=this.items.changes.pipe(Es(null),q(()=>this.items.toArray()))}trackByFn(e,i){return i.type}onActiveIndexChange(e){e===-1?this.scrollToIndex(this.state.currIndex,"smooth"):this._gallery.ref(this.galleryId).set(e,"smooth")}scrollToIndex(e,i){let r=this.items.get(e)?.nativeElement;if(r){let o=this.adapter.getScrollToValue(r,i||this.config.scrollBehavior);this.position$.next(o)}}static{this.\u0275fac=function(i){return new(i||t)(b(bc))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-slider"]],viewQuery:function(i,r){if(i&1&&(jt(FA,7),jt(ug,5)),i&2){let o;et(o=tt())&&(r.sliderEl=o.first),et(o=tt())&&(r.items=o)}},inputs:{galleryId:"galleryId",state:"state",config:"config"},outputs:{itemClick:"itemClick",error:"error"},features:[Se],ngContentSelectors:I6,decls:8,vars:17,consts:[["slider",""],["sliderIntersectionObserver","","sliderResizeObserver","",1,"g-slider",3,"isScrollingChange","isSlidingChange","activeIndexChange","isResizingChange","smoothScroll","smoothScrollInterruptOnMousemove","sliderIntersectionObserverDisabled","hammerSliding","adapter","items","config","state","galleryId"],[1,"g-slider-content"],["itemIntersectionObserver","",3,"type","config","data","currIndex","index","count","itemIntersectionObserverDisabled","adapter","activeIndexChange","click","error",4,"ngFor","ngForOf","ngForTrackBy"],["class","g-slider-debug",4,"ngIf"],["itemIntersectionObserver","",3,"activeIndexChange","click","error","type","config","data","currIndex","index","count","itemIntersectionObserverDisabled","adapter"],[1,"g-slider-debug"],[1,"g-slider-resizing"],[1,"g-slider-scrolling"],[1,"g-slider-sliding"]],template:function(i,r){if(i&1){let o=N();An(),d(0,"div",1,0),se(2,"async"),se(3,"async"),D("isScrollingChange",function(a){return C(o),w(r.isScrolling=a)})("isSlidingChange",function(a){return C(o),w(r.isSliding=a)})("activeIndexChange",function(a){return C(o),w(r.onActiveIndexChange(a))})("isResizingChange",function(a){return C(o),w(r.isResizing=a)}),d(4,"div",2),T(5,k6,1,9,"gallery-item",3),f(),T(6,A6,7,0,"div",4),f(),Cn(7)}i&2&&(g("smoothScroll",ye(2,13,r.position$))("smoothScrollInterruptOnMousemove",!r.config.disableMouseScroll)("sliderIntersectionObserverDisabled",r.isScrolling||r.isSliding||r.isResizing)("hammerSliding",!r.config.disableMouseScroll)("adapter",r.adapter)("items",ye(3,15,r.items$))("config",r.config)("state",r.state)("galleryId",r.galleryId),ee("centralised",r.config.itemAutosize),h(5),g("ngForOf",r.state.items)("ngForTrackBy",r.trackByFn),h(),g("ngIf",r.config.debug))},dependencies:[He,Ge,Te,Er,ug,YA,WA,oG,uG,dG],styles:['[_nghost-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;order:1;flex:1}.g-slider[_ngcontent-%COMP%]{display:flex;align-items:center;transition:var(--g-height-transition);min-height:100%;min-width:100%;max-height:100%;max-width:100%;height:var(--slider-height, 100%);width:var(--slider-width, 100%);overflow:var(--slider-overflow);scroll-snap-type:var(--slider-scroll-snap-type);flex-direction:var(--slider-flex-direction);scrollbar-width:none}.g-slider[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.g-slider.g-sliding[_ngcontent-%COMP%] .g-slider-content[_ngcontent-%COMP%], .g-slider.g-scrolling[_ngcontent-%COMP%] .g-slider-content[_ngcontent-%COMP%]{pointer-events:none}.g-slider[centralised=true][_ngcontent-%COMP%]:before, .g-slider[centralised=true][_ngcontent-%COMP%]:after{content:""}.g-slider[centralised=true][_ngcontent-%COMP%]:before{flex:0 0 var(--slider-centralize-start-size)}.g-slider[centralised=true][_ngcontent-%COMP%]:after{flex:0 0 var(--slider-centralize-end-size)}.g-slider-content[_ngcontent-%COMP%]{flex:0 0 auto;display:flex;align-items:center;gap:1px;width:var(--slider-content-width, unset);height:var(--slider-content-height, unset);flex-direction:var(--slider-flex-direction)}'],changeDetection:0})}}return t})(),LA=(()=>{class t{get isActive(){return this.index===this.currIndex}get isIndexAttr(){return this.index}get imageContext(){return{$implicit:this.data,index:this.index,type:this.type,active:this.isActive,count:this.count,first:this.index===0,last:this.index===this.count-1}}get nativeElement(){return this.el.nativeElement}constructor(e){this.el=e,this.error=new O}static{this.\u0275fac=function(i){return new(i||t)(b(Y))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-thumb"]],hostVars:3,hostBindings:function(i,r){i&2&&(ee("galleryIndex",r.isIndexAttr),B("g-active-thumb",r.isActive))},inputs:{config:"config",index:"index",count:"count",currIndex:"currIndex",type:"type",data:"data"},outputs:{error:"error"},decls:2,vars:6,consts:[[3,"error","src","alt","isThumbnail","loadingIcon","loadingError"],["class","g-template g-thumb-template",4,"ngIf"],[1,"g-template","g-thumb-template"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,r){i&1&&(d(0,"gallery-image",0),D("error",function(s){return r.error.emit(s)}),f(),T(1,O6,2,2,"div",1)),i&2&&(g("src",r.data.thumb)("alt",r.data.alt+"-thumbnail")("isThumbnail",!0)("loadingIcon",r.config.thumbLoadingIcon)("loadingError",r.config.thumbLoadingError),h(),g("ngIf",r.config.thumbTemplate))},dependencies:[He,Te,zs,GA],styles:["[_nghost-%COMP%]{cursor:var(--g-thumb-cursor);height:var(--g-thumb-height);width:var(--g-thumb-width);max-height:var(--g-thumb-height);max-width:var(--g-thumb-width);align-self:center;background:#000;position:relative;display:flex;overflow:hidden;flex-direction:column;flex:0 0 auto;scroll-snap-align:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:rgba(0,0,0,0);--g-thumb-opacity: .5}.g-active-thumb[_nghost-%COMP%]{--g-thumb-opacity: 1}.g-template[_ngcontent-%COMP%]{position:absolute;z-index:10;inset:0;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column}"],changeDetection:0})}}return t})(),hG=(()=>{class t{get _viewport(){return this._el.nativeElement}constructor(e,i){this._el=e,this._zone=i,this.resized=new O}ngOnInit(){this._zone.runOutsideAngular(()=>{this._resizeSubscription=cg(this._viewport).pipe(Rf(this.config.resizeDebounceTime,Ua),pt(()=>{this.updateSliderSize(),this.resized.emit()})).subscribe()})}ngOnChanges(e){e.config.firstChange||this.updateSliderSize()}ngOnDestroy(){this._resizeSubscription?.unsubscribe()}updateSliderSize(){this._viewport.style.setProperty("--thumb-centralize-start-size",this.adapter.getCentralizerStartSize()+"px"),this._viewport.style.setProperty("--thumb-centralize-end-size",this.adapter.getCentralizerEndSize()+"px")}static{this.\u0275fac=function(i){return new(i||t)(b(Y),b(xe))}}static{this.\u0275dir=U({type:t,selectors:[["","thumbResizeObserver",""]],inputs:{config:"config",adapter:"adapter"},outputs:{resized:"thumbResizeObserver"},features:[Se]})}}return t})(),pG=(()=>{class t{constructor(){this.position$=new ie,this.thumbClick=new O,this.error=new O,this.items=new sl}get slider(){return this.sliderEl.nativeElement}ngOnChanges(e){if(e.config&&e.config.currentValue?.thumbPosition!==e.config.previousValue?.thumbPosition){switch(this.config.thumbPosition){case vc.Right:case vc.Left:this.adapter=new sg(this.slider,this.config);break;case vc.Top:case vc.Bottom:this.adapter=new og(this.slider,this.config);break}e.config.firstChange||requestAnimationFrame(()=>{this.scrollToIndex(this.state.currIndex,"auto")})}e.state&&(e.state.firstChange||!this.config.detachThumbs)&&e.state.currentValue?.currIndex!==e.state.previousValue?.currIndex&&requestAnimationFrame(()=>{this.scrollToIndex(this.state.currIndex,e.state?.firstChange?"auto":"smooth")})}ngAfterViewInit(){this.items.notifyOnChanges(),this.items$=this.items.changes.pipe(Es(null),q(()=>this.items.toArray()))}trackByFn(e,i){return i.type}onActiveIndexChange(e){e===-1?this.scrollToIndex(this.state.currIndex,"smooth"):this.scrollToIndex(e,"smooth")}scrollToIndex(e,i){let r=this.items.get(e)?.nativeElement;if(r){let o=this.adapter.getScrollToValue(r,i);this.position$.next(o)}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-thumbs"]],viewQuery:function(i,r){if(i&1&&(jt(FA,7),jt(LA,5)),i&2){let o;et(o=tt())&&(r.sliderEl=o.first),et(o=tt())&&(r.items=o)}},inputs:{galleryId:"galleryId",state:"state",config:"config"},outputs:{thumbClick:"thumbClick",error:"error"},features:[Se],decls:6,vars:15,consts:[["slider",""],[1,"g-slider",3,"thumbResizeObserver","activeIndexChange","smoothScroll","smoothScrollInterruptOnMousemove","hammerSliding","galleryId","items","state","config","adapter"],[1,"g-slider-content"],[3,"type","config","data","currIndex","index","count","click","error",4,"ngFor","ngForOf","ngForTrackBy"],[3,"click","error","type","config","data","currIndex","index","count"]],template:function(i,r){if(i&1){let o=N();d(0,"div",1,0),se(2,"async"),se(3,"async"),D("thumbResizeObserver",function(){return C(o),w(r.scrollToIndex(r.state.currIndex,"auto"))})("activeIndexChange",function(a){return C(o),w(r.onActiveIndexChange(a))}),d(4,"div",2),T(5,R6,1,7,"gallery-thumb",3),f()()}i&2&&(g("smoothScroll",ye(2,11,r.position$))("smoothScrollInterruptOnMousemove",!r.config.disableThumbMouseScroll)("hammerSliding",!r.config.disableThumbMouseScroll)("galleryId",r.galleryId)("items",ye(3,13,r.items$))("state",r.state)("config",r.config)("adapter",r.adapter),ee("centralised",r.config.thumbCentralized||r.adapter.isContentLessThanContainer),h(5),g("ngForOf",r.state.items)("ngForTrackBy",r.trackByFn))},dependencies:[He,Ge,Er,LA,YA,WA,hG],styles:['[_nghost-%COMP%]{max-height:100%;max-width:100%;display:block;z-index:100}.g-slider[_ngcontent-%COMP%]{display:flex;align-items:center;transition:var(--g-height-transition);max-height:100%;min-width:100%;height:var(--thumb-slider-height);width:var(--thumb-slider-width);top:var(--thumb-slider-top);left:var(--thumb-slider-left);overflow:var(--thumb-slider-overflow);scroll-snap-type:var(--slider-scroll-snap-type);flex-direction:var(--thumb-slider-flex-direction);scrollbar-width:none}.g-slider[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.g-slider.g-sliding[_ngcontent-%COMP%] .g-slider-content[_ngcontent-%COMP%]{pointer-events:none}.g-slider[centralised=true][_ngcontent-%COMP%]:before, .g-slider[centralised=true][_ngcontent-%COMP%]:after{content:""}.g-slider[centralised=true][_ngcontent-%COMP%]:before{flex:0 0 var(--thumb-centralize-start-size)}.g-slider[centralised=true][_ngcontent-%COMP%]:after{flex:0 0 var(--thumb-centralize-end-size)}.g-slider-content[_ngcontent-%COMP%]{flex:0 0 auto;display:flex;flex-direction:var(--thumb-slider-flex-direction);align-items:center;gap:1px}'],changeDetection:0})}}return t})(),mG=(()=>{class t{get thumbPosition(){return this.config.thumbPosition}get orientation(){return this.config.orientation}get disableThumb(){return this.config.disableThumbs}get bulletDisabled(){return this.config.disableBullets}get bulletPosition(){return this.config.bulletPosition}get imageSize(){return this.config.imageSize}get thumbImageSize(){return this.config.thumbImageSize}get counterPosition(){return this.config.counterPosition}get scrollDisabled(){return this.config.disableScroll}get thumbScrollDisabled(){return this.config.disableThumbScroll}get itemAutosize(){return this.config.itemAutosize}get autoHeight(){return this.config.autoHeight}get thumbAutosize(){return this.config.thumbAutosize}get direction(){return this.dir.value}get debug(){return this.config.debug}constructor(e,i){this.el=e,this.dir=i,this.itemClick=new O,this.thumbClick=new O,this.error=new O}ngOnChanges(e){e.config&&(e.config.currentValue?.thumbWidth!==e.config.previousValue?.thumbWidth&&this.el.nativeElement.style.setProperty("--g-thumb-width",Xm(e.config.currentValue.thumbWidth)),e.config.currentValue?.thumbHeight!==e.config.previousValue?.thumbHeight&&this.el.nativeElement.style.setProperty("--g-thumb-height",Xm(e.config.currentValue.thumbHeight)))}static{this.\u0275fac=function(i){return new(i||t)(b(Y),b(yc))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-core"]],hostVars:15,hostBindings:function(i,r){i&2&&ee("thumbPosition",r.thumbPosition)("orientation",r.orientation)("thumbDisabled",r.disableThumb)("bulletDisabled",r.bulletDisabled)("bulletPosition",r.bulletPosition)("imageSize",r.imageSize)("thumbImageSize",r.thumbImageSize)("counterPosition",r.counterPosition)("scrollDisabled",r.scrollDisabled)("thumbScrollDisabled",r.thumbScrollDisabled)("itemAutosize",r.itemAutosize)("autoHeight",r.autoHeight)("thumbAutosize",r.thumbAutosize)("dir",r.direction)("debug",r.debug)},inputs:{galleryId:"galleryId",state:"state",config:"config"},outputs:{itemClick:"itemClick",thumbClick:"thumbClick",error:"error"},features:[Se],decls:8,vars:14,consts:[[3,"state","config","galleryId","thumbClick","error",4,"ngIf"],[1,"g-box"],[3,"itemClick","error","state","config","galleryId"],[3,"state","config","galleryId",4,"ngIf"],[3,"state",4,"ngIf"],[1,"g-box-template"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"thumbClick","error","state","config","galleryId"],[3,"state","config","galleryId"],[3,"state"]],template:function(i,r){i&1&&(T(0,L6,1,3,"gallery-thumbs",0),d(1,"div",1)(2,"gallery-slider",2),D("itemClick",function(s){return r.itemClick.emit(s)})("error",function(s){return r.error.emit(s)}),T(3,F6,1,3,"gallery-nav",3),f(),T(4,V6,1,3,"gallery-bullets",3)(5,j6,1,1,"gallery-counter",4),d(6,"div",5),T(7,H6,1,0,"ng-container",6),f()()),i&2&&(g("ngIf",r.config.thumbs),h(2),B("g-debug",r.config.debug),g("state",r.state)("config",r.config)("galleryId",r.galleryId),h(),g("ngIf",r.config.nav&&r.state.items.length>1),h(),g("ngIf",r.config.bullets),h(),g("ngIf",r.config.counter),h(2),g("ngTemplateOutlet",r.config.boxTemplate)("ngTemplateOutletContext",ro(11,N6,r.state,r.config)))},dependencies:[He,Te,zs,pG,fG,z6,$6,U6],styles:["[_nghost-%COMP%]{position:relative;overflow:hidden;display:flex;gap:var(--g-gutter-size);width:100%;height:500px;min-height:100%;max-height:100%;--image-object-fit: unset;--slider-thumb-height: unset;--slider-thumb-width: unset;--thumb-slider-left: unset;--thumb-slider-overflow: unset;--thumb-slider-flex-direction: unset;--g-thumb-width: unset;--g-thumb-height: unset;--g-thumb-cursor: pointer;--slider-scroll-snap-type: unset;--slider-overflow: unset;--slider-flex-direction: unset;--slider-width: unset;--slider-height: unset;--slider-content-width: unset;--slider-content-height: unset;--g-item-width: unset;--g-item-height: unset;--g-item-max-height: var(--slider-height);--bullets-top: unset;--bullets-bottom: unset;--bullets-cursor: pointer;--bullets-opacity: .4;--bullets-hover-opacity: 1;--bullets-active-opacity: 1;--counter-top: unset;--counter-bottom: unset;--counter-border-radius: unset;--nav-space: 8px;--nav-hover-space: 6.4px;--nav-next-right: unset;--nav-next-hover-right: unset;--nav-next-left: unset;--nav-next-hover-left: unset}[thumbPosition=top][_nghost-%COMP%]{flex-direction:column}[thumbPosition=left][_nghost-%COMP%]{flex-direction:row}[thumbPosition=right][_nghost-%COMP%]{flex-direction:row-reverse}[thumbPosition=bottom][_nghost-%COMP%]{flex-direction:column-reverse}[autoHeight=true][itemAutoSize=false][orientation=horizontal][thumbPosition=top][_nghost-%COMP%], [autoHeight=true][itemAutoSize=false][orientation=horizontal][thumbPosition=bottom][_nghost-%COMP%]{height:fit-content;--g-item-height: auto !important;--g-item-max-height: auto}[imageSize=contain][_nghost-%COMP%] gallery-slider[_ngcontent-%COMP%], [thumbImageSize=contain][_nghost-%COMP%] gallery-thumbs[_ngcontent-%COMP%]{--image-object-fit: contain}[imageSize=cover][_nghost-%COMP%] gallery-slider[_ngcontent-%COMP%], [thumbImageSize=cover][_nghost-%COMP%] gallery-thumbs[_ngcontent-%COMP%]{--image-object-fit: cover}[thumbPosition=top][_nghost-%COMP%], [thumbPosition=bottom][_nghost-%COMP%]{--thumb-slider-top: 0;--thumb-slider-overflow: auto hidden;--thumb-slider-flex-direction: row;--g-thumb-height: 100%}[thumbPosition=top][thumbAutosize=true][_nghost-%COMP%], [thumbPosition=bottom][thumbAutosize=true][_nghost-%COMP%]{--g-thumb-width: auto !important}[thumbPosition=left][_nghost-%COMP%], [thumbPosition=right][_nghost-%COMP%]{--thumb-slider-left: 0;--thumb-slider-overflow: hidden auto;--thumb-slider-flex-direction: column;--g-thumb-width: 100%}[thumbPosition=left][thumbAutosize=true][_nghost-%COMP%], [thumbPosition=right][thumbAutosize=true][_nghost-%COMP%]{--g-thumb-height: auto !important}[thumbDisbled=true][_nghost-%COMP%]{--g-thumb-cursor: default}[thumbScrollDisabled=true][_nghost-%COMP%]{--thumb-slider-overflow: hidden !important}[orientation=horizontal][_nghost-%COMP%]{--slider-overflow: auto hidden;--slider-scroll-snap-type: x mandatory;--slider-flex-direction: row;--slider-content-height: 100%}[orientation=vertical][_nghost-%COMP%]{--slider-overflow: hidden auto;--slider-scroll-snap-type: y mandatory;--slider-flex-direction: column;--slider-content-width: 100%}[scrollDisabled=true][_nghost-%COMP%]{--slider-overflow: hidden !important}[orientation=horizontal][_nghost-%COMP%]{--g-item-width: var(--slider-width);--g-item-height: 100%}[orientation=horizontal][itemAutoSize=true][_nghost-%COMP%]{--g-item-width: auto}[orientation=vertical][_nghost-%COMP%]{--g-item-width: 100%;--g-item-height: var(--slider-height)}[orientation=vertical][itemAutoSize=true][_nghost-%COMP%]{--g-item-height: auto}[bulletPosition=top][_nghost-%COMP%]{--bullets-top: 15px}[bulletPosition=bottom][_nghost-%COMP%]{--bullets-bottom: 15px}[bulletDisabled=true][_nghost-%COMP%]{--bullets-cursor: default;--bullets-hover-opacity: var(--bullets-opacity)}[counterPosition=top][_nghost-%COMP%]{--counter-top: 0;--counter-border-radius: 0 0 4px 4px}[counterPosition=bottom][_nghost-%COMP%]{--counter-bottom: 0;--counter-border-radius: 4px 4px 0 0}[dir=ltr][_nghost-%COMP%]{--nav-next-transform: translateY(-50%) perspective(1px);--nav-next-right: var(--nav-space);--nav-next-hover-right: var(--nav-hover-space);--nav-prev-transform: translateY(-50%) perspective(1px) scale(-1, -1);--nav-prev-left: var(--nav-space);--nav-prev-hover-left: var(--nav-hover-space)}[dir=rtl][_nghost-%COMP%]{--nav-next-transform: translateY(-50%) perspective(1px) scale(-1, -1);--nav-next-left: var(--nav-space);--nav-next-hover-left: var(--nav-hover-space);--nav-prev-transform: translateY(-50%) perspective(1px);--nav-prev-right: var(--nav-space);--nav-prev-hover-right: var(--nav-hover-space)}.g-box[_ngcontent-%COMP%]{overflow:hidden;position:relative;display:flex;flex-direction:column;order:1;flex:1}.g-box-template[_ngcontent-%COMP%]{position:absolute;z-index:10}",'[debug=true][_nghost-%COMP%] .g-sliding gallery-item.g-item-highlight, [debug=true][_nghost-%COMP%] .g-resizing gallery-item.g-item-highlight, [debug=true][_nghost-%COMP%] .g-scrolling gallery-item.g-item-highlight{visibility:hidden}[debug=true][_nghost-%COMP%] gallery-slider:after, [debug=true][_nghost-%COMP%] gallery-slider:before{position:absolute;content:"";z-index:12}[debug=true][_nghost-%COMP%] gallery-slider:before{width:100%;height:0;border-top:1px dashed lime}[debug=true][_nghost-%COMP%] gallery-slider:after{height:100%;width:0;border-left:1px dashed lime}[debug=true][_nghost-%COMP%] gallery-slider gallery-item{outline:1px solid darkorange}[debug=true][_nghost-%COMP%] gallery-slider gallery-item.g-item-highlight:after{content:"";position:absolute;width:100%;height:100%;border:3px solid lime;box-sizing:border-box;z-index:10}[debug=true][_nghost-%COMP%] .g-sliding .g-slider-sliding{display:block}[debug=true][_nghost-%COMP%] .g-scrolling .g-slider-scrolling{display:block}[debug=true][_nghost-%COMP%] .g-resizing .g-slider-resizing{display:block}[debug=true][_nghost-%COMP%] .g-slider-debug{position:absolute;top:0;left:0;display:flex;gap:5px;padding:10px}[debug=true][_nghost-%COMP%] .g-slider-debug .g-slider-resizing{background:#f54c28}[debug=true][_nghost-%COMP%] .g-slider-debug .g-slider-scrolling{background:#ff8524}[debug=true][_nghost-%COMP%] .g-slider-debug .g-slider-sliding{background:#1f6cb9}[debug=true][_nghost-%COMP%] .g-slider-debug div, [debug=true][_nghost-%COMP%] .g-slider-debug:before{display:none;color:#fff;font-family:monospace;z-index:12;padding:2px 6px;border-radius:3px}[debug=true][itemAutoSize=false][_nghost-%COMP%] .g-slider-debug:before{content:var(--intersection-margin);background:#ecececd6;color:#363636;display:block}[debug=true][itemAutoSize=true][_nghost-%COMP%] gallery-item:before{position:absolute;margin:10px;content:var(--item-intersection-margin);background:#ecececd6;color:#363636;display:block;width:270px;font-family:monospace;z-index:12;padding:2px 6px;border-radius:3px}'],changeDetection:0})}}return t})(),gG=(()=>{class t{constructor(e){this.templateRef=e}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)(b(Ot))}}static{this.\u0275dir=U({type:t,selectors:[["","galleryImageDef",""]]})}}return t})(),_G=(()=>{class t{constructor(e){this.templateRef=e}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)(b(Ot))}}static{this.\u0275dir=U({type:t,selectors:[["","galleryThumbDef",""]]})}}return t})(),yG=(()=>{class t{constructor(e){this.templateRef=e}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)(b(Ot))}}static{this.\u0275dir=U({type:t,selectors:[["","galleryItemDef",""]]})}}return t})(),vG=(()=>{class t{constructor(e){this.templateRef=e}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)(b(Ot))}}static{this.\u0275dir=U({type:t,selectors:[["","galleryBoxDef",""]]})}}return t})(),bG=(()=>{class t{constructor(e,i){this._gallery=e,this._imgManager=i}ngAfterViewInit(){this._galleryRef=this._gallery.ref(this.galleryId),this._subscribe(),this.config.autoplay&&this._galleryRef.play()}ngOnChanges(e){this._galleryRef&&e.config?.currentValue.autoplay!==e.config?.previousValue.autoplay&&(this.config.autoplay?this._galleryRef.play():this._galleryRef.stop())}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe(),this._currentSubscription=this._galleryRef.playingChanged.pipe(St(e=>e.isPlaying?this._imgManager.getActiveItem(this._galleryRef.state).pipe(St(()=>J({}).pipe(Bc(this.config.autoplayInterval),pt(()=>{this._galleryRef.stateSnapshot.hasNext?this._galleryRef.next(this.config.scrollBehavior):this._galleryRef.set(0,this.config.scrollBehavior)})))):Pt)).subscribe()}_unsubscribe(){this._currentSubscription?.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(b(bc),b(dg))}}static{this.\u0275dir=U({type:t,selectors:[["gallery-core","autoplay",""]],inputs:{config:"config",galleryId:"galleryId"},features:[Se]})}}return t})(),Tw=(()=>{class t{constructor(e){this._gallery=e,this.id="root",this.nav=this._gallery.config.nav,this.bullets=this._gallery.config.bullets,this.loop=this._gallery.config.loop,this.debug=this._gallery.config.debug,this.thumbs=this._gallery.config.thumbs,this.counter=this._gallery.config.counter,this.detachThumbs=this._gallery.config.detachThumbs,this.thumbAutosize=this._gallery.config.thumbAutosize,this.itemAutosize=this._gallery.config.itemAutosize,this.autoHeight=this._gallery.config.autoHeight,this.autoplay=this._gallery.config.autoplay,this.disableThumbs=this._gallery.config.disableThumbs,this.disableBullets=this._gallery.config.disableBullets,this.disableScroll=this._gallery.config.disableScroll,this.disableThumbScroll=this._gallery.config.disableThumbScroll,this.thumbCentralized=this._gallery.config.thumbCentralized,this.disableMouseScroll=this._gallery.config.disableMouseScroll,this.disableThumbMouseScroll=this._gallery.config.disableThumbMouseScroll,this.bulletSize=this._gallery.config.bulletSize,this.thumbWidth=this._gallery.config.thumbWidth,this.thumbHeight=this._gallery.config.thumbHeight,this.autoplayInterval=this._gallery.config.autoplayInterval,this.scrollDuration=this._gallery.config.scrollDuration,this.resizeDebounceTime=this._gallery.config.resizeDebounceTime,this.scrollBehavior=this._gallery.config.scrollBehavior,this.scrollEase=this._gallery.config.scrollEase,this.imageSize=this._gallery.config.imageSize,this.thumbImageSize=this._gallery.config.thumbImageSize,this.bulletPosition=this._gallery.config.bulletPosition,this.counterPosition=this._gallery.config.counterPosition,this.orientation=this._gallery.config.orientation,this.loadingAttr=this._gallery.config.loadingAttr,this.loadingStrategy=this._gallery.config.loadingStrategy,this.thumbPosition=this._gallery.config.thumbPosition,this.destroyRef=!0,this.skipInitConfig=!1,this.itemClick=new O,this.thumbClick=new O,this.playingChange=new O,this.indexChange=new O,this.itemsChange=new O,this.error=new O}getConfig(){return{nav:this.nav,bullets:this.bullets,loop:this.loop,debug:this.debug,thumbs:this.thumbs,counter:this.counter,autoplay:this.autoplay,bulletSize:this.bulletSize,imageSize:this.imageSize,thumbImageSize:this.thumbImageSize,scrollBehavior:this.scrollBehavior,thumbCentralized:this.thumbCentralized,thumbWidth:this.thumbWidth,thumbHeight:this.thumbHeight,scrollEase:this.scrollEase,bulletPosition:this.bulletPosition,loadingAttr:this.loadingAttr,detachThumbs:this.detachThumbs,thumbPosition:this.thumbPosition,autoplayInterval:this.autoplayInterval,counterPosition:this.counterPosition,loadingStrategy:this.loadingStrategy,scrollDuration:this.scrollDuration,orientation:this.orientation,resizeDebounceTime:this.resizeDebounceTime,disableBullets:this.disableBullets,disableThumbs:this.disableThumbs,disableScroll:this.disableScroll,disableThumbScroll:this.disableThumbScroll,disableMouseScroll:this.disableMouseScroll,disableThumbMouseScroll:this.disableThumbMouseScroll,thumbAutosize:this.thumbAutosize,itemAutosize:this.itemAutosize,autoHeight:this.autoHeight}}ngOnChanges(e){this.galleryRef&&(this.galleryRef.setConfig(this.getConfig()),e.items&&e.items.currentValue!==e.items.previousValue&&this.load(this.items))}ngOnInit(){this.skipInitConfig?this.galleryRef=this._gallery.ref(this.id):this.galleryRef=this._gallery.ref(this.id,this.getConfig()),this.load(this.items),this.indexChange.observed&&(this._indexChange$=this.galleryRef.indexChanged.subscribe(e=>this.indexChange.emit(e))),this.itemsChange.observed&&(this._itemChange$=this.galleryRef.itemsChanged.subscribe(e=>this.itemsChange.emit(e))),this.playingChange.observed&&(this._playingChange$=this.galleryRef.playingChanged.subscribe(e=>this.playingChange.emit(e)))}ngAfterContentInit(){let e={};this._galleryItemDef&&(e.itemTemplate=this._galleryItemDef.templateRef),this._galleryImageDef&&(e.imageTemplate=this._galleryImageDef.templateRef),this._galleryThumbDef&&(e.thumbTemplate=this._galleryThumbDef.templateRef),this._galleryBoxDef&&(e.boxTemplate=this._galleryBoxDef.templateRef),Object.keys(e).length&&this.galleryRef.setConfig(e)}ngOnDestroy(){this._itemClick$?.unsubscribe(),this._thumbClick$?.unsubscribe(),this._itemChange$?.unsubscribe(),this._indexChange$?.unsubscribe(),this._playingChange$?.unsubscribe(),this.destroyRef&&this.galleryRef?.destroy()}onItemClick(e){this.itemClick.emit(e),this.galleryRef.itemClick.next(e)}onThumbClick(e){this.galleryRef.set(e),this.thumbClick.emit(e),this.galleryRef.thumbClick.next(e)}onError(e){this.error.emit(e),this.galleryRef.error.next(e)}load(e){this.galleryRef.load(e)}add(e,i){this.galleryRef.add(e,i)}addImage(e,i){this.galleryRef.addImage(e,i)}addVideo(e,i){this.galleryRef.addVideo(e,i)}addIframe(e,i){this.galleryRef.addIframe(e,i)}addYoutube(e,i){this.galleryRef.addYoutube(e,i)}addVimeo(e,i){this.galleryRef.addVimeo(e,i)}remove(e){this.galleryRef.remove(e)}next(e,i){this.galleryRef.next(e,i)}prev(e,i){this.galleryRef.prev(e,i)}set(e,i){this.galleryRef.set(e,i)}reset(){this.galleryRef.reset()}play(e){this.galleryRef.play(e)}stop(){this.galleryRef.stop()}static{this.\u0275fac=function(i){return new(i||t)(b(bc))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery"]],contentQueries:function(i,r,o){if(i&1&&(Ho(o,yG,5),Ho(o,gG,5),Ho(o,_G,5),Ho(o,vG,5)),i&2){let s;et(s=tt())&&(r._galleryItemDef=s.first),et(s=tt())&&(r._galleryImageDef=s.first),et(s=tt())&&(r._galleryThumbDef=s.first),et(s=tt())&&(r._galleryBoxDef=s.first)}},inputs:{id:"id",items:"items",nav:[2,"nav","nav",st],bullets:[2,"bullets","bullets",st],loop:[2,"loop","loop",st],debug:[2,"debug","debug",st],thumbs:[2,"thumbs","thumbs",st],counter:[2,"counter","counter",st],detachThumbs:[2,"detachThumbs","detachThumbs",st],thumbAutosize:[2,"thumbAutosize","thumbAutosize",st],itemAutosize:[2,"itemAutosize","itemAutosize",st],autoHeight:[2,"autoHeight","autoHeight",st],autoplay:[2,"autoplay","autoplay",st],disableThumbs:[2,"disableThumbs","disableThumbs",st],disableBullets:[2,"disableBullets","disableBullets",st],disableScroll:[2,"disableScroll","disableScroll",st],disableThumbScroll:[2,"disableThumbScroll","disableThumbScroll",st],thumbCentralized:[2,"thumbCentralized","thumbCentralized",st],disableMouseScroll:[2,"disableMouseScroll","disableMouseScroll",st],disableThumbMouseScroll:[2,"disableThumbMouseScroll","disableThumbMouseScroll",st],bulletSize:[2,"bulletSize","bulletSize",$s],thumbWidth:[2,"thumbWidth","thumbWidth",$s],thumbHeight:[2,"thumbHeight","thumbHeight",$s],autoplayInterval:[2,"autoplayInterval","autoplayInterval",$s],scrollDuration:[2,"scrollDuration","scrollDuration",$s],resizeDebounceTime:[2,"resizeDebounceTime","resizeDebounceTime",$s],scrollBehavior:"scrollBehavior",scrollEase:"scrollEase",imageSize:"imageSize",thumbImageSize:"thumbImageSize",bulletPosition:"bulletPosition",counterPosition:"counterPosition",orientation:"orientation",loadingAttr:"loadingAttr",loadingStrategy:"loadingStrategy",thumbPosition:"thumbPosition",destroyRef:"destroyRef",skipInitConfig:"skipInitConfig"},outputs:{itemClick:"itemClick",thumbClick:"thumbClick",playingChange:"playingChange",indexChange:"indexChange",itemsChange:"itemsChange",error:"error"},features:[pe([dg]),Se],decls:3,vars:7,consts:[["autoplay","",3,"itemClick","thumbClick","error","galleryId","state","config"]],template:function(i,r){i&1&&(d(0,"gallery-core",0),se(1,"async"),se(2,"async"),D("itemClick",function(s){return r.onItemClick(s)})("thumbClick",function(s){return r.onThumbClick(s)})("error",function(s){return r.onError(s)}),f()),i&2&&g("galleryId",r.id)("state",ye(1,3,r.galleryRef.state))("config",ye(2,5,r.galleryRef.config))},dependencies:[He,Er,mG,bG],styles:["[_nghost-%COMP%]{position:relative;overflow:hidden;z-index:1;display:flex;justify-content:center;align-items:center;background-color:#000;--g-height-transition: height 468ms cubic-bezier(.42, 0, .58, 1);--g-nav-drop-shadow: drop-shadow(0 0 2px rgba(0, 0, 0, .6));--g-box-shadow: 0 0 3px rgba(0, 0, 0, .6);--g-font-color: #000;--g-overlay-color: #fff;--g-gutter-size: 1px}[gallerize][_nghost-%COMP%]{--g-item-cursor: pointer}"],changeDetection:0})}}return t})(),qA=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({imports:[Tw]})}}return t})();function wG(t){return typeof t<"u"&&t!==null}function DG(t){return t!=null&&`${t}`!="false"}function MG(t){let n=new Date(t);if(!Number.isNaN(n.valueOf()))return n;let e=String(t).match(/\d+/g);if(e===null||e.length<=2)return n;{let[i,r,...o]=e.map(s=>parseInt(s,10));return new Date(Date.UTC(i,r-1,...o))}}var Od=60,Rd=Od*60,Cc=Rd*24,QA=Cc*7,KA=Cc*30,ZA=Cc*365,SG=(()=>{class t{constructor(){this.changes=new ie}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac})}}return t})(),TG=function(t){let n=Date.now(),e=Math.round(Math.abs(n-t)/1e3),i=t{class t extends wc{format(e){let{suffix:i,value:r,unit:o}=TG(e);return this.parse(r,o,i)}parse(e,i,r){return e!==1&&(i+="s"),e+" "+i+" "+r}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})()}static{this.\u0275prov=k({token:t,factory:t.\u0275fac})}}return t})();var Dc=class{},XA=(()=>{class t extends Dc{tick(e){return J(0).pipe(Ga(()=>{let i=Date.now(),r=Math.round(Math.abs(i-e)/1e3),o=r{let e;return function(r){return(e||(e=bn(t)))(r||t)}})()}static{this.\u0275prov=k({token:t,factory:t.\u0275fac})}}return t})();var cs=(()=>{class t{constructor(e,i,r,o){this.clock=o,this.live=!0,this.stateChanges=new ie,e&&(this.intlSubscription=e.changes.subscribe(()=>this.stateChanges.next())),this.stateChanges.subscribe(()=>{this.value=r.format(this.date),i.markForCheck()})}transform(e,...i){let r=MG(e).valueOf(),o;if(o=wG(i[0])?DG(i[0]):this.live,this.date===r&&this.live===o)return this.value;if(this.date=r,this.live=o,this.date)this.clockSubscription&&(this.clockSubscription.unsubscribe(),this.clockSubscription=void 0),this.clockSubscription=this.clock.tick(this.date).pipe(he(()=>this.live,this)).subscribe(()=>this.stateChanges.next()),this.stateChanges.next();else throw new SyntaxError(`Wrong parameter in TimeagoPipe. Expected a valid date, received: ${e}`);return this.value}ngOnDestroy(){this.intlSubscription&&(this.intlSubscription.unsubscribe(),this.intlSubscription=void 0),this.clockSubscription&&(this.clockSubscription.unsubscribe(),this.clockSubscription=void 0),this.stateChanges.complete()}static{this.\u0275fac=function(i){return new(i||t)(b(SG,24),b(ct,16),b(wc,16),b(Dc,16))}}static{this.\u0275pipe=Fo({name:"timeago",type:t,pure:!1,standalone:!1})}static{this.\u0275prov=k({token:t,factory:t.\u0275fac})}}return t})(),Br=(()=>{class t{static forRoot(e={}){return{ngModule:t,providers:[e.clock||{provide:Dc,useClass:XA},e.intl||[],e.formatter||{provide:wc,useClass:JA}]}}static forChild(e={}){return{ngModule:t,providers:[e.clock||{provide:Dc,useClass:XA},e.intl||[],e.formatter||{provide:wc,useClass:JA}]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({})}}return t})();var EG=["overlay"],xG=["*"];function IG(t,n){t&1&&I(0,"div")}function kG(t,n){if(t&1&&(d(0,"div"),T(1,IG,1,0,"div",6),f()),t&2){let e=m(2);sn(e.spinner.class),dn("color",e.spinner.color),h(),g("ngForOf",e.spinner.divArray)}}function AG(t,n){if(t&1&&(I(0,"div",7),se(1,"safeHtml")),t&2){let e=m(2);g("innerHTML",ye(1,1,e.template),ii)}}function PG(t,n){if(t&1&&(d(0,"div",2,0),T(2,kG,2,5,"div",3)(3,AG,2,3,"div",4),d(4,"div",5),Cn(5),f()()),t&2){let e=m();dn("background-color",e.spinner.bdColor)("z-index",e.spinner.zIndex)("position",e.spinner.fullScreen?"fixed":"absolute"),g("@.disabled",e.disableAnimation)("@fadeIn","in"),h(2),g("ngIf",!e.template),h(),g("ngIf",e.template),h(),dn("z-index",e.spinner.zIndex)}}var OG={"ball-8bits":16,"ball-atom":4,"ball-beat":3,"ball-circus":5,"ball-climbing-dot":4,"ball-clip-rotate":1,"ball-clip-rotate-multiple":2,"ball-clip-rotate-pulse":2,"ball-elastic-dots":5,"ball-fall":3,"ball-fussion":4,"ball-grid-beat":9,"ball-grid-pulse":9,"ball-newton-cradle":4,"ball-pulse":3,"ball-pulse-rise":5,"ball-pulse-sync":3,"ball-rotate":1,"ball-running-dots":5,"ball-scale":1,"ball-scale-multiple":3,"ball-scale-pulse":2,"ball-scale-ripple":1,"ball-scale-ripple-multiple":3,"ball-spin":8,"ball-spin-clockwise":8,"ball-spin-clockwise-fade":8,"ball-spin-clockwise-fade-rotating":8,"ball-spin-fade":8,"ball-spin-fade-rotating":8,"ball-spin-rotate":2,"ball-square-clockwise-spin":8,"ball-square-spin":8,"ball-triangle-path":3,"ball-zig-zag":2,"ball-zig-zag-deflect":2,cog:1,"cube-transition":2,fire:3,"line-scale":5,"line-scale-party":5,"line-scale-pulse-out":5,"line-scale-pulse-out-rapid":5,"line-spin-clockwise-fade":8,"line-spin-clockwise-fade-rotating":8,"line-spin-fade":8,"line-spin-fade-rotating":8,pacman:6,"square-jelly-box":2,"square-loader":1,"square-spin":1,timer:1,"triangle-skew-spin":1},Ew={BD_COLOR:"rgba(51,51,51,0.8)",SPINNER_COLOR:"#fff",Z_INDEX:99999},xw="primary",Da=class t{constructor(n){Object.assign(this,n)}static create(n){return!n?.template&&!n?.type&&console.warn(`[ngx-spinner]: Property "type" is missed. Please, provide animation type to component + and ensure css is added to angular.json file`),new t(n)}},Iw=(()=>{class t{constructor(){this.spinnerObservable=new Ve(null)}getSpinner(e){return this.spinnerObservable.asObservable().pipe(he(i=>i&&i.name===e))}show(e=xw,i){return new Promise((r,o)=>{setTimeout(()=>{i&&Object.keys(i).length?(i.name=e,this.spinnerObservable.next(new Da(G(E({},i),{show:!0}))),r(!0)):(this.spinnerObservable.next(new Da({name:e,show:!0})),r(!0))},10)})}hide(e=xw,i=10){return new Promise((r,o)=>{setTimeout(()=>{this.spinnerObservable.next(new Da({name:e,show:!1})),r(!0)},i)})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),eP=new $("NGX_SPINNER_CONFIG"),RG=(()=>{class t{constructor(e){this.sanitizer=e}transform(e){return e?this.sanitizer.bypassSecurityTrustHtml(e):""}static{this.\u0275fac=function(i){return new(i||t)(b(so,16))}}static{this.\u0275pipe=Fo({name:"safeHtml",type:t,pure:!0})}}return t})(),tP=(()=>{class t{constructor(e,i,r,o){this.spinnerService=e,this.changeDetector=i,this.elementRef=r,this.globalConfig=o,this.disableAnimation=!1,this.spinner=new Da,this.ngUnsubscribe=new ie,this.setDefaultOptions=()=>{let{type:s}=this.globalConfig??{};this.spinner=Da.create({name:this.name,bdColor:this.bdColor,size:this.size,color:this.color,type:this.type??s,fullScreen:this.fullScreen,divArray:this.divArray,divCount:this.divCount,show:this.show,zIndex:this.zIndex,template:this.template,showSpinner:this.showSpinner})},this.bdColor=Ew.BD_COLOR,this.zIndex=Ew.Z_INDEX,this.color=Ew.SPINNER_COLOR,this.size="large",this.fullScreen=!0,this.name=xw,this.template=null,this.showSpinner=!1,this.divArray=[],this.divCount=0,this.show=!1}initObservable(){this.spinnerService.getSpinner(this.name).pipe(vi(this.ngUnsubscribe)).subscribe(e=>{this.setDefaultOptions(),Object.assign(this.spinner,e),e.show&&this.onInputChange(),this.changeDetector.detectChanges()})}ngOnInit(){this.setDefaultOptions(),this.initObservable()}isSpinnerZone(e){return e===this.elementRef.nativeElement.parentElement?!0:e.parentNode&&this.isSpinnerZone(e.parentNode)}ngOnChanges(e){for(let i in e)if(i){let r=e[i];if(r.isFirstChange())return;typeof r.currentValue<"u"&&r.currentValue!==r.previousValue&&r.currentValue!==""&&(this.spinner[i]=r.currentValue,i==="showSpinner"&&(r.currentValue?this.spinnerService.show(this.spinner.name,this.spinner):this.spinnerService.hide(this.spinner.name)),i==="name"&&this.initObservable())}}getClass(e,i){this.spinner.divCount=OG[e],this.spinner.divArray=Array(this.spinner.divCount).fill(0).map((o,s)=>s);let r="";switch(i.toLowerCase()){case"small":r="la-sm";break;case"medium":r="la-2x";break;case"large":r="la-3x";break;default:break}return"la-"+e+" "+r}onInputChange(){this.spinner.class=this.getClass(this.spinner.type,this.spinner.size)}ngOnDestroy(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()}static{this.\u0275fac=function(i){return new(i||t)(b(Iw),b(ct),b(Y),b(eP,8))}}static{this.\u0275cmp=L({type:t,selectors:[["ngx-spinner"]],viewQuery:function(i,r){if(i&1&&jt(EG,5),i&2){let o;et(o=tt())&&(r.spinnerDOM=o.first)}},inputs:{bdColor:"bdColor",size:"size",color:"color",type:"type",fullScreen:"fullScreen",name:"name",zIndex:"zIndex",template:"template",showSpinner:"showSpinner",disableAnimation:"disableAnimation"},features:[Se],ngContentSelectors:xG,decls:1,vars:1,consts:[["overlay",""],["class","ngx-spinner-overlay",3,"background-color","z-index","position",4,"ngIf"],[1,"ngx-spinner-overlay"],[3,"class","color",4,"ngIf"],[3,"innerHTML",4,"ngIf"],[1,"loading-text"],[4,"ngFor","ngForOf"],[3,"innerHTML"]],template:function(i,r){i&1&&(An(),T(0,PG,6,12,"div",1)),i&2&&g("ngIf",r.spinner.show)},dependencies:[RG,Te,Ge],styles:[".ngx-spinner-overlay[_ngcontent-%COMP%]{position:fixed;top:0;left:0;width:100%;height:100%}.ngx-spinner-overlay[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]:not(.loading-text){top:50%;left:50%;margin:0;position:absolute;transform:translate(-50%,-50%)}.loading-text[_ngcontent-%COMP%]{position:absolute;top:60%;left:50%;transform:translate(-50%,-60%)}"],data:{animation:[uo("fadeIn",[Fr("in",xt({opacity:1})),ci(":enter",[xt({opacity:0}),On(300)]),ci(":leave",On(200,xt({opacity:0})))])]},changeDetection:0})}}return t})(),nP=(()=>{class t{static forRoot(e){return{ngModule:t,providers:[{provide:eP,useValue:e}]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({})}}return t})();var Mc=class t{busyRequestCount=0;spinnerService=S(Iw);busy(){this.busyRequestCount++,this.spinnerService.show(void 0,{type:"line-scale-pulse-out-rapid",size:"medium",bdColor:"rgba(247,228,177,0.5)",color:"#008080"})}idle(){this.busyRequestCount--,this.busyRequestCount<=0&&(this.busyRequestCount=0,this.spinnerService.hide())}static \u0275fac=function(e){return new(e||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};var Ur=class t{baseUrl=Kt.apiUrl;hubUrl=Kt.hubsUrl;http=S(Yn);busyService=S(Mc);hubConnection;paginatedResult=qe(null);messageThread=qe([]);getMessage(n,e,i){let r=Hl(n,e);return r=r.append("Container",i),this.http.get(this.baseUrl+"messages",{observe:"response",params:r}).subscribe({next:o=>ta(o,this.paginatedResult)})}getMessageThread(n){return this.http.get(this.baseUrl+"messages/thread/"+n)}sendMessage(n,e){return this.hubConnection?.invoke("SendMessage",{recipientUsername:n,content:e}).catch(i=>console.log(i))}deleteMessage(n){return this.http.delete(this.baseUrl+"messages/"+n)}createHubConnection(n,e){this.busyService.busy(),this.hubConnection=new ra().withUrl(this.hubUrl+"message?user="+e,{accessTokenFactory:()=>n.token}).withAutomaticReconnect().build(),this.hubConnection.start().catch(i=>console.error(i)).finally(()=>this.busyService.idle()),this.hubConnection.on("ReceiveMessageThread",i=>{this.messageThread.set(i)}),this.hubConnection.on("NewMessage",i=>{this.messageThread.update(r=>[...r,i])}),this.hubConnection.on("UpdatedGroup",i=>{i.connections.some(r=>r.username===e)&&this.messageThread.update(r=>(r.forEach(o=>{o.dateRead||(o.dateRead=new Date(Date.now()))}),r))})}stopHubConnection(){this.hubConnection?.state===Ye.Connected&&this.hubConnection.stop().catch(n=>console.log(n))}static \u0275fac=function(e){return new(e||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};var NG=["messageForm"],LG=["scrollMe"],FG=(t,n)=>n.id;function VG(t,n){t&1&&(d(0,"p"),y(1,"No messages yet"),f())}function jG(t,n){t&1&&(d(0,"span",18),y(1,"(unread)"),f())}function HG(t,n){if(t&1&&(d(0,"span",19),y(1),se(2,"timeago"),f()),t&2){let e=m().$implicit;h(),oe("(read ",ye(2,1,e.dateRead),")")}}function BG(t,n){if(t&1&&(d(0,"li")(1,"div")(2,"span",12),I(3,"img",13),f(),d(4,"div",14)(5,"div",15)(6,"small",16)(7,"span",17),y(8),se(9,"timeago"),f(),T(10,jG,2,0,"span",18)(11,HG,3,3,"span",19),f()(),d(12,"p"),y(13),f()()()()),t&2){let e=n.$implicit,i=m(2);h(3),Vt("src",e.senderPhotoUrl||"./assets/user.png",Xe),h(5),oe(" ",ye(9,5,e.messageSent)," "),h(2),je(!e.dateRead&&e.senderUsername!==i.username()?10:-1),h(),je(e.dateRead&&e.senderUsername!==i.username()?11:-1),h(2),H(e.content)}}function UG(t,n){if(t&1&&(d(0,"ul",4,1),yt(2,BG,14,7,"li",null,FG),f()),t&2){let e=m();h(2),vt(e.messageThread())}}function $G(t,n){t&1&&I(0,"i",11)}var hg=class t{messageForm;scrollContainer;messageService=S(Ur);username=un.required();messageContent="";loading=!1;ngAfterViewChecked(){this.scrollToBottom()}sendMessage(){this.loading=!0,this.messageService.sendMessage(this.username(),this.messageContent)?.then(()=>{this.messageForm?.reset(),this.scrollToBottom()}).finally(()=>this.loading=!1)}scrollToBottom(){this.scrollContainer&&(this.scrollContainer.nativeElement.scrollTop=this.scrollContainer.nativeElement.scrollHeight)}messageThread(){return this.messageService.messageThread()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-messages"]],viewQuery:function(e,i){if(e&1&&(jt(NG,5),jt(LG,5)),e&2){let r;et(r=tt())&&(i.messageForm=r.first),et(r=tt())&&(i.scrollContainer=r.first)}},inputs:{username:[1,"username"]},decls:13,vars:4,consts:[["messageForm","ngForm"],["scrollMe",""],[1,"card"],[1,"car-body"],[1,"chat",2,"overflow-y","auto","overflow-x","hidden","max-height","535px","scroll-behavior","smooth","scrollbar-width","none","-ms-overflow-style","none"],[1,"card-footer"],[3,"ngSubmit"],[1,"input-group"],["name","messageContent","required","","type","text","placeholder","Send a private message",1,"form-control","input-sm",3,"ngModelChange","ngModel"],[1,"input-group-append"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"fa","fa-spinner","fa-spin"],[1,"chat-img","float-end"],["alt","Message sender",1,"rounded-circle",3,"src"],[1,"chat-body"],[1,"header"],[1,"text-muted"],[1,"fa","fa-clock-o"],[1,"text-danger"],[1,"text-success"]],template:function(e,i){if(e&1){let r=N();d(0,"div",2)(1,"div",3),T(2,VG,2,0,"p")(3,UG,4,0,"ul",4),f(),d(4,"div",5)(5,"form",6,0),D("ngSubmit",function(){return C(r),w(i.sendMessage())}),d(7,"div",7)(8,"input",8),Re("ngModelChange",function(s){return C(r),Le(i.messageContent,s)||(i.messageContent=s),w(s)}),f(),d(9,"div",9)(10,"button",10),y(11," Send "),T(12,$G,1,0,"i",11),f()()()()()()}if(e&2){let r=Et(6);h(2),je(i.messageThread().length===0?2:3),h(6),Oe("ngModel",i.messageContent),h(2),g("disabled",!r.valid),h(2),je(i.loading?12:-1)}},dependencies:[Br,cs,Dn,Ii,Bt,kt,xi,rd,pn,ir],styles:[".card[_ngcontent-%COMP%]{border:none}.chat[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0}.chat[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin-bottom:10px;padding-bottom:10px;border-bottom:1px dotted #B3A9A9}.rounded-circle[_ngcontent-%COMP%]{max-height:50px}"]})};var zG=["memberTabs"];function YG(t,n){t&1&&(d(0,"div",7)(1,"i",20),y(2," Online now "),f()())}function WG(t,n){if(t&1&&I(0,"gallery",17),t&2){let e=m();g("items",e.images)("items",e.images)("itemAutosize",!0)}}var pg=class t{memberTabs;presenceService=S(Zo);messageService=S(Ur);route=S(nr);router=S(hn);accountService=S(lt);member={};images=[];activeTab;ngOnInit(){this.route.data.subscribe({next:n=>{this.member=n.member,this.member&&this.member.photos.map(e=>{this.images.push(new Pd({src:e.url,thumb:e.url}))})}}),this.route.paramMap.subscribe({next:n=>this.onRouteParamsChange()}),this.route.queryParams.subscribe({next:n=>{n.tab&&this.selectTab(n.tab)}})}selectTab(n){if(this.memberTabs){let e=this.memberTabs.tabs.find(i=>i.heading===n);e&&(e.active=!0)}}onRouteParamsChange(){let n=this.accountService.currentUser();n&&this.messageService.hubConnection?.state===Ye.Connected&&this.activeTab?.heading==="Messages"&&this.messageService.hubConnection.stop().then(()=>{this.messageService.createHubConnection(n,this.member.username)})}onTabActivated(n){if(this.activeTab=n,this.router.navigate([],{relativeTo:this.route,queryParams:{tab:this.activeTab.heading},queryParamsHandling:"merge"}),this.activeTab.heading=="Messages"){let e=this.accountService.currentUser();if(!e)return;this.messageService.createHubConnection(e,this.member.username)}else this.messageService.stopHubConnection()}ngOnDestroy(){this.messageService.stopHubConnection()}onlineUsers(){return this.presenceService.onlineUsers()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-detail"]],viewQuery:function(e,i){if(e&1&&jt(zG,7),e&2){let r;et(r=tt())&&(i.memberTabs=r.first)}},decls:56,vars:20,consts:[["memberTabs",""],["photoTab","tab"],[1,"row"],[1,"col-4"],[1,"card"],[1,"card-img","img-thumbnail",3,"src","alt"],[1,"card-body"],[1,"mb-2"],[1,"card-footer"],[1,"btn-group","d-flex"],[1,"btn","btn-primary"],[1,"btn","btn-primary",3,"click"],[1,"col-8"],[1,"member-tabset"],[3,"selectTab","heading"],["heading","Interests",3,"selectTab"],["heading","Photos",3,"selectTab"],[1,"gallery",3,"items","itemAutosize"],["heading","Messages",3,"selectTab"],[3,"username"],[1,"fa","fa-user-circle","text-success"]],template:function(e,i){if(e&1){let r=N();d(0,"div",2)(1,"div",3)(2,"div",4),I(3,"img",5),d(4,"div",6),T(5,YG,3,0,"div",7),d(6,"div")(7,"strong"),y(8,"Location:"),f(),d(9,"p"),y(10),f()(),d(11,"div")(12,"strong"),y(13,"Age:"),f(),d(14,"p"),y(15),f()(),d(16,"div")(17,"strong"),y(18,"Last Active:"),f(),d(19,"p"),y(20),se(21,"timeago"),f()(),d(22,"div")(23,"strong"),y(24,"Member since:"),f(),d(25,"p"),y(26),se(27,"date"),f()(),d(28,"div",8)(29,"div",9)(30,"button",10),y(31,"Like"),f(),d(32,"button",11),D("click",function(){return C(r),w(i.selectTab("Messages"))}),y(33,"Message"),f()()()()()(),d(34,"div",12)(35,"tabset",13,0)(37,"tab",14),D("selectTab",function(s){return C(r),w(i.onTabActivated(s))}),d(38,"h4"),y(39,"Description"),f(),d(40,"p"),y(41),f(),d(42,"h4"),y(43,"Looking for"),f(),d(44,"p"),y(45),f()(),d(46,"tab",15),D("selectTab",function(s){return C(r),w(i.onTabActivated(s))}),d(47,"h4"),y(48,"Interests"),f(),d(49,"p"),y(50),f()(),d(51,"tab",16,1),D("selectTab",function(s){return C(r),w(i.onTabActivated(s))}),T(53,WG,1,3,"gallery",17),f(),d(54,"tab",18),D("selectTab",function(s){return C(r),w(i.onTabActivated(s))}),I(55,"app-member-messages",19),f()()()()}if(e&2){let r=Et(52);h(3),Vt("src",i.member.photoUrl||"https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain",Xe),Vt("alt",i.member.knownAs),h(2),je(i.onlineUsers().includes(i.member.username)?5:-1),h(5),Dr("",i.member.city,", ",i.member.country,""),h(5),H(i.member.age),h(5),H(ye(21,15,i.member.lastActive)),h(6),H(yl(27,17,i.member.created,"dd MMM, yyyy")),h(11),jo("heading","About ",i.member.knownAs,""),h(4),H(i.member.introduction),h(4),H(i.member.lookingFor),h(5),H(i.member.interests),h(3),je(r.active?53:-1),h(2),g("username",i.member.username)}},dependencies:[_c,gc,wa,qA,Tw,Br,cs,yu,hg],styles:[".img-thumbnail[_ngcontent-%COMP%]{margin:25px;width:85%;height:85%}.card-body[_ngcontent-%COMP%]{padding:0 25px}.card-footer[_ngcontent-%COMP%]{padding:10px 15px;border-top:none}"]})};var GG=(t,n)=>n.id;function qG(t,n){if(t&1&&(d(0,"div",8),I(1,"app-member-card",10),f()),t&2){let e=n.$implicit;h(),g("member",e)}}function QG(t,n){if(t&1){let e=N();d(0,"div",9)(1,"pagination",11),D("pageChanged",function(r){C(e);let o=m();return w(o.pageChange(r))}),Re("ngModelChange",function(r){let o;C(e);let s=m();return Le((o=s.paginatedResult())==null?null:o.pagination.currentPage,r)||(((o=s.paginatedResult())==null?null:o.pagination).currentPage=r),w(r)}),f()()}if(t&2){let e,i,r,o=m();h(),g("boundaryLinks",!0)("totalItems",(e=o.paginatedResult())==null?null:e.pagination.totalItems)("itemsPerPage",(i=o.paginatedResult())==null?null:i.pagination.itemsPerPage),Oe("ngModel",(r=o.paginatedResult())==null?null:r.pagination.currentPage),g("maxSize",10)}}var mg=class t{likesService=S(qo);predicate="liked";pageNumber=1;pageSize=5;ngOnInit(){this.loadLikes()}ngOnDestroy(){this.likesService.paginatedResult.set(null)}getTitle(){switch(this.predicate){case"liked":return"Members your like";case"likedBy":return"Members who like you";default:return""}}loadLikes(){this.likesService.getLikes(this.predicate,this.pageNumber,this.pageSize)}pageChange(n){this.pageNumber!=n.page&&(this.pageNumber=n.page,this.loadLikes())}paginatedResult(){return this.likesService.paginatedResult()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-lists"]],decls:16,vars:5,consts:[[1,"text-center","mt-3"],[1,"container","mt-3"],[1,"d-flex"],[1,"btn-group"],["btnRadio","liked",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],["btnRadio","likedBy",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],["btnRadio","mutual",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],[1,"row","mt-3"],[1,"col-2"],[1,"d-flex","justify-content-center"],[3,"member"],["previousText","\u2039","nextText","\u203A","firstText","\xAB","lastText","\xBB",3,"pageChanged","ngModelChange","boundaryLinks","totalItems","itemsPerPage","ngModel","maxSize"]],template:function(e,i){if(e&1&&(d(0,"div",0)(1,"h2"),y(2),f()(),d(3,"div",1)(4,"div",2)(5,"div",3)(6,"button",4),Re("ngModelChange",function(o){return Le(i.predicate,o)||(i.predicate=o),o}),D("click",function(){return i.loadLikes()}),y(7,"Members I like"),f(),d(8,"button",5),Re("ngModelChange",function(o){return Le(i.predicate,o)||(i.predicate=o),o}),D("click",function(){return i.loadLikes()}),y(9,"Members who like me"),f(),d(10,"button",6),Re("ngModelChange",function(o){return Le(i.predicate,o)||(i.predicate=o),o}),D("click",function(){return i.loadLikes()}),y(11,"Mutual"),f()()(),d(12,"div",7),yt(13,qG,2,1,"div",8,GG),f()(),T(15,QG,2,5,"div",9)),e&2){let r,o;h(2),H(i.getTitle()),h(4),Oe("ngModel",i.predicate),h(2),Oe("ngModel",i.predicate),h(2),Oe("ngModel",i.predicate),h(3),vt((r=i.paginatedResult())==null?null:r.items),h(2),je((o=i.paginatedResult())!=null&&o.pagination?15:-1)}},dependencies:[mc,ls,Dn,kt,pn,hc,pc,Ca],encapsulation:2})};var KG=()=>({tab:"Messages"}),ZG=(t,n)=>n.id;function JG(t,n){t&1&&(d(0,"h3",6),y(1,"No messages"),f())}function XG(t,n){if(t&1){let e=N();d(0,"tr",12)(1,"td"),y(2),f(),d(3,"td")(4,"div"),I(5,"img",13),d(6,"strong",14),y(7),f()()(),d(8,"td"),y(9),se(10,"timeago"),f(),d(11,"td",15),D("click",function(r){return C(e),w(r.stopPropagation())}),d(12,"button",16),D("click",function(){let r=C(e).$implicit,o=m(2);return w(o.deleteMessage(r.id))}),y(13,"Delete"),f()()()}if(t&2){let e=n.$implicit,i=m(2);Vt("routerLink",i.getRoute(e)),g("queryParams",Zi(8,KG)),h(2),H(e.content),h(3),g("src",i.isOutbox?e.recipientPhotoUrl||"./assets/user.png":e.senderPhotoUrl||"./assets/user.png",Xe),h(2),H(i.isOutbox?e.senderPhotoUrl:e.recipientUsername),h(2),H(ye(10,6,e.messageSent))}}function e7(t,n){if(t&1&&(d(0,"table",7)(1,"thead")(2,"tr")(3,"th",9),y(4,"Message"),f(),d(5,"th",10),y(6,"From / To"),f(),d(7,"th",10),y(8,"Sent / Recived"),f(),I(9,"th",10),f()(),d(10,"tbody",11),yt(11,XG,14,9,"tr",12,ZG),f()()),t&2){let e,i=m();h(11),vt((e=i.paginatedResult())==null?null:e.items)}}function t7(t,n){if(t&1){let e=N();d(0,"div",8)(1,"pagination",17),D("pageChanged",function(r){C(e);let o=m();return w(o.pageChange(r))}),Re("ngModelChange",function(r){let o;C(e);let s=m();return Le((o=s.paginatedResult())==null?null:o.pagination.currentPage,r)||(((o=s.paginatedResult())==null?null:o.pagination).currentPage=r),w(r)}),f()()}if(t&2){let e,i,r,o=m();h(),g("boundaryLinks",!0)("totalItems",(e=o.paginatedResult())==null?null:e.pagination.totalItems)("itemsPerPage",(i=o.paginatedResult())==null?null:i.pagination.itemsPerPage),Oe("ngModel",(r=o.paginatedResult())==null?null:r.pagination.currentPage),g("maxSize",10)}}var gg=class t{messageService=S(Ur);container="Inbox";pageNumber=1;pageSize=5;isOutbox=this.container==="Outbox";ngOnInit(){this.loadMessage()}loadMessage(){this.messageService.getMessage(this.pageNumber,this.pageSize,this.container)}getRoute(n){return this.container==="Outbox"?`/members/${n.recipientUsername}`:`/members/${n.senderUsername}`}pageChange(n){this.pageNumber!==n.page&&(this.pageNumber=n.page,this.loadMessage())}deleteMessage(n){this.messageService.deleteMessage(n).subscribe({next:e=>{this.messageService.paginatedResult.update(i=>(i&&i.items&&i.items.splice(i.items.findIndex(r=>r.id==n),1),i))}})}paginatedResult(){return this.messageService.paginatedResult()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-messages"]],decls:12,vars:5,consts:[[1,"container","mt-3"],[1,"d-flex"],[1,"btn-group"],["btnRadio","Unread",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],["btnRadio","Inbox",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],["btnRadio","Outbox",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],[1,"mt-3"],[1,"table","table-hover","mt-3",2,"cursor","pointer"],[1,"d-flex","justify-content-center"],[2,"width","40%"],[2,"width","20%"],[1,"align-middle"],[3,"routerLink","queryParams"],["alt","Image of user",1,"rounded-circle",3,"src"],[2,"margin-left","10px"],[3,"click"],[1,"btn","btn-danger",3,"click"],["previousText","\u2039","nextText","\u203A","firstText","\xAB","lastText","\xBB",3,"pageChanged","ngModelChange","boundaryLinks","totalItems","itemsPerPage","ngModel","maxSize"]],template:function(e,i){if(e&1&&(d(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),Re("ngModelChange",function(o){return Le(i.container,o)||(i.container=o),o}),D("click",function(){return i.loadMessage()}),y(4,"Unread"),f(),d(5,"button",4),Re("ngModelChange",function(o){return Le(i.container,o)||(i.container=o),o}),D("click",function(){return i.loadMessage()}),y(6,"Inbox"),f(),d(7,"button",5),Re("ngModelChange",function(o){return Le(i.container,o)||(i.container=o),o}),D("click",function(){return i.loadMessage()}),y(8,"Outbox"),f()()()(),T(9,JG,2,0,"h3",6)(10,e7,13,0,"table",7)(11,t7,2,5,"div",8)),e&2){let r,o;h(3),Oe("ngModel",i.container),h(2),Oe("ngModel",i.container),h(2),Oe("ngModel",i.container),h(2),je(!((r=i.paginatedResult())!=null&&r.items)||((r=i.paginatedResult())==null||r.items==null?null:r.items.length)===0?9:10),h(2),je((o=i.paginatedResult())!=null&&o.pagination&&((o=i.paginatedResult())==null||o.pagination==null?null:o.pagination.totalItems)>0?11:-1)}},dependencies:[mc,ls,Dn,kt,pn,Br,cs,Pr,pc,Ca],styles:[".rounded-circle[_ngcontent-%COMP%]{max-height:50px}"]})};var iP=(t,n)=>{let e=S(lt),i=S(At);return e.currentUser()?!0:(i.error("You are not logged in!"),!1)};function n7(t,n){if(t&1&&(d(0,"li"),y(1),f()),t&2){let e=n.$implicit;h(),H(e)}}function i7(t,n){if(t&1&&(d(0,"div",1)(1,"ul",2),yt(2,n7,2,1,"li",null,_l),f()()),t&2){let e=m();h(2),vt(e.validationErrors)}}var _g=class t{baseUrl=Kt.apiUrl;http=S(Yn);validationErrors=[];get400Error(){this.http.get(this.baseUrl+"buggy/bad-request").subscribe({next:n=>console.log(n),error:n=>console.log(n)})}get401Error(){this.http.get(this.baseUrl+"buggy/auth").subscribe({next:n=>console.log(n),error:n=>console.log(n)})}get404Error(){this.http.get(this.baseUrl+"buggy/not-found").subscribe({next:n=>console.log(n),error:n=>console.log(n)})}get500Error(){this.http.get(this.baseUrl+"buggy/server-error").subscribe({next:n=>console.log(n),error:n=>console.log(n)})}get400ValidationError(){this.http.post(this.baseUrl+"account/register",{}).subscribe({next:n=>console.log(n),error:n=>{console.log(n),this.validationErrors=n}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-test-errors"]],decls:12,vars:1,consts:[[1,"btn","btn-outline-primary","m-3",3,"click"],[1,"row","mt-5"],[1,"text-danger"]],template:function(e,i){e&1&&(d(0,"div")(1,"button",0),D("click",function(){return i.get400Error()}),y(2,"Test 400 error"),f(),d(3,"button",0),D("click",function(){return i.get401Error()}),y(4,"Test 401 error"),f(),d(5,"button",0),D("click",function(){return i.get404Error()}),y(6,"Test 404 error"),f(),d(7,"button",0),D("click",function(){return i.get500Error()}),y(8,"Test 500 error"),f(),d(9,"button",0),D("click",function(){return i.get400ValidationError()}),y(10,"Test 400 validation error"),f(),T(11,i7,4,0,"div",1),f()),e&2&&(h(11),je(i.validationErrors.length>0?11:-1))},encapsulation:2})};var yg=class t{static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-not-found"]],decls:5,vars:0,consts:[[1,"container-fluid"],["routerLink","/",1,"btn","btn-info","btn-lg"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"h1"),y(2,"Not found"),f(),d(3,"button",1),y(4,"Return to home page"),f()())},dependencies:[Pr],encapsulation:2})};function r7(t,n){if(t&1&&(d(0,"h5",0),y(1),f(),d(2,"p",1),y(3,"Note: if you are seeing this error then angular is not to blame!"),f(),d(4,"p"),y(5,"What to do next"),f(),d(6,"ol")(7,"li"),y(8,"Open chrom dev tools and check the failing network nequest in the network tab"),f(),d(9,"li"),y(10,"Examine the URL of the failing request"),f(),d(11,"li"),y(12,"Reproduce the error in postman - if you can reporduce the error then angular is not to blame"),f()(),d(13,"p",1),y(14,"Followein the stack trace - check the first 2 lines this tells you exactly whichline of code caused the problem!"),f(),d(15,"code",2),y(16),f()),t&2){let e=m();h(),oe("Error: ",e.error.message,""),h(15),H(e.error.details)}}var vg=class t{constructor(n){this.router=n;let e=this.router.getCurrentNavigation();this.error=e?.extras?.state?.error}error;static \u0275fac=function(e){return new(e||t)(b(hn))};static \u0275cmp=L({type:t,selectors:[["app-server-error"]],decls:3,vars:1,consts:[[1,"text-danger"],[1,"font-weight-bold"],[1,"mt-5",2,"background-color","whitesmoke"]],template:function(e,i){e&1&&(d(0,"h4"),y(1,"Internal Server Error"),f(),T(2,r7,17,2)),e&2&&(h(2),je(i.error?2:-1))},encapsulation:2})};var Nd=class{constructor(n){this.rawFile=n;let e=n instanceof HTMLInputElement?n.value:n;this[`_createFrom${typeof e=="string"?"FakePath":"Object"}`](e)}_createFromFakePath(n){this.lastModifiedDate=void 0,this.size=void 0,this.type=`like/${n.slice(n.lastIndexOf(".")+1).toLowerCase()}`,this.name=n.slice(n.lastIndexOf("/")+n.lastIndexOf("\\")+2)}_createFromObject(n){this.size=n.size,this.type=n.type,this.name=n.name}},kw=class{constructor(n,e,i){this.url="/",this.headers=[],this.withCredentials=!0,this.formData=[],this.isReady=!1,this.isUploading=!1,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!1,this.isError=!1,this.progress=0,this.uploader=n,this.some=e,this.options=i,this.file=new Nd(e),this._file=e,n.options&&(this.method=n.options.method||"POST",this.alias=n.options.itemAlias||"file"),this.url=n.options.url}upload(){try{this.uploader.uploadItem(this)}catch{this.uploader._onCompleteItem(this,"",0,{}),this.uploader._onErrorItem(this,"",0,{})}}cancel(){this.uploader.cancelItem(this)}remove(){this.uploader.removeFromQueue(this)}onBeforeUpload(){}onBuildForm(n){return{form:n}}onProgress(n){return{progress:n}}onSuccess(n,e,i){return{response:n,status:e,headers:i}}onError(n,e,i){return{response:n,status:e,headers:i}}onCancel(n,e,i){return{response:n,status:e,headers:i}}onComplete(n,e,i){return{response:n,status:e,headers:i}}_onBeforeUpload(){this.isReady=!0,this.isUploading=!0,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!1,this.isError=!1,this.progress=0,this.onBeforeUpload()}_onBuildForm(n){this.onBuildForm(n)}_onProgress(n){this.progress=n,this.onProgress(n)}_onSuccess(n,e,i){this.isReady=!1,this.isUploading=!1,this.isUploaded=!0,this.isSuccess=!0,this.isCancel=!1,this.isError=!1,this.progress=100,this.index=void 0,this.onSuccess(n,e,i)}_onError(n,e,i){this.isReady=!1,this.isUploading=!1,this.isUploaded=!0,this.isSuccess=!1,this.isCancel=!1,this.isError=!0,this.progress=0,this.index=void 0,this.onError(n,e,i)}_onCancel(n,e,i){this.isReady=!1,this.isUploading=!1,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!0,this.isError=!1,this.progress=0,this.index=void 0,this.onCancel(n,e,i)}_onComplete(n,e,i){this.onComplete(n,e,i),this.uploader.options.removeAfterUpload&&this.remove()}_prepareToUploading(){this.index=this.index||++this.uploader._nextIndex,this.isReady=!0}},o7=(()=>{class t{static{this.mime_doc=["application/msword","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.wordprocessingml.template","application/vnd.ms-word.document.macroEnabled.12","application/vnd.ms-word.template.macroEnabled.12"]}static{this.mime_xsl=["application/vnd.ms-excel","application/vnd.ms-excel","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.openxmlformats-officedocument.spreadsheetml.template","application/vnd.ms-excel.sheet.macroEnabled.12","application/vnd.ms-excel.template.macroEnabled.12","application/vnd.ms-excel.addin.macroEnabled.12","application/vnd.ms-excel.sheet.binary.macroEnabled.12"]}static{this.mime_ppt=["application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.presentationml.template","application/vnd.openxmlformats-officedocument.presentationml.slideshow","application/vnd.ms-powerpoint.addin.macroEnabled.12","application/vnd.ms-powerpoint.presentation.macroEnabled.12","application/vnd.ms-powerpoint.presentation.macroEnabled.12","application/vnd.ms-powerpoint.slideshow.macroEnabled.12"]}static{this.mime_psd=["image/photoshop","image/x-photoshop","image/psd","application/photoshop","application/psd","zz-application/zz-winassoc-psd"]}static{this.mime_compress=["application/x-gtar","application/x-gcompress","application/compress","application/x-tar","application/x-rar-compressed","application/octet-stream","application/x-zip-compressed","application/zip-compressed","application/x-7z-compressed","application/gzip","application/x-bzip2"]}static getMimeClass(e){let i="application";return e?.type&&this.mime_psd.indexOf(e.type)!==-1||e?.type?.match("image.*")?i="image":e?.type?.match("video.*")?i="video":e?.type?.match("audio.*")?i="audio":e?.type==="application/pdf"?i="pdf":e?.type&&this.mime_compress.indexOf(e.type)!==-1?i="compress":e?.type&&this.mime_doc.indexOf(e.type)!==-1?i="doc":e?.type&&this.mime_xsl.indexOf(e.type)!==-1?i="xls":e?.type&&this.mime_ppt.indexOf(e.type)!==-1&&(i="ppt"),i==="application"&&e?.name&&(i=this.fileTypeDetection(e.name)),i}static fileTypeDetection(e){let i={jpg:"image",jpeg:"image",tif:"image",psd:"image",bmp:"image",png:"image",nef:"image",tiff:"image",cr2:"image",dwg:"image",cdr:"image",ai:"image",indd:"image",pin:"image",cdp:"image",skp:"image",stp:"image","3dm":"image",mp3:"audio",wav:"audio",wma:"audio",mod:"audio",m4a:"audio",compress:"compress",zip:"compress",rar:"compress","7z":"compress",lz:"compress",z01:"compress",bz2:"compress",gz:"compress",pdf:"pdf",xls:"xls",xlsx:"xls",ods:"xls",mp4:"video",avi:"video",wmv:"video",mpg:"video",mts:"video",flv:"video","3gp":"video",vob:"video",m4v:"video",mpeg:"video",m2ts:"video",mov:"video",doc:"doc",docx:"doc",eps:"doc",txt:"doc",odt:"doc",rtf:"doc",ppt:"ppt",pptx:"ppt",pps:"ppt",ppsx:"ppt",odp:"ppt"},r=e.split(".");if(r.length<2)return"application";let o=r[r.length-1].toLowerCase();return i[o]===void 0?"application":i[o]}}return t})();function s7(t){return File&&t instanceof File}var bg=class{constructor(n){this.isUploading=!1,this.queue=[],this.progress=0,this._nextIndex=0,this.options={autoUpload:!1,isHTML5:!0,filters:[],removeAfterUpload:!1,disableMultipart:!1,formatDataFunction:e=>e._file,formatDataFunctionIsAsync:!1,url:""},this.setOptions(n),this.response=new O}setOptions(n){this.options=Object.assign(this.options,n),this.authToken=this.options.authToken,this.authTokenHeader=this.options.authTokenHeader||"Authorization",this.autoUpload=this.options.autoUpload,this.options.filters?.unshift({name:"queueLimit",fn:this._queueLimitFilter}),this.options.maxFileSize&&this.options.filters?.unshift({name:"fileSize",fn:this._fileSizeFilter}),this.options.allowedFileType&&this.options.filters?.unshift({name:"fileType",fn:this._fileTypeFilter}),this.options.allowedMimeType&&this.options.filters?.unshift({name:"mimeType",fn:this._mimeTypeFilter});for(let e=0;e{r||(r=this.options);let u=new Nd(c);if(this._isValidFile(u,s,r)){let p=new kw(this,c,r);l.push(p),this.queue.push(p),this._onAfterAddingFile(p)}else if(typeof this._failFilterIndex=="number"&&this._failFilterIndex>=0){let p=s[this._failFilterIndex];this._onWhenAddingFileFailed(u,p,r)}}),this.queue.length!==a&&(this._onAfterAddingAll(l),this.progress=this._getTotalProgress()),this._render(),this.options.autoUpload&&this.uploadAll()}removeFromQueue(n){let e=this.getIndexOfItem(n),i=this.queue[e];i.isUploading&&i.cancel(),this.queue.splice(e,1),this.progress=this._getTotalProgress()}clearQueue(){for(;this.queue.length;)this.queue[0].remove();this.progress=0}uploadItem(n){let e=this.getIndexOfItem(n),i=this.queue[e],r=this.options.isHTML5?"_xhrTransport":"_iframeTransport";i._prepareToUploading(),!this.isUploading&&(this.isUploading=!0,this[r](i))}cancelItem(n){let e=this.getIndexOfItem(n),i=this.queue[e],r=this.options.isHTML5?i._xhr:i._form;i&&i.isUploading&&r.abort()}uploadAll(){let n=this.getNotUploadedItems().filter(e=>!e.isUploading);n.length&&(n.map(e=>e._prepareToUploading()),n[0].upload())}cancelAll(){this.getNotUploadedItems().map(e=>e.cancel())}isFile(n){return s7(n)}isFileLikeObject(n){return n instanceof Nd}getIndexOfItem(n){return typeof n=="number"?n:this.queue.indexOf(n)}getNotUploadedItems(){return this.queue.filter(n=>!n.isUploaded)}getReadyItems(){return this.queue.filter(n=>n.isReady&&!n.isUploading).sort((n,e)=>n.index-e.index)}onAfterAddingAll(n){return{fileItems:n}}onBuildItemForm(n,e){return{fileItem:n,form:e}}onAfterAddingFile(n){return{fileItem:n}}onWhenAddingFileFailed(n,e,i){return{item:n,filter:e,options:i}}onBeforeUploadItem(n){return{fileItem:n}}onProgressItem(n,e){return{fileItem:n,progress:e}}onProgressAll(n){return{progress:n}}onSuccessItem(n,e,i,r){return{item:n,response:e,status:i,headers:r}}onErrorItem(n,e,i,r){return{item:n,response:e,status:i,headers:r}}onCancelItem(n,e,i,r){return{item:n,response:e,status:i,headers:r}}onCompleteItem(n,e,i,r){return{item:n,response:e,status:i,headers:r}}onCompleteAll(){}_mimeTypeFilter(n){return!(n?.type&&this.options.allowedMimeType&&this.options.allowedMimeType?.indexOf(n.type)===-1)}_fileSizeFilter(n){return!(this.options.maxFileSize&&n.size>this.options.maxFileSize)}_fileTypeFilter(n){return!(this.options.allowedFileType&&this.options.allowedFileType.indexOf(o7.getMimeClass(n))===-1)}_onErrorItem(n,e,i,r){n._onError(e,i,r),this.onErrorItem(n,e,i,r)}_onCompleteItem(n,e,i,r){n._onComplete(e,i,r),this.onCompleteItem(n,e,i,r);let o=this.getReadyItems()[0];if(this.isUploading=!1,o){o.upload();return}this.onCompleteAll(),this.progress=this._getTotalProgress(),this._render()}_headersGetter(n){return e=>e?n[e.toLowerCase()]||void 0:n}_xhrTransport(n){let e=this,i=n._xhr=new XMLHttpRequest,r;if(this._onBeforeUploadItem(n),typeof n._file.size!="number")throw new TypeError("The file specified is no longer valid");if(this.options.disableMultipart)this.options.formatDataFunction&&(r=this.options.formatDataFunction(n));else{r=new FormData,this._onBuildItemForm(n,r);let o=()=>r.append(n.alias,n._file,n.file.name);this.options.parametersBeforeFiles||o(),this.options.additionalParameter!==void 0&&Object.keys(this.options.additionalParameter).forEach(s=>{let a=this.options.additionalParameter?.[s];typeof a=="string"&&a.indexOf("{{file_name}}")>=0&&n.file?.name&&(a=a.replace("{{file_name}}",n.file.name)),r.append(s,a)}),o&&this.options.parametersBeforeFiles&&o()}if(i.upload.onprogress=o=>{let s=Math.round(o.lengthComputable?o.loaded*100/o.total:0);this._onProgressItem(n,s)},i.onload=()=>{let o=this._parseHeaders(i.getAllResponseHeaders()),s=this._transformResponse(i.response),l=`_on${this._isSuccessCode(i.status)?"Success":"Error"}Item`;this[l](n,s,i.status,o),this._onCompleteItem(n,s,i.status,o)},i.onerror=()=>{let o=this._parseHeaders(i.getAllResponseHeaders()),s=this._transformResponse(i.response);this._onErrorItem(n,s,i.status,o),this._onCompleteItem(n,s,i.status,o)},i.onabort=()=>{let o=this._parseHeaders(i.getAllResponseHeaders()),s=this._transformResponse(i.response);this._onCancelItem(n,s,i.status,o),this._onCompleteItem(n,s,i.status,o)},n.method&&n.url&&i.open(n.method,n.url,!0),i.withCredentials=n.withCredentials,this.options.headers)for(let o of this.options.headers)i.setRequestHeader(o.name,o.value);if(n.headers.length)for(let o of n.headers)i.setRequestHeader(o.name,o.value);this.authToken&&this.authTokenHeader&&i.setRequestHeader(this.authTokenHeader,this.authToken),i.onreadystatechange=function(){i.readyState==XMLHttpRequest.DONE&&e.response.emit(i.responseText)},this.options.formatDataFunctionIsAsync?r.then(o=>i.send(JSON.stringify(o))):i.send(r),this._render()}_getTotalProgress(n=0){if(this.options.removeAfterUpload)return n;let e=this.getNotUploadedItems().length,i=e?this.queue.length-e:this.queue.length,r=100/this.queue.length,o=n*r/100;return Math.round(i*r+o)}_getFilters(n){if(!n)return this.options?.filters||[];if(Array.isArray(n))return n;if(typeof n=="string"){let e=n.match(/[^\s,]+/g);return this.options?.filters||[].filter(i=>e?.indexOf(i.name)!==-1)}return this.options?.filters||[]}_render(){}_queueLimitFilter(){return this.options.queueLimit===void 0||this.queue.length(typeof this._failFilterIndex=="number"&&this._failFilterIndex++,r.fn.call(this,n,i))):!0}_isSuccessCode(n){return n>=200&&n<300||n===304}_transformResponse(n){return n}_parseHeaders(n){let e={},i,r,o;return n&&n.split(` +`).map(s=>{o=s.indexOf(":"),i=s.slice(0,o).trim().toLowerCase(),r=s.slice(o+1).trim(),i&&(e[i]=e[i]?e[i]+", "+r:r)}),e}_onWhenAddingFileFailed(n,e,i){this.onWhenAddingFileFailed(n,e,i)}_onAfterAddingFile(n){this.onAfterAddingFile(n)}_onAfterAddingAll(n){this.onAfterAddingAll(n)}_onBeforeUploadItem(n){n._onBeforeUpload(),this.onBeforeUploadItem(n)}_onBuildItemForm(n,e){n._onBuildForm(e),this.onBuildItemForm(n,e)}_onProgressItem(n,e){let i=this._getTotalProgress(e);this.progress=i,n._onProgress(e),this.onProgressItem(n,e),this.onProgressAll(i),this._render()}_onSuccessItem(n,e,i,r){n._onSuccess(e,i,r),this.onSuccessItem(n,e,i,r)}_onCancelItem(n,e,i,r){n._onCancel(e,i,r),this.onCancelItem(n,e,i,r)}},rP=(()=>{class t{constructor(e){this.fileOver=new O,this.onFileDrop=new O,this.element=e}getOptions(){return this.uploader?.options}getFilters(){return""}onDrop(e){let i=this._getTransfer(e);if(!i)return;let r=this.getOptions(),o=this.getFilters();this._preventAndStop(e),r&&this.uploader?.addToQueue(i.files,r,o),this.fileOver.emit(!1),this.onFileDrop.emit(i.files)}onDragOver(e){let i=this._getTransfer(e);this._haveFiles(i.types)&&(i.dropEffect="copy",this._preventAndStop(e),this.fileOver.emit(!0))}onDragLeave(e){this.element&&e.currentTarget===this.element[0]||(this._preventAndStop(e),this.fileOver.emit(!1))}_getTransfer(e){return e.dataTransfer?e.dataTransfer:e.originalEvent.dataTransfer}_preventAndStop(e){e.preventDefault(),e.stopPropagation()}_haveFiles(e){return e?e.indexOf?e.indexOf("Files")!==-1:e.contains?e.contains("Files"):!1:!1}static{this.\u0275fac=function(i){return new(i||t)(b(Y))}}static{this.\u0275dir=U({type:t,selectors:[["","ng2FileDrop",""]],hostBindings:function(i,r){i&1&&D("drop",function(s){return r.onDrop(s)})("dragover",function(s){return r.onDragOver(s)})("dragleave",function(s){return r.onDragLeave(s)})},inputs:{uploader:"uploader"},outputs:{fileOver:"fileOver",onFileDrop:"onFileDrop"},standalone:!1})}}return t})();var oP=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({imports:[He]})}}return t})();function l7(t,n){if(t&1&&(d(0,"div",20)(1,"div",21),I(2,"img",22),f()()),t&2){let e,i=m(2);h(2),g("src",(e=i.photo())==null?null:e.url,Xe)}}function c7(t,n){if(t&1){let e=N();d(0,"div",31)(1,"div",32)(2,"input",33),D("change",function(){let r=C(e).$implicit,o=m(3);return w(o.toggleTagSelection(r))}),f(),d(3,"label",34),y(4),f()()()}if(t&2){let e=n.$implicit,i=m(3);h(2),g("id","tag-"+e)("checked",i.isTagSelected(e)),h(),g("for","tag-"+e),h(),oe(" ",e," ")}}function u7(t,n){if(t&1&&(d(0,"span",35),y(1),f()),t&2){let e=n.$implicit;h(),oe(" ",e," ")}}function d7(t,n){t&1&&(d(0,"span",36),y(1," No tags selected "),f())}function f7(t,n){if(t&1&&(d(0,"div")(1,"h6",23),y(2,"Select tags for this photo:"),f(),d(3,"div",24),T(4,c7,5,4,"div",25),f(),d(5,"div",26)(6,"h6",27),y(7,"Selected Tags:"),f(),d(8,"div",28),T(9,u7,2,1,"span",29)(10,d7,2,0,"span",30),f()()()),t&2){let e=m(2);h(4),g("ngForOf",e.availableTags()),h(5),g("ngForOf",e.selectedTagNames()),h(),g("ngIf",e.selectedTagNames().length===0)}}function h7(t,n){t&1&&(d(0,"div",37)(1,"div",38)(2,"span",39),y(3,"Loading..."),f()(),d(4,"div",40),y(5,"Loading tags..."),f()())}function p7(t,n){t&1&&I(0,"span",41)}function m7(t,n){t&1&&I(0,"i",42)}function g7(t,n){if(t&1){let e=N();d(0,"div",2),D("click",function(){C(e);let r=m();return w(r.closeModal())}),I(1,"div",3),d(2,"div",4),D("click",function(r){return C(e),w(r.stopPropagation())}),d(3,"div",5)(4,"div",6)(5,"h5",7),I(6,"i",8),y(7," Edit Photo Tags "),f(),d(8,"button",9),D("click",function(){C(e);let r=m();return w(r.closeModal())}),f()(),d(9,"div",10),T(10,l7,3,1,"div",11)(11,f7,11,3,"div",12)(12,h7,6,0,"ng-template",null,0,Pn),f(),d(14,"div",13)(15,"div",14)(16,"button",15),D("click",function(){C(e);let r=m();return w(r.closeModal())}),I(17,"i",16),y(18," Discard "),f(),d(19,"button",17),D("click",function(){C(e);let r=m();return w(r.saveChanges())}),T(20,p7,1,0,"span",18)(21,m7,1,0,"i",19),y(22),f()()()()()()}if(t&2){let e=Et(13),i=m();B("show",i.isVisible()),h(10),g("ngIf",i.photo()),h(),g("ngIf",i.availableTags().length)("ngIfElse",e),h(5),g("disabled",i.isLoading()),h(3),g("disabled",i.isLoading()||i.availableTags().length===0),h(),g("ngIf",i.isLoading()),h(),g("ngIf",!i.isLoading()),h(),oe(" ",i.isLoading()?"Saving...":"Save Changes"," ")}}var Cg=class t{memberService=S(Hi);toastrService=S(At);photo=un(null);isVisible=un(!1);modalClosed=Us();photoUpdated=Us();availableTags=qe([]);selectedTagNames=qe([]);isLoading=qe(!1);originalSelectedTags=[];ngOnInit(){this.loadAvailableTags()}ngOnChanges(){this.photo()&&this.initializeSelectedTags()}initializeSelectedTags(){let n=this.photo();if(n?.tags){let e=n.tags.map(i=>i.name);this.selectedTagNames.set([...e]),this.originalSelectedTags=[...e]}else this.selectedTagNames.set([]),this.originalSelectedTags=[]}loadAvailableTags(){this.memberService.getAllTags().subscribe({next:n=>{this.availableTags.set(n)},error:n=>{console.error("Failed to load tags",n),this.toastrService.error("Failed to load available tags")}})}toggleTagSelection(n){let e=this.selectedTagNames();if(e.indexOf(n)>-1){let r=e.filter(o=>o!==n);this.selectedTagNames.set(r)}else this.selectedTagNames.set([...e,n])}isTagSelected(n){return this.selectedTagNames().includes(n)}hasChanges(){let n=[...this.selectedTagNames()].sort(),e=[...this.originalSelectedTags].sort();return JSON.stringify(n)!==JSON.stringify(e)}closeModal(){this.resetModalState(),this.modalClosed.emit()}saveChanges(){let n=this.photo();if(!n){this.toastrService.error("No photo selected");return}if(!this.hasChanges()){this.closeModal();return}this.isLoading.set(!0),this.memberService.addTagToPhoto(n.id,this.selectedTagNames()).subscribe({next:()=>{this.toastrService.success("Tags updated successfully");let e=G(E({},n),{tags:this.selectedTagNames().map(i=>({name:i}))});this.photoUpdated.emit(e),this.closeModal()},error:e=>{console.error("Error updating tags:",e),this.toastrService.error("Failed to update tags")},complete:()=>{this.isLoading.set(!1)}})}resetModalState(){this.selectedTagNames.set([]),this.originalSelectedTags=[],this.isLoading.set(!1)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-tag-modal"]],inputs:{photo:[1,"photo"],isVisible:[1,"isVisible"]},outputs:{modalClosed:"modalClosed",photoUpdated:"photoUpdated"},features:[Se],decls:1,vars:1,consts:[["loadingTags",""],["class","photo-modal",3,"show","click",4,"ngIf"],[1,"photo-modal",3,"click"],[1,"modal-backdrop"],[1,"modal-dialog","modal-lg",3,"click"],[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],[1,"fas","fa-tags","me-2"],["type","button",1,"btn-close",3,"click"],[1,"modal-body"],["class","mb-4",4,"ngIf"],[4,"ngIf","ngIfElse"],[1,"modal-footer"],[1,"action-buttons","d-flex","gap-2"],["type","button",1,"btn","btn-outline-secondary",3,"click","disabled"],[1,"fas","fa-times","me-1"],["type","button",1,"btn","btn-primary",3,"click","disabled"],["class","spinner-border spinner-border-sm me-2",4,"ngIf"],["class","fas fa-save me-1",4,"ngIf"],[1,"mb-4"],[1,"text-center"],["alt","Selected photo",1,"modal-image",3,"src"],[1,"mb-3"],[1,"row"],["class","col-md-6 col-lg-4 mb-2",4,"ngFor","ngForOf"],[1,"selected-tags-container"],[1,"mb-2"],[1,"d-flex","flex-wrap","gap-1"],["class","badge bg-primary rounded-pill",4,"ngFor","ngForOf"],["class","text-muted fst-italic",4,"ngIf"],[1,"col-md-6","col-lg-4","mb-2"],[1,"form-check"],["type","checkbox",1,"form-check-input",3,"change","id","checked"],[1,"form-check-label",3,"for"],[1,"badge","bg-primary","rounded-pill"],[1,"text-muted","fst-italic"],[1,"text-center","p-4"],["role","status",1,"spinner-border","text-primary"],[1,"visually-hidden"],[1,"mt-2"],[1,"spinner-border","spinner-border-sm","me-2"],[1,"fas","fa-save","me-1"]],template:function(e,i){e&1&&T(0,g7,23,10,"div",1),e&2&&g("ngIf",i.isVisible())},dependencies:[Te,Ge],styles:['.photo-modal[_ngcontent-%COMP%]{position:fixed;inset:0;background:#1e1e1eb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1050;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.photo-modal.show[_ngcontent-%COMP%]{opacity:1;visibility:visible}.modal-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;background:transparent;z-index:1}.modal-dialog[_ngcontent-%COMP%]{max-width:600px;width:90%;margin:2rem auto;z-index:1060;position:relative}.modal-content[_ngcontent-%COMP%]{background:#282828eb;border-radius:14px;overflow:hidden;color:#fff;box-shadow:0 20px 40px #000000b3;transform:scale(.8) translateY(-50px);transition:all .3s cubic-bezier(.25,.46,.45,.94);border:1px solid rgba(255,255,255,.1)}.photo-modal.show[_ngcontent-%COMP%] .modal-content[_ngcontent-%COMP%]{transform:scale(1) translateY(0)}.modal-header[_ngcontent-%COMP%], .modal-footer[_ngcontent-%COMP%]{border:none;background:transparent;padding:1.5rem}.modal-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1)}.modal-title[_ngcontent-%COMP%]{margin:0;font-size:1.4rem;font-weight:600;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.btn-close[_ngcontent-%COMP%]{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;cursor:pointer;transition:all .2s ease;opacity:.8}.btn-close[_ngcontent-%COMP%]:hover{background:#fff3;opacity:1;transform:scale(1.1)}.btn-close[_ngcontent-%COMP%]:before{content:"\\d7";font-weight:700}.modal-body[_ngcontent-%COMP%]{padding:25px}.modal-image[_ngcontent-%COMP%]{border-radius:12px;object-fit:contain;max-width:200px;max-height:150px;box-shadow:0 8px 24px #0006;transition:transform .2s ease}.modal-image[_ngcontent-%COMP%]:hover{transform:scale(1.02)}.modal-footer[_ngcontent-%COMP%]{border-top:1px solid rgba(255,255,255,.1)}.badge[_ngcontent-%COMP%]{font-size:1rem;padding:.5em .9em;background:#0d6efdcc!important;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s ease;color:#fff!important}.badge[_ngcontent-%COMP%]:hover{background:#0d6efd!important;transform:translateY(-1px)}.form-check[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.form-check-label[_ngcontent-%COMP%]{color:#fff;font-weight:500;cursor:pointer;transition:color .2s ease}.form-check-label[_ngcontent-%COMP%]:hover{color:#e9ecef}.form-check-input[_ngcontent-%COMP%]:checked{background-color:#0d6efd;border-color:#0d6efd;box-shadow:0 0 0 .25rem #0d6efd40}.selected-tags-container[_ngcontent-%COMP%]{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1rem;margin-top:1rem}.selected-tags-container[_ngcontent-%COMP%] h6[_ngcontent-%COMP%]{color:#fff;margin-bottom:.75rem}.spinner-border[_ngcontent-%COMP%]{color:#0d6efd}.text-center[_ngcontent-%COMP%] .spinner-border[_ngcontent-%COMP%]{margin:0 auto}.action-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{min-width:100px;padding:.6rem 1.2rem;border-radius:8px;font-weight:500;border:none;transition:all .2s ease;position:relative;overflow:hidden}.action-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.btn-primary[_ngcontent-%COMP%]{background:linear-gradient(135deg,#0d6efd,#4c7eff)}.btn-primary[_ngcontent-%COMP%]:hover:not(:disabled){background:linear-gradient(135deg,#0b5ed7,#426bdc)}.btn-outline-secondary[_ngcontent-%COMP%]{background:#6c757d33;border:1px solid rgba(255,255,255,.3);color:#fff}.btn-outline-secondary[_ngcontent-%COMP%]:hover:not(:disabled){background:#6c757d66;border-color:#ffffff80;color:#fff}@media (max-width: 768px){.modal-dialog[_ngcontent-%COMP%]{margin:1rem;max-width:calc(100% - 2rem);width:calc(100% - 2rem)}.modal-body[_ngcontent-%COMP%]{padding:15px}.modal-header[_ngcontent-%COMP%], .modal-footer[_ngcontent-%COMP%]{padding:1rem}.modal-title[_ngcontent-%COMP%]{font-size:1.2rem}.action-buttons[_ngcontent-%COMP%]{flex-direction:column;gap:.5rem!important}.action-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%;min-width:auto}}@media (min-width: 769px){.modal-dialog[_ngcontent-%COMP%]{max-width:600px}}@keyframes _ngcontent-%COMP%_fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-body[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_fadeInUp .4s ease-out;animation-fill-mode:both}.modal-body[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:nth-child(1){animation-delay:.1s}.modal-body[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:nth-child(2){animation-delay:.2s}.modal-body[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:nth-child(3){animation-delay:.3s}']})};var _7=t=>({"border-primary bg-primary bg-opacity-10":t}),y7=t=>({"opacity-50":t}),v7=t=>({width:t});function b7(t,n){t&1&&(d(0,"div",40)(1,"span",41),I(2,"i",42),y(3," Awaiting Approval "),f()())}function C7(t,n){t&1&&(d(0,"div",43)(1,"span",44),I(2,"i",35),y(3," Main Photo "),f()())}function w7(t,n){if(t&1){let e=N();d(0,"span",45),y(1),d(2,"button",46),D("click",function(){let r=C(e).$implicit,o=m().$implicit,s=m();return w(s.removeTagFromPhoto(o,r.name))}),f()()}if(t&2){let e=n.$implicit;h(),oe(" ",e.name," ")}}function D7(t,n){t&1&&(d(0,"span",47),y(1," No tags added "),f())}function M7(t,n){if(t&1){let e=N();d(0,"div",19)(1,"div",20)(2,"div",21),I(3,"img",22),T(4,b7,4,0,"div",23)(5,C7,4,0,"div",24),f(),d(6,"div",25)(7,"div",26)(8,"h6",27),I(9,"i",28),y(10," Tags "),f(),d(11,"div",29),T(12,w7,3,1,"span",30)(13,D7,2,0,"span",31),f()(),d(14,"div",32)(15,"div",33)(16,"button",34),D("click",function(){let r=C(e).$implicit,o=m();return w(o.setMainPhoto(r))}),I(17,"i",35),y(18),f(),d(19,"button",36),D("click",function(){let r=C(e).$implicit,o=m();return w(o.openTagModal(r))}),I(20,"i",37),y(21," Edit Tags "),f()(),d(22,"button",38),D("click",function(){let r=C(e).$implicit,o=m();return w(o.deletePhoto(r))}),I(23,"i",39),f()()()()()}if(t&2){let e=n.$implicit;h(3),g("ngClass",Mr(10,y7,!e.isApproved))("src",e.url,Xe),h(),g("ngIf",!e.isApproved),h(),g("ngIf",e.isMain),h(7),g("ngForOf",e.tags),h(),g("ngIf",!e.tags||e.tags.length===0),h(3),g("disabled",e.isMain)("ngClass",e.isMain?"btn-success":"btn-outline-success"),h(2),oe(" ",e.isMain?"Main":"Set Main"," "),h(4),g("disabled",e.isMain)}}function S7(t,n){if(t&1&&(d(0,"small",16),y(1),se(2,"number"),f()),t&2){let e=m().$implicit;h(),oe(" ",yl(2,1,(e==null||e.file==null?null:e.file.size)/1024/1024,"1.2-2")," MB ")}}function T7(t,n){if(t&1&&(d(0,"div",63)(1,"div",64),I(2,"i",65),d(3,"div")(4,"div",66),y(5),f(),T(6,S7,3,4,"small",67),f()()()),t&2){let e=n.$implicit,i=m(2);h(5),H(e==null||e.file==null?null:e.file.name),h(),g("ngIf",i.uploader==null||i.uploader.options==null?null:i.uploader.options.isHTML5)}}function E7(t,n){if(t&1){let e=N();d(0,"div",48)(1,"h5",49),I(2,"i",50),y(3),f(),d(4,"div",51),T(5,T7,7,2,"div",52),f(),d(6,"div",49)(7,"div",53)(8,"small",16),y(9,"Upload Progress"),f(),d(10,"small",16),y(11),f()(),d(12,"div",54),I(13,"div",55),f()(),d(14,"div",56)(15,"button",57),D("click",function(){C(e);let r=m();return w(r.uploader==null?null:r.uploader.uploadAll())}),I(16,"i",58),y(17," Upload All "),f(),d(18,"button",59),D("click",function(){C(e);let r=m();return w(r.uploader==null?null:r.uploader.cancelAll())}),I(19,"i",60),y(20," Cancel All "),f(),d(21,"button",61),D("click",function(){C(e);let r=m();return w(r.uploader==null?null:r.uploader.clearQueue())}),I(22,"i",62),y(23," Clear Queue "),f()()()}if(t&2){let e,i=m();h(3),oe(" Upload Queue (",i.uploader==null||i.uploader.queue==null?null:i.uploader.queue.length," files) "),h(2),g("ngForOf",i.uploader==null?null:i.uploader.queue),h(6),oe("",i.uploader==null?null:i.uploader.progress,"%"),h(2),g("ngStyle",Mr(7,v7,(i.uploader==null?null:i.uploader.progress)+"%")),h(2),g("disabled",!(!(i.uploader==null||(e=i.uploader.getNotUploadedItems())==null)&&e.length)),h(3),g("disabled",!(i.uploader!=null&&i.uploader.isUploading)),h(3),g("disabled",!(!(i.uploader==null||i.uploader.queue==null)&&i.uploader.queue.length))}}var wg=class t{memberService=S(Hi);accountService=S(lt);toastService=S(At);member=un.required();userPhotos=[];uploader;hasBaseDropZoneOver=!1;baseUrl=Kt.apiUrl;memberChange=Us();showTagModal=!1;selectedPhoto=null;ngOnInit(){this.member().photoUrl||(this.member().photoUrl="https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain"),this.initializeUploader(),this.getUserPhotos()}fileOverBase(n){this.hasBaseDropZoneOver=n}deletePhoto(n){confirm("Are you sure you want to delete this photo?")&&this.memberService.deletePhoto(n).subscribe({next:e=>{this.userPhotos=this.userPhotos.filter(r=>r.id!==n.id);let i=E({},this.member());if(i.photos=i.photos.filter(r=>r.id!==n.id),n.isMain&&i.photos.length>0){i.photos[0].isMain=!0,i.photoUrl=i.photos[0].url;let r=this.accountService.currentUser();r&&(r.photoUrl=i.photos[0].url,this.accountService.setCurrentUser(r))}else if(n.isMain&&i.photos.length===0){i.photoUrl="https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain";let r=this.accountService.currentUser();r&&(r.photoUrl=i.photoUrl,this.accountService.setCurrentUser(r))}this.memberChange.emit(i),this.toastService.success("Photo deleted successfully")},error:e=>{console.error("Error deleting photo:",e),this.toastService.error("Failed to delete photo")}})}getUserPhotos(){this.memberService.getPhotosWithTags().subscribe({next:n=>{this.userPhotos=n},error:n=>{console.error("Error loading photos:",n),this.toastService.error("Failed to load photos")}})}setMainPhoto(n){this.memberService.setMainPhoto(n).subscribe({next:e=>{let i=this.accountService.currentUser();i&&(i.photoUrl=n.url,this.accountService.setCurrentUser(i));let r=E({},this.member());r.photoUrl=n.url,r.photos.forEach(o=>{o.isMain=o.id===n.id}),this.userPhotos.forEach(o=>{o.isMain=o.id===n.id}),this.memberChange.emit(r),this.toastService.success("Main photo updated successfully")},error:e=>{console.error("Error setting main photo:",e),this.toastService.error("Failed to set main photo")}})}initializeUploader(){this.uploader=new bg({url:this.baseUrl+"users/add-photo",authToken:"Bearer "+this.accountService.currentUser()?.token,isHTML5:!0,allowedFileType:["image"],removeAfterUpload:!0,autoUpload:!1,maxFileSize:1*1024*1024}),this.uploader.onAfterAddingFile=n=>{n.withCredentials=!1},this.uploader.onSuccessItem=(n,e,i,r)=>{let o=JSON.parse(e);this.userPhotos.push(o);let s=E({},this.member());if(s.photos.push(o),o.isMain){let a=this.accountService.currentUser();a&&(a.photoUrl=o.url,this.accountService.setCurrentUser(a)),s.photoUrl=o.url,s.photos.forEach(l=>{l.isMain=l.id===o.id}),this.userPhotos.forEach(l=>{l.isMain=l.id===o.id})}this.memberChange.emit(s),this.toastService.success("Photo uploaded successfully")},this.uploader.onErrorItem=(n,e,i,r)=>{console.error("Upload error:",e),this.toastService.error("Failed to upload photo")}}trackPhoto(n,e){return e.id}openTagModal(n){this.selectedPhoto=n,this.showTagModal=!0}closeTagModal(){this.showTagModal=!1,this.selectedPhoto=null}removeTagFromPhoto(n,e){if(confirm(`Are you sure you want to remove the tag "${e}" from this photo?`)){let i=n.tags?.filter(r=>r.name!==e).map(r=>r.name)||[];this.memberService.addTagToPhoto(n.id,i).subscribe({next:()=>{this.toastService.success("Tag removed successfully");let r=this.userPhotos.findIndex(o=>o.id===n.id);r>-1&&(this.userPhotos[r].tags=i.map(o=>({name:o})))},error:r=>{console.error("Error removing tag:",r),this.toastService.error("Failed to remove tag")}})}}onPhotoUpdated(n){let e=this.userPhotos.findIndex(r=>r.id===n.id);e>-1&&(this.userPhotos[e]=n);let i=this.member().photos.findIndex(r=>r.id===n.id);if(i>-1){let r=E({},this.member());r.photos[i]=n,this.memberChange.emit(r)}}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-photo-editor"]],inputs:{member:[1,"member"]},outputs:{memberChange:"memberChange"},decls:23,vars:9,consts:[[1,"container-fluid"],[1,"row","g-4","mt-1"],["class","col-xl-4 col-lg-6 col-md-6 mb-4",4,"ngFor","ngForOf","ngForTrackBy"],[1,"row","mt-5"],[1,"col-12"],[1,"card","shadow-sm"],[1,"card-header","bg-primary","text-white"],[1,"mb-0"],[1,"fas","fa-cloud-upload-alt","me-2"],[1,"card-body"],[1,"row"],[1,"col-md-4"],["ng2FileDrop","",1,"drop-zone","border","border-2","border-dashed","rounded-3","p-4","text-center",3,"fileOver","ngClass","uploader"],[1,"fas","fa-cloud-upload-alt","fa-3x","text-primary","mb-3"],[1,"text-primary"],[1,"text-muted","mb-0"],[1,"text-muted"],["class","col-md-8",4,"ngIf"],[3,"modalClosed","photoUpdated","photo","isVisible"],[1,"col-xl-4","col-lg-6","col-md-6","mb-4"],[1,"card","shadow-sm","h-100","photo-card"],[1,"position-relative"],["alt","User photo",1,"card-img-top","photo-img",2,"height","250px","object-fit","cover",3,"ngClass","src"],["class","position-absolute top-0 end-0 m-2",4,"ngIf"],["class","position-absolute top-0 start-0 m-2",4,"ngIf"],[1,"card-body","d-flex","flex-column"],[1,"mb-3","flex-grow-1"],[1,"text-muted","mb-2"],[1,"fas","fa-tags","me-1"],[1,"d-flex","flex-wrap","gap-1"],["class","badge bg-primary rounded-pill",4,"ngFor","ngForOf"],["class","text-muted fst-italic small",4,"ngIf"],[1,"d-flex","gap-2","justify-content-between","align-items-center"],[1,"d-flex","gap-2"],[1,"btn","btn-sm",3,"click","disabled","ngClass"],[1,"fas","fa-star","me-1"],[1,"btn","btn-outline-primary","btn-sm",3,"click"],[1,"fas","fa-edit","me-1"],["title","Delete photo",1,"btn","btn-outline-danger","btn-sm",3,"click","disabled"],[1,"fas","fa-trash"],[1,"position-absolute","top-0","end-0","m-2"],[1,"badge","bg-warning","text-dark"],[1,"fas","fa-clock","me-1"],[1,"position-absolute","top-0","start-0","m-2"],[1,"badge","bg-success"],[1,"badge","bg-primary","rounded-pill"],["type","button","title","Remove tag",1,"btn-close","btn-close-white","ms-1",2,"font-size","0.7em",3,"click"],[1,"text-muted","fst-italic","small"],[1,"col-md-8"],[1,"mb-3"],[1,"fas","fa-list","me-2"],[1,"upload-queue","mb-3",2,"max-height","200px","overflow-y","auto"],["class","d-flex align-items-center justify-content-between p-2 border rounded mb-2",4,"ngFor","ngForOf"],[1,"d-flex","justify-content-between","align-items-center","mb-1"],[1,"progress"],["role","progressbar",1,"progress-bar","bg-success",3,"ngStyle"],[1,"d-flex","gap-2","flex-wrap"],["type","button",1,"btn","btn-success",3,"click","disabled"],[1,"fas","fa-upload","me-1"],["type","button",1,"btn","btn-warning",3,"click","disabled"],[1,"fas","fa-ban","me-1"],["type","button",1,"btn","btn-outline-danger",3,"click","disabled"],[1,"fas","fa-trash","me-1"],[1,"d-flex","align-items-center","justify-content-between","p-2","border","rounded","mb-2"],[1,"d-flex","align-items-center"],[1,"fas","fa-file-image","text-primary","me-2"],[1,"fw-bold"],["class","text-muted",4,"ngIf"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"div",1),T(2,M7,24,12,"div",2),f(),d(3,"div",3)(4,"div",4)(5,"div",5)(6,"div",6)(7,"h4",7),I(8,"i",8),y(9," Add New Photos "),f()(),d(10,"div",9)(11,"div",10)(12,"div",11)(13,"div",12),D("fileOver",function(o){return i.fileOverBase(o)}),I(14,"i",13),d(15,"h5",14),y(16,"Drop Photos Here"),f(),d(17,"p",15),y(18,"or click to browse"),f(),d(19,"small",16),y(20,"Max size: 1MB"),f()()(),T(21,E7,24,9,"div",17),f()()()()()(),d(22,"app-tag-modal",18),D("modalClosed",function(){return i.closeTagModal()})("photoUpdated",function(o){return i.onPhotoUpdated(o)}),f()),e&2&&(h(2),g("ngForOf",i.userPhotos)("ngForTrackBy",i.trackPhoto),h(11),g("ngClass",Mr(7,_7,i.hasBaseDropZoneOver))("uploader",i.uploader),h(8),g("ngIf",i.uploader==null||i.uploader.queue==null?null:i.uploader.queue.length),h(),g("photo",i.selectedPhoto)("isVisible",i.showTagModal))},dependencies:[Te,Ge,$0,fn,oP,rP,Y0,Cg],styles:[".nv-file-over[_ngcontent-%COMP%]{border:dotted 3px red}.photo-card[_ngcontent-%COMP%]{transition:transform .2s ease-in-out,box-shadow .2s ease-in-out;border:none;border-radius:15px;overflow:hidden}.photo-card[_ngcontent-%COMP%]:hover{transform:translateY(-5px);box-shadow:0 8px 25px #00000026!important}.photo-img[_ngcontent-%COMP%]{transition:filter .3s ease;border-radius:15px 15px 0 0}.photo-card[_ngcontent-%COMP%]:hover .photo-img[_ngcontent-%COMP%]{filter:brightness(1.05)}.drop-zone[_ngcontent-%COMP%]{min-height:200px;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;transition:all .3s ease;background:linear-gradient(135deg,#f8f9fa,#e9ecef)}.drop-zone[_ngcontent-%COMP%]:hover{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-color:#2196f3!important}.drop-zone.border-primary[_ngcontent-%COMP%]{background:linear-gradient(135deg,#e3f2fd,#bbdefb);transform:scale(1.02)}.upload-queue[_ngcontent-%COMP%]{background:#f8f9fa;border-radius:10px;padding:15px}.badge[_ngcontent-%COMP%]{font-size:.75em;padding:.5em .75em}.badge[_ngcontent-%COMP%] .btn-close[_ngcontent-%COMP%]{margin-left:.25rem;padding:0;font-size:.6em}.btn[_ngcontent-%COMP%]{border-radius:8px;font-weight:500;transition:all .2s ease}.btn[_ngcontent-%COMP%]:hover{transform:translateY(-1px)}.btn-sm[_ngcontent-%COMP%]{padding:.4rem .8rem;font-size:.85rem}.form-check[_ngcontent-%COMP%]{padding:.75rem;margin:0;border-radius:8px;transition:background-color .2s ease}.form-check[_ngcontent-%COMP%]:hover{background-color:#f8f9fa}.form-check-input[_ngcontent-%COMP%]:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-label[_ngcontent-%COMP%]{cursor:pointer;font-weight:500}.progress[_ngcontent-%COMP%]{height:8px;border-radius:10px;background-color:#e9ecef;overflow:hidden}.progress-bar[_ngcontent-%COMP%]{border-radius:10px;transition:width .3s ease}.card-header[_ngcontent-%COMP%]{border-radius:15px 15px 0 0!important;border-bottom:none;padding:20px 25px}.card-body[_ngcontent-%COMP%]{padding:25px}.spinner-border[_ngcontent-%COMP%]{width:3rem;height:3rem}.upload-queue[_ngcontent-%COMP%]::-webkit-scrollbar{width:6px}.upload-queue[_ngcontent-%COMP%]::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.upload-queue[_ngcontent-%COMP%]::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:10px}.upload-queue[_ngcontent-%COMP%]::-webkit-scrollbar-thumb:hover{background:#a8a8a8}@media (max-width: 768px){.photo-card[_ngcontent-%COMP%]{margin-bottom:1rem}.modal-dialog[_ngcontent-%COMP%]{margin:1rem}.card-body[_ngcontent-%COMP%], .modal-body[_ngcontent-%COMP%]{padding:15px}}.modal-backdrop[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_fadeIn .3s ease}@keyframes _ngcontent-%COMP%_fadeIn{0%{opacity:0}to{opacity:.5}}.bg-light[_ngcontent-%COMP%]{background:linear-gradient(135deg,#f8f9fa,#e9ecef)!important;border:1px solid #dee2e6}.alert[_ngcontent-%COMP%]{border-radius:10px;border:none}.text-center[_ngcontent-%COMP%] .spinner-border[_ngcontent-%COMP%]{color:#0d6efd}.custom-modal-backdrop[_ngcontent-%COMP%]{position:fixed;inset:0;background:#000000e6;z-index:1050;display:flex;align-items:center;justify-content:center}"]})};var x7=["editForm"];function I7(t,n){t&1&&(d(0,"div",4)(1,"p")(2,"strong"),y(3,"Information: "),f(),y(4," You have made changes. Any unsaved changes will be lost "),f()())}function k7(t,n){if(t&1){let e=N();d(0,"div",1)(1,"div",2)(2,"h1"),y(3,"Your profile"),f()(),d(4,"div",3),T(5,I7,5,0,"div",4),f(),d(6,"div",2)(7,"div",5),I(8,"img",6),d(9,"div",7)(10,"div")(11,"strong"),y(12,"Location:"),f(),d(13,"p"),y(14),f()(),d(15,"div")(16,"strong"),y(17,"Age:"),f(),d(18,"p"),y(19),f()(),d(20,"div")(21,"strong"),y(22,"Last Active:"),f(),d(23,"p"),y(24),se(25,"timeago"),f()(),d(26,"div")(27,"strong"),y(28,"Member since:"),f(),d(29,"p"),y(30),se(31,"date"),f()(),d(32,"div",8)(33,"button",9),y(34,"Save changes "),f()()()()(),d(35,"div",3)(36,"tabset",10)(37,"tab",11)(38,"form",12,0),D("ngSubmit",function(){C(e);let r=m();return w(r.updateMember())}),d(40,"h4",13),y(41,"Description"),f(),d(42,"textarea",14),Re("ngModelChange",function(r){C(e);let o=m();return Le(o.member.introduction,r)||(o.member.introduction=r),w(r)}),y(43," "),f(),d(44,"h4",13),y(45,"Looking for"),f(),d(46,"textarea",15),Re("ngModelChange",function(r){C(e);let o=m();return Le(o.member.lookingFor,r)||(o.member.lookingFor=r),w(r)}),y(47," "),f(),d(48,"h4",13),y(49,"Interests"),f(),d(50,"textarea",16),Re("ngModelChange",function(r){C(e);let o=m();return Le(o.member.interests,r)||(o.member.interests=r),w(r)}),y(51," "),f(),d(52,"h4",13),y(53,"Location details"),f(),d(54,"div",17)(55,"label"),y(56,"City: "),f(),d(57,"input",18),Re("ngModelChange",function(r){C(e);let o=m();return Le(o.member.city,r)||(o.member.city=r),w(r)}),f(),d(58,"label"),y(59,"Country: "),f(),d(60,"input",19),Re("ngModelChange",function(r){C(e);let o=m();return Le(o.member.country,r)||(o.member.country=r),w(r)}),f()()()(),d(61,"tab",20)(62,"app-photo-editor",21),D("memberChange",function(r){C(e);let o=m();return w(o.onMemberChange(r))}),f()()()()()}if(t&2){let e=Et(39),i=m();h(5),je(e.dirty?5:-1),h(3),Vt("src",i.member.photoUrl,Xe),Vt("alt",i.member.knownAs),h(6),Dr("",i.member.city,", ",i.member.country,""),h(5),H(i.member.age),h(5),oe("",ye(25,17,i.member.lastActive)," "),h(6),H(yl(31,19,i.member.created,"dd MMM, yyyy")),h(3),g("disabled",!e.dirty),h(4),jo("heading","About ",i.member.knownAs,""),h(5),Oe("ngModel",i.member.introduction),h(4),Oe("ngModel",i.member.lookingFor),h(4),Oe("ngModel",i.member.interests),h(7),Oe("ngModel",i.member.city),h(3),Oe("ngModel",i.member.country),h(2),g("member",i.member)}}var Dg=class t{editForm;notify(n){this.editForm?.dirty&&(n.returnValue=!0)}member;accountService=S(lt);memberService=S(Hi);toastr=S(At);ngOnInit(){this.loadMember()}loadMember(){let n=this.accountService.currentUser();n&&this.memberService.getMember(n.username).subscribe(e=>{this.member=e})}updateMember(){this.memberService.updateMember(this.editForm?.value).subscribe({next:()=>{this.toastr.success("Profile updated successfully!"),this.editForm?.reset(this.member)}}),this.toastr.success("Profile updated successfully!"),this.editForm?.reset(this.member)}onMemberChange(n){this.member=n}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-edit"]],viewQuery:function(e,i){if(e&1&&jt(x7,5),e&2){let r;et(r=tt())&&(i.editForm=r.first)}},hostBindings:function(e,i){e&1&&D("beforeunload",function(o){return i.notify(o)},!1,lu)},decls:1,vars:1,consts:[["editForm","ngForm"],[1,"row"],[1,"col-4"],[1,"col-8"],[1,"alert","pb-1","alert-info"],[1,"card"],[1,"card-img","img-thumbnail",3,"src","alt"],[1,"card-body"],[1,"card-footer"],["form","editForm","type","submit",1,"btn","btn-success","col-12",3,"disabled"],[1,"member-tabset"],[3,"heading"],["id","editForm",3,"ngSubmit"],[1,"mt-2",2,"color","black"],["name","introduction","rows","6",1,"form-control",3,"ngModelChange","ngModel"],["name","lookingFor","rows","6",1,"form-control",3,"ngModelChange","ngModel"],["name","interests","rows","6",1,"form-control",3,"ngModelChange","ngModel"],[1,"d-flex","align-items-center"],["type","text","name","city",1,"form-control","mx-2",3,"ngModelChange","ngModel"],["type","text","name","country",1,"form-control","mx-2",3,"ngModelChange","ngModel"],["heading","Edit photos"],[3,"memberChange","member"]],template:function(e,i){e&1&&T(0,k7,63,22,"div",1),e&2&&je(i.member?0:-1)},dependencies:[_c,gc,wa,Dn,Ii,Bt,kt,xi,pn,ir,wg,yu,Br,cs],styles:[".img-thumbnail[_ngcontent-%COMP%]{margin:25px;width:85%;height:85%}.card-body[_ngcontent-%COMP%]{padding:0 25px}.card-footer[_ngcontent-%COMP%]{padding:10px 15px;border-top:none}"]})};function sP(t){return t!=null&&`${t}`!="false"}var Aw;try{Aw=typeof Intl<"u"&&Intl.v8BreakIterator}catch{Aw=!1}var lP=(()=>{class t{constructor(e){this._platformId=e,this.isBrowser=this._platformId?Ws(this._platformId):typeof document=="object"&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!!(window.chrome||Aw)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}static{this.\u0275fac=function(i){return new(i||t)(j(ti))}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var cP=(()=>{class t{constructor(e){this._platform=e}isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return P7(e)&&getComputedStyle(e).visibility==="visible"}isTabbable(e){if(!this._platform.isBrowser)return!1;let i=A7(H7(e));if(i&&(aP(i)===-1||!this.isVisible(i)))return!1;let r=e.nodeName.toLowerCase(),o=aP(e);return e.hasAttribute("contenteditable")?o!==-1:r==="iframe"||r==="object"||this._platform.WEBKIT&&this._platform.IOS&&!V7(e)?!1:r==="audio"?e.hasAttribute("controls")?o!==-1:!1:r==="video"?o===-1?!1:o!==null?!0:this._platform.FIREFOX||e.hasAttribute("controls"):e.tabIndex>=0}isFocusable(e,i){return j7(e)&&!this.isDisabled(e)&&(i?.ignoreVisibility||this.isVisible(e))}static{this.\u0275fac=function(i){return new(i||t)(j(lP))}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function A7(t){try{return t.frameElement}catch{return null}}function P7(t){return!!(t.offsetWidth||t.offsetHeight||typeof t.getClientRects=="function"&&t.getClientRects().length)}function O7(t){let n=t.nodeName.toLowerCase();return n==="input"||n==="select"||n==="button"||n==="textarea"}function R7(t){return L7(t)&&t.type=="hidden"}function N7(t){return F7(t)&&t.hasAttribute("href")}function L7(t){return t.nodeName.toLowerCase()=="input"}function F7(t){return t.nodeName.toLowerCase()=="a"}function uP(t){if(!t.hasAttribute("tabindex")||t.tabIndex===void 0)return!1;let n=t.getAttribute("tabindex");return n=="-32768"?!1:!!(n&&!isNaN(parseInt(n,10)))}function aP(t){if(!uP(t))return null;let n=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(n)?-1:n}function V7(t){let n=t.nodeName.toLowerCase(),e=n==="input"&&t.type;return e==="text"||e==="password"||n==="select"||n==="textarea"}function j7(t){return R7(t)?!1:O7(t)||N7(t)||t.hasAttribute("contenteditable")||uP(t)}function H7(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}var B7=(()=>{class t{constructor(){this._focusTrapStack=[]}register(e){this._focusTrapStack=this._focusTrapStack.filter(r=>r!==e);let i=this._focusTrapStack;i.length&&i[i.length-1]._disable(),i.push(e),e._enable()}deregister(e){e._disable();let i=this._focusTrapStack,r=i.indexOf(e);r!==-1&&(i.splice(r,1),i.length&&i[i.length-1]._enable())}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Pw=class{get enabled(){return this._enabled}set enabled(n){this._enabled=n,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(n,this._startAnchor),this._toggleAnchorTabIndex(n,this._endAnchor))}constructor(n,e,i,r,o=!1){this._element=n,this._checker=e,this._ngZone=i,this._document=r,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,o||this.attachAnchors()}destroy(){let n=this._startAnchor,e=this._endAnchor;n&&(n.removeEventListener("focus",this.startAnchorListener),n.parentNode&&n.parentNode.removeChild(n)),e&&(e.removeEventListener("focus",this.endAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return this._hasAttached?!0:(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(){return new Promise(n=>{this._executeOnStable(()=>n(this.focusInitialElement()))})}focusFirstTabbableElementWhenReady(){return new Promise(n=>{this._executeOnStable(()=>n(this.focusFirstTabbableElement()))})}focusLastTabbableElementWhenReady(){return new Promise(n=>{this._executeOnStable(()=>n(this.focusLastTabbableElement()))})}_getRegionBoundary(n){let e=this._element.querySelectorAll(`[cdk-focus-region-${n}], [cdkFocusRegion${n}], [cdk-focus-${n}]`);for(let i=0;i=0;i--){let r=e[i].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[i]):null;if(r)return r}return null}_createAnchor(){let n=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,n),n.classList.add("cdk-visually-hidden"),n.classList.add("cdk-focus-trap-anchor"),n.setAttribute("aria-hidden","true"),n}_toggleAnchorTabIndex(n,e){n?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(n){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(n,this._startAnchor),this._toggleAnchorTabIndex(n,this._endAnchor))}_executeOnStable(n){this._ngZone.isStable?n():this._ngZone.onStable.pipe(Mt(1)).subscribe(n)}},U7=(()=>{class t{constructor(e,i,r){this._checker=e,this._ngZone=i,this._document=r}create(e,i=!1){return new Pw(e,this._checker,this._ngZone,this._document,i)}static{this.\u0275fac=function(i){return new(i||t)(j(cP),j(xe),j(Pe))}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),dP=(()=>{class t{get enabled(){return this.focusTrap.enabled}set enabled(e){this.focusTrap.enabled=sP(e)}get autoCapture(){return this._autoCapture}set autoCapture(e){this._autoCapture=sP(e)}constructor(e,i,r){this._elementRef=e,this._focusTrapFactory=i,this._previouslyFocusedElement=null,this._autoCapture=!1,this._document=r,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}ngOnDestroy(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}ngAfterContentInit(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}ngDoCheck(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}ngOnChanges(e){let i=e.autoCapture;i&&!i.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}_captureFocus(){this._previouslyFocusedElement=this._document.activeElement,this.focusTrap.focusInitialElementWhenReady()}static{this.\u0275fac=function(i){return new(i||t)(b(Y),b(U7),b(Pe))}}static{this.\u0275dir=U({type:t,selectors:[["","focusTrap",""]],inputs:{enabled:[0,"cdkTrapFocus","enabled"],autoCapture:[0,"cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["focusTrap"],features:[pe([B7,lP,cP]),Se]})}}return t})(),fP=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({imports:[He]})}}return t})();var $7=["*"],us=(()=>{class t{constructor(){this.hide=()=>{},this.setClass=()=>{}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})();var hP=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),Mg={backdrop:!0,keyboard:!0,focus:!0,show:!1,ignoreBackdropClick:!1,class:"",animated:!0,initialState:{},closeInterceptor:void 0},z7=new $("override-default-config"),$r={SCROLLBAR_MEASURER:"modal-scrollbar-measure",BACKDROP:"modal-backdrop",OPEN:"modal-open",FADE:"fade",IN:"in",SHOW:"show"};var Sg={MODAL:300,BACKDROP:150},Ow={BACKRDOP:"backdrop-click",ESC:"esc",BACK:"browser-back-navigation-clicked"},Y7=(()=>{class t{get isAnimated(){return this._isAnimated}set isAnimated(e){this._isAnimated=e}get isShown(){return this._isShown}set isShown(e){this._isShown=e,e?this.renderer.addClass(this.element.nativeElement,`${$r.SHOW}`):this.renderer.removeClass(this.element.nativeElement,`${$r.SHOW}`)}constructor(e,i){this._isAnimated=!1,this._isShown=!1,this.element=e,this.renderer=i}ngOnInit(){this.isAnimated&&(this.renderer.addClass(this.element.nativeElement,`${$r.FADE}`),Rm.reflow(this.element.nativeElement)),this.isShown=!0}static{this.\u0275fac=function(i){return new(i||t)(b(Y),b(Ae))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-modal-backdrop"]],hostAttrs:[1,"modal-backdrop"],decls:0,vars:0,template:function(i,r){},encapsulation:2})}}return t})(),W7=1,Ma=(()=>{class t{constructor(e,i,r){this.clf=i,this.modalDefaultOption=r,this.onShow=new O,this.onShown=new O,this.onHide=new O,this.onHidden=new O,this.isBodyOverflowing=!1,this.originalBodyPadding=0,this.scrollbarWidth=0,this.modalsCount=0,this.lastHiddenId=null,this.loaders=[],this._focusEl=null,this._backdropLoader=this.clf.createLoader(),this._renderer=e.createRenderer(null,null),this.config=r?Object.assign({},Mg,r):Mg}show(e,i){this._focusEl=Yt.activeElement,this.modalsCount++,this.lastHiddenId=null,this._createLoaders();let r=i?.id||W7++;return this.config=this.modalDefaultOption?Object.assign({},Mg,this.modalDefaultOption,i):Object.assign({},Mg,i),this.config.id=r,this._showBackdrop(),this.lastDismissReason=void 0,this._showModal(e)}hide(e){this.lastHiddenId!==e&&(this.lastHiddenId=e,(this.modalsCount===1||e==null)&&(this._hideBackdrop(),this.resetScrollbar()),this.modalsCount=this.modalsCount>=1&&e!=null?this.modalsCount-1:0,setTimeout(()=>{this._hideModal(e),this.removeLoaders(e)},this.config.animated?Sg.BACKDROP:0),this._focusEl&&this._focusEl.focus())}_showBackdrop(){let e=this.config.backdrop===!0||this.config.backdrop==="static",i=!this.backdropRef||!this.backdropRef.instance.isShown;this.modalsCount===1&&(this.removeBackdrop(),e&&i&&(this._backdropLoader.attach(Y7).to("body").show({isAnimated:this.config.animated}),this.backdropRef=this._backdropLoader._componentRef))}_hideBackdrop(){if(!this.backdropRef)return;this.backdropRef.instance.isShown=!1;let e=this.config.animated?Sg.BACKDROP:0;setTimeout(()=>this.removeBackdrop(),e)}_showModal(e){let i=this.loaders[this.loaders.length-1];if(this.config&&this.config.providers)for(let s of this.config.providers)i.provide(s);let r=new us,o=i.provide({provide:hP,useValue:this.config}).provide({provide:us,useValue:r}).attach(G7).to("body");return r.hide=()=>o.instance?.hide(),r.setClass=s=>{o.instance&&(o.instance.config.class=s)},r.onHidden=new O,r.onHide=new O,this.copyEvent(i.onBeforeHide,r.onHide),this.copyEvent(i.onHidden,r.onHidden),o.show({content:e,isAnimated:this.config.animated,initialState:this.config.initialState,bsModalService:this,id:this.config.id}),o.instance&&(o.instance.level=this.getModalsCount(),r.content=i.getInnerComponent(),r.id=o.instance.config?.id),r}_hideModal(e){if(e!=null){let i=this.loaders.findIndex(o=>o.instance?.config.id===e),r=this.loaders[i];r&&r.hide(e)}else this.loaders.forEach(i=>{i.instance&&i.hide(i.instance.config.id)})}getModalsCount(){return this.modalsCount}setDismissReason(e){this.lastDismissReason=e}removeBackdrop(){this._renderer.removeClass(Yt.body,$r.OPEN),this._renderer.setStyle(Yt.body,"overflow-y",""),this._backdropLoader.hide(),this.backdropRef=void 0}checkScrollbar(){this.isBodyOverflowing=Yt.body.clientWidthr.instance?.config.id===e);i>=0&&(this.loaders.splice(i,1),this.loaders.forEach((r,o)=>{r.instance&&(r.instance.level=o+1)}))}else this.loaders.splice(0,this.loaders.length)}copyEvent(e,i){e.subscribe(r=>{i.emit(this.lastDismissReason||r)})}static{this.\u0275fac=function(i){return new(i||t)(j(jn),j(tn),j(z7,8))}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),G7=(()=>{class t{constructor(e,i,r){this._element=i,this._renderer=r,this.isShown=!1,this.isAnimated=!1,this._focusEl=null,this.isModalHiding=!1,this.clickStartedInContent=!1,this.config=Object.assign({},e)}ngOnInit(){this._focusEl=Yt.activeElement,this.isAnimated&&this._renderer.addClass(this._element.nativeElement,$r.FADE),this._renderer.setStyle(this._element.nativeElement,"display","block"),setTimeout(()=>{this.isShown=!0,this._renderer.addClass(this._element.nativeElement,$r.SHOW)},this.isAnimated?Sg.BACKDROP:0),Yt&&Yt.body&&(this.bsModalService&&this.bsModalService.getModalsCount()===1&&(this.bsModalService.checkScrollbar(),this.bsModalService.setScrollbar()),this._renderer.addClass(Yt.body,$r.OPEN),this._renderer.setStyle(Yt.body,"overflow-y","hidden")),this._element.nativeElement&&this._element.nativeElement.focus()}onClickStarted(e){this.clickStartedInContent=e.target!==this._element.nativeElement}onClickStop(e){let i=e.target===this._element.nativeElement&&!this.clickStartedInContent;if(this.config.ignoreBackdropClick||this.config.backdrop==="static"||!i){this.clickStartedInContent=!1;return}this.bsModalService?.setDismissReason(Ow.BACKRDOP),this.hide()}onPopState(){this.bsModalService?.setDismissReason(Ow.BACK),this.hide()}onEsc(e){this.isShown&&((e.keyCode===27||e.key==="Escape")&&e.preventDefault(),this.config.keyboard&&this.level===this.bsModalService?.getModalsCount()&&(this.bsModalService?.setDismissReason(Ow.ESC),this.hide()))}ngOnDestroy(){this.isShown&&this._hide()}hide(){if(!this.isModalHiding){if(this.config.closeInterceptor){this.config.closeInterceptor().then(()=>this._hide(),()=>{});return}this._hide()}}_hide(){this.isModalHiding=!0,this._renderer.removeClass(this._element.nativeElement,$r.SHOW),setTimeout(()=>{this.isShown=!1,this.bsModalService?.hide(this.config.id),Yt&&Yt.body&&this.bsModalService?.getModalsCount()===0&&(this._renderer.removeClass(Yt.body,$r.OPEN),this._renderer.setStyle(Yt.body,"overflow-y","")),this.bsModalService?.hide(this.config.id),this.isModalHiding=!1,this._focusEl&&this._focusEl.focus()},this.isAnimated?Sg.MODAL:0)}static{this.\u0275fac=function(i){return new(i||t)(b(hP),b(Y),b(Ae))}}static{this.\u0275cmp=L({type:t,selectors:[["modal-container"]],hostAttrs:["role","dialog","tabindex","-1",1,"modal"],hostVars:3,hostBindings:function(i,r){i&1&&D("mousedown",function(s){return r.onClickStarted(s)})("click",function(s){return r.onClickStop(s)})("popstate",function(){return r.onPopState()},!1,lu)("keydown.esc",function(s){return r.onEsc(s)},!1,lu),i&2&&ee("aria-modal",!0)("aria-labelledby",r.config.ariaLabelledBy)("aria-describedby",r.config.ariaDescribedby)},features:[pe([Ma])],ngContentSelectors:$7,decls:3,vars:2,consts:[["role","document","focusTrap",""],[1,"modal-content"]],template:function(i,r){i&1&&(An(),d(0,"div",0)(1,"div",1),Cn(2),f()()),i&2&&sn("modal-dialog"+(r.config.class?" "+r.config.class:""))},dependencies:[dP],encapsulation:2})}}return t})();var pP=(()=>{class t{static forRoot(){return{ngModule:t,providers:[Ma,tn,cn]}}static forChild(){return{ngModule:t,providers:[Ma,tn,cn]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({imports:[fP]})}}return t})();var Tg=class t{bsModalRef=S(us);title="";message="";btnOkText="";btnCancelText="";result=!1;confirm(){this.result=!0,this.bsModalRef.hide()}decline(){this.bsModalRef.hide()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-confirm-dialog"]],decls:11,vars:4,consts:[[1,"modal-header"],[1,"modal-title","pull-left"],[1,"modal-body"],[1,"modal-footer"],["type","button",1,"btn","btn-success",3,"click"],["type","button",1,"btn","btn-danger",3,"click"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"h4",1),y(2),f()(),d(3,"div",2)(4,"p"),y(5),f()(),d(6,"div",3)(7,"button",4),D("click",function(){return i.confirm()}),y(8),f(),d(9,"button",5),D("click",function(){return i.decline()}),y(10),f()()),e&2&&(h(2),H(i.title),h(3),H(i.message),h(3),H(i.btnOkText),h(2),H(i.btnCancelText))},encapsulation:2})};var Eg=class t{bsModalRef;modalService=S(Ma);confirm(n="Confirmation",e="Are you sure you want to do this?",i="Ok",r="Cancel"){let o={initialState:{title:n,message:e,btnOkText:i,btnCancelText:r}};return this.bsModalRef=this.modalService.show(Tg,o),this.bsModalRef.onHidden?.pipe(q(()=>this.bsModalRef?.content?this.bsModalRef.content.result:!1))}static \u0275fac=function(e){return new(e||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};var mP=(t,n,e,i)=>{let r=S(Eg);return t.editForm?.dirty?r.confirm()??!1:!0};var gP=(t,n)=>{let e=S(Hi),i=t.paramMap.get("username");return i?e.getMember(i):null};var ds=class t{appHasRole=[];accountService=S(lt);viewContainerRef=S(_t);templateRef=S(Ot);ngOnInit(){this.accountService.roles()?.some(n=>this.appHasRole.includes(n))?this.viewContainerRef.createEmbeddedView(this.templateRef):this.viewContainerRef.clear()}static \u0275fac=function(e){return new(e||t)};static \u0275dir=U({type:t,selectors:[["","appHasRole",""]],inputs:{appHasRole:"appHasRole"}})};var zr=class t{baseUrl=Kt.apiUrl;http=S(Yn);getTags(){return this.http.get(this.baseUrl+"admin/get-tags")}addTag(n){return this.http.post(this.baseUrl+"admin/create-tag",n)}removeTag(n){return this.http.delete(this.baseUrl+`admin/delete-tag/${n}`,{responseType:"text"})}getUserWithRoles(){return this.http.get(this.baseUrl+"admin/users-with-roles")}updateUserRoles(n,e){return this.http.post(this.baseUrl+"admin/edit-roles/"+n+"?roles="+e,{})}getPhotosForApproval(){return this.http.get(this.baseUrl+"admin/photos-to-moderate")}approvePhoto(n){return this.http.post(this.baseUrl+"admin/approve-photo/"+n,{})}rejectPhoto(n){return this.http.post(this.baseUrl+"admin/reject-photo/"+n,{})}getUsersWithoutMainPhoto(){return this.http.get(this.baseUrl+"admin/users-without-main-photo")}getPhotoStats(){return this.http.get(this.baseUrl+"admin/photo-stats")}static \u0275fac=function(e){return new(e||t)};static \u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})};function q7(t,n){if(t&1){let e=N();d(0,"div",5)(1,"input",8),D("change",function(){let r=C(e).$implicit,o=m();return w(o.updateChecked(r))}),f(),d(2,"label"),y(3),f()()}if(t&2){let e=n.$implicit,i=m();h(),g("checked",i.selectedRoles.includes(e))("disabled",e==="Admin"&&i.username==="admin"),h(2),H(e)}}var xg=class t{bsModalRef=S(us);title="";availableRoles=[];selectedRoles=[];username="";rolesUpdated=!1;updateChecked(n){this.selectedRoles.includes(n)?this.selectedRoles=this.selectedRoles.filter(e=>e!==n):this.selectedRoles.push(n)}onSelectRoles(){this.rolesUpdated=!0,this.bsModalRef.hide()}hide(){this.bsModalRef.hide()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-roles-modal"]],decls:12,vars:2,consts:[[1,"modal-header"],[1,"modal-title","pull-left"],["type","button",1,"btn-close","close","pull-right",3,"click"],[1,"visually-hidden"],[1,"modal-body"],[1,"form-check"],[1,"modal-footer"],["type","button",1,"btn","btn-success",3,"click","disabled"],["type","checkbox","value","role",1,"form-check-input",3,"change","checked","disabled"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"h4",1),y(2),f(),d(3,"button",2),D("click",function(){return i.hide()}),d(4,"span",3),y(5,"\xD7"),f()()(),d(6,"div",4),yt(7,q7,4,3,"div",5,_l),f(),d(9,"div",6)(10,"button",7),D("click",function(){return i.onSelectRoles()}),y(11,"Submit"),f()()),e&2&&(h(2),H(i.title),h(5),vt(i.availableRoles),h(3),g("disabled",i.selectedRoles.length===0))},encapsulation:2})};var Q7=(t,n)=>n.username;function K7(t,n){if(t&1){let e=N();d(0,"tr")(1,"td"),y(2),f(),d(3,"td"),y(4),f(),d(5,"td")(6,"button",4),D("click",function(){let r=C(e).$implicit,o=m();return w(o.openRolesModal(r))}),y(7," Edit roles "),f()()()}if(t&2){let e=n.$implicit;h(2),H(e.username),h(2),H(e.roles)}}var Ig=class t{adminService=S(zr);modalService=S(Ma);bsModalRef=new us;users=[];ngOnInit(){this.getUserWithRoles()}getUserWithRoles(){this.adminService.getUserWithRoles().subscribe({next:n=>this.users=n})}openRolesModal(n){let e={class:"modal-lg",initialState:{title:"User roles",username:n.username,selectedRoles:[...n.roles],availableRoles:["Admin","Moderator","Member"],users:this.users,rolesUpdated:!1}};this.bsModalRef=this.modalService.show(xg,e),this.bsModalRef.onHide?.subscribe({next:()=>{if(this.bsModalRef.content&&this.bsModalRef.content.rolesUpdated){let i=this.bsModalRef.content.selectedRoles;this.adminService.updateUserRoles(n.username,i).subscribe({next:r=>n.roles=r})}}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-admin-user-management"]],decls:12,vars:0,consts:[[1,"row"],[1,"table"],[2,"width","30%"],[2,"width","40%"],[1,"btn","btn-info",3,"click"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"table",1)(2,"thead")(3,"tr")(4,"th",2),y(5,"Username"),f(),d(6,"th",3),y(7,"Active roles"),f(),I(8,"th",2),f()(),d(9,"tbody"),yt(10,K7,8,2,"tr",null,Q7),f()()()),e&2&&(h(10),vt(i.users))},dependencies:[He],encapsulation:2})};function Z7(t,n){if(t&1&&(d(0,"li"),y(1),f()),t&2){let e=n.$implicit;h(),H(e)}}function J7(t,n){if(t&1&&(d(0,"tr")(1,"td"),y(2),f(),d(3,"td"),y(4),f(),d(5,"td"),y(6),f()()),t&2){let e=n.$implicit;h(2),H(e.username),h(2),H(e.approvedPhotos),h(2),H(e.unapprovedPhotos)}}var kg=class t{adminService=S(zr);usersWithoutMainPhoto=[];photoStats=[];ngOnInit(){this.getUsersWithoutMainPhoto(),this.getPhotoStats()}getUsersWithoutMainPhoto(){this.adminService.getUsersWithoutMainPhoto().subscribe({next:n=>{this.usersWithoutMainPhoto=n}})}getPhotoStats(){this.adminService.getPhotoStats().subscribe({next:n=>{this.photoStats=n}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-admin-photo-stats"]],decls:20,vars:2,consts:[[1,"row","mt-4"],[1,"col"],[4,"ngFor","ngForOf"],[1,"table","table-sm"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"div",1)(2,"h5"),y(3,"Users without main photo:"),f(),d(4,"ul"),T(5,Z7,2,1,"li",2),f()(),d(6,"div",1)(7,"h5"),y(8,"Photo approval stats:"),f(),d(9,"table",3)(10,"thead")(11,"tr")(12,"th"),y(13,"Username"),f(),d(14,"th"),y(15,"Approved"),f(),d(16,"th"),y(17,"Unapproved"),f()()(),d(18,"tbody"),T(19,J7,7,3,"tr",2),f()()()()),e&2&&(h(5),g("ngForOf",i.usersWithoutMainPhoto),h(14),g("ngForOf",i.photoStats))},dependencies:[He,Ge],encapsulation:2})};function X7(t,n){if(t&1&&(d(0,"span",11),y(1),f()),t&2){let e=n.$implicit;h(),oe(" ",e," ")}}function e9(t,n){if(t&1){let e=N();d(0,"div",18)(1,"textarea",26),Re("ngModelChange",function(r){C(e);let o=m(2);return Le(o.adminMessage,r)||(o.adminMessage=r),w(r)}),f()()}if(t&2){let e=m(2);h(),Oe("ngModel",e.adminMessage)}}function t9(t,n){if(t&1){let e=N();d(0,"div",1)(1,"div",2),D("click",function(){C(e);let r=m();return w(r.closePhotoModal())}),f(),d(2,"div",3)(3,"div",4)(4,"div",5)(5,"h5",6),y(6,"Photo Preview"),f(),d(7,"button",7),D("click",function(){C(e);let r=m();return w(r.closePhotoModal())}),f()(),d(8,"div",8),I(9,"img",9),d(10,"div",10),yt(11,X7,2,1,"span",11,Bh),f()(),d(13,"div",12)(14,"div",13)(15,"div",14)(16,"input",15),Re("ngModelChange",function(r){C(e);let o=m();return Le(o.isAnonymous,r)||(o.isAnonymous=r),w(r)}),f(),d(17,"label",16),I(18,"i",17),y(19," Send message "),f()()(),T(20,e9,2,1,"div",18),d(21,"div",19)(22,"button",20),D("click",function(){C(e);let r=m();return w(r.approvePhoto())}),I(23,"i",21),y(24," Approve "),f(),d(25,"button",22),D("click",function(){C(e);let r=m();return w(r.rejectPhoto())}),I(26,"i",23),y(27," Reject "),f(),d(28,"button",24),D("click",function(){C(e);let r=m();return w(r.closePhotoModal())}),I(29,"i",25),y(30," Close "),f()()()()()()}if(t&2){let e=m();B("show",e.isModalOpen),h(9),g("src",e.selectedPhoto.url,Xe),h(2),vt(e.selectedPhoto.tags),h(5),Oe("ngModel",e.isAnonymous),h(4),je(e.isAnonymous?20:-1)}}var Ag=class t{selectedPhoto=null;isModalOpen=!1;closeModal=new O;photoApproved=new O;photoRejected=new O;adminService=S(zr);messageService=S(Ur);accountService=S(lt);toastrService=S(At);isAnonymous=!1;adminMessage="";ngOnChanges(n){n.isModalOpen&&this.isModalOpen&&this.selectedPhoto?this.openModal():n.isModalOpen&&!this.isModalOpen&&this.closeModalInternal()}openModal(){this.isAnonymous=!1,this.adminMessage="";let n=this.accountService.currentUser();!n||!this.selectedPhoto||(this.messageService.createHubConnection(n,this.selectedPhoto.username),document.body.classList.add("modal-open"))}closePhotoModal(){this.closeModal.emit()}closeModalInternal(){this.messageService.stopHubConnection(),document.body.classList.remove("modal-open"),setTimeout(()=>{this.isAnonymous=!1,this.adminMessage=""},300)}approvePhoto(){if(this.selectedPhoto){if(this.isAnonymous)if(this.adminMessage!=="")this.sendMessage();else{this.toastrService.error("Type in the message, that you have decided to send!");return}this.adminService.approvePhoto(this.selectedPhoto.id).subscribe({next:()=>{this.photoApproved.emit(this.selectedPhoto.id),this.closePhotoModal()},error:n=>{this.toastrService.error("Failed to approve photo"),console.log(n)}})}}rejectPhoto(){if(this.selectedPhoto){if(this.isAnonymous)if(this.adminMessage!=="")this.sendMessage();else{this.toastrService.error("Type in the message, that you have decided to send!");return}this.adminService.rejectPhoto(this.selectedPhoto.id).subscribe({next:()=>{this.photoRejected.emit(this.selectedPhoto.id),this.closePhotoModal()},error:n=>{this.toastrService.error("Failed to reject photo"),console.log(n)}})}}sendMessage(){let n=`Regarding your photo: ${this.adminMessage}`;if(this.selectedPhoto?.username){if(!this.accountService.currentUser()){this.toastrService.error("You must be logged in to send messages");return}this.messageService.sendMessage(this.selectedPhoto.username,n)?.then(()=>{console.log(`Anonymous message sent to ${this.selectedPhoto?.username}`)}).catch(i=>{console.error("Error sending message:",i),this.toastrService.error("Failed to send notification message")})}else this.toastrService.error("No username selected for the photo")}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-photo-modal"]],inputs:{selectedPhoto:"selectedPhoto",isModalOpen:"isModalOpen"},outputs:{closeModal:"closeModal",photoApproved:"photoApproved",photoRejected:"photoRejected"},features:[Se],decls:1,vars:1,consts:[[1,"photo-modal",3,"show"],[1,"photo-modal"],[1,"modal-backdrop",3,"click"],[1,"modal-dialog"],[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button",1,"btn-close",3,"click"],[1,"modal-body"],["alt","enlarged photo",1,"modal-image",2,"max-width","100%","max-height","400px",3,"src"],[1,"d-flex","flex-wrap","justify-content-center","gap-2","mt-3"],[1,"badge","bg-secondary","px-3","py-2","fs-6","shadow-sm"],[1,"modal-footer","flex-column","align-items-stretch"],[1,"anonymity-toggle","mb-3"],[1,"form-check","form-switch"],["type","checkbox","id","anonymitySwitch",1,"form-check-input",3,"ngModelChange","ngModel"],["for","anonymitySwitch",1,"form-check-label"],[1,"bi","bi-incognito","me-1"],[1,"admin-message","mb-3","w-100"],[1,"action-buttons","d-flex","justify-content-center","gap-2"],[1,"btn","btn-success",3,"click"],[1,"bi","bi-check-lg"],[1,"btn","btn-danger",3,"click"],[1,"bi","bi-x-lg"],[1,"btn","btn-secondary",3,"click"],[1,"bi","bi-x"],["rows","3","placeholder","Enter message...",1,"form-control",3,"ngModelChange","ngModel"]],template:function(e,i){e&1&&T(0,t9,31,5,"div",0),e&2&&je(i.selectedPhoto&&i.isModalOpen?0:-1)},dependencies:[He,Dn,Bt,Pb,kt,pn],styles:['.photo-modal[_ngcontent-%COMP%]{position:fixed;inset:0;background:#1e1e1eb3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1050;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all .3s cubic-bezier(.25,.46,.45,.94)}.photo-modal.show[_ngcontent-%COMP%]{opacity:1;visibility:visible}.modal-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;background:transparent;z-index:1}.modal-dialog[_ngcontent-%COMP%]{max-width:500px;width:90%;margin:2rem auto;z-index:1060;position:relative}.modal-content[_ngcontent-%COMP%]{background:#282828eb;border-radius:14px;overflow:hidden;color:#fff;box-shadow:0 20px 40px #000000b3;transform:scale(.8) translateY(-50px);transition:all .3s cubic-bezier(.25,.46,.45,.94);border:1px solid rgba(255,255,255,.1)}.photo-modal.show[_ngcontent-%COMP%] .modal-content[_ngcontent-%COMP%]{transform:scale(1) translateY(0)}.modal-header[_ngcontent-%COMP%], .modal-footer[_ngcontent-%COMP%]{border:none;background:transparent;padding:1.5rem}.modal-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(255,255,255,.1)}.modal-title[_ngcontent-%COMP%]{margin:0;font-size:1.4rem;font-weight:600;color:#fff;text-shadow:0 2px 4px rgba(0,0,0,.3)}.btn-close[_ngcontent-%COMP%]{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:35px;height:35px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.2rem;cursor:pointer;transition:all .2s ease;opacity:.8}.btn-close[_ngcontent-%COMP%]:hover{background:#fff3;opacity:1;transform:scale(1.1)}.btn-close[_ngcontent-%COMP%]:before{content:"\\d7";font-weight:700}.modal-body[_ngcontent-%COMP%]{padding:25px;text-align:center}.modal-image[_ngcontent-%COMP%]{border-radius:12px;object-fit:contain;max-width:100%;max-height:400px;box-shadow:0 8px 24px #0006;transition:transform .2s ease}.modal-image[_ngcontent-%COMP%]:hover{transform:scale(1.02)}.modal-footer[_ngcontent-%COMP%]{border-top:1px solid rgba(255,255,255,.1)}.badge[_ngcontent-%COMP%]{font-size:1rem;padding:.5em .9em;background:#6c757dcc!important;border:1px solid rgba(255,255,255,.2);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:all .2s ease}.badge[_ngcontent-%COMP%]:hover{background:#6c757d!important;transform:translateY(-1px)}.form-check[_ngcontent-%COMP%]{-webkit-user-select:none;user-select:none}.form-check-label[_ngcontent-%COMP%]{color:#fff;font-weight:500;cursor:pointer;transition:color .2s ease}.form-check-label[_ngcontent-%COMP%]:hover{color:#e9ecef}.form-check-input[_ngcontent-%COMP%]:checked{background-color:#0d6efd;border-color:#0d6efd;box-shadow:0 0 0 .25rem #0d6efd40}.admin-message[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]{resize:vertical;min-height:80px;background:#ffffff0d;border:1px solid rgba(255,255,255,.2);color:#fff;border-radius:8px;transition:all .2s ease}.admin-message[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]:focus{background:#ffffff1a;border-color:#0d6efd;box-shadow:0 0 0 .25rem #0d6efd40;color:#fff}.admin-message[_ngcontent-%COMP%] textarea[_ngcontent-%COMP%]::placeholder{color:#fff9}.action-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{min-width:100px;padding:.6rem 1.2rem;border-radius:8px;font-weight:500;border:none;transition:all .2s ease;position:relative;overflow:hidden}.action-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000004d}.btn-success[_ngcontent-%COMP%]{background:linear-gradient(135deg,#28a745,#20c997)}.btn-success[_ngcontent-%COMP%]:hover{background:linear-gradient(135deg,#218838,#1ea085)}.btn-danger[_ngcontent-%COMP%]{background:linear-gradient(135deg,#dc3545,#e83e8c)}.btn-danger[_ngcontent-%COMP%]:hover{background:linear-gradient(135deg,#c82333,#d91a72)}.btn-secondary[_ngcontent-%COMP%]{background:linear-gradient(135deg,#6c757d,#8e9ba8)}.btn-secondary[_ngcontent-%COMP%]:hover{background:linear-gradient(135deg,#5a6268,#7c8a96)}@media (max-width: 768px){.modal-dialog[_ngcontent-%COMP%]{margin:1rem;max-width:calc(100% - 2rem);width:calc(100% - 2rem)}.modal-body[_ngcontent-%COMP%]{padding:15px}.modal-header[_ngcontent-%COMP%], .modal-footer[_ngcontent-%COMP%]{padding:1rem}.modal-title[_ngcontent-%COMP%]{font-size:1.2rem}.action-buttons[_ngcontent-%COMP%]{flex-direction:column;gap:.5rem!important}.action-buttons[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%;min-width:auto}}@media (min-width: 769px){.modal-dialog[_ngcontent-%COMP%]{max-width:450px}}@keyframes _ngcontent-%COMP%_fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-body[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_fadeInUp .4s ease-out;animation-fill-mode:both}.modal-body[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:nth-child(1){animation-delay:.1s}.modal-body[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:nth-child(2){animation-delay:.2s}.modal-body[_ngcontent-%COMP%] > *[_ngcontent-%COMP%]:nth-child(3){animation-delay:.3s}']})};var n9=()=>["Admin"],Rw=(t,n)=>n.id;function i9(t,n){t&1&&I(0,"app-admin-photo-stats")}function r9(t,n){if(t&1&&(d(0,"option",8),y(1),f()),t&2){let e=n.$implicit;g("value",e.name),h(),H(e.name)}}function o9(t,n){if(t&1&&(d(0,"span",27),y(1),f()),t&2){let e=n.$implicit;h(),oe(" ",e," ")}}function s9(t,n){if(t&1){let e=N();d(0,"div",11)(1,"div",24)(2,"img",25),D("click",function(){let r=C(e).$implicit,o=m();return w(o.openPhotoModal(r))}),f(),d(3,"div",26),yt(4,o9,2,1,"span",27,Bh),f(),d(6,"div",28)(7,"button",29),D("click",function(){let r=C(e).$implicit,o=m();return w(o.approvePhoto(r.id))}),I(8,"i",30),y(9," Approve "),f(),d(10,"button",31),D("click",function(){let r=C(e).$implicit,o=m();return w(o.rejectPhoto(r.id))}),I(11,"i",32),y(12," Reject "),f()()()()}if(t&2){let e=n.$implicit;h(2),Vt("src",e.url,Xe),h(2),vt(e.tags)}}function a9(t,n){if(t&1){let e=N();d(0,"div",17)(1,"span"),y(2),f(),d(3,"button",33),D("click",function(){let r=C(e).$implicit,o=m();return w(o.removeTag(r.name))}),I(4,"i",34),f()()}if(t&2){let e=n.$implicit;h(2),H(e.name)}}var Pg=class t{adminService=S(zr);toastrService=S(At);selectedPhoto=null;isModalOpen=!1;photos=[];tags=[];newTag={};selectedTag={};filteredPhotos=[];ngOnInit(){this.loadPhotosForApproval(),this.getTags()}loadPhotosForApproval(){this.adminService.getPhotosForApproval().subscribe({next:n=>{this.photos=n,this.filterPhotosByTag()},error:n=>{this.toastrService.error("Failed to load photos"),console.log(n)}})}openPhotoModal(n){this.selectedPhoto=n,this.isModalOpen=!0}closePhotoModal(){this.isModalOpen=!1,setTimeout(()=>{this.selectedPhoto=null},300)}onPhotoApproved(n){this.photos=this.photos.filter(e=>e.id!==n),this.filterPhotosByTag()}onPhotoRejected(n){this.photos=this.photos.filter(e=>e.id!==n),this.filterPhotosByTag()}approvePhoto(n){this.adminService.approvePhoto(n).subscribe({next:()=>{this.photos=this.photos.filter(e=>e.id!==n),this.filterPhotosByTag()},error:e=>{this.toastrService.error("Failed to approve photo"),console.log(e)}})}rejectPhoto(n){this.adminService.rejectPhoto(n).subscribe({next:()=>{this.photos=this.photos.filter(e=>e.id!==n),this.filterPhotosByTag()},error:e=>{this.toastrService.error("Failed to reject photo"),console.log(e)}})}createTag(n){n.invalid||this.adminService.addTag(this.newTag).subscribe({next:()=>{this.newTag.name="",this.toastrService.success("Tag successfully created"),this.getTags(),n.resetForm()},error:e=>{e.status===400?this.toastrService.error("You can't create duplicates!"):this.toastrService.error("Something unexpected happened: "+e)}})}getTags(){return this.adminService.getTags().subscribe({next:n=>{this.tags=n},error:n=>this.toastrService.error("Something unexpected happened: "+n)})}removeTag(n){confirm(`Are you sure you want to delete the tag "${n}"?`)&&this.adminService.removeTag(n).subscribe({next:()=>{this.toastrService.success("Tag successfully removed"),this.getTags(),this.loadPhotosForApproval()},error:e=>{e.status===400?this.toastrService.error("You can't remove a tag that is in use!"):this.toastrService.error("Something unexpected happened: "+e)}})}filterPhotosByTag(){this.selectedTag?this.filteredPhotos=this.photos.filter(n=>n.tags&&n.tags.some(e=>e===this.selectedTag)):this.filteredPhotos=this.photos}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-admin-photo-management"]],decls:37,vars:6,consts:[["tagForm","ngForm"],[1,"text-center","mt-5","mx-4","text-primary","fw-bold"],[1,"text-info","justify-content-center","d-flex"],[1,"line","mx-auto","justify-content-center","d-flex"],[4,"appHasRole"],[1,"d-flex","mt-3","justify-content-center","mb-3"],[1,"form-select","w-auto",3,"ngModelChange","change","ngModel"],["value",""],[3,"value"],[1,"photo-gallery-container",2,"max-height","650px","overflow-y","auto"],[1,"row","g-3"],[1,"col-sm-6","col-md-4","col-lg-3","mb-3"],[3,"closeModal","photoApproved","photoRejected","selectedPhoto","isModalOpen"],[1,"container","my-5"],[1,"text-center","mb-3"],[1,"text-center","text-muted"],[1,"d-flex","flex-wrap","justify-content-center","gap-2"],[1,"badge","bg-secondary","p-2","px-3","fs-6","shadow-sm","d-flex","align-items-center"],[3,"ngSubmit"],[1,"mb-3"],["for","tagName",1,"form-label"],["type","text","id","tagName","name","name","placeholder","Enter tag name","required","",1,"form-control",3,"ngModelChange","ngModel"],[1,"text-center"],["type","submit",1,"btn","btn-primary"],[1,"photo-card"],["alt","photo waiting to be approved",1,"img-thumbnail","photo-image",2,"cursor","pointer",3,"click","src"],[1,"d-flex","flex-wrap","justify-content-center","gap-2","mt-2"],[1,"badge","bg-secondary","px-3","py-2","fs-6","shadow-sm"],[1,"action-buttons","mt-2"],[1,"btn","btn-success","me-2",3,"click"],[1,"bi","bi-check-lg"],[1,"btn","btn-danger",3,"click"],[1,"bi","bi-x-lg"],["type","button",1,"btn","btn-sm","btn-danger","ms-2","py-0","px-2",2,"line-height","1",3,"click"],[1,"bi","bi-x"]],template:function(e,i){if(e&1){let r=N();d(0,"h1",1),y(1,` User Photos Management +`),f(),d(2,"p",2),y(3,` Approve or reject photos as you like. +`),f(),I(4,"div",3),T(5,i9,1,0,"app-admin-photo-stats",4),d(6,"div",5)(7,"select",6),Re("ngModelChange",function(s){return C(r),Le(i.selectedTag,s)||(i.selectedTag=s),w(s)}),D("change",function(){return C(r),w(i.filterPhotosByTag())}),d(8,"option",7),y(9,"All Tags"),f(),yt(10,r9,2,2,"option",8,Rw),f()(),d(12,"div",9)(13,"div",10),yt(14,s9,13,1,"div",11,Rw),f()(),d(16,"app-photo-modal",12),D("closeModal",function(){return C(r),w(i.closePhotoModal())})("photoApproved",function(s){return C(r),w(i.onPhotoApproved(s))})("photoRejected",function(s){return C(r),w(i.onPhotoRejected(s))}),f(),d(17,"div",13)(18,"h2",14),y(19,"Photo Tags List"),f(),d(20,"p",15),y(21," You can browse available photo tags here and also create new tags. "),f(),d(22,"div",16),yt(23,a9,5,1,"div",17,Rw),f()(),d(25,"div",13)(26,"h2",14),y(27,"Create New Photo Tag"),f(),d(28,"form",18,0),D("ngSubmit",function(){C(r);let s=Et(29);return w(i.createTag(s))}),d(30,"div",19)(31,"label",20),y(32,"Tag Name"),f(),d(33,"input",21),Re("ngModelChange",function(s){return C(r),Le(i.newTag.name,s)||(i.newTag.name=s),w(s)}),f()(),d(34,"div",22)(35,"button",23),y(36,"Create Tag"),f()()()()}e&2&&(h(5),g("appHasRole",Zi(5,n9)),h(2),Oe("ngModel",i.selectedTag),h(3),vt(i.tags),h(4),vt(i.filteredPhotos),h(2),g("selectedPhoto",i.selectedPhoto)("isModalOpen",i.isModalOpen),h(7),vt(i.tags),h(10),Oe("ngModel",i.newTag.name))},dependencies:[EI,Dn,Ii,Kp,Zp,Bt,Vl,kt,xi,rd,pn,ir,He,ds,kg,Ag],styles:['img.img-thumbnail[_ngcontent-%COMP%]{height:175px;min-width:175px!important;margin-bottom:2px}[_nghost-%COMP%]{--bg-color: #121212;--card-bg: #1e1e1e;--text-color: #e0e0e0;--border-color: #333;--btn-success-bg: #2e7d32;--btn-success-hover: #388e3c;--btn-danger-bg: #c62828;--btn-danger-hover: #d32f2f;--btn-secondary-bg: #424242;--btn-secondary-hover: #616161;--modal-bg: #212121;--input-bg: #2c2c2c;--input-border: #444;--switch-active: #2e7d32}.photo-gallery-container[_ngcontent-%COMP%]{background-color:var(--bg-color);color:var(--text-color);padding:1.5rem;min-height:100vh}.photo-card[_ngcontent-%COMP%]{background-color:var(--card-bg);border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000004d;transition:transform .2s ease}.photo-card[_ngcontent-%COMP%]:hover{transform:translateY(-5px)}.photo-image[_ngcontent-%COMP%]{width:100%;height:200px;object-fit:cover;cursor:pointer;border:1px solid var(--border-color);background-color:var(--card-bg)}.action-buttons[_ngcontent-%COMP%]{display:flex;justify-content:center;padding:.75rem;gap:.5rem}.action-buttons[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;font-weight:500;border:none;border-radius:6px;transition:all .2s ease;padding:.5rem 1rem}.action-buttons[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-right:5px}.action-buttons[_ngcontent-%COMP%] .btn-success[_ngcontent-%COMP%]{background-color:var(--btn-success-bg)}.action-buttons[_ngcontent-%COMP%] .btn-success[_ngcontent-%COMP%]:hover{background-color:var(--btn-success-hover)}.action-buttons[_ngcontent-%COMP%] .btn-danger[_ngcontent-%COMP%]{background-color:var(--btn-danger-bg)}.action-buttons[_ngcontent-%COMP%] .btn-danger[_ngcontent-%COMP%]:hover{background-color:var(--btn-danger-hover)}.action-buttons[_ngcontent-%COMP%] .btn-secondary[_ngcontent-%COMP%]{background-color:var(--btn-secondary-bg)}.action-buttons[_ngcontent-%COMP%] .btn-secondary[_ngcontent-%COMP%]:hover{background-color:var(--btn-secondary-hover)}.photo-modal[_ngcontent-%COMP%]{position:fixed;inset:0;z-index:1050;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.photo-modal.show[_ngcontent-%COMP%]{opacity:1;visibility:visible}.modal-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;background-color:#000c}.modal-content[_ngcontent-%COMP%]{position:relative;background-color:var(--modal-bg);border-radius:12px;width:90%;max-width:800px;box-shadow:0 10px 25px #00000080;max-height:90vh;display:flex;flex-direction:column;z-index:1051}.modal-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color)}.modal-header[_ngcontent-%COMP%] .modal-title[_ngcontent-%COMP%]{margin:0;color:var(--text-color);font-size:1.25rem}.modal-header[_ngcontent-%COMP%] .btn-close[_ngcontent-%COMP%]{color:var(--text-color);opacity:.7;background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.25rem}.modal-header[_ngcontent-%COMP%] .btn-close[_ngcontent-%COMP%]:hover{opacity:1}.modal-header[_ngcontent-%COMP%] .btn-close[_ngcontent-%COMP%]:after{content:"\\d7"}.modal-body[_ngcontent-%COMP%]{padding:1rem;overflow-y:auto;display:flex;justify-content:center;align-items:center}.modal-body[_ngcontent-%COMP%] .modal-image[_ngcontent-%COMP%]{max-width:100%;max-height:60vh;object-fit:contain;border-radius:4px}.modal-footer[_ngcontent-%COMP%]{padding:1rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;align-items:stretch}.anonymity-toggle[_ngcontent-%COMP%]{align-self:flex-start;margin-bottom:1rem}.form-check-input[_ngcontent-%COMP%]{background-color:var(--input-bg);border-color:var(--input-border);width:40px;height:20px;cursor:pointer}.form-check-input[_ngcontent-%COMP%]:checked{background-color:var(--switch-active);border-color:var(--switch-active)}.admin-message[_ngcontent-%COMP%]{margin-bottom:1rem;width:100%}.form-control[_ngcontent-%COMP%]{background-color:var(--input-bg);border-color:var(--input-border);color:var(--text-color);resize:vertical;border-radius:6px;padding:.75rem;transition:border-color .2s ease}.form-control[_ngcontent-%COMP%]:focus{border-color:#777;box-shadow:0 0 0 .2rem #54545440}.form-check-label[_ngcontent-%COMP%]{cursor:pointer;display:flex;align-items:center;-webkit-user-select:none;user-select:none}']})};var l9=()=>["Admin"],c9=()=>["Admin","Moderator"];function u9(t,n){t&1&&(d(0,"tab",4)(1,"div",5),I(2,"app-admin-user-management"),f()())}function d9(t,n){t&1&&(d(0,"tab",6)(1,"div",5),I(2,"app-admin-photo-management"),f()())}var Og=class t{static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-admin-panel"]],decls:6,vars:4,consts:[[1,"tab-panel"],[1,"member-tabset"],["heading","User management",4,"appHasRole"],["heading","Photo management",4,"appHasRole"],["heading","User management"],[1,"container"],["heading","Photo management"]],template:function(e,i){e&1&&(d(0,"h2"),y(1,"Admin panel"),f(),d(2,"div",0)(3,"tabset",1),T(4,u9,3,0,"tab",2)(5,d9,3,0,"tab",3),f()()),e&2&&(h(4),g("appHasRole",Zi(2,l9)),h(),g("appHasRole",Zi(3,c9)))},dependencies:[_c,gc,wa,ds,Ig,Pg],encapsulation:2})};var _P=(t,n)=>{let e=S(lt),i=S(At);return e.roles().includes("Admin")||e.roles().includes("Moderator")?!0:(i.error("You cannot enter this area"),!1)};var yP=[{path:"",component:xd},{path:"",runGuardsAndResolvers:"always",canActivate:[iP],children:[{path:"members",component:Jm},{path:"members/:username",component:pg,resolve:{member:gP}},{path:"member/edit",component:Dg,canDeactivate:[mP]},{path:"lists",component:mg},{path:"messages",component:gg},{path:"admin",component:Og,canActivate:[_P]}]},{path:"errors",component:_g},{path:"not-found",component:yg},{path:"server-error",component:vg},{path:"**",component:xd,pathMatch:"full"}];function vP(t){return new R(3e3,!1)}function f9(){return new R(3100,!1)}function h9(){return new R(3101,!1)}function p9(t){return new R(3001,!1)}function m9(t){return new R(3003,!1)}function g9(t){return new R(3004,!1)}function CP(t,n){return new R(3005,!1)}function wP(){return new R(3006,!1)}function DP(){return new R(3007,!1)}function MP(t,n){return new R(3008,!1)}function SP(t){return new R(3002,!1)}function TP(t,n,e,i,r){return new R(3010,!1)}function EP(){return new R(3011,!1)}function xP(){return new R(3012,!1)}function IP(){return new R(3200,!1)}function kP(){return new R(3202,!1)}function AP(){return new R(3013,!1)}function PP(t){return new R(3014,!1)}function OP(t){return new R(3015,!1)}function RP(t){return new R(3016,!1)}function NP(t,n){return new R(3404,!1)}function _9(t){return new R(3502,!1)}function LP(t){return new R(3503,!1)}function FP(){return new R(3300,!1)}function VP(t){return new R(3504,!1)}function jP(t){return new R(3301,!1)}function HP(t,n){return new R(3302,!1)}function BP(t){return new R(3303,!1)}function UP(t,n){return new R(3400,!1)}function $P(t){return new R(3401,!1)}function zP(t){return new R(3402,!1)}function YP(t,n){return new R(3505,!1)}function vo(t){switch(t.length){case 0:return new Lr;case 1:return t[0];default:return new oa(t)}}function Vw(t,n,e=new Map,i=new Map){let r=[],o=[],s=-1,a=null;if(n.forEach(l=>{let c=l.get("offset"),u=c==s,p=u&&a||new Map;l.forEach((v,_)=>{let M=_,x=v;if(_!=="offset")switch(M=t.normalizePropertyName(M,r),x){case $l:x=e.get(_);break;case ki:x=i.get(_);break;default:x=t.normalizeStyleValue(_,M,x,r);break}p.set(M,x)}),u||o.push(p),a=p,s=c}),r.length)throw _9(r);return o}function Rg(t,n,e,i){switch(n){case"start":t.onStart(()=>i(e&&Nw(e,"start",t)));break;case"done":t.onDone(()=>i(e&&Nw(e,"done",t)));break;case"destroy":t.onDestroy(()=>i(e&&Nw(e,"destroy",t)));break}}function Nw(t,n,e){let i=e.totalTime,r=!!e.disabled,o=Ng(t.element,t.triggerName,t.fromState,t.toState,n||t.phaseName,i??t.totalTime,r),s=t._data;return s!=null&&(o._data=s),o}function Ng(t,n,e,i,r="",o=0,s){return{element:t,triggerName:n,fromState:e,toState:i,phaseName:r,totalTime:o,disabled:!!s}}function Qn(t,n,e){let i=t.get(n);return i||t.set(n,i=e),i}function jw(t){let n=t.indexOf(":"),e=t.substring(1,n),i=t.slice(n+1);return[e,i]}var y9=typeof document>"u"?null:document.documentElement;function Lg(t){let n=t.parentNode||t.host||null;return n===y9?null:n}function v9(t){return t.substring(1,6)=="ebkit"}var Sa=null,bP=!1;function WP(t){Sa||(Sa=b9()||{},bP=Sa.style?"WebkitAppearance"in Sa.style:!1);let n=!0;return Sa.style&&!v9(t)&&(n=t in Sa.style,!n&&bP&&(n="Webkit"+t.charAt(0).toUpperCase()+t.slice(1)in Sa.style)),n}function b9(){return typeof document<"u"?document.body:null}function Hw(t,n){for(;n;){if(n===t)return!0;n=Lg(n)}return!1}function Bw(t,n,e){if(e)return Array.from(t.querySelectorAll(n));let i=t.querySelector(n);return i?[i]:[]}var C9=1e3,Uw="{{",w9="}}",$w="ng-enter",Fg="ng-leave",Ld="ng-trigger",Fd=".ng-trigger",zw="ng-animating",Vg=".ng-animating";function Yr(t){if(typeof t=="number")return t;let n=t.match(/^(-?[\.\d]+)(m?s)/);return!n||n.length<2?0:Lw(parseFloat(n[1]),n[2])}function Lw(t,n){switch(n){case"s":return t*C9;default:return t}}function Vd(t,n,e){return t.hasOwnProperty("duration")?t:D9(t,n,e)}function D9(t,n,e){let i=/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i,r,o=0,s="";if(typeof t=="string"){let a=t.match(i);if(a===null)return n.push(vP(t)),{duration:0,delay:0,easing:""};r=Lw(parseFloat(a[1]),a[2]);let l=a[3];l!=null&&(o=Lw(parseFloat(l),a[4]));let c=a[5];c&&(s=c)}else r=t;if(!e){let a=!1,l=n.length;r<0&&(n.push(f9()),a=!0),o<0&&(n.push(h9()),a=!0),a&&n.splice(l,0,vP(t))}return{duration:r,delay:o,easing:s}}function GP(t){return t.length?t[0]instanceof Map?t:t.map(n=>new Map(Object.entries(n))):[]}function dr(t,n,e){n.forEach((i,r)=>{let o=jg(r);e&&!e.has(r)&&e.set(r,t.style[o]),t.style[o]=i})}function fs(t,n){n.forEach((e,i)=>{let r=jg(i);t.style[r]=""})}function Sc(t){return Array.isArray(t)?t.length==1?t[0]:_m(t):t}function qP(t,n,e){let i=n.params||{},r=Yw(t);r.length&&r.forEach(o=>{i.hasOwnProperty(o)||e.push(p9(o))})}var Fw=new RegExp(`${Uw}\\s*(.+?)\\s*${w9}`,"g");function Yw(t){let n=[];if(typeof t=="string"){let e;for(;e=Fw.exec(t);)n.push(e[1]);Fw.lastIndex=0}return n}function Tc(t,n,e){let i=`${t}`,r=i.replace(Fw,(o,s)=>{let a=n[s];return a==null&&(e.push(m9(s)),a=""),a.toString()});return r==i?t:r}var M9=/-+([a-z0-9])/g;function jg(t){return t.replace(M9,(...n)=>n[1].toUpperCase())}function QP(t,n){return t===0||n===0}function KP(t,n,e){if(e.size&&n.length){let i=n[0],r=[];if(e.forEach((o,s)=>{i.has(s)||r.push(s),i.set(s,o)}),r.length)for(let o=1;os.set(a,Hg(t,a)))}}return n}function Kn(t,n,e){switch(n.type){case me.Trigger:return t.visitTrigger(n,e);case me.State:return t.visitState(n,e);case me.Transition:return t.visitTransition(n,e);case me.Sequence:return t.visitSequence(n,e);case me.Group:return t.visitGroup(n,e);case me.Animate:return t.visitAnimate(n,e);case me.Keyframes:return t.visitKeyframes(n,e);case me.Style:return t.visitStyle(n,e);case me.Reference:return t.visitReference(n,e);case me.AnimateChild:return t.visitAnimateChild(n,e);case me.AnimateRef:return t.visitAnimateRef(n,e);case me.Query:return t.visitQuery(n,e);case me.Stagger:return t.visitStagger(n,e);default:throw g9(n.type)}}function Hg(t,n){return window.getComputedStyle(t)[n]}var lD=(()=>{class t{validateStyleProperty(e){return WP(e)}containsElement(e,i){return Hw(e,i)}getParentElement(e){return Lg(e)}query(e,i,r){return Bw(e,i,r)}computeStyle(e,i,r){return r||""}animate(e,i,r,o,s,a=[],l){return new Lr(r,o)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})(),Ea=class{static NOOP=new lD},xa=class{};var S9=new Set(["width","height","minWidth","minHeight","maxWidth","maxHeight","left","top","bottom","right","fontSize","outlineWidth","outlineOffset","paddingTop","paddingLeft","paddingBottom","paddingRight","marginTop","marginLeft","marginBottom","marginRight","borderRadius","borderWidth","borderTopWidth","borderLeftWidth","borderRightWidth","borderBottomWidth","textIndent","perspective"]),Yg=class extends xa{normalizePropertyName(n,e){return jg(n)}normalizeStyleValue(n,e,i,r){let o="",s=i.toString().trim();if(S9.has(e)&&i!==0&&i!=="0")if(typeof i=="number")o="px";else{let a=i.match(/^[+-]?[\d\.]+([a-z]*)$/);a&&a[1].length==0&&r.push(CP(n,i))}return s+o}};var Wg="*";function T9(t,n){let e=[];return typeof t=="string"?t.split(/\s*,\s*/).forEach(i=>E9(i,e,n)):e.push(t),e}function E9(t,n,e){if(t[0]==":"){let l=x9(t,e);if(typeof l=="function"){n.push(l);return}t=l}let i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(i==null||i.length<4)return e.push(OP(t)),n;let r=i[1],o=i[2],s=i[3];n.push(ZP(r,s));let a=r==Wg&&s==Wg;o[0]=="<"&&!a&&n.push(ZP(s,r))}function x9(t,n){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(e,i)=>parseFloat(i)>parseFloat(e);case":decrement":return(e,i)=>parseFloat(i) *"}}var Bg=new Set(["true","1"]),Ug=new Set(["false","0"]);function ZP(t,n){let e=Bg.has(t)||Ug.has(t),i=Bg.has(n)||Ug.has(n);return(r,o)=>{let s=t==Wg||t==r,a=n==Wg||n==o;return!s&&e&&typeof r=="boolean"&&(s=r?Bg.has(t):Ug.has(t)),!a&&i&&typeof o=="boolean"&&(a=o?Bg.has(n):Ug.has(n)),s&&a}}var aO=":self",I9=new RegExp(`s*${aO}s*,?`,"g");function lO(t,n,e,i){return new Zw(t).build(n,e,i)}var JP="",Zw=class{_driver;constructor(n){this._driver=n}build(n,e,i){let r=new Jw(e);return this._resetContextStyleTimingState(r),Kn(this,Sc(n),r)}_resetContextStyleTimingState(n){n.currentQuerySelector=JP,n.collectedStyles=new Map,n.collectedStyles.set(JP,new Map),n.currentTime=0}visitTrigger(n,e){let i=e.queryCount=0,r=e.depCount=0,o=[],s=[];return n.name.charAt(0)=="@"&&e.errors.push(wP()),n.definitions.forEach(a=>{if(this._resetContextStyleTimingState(e),a.type==me.State){let l=a,c=l.name;c.toString().split(/\s*,\s*/).forEach(u=>{l.name=u,o.push(this.visitState(l,e))}),l.name=c}else if(a.type==me.Transition){let l=this.visitTransition(a,e);i+=l.queryCount,r+=l.depCount,s.push(l)}else e.errors.push(DP())}),{type:me.Trigger,name:n.name,states:o,transitions:s,queryCount:i,depCount:r,options:null}}visitState(n,e){let i=this.visitStyle(n.styles,e),r=n.options&&n.options.params||null;if(i.containsDynamicStyles){let o=new Set,s=r||{};i.styles.forEach(a=>{a instanceof Map&&a.forEach(l=>{Yw(l).forEach(c=>{s.hasOwnProperty(c)||o.add(c)})})}),o.size&&e.errors.push(MP(n.name,[...o.values()]))}return{type:me.State,name:n.name,style:i,options:r?{params:r}:null}}visitTransition(n,e){e.queryCount=0,e.depCount=0;let i=Kn(this,Sc(n.animation),e),r=T9(n.expr,e.errors);return{type:me.Transition,matchers:r,animation:i,queryCount:e.queryCount,depCount:e.depCount,options:Ta(n.options)}}visitSequence(n,e){return{type:me.Sequence,steps:n.steps.map(i=>Kn(this,i,e)),options:Ta(n.options)}}visitGroup(n,e){let i=e.currentTime,r=0,o=n.steps.map(s=>{e.currentTime=i;let a=Kn(this,s,e);return r=Math.max(r,e.currentTime),a});return e.currentTime=r,{type:me.Group,steps:o,options:Ta(n.options)}}visitAnimate(n,e){let i=O9(n.timings,e.errors);e.currentAnimateTimings=i;let r,o=n.styles?n.styles:xt({});if(o.type==me.Keyframes)r=this.visitKeyframes(o,e);else{let s=n.styles,a=!1;if(!s){a=!0;let c={};i.easing&&(c.easing=i.easing),s=xt(c)}e.currentTime+=i.duration+i.delay;let l=this.visitStyle(s,e);l.isEmptyStep=a,r=l}return e.currentAnimateTimings=null,{type:me.Animate,timings:i,style:r,options:null}}visitStyle(n,e){let i=this._makeStyleAst(n,e);return this._validateStyleAst(i,e),i}_makeStyleAst(n,e){let i=[],r=Array.isArray(n.styles)?n.styles:[n.styles];for(let a of r)typeof a=="string"?a===ki?i.push(a):e.errors.push(SP(a)):i.push(new Map(Object.entries(a)));let o=!1,s=null;return i.forEach(a=>{if(a instanceof Map&&(a.has("easing")&&(s=a.get("easing"),a.delete("easing")),!o)){for(let l of a.values())if(l.toString().indexOf(Uw)>=0){o=!0;break}}}),{type:me.Style,styles:i,easing:s,offset:n.offset,containsDynamicStyles:o,options:null}}_validateStyleAst(n,e){let i=e.currentAnimateTimings,r=e.currentTime,o=e.currentTime;i&&o>0&&(o-=i.duration+i.delay),n.styles.forEach(s=>{typeof s!="string"&&s.forEach((a,l)=>{let c=e.collectedStyles.get(e.currentQuerySelector),u=c.get(l),p=!0;u&&(o!=r&&o>=u.startTime&&r<=u.endTime&&(e.errors.push(TP(l,u.startTime,u.endTime,o,r)),p=!1),o=u.startTime),p&&c.set(l,{startTime:o,endTime:r}),e.options&&qP(a,e.options,e.errors)})})}visitKeyframes(n,e){let i={type:me.Keyframes,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push(EP()),i;let r=1,o=0,s=[],a=!1,l=!1,c=0,u=n.steps.map(F=>{let K=this._makeStyleAst(F,e),ne=K.offset!=null?K.offset:P9(K.styles),Ue=0;return ne!=null&&(o++,Ue=K.offset=ne),l=l||Ue<0||Ue>1,a=a||Ue0&&o{let ne=v>0?K==_?1:v*K:s[K],Ue=ne*P;e.currentTime=M+x.delay+Ue,x.duration=Ue,this._validateStyleAst(F,e),F.offset=ne,i.styles.push(F)}),i}visitReference(n,e){return{type:me.Reference,animation:Kn(this,Sc(n.animation),e),options:Ta(n.options)}}visitAnimateChild(n,e){return e.depCount++,{type:me.AnimateChild,options:Ta(n.options)}}visitAnimateRef(n,e){return{type:me.AnimateRef,animation:this.visitReference(n.animation,e),options:Ta(n.options)}}visitQuery(n,e){let i=e.currentQuerySelector,r=n.options||{};e.queryCount++,e.currentQuery=n;let[o,s]=k9(n.selector);e.currentQuerySelector=i.length?i+" "+o:o,Qn(e.collectedStyles,e.currentQuerySelector,new Map);let a=Kn(this,Sc(n.animation),e);return e.currentQuery=null,e.currentQuerySelector=i,{type:me.Query,selector:o,limit:r.limit||0,optional:!!r.optional,includeSelf:s,animation:a,originalSelector:n.selector,options:Ta(n.options)}}visitStagger(n,e){e.currentQuery||e.errors.push(AP());let i=n.timings==="full"?{duration:0,delay:0,easing:"full"}:Vd(n.timings,e.errors,!0);return{type:me.Stagger,animation:Kn(this,Sc(n.animation),e),timings:i,options:null}}};function k9(t){let n=!!t.split(/\s*,\s*/).find(e=>e==aO);return n&&(t=t.replace(I9,"")),t=t.replace(/@\*/g,Fd).replace(/@\w+/g,e=>Fd+"-"+e.slice(1)).replace(/:animating/g,Vg),[t,n]}function A9(t){return t?E({},t):null}var Jw=class{errors;queryCount=0;depCount=0;currentTransition=null;currentQuery=null;currentQuerySelector=null;currentAnimateTimings=null;currentTime=0;collectedStyles=new Map;options=null;unsupportedCSSPropertiesFound=new Set;constructor(n){this.errors=n}};function P9(t){if(typeof t=="string")return null;let n=null;if(Array.isArray(t))t.forEach(e=>{if(e instanceof Map&&e.has("offset")){let i=e;n=parseFloat(i.get("offset")),i.delete("offset")}});else if(t instanceof Map&&t.has("offset")){let e=t;n=parseFloat(e.get("offset")),e.delete("offset")}return n}function O9(t,n){if(t.hasOwnProperty("duration"))return t;if(typeof t=="number"){let o=Vd(t,n).duration;return Ww(o,0,"")}let e=t;if(e.split(/\s+/).some(o=>o.charAt(0)=="{"&&o.charAt(1)=="{")){let o=Ww(0,0,"");return o.dynamic=!0,o.strValue=e,o}let r=Vd(e,n);return Ww(r.duration,r.delay,r.easing)}function Ta(t){return t?(t=E({},t),t.params&&(t.params=A9(t.params))):t={},t}function Ww(t,n,e){return{duration:t,delay:n,easing:e}}function cD(t,n,e,i,r,o,s=null,a=!1){return{type:1,element:t,keyframes:n,preStyleProps:e,postStyleProps:i,duration:r,delay:o,totalTime:r+o,easing:s,subTimeline:a}}var Hd=class{_map=new Map;get(n){return this._map.get(n)||[]}append(n,e){let i=this._map.get(n);i||this._map.set(n,i=[]),i.push(...e)}has(n){return this._map.has(n)}clear(){this._map.clear()}},R9=1,N9=":enter",L9=new RegExp(N9,"g"),F9=":leave",V9=new RegExp(F9,"g");function cO(t,n,e,i,r,o=new Map,s=new Map,a,l,c=[]){return new Xw().buildKeyframes(t,n,e,i,r,o,s,a,l,c)}var Xw=class{buildKeyframes(n,e,i,r,o,s,a,l,c,u=[]){c=c||new Hd;let p=new eD(n,e,c,r,o,u,[]);p.options=l;let v=l.delay?Yr(l.delay):0;p.currentTimeline.delayNextStep(v),p.currentTimeline.setStyles([s],null,p.errors,l),Kn(this,i,p);let _=p.timelines.filter(M=>M.containsAnimation());if(_.length&&a.size){let M;for(let x=_.length-1;x>=0;x--){let P=_[x];if(P.element===e){M=P;break}}M&&!M.allowOnlyTimelineStyles()&&M.setStyles([a],null,p.errors,l)}return _.length?_.map(M=>M.buildKeyframes()):[cD(e,[],[],[],0,v,"",!1)]}visitTrigger(n,e){}visitState(n,e){}visitTransition(n,e){}visitAnimateChild(n,e){let i=e.subInstructions.get(e.element);if(i){let r=e.createSubContext(n.options),o=e.currentTimeline.currentTime,s=this._visitSubInstructions(i,r,r.options);o!=s&&e.transformIntoNewTimeline(s)}e.previousNode=n}visitAnimateRef(n,e){let i=e.createSubContext(n.options);i.transformIntoNewTimeline(),this._applyAnimationRefDelays([n.options,n.animation.options],e,i),this.visitReference(n.animation,i),e.transformIntoNewTimeline(i.currentTimeline.currentTime),e.previousNode=n}_applyAnimationRefDelays(n,e,i){for(let r of n){let o=r?.delay;if(o){let s=typeof o=="number"?o:Yr(Tc(o,r?.params??{},e.errors));i.delayNextStep(s)}}}_visitSubInstructions(n,e,i){let o=e.currentTimeline.currentTime,s=i.duration!=null?Yr(i.duration):null,a=i.delay!=null?Yr(i.delay):null;return s!==0&&n.forEach(l=>{let c=e.appendInstructionToTimeline(l,s,a);o=Math.max(o,c.duration+c.delay)}),o}visitReference(n,e){e.updateOptions(n.options,!0),Kn(this,n.animation,e),e.previousNode=n}visitSequence(n,e){let i=e.subContextCount,r=e,o=n.options;if(o&&(o.params||o.delay)&&(r=e.createSubContext(o),r.transformIntoNewTimeline(),o.delay!=null)){r.previousNode.type==me.Style&&(r.currentTimeline.snapshotCurrentStyles(),r.previousNode=Gg);let s=Yr(o.delay);r.delayNextStep(s)}n.steps.length&&(n.steps.forEach(s=>Kn(this,s,r)),r.currentTimeline.applyStylesToKeyframe(),r.subContextCount>i&&r.transformIntoNewTimeline()),e.previousNode=n}visitGroup(n,e){let i=[],r=e.currentTimeline.currentTime,o=n.options&&n.options.delay?Yr(n.options.delay):0;n.steps.forEach(s=>{let a=e.createSubContext(n.options);o&&a.delayNextStep(o),Kn(this,s,a),r=Math.max(r,a.currentTimeline.currentTime),i.push(a.currentTimeline)}),i.forEach(s=>e.currentTimeline.mergeTimelineCollectedStyles(s)),e.transformIntoNewTimeline(r),e.previousNode=n}_visitTiming(n,e){if(n.dynamic){let i=n.strValue,r=e.params?Tc(i,e.params,e.errors):i;return Vd(r,e.errors)}else return{duration:n.duration,delay:n.delay,easing:n.easing}}visitAnimate(n,e){let i=e.currentAnimateTimings=this._visitTiming(n.timings,e),r=e.currentTimeline;i.delay&&(e.incrementTime(i.delay),r.snapshotCurrentStyles());let o=n.style;o.type==me.Keyframes?this.visitKeyframes(o,e):(e.incrementTime(i.duration),this.visitStyle(o,e),r.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=n}visitStyle(n,e){let i=e.currentTimeline,r=e.currentAnimateTimings;!r&&i.hasCurrentStyleProperties()&&i.forwardFrame();let o=r&&r.easing||n.easing;n.isEmptyStep?i.applyEmptyStep(o):i.setStyles(n.styles,o,e.errors,e.options),e.previousNode=n}visitKeyframes(n,e){let i=e.currentAnimateTimings,r=e.currentTimeline.duration,o=i.duration,a=e.createSubContext().currentTimeline;a.easing=i.easing,n.styles.forEach(l=>{let c=l.offset||0;a.forwardTime(c*o),a.setStyles(l.styles,l.easing,e.errors,e.options),a.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(a),e.transformIntoNewTimeline(r+o),e.previousNode=n}visitQuery(n,e){let i=e.currentTimeline.currentTime,r=n.options||{},o=r.delay?Yr(r.delay):0;o&&(e.previousNode.type===me.Style||i==0&&e.currentTimeline.hasCurrentStyleProperties())&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=Gg);let s=i,a=e.invokeQuery(n.selector,n.originalSelector,n.limit,n.includeSelf,!!r.optional,e.errors);e.currentQueryTotal=a.length;let l=null;a.forEach((c,u)=>{e.currentQueryIndex=u;let p=e.createSubContext(n.options,c);o&&p.delayNextStep(o),c===e.element&&(l=p.currentTimeline),Kn(this,n.animation,p),p.currentTimeline.applyStylesToKeyframe();let v=p.currentTimeline.currentTime;s=Math.max(s,v)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),l&&(e.currentTimeline.mergeTimelineCollectedStyles(l),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=n}visitStagger(n,e){let i=e.parentContext,r=e.currentTimeline,o=n.timings,s=Math.abs(o.duration),a=s*(e.currentQueryTotal-1),l=s*e.currentQueryIndex;switch(o.duration<0?"reverse":o.easing){case"reverse":l=a-l;break;case"full":l=i.currentStaggerTime;break}let u=e.currentTimeline;l&&u.delayNextStep(l);let p=u.currentTime;Kn(this,n.animation,e),e.previousNode=n,i.currentStaggerTime=r.currentTime-p+(r.startTime-i.currentTimeline.startTime)}},Gg={},eD=class t{_driver;element;subInstructions;_enterClassName;_leaveClassName;errors;timelines;parentContext=null;currentTimeline;currentAnimateTimings=null;previousNode=Gg;subContextCount=0;options={};currentQueryIndex=0;currentQueryTotal=0;currentStaggerTime=0;constructor(n,e,i,r,o,s,a,l){this._driver=n,this.element=e,this.subInstructions=i,this._enterClassName=r,this._leaveClassName=o,this.errors=s,this.timelines=a,this.currentTimeline=l||new qg(this._driver,e,0),a.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(n,e){if(!n)return;let i=n,r=this.options;i.duration!=null&&(r.duration=Yr(i.duration)),i.delay!=null&&(r.delay=Yr(i.delay));let o=i.params;if(o){let s=r.params;s||(s=this.options.params={}),Object.keys(o).forEach(a=>{(!e||!s.hasOwnProperty(a))&&(s[a]=Tc(o[a],s,this.errors))})}}_copyOptions(){let n={};if(this.options){let e=this.options.params;if(e){let i=n.params={};Object.keys(e).forEach(r=>{i[r]=e[r]})}}return n}createSubContext(n=null,e,i){let r=e||this.element,o=new t(this._driver,r,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(r,i||0));return o.previousNode=this.previousNode,o.currentAnimateTimings=this.currentAnimateTimings,o.options=this._copyOptions(),o.updateOptions(n),o.currentQueryIndex=this.currentQueryIndex,o.currentQueryTotal=this.currentQueryTotal,o.parentContext=this,this.subContextCount++,o}transformIntoNewTimeline(n){return this.previousNode=Gg,this.currentTimeline=this.currentTimeline.fork(this.element,n),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(n,e,i){let r={duration:e??n.duration,delay:this.currentTimeline.currentTime+(i??0)+n.delay,easing:""},o=new tD(this._driver,n.element,n.keyframes,n.preStyleProps,n.postStyleProps,r,n.stretchStartingKeyframe);return this.timelines.push(o),r}incrementTime(n){this.currentTimeline.forwardTime(this.currentTimeline.duration+n)}delayNextStep(n){n>0&&this.currentTimeline.delayNextStep(n)}invokeQuery(n,e,i,r,o,s){let a=[];if(r&&a.push(this.element),n.length>0){n=n.replace(L9,"."+this._enterClassName),n=n.replace(V9,"."+this._leaveClassName);let l=i!=1,c=this._driver.query(this.element,n,l);i!==0&&(c=i<0?c.slice(c.length+i,c.length):c.slice(0,i)),a.push(...c)}return!o&&a.length==0&&s.push(PP(e)),a}},qg=class t{_driver;element;startTime;_elementTimelineStylesLookup;duration=0;easing=null;_previousKeyframe=new Map;_currentKeyframe=new Map;_keyframes=new Map;_styleSummary=new Map;_localTimelineStyles=new Map;_globalTimelineStyles;_pendingStyles=new Map;_backFill=new Map;_currentEmptyStepKeyframe=null;constructor(n,e,i,r){this._driver=n,this.element=e,this.startTime=i,this._elementTimelineStylesLookup=r,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.hasCurrentStyleProperties();default:return!0}}hasCurrentStyleProperties(){return this._currentKeyframe.size>0}get currentTime(){return this.startTime+this.duration}delayNextStep(n){let e=this._keyframes.size===1&&this._pendingStyles.size;this.duration||e?(this.forwardTime(this.currentTime+n),e&&this.snapshotCurrentStyles()):this.startTime+=n}fork(n,e){return this.applyStylesToKeyframe(),new t(this._driver,n,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=new Map,this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=R9,this._loadKeyframe()}forwardTime(n){this.applyStylesToKeyframe(),this.duration=n,this._loadKeyframe()}_updateStyle(n,e){this._localTimelineStyles.set(n,e),this._globalTimelineStyles.set(n,e),this._styleSummary.set(n,{time:this.currentTime,value:e})}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(n){n&&this._previousKeyframe.set("easing",n);for(let[e,i]of this._globalTimelineStyles)this._backFill.set(e,i||ki),this._currentKeyframe.set(e,ki);this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(n,e,i,r){e&&this._previousKeyframe.set("easing",e);let o=r&&r.params||{},s=j9(n,this._globalTimelineStyles);for(let[a,l]of s){let c=Tc(l,o,i);this._pendingStyles.set(a,c),this._localTimelineStyles.has(a)||this._backFill.set(a,this._globalTimelineStyles.get(a)??ki),this._updateStyle(a,c)}}applyStylesToKeyframe(){this._pendingStyles.size!=0&&(this._pendingStyles.forEach((n,e)=>{this._currentKeyframe.set(e,n)}),this._pendingStyles.clear(),this._localTimelineStyles.forEach((n,e)=>{this._currentKeyframe.has(e)||this._currentKeyframe.set(e,n)}))}snapshotCurrentStyles(){for(let[n,e]of this._localTimelineStyles)this._pendingStyles.set(n,e),this._updateStyle(n,e)}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){let n=[];for(let e in this._currentKeyframe)n.push(e);return n}mergeTimelineCollectedStyles(n){n._styleSummary.forEach((e,i)=>{let r=this._styleSummary.get(i);(!r||e.time>r.time)&&this._updateStyle(i,e.value)})}buildKeyframes(){this.applyStylesToKeyframe();let n=new Set,e=new Set,i=this._keyframes.size===1&&this.duration===0,r=[];this._keyframes.forEach((a,l)=>{let c=new Map([...this._backFill,...a]);c.forEach((u,p)=>{u===$l?n.add(p):u===ki&&e.add(p)}),i||c.set("offset",l/this.duration),r.push(c)});let o=[...n.values()],s=[...e.values()];if(i){let a=r[0],l=new Map(a);a.set("offset",0),l.set("offset",1),r=[a,l]}return cD(this.element,r,o,s,this.duration,this.startTime,this.easing,!1)}},tD=class extends qg{keyframes;preStyleProps;postStyleProps;_stretchStartingKeyframe;timings;constructor(n,e,i,r,o,s,a=!1){super(n,e,s.delay),this.keyframes=i,this.preStyleProps=r,this.postStyleProps=o,this._stretchStartingKeyframe=a,this.timings={duration:s.duration,delay:s.delay,easing:s.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let n=this.keyframes,{delay:e,duration:i,easing:r}=this.timings;if(this._stretchStartingKeyframe&&e){let o=[],s=i+e,a=e/s,l=new Map(n[0]);l.set("offset",0),o.push(l);let c=new Map(n[0]);c.set("offset",XP(a)),o.push(c);let u=n.length-1;for(let p=1;p<=u;p++){let v=new Map(n[p]),_=v.get("offset"),M=e+_*i;v.set("offset",XP(M/s)),o.push(v)}i=s,e=0,r="",n=o}return cD(this.element,n,this.preStyleProps,this.postStyleProps,i,e,r,!0)}};function XP(t,n=3){let e=Math.pow(10,n-1);return Math.round(t*e)/e}function j9(t,n){let e=new Map,i;return t.forEach(r=>{if(r==="*"){i??=n.keys();for(let o of i)e.set(o,ki)}else for(let[o,s]of r)e.set(o,s)}),e}function eO(t,n,e,i,r,o,s,a,l,c,u,p,v){return{type:0,element:t,triggerName:n,isRemovalTransition:r,fromState:e,fromStyles:o,toState:i,toStyles:s,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:u,totalTime:p,errors:v}}var Gw={},Qg=class{_triggerName;ast;_stateStyles;constructor(n,e,i){this._triggerName=n,this.ast=e,this._stateStyles=i}match(n,e,i,r){return H9(this.ast.matchers,n,e,i,r)}buildStyles(n,e,i){let r=this._stateStyles.get("*");return n!==void 0&&(r=this._stateStyles.get(n?.toString())||r),r?r.buildStyles(e,i):new Map}build(n,e,i,r,o,s,a,l,c,u){let p=[],v=this.ast.options&&this.ast.options.params||Gw,_=a&&a.params||Gw,M=this.buildStyles(i,_,p),x=l&&l.params||Gw,P=this.buildStyles(r,x,p),F=new Set,K=new Map,ne=new Map,Ue=r==="void",nn={params:uO(x,v),delay:this.ast.options?.delay},Rn=u?[]:cO(n,e,this.ast.animation,o,s,M,P,nn,c,p),Wt=0;return Rn.forEach(gn=>{Wt=Math.max(gn.duration+gn.delay,Wt)}),p.length?eO(e,this._triggerName,i,r,Ue,M,P,[],[],K,ne,Wt,p):(Rn.forEach(gn=>{let _s=gn.element,Pa=Qn(K,_s,new Set);gn.preStyleProps.forEach(ys=>Pa.add(ys));let zD=Qn(ne,_s,new Set);gn.postStyleProps.forEach(ys=>zD.add(ys)),_s!==e&&F.add(_s)}),eO(e,this._triggerName,i,r,Ue,M,P,Rn,[...F.values()],K,ne,Wt))}};function H9(t,n,e,i,r){return t.some(o=>o(n,e,i,r))}function uO(t,n){let e=E({},n);return Object.entries(t).forEach(([i,r])=>{r!=null&&(e[i]=r)}),e}var nD=class{styles;defaultParams;normalizer;constructor(n,e,i){this.styles=n,this.defaultParams=e,this.normalizer=i}buildStyles(n,e){let i=new Map,r=uO(n,this.defaultParams);return this.styles.styles.forEach(o=>{typeof o!="string"&&o.forEach((s,a)=>{s&&(s=Tc(s,r,e));let l=this.normalizer.normalizePropertyName(a,e);s=this.normalizer.normalizeStyleValue(a,l,s,e),i.set(a,s)})}),i}};function B9(t,n,e){return new iD(t,n,e)}var iD=class{name;ast;_normalizer;transitionFactories=[];fallbackTransition;states=new Map;constructor(n,e,i){this.name=n,this.ast=e,this._normalizer=i,e.states.forEach(r=>{let o=r.options&&r.options.params||{};this.states.set(r.name,new nD(r.style,o,i))}),tO(this.states,"true","1"),tO(this.states,"false","0"),e.transitions.forEach(r=>{this.transitionFactories.push(new Qg(n,r,this.states))}),this.fallbackTransition=U9(n,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(n,e,i,r){return this.transitionFactories.find(s=>s.match(n,e,i,r))||null}matchStyles(n,e,i){return this.fallbackTransition.buildStyles(n,e,i)}};function U9(t,n,e){let i=[(s,a)=>!0],r={type:me.Sequence,steps:[],options:null},o={type:me.Transition,animation:r,matchers:i,options:null,queryCount:0,depCount:0};return new Qg(t,o,n)}function tO(t,n,e){t.has(n)?t.has(e)||t.set(e,t.get(n)):t.has(e)&&t.set(n,t.get(e))}var $9=new Hd,rD=class{bodyNode;_driver;_normalizer;_animations=new Map;_playersById=new Map;players=[];constructor(n,e,i){this.bodyNode=n,this._driver=e,this._normalizer=i}register(n,e){let i=[],r=[],o=lO(this._driver,e,i,r);if(i.length)throw LP(i);this._animations.set(n,o)}_buildPlayer(n,e,i){let r=n.element,o=Vw(this._normalizer,n.keyframes,e,i);return this._driver.animate(r,o,n.duration,n.delay,n.easing,[],!0)}create(n,e,i={}){let r=[],o=this._animations.get(n),s,a=new Map;if(o?(s=cO(this._driver,e,o,$w,Fg,new Map,new Map,i,$9,r),s.forEach(u=>{let p=Qn(a,u.element,new Map);u.postStyleProps.forEach(v=>p.set(v,null))})):(r.push(FP()),s=[]),r.length)throw VP(r);a.forEach((u,p)=>{u.forEach((v,_)=>{u.set(_,this._driver.computeStyle(p,_,ki))})});let l=s.map(u=>{let p=a.get(u.element);return this._buildPlayer(u,new Map,p)}),c=vo(l);return this._playersById.set(n,c),c.onDestroy(()=>this.destroy(n)),this.players.push(c),c}destroy(n){let e=this._getPlayer(n);e.destroy(),this._playersById.delete(n);let i=this.players.indexOf(e);i>=0&&this.players.splice(i,1)}_getPlayer(n){let e=this._playersById.get(n);if(!e)throw jP(n);return e}listen(n,e,i,r){let o=Ng(e,"","","");return Rg(this._getPlayer(n),i,o,r),()=>{}}command(n,e,i,r){if(i=="register"){this.register(n,r[0]);return}if(i=="create"){let s=r[0]||{};this.create(n,e,s);return}let o=this._getPlayer(n);switch(i){case"play":o.play();break;case"pause":o.pause();break;case"reset":o.reset();break;case"restart":o.restart();break;case"finish":o.finish();break;case"init":o.init();break;case"setPosition":o.setPosition(parseFloat(r[0]));break;case"destroy":this.destroy(n);break}}},nO="ng-animate-queued",z9=".ng-animate-queued",qw="ng-animate-disabled",Y9=".ng-animate-disabled",W9="ng-star-inserted",G9=".ng-star-inserted",q9=[],dO={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},Q9={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},fr="__ng_removed",Bd=class{namespaceId;value;options;get params(){return this.options.params}constructor(n,e=""){this.namespaceId=e;let i=n&&n.hasOwnProperty("value"),r=i?n.value:n;if(this.value=Z9(r),i){let o=n,{value:s}=o,a=m_(o,["value"]);this.options=a}else this.options={};this.options.params||(this.options.params={})}absorbOptions(n){let e=n.params;if(e){let i=this.options.params;Object.keys(e).forEach(r=>{i[r]==null&&(i[r]=e[r])})}}},jd="void",Qw=new Bd(jd),oD=class{id;hostElement;_engine;players=[];_triggers=new Map;_queue=[];_elementListeners=new Map;_hostClassName;constructor(n,e,i){this.id=n,this.hostElement=e,this._engine=i,this._hostClassName="ng-tns-"+n,Ui(e,this._hostClassName)}listen(n,e,i,r){if(!this._triggers.has(e))throw HP(i,e);if(i==null||i.length==0)throw BP(e);if(!J9(i))throw UP(i,e);let o=Qn(this._elementListeners,n,[]),s={name:e,phase:i,callback:r};o.push(s);let a=Qn(this._engine.statesByElement,n,new Map);return a.has(e)||(Ui(n,Ld),Ui(n,Ld+"-"+e),a.set(e,Qw)),()=>{this._engine.afterFlush(()=>{let l=o.indexOf(s);l>=0&&o.splice(l,1),this._triggers.has(e)||a.delete(e)})}}register(n,e){return this._triggers.has(n)?!1:(this._triggers.set(n,e),!0)}_getTrigger(n){let e=this._triggers.get(n);if(!e)throw $P(n);return e}trigger(n,e,i,r=!0){let o=this._getTrigger(e),s=new Ud(this.id,e,n),a=this._engine.statesByElement.get(n);a||(Ui(n,Ld),Ui(n,Ld+"-"+e),this._engine.statesByElement.set(n,a=new Map));let l=a.get(e),c=new Bd(i,this.id);if(!(i&&i.hasOwnProperty("value"))&&l&&c.absorbOptions(l.options),a.set(e,c),l||(l=Qw),!(c.value===jd)&&l.value===c.value){if(!tq(l.params,c.params)){let x=[],P=o.matchStyles(l.value,l.params,x),F=o.matchStyles(c.value,c.params,x);x.length?this._engine.reportError(x):this._engine.afterFlush(()=>{fs(n,P),dr(n,F)})}return}let v=Qn(this._engine.playersByElement,n,[]);v.forEach(x=>{x.namespaceId==this.id&&x.triggerName==e&&x.queued&&x.destroy()});let _=o.matchTransition(l.value,c.value,n,c.params),M=!1;if(!_){if(!r)return;_=o.fallbackTransition,M=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:n,triggerName:e,transition:_,fromState:l,toState:c,player:s,isFallbackTransition:M}),M||(Ui(n,nO),s.onStart(()=>{Ec(n,nO)})),s.onDone(()=>{let x=this.players.indexOf(s);x>=0&&this.players.splice(x,1);let P=this._engine.playersByElement.get(n);if(P){let F=P.indexOf(s);F>=0&&P.splice(F,1)}}),this.players.push(s),v.push(s),s}deregister(n){this._triggers.delete(n),this._engine.statesByElement.forEach(e=>e.delete(n)),this._elementListeners.forEach((e,i)=>{this._elementListeners.set(i,e.filter(r=>r.name!=n))})}clearElementCache(n){this._engine.statesByElement.delete(n),this._elementListeners.delete(n);let e=this._engine.playersByElement.get(n);e&&(e.forEach(i=>i.destroy()),this._engine.playersByElement.delete(n))}_signalRemovalForInnerTriggers(n,e){let i=this._engine.driver.query(n,Fd,!0);i.forEach(r=>{if(r[fr])return;let o=this._engine.fetchNamespacesByElement(r);o.size?o.forEach(s=>s.triggerLeaveAnimation(r,e,!1,!0)):this.clearElementCache(r)}),this._engine.afterFlushAnimationsDone(()=>i.forEach(r=>this.clearElementCache(r)))}triggerLeaveAnimation(n,e,i,r){let o=this._engine.statesByElement.get(n),s=new Map;if(o){let a=[];if(o.forEach((l,c)=>{if(s.set(c,l.value),this._triggers.has(c)){let u=this.trigger(n,c,jd,r);u&&a.push(u)}}),a.length)return this._engine.markElementAsRemoved(this.id,n,!0,e,s),i&&vo(a).onDone(()=>this._engine.processLeaveNode(n)),!0}return!1}prepareLeaveAnimationListeners(n){let e=this._elementListeners.get(n),i=this._engine.statesByElement.get(n);if(e&&i){let r=new Set;e.forEach(o=>{let s=o.name;if(r.has(s))return;r.add(s);let l=this._triggers.get(s).fallbackTransition,c=i.get(s)||Qw,u=new Bd(jd),p=new Ud(this.id,s,n);this._engine.totalQueuedPlayers++,this._queue.push({element:n,triggerName:s,transition:l,fromState:c,toState:u,player:p,isFallbackTransition:!0})})}}removeNode(n,e){let i=this._engine;if(n.childElementCount&&this._signalRemovalForInnerTriggers(n,e),this.triggerLeaveAnimation(n,e,!0))return;let r=!1;if(i.totalAnimations){let o=i.players.length?i.playersByQueriedElement.get(n):[];if(o&&o.length)r=!0;else{let s=n;for(;s=s.parentNode;)if(i.statesByElement.get(s)){r=!0;break}}}if(this.prepareLeaveAnimationListeners(n),r)i.markElementAsRemoved(this.id,n,!1,e);else{let o=n[fr];(!o||o===dO)&&(i.afterFlush(()=>this.clearElementCache(n)),i.destroyInnerAnimations(n),i._onRemovalComplete(n,e))}}insertNode(n,e){Ui(n,this._hostClassName)}drainQueuedTransitions(n){let e=[];return this._queue.forEach(i=>{let r=i.player;if(r.destroyed)return;let o=i.element,s=this._elementListeners.get(o);s&&s.forEach(a=>{if(a.name==i.triggerName){let l=Ng(o,i.triggerName,i.fromState.value,i.toState.value);l._data=n,Rg(i.player,a.phase,l,a.callback)}}),r.markedForDestroy?this._engine.afterFlush(()=>{r.destroy()}):e.push(i)}),this._queue=[],e.sort((i,r)=>{let o=i.transition.ast.depCount,s=r.transition.ast.depCount;return o==0||s==0?o-s:this._engine.driver.containsElement(i.element,r.element)?1:-1})}destroy(n){this.players.forEach(e=>e.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,n)}},sD=class{bodyNode;driver;_normalizer;players=[];newHostElements=new Map;playersByElement=new Map;playersByQueriedElement=new Map;statesByElement=new Map;disabledNodes=new Set;totalAnimations=0;totalQueuedPlayers=0;_namespaceLookup={};_namespaceList=[];_flushFns=[];_whenQuietFns=[];namespacesByHostElement=new Map;collectedEnterElements=[];collectedLeaveElements=[];onRemovalComplete=(n,e)=>{};_onRemovalComplete(n,e){this.onRemovalComplete(n,e)}constructor(n,e,i){this.bodyNode=n,this.driver=e,this._normalizer=i}get queuedPlayers(){let n=[];return this._namespaceList.forEach(e=>{e.players.forEach(i=>{i.queued&&n.push(i)})}),n}createNamespace(n,e){let i=new oD(n,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?this._balanceNamespaceList(i,e):(this.newHostElements.set(e,i),this.collectEnterElement(e)),this._namespaceLookup[n]=i}_balanceNamespaceList(n,e){let i=this._namespaceList,r=this.namespacesByHostElement;if(i.length-1>=0){let s=!1,a=this.driver.getParentElement(e);for(;a;){let l=r.get(a);if(l){let c=i.indexOf(l);i.splice(c+1,0,n),s=!0;break}a=this.driver.getParentElement(a)}s||i.unshift(n)}else i.push(n);return r.set(e,n),n}register(n,e){let i=this._namespaceLookup[n];return i||(i=this.createNamespace(n,e)),i}registerTrigger(n,e,i){let r=this._namespaceLookup[n];r&&r.register(e,i)&&this.totalAnimations++}destroy(n,e){n&&(this.afterFlush(()=>{}),this.afterFlushAnimationsDone(()=>{let i=this._fetchNamespace(n);this.namespacesByHostElement.delete(i.hostElement);let r=this._namespaceList.indexOf(i);r>=0&&this._namespaceList.splice(r,1),i.destroy(e),delete this._namespaceLookup[n]}))}_fetchNamespace(n){return this._namespaceLookup[n]}fetchNamespacesByElement(n){let e=new Set,i=this.statesByElement.get(n);if(i){for(let r of i.values())if(r.namespaceId){let o=this._fetchNamespace(r.namespaceId);o&&e.add(o)}}return e}trigger(n,e,i,r){if($g(e)){let o=this._fetchNamespace(n);if(o)return o.trigger(e,i,r),!0}return!1}insertNode(n,e,i,r){if(!$g(e))return;let o=e[fr];if(o&&o.setForRemoval){o.setForRemoval=!1,o.setForMove=!0;let s=this.collectedLeaveElements.indexOf(e);s>=0&&this.collectedLeaveElements.splice(s,1)}if(n){let s=this._fetchNamespace(n);s&&s.insertNode(e,i)}r&&this.collectEnterElement(e)}collectEnterElement(n){this.collectedEnterElements.push(n)}markElementAsDisabled(n,e){e?this.disabledNodes.has(n)||(this.disabledNodes.add(n),Ui(n,qw)):this.disabledNodes.has(n)&&(this.disabledNodes.delete(n),Ec(n,qw))}removeNode(n,e,i){if($g(e)){let r=n?this._fetchNamespace(n):null;r?r.removeNode(e,i):this.markElementAsRemoved(n,e,!1,i);let o=this.namespacesByHostElement.get(e);o&&o.id!==n&&o.removeNode(e,i)}else this._onRemovalComplete(e,i)}markElementAsRemoved(n,e,i,r,o){this.collectedLeaveElements.push(e),e[fr]={namespaceId:n,setForRemoval:r,hasAnimation:i,removedBeforeQueried:!1,previousTriggersValues:o}}listen(n,e,i,r,o){return $g(e)?this._fetchNamespace(n).listen(e,i,r,o):()=>{}}_buildInstruction(n,e,i,r,o){return n.transition.build(this.driver,n.element,n.fromState.value,n.toState.value,i,r,n.fromState.options,n.toState.options,e,o)}destroyInnerAnimations(n){let e=this.driver.query(n,Fd,!0);e.forEach(i=>this.destroyActiveAnimationsForElement(i)),this.playersByQueriedElement.size!=0&&(e=this.driver.query(n,Vg,!0),e.forEach(i=>this.finishActiveQueriedAnimationOnElement(i)))}destroyActiveAnimationsForElement(n){let e=this.playersByElement.get(n);e&&e.forEach(i=>{i.queued?i.markedForDestroy=!0:i.destroy()})}finishActiveQueriedAnimationOnElement(n){let e=this.playersByQueriedElement.get(n);e&&e.forEach(i=>i.finish())}whenRenderingDone(){return new Promise(n=>{if(this.players.length)return vo(this.players).onDone(()=>n());n()})}processLeaveNode(n){let e=n[fr];if(e&&e.setForRemoval){if(n[fr]=dO,e.namespaceId){this.destroyInnerAnimations(n);let i=this._fetchNamespace(e.namespaceId);i&&i.clearElementCache(n)}this._onRemovalComplete(n,e.setForRemoval)}n.classList?.contains(qw)&&this.markElementAsDisabled(n,!1),this.driver.query(n,Y9,!0).forEach(i=>{this.markElementAsDisabled(i,!1)})}flush(n=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((i,r)=>this._balanceNamespaceList(i,r)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let i=0;ii()),this._flushFns=[],this._whenQuietFns.length){let i=this._whenQuietFns;this._whenQuietFns=[],e.length?vo(e).onDone(()=>{i.forEach(r=>r())}):i.forEach(r=>r())}}reportError(n){throw zP(n)}_flushAnimations(n,e){let i=new Hd,r=[],o=new Map,s=[],a=new Map,l=new Map,c=new Map,u=new Set;this.disabledNodes.forEach(W=>{u.add(W);let X=this.driver.query(W,z9,!0);for(let re=0;re{let re=$w+x++;M.set(X,re),W.forEach(Fe=>Ui(Fe,re))});let P=[],F=new Set,K=new Set;for(let W=0;WF.add(Fe)):K.add(X))}let ne=new Map,Ue=oO(v,Array.from(F));Ue.forEach((W,X)=>{let re=Fg+x++;ne.set(X,re),W.forEach(Fe=>Ui(Fe,re))}),n.push(()=>{_.forEach((W,X)=>{let re=M.get(X);W.forEach(Fe=>Ec(Fe,re))}),Ue.forEach((W,X)=>{let re=ne.get(X);W.forEach(Fe=>Ec(Fe,re))}),P.forEach(W=>{this.processLeaveNode(W)})});let nn=[],Rn=[];for(let W=this._namespaceList.length-1;W>=0;W--)this._namespaceList[W].drainQueuedTransitions(e).forEach(re=>{let Fe=re.player,rn=re.element;if(nn.push(Fe),this.collectedEnterElements.length){let _n=rn[fr];if(_n&&_n.setForMove){if(_n.previousTriggersValues&&_n.previousTriggersValues.has(re.triggerName)){let vs=_n.previousTriggersValues.get(re.triggerName),mi=this.statesByElement.get(re.element);if(mi&&mi.has(re.triggerName)){let Kd=mi.get(re.triggerName);Kd.value=vs,mi.set(re.triggerName,Kd)}}Fe.destroy();return}}let hr=!p||!this.driver.containsElement(p,rn),Zn=ne.get(rn),Do=M.get(rn),Dt=this._buildInstruction(re,i,Do,Zn,hr);if(Dt.errors&&Dt.errors.length){Rn.push(Dt);return}if(hr){Fe.onStart(()=>fs(rn,Dt.fromStyles)),Fe.onDestroy(()=>dr(rn,Dt.toStyles)),r.push(Fe);return}if(re.isFallbackTransition){Fe.onStart(()=>fs(rn,Dt.fromStyles)),Fe.onDestroy(()=>dr(rn,Dt.toStyles)),r.push(Fe);return}let GD=[];Dt.timelines.forEach(_n=>{_n.stretchStartingKeyframe=!0,this.disabledNodes.has(_n.element)||GD.push(_n)}),Dt.timelines=GD,i.append(rn,Dt.timelines);let PR={instruction:Dt,player:Fe,element:rn};s.push(PR),Dt.queriedElements.forEach(_n=>Qn(a,_n,[]).push(Fe)),Dt.preStyleProps.forEach((_n,vs)=>{if(_n.size){let mi=l.get(vs);mi||l.set(vs,mi=new Set),_n.forEach((Kd,p_)=>mi.add(p_))}}),Dt.postStyleProps.forEach((_n,vs)=>{let mi=c.get(vs);mi||c.set(vs,mi=new Set),_n.forEach((Kd,p_)=>mi.add(p_))})});if(Rn.length){let W=[];Rn.forEach(X=>{W.push(YP(X.triggerName,X.errors))}),nn.forEach(X=>X.destroy()),this.reportError(W)}let Wt=new Map,gn=new Map;s.forEach(W=>{let X=W.element;i.has(X)&&(gn.set(X,X),this._beforeAnimationBuild(W.player.namespaceId,W.instruction,Wt))}),r.forEach(W=>{let X=W.element;this._getPreviousPlayers(X,!1,W.namespaceId,W.triggerName,null).forEach(Fe=>{Qn(Wt,X,[]).push(Fe),Fe.destroy()})});let _s=P.filter(W=>sO(W,l,c)),Pa=new Map;rO(Pa,this.driver,K,c,ki).forEach(W=>{sO(W,l,c)&&_s.push(W)});let ys=new Map;_.forEach((W,X)=>{rO(ys,this.driver,new Set(W),l,$l)}),_s.forEach(W=>{let X=Pa.get(W),re=ys.get(W);Pa.set(W,new Map([...X?.entries()??[],...re?.entries()??[]]))});let h_=[],YD=[],WD={};s.forEach(W=>{let{element:X,player:re,instruction:Fe}=W;if(i.has(X)){if(u.has(X)){re.onDestroy(()=>dr(X,Fe.toStyles)),re.disabled=!0,re.overrideTotalTime(Fe.totalTime),r.push(re);return}let rn=WD;if(gn.size>1){let Zn=X,Do=[];for(;Zn=Zn.parentNode;){let Dt=gn.get(Zn);if(Dt){rn=Dt;break}Do.push(Zn)}Do.forEach(Dt=>gn.set(Dt,rn))}let hr=this._buildAnimation(re.namespaceId,Fe,Wt,o,ys,Pa);if(re.setRealPlayer(hr),rn===WD)h_.push(re);else{let Zn=this.playersByElement.get(rn);Zn&&Zn.length&&(re.parentPlayer=vo(Zn)),r.push(re)}}else fs(X,Fe.fromStyles),re.onDestroy(()=>dr(X,Fe.toStyles)),YD.push(re),u.has(X)&&r.push(re)}),YD.forEach(W=>{let X=o.get(W.element);if(X&&X.length){let re=vo(X);W.setRealPlayer(re)}}),r.forEach(W=>{W.parentPlayer?W.syncPlayerEvents(W.parentPlayer):W.destroy()});for(let W=0;W!hr.destroyed);rn.length?X9(this,X,rn):this.processLeaveNode(X)}return P.length=0,h_.forEach(W=>{this.players.push(W),W.onDone(()=>{W.destroy();let X=this.players.indexOf(W);this.players.splice(X,1)}),W.play()}),h_}afterFlush(n){this._flushFns.push(n)}afterFlushAnimationsDone(n){this._whenQuietFns.push(n)}_getPreviousPlayers(n,e,i,r,o){let s=[];if(e){let a=this.playersByQueriedElement.get(n);a&&(s=a)}else{let a=this.playersByElement.get(n);if(a){let l=!o||o==jd;a.forEach(c=>{c.queued||!l&&c.triggerName!=r||s.push(c)})}}return(i||r)&&(s=s.filter(a=>!(i&&i!=a.namespaceId||r&&r!=a.triggerName))),s}_beforeAnimationBuild(n,e,i){let r=e.triggerName,o=e.element,s=e.isRemovalTransition?void 0:n,a=e.isRemovalTransition?void 0:r;for(let l of e.timelines){let c=l.element,u=c!==o,p=Qn(i,c,[]);this._getPreviousPlayers(c,u,s,a,e.toState).forEach(_=>{let M=_.getRealPlayer();M.beforeDestroy&&M.beforeDestroy(),_.destroy(),p.push(_)})}fs(o,e.fromStyles)}_buildAnimation(n,e,i,r,o,s){let a=e.triggerName,l=e.element,c=[],u=new Set,p=new Set,v=e.timelines.map(M=>{let x=M.element;u.add(x);let P=x[fr];if(P&&P.removedBeforeQueried)return new Lr(M.duration,M.delay);let F=x!==l,K=eq((i.get(x)||q9).map(Wt=>Wt.getRealPlayer())).filter(Wt=>{let gn=Wt;return gn.element?gn.element===x:!1}),ne=o.get(x),Ue=s.get(x),nn=Vw(this._normalizer,M.keyframes,ne,Ue),Rn=this._buildPlayer(M,nn,K);if(M.subTimeline&&r&&p.add(x),F){let Wt=new Ud(n,a,x);Wt.setRealPlayer(Rn),c.push(Wt)}return Rn});c.forEach(M=>{Qn(this.playersByQueriedElement,M.element,[]).push(M),M.onDone(()=>K9(this.playersByQueriedElement,M.element,M))}),u.forEach(M=>Ui(M,zw));let _=vo(v);return _.onDestroy(()=>{u.forEach(M=>Ec(M,zw)),dr(l,e.toStyles)}),p.forEach(M=>{Qn(r,M,[]).push(_)}),_}_buildPlayer(n,e,i){return e.length>0?this.driver.animate(n.element,e,n.duration,n.delay,n.easing,i):new Lr(n.duration,n.delay)}},Ud=class{namespaceId;triggerName;element;_player=new Lr;_containsRealPlayer=!1;_queuedCallbacks=new Map;destroyed=!1;parentPlayer=null;markedForDestroy=!1;disabled=!1;queued=!0;totalTime=0;constructor(n,e,i){this.namespaceId=n,this.triggerName=e,this.element=i}setRealPlayer(n){this._containsRealPlayer||(this._player=n,this._queuedCallbacks.forEach((e,i)=>{e.forEach(r=>Rg(n,i,void 0,r))}),this._queuedCallbacks.clear(),this._containsRealPlayer=!0,this.overrideTotalTime(n.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(n){this.totalTime=n}syncPlayerEvents(n){let e=this._player;e.triggerCallback&&n.onStart(()=>e.triggerCallback("start")),n.onDone(()=>this.finish()),n.onDestroy(()=>this.destroy())}_queueEvent(n,e){Qn(this._queuedCallbacks,n,[]).push(e)}onDone(n){this.queued&&this._queueEvent("done",n),this._player.onDone(n)}onStart(n){this.queued&&this._queueEvent("start",n),this._player.onStart(n)}onDestroy(n){this.queued&&this._queueEvent("destroy",n),this._player.onDestroy(n)}init(){this._player.init()}hasStarted(){return this.queued?!1:this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(n){this.queued||this._player.setPosition(n)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(n){let e=this._player;e.triggerCallback&&e.triggerCallback(n)}};function K9(t,n,e){let i=t.get(n);if(i){if(i.length){let r=i.indexOf(e);i.splice(r,1)}i.length==0&&t.delete(n)}return i}function Z9(t){return t??null}function $g(t){return t&&t.nodeType===1}function J9(t){return t=="start"||t=="done"}function iO(t,n){let e=t.style.display;return t.style.display=n??"none",e}function rO(t,n,e,i,r){let o=[];e.forEach(l=>o.push(iO(l)));let s=[];i.forEach((l,c)=>{let u=new Map;l.forEach(p=>{let v=n.computeStyle(c,p,r);u.set(p,v),(!v||v.length==0)&&(c[fr]=Q9,s.push(c))}),t.set(c,u)});let a=0;return e.forEach(l=>iO(l,o[a++])),s}function oO(t,n){let e=new Map;if(t.forEach(a=>e.set(a,[])),n.length==0)return e;let i=1,r=new Set(n),o=new Map;function s(a){if(!a)return i;let l=o.get(a);if(l)return l;let c=a.parentNode;return e.has(c)?l=c:r.has(c)?l=i:l=s(c),o.set(a,l),l}return n.forEach(a=>{let l=s(a);l!==i&&e.get(l).push(a)}),e}function Ui(t,n){t.classList?.add(n)}function Ec(t,n){t.classList?.remove(n)}function X9(t,n,e){vo(e).onDone(()=>t.processLeaveNode(n))}function eq(t){let n=[];return fO(t,n),n}function fO(t,n){for(let e=0;er.add(o)):n.set(t,i),e.delete(t),!0}var xc=class{_driver;_normalizer;_transitionEngine;_timelineEngine;_triggerCache={};onRemovalComplete=(n,e)=>{};constructor(n,e,i){this._driver=e,this._normalizer=i,this._transitionEngine=new sD(n.body,e,i),this._timelineEngine=new rD(n.body,e,i),this._transitionEngine.onRemovalComplete=(r,o)=>this.onRemovalComplete(r,o)}registerTrigger(n,e,i,r,o){let s=n+"-"+r,a=this._triggerCache[s];if(!a){let l=[],c=[],u=lO(this._driver,o,l,c);if(l.length)throw NP(r,l);a=B9(r,u,this._normalizer),this._triggerCache[s]=a}this._transitionEngine.registerTrigger(e,r,a)}register(n,e){this._transitionEngine.register(n,e)}destroy(n,e){this._transitionEngine.destroy(n,e)}onInsert(n,e,i,r){this._transitionEngine.insertNode(n,e,i,r)}onRemove(n,e,i){this._transitionEngine.removeNode(n,e,i)}disableAnimations(n,e){this._transitionEngine.markElementAsDisabled(n,e)}process(n,e,i,r){if(i.charAt(0)=="@"){let[o,s]=jw(i),a=r;this._timelineEngine.command(o,e,s,a)}else this._transitionEngine.trigger(n,e,i,r)}listen(n,e,i,r,o){if(i.charAt(0)=="@"){let[s,a]=jw(i);return this._timelineEngine.listen(s,e,a,o)}return this._transitionEngine.listen(n,e,i,r,o)}flush(n=-1){this._transitionEngine.flush(n)}get players(){return[...this._transitionEngine.players,...this._timelineEngine.players]}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}afterFlushAnimationsDone(n){this._transitionEngine.afterFlushAnimationsDone(n)}};function nq(t,n){let e=null,i=null;return Array.isArray(n)&&n.length?(e=Kw(n[0]),n.length>1&&(i=Kw(n[n.length-1]))):n instanceof Map&&(e=Kw(n)),e||i?new iq(t,e,i):null}var iq=(()=>{class t{_element;_startStyles;_endStyles;static initialStylesByElement=new WeakMap;_state=0;_initialStyles;constructor(e,i,r){this._element=e,this._startStyles=i,this._endStyles=r;let o=t.initialStylesByElement.get(e);o||t.initialStylesByElement.set(e,o=new Map),this._initialStyles=o}start(){this._state<1&&(this._startStyles&&dr(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(dr(this._element,this._initialStyles),this._endStyles&&(dr(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(fs(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(fs(this._element,this._endStyles),this._endStyles=null),dr(this._element,this._initialStyles),this._state=3)}}return t})();function Kw(t){let n=null;return t.forEach((e,i)=>{rq(i)&&(n=n||new Map,n.set(i,e))}),n}function rq(t){return t==="display"||t==="position"}var Kg=class{element;keyframes;options;_specialStyles;_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_duration;_delay;_initialized=!1;_finished=!1;_started=!1;_destroyed=!1;_finalKeyframe;_originalOnDoneFns=[];_originalOnStartFns=[];domPlayer;time=0;parentPlayer=null;currentSnapshot=new Map;constructor(n,e,i,r){this.element=n,this.keyframes=e,this.options=i,this._specialStyles=r,this._duration=i.duration,this._delay=i.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;let n=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,n,this.options),this._finalKeyframe=n.length?n[n.length-1]:new Map;let e=()=>this._onFinish();this.domPlayer.addEventListener("finish",e),this.onDestroy(()=>{this.domPlayer.removeEventListener("finish",e)})}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_convertKeyframesToObject(n){let e=[];return n.forEach(i=>{e.push(Object.fromEntries(i))}),e}_triggerWebAnimation(n,e,i){return n.animate(this._convertKeyframesToObject(e),i)}onStart(n){this._originalOnStartFns.push(n),this._onStartFns.push(n)}onDone(n){this._originalOnDoneFns.push(n),this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(n=>n()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}setPosition(n){this.domPlayer===void 0&&this.init(),this.domPlayer.currentTime=n*this.time}getPosition(){return+(this.domPlayer.currentTime??0)/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){let n=new Map;this.hasStarted()&&this._finalKeyframe.forEach((i,r)=>{r!=="offset"&&n.set(r,this._finished?i:Hg(this.element,r))}),this.currentSnapshot=n}triggerCallback(n){let e=n==="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},Zg=class{validateStyleProperty(n){return!0}validateAnimatableStyleProperty(n){return!0}containsElement(n,e){return Hw(n,e)}getParentElement(n){return Lg(n)}query(n,e,i){return Bw(n,e,i)}computeStyle(n,e,i){return Hg(n,e)}animate(n,e,i,r,o,s=[]){let a=r==0?"both":"forwards",l={duration:i,delay:r,fill:a};o&&(l.easing=o);let c=new Map,u=s.filter(_=>_ instanceof Kg);QP(i,r)&&u.forEach(_=>{_.currentSnapshot.forEach((M,x)=>c.set(x,M))});let p=GP(e).map(_=>new Map(_));p=KP(n,p,c);let v=nq(n,p);return new Kg(n,p,l,v)}};var zg="@",hO="@.disabled",Jg=class{namespaceId;delegate;engine;_onDestroy;\u0275type=0;constructor(n,e,i,r){this.namespaceId=n,this.delegate=e,this.engine=i,this._onDestroy=r}get data(){return this.delegate.data}destroyNode(n){this.delegate.destroyNode?.(n)}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.engine.afterFlushAnimationsDone(()=>{queueMicrotask(()=>{this.delegate.destroy()})}),this._onDestroy?.()}createElement(n,e){return this.delegate.createElement(n,e)}createComment(n){return this.delegate.createComment(n)}createText(n){return this.delegate.createText(n)}appendChild(n,e){this.delegate.appendChild(n,e),this.engine.onInsert(this.namespaceId,e,n,!1)}insertBefore(n,e,i,r=!0){this.delegate.insertBefore(n,e,i),this.engine.onInsert(this.namespaceId,e,n,r)}removeChild(n,e,i){this.parentNode(e)&&this.engine.onRemove(this.namespaceId,e,this.delegate)}selectRootElement(n,e){return this.delegate.selectRootElement(n,e)}parentNode(n){return this.delegate.parentNode(n)}nextSibling(n){return this.delegate.nextSibling(n)}setAttribute(n,e,i,r){this.delegate.setAttribute(n,e,i,r)}removeAttribute(n,e,i){this.delegate.removeAttribute(n,e,i)}addClass(n,e){this.delegate.addClass(n,e)}removeClass(n,e){this.delegate.removeClass(n,e)}setStyle(n,e,i,r){this.delegate.setStyle(n,e,i,r)}removeStyle(n,e,i){this.delegate.removeStyle(n,e,i)}setProperty(n,e,i){e.charAt(0)==zg&&e==hO?this.disableAnimations(n,!!i):this.delegate.setProperty(n,e,i)}setValue(n,e){this.delegate.setValue(n,e)}listen(n,e,i,r){return this.delegate.listen(n,e,i,r)}disableAnimations(n,e){this.engine.disableAnimations(n,e)}},aD=class extends Jg{factory;constructor(n,e,i,r,o){super(e,i,r,o),this.factory=n,this.namespaceId=e}setProperty(n,e,i){e.charAt(0)==zg?e.charAt(1)=="."&&e==hO?(i=i===void 0?!0:!!i,this.disableAnimations(n,i)):this.engine.process(this.namespaceId,n,e.slice(1),i):this.delegate.setProperty(n,e,i)}listen(n,e,i,r){if(e.charAt(0)==zg){let o=oq(n),s=e.slice(1),a="";return s.charAt(0)!=zg&&([s,a]=sq(s)),this.engine.listen(this.namespaceId,o,s,a,l=>{let c=l._data||-1;this.factory.scheduleListenerCallback(c,i,l)})}return this.delegate.listen(n,e,i,r)}};function oq(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}function sq(t){let n=t.indexOf("."),e=t.substring(0,n),i=t.slice(n+1);return[e,i]}var Xg=class{delegate;engine;_zone;_currentId=0;_microtaskId=1;_animationCallbacksBuffer=[];_rendererCache=new Map;_cdRecurDepth=0;constructor(n,e,i){this.delegate=n,this.engine=e,this._zone=i,e.onRemovalComplete=(r,o)=>{o?.removeChild(null,r)}}createRenderer(n,e){let i="",r=this.delegate.createRenderer(n,e);if(!n||!e?.data?.animation){let c=this._rendererCache,u=c.get(r);if(!u){let p=()=>c.delete(r);u=new Jg(i,r,this.engine,p),c.set(r,u)}return u}let o=e.id,s=e.id+"-"+this._currentId;this._currentId++,this.engine.register(s,n);let a=c=>{Array.isArray(c)?c.forEach(a):this.engine.registerTrigger(o,s,n,c.name,c)};return e.data.animation.forEach(a),new aD(this,s,r,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){queueMicrotask(()=>{this._microtaskId++})}scheduleListenerCallback(n,e,i){if(n>=0&&ne(i));return}let r=this._animationCallbacksBuffer;r.length==0&&queueMicrotask(()=>{this._zone.run(()=>{r.forEach(o=>{let[s,a]=o;s(a)}),this._animationCallbacksBuffer=[]})}),r.push([e,i])}end(){this._cdRecurDepth--,this._cdRecurDepth==0&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}componentReplaced(n){this.engine.flush(),this.delegate.componentReplaced?.(n)}};var lq=(()=>{class t extends xc{constructor(e,i,r){super(e,i,r)}ngOnDestroy(){this.flush()}static \u0275fac=function(i){return new(i||t)(j(Pe),j(Ea),j(xa))};static \u0275prov=k({token:t,factory:t.\u0275fac})}return t})();function cq(){return new Yg}function uq(t,n,e){return new Xg(t,n,e)}var pO=[{provide:xa,useFactory:cq},{provide:xc,useClass:lq},{provide:jn,useFactory:uq,deps:[Du,xc,xe]}],Sbe=[{provide:Ea,useClass:lD},{provide:su,useValue:"NoopAnimations"},...pO],dq=[{provide:Ea,useFactory:()=>new Zg},{provide:su,useFactory:()=>"BrowserAnimations"},...pO];function mO(){return gl("NgEagerAnimations"),[...dq]}var gO=(t,n)=>{let e=S(hn),i=S(At);return n(t).pipe(Yi(r=>{if(r)switch(r.status){case 400:if(r.error.errors){if(r.error.errors){let s=[];for(let a in r.error.errors)r.error.errors[a]&&s.push(r.error.errors[a]);throw s.flat()}}else i.error(r.error,r.status);break;case 401:i.error("Unauthorised",r.status);break;case 404:e.navigateByUrl("/not-found");break;case 500:let o={state:{error:r.error}};e.navigateByUrl("/server-error",o);break;default:i.error("Something unexpected went wrong"),console.log(r);break}throw r}))};var _O=(t,n)=>{let e=S(lt);return e.currentUser()&&(t=t.clone({setHeaders:{Authorization:`Bearer ${e.currentUser()?.token}`}})),n(t)};var yO=(t,n)=>{let e=S(Mc);return e.busy(),n(t).pipe(Kt.production?on:Bc(500),yi(()=>{e.idle()}))};var vO={providers:[xb(yP),ib(rb([gO,_O,yO])),mO(),iC({positionClass:"toast-bottom-right"}),Av(nP,Br.forRoot(),pP.forRoot())]};var fq=["*"],hq=t=>({dropdown:t}),bO=(()=>{class t{constructor(){this.autoClose=!0,this.insideClick=!1,this.isAnimated=!1,this.stopOnClickPropagation=!1}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),Ic=(()=>{class t{constructor(){this.direction="down",this.autoClose=!0,this.insideClick=!1,this.isAnimated=!1,this.stopOnClickPropagation=!1,this.isOpenChange=new O,this.isDisabledChange=new O,this.toggleClick=new O,this.counts=0,this.dropdownMenu=new Promise(e=>{this.resolveDropdownMenu=e})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=k({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),pq="220ms cubic-bezier(0, 0, 0.2, 1)",CO=[xt({height:0,overflow:"hidden"}),On(pq,xt({height:"*",overflow:"hidden"}))],mq=(()=>{class t{get direction(){return this._state.direction}constructor(e,i,r,o,s){this._state=e,this.cd=i,this._renderer=r,this._element=o,this.isOpen=!1,this._factoryDropDownAnimation=s.build(CO),this._subscription=e.isOpenChange.subscribe(a=>{this.isOpen=a;let l=this._element.nativeElement.querySelector(".dropdown-menu");this._renderer.addClass(this._element.nativeElement.querySelector("div"),"open"),l&&(this._renderer.addClass(l,"show"),(l.classList.contains("dropdown-menu-right")||l.classList.contains("dropdown-menu-end"))&&(this._renderer.setStyle(l,"left","auto"),this._renderer.setStyle(l,"right","0")),this.direction==="up"&&(this._renderer.setStyle(l,"top","auto"),this._renderer.setStyle(l,"transform","translateY(-101%)"))),l&&this._state.isAnimated&&this._factoryDropDownAnimation.create(l).play(),this.cd.markForCheck(),this.cd.detectChanges()})}_contains(e){return this._element.nativeElement.contains(e)}ngOnDestroy(){this._subscription.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(b(Ic),b(ct),b(Ae),b(Y),b(ym))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-dropdown-container"]],hostAttrs:[2,"display","block","position","absolute","z-index","1040"],ngContentSelectors:fq,decls:2,vars:9,consts:[[3,"ngClass"]],template:function(i,r){i&1&&(An(),d(0,"div",0),Cn(1),f()),i&2&&(B("dropup",r.direction==="up")("show",r.isOpen)("open",r.isOpen),g("ngClass",Mr(7,hq,r.direction==="down")))},dependencies:[fn],encapsulation:2,changeDetection:0})}}return t})(),uD=(()=>{class t{set autoClose(e){this._state.autoClose=e}get autoClose(){return this._state.autoClose}set isAnimated(e){this._state.isAnimated=e}get isAnimated(){return this._state.isAnimated}set insideClick(e){this._state.insideClick=e}get insideClick(){return this._state.insideClick}set isDisabled(e){this._isDisabled=e,this._state.isDisabledChange.emit(e),e&&this.hide()}get isDisabled(){return this._isDisabled}get isOpen(){return this._showInline?this._isInlineOpen:this._dropdown.isShown}set isOpen(e){e?this.show():this.hide()}get _showInline(){return!this.container}constructor(e,i,r,o,s,a,l){this._elementRef=e,this._renderer=i,this._viewContainerRef=r,this._cis=o,this._state=s,this._config=a,this.dropup=!1,this._isInlineOpen=!1,this._isDisabled=!1,this._subscriptions=[],this._isInited=!1,this._state.autoClose=this._config.autoClose,this._state.insideClick=this._config.insideClick,this._state.isAnimated=this._config.isAnimated,this._state.stopOnClickPropagation=this._config.stopOnClickPropagation,this._factoryDropDownAnimation=l.build(CO),this._dropdown=this._cis.createLoader(this._elementRef,this._viewContainerRef,this._renderer).provide({provide:Ic,useValue:this._state}),this.onShown=this._dropdown.onShown,this.onHidden=this._dropdown.onHidden,this.isOpenChange=this._state.isOpenChange}ngOnInit(){this._isInited||(this._isInited=!0,this._dropdown.listen({outsideClick:!1,triggers:this.triggers,show:()=>this.show()}),this._subscriptions.push(this._state.toggleClick.subscribe(e=>this.toggle(e))),this._subscriptions.push(this._state.isDisabledChange.pipe(he(e=>e)).subscribe(()=>this.hide())))}show(){if(!(this.isOpen||this.isDisabled)){if(this._showInline){this._inlinedMenu||this._state.dropdownMenu.then(e=>{this._dropdown.attachInline(e.viewContainer,e.templateRef),this._inlinedMenu=this._dropdown._inlineViewRef,this.addBs4Polyfills(),this._inlinedMenu&&this._renderer.addClass(this._inlinedMenu.rootNodes[0].parentNode,"open"),this.playAnimation()}).catch(),this.addBs4Polyfills(),this._isInlineOpen=!0,this.onShown.emit(!0),this._state.isOpenChange.emit(!0),this.playAnimation();return}this._state.dropdownMenu.then(e=>{let i=this.dropup||typeof this.dropup<"u"&&this.dropup;this._state.direction=i?"up":"down";let r=this.placement||(i?"top start":"bottom start");this._dropdown.attach(mq).to(this.container).position({attachment:r}).show({content:e.templateRef,placement:r}),this._state.isOpenChange.emit(!0)}).catch()}}hide(){this.isOpen&&(this._showInline?(this.removeShowClass(),this.removeDropupStyles(),this._isInlineOpen=!1,this.onHidden.emit(!0)):this._dropdown.hide(),this._state.isOpenChange.emit(!1))}toggle(e){return this.isOpen||!e?this.hide():this.show()}_contains(e){return this._elementRef.nativeElement.contains(e.target)||this._dropdown.instance&&this._dropdown.instance._contains(e.target)}navigationClick(e){let i=this._elementRef.nativeElement.querySelector(".dropdown-menu");if(!i)return;let r=this._elementRef.nativeElement.ownerDocument.activeElement,o=i.querySelectorAll(".dropdown-item");switch(e.keyCode){case 38:this._state.counts>0&&o[--this._state.counts].focus();break;case 40:this._state.counts+1{this._inlinedMenu&&this._factoryDropDownAnimation.create(this._inlinedMenu.rootNodes[0]).play()})}addShowClass(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&this._renderer.addClass(this._inlinedMenu.rootNodes[0],"show")}removeShowClass(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&this._renderer.removeClass(this._inlinedMenu.rootNodes[0],"show")}checkRightAlignment(){if(this._inlinedMenu&&this._inlinedMenu.rootNodes[0]){let e=this._inlinedMenu.rootNodes[0].classList.contains("dropdown-menu-right")||this._inlinedMenu.rootNodes[0].classList.contains("dropdown-menu-end");this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"left",e?"auto":"0"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"right",e?"0":"auto")}}addDropupStyles(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&(this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"top",this.dropup?"auto":"100%"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"transform",this.dropup?"translateY(-101%)":"translateY(0)"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"bottom","auto"))}removeDropupStyles(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&(this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"top"),this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"transform"),this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"bottom"))}static{this.\u0275fac=function(i){return new(i||t)(b(Y),b(Ae),b(_t),b(tn),b(Ic),b(bO),b(ym))}}static{this.\u0275dir=U({type:t,selectors:[["","bsDropdown",""],["","dropdown",""]],hostVars:6,hostBindings:function(i,r){i&1&&D("keydown.arrowDown",function(s){return r.navigationClick(s)})("keydown.arrowUp",function(s){return r.navigationClick(s)}),i&2&&B("dropup",r.dropup)("open",r.isOpen)("show",r.isOpen)},inputs:{placement:"placement",triggers:"triggers",container:"container",dropup:"dropup",autoClose:"autoClose",isAnimated:"isAnimated",insideClick:"insideClick",isDisabled:"isDisabled",isOpen:"isOpen"},outputs:{isOpenChange:"isOpenChange",onShown:"onShown",onHidden:"onHidden"},exportAs:["bs-dropdown"],features:[pe([Ic,tn,bO])]})}}return t})(),wO=(()=>{class t{constructor(e,i,r){e.resolveDropdownMenu({templateRef:r,viewContainer:i})}static{this.\u0275fac=function(i){return new(i||t)(b(Ic),b(_t),b(Ot))}}static{this.\u0275dir=U({type:t,selectors:[["","bsDropdownMenu",""],["","dropdownMenu",""]],exportAs:["bs-dropdown-menu"]})}}return t})(),DO=(()=>{class t{constructor(e,i,r,o,s){this._changeDetectorRef=e,this._dropdown=i,this._element=r,this._renderer=o,this._state=s,this.isOpen=!1,this._subscriptions=[],this._subscriptions.push(this._state.isOpenChange.subscribe(a=>{this.isOpen=a,a?(this._documentClickListener=this._renderer.listen("document","click",l=>{this._state.autoClose&&l.button!==2&&!this._element.nativeElement.contains(l.target)&&!(this._state.insideClick&&this._dropdown._contains(l))&&(this._state.toggleClick.emit(!1),this._changeDetectorRef.detectChanges())}),this._escKeyUpListener=this._renderer.listen(this._element.nativeElement,"keyup.esc",()=>{this._state.autoClose&&(this._state.toggleClick.emit(!1),this._changeDetectorRef.detectChanges())})):(this._documentClickListener&&this._documentClickListener(),this._escKeyUpListener&&this._escKeyUpListener())})),this._subscriptions.push(this._state.isDisabledChange.subscribe(a=>this.isDisabled=a||void 0))}onClick(e){this._state.stopOnClickPropagation&&e.stopPropagation(),!this.isDisabled&&this._state.toggleClick.emit(!0)}ngOnDestroy(){this._documentClickListener&&this._documentClickListener(),this._escKeyUpListener&&this._escKeyUpListener();for(let e of this._subscriptions)e.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(b(ct),b(uD),b(Y),b(Ae),b(Ic))}}static{this.\u0275dir=U({type:t,selectors:[["","bsDropdownToggle",""],["","dropdownToggle",""]],hostVars:3,hostBindings:function(i,r){i&1&&D("click",function(s){return r.onClick(s)}),i&2&&ee("aria-haspopup",!0)("disabled",r.isDisabled)("aria-expanded",r.isOpen)},exportAs:["bs-dropdown-toggle"]})}}return t})(),MO=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({})}}return t})();var _q=t=>({collapse:t}),yq=()=>["Admin","Moderator"];function vq(t,n){t&1&&(d(0,"li",12)(1,"a",17),y(2,"Admin"),f()())}function bq(t,n){t&1&&(d(0,"li",12)(1,"a",13),y(2,"Matches"),f()(),d(3,"li",12)(4,"a",14),y(5,"Lists"),f()(),d(6,"li",12)(7,"a",15),y(8,"Messages"),f()(),T(9,vq,3,0,"li",16)),t&2&&(h(9),g("appHasRole",Zi(1,yq)))}function Cq(t,n){if(t&1){let e=N();d(0,"div",21)(1,"a",22),y(2,"Edit profile"),f(),I(3,"div",23),d(4,"a",24),D("click",function(){C(e);let r=m(2);return w(r.logout())}),y(5,"Logout"),f()()}}function wq(t,n){if(t&1&&(d(0,"div",10),I(1,"img",18),d(2,"a",19),y(3),f(),T(4,Cq,6,0,"div",20),f()),t&2){let e,i,r=m();h(),Vt("src",((e=r.currentUser())==null?null:e.photoUrl)||"https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain",Xe),h(2),oe("Welcome ",(i=r.currentUser())==null?null:i.knownAs,"")}}function Dq(t,n){if(t&1){let e=N();d(0,"form",25,0),D("ngSubmit",function(){C(e);let r=m();return w(r.login())}),d(2,"input",26),Re("ngModelChange",function(r){C(e);let o=m();return Le(o.model.username,r)||(o.model.username=r),w(r)}),f(),d(3,"input",27),Re("ngModelChange",function(r){C(e);let o=m();return Le(o.model.password,r)||(o.model.password=r),w(r)}),f(),d(4,"button",28),y(5,"Login"),f()()}if(t&2){let e=m();h(2),Oe("ngModel",e.model.username),h(),Oe("ngModel",e.model.password)}}var e_=class t{accountService=S(lt);router=S(hn);toastr=S(At);isCollapsed=!0;model={};login(){this.accountService.login(this.model).subscribe({next:n=>this.router.navigateByUrl("/members"),error:n=>{this.toastr.error(n.error.message)}})}logout(){this.accountService.logout(),this.router.navigateByUrl("/")}toggleNavbar(){this.isCollapsed=!this.isCollapsed}currentUser(){return this.accountService.currentUser()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-nav"]],decls:14,vars:6,consts:[["loginForm","ngForm"],[1,"navbar","navbar-expand-md","py-2","navbar-dark","bg-primary","floating-nav"],[1,"container"],["routerLinkActive","active","routerLink","/",1,"navbar-brand"],["type","button","aria-controls","navbarContent","aria-expanded","false","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse",3,"ngClass"],[1,"navbar-nav","mr-auto"],[1,"nav-item","active"],["routerLink","/errors","routerLinkActive","active",1,"nav-link"],["dropdown","",1,"dropdown","ms-auto"],["autocomplete","off",1,"d-flex","mt-2","mt-md-0","ms-auto"],[1,"nav-item"],["routerLink","/members","routerLinkActive","active",1,"nav-link"],["routerLink","/lists","routerLinkActive","active",1,"nav-link"],["routerLink","/messages","routerLinkActive","active",1,"nav-link"],["class","nav-item",4,"appHasRole"],["routerLink","/admin","routerLinkActive","active",1,"nav-link"],["alt","User main image",1,"me-2",3,"src"],["dropdownToggle","",1,"dropdown-toggle","text-light","text-decoration-none"],["class","dropdown-menu",4,"dropdownMenu"],[1,"dropdown-menu"],["routerLink","/member/edit",1,"dropdown-item"],[1,"dropdown-divider"],[1,"dropdown-item",3,"click"],["autocomplete","off",1,"d-flex","mt-2","mt-md-0","ms-auto",3,"ngSubmit"],["name","username","type","text","placeholder","Username",1,"form-control","ms-2",3,"ngModelChange","ngModel"],["name","password","type","password","placeholder","Password",1,"form-control","ms-2",3,"ngModelChange","ngModel"],["type","submit",1,"btn","btn-success","ms-2"]],template:function(e,i){e&1&&(d(0,"nav",1)(1,"div",2)(2,"a",3),y(3,"Dating App"),f(),d(4,"button",4),D("click",function(){return i.toggleNavbar()}),I(5,"span",5),f(),d(6,"div",6)(7,"ul",7),T(8,bq,10,2),d(9,"li",8)(10,"a",9),y(11,"Errors"),f()()(),T(12,wq,5,2,"div",10)(13,Dq,6,2,"form",11),f()()()),e&2&&(h(6),g("ngClass",Mr(4,_q,i.isCollapsed)),h(2),je(i.currentUser()?8:-1),h(4),je(i.currentUser()?12:-1),h(),je(i.currentUser()?-1:13))},dependencies:[Dn,Ii,Bt,kt,xi,pn,ir,MO,wO,DO,uD,Pr,ds,He,fn],styles:[".dropdown-toggle[_ngcontent-%COMP%], .dropdown-item[_ngcontent-%COMP%]{cursor:pointer}img[_ngcontent-%COMP%]{max-height:50px;border:2px solid #fff;display:inline;border-radius:50%}.floating-nav[_ngcontent-%COMP%]{margin:15px auto;border-radius:15px;box-shadow:0 4px 12px #00000026;width:95%;max-width:1400px;position:fixed;top:0;left:0;right:0;z-index:1030}body[_ngcontent-%COMP%]{padding-top:90px}@media (max-width: 767px){.navbar-collapse[_ngcontent-%COMP%]{padding:10px 0}.navbar-collapse.collapse[_ngcontent-%COMP%]{display:none}.navbar-collapse[_ngcontent-%COMP%]:not(.collapse){display:block}.navbar-nav[_ngcontent-%COMP%]{margin-top:10px;border-top:1px solid rgba(255,255,255,.2);padding-top:10px}.dropdown[_ngcontent-%COMP%], form[_ngcontent-%COMP%]{margin-top:15px;width:100%}form.d-flex[_ngcontent-%COMP%]{flex-wrap:wrap}form.d-flex[_ngcontent-%COMP%] input[_ngcontent-%COMP%], form.d-flex[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin:5px 0}}"]})};function Mq(t,n,e){return(n=Tq(n))in t?Object.defineProperty(t,n,{value:e,enumerable:!0,configurable:!0,writable:!0}):t[n]=e,t}function SO(t,n){var e=Object.keys(t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(t);n&&(i=i.filter(function(r){return Object.getOwnPropertyDescriptor(t,r).enumerable})),e.push.apply(e,i)}return e}function V(t){for(var n=1;n{},OD={},JO={},XO=null,eR={mark:TO,measure:TO};try{typeof window<"u"&&(OD=window),typeof document<"u"&&(JO=document),typeof MutationObserver<"u"&&(XO=MutationObserver),typeof performance<"u"&&(eR=performance)}catch{}var{userAgent:EO=""}=OD.navigator||{},ps=OD,ht=JO,xO=XO,t_=eR,SCe=!!ps.document,wo=!!ht.documentElement&&!!ht.head&&typeof ht.addEventListener=="function"&&typeof ht.createElement=="function",tR=~EO.indexOf("MSIE")||~EO.indexOf("Trident/"),Eq=/fa(s|r|l|t|d|dr|dl|dt|b|k|kd|ss|sr|sl|st|sds|sdr|sdl|sdt)?[\-\ ]/,xq=/Font ?Awesome ?([56 ]*)(Solid|Regular|Light|Thin|Duotone|Brands|Free|Pro|Sharp Duotone|Sharp|Kit)?.*/i,nR={classic:{fa:"solid",fas:"solid","fa-solid":"solid",far:"regular","fa-regular":"regular",fal:"light","fa-light":"light",fat:"thin","fa-thin":"thin",fab:"brands","fa-brands":"brands"},duotone:{fa:"solid",fad:"solid","fa-solid":"solid","fa-duotone":"solid",fadr:"regular","fa-regular":"regular",fadl:"light","fa-light":"light",fadt:"thin","fa-thin":"thin"},sharp:{fa:"solid",fass:"solid","fa-solid":"solid",fasr:"regular","fa-regular":"regular",fasl:"light","fa-light":"light",fast:"thin","fa-thin":"thin"},"sharp-duotone":{fa:"solid",fasds:"solid","fa-solid":"solid",fasdr:"regular","fa-regular":"regular",fasdl:"light","fa-light":"light",fasdt:"thin","fa-thin":"thin"}},Iq={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},iR=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone"],En="classic",a_="duotone",kq="sharp",Aq="sharp-duotone",rR=[En,a_,kq,Aq],Pq={classic:{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},duotone:{900:"fad",400:"fadr",300:"fadl",100:"fadt"},sharp:{900:"fass",400:"fasr",300:"fasl",100:"fast"},"sharp-duotone":{900:"fasds",400:"fasdr",300:"fasdl",100:"fasdt"}},Oq={"Font Awesome 6 Free":{900:"fas",400:"far"},"Font Awesome 6 Pro":{900:"fas",400:"far",normal:"far",300:"fal",100:"fat"},"Font Awesome 6 Brands":{400:"fab",normal:"fab"},"Font Awesome 6 Duotone":{900:"fad",400:"fadr",normal:"fadr",300:"fadl",100:"fadt"},"Font Awesome 6 Sharp":{900:"fass",400:"fasr",normal:"fasr",300:"fasl",100:"fast"},"Font Awesome 6 Sharp Duotone":{900:"fasds",400:"fasdr",normal:"fasdr",300:"fasdl",100:"fasdt"}},Rq=new Map([["classic",{defaultShortPrefixId:"fas",defaultStyleId:"solid",styleIds:["solid","regular","light","thin","brands"],futureStyleIds:[],defaultFontWeight:900}],["sharp",{defaultShortPrefixId:"fass",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["duotone",{defaultShortPrefixId:"fad",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}],["sharp-duotone",{defaultShortPrefixId:"fasds",defaultStyleId:"solid",styleIds:["solid","regular","light","thin"],futureStyleIds:[],defaultFontWeight:900}]]),Nq={classic:{solid:"fas",regular:"far",light:"fal",thin:"fat",brands:"fab"},duotone:{solid:"fad",regular:"fadr",light:"fadl",thin:"fadt"},sharp:{solid:"fass",regular:"fasr",light:"fasl",thin:"fast"},"sharp-duotone":{solid:"fasds",regular:"fasdr",light:"fasdl",thin:"fasdt"}},Lq=["fak","fa-kit","fakd","fa-kit-duotone"],IO={kit:{fak:"kit","fa-kit":"kit"},"kit-duotone":{fakd:"kit-duotone","fa-kit-duotone":"kit-duotone"}},Fq=["kit"],Vq={kit:{"fa-kit":"fak"},"kit-duotone":{"fa-kit-duotone":"fakd"}},jq=["fak","fakd"],Hq={kit:{fak:"fa-kit"},"kit-duotone":{fakd:"fa-kit-duotone"}},kO={kit:{kit:"fak"},"kit-duotone":{"kit-duotone":"fakd"}},n_={GROUP:"duotone-group",SWAP_OPACITY:"swap-opacity",PRIMARY:"primary",SECONDARY:"secondary"},Bq=["fa-classic","fa-duotone","fa-sharp","fa-sharp-duotone"],Uq=["fak","fa-kit","fakd","fa-kit-duotone"],$q={"Font Awesome Kit":{400:"fak",normal:"fak"},"Font Awesome Kit Duotone":{400:"fakd",normal:"fakd"}},zq={classic:{"fa-brands":"fab","fa-duotone":"fad","fa-light":"fal","fa-regular":"far","fa-solid":"fas","fa-thin":"fat"},duotone:{"fa-regular":"fadr","fa-light":"fadl","fa-thin":"fadt"},sharp:{"fa-solid":"fass","fa-regular":"fasr","fa-light":"fasl","fa-thin":"fast"},"sharp-duotone":{"fa-solid":"fasds","fa-regular":"fasdr","fa-light":"fasdl","fa-thin":"fasdt"}},Yq={classic:["fas","far","fal","fat","fad"],duotone:["fadr","fadl","fadt"],sharp:["fass","fasr","fasl","fast"],"sharp-duotone":["fasds","fasdr","fasdl","fasdt"]},gD={classic:{fab:"fa-brands",fad:"fa-duotone",fal:"fa-light",far:"fa-regular",fas:"fa-solid",fat:"fa-thin"},duotone:{fadr:"fa-regular",fadl:"fa-light",fadt:"fa-thin"},sharp:{fass:"fa-solid",fasr:"fa-regular",fasl:"fa-light",fast:"fa-thin"},"sharp-duotone":{fasds:"fa-solid",fasdr:"fa-regular",fasdl:"fa-light",fasdt:"fa-thin"}},Wq=["fa-solid","fa-regular","fa-light","fa-thin","fa-duotone","fa-brands"],_D=["fa","fas","far","fal","fat","fad","fadr","fadl","fadt","fab","fass","fasr","fasl","fast","fasds","fasdr","fasdl","fasdt",...Bq,...Wq],Gq=["solid","regular","light","thin","duotone","brands"],oR=[1,2,3,4,5,6,7,8,9,10],qq=oR.concat([11,12,13,14,15,16,17,18,19,20]),Qq=[...Object.keys(Yq),...Gq,"2xs","xs","sm","lg","xl","2xl","beat","border","fade","beat-fade","bounce","flip-both","flip-horizontal","flip-vertical","flip","fw","inverse","layers-counter","layers-text","layers","li","pull-left","pull-right","pulse","rotate-180","rotate-270","rotate-90","rotate-by","shake","spin-pulse","spin-reverse","spin","stack-1x","stack-2x","stack","ul",n_.GROUP,n_.SWAP_OPACITY,n_.PRIMARY,n_.SECONDARY].concat(oR.map(t=>"".concat(t,"x"))).concat(qq.map(t=>"w-".concat(t))),Kq={"Font Awesome 5 Free":{900:"fas",400:"far"},"Font Awesome 5 Pro":{900:"fas",400:"far",normal:"far",300:"fal"},"Font Awesome 5 Brands":{400:"fab",normal:"fab"},"Font Awesome 5 Duotone":{900:"fad"}},bo="___FONT_AWESOME___",yD=16,sR="fa",aR="svg-inline--fa",ka="data-fa-i2svg",vD="data-fa-pseudo-element",Zq="data-fa-pseudo-element-pending",RD="data-prefix",ND="data-icon",AO="fontawesome-i2svg",Jq="async",Xq=["HTML","HEAD","STYLE","SCRIPT"],lR=(()=>{try{return!0}catch{return!1}})();function qd(t){return new Proxy(t,{get(n,e){return e in n?n[e]:n[En]}})}var cR=V({},nR);cR[En]=V(V(V(V({},{"fa-duotone":"duotone"}),nR[En]),IO.kit),IO["kit-duotone"]);var eQ=qd(cR),bD=V({},Nq);bD[En]=V(V(V(V({},{duotone:"fad"}),bD[En]),kO.kit),kO["kit-duotone"]);var PO=qd(bD),CD=V({},gD);CD[En]=V(V({},CD[En]),Hq.kit);var LD=qd(CD),wD=V({},zq);wD[En]=V(V({},wD[En]),Vq.kit);var TCe=qd(wD),tQ=Eq,uR="fa-layers-text",nQ=xq,iQ=V({},Pq),ECe=qd(iQ),rQ=["class","data-prefix","data-icon","data-fa-transform","data-fa-mask"],dD=Iq,oQ=[...Fq,...Qq],zd=ps.FontAwesomeConfig||{};function sQ(t){var n=ht.querySelector("script["+t+"]");if(n)return n.getAttribute(t)}function aQ(t){return t===""?!0:t==="false"?!1:t==="true"?!0:t}ht&&typeof ht.querySelector=="function"&&[["data-family-prefix","familyPrefix"],["data-css-prefix","cssPrefix"],["data-family-default","familyDefault"],["data-style-default","styleDefault"],["data-replacement-class","replacementClass"],["data-auto-replace-svg","autoReplaceSvg"],["data-auto-add-css","autoAddCss"],["data-auto-a11y","autoA11y"],["data-search-pseudo-elements","searchPseudoElements"],["data-observe-mutations","observeMutations"],["data-mutate-approach","mutateApproach"],["data-keep-original-source","keepOriginalSource"],["data-measure-performance","measurePerformance"],["data-show-missing-icons","showMissingIcons"]].forEach(n=>{let[e,i]=n,r=aQ(sQ(e));r!=null&&(zd[i]=r)});var dR={styleDefault:"solid",familyDefault:En,cssPrefix:sR,replacementClass:aR,autoReplaceSvg:!0,autoAddCss:!0,autoA11y:!0,searchPseudoElements:!1,observeMutations:!0,mutateApproach:"async",keepOriginalSource:!0,measurePerformance:!1,showMissingIcons:!0};zd.familyPrefix&&(zd.cssPrefix=zd.familyPrefix);var Pc=V(V({},dR),zd);Pc.autoReplaceSvg||(Pc.observeMutations=!1);var Q={};Object.keys(dR).forEach(t=>{Object.defineProperty(Q,t,{enumerable:!0,set:function(n){Pc[t]=n,Yd.forEach(e=>e(Q))},get:function(){return Pc[t]}})});Object.defineProperty(Q,"familyPrefix",{enumerable:!0,set:function(t){Pc.cssPrefix=t,Yd.forEach(n=>n(Q))},get:function(){return Pc.cssPrefix}});ps.FontAwesomeConfig=Q;var Yd=[];function lQ(t){return Yd.push(t),()=>{Yd.splice(Yd.indexOf(t),1)}}var hs=yD,Wr={size:16,x:0,y:0,rotate:0,flipX:!1,flipY:!1};function cQ(t){if(!t||!wo)return;let n=ht.createElement("style");n.setAttribute("type","text/css"),n.innerHTML=t;let e=ht.head.childNodes,i=null;for(let r=e.length-1;r>-1;r--){let o=e[r],s=(o.tagName||"").toUpperCase();["STYLE","LINK"].indexOf(s)>-1&&(i=o)}return ht.head.insertBefore(n,i),t}var uQ="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";function Wd(){let t=12,n="";for(;t-- >0;)n+=uQ[Math.random()*62|0];return n}function Oc(t){let n=[];for(let e=(t||[]).length>>>0;e--;)n[e]=t[e];return n}function FD(t){return t.classList?Oc(t.classList):(t.getAttribute("class")||"").split(" ").filter(n=>n)}function fR(t){return"".concat(t).replace(/&/g,"&").replace(/"/g,""").replace(/'/g,"'").replace(//g,">")}function dQ(t){return Object.keys(t||{}).reduce((n,e)=>n+"".concat(e,'="').concat(fR(t[e]),'" '),"").trim()}function l_(t){return Object.keys(t||{}).reduce((n,e)=>n+"".concat(e,": ").concat(t[e].trim(),";"),"")}function VD(t){return t.size!==Wr.size||t.x!==Wr.x||t.y!==Wr.y||t.rotate!==Wr.rotate||t.flipX||t.flipY}function fQ(t){let{transform:n,containerWidth:e,iconWidth:i}=t,r={transform:"translate(".concat(e/2," 256)")},o="translate(".concat(n.x*32,", ").concat(n.y*32,") "),s="scale(".concat(n.size/16*(n.flipX?-1:1),", ").concat(n.size/16*(n.flipY?-1:1),") "),a="rotate(".concat(n.rotate," 0 0)"),l={transform:"".concat(o," ").concat(s," ").concat(a)},c={transform:"translate(".concat(i/2*-1," -256)")};return{outer:r,inner:l,path:c}}function hQ(t){let{transform:n,width:e=yD,height:i=yD,startCentered:r=!1}=t,o="";return r&&tR?o+="translate(".concat(n.x/hs-e/2,"em, ").concat(n.y/hs-i/2,"em) "):r?o+="translate(calc(-50% + ".concat(n.x/hs,"em), calc(-50% + ").concat(n.y/hs,"em)) "):o+="translate(".concat(n.x/hs,"em, ").concat(n.y/hs,"em) "),o+="scale(".concat(n.size/hs*(n.flipX?-1:1),", ").concat(n.size/hs*(n.flipY?-1:1),") "),o+="rotate(".concat(n.rotate,"deg) "),o}var pQ=`:root, :host { + --fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free"; + --fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free"; + --fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro"; + --fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro"; + --fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone"; + --fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone"; + --fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone"; + --fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone"; + --fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands"; + --fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp"; + --fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp"; + --fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp"; + --fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp"; + --fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone"; + --fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone"; + --fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone"; + --fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone"; +} + +svg:not(:root).svg-inline--fa, svg:not(:host).svg-inline--fa { + overflow: visible; + box-sizing: content-box; +} + +.svg-inline--fa { + display: var(--fa-display, inline-block); + height: 1em; + overflow: visible; + vertical-align: -0.125em; +} +.svg-inline--fa.fa-2xs { + vertical-align: 0.1em; +} +.svg-inline--fa.fa-xs { + vertical-align: 0em; +} +.svg-inline--fa.fa-sm { + vertical-align: -0.0714285705em; +} +.svg-inline--fa.fa-lg { + vertical-align: -0.2em; +} +.svg-inline--fa.fa-xl { + vertical-align: -0.25em; +} +.svg-inline--fa.fa-2xl { + vertical-align: -0.3125em; +} +.svg-inline--fa.fa-pull-left { + margin-right: var(--fa-pull-margin, 0.3em); + width: auto; +} +.svg-inline--fa.fa-pull-right { + margin-left: var(--fa-pull-margin, 0.3em); + width: auto; +} +.svg-inline--fa.fa-li { + width: var(--fa-li-width, 2em); + top: 0.25em; +} +.svg-inline--fa.fa-fw { + width: var(--fa-fw-width, 1.25em); +} + +.fa-layers svg.svg-inline--fa { + bottom: 0; + left: 0; + margin: auto; + position: absolute; + right: 0; + top: 0; +} + +.fa-layers-counter, .fa-layers-text { + display: inline-block; + position: absolute; + text-align: center; +} + +.fa-layers { + display: inline-block; + height: 1em; + position: relative; + text-align: center; + vertical-align: -0.125em; + width: 1em; +} +.fa-layers svg.svg-inline--fa { + transform-origin: center center; +} + +.fa-layers-text { + left: 50%; + top: 50%; + transform: translate(-50%, -50%); + transform-origin: center center; +} + +.fa-layers-counter { + background-color: var(--fa-counter-background-color, #ff253a); + border-radius: var(--fa-counter-border-radius, 1em); + box-sizing: border-box; + color: var(--fa-inverse, #fff); + line-height: var(--fa-counter-line-height, 1); + max-width: var(--fa-counter-max-width, 5em); + min-width: var(--fa-counter-min-width, 1.5em); + overflow: hidden; + padding: var(--fa-counter-padding, 0.25em 0.5em); + right: var(--fa-right, 0); + text-overflow: ellipsis; + top: var(--fa-top, 0); + transform: scale(var(--fa-counter-scale, 0.25)); + transform-origin: top right; +} + +.fa-layers-bottom-right { + bottom: var(--fa-bottom, 0); + right: var(--fa-right, 0); + top: auto; + transform: scale(var(--fa-layers-scale, 0.25)); + transform-origin: bottom right; +} + +.fa-layers-bottom-left { + bottom: var(--fa-bottom, 0); + left: var(--fa-left, 0); + right: auto; + top: auto; + transform: scale(var(--fa-layers-scale, 0.25)); + transform-origin: bottom left; +} + +.fa-layers-top-right { + top: var(--fa-top, 0); + right: var(--fa-right, 0); + transform: scale(var(--fa-layers-scale, 0.25)); + transform-origin: top right; +} + +.fa-layers-top-left { + left: var(--fa-left, 0); + right: auto; + top: var(--fa-top, 0); + transform: scale(var(--fa-layers-scale, 0.25)); + transform-origin: top left; +} + +.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: 0.625em; + line-height: 0.1em; + vertical-align: 0.225em; +} + +.fa-xs { + font-size: 0.75em; + line-height: 0.0833333337em; + vertical-align: 0.125em; +} + +.fa-sm { + font-size: 0.875em; + line-height: 0.0714285718em; + vertical-align: 0.0535714295em; +} + +.fa-lg { + font-size: 1.25em; + line-height: 0.05em; + vertical-align: -0.075em; +} + +.fa-xl { + font-size: 1.5em; + line-height: 0.0416666682em; + vertical-align: -0.125em; +} + +.fa-2xl { + font-size: 2em; + line-height: 0.03125em; + vertical-align: -0.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(-1 * var(--fa-li-width, 2em)); + position: absolute; + text-align: center; + width: var(--fa-li-width, 2em); + line-height: inherit; +} + +.fa-border { + border-color: var(--fa-border-color, #eee); + border-radius: var(--fa-border-radius, 0.1em); + border-style: var(--fa-border-style, solid); + border-width: var(--fa-border-width, 0.08em); + padding: var(--fa-border-padding, 0.2em 0.25em 0.15em); +} + +.fa-pull-left { + float: left; + margin-right: var(--fa-pull-margin, 0.3em); +} + +.fa-pull-right { + float: right; + margin-left: var(--fa-pull-margin, 0.3em); +} + +.fa-beat { + animation-name: fa-beat; + animation-delay: var(--fa-animation-delay, 0s); + 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, 0s); + 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(0.28, 0.84, 0.42, 1)); +} + +.fa-fade { + animation-name: fa-fade; + animation-delay: var(--fa-animation-delay, 0s); + 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(0.4, 0, 0.6, 1)); +} + +.fa-beat-fade { + animation-name: fa-beat-fade; + animation-delay: var(--fa-animation-delay, 0s); + 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(0.4, 0, 0.6, 1)); +} + +.fa-flip { + animation-name: fa-flip; + animation-delay: var(--fa-animation-delay, 0s); + 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-delay: var(--fa-animation-delay, 0s); + 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, linear); +} + +.fa-spin { + animation-name: fa-spin; + animation-delay: var(--fa-animation-delay, 0s); + animation-direction: var(--fa-animation-direction, normal); + 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-bounce, +.fa-fade, +.fa-beat-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, 1) translateY(0); + } + 10% { + transform: scale(var(--fa-bounce-start-scale-x, 1.1), var(--fa-bounce-start-scale-y, 0.9)) translateY(0); + } + 30% { + transform: scale(var(--fa-bounce-jump-scale-x, 0.9), var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -0.5em)); + } + 50% { + transform: scale(var(--fa-bounce-land-scale-x, 1.05), var(--fa-bounce-land-scale-y, 0.95)) translateY(0); + } + 57% { + transform: scale(1, 1) translateY(var(--fa-bounce-rebound, -0.125em)); + } + 64% { + transform: scale(1, 1) translateY(0); + } + 100% { + transform: scale(1, 1) translateY(0); + } +} +@keyframes fa-fade { + 50% { + opacity: var(--fa-fade-opacity, 0.4); + } +} +@keyframes fa-beat-fade { + 0%, 100% { + opacity: var(--fa-beat-fade-opacity, 0.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%, 100% { + transform: rotate(0deg); + } +} +@keyframes fa-spin { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(360deg); + } +} +.fa-rotate-90 { + transform: rotate(90deg); +} + +.fa-rotate-180 { + transform: rotate(180deg); +} + +.fa-rotate-270 { + transform: rotate(270deg); +} + +.fa-flip-horizontal { + transform: scale(-1, 1); +} + +.fa-flip-vertical { + transform: scale(1, -1); +} + +.fa-flip-both, +.fa-flip-horizontal.fa-flip-vertical { + transform: scale(-1, -1); +} + +.fa-rotate-by { + transform: rotate(var(--fa-rotate-angle, 0)); +} + +.fa-stack { + display: inline-block; + vertical-align: middle; + height: 2em; + position: relative; + width: 2.5em; +} + +.fa-stack-1x, +.fa-stack-2x { + bottom: 0; + left: 0; + margin: auto; + position: absolute; + right: 0; + top: 0; + z-index: var(--fa-stack-z-index, auto); +} + +.svg-inline--fa.fa-stack-1x { + height: 1em; + width: 1.25em; +} +.svg-inline--fa.fa-stack-2x { + height: 2em; + width: 2.5em; +} + +.fa-inverse { + color: var(--fa-inverse, #fff); +} + +.sr-only, +.fa-sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + white-space: nowrap; + border-width: 0; +} + +.sr-only-focusable:not(:focus), +.fa-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; +} + +.svg-inline--fa .fa-primary { + fill: var(--fa-primary-color, currentColor); + opacity: var(--fa-primary-opacity, 1); +} + +.svg-inline--fa .fa-secondary { + fill: var(--fa-secondary-color, currentColor); + opacity: var(--fa-secondary-opacity, 0.4); +} + +.svg-inline--fa.fa-swap-opacity .fa-primary { + opacity: var(--fa-secondary-opacity, 0.4); +} + +.svg-inline--fa.fa-swap-opacity .fa-secondary { + opacity: var(--fa-primary-opacity, 1); +} + +.svg-inline--fa mask .fa-primary, +.svg-inline--fa mask .fa-secondary { + fill: black; +}`;function hR(){let t=sR,n=aR,e=Q.cssPrefix,i=Q.replacementClass,r=pQ;if(e!==t||i!==n){let o=new RegExp("\\.".concat(t,"\\-"),"g"),s=new RegExp("\\--".concat(t,"\\-"),"g"),a=new RegExp("\\.".concat(n),"g");r=r.replace(o,".".concat(e,"-")).replace(s,"--".concat(e,"-")).replace(a,".".concat(i))}return r}var OO=!1;function fD(){Q.autoAddCss&&!OO&&(cQ(hR()),OO=!0)}var mQ={mixout(){return{dom:{css:hR,insertCss:fD}}},hooks(){return{beforeDOMElementCreation(){fD()},beforeI2svg(){fD()}}}},Co=ps||{};Co[bo]||(Co[bo]={});Co[bo].styles||(Co[bo].styles={});Co[bo].hooks||(Co[bo].hooks={});Co[bo].shims||(Co[bo].shims=[]);var Gr=Co[bo],pR=[],mR=function(){ht.removeEventListener("DOMContentLoaded",mR),o_=1,pR.map(t=>t())},o_=!1;wo&&(o_=(ht.documentElement.doScroll?/^loaded|^c/:/^loaded|^i|^c/).test(ht.readyState),o_||ht.addEventListener("DOMContentLoaded",mR));function gQ(t){wo&&(o_?setTimeout(t,0):pR.push(t))}function Qd(t){let{tag:n,attributes:e={},children:i=[]}=t;return typeof t=="string"?fR(t):"<".concat(n," ").concat(dQ(e),">").concat(i.map(Qd).join(""),"")}function RO(t,n,e){if(t&&t[n]&&t[n][e])return{prefix:n,iconName:e,icon:t[n][e]}}var _Q=function(n,e){return function(i,r,o,s){return n.call(e,i,r,o,s)}},hD=function(n,e,i,r){var o=Object.keys(n),s=o.length,a=r!==void 0?_Q(e,r):e,l,c,u;for(i===void 0?(l=1,u=n[o[0]]):(l=0,u=i);l=55296&&r<=56319&&e=55296&&i<=56319&&e>n+1&&(r=t.charCodeAt(n+1),r>=56320&&r<=57343)?(i-55296)*1024+r-56320+65536:i}function NO(t){return Object.keys(t).reduce((n,e)=>{let i=t[e];return!!i.icon?n[i.iconName]=i.icon:n[e]=i,n},{})}function MD(t,n){let e=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},{skipHooks:i=!1}=e,r=NO(n);typeof Gr.hooks.addPack=="function"&&!i?Gr.hooks.addPack(t,NO(n)):Gr.styles[t]=V(V({},Gr.styles[t]||{}),r),t==="fas"&&MD("fa",n)}var{styles:Gd,shims:bQ}=Gr,gR=Object.keys(LD),CQ=gR.reduce((t,n)=>(t[n]=Object.keys(LD[n]),t),{}),jD=null,_R={},yR={},vR={},bR={},CR={};function wQ(t){return~oQ.indexOf(t)}function DQ(t,n){let e=n.split("-"),i=e[0],r=e.slice(1).join("-");return i===t&&r!==""&&!wQ(r)?r:null}var wR=()=>{let t=i=>hD(Gd,(r,o,s)=>(r[s]=hD(o,i,{}),r),{});_R=t((i,r,o)=>(r[3]&&(i[r[3]]=o),r[2]&&r[2].filter(a=>typeof a=="number").forEach(a=>{i[a.toString(16)]=o}),i)),yR=t((i,r,o)=>(i[o]=o,r[2]&&r[2].filter(a=>typeof a=="string").forEach(a=>{i[a]=o}),i)),CR=t((i,r,o)=>{let s=r[2];return i[o]=o,s.forEach(a=>{i[a]=o}),i});let n="far"in Gd||Q.autoFetchSvg,e=hD(bQ,(i,r)=>{let o=r[0],s=r[1],a=r[2];return s==="far"&&!n&&(s="fas"),typeof o=="string"&&(i.names[o]={prefix:s,iconName:a}),typeof o=="number"&&(i.unicodes[o.toString(16)]={prefix:s,iconName:a}),i},{names:{},unicodes:{}});vR=e.names,bR=e.unicodes,jD=c_(Q.styleDefault,{family:Q.familyDefault})};lQ(t=>{jD=c_(t.styleDefault,{family:Q.familyDefault})});wR();function HD(t,n){return(_R[t]||{})[n]}function MQ(t,n){return(yR[t]||{})[n]}function Ia(t,n){return(CR[t]||{})[n]}function DR(t){return vR[t]||{prefix:null,iconName:null}}function SQ(t){let n=bR[t],e=HD("fas",t);return n||(e?{prefix:"fas",iconName:e}:null)||{prefix:null,iconName:null}}function ms(){return jD}var MR=()=>({prefix:null,iconName:null,rest:[]});function TQ(t){let n=En,e=gR.reduce((i,r)=>(i[r]="".concat(Q.cssPrefix,"-").concat(r),i),{});return rR.forEach(i=>{(t.includes(e[i])||t.some(r=>CQ[i].includes(r)))&&(n=i)}),n}function c_(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{family:e=En}=n,i=eQ[e][t];if(e===a_&&!t)return"fad";let r=PO[e][t]||PO[e][i],o=t in Gr.styles?t:null;return r||o||null}function EQ(t){let n=[],e=null;return t.forEach(i=>{let r=DQ(Q.cssPrefix,i);r?e=r:i&&n.push(i)}),{iconName:e,rest:n}}function LO(t){return t.sort().filter((n,e,i)=>i.indexOf(n)===e)}function u_(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{skipLookups:e=!1}=n,i=null,r=_D.concat(Uq),o=LO(t.filter(p=>r.includes(p))),s=LO(t.filter(p=>!_D.includes(p))),a=o.filter(p=>(i=p,!iR.includes(p))),[l=null]=a,c=TQ(o),u=V(V({},EQ(s)),{},{prefix:c_(l,{family:c})});return V(V(V({},u),AQ({values:t,family:c,styles:Gd,config:Q,canonical:u,givenPrefix:i})),xQ(e,i,u))}function xQ(t,n,e){let{prefix:i,iconName:r}=e;if(t||!i||!r)return{prefix:i,iconName:r};let o=n==="fa"?DR(r):{},s=Ia(i,r);return r=o.iconName||s||r,i=o.prefix||i,i==="far"&&!Gd.far&&Gd.fas&&!Q.autoFetchSvg&&(i="fas"),{prefix:i,iconName:r}}var IQ=rR.filter(t=>t!==En||t!==a_),kQ=Object.keys(gD).filter(t=>t!==En).map(t=>Object.keys(gD[t])).flat();function AQ(t){let{values:n,family:e,canonical:i,givenPrefix:r="",styles:o={},config:s={}}=t,a=e===a_,l=n.includes("fa-duotone")||n.includes("fad"),c=s.familyDefault==="duotone",u=i.prefix==="fad"||i.prefix==="fa-duotone";if(!a&&(l||c||u)&&(i.prefix="fad"),(n.includes("fa-brands")||n.includes("fab"))&&(i.prefix="fab"),!i.prefix&&IQ.includes(e)&&(Object.keys(o).find(v=>kQ.includes(v))||s.autoFetchSvg)){let v=Rq.get(e).defaultShortPrefixId;i.prefix=v,i.iconName=Ia(i.prefix,i.iconName)||i.iconName}return(i.prefix==="fa"||r==="fa")&&(i.prefix=ms()||"fas"),i}var SD=class{constructor(){this.definitions={}}add(){for(var n=arguments.length,e=new Array(n),i=0;i{this.definitions[o]=V(V({},this.definitions[o]||{}),r[o]),MD(o,r[o]);let s=LD[En][o];s&&MD(s,r[o]),wR()})}reset(){this.definitions={}}_pullDefinitions(n,e){let i=e.prefix&&e.iconName&&e.icon?{0:e}:e;return Object.keys(i).map(r=>{let{prefix:o,iconName:s,icon:a}=i[r],l=a[2];n[o]||(n[o]={}),l.length>0&&l.forEach(c=>{typeof c=="string"&&(n[o][c]=a)}),n[o][s]=a}),n}},FO=[],kc={},Ac={},PQ=Object.keys(Ac);function OQ(t,n){let{mixoutsTo:e}=n;return FO=t,kc={},Object.keys(Ac).forEach(i=>{PQ.indexOf(i)===-1&&delete Ac[i]}),FO.forEach(i=>{let r=i.mixout?i.mixout():{};if(Object.keys(r).forEach(o=>{typeof r[o]=="function"&&(e[o]=r[o]),typeof r[o]=="object"&&Object.keys(r[o]).forEach(s=>{e[o]||(e[o]={}),e[o][s]=r[o][s]})}),i.hooks){let o=i.hooks();Object.keys(o).forEach(s=>{kc[s]||(kc[s]=[]),kc[s].push(o[s])})}i.provides&&i.provides(Ac)}),e}function TD(t,n){for(var e=arguments.length,i=new Array(e>2?e-2:0),r=2;r{n=s.apply(null,[n,...i])}),n}function Aa(t){for(var n=arguments.length,e=new Array(n>1?n-1:0),i=1;i{o.apply(null,e)})}function gs(){let t=arguments[0],n=Array.prototype.slice.call(arguments,1);return Ac[t]?Ac[t].apply(null,n):void 0}function ED(t){t.prefix==="fa"&&(t.prefix="fas");let{iconName:n}=t,e=t.prefix||ms();if(n)return n=Ia(e,n)||n,RO(SR.definitions,e,n)||RO(Gr.styles,e,n)}var SR=new SD,RQ=()=>{Q.autoReplaceSvg=!1,Q.observeMutations=!1,Aa("noAuto")},NQ={i2svg:function(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return wo?(Aa("beforeI2svg",t),gs("pseudoElements2svg",t),gs("i2svg",t)):Promise.reject(new Error("Operation requires a DOM of some kind."))},watch:function(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},{autoReplaceSvgRoot:n}=t;Q.autoReplaceSvg===!1&&(Q.autoReplaceSvg=!0),Q.observeMutations=!0,gQ(()=>{FQ({autoReplaceSvgRoot:n}),Aa("watch",t)})}},LQ={icon:t=>{if(t===null)return null;if(typeof t=="object"&&t.prefix&&t.iconName)return{prefix:t.prefix,iconName:Ia(t.prefix,t.iconName)||t.iconName};if(Array.isArray(t)&&t.length===2){let n=t[1].indexOf("fa-")===0?t[1].slice(3):t[1],e=c_(t[0]);return{prefix:e,iconName:Ia(e,n)||n}}if(typeof t=="string"&&(t.indexOf("".concat(Q.cssPrefix,"-"))>-1||t.match(tQ))){let n=u_(t.split(" "),{skipLookups:!0});return{prefix:n.prefix||ms(),iconName:Ia(n.prefix,n.iconName)||n.iconName}}if(typeof t=="string"){let n=ms();return{prefix:n,iconName:Ia(n,t)||t}}}},pi={noAuto:RQ,config:Q,dom:NQ,parse:LQ,library:SR,findIconDefinition:ED,toHtml:Qd},FQ=function(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},{autoReplaceSvgRoot:n=ht}=t;(Object.keys(Gr.styles).length>0||Q.autoFetchSvg)&&wo&&Q.autoReplaceSvg&&pi.dom.i2svg({node:n})};function d_(t,n){return Object.defineProperty(t,"abstract",{get:n}),Object.defineProperty(t,"html",{get:function(){return t.abstract.map(e=>Qd(e))}}),Object.defineProperty(t,"node",{get:function(){if(!wo)return;let e=ht.createElement("div");return e.innerHTML=t.html,e.children}}),t}function VQ(t){let{children:n,main:e,mask:i,attributes:r,styles:o,transform:s}=t;if(VD(s)&&e.found&&!i.found){let{width:a,height:l}=e,c={x:a/l/2,y:.5};r.style=l_(V(V({},o),{},{"transform-origin":"".concat(c.x+s.x/16,"em ").concat(c.y+s.y/16,"em")}))}return[{tag:"svg",attributes:r,children:n}]}function jQ(t){let{prefix:n,iconName:e,children:i,attributes:r,symbol:o}=t,s=o===!0?"".concat(n,"-").concat(Q.cssPrefix,"-").concat(e):o;return[{tag:"svg",attributes:{style:"display: none;"},children:[{tag:"symbol",attributes:V(V({},r),{},{id:s}),children:i}]}]}function BD(t){let{icons:{main:n,mask:e},prefix:i,iconName:r,transform:o,symbol:s,title:a,maskId:l,titleId:c,extra:u,watchable:p=!1}=t,{width:v,height:_}=e.found?e:n,M=jq.includes(i),x=[Q.replacementClass,r?"".concat(Q.cssPrefix,"-").concat(r):""].filter(nn=>u.classes.indexOf(nn)===-1).filter(nn=>nn!==""||!!nn).concat(u.classes).join(" "),P={children:[],attributes:V(V({},u.attributes),{},{"data-prefix":i,"data-icon":r,class:x,role:u.attributes.role||"img",xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 ".concat(v," ").concat(_)})},F=M&&!~u.classes.indexOf("fa-fw")?{width:"".concat(v/_*16*.0625,"em")}:{};p&&(P.attributes[ka]=""),a&&(P.children.push({tag:"title",attributes:{id:P.attributes["aria-labelledby"]||"title-".concat(c||Wd())},children:[a]}),delete P.attributes.title);let K=V(V({},P),{},{prefix:i,iconName:r,main:n,mask:e,maskId:l,transform:o,symbol:s,styles:V(V({},F),u.styles)}),{children:ne,attributes:Ue}=e.found&&n.found?gs("generateAbstractMask",K)||{children:[],attributes:{}}:gs("generateAbstractIcon",K)||{children:[],attributes:{}};return K.children=ne,K.attributes=Ue,s?jQ(K):VQ(K)}function VO(t){let{content:n,width:e,height:i,transform:r,title:o,extra:s,watchable:a=!1}=t,l=V(V(V({},s.attributes),o?{title:o}:{}),{},{class:s.classes.join(" ")});a&&(l[ka]="");let c=V({},s.styles);VD(r)&&(c.transform=hQ({transform:r,startCentered:!0,width:e,height:i}),c["-webkit-transform"]=c.transform);let u=l_(c);u.length>0&&(l.style=u);let p=[];return p.push({tag:"span",attributes:l,children:[n]}),o&&p.push({tag:"span",attributes:{class:"sr-only"},children:[o]}),p}function HQ(t){let{content:n,title:e,extra:i}=t,r=V(V(V({},i.attributes),e?{title:e}:{}),{},{class:i.classes.join(" ")}),o=l_(i.styles);o.length>0&&(r.style=o);let s=[];return s.push({tag:"span",attributes:r,children:[n]}),e&&s.push({tag:"span",attributes:{class:"sr-only"},children:[e]}),s}var{styles:pD}=Gr;function xD(t){let n=t[0],e=t[1],[i]=t.slice(4),r=null;return Array.isArray(i)?r={tag:"g",attributes:{class:"".concat(Q.cssPrefix,"-").concat(dD.GROUP)},children:[{tag:"path",attributes:{class:"".concat(Q.cssPrefix,"-").concat(dD.SECONDARY),fill:"currentColor",d:i[0]}},{tag:"path",attributes:{class:"".concat(Q.cssPrefix,"-").concat(dD.PRIMARY),fill:"currentColor",d:i[1]}}]}:r={tag:"path",attributes:{fill:"currentColor",d:i}},{found:!0,width:n,height:e,icon:r}}var BQ={found:!1,width:512,height:512};function UQ(t,n){!lR&&!Q.showMissingIcons&&t&&console.error('Icon with name "'.concat(t,'" and prefix "').concat(n,'" is missing.'))}function ID(t,n){let e=n;return n==="fa"&&Q.styleDefault!==null&&(n=ms()),new Promise((i,r)=>{if(e==="fa"){let o=DR(t)||{};t=o.iconName||t,n=o.prefix||n}if(t&&n&&pD[n]&&pD[n][t]){let o=pD[n][t];return i(xD(o))}UQ(t,n),i(V(V({},BQ),{},{icon:Q.showMissingIcons&&t?gs("missingIconAbstract")||{}:{}}))})}var jO=()=>{},kD=Q.measurePerformance&&t_&&t_.mark&&t_.measure?t_:{mark:jO,measure:jO},$d='FA "6.7.2"',$Q=t=>(kD.mark("".concat($d," ").concat(t," begins")),()=>TR(t)),TR=t=>{kD.mark("".concat($d," ").concat(t," ends")),kD.measure("".concat($d," ").concat(t),"".concat($d," ").concat(t," begins"),"".concat($d," ").concat(t," ends"))},UD={begin:$Q,end:TR},i_=()=>{};function HO(t){return typeof(t.getAttribute?t.getAttribute(ka):null)=="string"}function zQ(t){let n=t.getAttribute?t.getAttribute(RD):null,e=t.getAttribute?t.getAttribute(ND):null;return n&&e}function YQ(t){return t&&t.classList&&t.classList.contains&&t.classList.contains(Q.replacementClass)}function WQ(){return Q.autoReplaceSvg===!0?r_.replace:r_[Q.autoReplaceSvg]||r_.replace}function GQ(t){return ht.createElementNS("http://www.w3.org/2000/svg",t)}function qQ(t){return ht.createElement(t)}function ER(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{ceFn:e=t.tag==="svg"?GQ:qQ}=n;if(typeof t=="string")return ht.createTextNode(t);let i=e(t.tag);return Object.keys(t.attributes||[]).forEach(function(o){i.setAttribute(o,t.attributes[o])}),(t.children||[]).forEach(function(o){i.appendChild(ER(o,{ceFn:e}))}),i}function QQ(t){let n=" ".concat(t.outerHTML," ");return n="".concat(n,"Font Awesome fontawesome.com "),n}var r_={replace:function(t){let n=t[0];if(n.parentNode)if(t[1].forEach(e=>{n.parentNode.insertBefore(ER(e),n)}),n.getAttribute(ka)===null&&Q.keepOriginalSource){let e=ht.createComment(QQ(n));n.parentNode.replaceChild(e,n)}else n.remove()},nest:function(t){let n=t[0],e=t[1];if(~FD(n).indexOf(Q.replacementClass))return r_.replace(t);let i=new RegExp("".concat(Q.cssPrefix,"-.*"));if(delete e[0].attributes.id,e[0].attributes.class){let o=e[0].attributes.class.split(" ").reduce((s,a)=>(a===Q.replacementClass||a.match(i)?s.toSvg.push(a):s.toNode.push(a),s),{toNode:[],toSvg:[]});e[0].attributes.class=o.toSvg.join(" "),o.toNode.length===0?n.removeAttribute("class"):n.setAttribute("class",o.toNode.join(" "))}let r=e.map(o=>Qd(o)).join(` +`);n.setAttribute(ka,""),n.innerHTML=r}};function BO(t){t()}function xR(t,n){let e=typeof n=="function"?n:i_;if(t.length===0)e();else{let i=BO;Q.mutateApproach===Jq&&(i=ps.requestAnimationFrame||BO),i(()=>{let r=WQ(),o=UD.begin("mutate");t.map(r),o(),e()})}}var $D=!1;function IR(){$D=!0}function AD(){$D=!1}var s_=null;function UO(t){if(!xO||!Q.observeMutations)return;let{treeCallback:n=i_,nodeCallback:e=i_,pseudoElementsCallback:i=i_,observeMutationsRoot:r=ht}=t;s_=new xO(o=>{if($D)return;let s=ms();Oc(o).forEach(a=>{if(a.type==="childList"&&a.addedNodes.length>0&&!HO(a.addedNodes[0])&&(Q.searchPseudoElements&&i(a.target),n(a.target)),a.type==="attributes"&&a.target.parentNode&&Q.searchPseudoElements&&i(a.target.parentNode),a.type==="attributes"&&HO(a.target)&&~rQ.indexOf(a.attributeName))if(a.attributeName==="class"&&zQ(a.target)){let{prefix:l,iconName:c}=u_(FD(a.target));a.target.setAttribute(RD,l||s),c&&a.target.setAttribute(ND,c)}else YQ(a.target)&&e(a.target)})}),wo&&s_.observe(r,{childList:!0,attributes:!0,characterData:!0,subtree:!0})}function KQ(){s_&&s_.disconnect()}function ZQ(t){let n=t.getAttribute("style"),e=[];return n&&(e=n.split(";").reduce((i,r)=>{let o=r.split(":"),s=o[0],a=o.slice(1);return s&&a.length>0&&(i[s]=a.join(":").trim()),i},{})),e}function JQ(t){let n=t.getAttribute("data-prefix"),e=t.getAttribute("data-icon"),i=t.innerText!==void 0?t.innerText.trim():"",r=u_(FD(t));return r.prefix||(r.prefix=ms()),n&&e&&(r.prefix=n,r.iconName=e),r.iconName&&r.prefix||(r.prefix&&i.length>0&&(r.iconName=MQ(r.prefix,t.innerText)||HD(r.prefix,DD(t.innerText))),!r.iconName&&Q.autoFetchSvg&&t.firstChild&&t.firstChild.nodeType===Node.TEXT_NODE&&(r.iconName=t.firstChild.data)),r}function XQ(t){let n=Oc(t.attributes).reduce((r,o)=>(r.name!=="class"&&r.name!=="style"&&(r[o.name]=o.value),r),{}),e=t.getAttribute("title"),i=t.getAttribute("data-fa-title-id");return Q.autoA11y&&(e?n["aria-labelledby"]="".concat(Q.replacementClass,"-title-").concat(i||Wd()):(n["aria-hidden"]="true",n.focusable="false")),n}function eK(){return{iconName:null,title:null,titleId:null,prefix:null,transform:Wr,symbol:!1,mask:{iconName:null,prefix:null,rest:[]},maskId:null,extra:{classes:[],styles:{},attributes:{}}}}function $O(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{styleParser:!0},{iconName:e,prefix:i,rest:r}=JQ(t),o=XQ(t),s=TD("parseNodeAttributes",{},t),a=n.styleParser?ZQ(t):[];return V({iconName:e,title:t.getAttribute("title"),titleId:t.getAttribute("data-fa-title-id"),prefix:i,transform:Wr,mask:{iconName:null,prefix:null,rest:[]},maskId:null,symbol:!1,extra:{classes:r,styles:a,attributes:o}},s)}var{styles:tK}=Gr;function kR(t){let n=Q.autoReplaceSvg==="nest"?$O(t,{styleParser:!1}):$O(t);return~n.extra.classes.indexOf(uR)?gs("generateLayersText",t,n):gs("generateSvgReplacementMutation",t,n)}function nK(){return[...Lq,..._D]}function zO(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;if(!wo)return Promise.resolve();let e=ht.documentElement.classList,i=u=>e.add("".concat(AO,"-").concat(u)),r=u=>e.remove("".concat(AO,"-").concat(u)),o=Q.autoFetchSvg?nK():iR.concat(Object.keys(tK));o.includes("fa")||o.push("fa");let s=[".".concat(uR,":not([").concat(ka,"])")].concat(o.map(u=>".".concat(u,":not([").concat(ka,"])"))).join(", ");if(s.length===0)return Promise.resolve();let a=[];try{a=Oc(t.querySelectorAll(s))}catch{}if(a.length>0)i("pending"),r("complete");else return Promise.resolve();let l=UD.begin("onTree"),c=a.reduce((u,p)=>{try{let v=kR(p);v&&u.push(v)}catch(v){lR||v.name==="MissingIcon"&&console.error(v)}return u},[]);return new Promise((u,p)=>{Promise.all(c).then(v=>{xR(v,()=>{i("active"),i("complete"),r("pending"),typeof n=="function"&&n(),l(),u()})}).catch(v=>{l(),p(v)})})}function iK(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;kR(t).then(e=>{e&&xR([e],n)})}function rK(t){return function(n){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=(n||{}).icon?n:ED(n||{}),{mask:r}=e;return r&&(r=(r||{}).icon?r:ED(r||{})),t(i,V(V({},e),{},{mask:r}))}}var oK=function(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{transform:e=Wr,symbol:i=!1,mask:r=null,maskId:o=null,title:s=null,titleId:a=null,classes:l=[],attributes:c={},styles:u={}}=n;if(!t)return;let{prefix:p,iconName:v,icon:_}=t;return d_(V({type:"icon"},t),()=>(Aa("beforeDOMElementCreation",{iconDefinition:t,params:n}),Q.autoA11y&&(s?c["aria-labelledby"]="".concat(Q.replacementClass,"-title-").concat(a||Wd()):(c["aria-hidden"]="true",c.focusable="false")),BD({icons:{main:xD(_),mask:r?xD(r.icon):{found:!1,width:null,height:null,icon:{}}},prefix:p,iconName:v,transform:V(V({},Wr),e),symbol:i,title:s,maskId:o,titleId:a,extra:{attributes:c,styles:u,classes:l}})))},sK={mixout(){return{icon:rK(oK)}},hooks(){return{mutationObserverCallbacks(t){return t.treeCallback=zO,t.nodeCallback=iK,t}}},provides(t){t.i2svg=function(n){let{node:e=ht,callback:i=()=>{}}=n;return zO(e,i)},t.generateSvgReplacementMutation=function(n,e){let{iconName:i,title:r,titleId:o,prefix:s,transform:a,symbol:l,mask:c,maskId:u,extra:p}=e;return new Promise((v,_)=>{Promise.all([ID(i,s),c.iconName?ID(c.iconName,c.prefix):Promise.resolve({found:!1,width:512,height:512,icon:{}})]).then(M=>{let[x,P]=M;v([n,BD({icons:{main:x,mask:P},prefix:s,iconName:i,transform:a,symbol:l,maskId:u,title:r,titleId:o,extra:p,watchable:!0})])}).catch(_)})},t.generateAbstractIcon=function(n){let{children:e,attributes:i,main:r,transform:o,styles:s}=n,a=l_(s);a.length>0&&(i.style=a);let l;return VD(o)&&(l=gs("generateAbstractTransformGrouping",{main:r,transform:o,containerWidth:r.width,iconWidth:r.width})),e.push(l||r.icon),{children:e,attributes:i}}}},aK={mixout(){return{layer(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{classes:e=[]}=n;return d_({type:"layer"},()=>{Aa("beforeDOMElementCreation",{assembler:t,params:n});let i=[];return t(r=>{Array.isArray(r)?r.map(o=>{i=i.concat(o.abstract)}):i=i.concat(r.abstract)}),[{tag:"span",attributes:{class:["".concat(Q.cssPrefix,"-layers"),...e].join(" ")},children:i}]})}}}},lK={mixout(){return{counter(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{title:e=null,classes:i=[],attributes:r={},styles:o={}}=n;return d_({type:"counter",content:t},()=>(Aa("beforeDOMElementCreation",{content:t,params:n}),HQ({content:t.toString(),title:e,extra:{attributes:r,styles:o,classes:["".concat(Q.cssPrefix,"-layers-counter"),...i]}})))}}}},cK={mixout(){return{text(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{transform:e=Wr,title:i=null,classes:r=[],attributes:o={},styles:s={}}=n;return d_({type:"text",content:t},()=>(Aa("beforeDOMElementCreation",{content:t,params:n}),VO({content:t,transform:V(V({},Wr),e),title:i,extra:{attributes:o,styles:s,classes:["".concat(Q.cssPrefix,"-layers-text"),...r]}})))}}},provides(t){t.generateLayersText=function(n,e){let{title:i,transform:r,extra:o}=e,s=null,a=null;if(tR){let l=parseInt(getComputedStyle(n).fontSize,10),c=n.getBoundingClientRect();s=c.width/l,a=c.height/l}return Q.autoA11y&&!i&&(o.attributes["aria-hidden"]="true"),Promise.resolve([n,VO({content:n.innerHTML,width:s,height:a,transform:r,title:i,extra:o,watchable:!0})])}}},uK=new RegExp('"',"ug"),YO=[1105920,1112319],WO=V(V(V(V({},{FontAwesome:{normal:"fas",400:"fas"}}),Oq),Kq),$q),PD=Object.keys(WO).reduce((t,n)=>(t[n.toLowerCase()]=WO[n],t),{}),dK=Object.keys(PD).reduce((t,n)=>{let e=PD[n];return t[n]=e[900]||[...Object.entries(e)][0][1],t},{});function fK(t){let n=t.replace(uK,""),e=vQ(n,0),i=e>=YO[0]&&e<=YO[1],r=n.length===2?n[0]===n[1]:!1;return{value:DD(r?n[0]:n),isSecondary:i||r}}function hK(t,n){let e=t.replace(/^['"]|['"]$/g,"").toLowerCase(),i=parseInt(n),r=isNaN(i)?"normal":i;return(PD[e]||{})[r]||dK[e]}function GO(t,n){let e="".concat(Zq).concat(n.replace(":","-"));return new Promise((i,r)=>{if(t.getAttribute(e)!==null)return i();let s=Oc(t.children).filter(v=>v.getAttribute(vD)===n)[0],a=ps.getComputedStyle(t,n),l=a.getPropertyValue("font-family"),c=l.match(nQ),u=a.getPropertyValue("font-weight"),p=a.getPropertyValue("content");if(s&&!c)return t.removeChild(s),i();if(c&&p!=="none"&&p!==""){let v=a.getPropertyValue("content"),_=hK(l,u),{value:M,isSecondary:x}=fK(v),P=c[0].startsWith("FontAwesome"),F=HD(_,M),K=F;if(P){let ne=SQ(M);ne.iconName&&ne.prefix&&(F=ne.iconName,_=ne.prefix)}if(F&&!x&&(!s||s.getAttribute(RD)!==_||s.getAttribute(ND)!==K)){t.setAttribute(e,K),s&&t.removeChild(s);let ne=eK(),{extra:Ue}=ne;Ue.attributes[vD]=n,ID(F,_).then(nn=>{let Rn=BD(V(V({},ne),{},{icons:{main:nn,mask:MR()},prefix:_,iconName:K,extra:Ue,watchable:!0})),Wt=ht.createElementNS("http://www.w3.org/2000/svg","svg");n==="::before"?t.insertBefore(Wt,t.firstChild):t.appendChild(Wt),Wt.outerHTML=Rn.map(gn=>Qd(gn)).join(` +`),t.removeAttribute(e),i()}).catch(r)}else i()}else i()})}function pK(t){return Promise.all([GO(t,"::before"),GO(t,"::after")])}function mK(t){return t.parentNode!==document.head&&!~Xq.indexOf(t.tagName.toUpperCase())&&!t.getAttribute(vD)&&(!t.parentNode||t.parentNode.tagName!=="svg")}function qO(t){if(wo)return new Promise((n,e)=>{let i=Oc(t.querySelectorAll("*")).filter(mK).map(pK),r=UD.begin("searchPseudoElements");IR(),Promise.all(i).then(()=>{r(),AD(),n()}).catch(()=>{r(),AD(),e()})})}var gK={hooks(){return{mutationObserverCallbacks(t){return t.pseudoElementsCallback=qO,t}}},provides(t){t.pseudoElements2svg=function(n){let{node:e=ht}=n;Q.searchPseudoElements&&qO(e)}}},QO=!1,_K={mixout(){return{dom:{unwatch(){IR(),QO=!0}}}},hooks(){return{bootstrap(){UO(TD("mutationObserverCallbacks",{}))},noAuto(){KQ()},watch(t){let{observeMutationsRoot:n}=t;QO?AD():UO(TD("mutationObserverCallbacks",{observeMutationsRoot:n}))}}}},KO=t=>{let n={size:16,x:0,y:0,flipX:!1,flipY:!1,rotate:0};return t.toLowerCase().split(" ").reduce((e,i)=>{let r=i.toLowerCase().split("-"),o=r[0],s=r.slice(1).join("-");if(o&&s==="h")return e.flipX=!0,e;if(o&&s==="v")return e.flipY=!0,e;if(s=parseFloat(s),isNaN(s))return e;switch(o){case"grow":e.size=e.size+s;break;case"shrink":e.size=e.size-s;break;case"left":e.x=e.x-s;break;case"right":e.x=e.x+s;break;case"up":e.y=e.y-s;break;case"down":e.y=e.y+s;break;case"rotate":e.rotate=e.rotate+s;break}return e},n)},yK={mixout(){return{parse:{transform:t=>KO(t)}}},hooks(){return{parseNodeAttributes(t,n){let e=n.getAttribute("data-fa-transform");return e&&(t.transform=KO(e)),t}}},provides(t){t.generateAbstractTransformGrouping=function(n){let{main:e,transform:i,containerWidth:r,iconWidth:o}=n,s={transform:"translate(".concat(r/2," 256)")},a="translate(".concat(i.x*32,", ").concat(i.y*32,") "),l="scale(".concat(i.size/16*(i.flipX?-1:1),", ").concat(i.size/16*(i.flipY?-1:1),") "),c="rotate(".concat(i.rotate," 0 0)"),u={transform:"".concat(a," ").concat(l," ").concat(c)},p={transform:"translate(".concat(o/2*-1," -256)")},v={outer:s,inner:u,path:p};return{tag:"g",attributes:V({},v.outer),children:[{tag:"g",attributes:V({},v.inner),children:[{tag:e.icon.tag,children:e.icon.children,attributes:V(V({},e.icon.attributes),v.path)}]}]}}}},mD={x:0,y:0,width:"100%",height:"100%"};function ZO(t){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!0;return t.attributes&&(t.attributes.fill||n)&&(t.attributes.fill="black"),t}function vK(t){return t.tag==="g"?t.children:[t]}var bK={hooks(){return{parseNodeAttributes(t,n){let e=n.getAttribute("data-fa-mask"),i=e?u_(e.split(" ").map(r=>r.trim())):MR();return i.prefix||(i.prefix=ms()),t.mask=i,t.maskId=n.getAttribute("data-fa-mask-id"),t}}},provides(t){t.generateAbstractMask=function(n){let{children:e,attributes:i,main:r,mask:o,maskId:s,transform:a}=n,{width:l,icon:c}=r,{width:u,icon:p}=o,v=fQ({transform:a,containerWidth:u,iconWidth:l}),_={tag:"rect",attributes:V(V({},mD),{},{fill:"white"})},M=c.children?{children:c.children.map(ZO)}:{},x={tag:"g",attributes:V({},v.inner),children:[ZO(V({tag:c.tag,attributes:V(V({},c.attributes),v.path)},M))]},P={tag:"g",attributes:V({},v.outer),children:[x]},F="mask-".concat(s||Wd()),K="clip-".concat(s||Wd()),ne={tag:"mask",attributes:V(V({},mD),{},{id:F,maskUnits:"userSpaceOnUse",maskContentUnits:"userSpaceOnUse"}),children:[_,P]},Ue={tag:"defs",children:[{tag:"clipPath",attributes:{id:K},children:vK(p)},ne]};return e.push(Ue,{tag:"rect",attributes:V({fill:"currentColor","clip-path":"url(#".concat(K,")"),mask:"url(#".concat(F,")")},mD)}),{children:e,attributes:i}}}},CK={provides(t){let n=!1;ps.matchMedia&&(n=ps.matchMedia("(prefers-reduced-motion: reduce)").matches),t.missingIconAbstract=function(){let e=[],i={fill:"currentColor"},r={attributeType:"XML",repeatCount:"indefinite",dur:"2s"};e.push({tag:"path",attributes:V(V({},i),{},{d:"M156.5,447.7l-12.6,29.5c-18.7-9.5-35.9-21.2-51.5-34.9l22.7-22.7C127.6,430.5,141.5,440,156.5,447.7z M40.6,272H8.5 c1.4,21.2,5.4,41.7,11.7,61.1L50,321.2C45.1,305.5,41.8,289,40.6,272z M40.6,240c1.4-18.8,5.2-37,11.1-54.1l-29.5-12.6 C14.7,194.3,10,216.7,8.5,240H40.6z M64.3,156.5c7.8-14.9,17.2-28.8,28.1-41.5L69.7,92.3c-13.7,15.6-25.5,32.8-34.9,51.5 L64.3,156.5z M397,419.6c-13.9,12-29.4,22.3-46.1,30.4l11.9,29.8c20.7-9.9,39.8-22.6,56.9-37.6L397,419.6z M115,92.4 c13.9-12,29.4-22.3,46.1-30.4l-11.9-29.8c-20.7,9.9-39.8,22.6-56.8,37.6L115,92.4z M447.7,355.5c-7.8,14.9-17.2,28.8-28.1,41.5 l22.7,22.7c13.7-15.6,25.5-32.9,34.9-51.5L447.7,355.5z M471.4,272c-1.4,18.8-5.2,37-11.1,54.1l29.5,12.6 c7.5-21.1,12.2-43.5,13.6-66.8H471.4z M321.2,462c-15.7,5-32.2,8.2-49.2,9.4v32.1c21.2-1.4,41.7-5.4,61.1-11.7L321.2,462z M240,471.4c-18.8-1.4-37-5.2-54.1-11.1l-12.6,29.5c21.1,7.5,43.5,12.2,66.8,13.6V471.4z M462,190.8c5,15.7,8.2,32.2,9.4,49.2h32.1 c-1.4-21.2-5.4-41.7-11.7-61.1L462,190.8z M92.4,397c-12-13.9-22.3-29.4-30.4-46.1l-29.8,11.9c9.9,20.7,22.6,39.8,37.6,56.9 L92.4,397z M272,40.6c18.8,1.4,36.9,5.2,54.1,11.1l12.6-29.5C317.7,14.7,295.3,10,272,8.5V40.6z M190.8,50 c15.7-5,32.2-8.2,49.2-9.4V8.5c-21.2,1.4-41.7,5.4-61.1,11.7L190.8,50z M442.3,92.3L419.6,115c12,13.9,22.3,29.4,30.5,46.1 l29.8-11.9C470,128.5,457.3,109.4,442.3,92.3z M397,92.4l22.7-22.7c-15.6-13.7-32.8-25.5-51.5-34.9l-12.6,29.5 C370.4,72.1,384.4,81.5,397,92.4z"})});let o=V(V({},r),{},{attributeName:"opacity"}),s={tag:"circle",attributes:V(V({},i),{},{cx:"256",cy:"364",r:"28"}),children:[]};return n||s.children.push({tag:"animate",attributes:V(V({},r),{},{attributeName:"r",values:"28;14;28;28;14;28;"})},{tag:"animate",attributes:V(V({},o),{},{values:"1;0;1;1;0;1;"})}),e.push(s),e.push({tag:"path",attributes:V(V({},i),{},{opacity:"1",d:"M263.7,312h-16c-6.6,0-12-5.4-12-12c0-71,77.4-63.9,77.4-107.8c0-20-17.8-40.2-57.4-40.2c-29.1,0-44.3,9.6-59.2,28.7 c-3.9,5-11.1,6-16.2,2.4l-13.1-9.2c-5.6-3.9-6.9-11.8-2.6-17.2c21.2-27.2,46.4-44.7,91.2-44.7c52.3,0,97.4,29.8,97.4,80.2 c0,67.6-77.4,63.5-77.4,107.8C275.7,306.6,270.3,312,263.7,312z"}),children:n?[]:[{tag:"animate",attributes:V(V({},o),{},{values:"1;0;0;0;0;1;"})}]}),n||e.push({tag:"path",attributes:V(V({},i),{},{opacity:"0",d:"M232.5,134.5l7,168c0.3,6.4,5.6,11.5,12,11.5h9c6.4,0,11.7-5.1,12-11.5l7-168c0.3-6.8-5.2-12.5-12-12.5h-23 C237.7,122,232.2,127.7,232.5,134.5z"}),children:[{tag:"animate",attributes:V(V({},o),{},{values:"0;0;1;1;0;0;"})}]}),{tag:"g",attributes:{class:"missing"},children:e}}}},wK={hooks(){return{parseNodeAttributes(t,n){let e=n.getAttribute("data-fa-symbol"),i=e===null?!1:e===""?!0:e;return t.symbol=i,t}}}},DK=[mQ,sK,aK,lK,cK,gK,_K,yK,bK,CK,wK];OQ(DK,{mixoutsTo:pi});var xCe=pi.noAuto,MK=pi.config,ICe=pi.library,SK=pi.dom,TK=pi.parse,kCe=pi.findIconDefinition,ACe=pi.toHtml,EK=pi.icon,PCe=pi.layer,xK=pi.text,IK=pi.counter;var AR=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=we({type:t})}static{this.\u0275inj=Ce({})}}return t})();var f_=class t{accountService=S(lt);ngOnInit(){this.setCurrentUser()}setCurrentUser(){let n=localStorage.getItem("user");if(!n)return;let e=JSON.parse(n);this.accountService.setCurrentUser(e)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-root"]],decls:6,vars:0,consts:[["type","line-scale-pulse-out-rapid"],[1,"container",2,"margin-top","100px"]],template:function(e,i){e&1&&(d(0,"ngx-spinner",0)(1,"h3"),y(2,"Loading..."),f()(),I(3,"app-nav"),d(4,"div",1),I(5,"router-outlet"),f())},dependencies:[Yu,e_,tP,AR],encapsulation:2})};J0(f_,vO).catch(t=>console.error(t)); diff --git a/API/wwwroot/main-XWFP3YCG.js b/API/wwwroot/main-XWFP3YCG.js deleted file mode 100644 index 6e18bf3..0000000 --- a/API/wwwroot/main-XWFP3YCG.js +++ /dev/null @@ -1,20 +0,0 @@ -var iR=Object.defineProperty,rR=Object.defineProperties;var oR=Object.getOwnPropertyDescriptors;var vd=Object.getOwnPropertySymbols;var Mw=Object.prototype.hasOwnProperty,Sw=Object.prototype.propertyIsEnumerable;var Dw=(t,n,e)=>n in t?iR(t,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[n]=e,E=(t,n)=>{for(var e in n||={})Mw.call(n,e)&&Dw(t,e,n[e]);if(vd)for(var e of vd(n))Sw.call(n,e)&&Dw(t,e,n[e]);return t},W=(t,n)=>rR(t,oR(n));var fa=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(n,e)=>(typeof require<"u"?require:n)[e]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var wg=(t,n)=>{var e={};for(var i in t)Mw.call(t,i)&&n.indexOf(i)<0&&(e[i]=t[i]);if(t!=null&&vd)for(var i of vd(t))n.indexOf(i)<0&&Sw.call(t,i)&&(e[i]=t[i]);return e};var me=(t,n,e)=>new Promise((i,r)=>{var o=l=>{try{a(e.next(l))}catch(c){r(c)}},s=l=>{try{a(e.throw(l))}catch(c){r(c)}},a=l=>l.done?i(l.value):Promise.resolve(l.value).then(o,s);a((e=e.apply(t,n)).next())});function Eg(t,n){return Object.is(t,n)}var Ht=null,bd=!1,Tg=1,ci=Symbol("SIGNAL");function ge(t){let n=Ht;return Ht=t,n}function Ig(){return Ht}var dc={version:0,lastCleanEpoch:0,dirty:!1,producerNode:void 0,producerLastReadVersion:void 0,producerIndexOfThis:void 0,nextProducerIndex:0,liveConsumerNode:void 0,liveConsumerIndexOfThis:void 0,consumerAllowSignalWrites:!1,consumerIsAlwaysLive:!1,kind:"unknown",producerMustRecompute:()=>!1,producerRecomputeValue:()=>{},consumerMarkedDirty:()=>{},consumerOnSignalRead:()=>{}};function hc(t){if(bd)throw new Error("");if(Ht===null)return;Ht.consumerOnSignalRead(t);let n=Ht.nextProducerIndex++;if(Md(Ht),nt.nextProducerIndex;)t.producerNode.pop(),t.producerLastReadVersion.pop(),t.producerIndexOfThis.pop()}}function Og(t){Md(t);for(let n=0;n0}function Md(t){t.producerNode??=[],t.producerIndexOfThis??=[],t.producerLastReadVersion??=[]}function Iw(t){t.liveConsumerNode??=[],t.liveConsumerIndexOfThis??=[]}function xw(t){return t.producerNode!==void 0}function Ng(t,n){let e=Object.create(aR);e.computation=t,n!==void 0&&(e.equal=n);let i=()=>{if(xg(e),hc(e),e.value===Cd)throw e.error;return e.value};return i[ci]=e,i}var Dg=Symbol("UNSET"),Mg=Symbol("COMPUTING"),Cd=Symbol("ERRORED"),aR=W(E({},dc),{value:Dg,dirty:!0,error:null,equal:Eg,kind:"computed",producerMustRecompute(t){return t.value===Dg||t.value===Mg},producerRecomputeValue(t){if(t.value===Mg)throw new Error("Detected cycle in computations.");let n=t.value;t.value=Mg;let e=wd(t),i,r=!1;try{i=t.computation(),ge(null),r=n!==Dg&&n!==Cd&&i!==Cd&&t.equal(n,i)}catch(o){i=Cd,t.error=o}finally{Rg(t,e)}if(r){t.value=n;return}t.value=i,t.version++}});function lR(){throw new Error}var kw=lR;function Aw(t){kw(t)}function Lg(t){kw=t}var cR=null;function Fg(t,n){let e=Object.create(Sd);e.value=t,n!==void 0&&(e.equal=n);let i=()=>(hc(e),e.value);return i[ci]=e,i}function fc(t,n){Ag()||Aw(t),t.equal(t.value,n)||(t.value=n,uR(t))}function Vg(t,n){Ag()||Aw(t),fc(t,n(t.value))}var Sd=W(E({},dc),{equal:Eg,value:void 0,kind:"signal"});function uR(t){t.version++,Ew(),kg(t),cR?.()}function jg(t){let n=ge(null);try{return t()}finally{ge(n)}}var Hg;function pc(){return Hg}function Fr(t){let n=Hg;return Hg=t,n}var Ed=Symbol("NotFound");function K(t){return typeof t=="function"}function pa(t){let e=t(i=>{Error.call(i),i.stack=new Error().stack});return e.prototype=Object.create(Error.prototype),e.prototype.constructor=e,e}var Td=pa(t=>function(e){t(this),this.message=e?`${e.length} errors occurred during unsubscription: -${e.map((i,r)=>`${r+1}) ${i.toString()}`).join(` - `)}`:"",this.name="UnsubscriptionError",this.errors=e});function rs(t,n){if(t){let e=t.indexOf(n);0<=e&&t.splice(e,1)}}var Ue=class t{constructor(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}unsubscribe(){let n;if(!this.closed){this.closed=!0;let{_parentage:e}=this;if(e)if(this._parentage=null,Array.isArray(e))for(let o of e)o.remove(this);else e.remove(this);let{initialTeardown:i}=this;if(K(i))try{i()}catch(o){n=o instanceof Td?o.errors:[o]}let{_finalizers:r}=this;if(r){this._finalizers=null;for(let o of r)try{Rw(o)}catch(s){n=n??[],s instanceof Td?n=[...n,...s.errors]:n.push(s)}}if(n)throw new Td(n)}}add(n){var e;if(n&&n!==this)if(this.closed)Rw(n);else{if(n instanceof t){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=(e=this._finalizers)!==null&&e!==void 0?e:[]).push(n)}}_hasParent(n){let{_parentage:e}=this;return e===n||Array.isArray(e)&&e.includes(n)}_addParent(n){let{_parentage:e}=this;this._parentage=Array.isArray(e)?(e.push(n),e):e?[e,n]:n}_removeParent(n){let{_parentage:e}=this;e===n?this._parentage=null:Array.isArray(e)&&rs(e,n)}remove(n){let{_finalizers:e}=this;e&&rs(e,n),n instanceof t&&n._removeParent(this)}};Ue.EMPTY=(()=>{let t=new Ue;return t.closed=!0,t})();var Bg=Ue.EMPTY;function Id(t){return t instanceof Ue||t&&"closed"in t&&K(t.remove)&&K(t.add)&&K(t.unsubscribe)}function Rw(t){K(t)?t():t.unsubscribe()}var Ni={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var ma={setTimeout(t,n,...e){let{delegate:i}=ma;return i?.setTimeout?i.setTimeout(t,n,...e):setTimeout(t,n,...e)},clearTimeout(t){let{delegate:n}=ma;return(n?.clearTimeout||clearTimeout)(t)},delegate:void 0};function xd(t){ma.setTimeout(()=>{let{onUnhandledError:n}=Ni;if(n)n(t);else throw t})}function os(){}var Ow=Ug("C",void 0,void 0);function Pw(t){return Ug("E",void 0,t)}function Nw(t){return Ug("N",t,void 0)}function Ug(t,n,e){return{kind:t,value:n,error:e}}var ss=null;function ga(t){if(Ni.useDeprecatedSynchronousErrorHandling){let n=!ss;if(n&&(ss={errorThrown:!1,error:null}),t(),n){let{errorThrown:e,error:i}=ss;if(ss=null,e)throw i}}else t()}function Lw(t){Ni.useDeprecatedSynchronousErrorHandling&&ss&&(ss.errorThrown=!0,ss.error=t)}var as=class extends Ue{constructor(n){super(),this.isStopped=!1,n?(this.destination=n,Id(n)&&n.add(this)):this.destination=gR}static create(n,e,i){return new fo(n,e,i)}next(n){this.isStopped?Yg(Nw(n),this):this._next(n)}error(n){this.isStopped?Yg(Pw(n),this):(this.isStopped=!0,this._error(n))}complete(){this.isStopped?Yg(Ow,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()}}},pR=Function.prototype.bind;function $g(t,n){return pR.call(t,n)}var zg=class{constructor(n){this.partialObserver=n}next(n){let{partialObserver:e}=this;if(e.next)try{e.next(n)}catch(i){kd(i)}}error(n){let{partialObserver:e}=this;if(e.error)try{e.error(n)}catch(i){kd(i)}else kd(n)}complete(){let{partialObserver:n}=this;if(n.complete)try{n.complete()}catch(e){kd(e)}}},fo=class extends as{constructor(n,e,i){super();let r;if(K(n)||!n)r={next:n??void 0,error:e??void 0,complete:i??void 0};else{let o;this&&Ni.useDeprecatedNextContext?(o=Object.create(n),o.unsubscribe=()=>this.unsubscribe(),r={next:n.next&&$g(n.next,o),error:n.error&&$g(n.error,o),complete:n.complete&&$g(n.complete,o)}):r=n}this.destination=new zg(r)}};function kd(t){Ni.useDeprecatedSynchronousErrorHandling?Lw(t):xd(t)}function mR(t){throw t}function Yg(t,n){let{onStoppedNotification:e}=Ni;e&&ma.setTimeout(()=>e(t,n))}var gR={closed:!0,next:os,error:mR,complete:os};var _a=typeof Symbol=="function"&&Symbol.observable||"@@observable";function Kt(t){return t}function Wg(...t){return Gg(t)}function Gg(t){return t.length===0?Kt:t.length===1?t[0]:function(e){return t.reduce((i,r)=>r(i),e)}}var ne=(()=>{class t{constructor(e){e&&(this._subscribe=e)}lift(e){let i=new t;return i.source=this,i.operator=e,i}subscribe(e,i,r){let o=yR(e)?e:new fo(e,i,r);return ga(()=>{let{operator:s,source:a}=this;o.add(s?s.call(o,a):a?this._subscribe(o):this._trySubscribe(o))}),o}_trySubscribe(e){try{return this._subscribe(e)}catch(i){e.error(i)}}forEach(e,i){return i=Fw(i),new i((r,o)=>{let s=new fo({next:a=>{try{e(a)}catch(l){o(l),s.unsubscribe()}},error:o,complete:r});this.subscribe(s)})}_subscribe(e){var i;return(i=this.source)===null||i===void 0?void 0:i.subscribe(e)}[_a](){return this}pipe(...e){return Gg(e)(this)}toPromise(e){return e=Fw(e),new e((i,r)=>{let o;this.subscribe(s=>o=s,s=>r(s),()=>i(o))})}}return t.create=n=>new t(n),t})();function Fw(t){var n;return(n=t??Ni.Promise)!==null&&n!==void 0?n:Promise}function _R(t){return t&&K(t.next)&&K(t.error)&&K(t.complete)}function yR(t){return t&&t instanceof as||_R(t)&&Id(t)}function qg(t){return K(t?.lift)}function se(t){return n=>{if(qg(n))return n.lift(function(e){try{return t(e,this)}catch(i){this.error(i)}});throw new TypeError("Unable to lift unknown Observable type")}}function ae(t,n,e,i,r){return new Qg(t,n,e,i,r)}var Qg=class extends as{constructor(n,e,i,r,o,s){super(n),this.onFinalize=o,this.shouldUnsubscribe=s,this._next=e?function(a){try{e(a)}catch(l){n.error(l)}}:super._next,this._error=r?function(a){try{r(a)}catch(l){n.error(l)}finally{this.unsubscribe()}}:super._error,this._complete=i?function(){try{i()}catch(a){n.error(a)}finally{this.unsubscribe()}}:super._complete}unsubscribe(){var n;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){let{closed:e}=this;super.unsubscribe(),!e&&((n=this.onFinalize)===null||n===void 0||n.call(this))}}};function ya(){return se((t,n)=>{let e=null;t._refCount++;let i=ae(n,void 0,void 0,void 0,()=>{if(!t||t._refCount<=0||0<--t._refCount){e=null;return}let r=t._connection,o=e;e=null,r&&(!o||r===o)&&r.unsubscribe(),n.unsubscribe()});t.subscribe(i),i.closed||(e=t.connect())})}var va=class extends ne{constructor(n,e){super(),this.source=n,this.subjectFactory=e,this._subject=null,this._refCount=0,this._connection=null,qg(n)&&(this.lift=n.lift)}_subscribe(n){return this.getSubject().subscribe(n)}getSubject(){let n=this._subject;return(!n||n.isStopped)&&(this._subject=this.subjectFactory()),this._subject}_teardown(){this._refCount=0;let{_connection:n}=this;this._subject=this._connection=null,n?.unsubscribe()}connect(){let n=this._connection;if(!n){n=this._connection=new Ue;let e=this.getSubject();n.add(this.source.subscribe(ae(e,void 0,()=>{this._teardown(),e.complete()},i=>{this._teardown(),e.error(i)},()=>this._teardown()))),n.closed&&(this._connection=null,n=Ue.EMPTY)}return n}refCount(){return ya()(this)}};var ba={schedule(t){let n=requestAnimationFrame,e=cancelAnimationFrame,{delegate:i}=ba;i&&(n=i.requestAnimationFrame,e=i.cancelAnimationFrame);let r=n(o=>{e=void 0,t(o)});return new Ue(()=>e?.(r))},requestAnimationFrame(...t){let{delegate:n}=ba;return(n?.requestAnimationFrame||requestAnimationFrame)(...t)},cancelAnimationFrame(...t){let{delegate:n}=ba;return(n?.cancelAnimationFrame||cancelAnimationFrame)(...t)},delegate:void 0};var Vw=pa(t=>function(){t(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"});var X=(()=>{class t extends ne{constructor(){super(),this.closed=!1,this.currentObservers=null,this.observers=[],this.isStopped=!1,this.hasError=!1,this.thrownError=null}lift(e){let i=new Ad(this,this);return i.operator=e,i}_throwIfClosed(){if(this.closed)throw new Vw}next(e){ga(()=>{if(this._throwIfClosed(),!this.isStopped){this.currentObservers||(this.currentObservers=Array.from(this.observers));for(let i of this.currentObservers)i.next(e)}})}error(e){ga(()=>{if(this._throwIfClosed(),!this.isStopped){this.hasError=this.isStopped=!0,this.thrownError=e;let{observers:i}=this;for(;i.length;)i.shift().error(e)}})}complete(){ga(()=>{if(this._throwIfClosed(),!this.isStopped){this.isStopped=!0;let{observers:e}=this;for(;e.length;)e.shift().complete()}})}unsubscribe(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null}get observed(){var e;return((e=this.observers)===null||e===void 0?void 0:e.length)>0}_trySubscribe(e){return this._throwIfClosed(),super._trySubscribe(e)}_subscribe(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)}_innerSubscribe(e){let{hasError:i,isStopped:r,observers:o}=this;return i||r?Bg:(this.currentObservers=null,o.push(e),new Ue(()=>{this.currentObservers=null,rs(o,e)}))}_checkFinalizedStatuses(e){let{hasError:i,thrownError:r,isStopped:o}=this;i?e.error(r):o&&e.complete()}asObservable(){let e=new ne;return e.source=this,e}}return t.create=(n,e)=>new Ad(n,e),t})(),Ad=class extends X{constructor(n,e){super(),this.destination=n,this.source=e}next(n){var e,i;(i=(e=this.destination)===null||e===void 0?void 0:e.next)===null||i===void 0||i.call(e,n)}error(n){var e,i;(i=(e=this.destination)===null||e===void 0?void 0:e.error)===null||i===void 0||i.call(e,n)}complete(){var n,e;(e=(n=this.destination)===null||n===void 0?void 0:n.complete)===null||e===void 0||e.call(n)}_subscribe(n){var e,i;return(i=(e=this.source)===null||e===void 0?void 0:e.subscribe(n))!==null&&i!==void 0?i:Bg}};var Pe=class extends X{constructor(n){super(),this._value=n}get value(){return this.getValue()}_subscribe(n){let e=super._subscribe(n);return!e.closed&&n.next(this._value),e}getValue(){let{hasError:n,thrownError:e,_value:i}=this;if(n)throw e;return this._throwIfClosed(),i}next(n){super.next(this._value=n)}};var Zg={now(){return(Zg.delegate||Date).now()},delegate:void 0};var Rd=class extends Ue{constructor(n,e){super()}schedule(n,e=0){return this}};var mc={setInterval(t,n,...e){let{delegate:i}=mc;return i?.setInterval?i.setInterval(t,n,...e):setInterval(t,n,...e)},clearInterval(t){let{delegate:n}=mc;return(n?.clearInterval||clearInterval)(t)},delegate:void 0};var po=class extends Rd{constructor(n,e){super(n,e),this.scheduler=n,this.work=e,this.pending=!1}schedule(n,e=0){var i;if(this.closed)return this;this.state=n;let r=this.id,o=this.scheduler;return r!=null&&(this.id=this.recycleAsyncId(o,r,e)),this.pending=!0,this.delay=e,this.id=(i=this.id)!==null&&i!==void 0?i:this.requestAsyncId(o,this.id,e),this}requestAsyncId(n,e,i=0){return mc.setInterval(n.flush.bind(n,this),i)}recycleAsyncId(n,e,i=0){if(i!=null&&this.delay===i&&this.pending===!1)return e;e!=null&&mc.clearInterval(e)}execute(n,e){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;let i=this._execute(n,e);if(i)return i;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))}_execute(n,e){let i=!1,r;try{this.work(n)}catch(o){i=!0,r=o||new Error("Scheduled action threw falsy error")}if(i)return this.unsubscribe(),r}unsubscribe(){if(!this.closed){let{id:n,scheduler:e}=this,{actions:i}=e;this.work=this.state=this.scheduler=null,this.pending=!1,rs(i,this),n!=null&&(this.id=this.recycleAsyncId(e,n,null)),this.delay=null,super.unsubscribe()}}};var Ca=class t{constructor(n,e=t.now){this.schedulerActionCtor=n,this.now=e}schedule(n,e=0,i){return new this.schedulerActionCtor(this,n).schedule(i,e)}};Ca.now=Zg.now;var mo=class extends Ca{constructor(n,e=Ca.now){super(n,e),this.actions=[],this._active=!1}flush(n){let{actions:e}=this;if(this._active){e.push(n);return}let i;this._active=!0;do if(i=n.execute(n.state,n.delay))break;while(n=e.shift());if(this._active=!1,i){for(;n=e.shift();)n.unsubscribe();throw i}}};var gc=new mo(po),jw=gc;var Od=class extends po{constructor(n,e){super(n,e),this.scheduler=n,this.work=e}schedule(n,e=0){return e>0?super.schedule(n,e):(this.delay=e,this.state=n,this.scheduler.flush(this),this)}execute(n,e){return e>0||this.closed?super.execute(n,e):this._execute(n,e)}requestAsyncId(n,e,i=0){return i!=null&&i>0||i==null&&this.delay>0?super.requestAsyncId(n,e,i):(n.flush(this),0)}};var Pd=class extends mo{};var Kg=new Pd(Od);var Nd=class extends po{constructor(n,e){super(n,e),this.scheduler=n,this.work=e}requestAsyncId(n,e,i=0){return i!==null&&i>0?super.requestAsyncId(n,e,i):(n.actions.push(this),n._scheduled||(n._scheduled=ba.requestAnimationFrame(()=>n.flush(void 0))))}recycleAsyncId(n,e,i=0){var r;if(i!=null?i>0:this.delay>0)return super.recycleAsyncId(n,e,i);let{actions:o}=n;e!=null&&e===n._scheduled&&((r=o[o.length-1])===null||r===void 0?void 0:r.id)!==e&&(ba.cancelAnimationFrame(e),n._scheduled=void 0)}};var Ld=class extends mo{flush(n){this._active=!0;let e;n?e=n.id:(e=this._scheduled,this._scheduled=void 0);let{actions:i}=this,r;n=n||i.shift();do if(r=n.execute(n.state,n.delay))break;while((n=i[0])&&n.id===e&&i.shift());if(this._active=!1,r){for(;(n=i[0])&&n.id===e&&i.shift();)n.unsubscribe();throw r}}};var wa=new Ld(Nd);var Mt=new ne(t=>t.complete());function Jg(t){return t?vR(t):Mt}function vR(t){return new ne(n=>t.schedule(()=>n.complete()))}function Fd(t){return t&&K(t.schedule)}function Xg(t){return t[t.length-1]}function Vd(t){return K(Xg(t))?t.pop():void 0}function ir(t){return Fd(Xg(t))?t.pop():void 0}function Hw(t,n){return typeof Xg(t)=="number"?t.pop():n}function Uw(t,n,e,i){var r=arguments.length,o=r<3?n:i===null?i=Object.getOwnPropertyDescriptor(n,e):i,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")o=Reflect.decorate(t,n,e,i);else for(var a=t.length-1;a>=0;a--)(s=t[a])&&(o=(r<3?s(o):r>3?s(n,e,o):s(n,e))||o);return r>3&&o&&Object.defineProperty(n,e,o),o}function $w(t,n){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,n)}function Yw(t,n,e,i){function r(o){return o instanceof e?o:new e(function(s){s(o)})}return new(e||(e=Promise))(function(o,s){function a(u){try{c(i.next(u))}catch(m){s(m)}}function l(u){try{c(i.throw(u))}catch(m){s(m)}}function c(u){u.done?o(u.value):r(u.value).then(a,l)}c((i=i.apply(t,n||[])).next())})}function Bw(t){var n=typeof Symbol=="function"&&Symbol.iterator,e=n&&t[n],i=0;if(e)return e.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}function ls(t){return this instanceof ls?(this.v=t,this):new ls(t)}function zw(t,n,e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=e.apply(t,n||[]),r,o=[];return r=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",s),r[Symbol.asyncIterator]=function(){return this},r;function s(_){return function(M){return Promise.resolve(M).then(_,m)}}function a(_,M){i[_]&&(r[_]=function(I){return new Promise(function(O,V){o.push([_,I,O,V])>1||l(_,I)})},M&&(r[_]=M(r[_])))}function l(_,M){try{c(i[_](M))}catch(I){b(o[0][3],I)}}function c(_){_.value instanceof ls?Promise.resolve(_.value.v).then(u,m):b(o[0][2],_)}function u(_){l("next",_)}function m(_){l("throw",_)}function b(_,M){_(M),o.shift(),o.length&&l(o[0][0],o[0][1])}}function Ww(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=t[Symbol.asyncIterator],e;return n?n.call(t):(t=typeof Bw=="function"?Bw(t):t[Symbol.iterator](),e={},i("next"),i("throw"),i("return"),e[Symbol.asyncIterator]=function(){return this},e);function i(o){e[o]=t[o]&&function(s){return new Promise(function(a,l){s=t[o](s),r(a,l,s.done,s.value)})}}function r(o,s,a,l){Promise.resolve(l).then(function(c){o({value:c,done:a})},s)}}var Da=t=>t&&typeof t.length=="number"&&typeof t!="function";function jd(t){return K(t?.then)}function Hd(t){return K(t[_a])}function Bd(t){return Symbol.asyncIterator&&K(t?.[Symbol.asyncIterator])}function Ud(t){return new TypeError(`You provided ${t!==null&&typeof t=="object"?"an invalid object":`'${t}'`} where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}function bR(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var $d=bR();function Yd(t){return K(t?.[$d])}function zd(t){return zw(this,arguments,function*(){let e=t.getReader();try{for(;;){let{value:i,done:r}=yield ls(e.read());if(r)return yield ls(void 0);yield yield ls(i)}}finally{e.releaseLock()}})}function Wd(t){return K(t?.getReader)}function Ze(t){if(t instanceof ne)return t;if(t!=null){if(Hd(t))return CR(t);if(Da(t))return wR(t);if(jd(t))return DR(t);if(Bd(t))return Gw(t);if(Yd(t))return MR(t);if(Wd(t))return SR(t)}throw Ud(t)}function CR(t){return new ne(n=>{let e=t[_a]();if(K(e.subscribe))return e.subscribe(n);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function wR(t){return new ne(n=>{for(let e=0;e{t.then(e=>{n.closed||(n.next(e),n.complete())},e=>n.error(e)).then(null,xd)})}function MR(t){return new ne(n=>{for(let e of t)if(n.next(e),n.closed)return;n.complete()})}function Gw(t){return new ne(n=>{ER(t,n).catch(e=>n.error(e))})}function SR(t){return Gw(zd(t))}function ER(t,n){var e,i,r,o;return Yw(this,void 0,void 0,function*(){try{for(e=Ww(t);i=yield e.next(),!i.done;){let s=i.value;if(n.next(s),n.closed)return}}catch(s){r={error:s}}finally{try{i&&!i.done&&(o=e.return)&&(yield o.call(e))}finally{if(r)throw r.error}}n.complete()})}function Sn(t,n,e,i=0,r=!1){let o=n.schedule(function(){e(),r?t.add(this.schedule(null,i)):this.unsubscribe()},i);if(t.add(o),!r)return o}function cs(t,n=0){return se((e,i)=>{e.subscribe(ae(i,r=>Sn(i,t,()=>i.next(r),n),()=>Sn(i,t,()=>i.complete(),n),r=>Sn(i,t,()=>i.error(r),n)))})}function Gd(t,n=0){return se((e,i)=>{i.add(t.schedule(()=>e.subscribe(i),n))})}function qw(t,n){return Ze(t).pipe(Gd(n),cs(n))}function Qw(t,n){return Ze(t).pipe(Gd(n),cs(n))}function Zw(t,n){return new ne(e=>{let i=0;return n.schedule(function(){i===t.length?e.complete():(e.next(t[i++]),e.closed||this.schedule())})})}function Kw(t,n){return new ne(e=>{let i;return Sn(e,n,()=>{i=t[$d](),Sn(e,n,()=>{let r,o;try{({value:r,done:o}=i.next())}catch(s){e.error(s);return}o?e.complete():e.next(r)},0,!0)}),()=>K(i?.return)&&i.return()})}function qd(t,n){if(!t)throw new Error("Iterable cannot be null");return new ne(e=>{Sn(e,n,()=>{let i=t[Symbol.asyncIterator]();Sn(e,n,()=>{i.next().then(r=>{r.done?e.complete():e.next(r.value)})},0,!0)})})}function Jw(t,n){return qd(zd(t),n)}function Xw(t,n){if(t!=null){if(Hd(t))return qw(t,n);if(Da(t))return Zw(t,n);if(jd(t))return Qw(t,n);if(Bd(t))return qd(t,n);if(Yd(t))return Kw(t,n);if(Wd(t))return Jw(t,n)}throw Ud(t)}function Ke(t,n){return n?Xw(t,n):Ze(t)}function Q(...t){let n=ir(t);return Ke(t,n)}function Ma(t,n){let e=K(t)?t:()=>t,i=r=>r.error(e());return new ne(n?r=>n.schedule(i,0,r):i)}function e_(t){return!!t&&(t instanceof ne||K(t.lift)&&K(t.subscribe))}var Li=pa(t=>function(){t(this),this.name="EmptyError",this.message="no elements in sequence"});function Qd(t,n){let e=typeof n=="object";return new Promise((i,r)=>{let o=new fo({next:s=>{i(s),o.unsubscribe()},error:r,complete:()=>{e?i(n.defaultValue):r(new Li)}});t.subscribe(o)})}function eD(t){return t instanceof Date&&!isNaN(t)}function G(t,n){return se((e,i)=>{let r=0;e.subscribe(ae(i,o=>{i.next(t.call(n,o,r++))}))})}var{isArray:TR}=Array;function IR(t,n){return TR(n)?t(...n):t(n)}function Sa(t){return G(n=>IR(t,n))}var{isArray:xR}=Array,{getPrototypeOf:kR,prototype:AR,keys:RR}=Object;function Zd(t){if(t.length===1){let n=t[0];if(xR(n))return{args:n,keys:null};if(OR(n)){let e=RR(n);return{args:e.map(i=>n[i]),keys:e}}}return{args:t,keys:null}}function OR(t){return t&&typeof t=="object"&&kR(t)===AR}function Kd(t,n){return t.reduce((e,i,r)=>(e[i]=n[r],e),{})}function go(...t){let n=ir(t),e=Vd(t),{args:i,keys:r}=Zd(t);if(i.length===0)return Ke([],n);let o=new ne(PR(i,n,r?s=>Kd(r,s):Kt));return e?o.pipe(Sa(e)):o}function PR(t,n,e=Kt){return i=>{tD(n,()=>{let{length:r}=t,o=new Array(r),s=r,a=r;for(let l=0;l{let c=Ke(t[l],n),u=!1;c.subscribe(ae(i,m=>{o[l]=m,u||(u=!0,a--),a||i.next(e(o.slice()))},()=>{--s||i.complete()}))},i)},i)}}function tD(t,n,e){t?Sn(e,t,n):n()}function Jd(t,n,e,i,r,o,s,a){let l=[],c=0,u=0,m=!1,b=()=>{m&&!l.length&&!c&&n.complete()},_=I=>c{o&&n.next(I),c++;let O=!1;Ze(e(I,u++)).subscribe(ae(n,V=>{r?.(V),o?_(V):n.next(V)},()=>{O=!0},void 0,()=>{if(O)try{for(c--;l.length&&cM(V)):M(V)}b()}catch(V){n.error(V)}}))};return t.subscribe(ae(n,_,()=>{m=!0,b()})),()=>{a?.()}}function ze(t,n,e=1/0){return K(n)?ze((i,r)=>G((o,s)=>n(i,o,r,s))(Ze(t(i,r))),e):(typeof n=="number"&&(e=n),se((i,r)=>Jd(i,r,t,e)))}function Xd(t=1/0){return ze(Kt,t)}function nD(){return Xd(1)}function _o(...t){return nD()(Ke(t,ir(t)))}function eh(t){return new ne(n=>{Ze(t()).subscribe(n)})}function t_(...t){let n=Vd(t),{args:e,keys:i}=Zd(t),r=new ne(o=>{let{length:s}=e;if(!s){o.complete();return}let a=new Array(s),l=s,c=s;for(let u=0;u{m||(m=!0,c--),a[u]=b},()=>l--,void 0,()=>{(!l||!m)&&(c||o.next(i?Kd(i,a):a),o.complete())}))}});return n?r.pipe(Sa(n)):r}var NR=["addListener","removeListener"],LR=["addEventListener","removeEventListener"],FR=["on","off"];function ui(t,n,e,i){if(K(e)&&(i=e,e=void 0),i)return ui(t,n,e).pipe(Sa(i));let[r,o]=HR(t)?LR.map(s=>a=>t[s](n,a,e)):VR(t)?NR.map(iD(t,n)):jR(t)?FR.map(iD(t,n)):[];if(!r&&Da(t))return ze(s=>ui(s,n,e))(Ze(t));if(!r)throw new TypeError("Invalid event target");return new ne(s=>{let a=(...l)=>s.next(1o(a)})}function iD(t,n){return e=>i=>t[e](n,i)}function VR(t){return K(t.addListener)&&K(t.removeListener)}function jR(t){return K(t.on)&&K(t.off)}function HR(t){return K(t.addEventListener)&&K(t.removeEventListener)}function us(t=0,n,e=jw){let i=-1;return n!=null&&(Fd(n)?e=n:i=n),new ne(r=>{let o=eD(t)?+t-e.now():t;o<0&&(o=0);let s=0;return e.schedule(function(){r.closed||(r.next(s++),0<=i?this.schedule(void 0,i):r.complete())},o)})}function Ea(...t){let n=ir(t),e=Hw(t,1/0),i=t;return i.length?i.length===1?Ze(i[0]):Xd(e)(Ke(i,n)):Mt}function le(t,n){return se((e,i)=>{let r=0;e.subscribe(ae(i,o=>t.call(n,o,r++)&&i.next(o)))})}function Fi(t){return se((n,e)=>{let i=null,r=!1,o;i=n.subscribe(ae(e,void 0,void 0,s=>{o=Ze(t(s,Fi(t)(n))),i?(i.unsubscribe(),i=null,o.subscribe(e)):r=!0})),r&&(i.unsubscribe(),i=null,o.subscribe(e))})}function rD(t,n,e,i,r){return(o,s)=>{let a=e,l=n,c=0;o.subscribe(ae(s,u=>{let m=c++;l=a?t(l,u,m):(a=!0,u),i&&s.next(l)},r&&(()=>{a&&s.next(l),s.complete()})))}}function yo(t,n){return K(n)?ze(t,n,1):ze(t,1)}function th(t,n=gc){return se((e,i)=>{let r=null,o=null,s=null,a=()=>{if(r){r.unsubscribe(),r=null;let c=o;o=null,i.next(c)}};function l(){let c=s+t,u=n.now();if(u{o=c,s=n.now(),r||(r=n.schedule(l,t),i.add(r))},()=>{a(),i.complete()},void 0,()=>{o=r=null}))})}function vo(t){return se((n,e)=>{let i=!1;n.subscribe(ae(e,r=>{i=!0,e.next(r)},()=>{i||e.next(t),e.complete()}))})}function yt(t){return t<=0?()=>Mt:se((n,e)=>{let i=0;n.subscribe(ae(e,r=>{++i<=t&&(e.next(r),t<=i&&e.complete())}))})}function oD(){return se((t,n)=>{t.subscribe(ae(n,os))})}function sD(t){return G(()=>t)}function n_(t,n){return n?e=>_o(n.pipe(yt(1),oD()),e.pipe(n_(t))):ze((e,i)=>Ze(t(e,i)).pipe(yt(1),sD(e)))}function _c(t,n=gc){let e=us(t,n);return n_(()=>e)}function Vr(t,n=Kt){return t=t??BR,se((e,i)=>{let r,o=!0;e.subscribe(ae(i,s=>{let a=n(s);(o||!t(r,a))&&(o=!1,r=a,i.next(s))}))})}function BR(t,n){return t===n}function nh(t=UR){return se((n,e)=>{let i=!1;n.subscribe(ae(e,r=>{i=!0,e.next(r)},()=>i?e.complete():e.error(t())))})}function UR(){return new Li}function Ta(t,n=1/0,e){return n=(n||0)<1?1/0:n,se((i,r)=>Jd(i,r,t,n,void 0,!0,e))}function di(t){return se((n,e)=>{try{n.subscribe(e)}finally{e.add(t)}})}function jr(t,n){let e=arguments.length>=2;return i=>i.pipe(t?le((r,o)=>t(r,o,i)):Kt,yt(1),e?vo(n):nh(()=>new Li))}function Ia(t){return t<=0?()=>Mt:se((n,e)=>{let i=[];n.subscribe(ae(e,r=>{i.push(r),t{for(let r of i)e.next(r);e.complete()},void 0,()=>{i=null}))})}function i_(t,n){let e=arguments.length>=2;return i=>i.pipe(t?le((r,o)=>t(r,o,i)):Kt,Ia(1),e?vo(n):nh(()=>new Li))}function yc(t,n){return se(rD(t,n,arguments.length>=2,!0))}function r_(t){return le((n,e)=>t<=e)}function ds(...t){let n=ir(t);return se((e,i)=>{(n?_o(t,e,n):_o(t,e)).subscribe(i)})}function vt(t,n){return se((e,i)=>{let r=null,o=0,s=!1,a=()=>s&&!r&&i.complete();e.subscribe(ae(i,l=>{r?.unsubscribe();let c=0,u=o++;Ze(t(l,u)).subscribe(r=ae(i,m=>i.next(n?n(l,m,u,c++):m),()=>{r=null,a()}))},()=>{s=!0,a()}))})}function hi(t){return se((n,e)=>{Ze(t).subscribe(ae(e,()=>e.complete(),os)),!e.closed&&n.subscribe(e)})}function o_(t,n=!1){return se((e,i)=>{let r=0;e.subscribe(ae(i,o=>{let s=t(o,r++);(s||n)&&i.next(o),!s&&i.complete()}))})}function ct(t,n,e){let i=K(t)||n||e?{next:t,error:n,complete:e}:t;return i?se((r,o)=>{var s;(s=i.subscribe)===null||s===void 0||s.call(i);let a=!0;r.subscribe(ae(o,l=>{var c;(c=i.next)===null||c===void 0||c.call(i,l),o.next(l)},()=>{var l;a=!1,(l=i.complete)===null||l===void 0||l.call(i),o.complete()},l=>{var c;a=!1,(c=i.error)===null||c===void 0||c.call(i,l),o.error(l)},()=>{var l,c;a&&((l=i.unsubscribe)===null||l===void 0||l.call(i)),(c=i.finalize)===null||c===void 0||c.call(i)}))}):Kt}var XD="https://angular.dev/best-practices/security#preventing-cross-site-scripting-xss",R=class extends Error{code;constructor(n,e){super(Oy(n,e)),this.code=n}};function $R(t){return`NG0${Math.abs(t)}`}function Oy(t,n){return`${$R(t)}${n?": "+n:""}`}var eM=Symbol("InputSignalNode#UNSET"),YR=W(E({},Sd),{transformFn:void 0,applyValueToInputSignal(t,n){fc(t,n)}});function tM(t,n){let e=Object.create(YR);e.value=t,e.transformFn=n?.transform;function i(){if(hc(e),e.value===eM){let r=null;throw new R(-950,r)}return e.value}return i[ci]=e,i}function Ac(t){return{toString:t}.toString()}var ih="__parameters__";function zR(t){return function(...e){if(t){let i=t(...e);for(let r in i)this[r]=i[r]}}}function nM(t,n,e){return Ac(()=>{let i=zR(n);function r(...o){if(this instanceof r)return i.apply(this,o),this;let s=new r(...o);return a.annotation=s,a;function a(l,c,u){let m=l.hasOwnProperty(ih)?l[ih]:Object.defineProperty(l,ih,{value:[]})[ih];for(;m.length<=u;)m.push(null);return(m[u]=m[u]||[]).push(s),l}}return r.prototype.ngMetadataName=t,r.annotationCls=r,r})}var rr=globalThis;function We(t){for(let n in t)if(t[n]===We)return n;throw Error("Could not find renamed property on target object.")}function WR(t,n){for(let e in n)n.hasOwnProperty(e)&&!t.hasOwnProperty(e)&&(t[e]=n[e])}function In(t){if(typeof t=="string")return t;if(Array.isArray(t))return`[${t.map(In).join(", ")}]`;if(t==null)return""+t;let n=t.overriddenName||t.name;if(n)return`${n}`;let e=t.toString();if(e==null)return""+e;let i=e.indexOf(` -`);return i>=0?e.slice(0,i):e}function w_(t,n){return t?n?`${t} ${n}`:t:n||""}var GR=We({__forward_ref__:We});function He(t){return t.__forward_ref__=He,t.toString=function(){return In(this())},t}function _n(t){return iM(t)?t():t}function iM(t){return typeof t=="function"&&t.hasOwnProperty(GR)&&t.__forward_ref__===He}function x(t){return{token:t.token,providedIn:t.providedIn||null,factory:t.factory,value:void 0}}function ve(t){return{providers:t.providers||[],imports:t.imports||[]}}function Hh(t){return aD(t,oM)||aD(t,sM)}function rM(t){return Hh(t)!==null}function aD(t,n){return t.hasOwnProperty(n)?t[n]:null}function qR(t){let n=t&&(t[oM]||t[sM]);return n||null}function lD(t){return t&&(t.hasOwnProperty(cD)||t.hasOwnProperty(QR))?t[cD]:null}var oM=We({\u0275prov:We}),cD=We({\u0275inj:We}),sM=We({ngInjectableDef:We}),QR=We({ngInjectorDef:We}),B=class{_desc;ngMetadataName="InjectionToken";\u0275prov;constructor(n,e){this._desc=n,this.\u0275prov=void 0,typeof e=="number"?this.__NG_ELEMENT_ID__=e:e!==void 0&&(this.\u0275prov=x({token:this,providedIn:e.providedIn||"root",factory:e.factory}))}get multi(){return this}toString(){return`InjectionToken ${this._desc}`}};function aM(t){return t&&!!t.\u0275providers}var ZR=We({\u0275cmp:We}),KR=We({\u0275dir:We}),JR=We({\u0275pipe:We}),XR=We({\u0275mod:We}),ph=We({\u0275fac:We}),wc=We({__NG_ELEMENT_ID__:We}),uD=We({__NG_ENV_ID__:We});function ms(t){return typeof t=="string"?t:t==null?"":String(t)}function eO(t){return typeof t=="function"?t.name||t.toString():typeof t=="object"&&t!=null&&typeof t.type=="function"?t.type.name||t.type.toString():ms(t)}function lM(t,n){throw new R(-200,t)}function Py(t,n){throw new R(-201,!1)}var Ce=function(t){return t[t.Default=0]="Default",t[t.Host=1]="Host",t[t.Self=2]="Self",t[t.SkipSelf=4]="SkipSelf",t[t.Optional=8]="Optional",t}(Ce||{}),D_;function cM(){return D_}function En(t){let n=D_;return D_=t,n}function uM(t,n,e){let i=Hh(t);if(i&&i.providedIn=="root")return i.value===void 0?i.value=i.factory():i.value;if(e&Ce.Optional)return null;if(n!==void 0)return n;Py(t,"Injector")}var tO={},fs=tO,M_="__NG_DI_FLAG__",mh=class{injector;constructor(n){this.injector=n}retrieve(n,e){let i=e;return this.injector.get(n,i.optional?Ed:fs,i)}},gh="ngTempTokenPath",nO="ngTokenPath",iO=/\n/gm,rO="\u0275",dD="__source";function oO(t,n=Ce.Default){if(pc()===void 0)throw new R(-203,!1);if(pc()===null)return uM(t,void 0,n);{let e=pc(),i;return e instanceof mh?i=e.injector:i=e,i.get(t,n&Ce.Optional?null:void 0,n)}}function F(t,n=Ce.Default){return(cM()||oO)(_n(t),n)}function S(t,n=Ce.Default){return F(t,Bh(n))}function Bh(t){return typeof t>"u"||typeof t=="number"?t:0|(t.optional&&8)|(t.host&&1)|(t.self&&2)|(t.skipSelf&&4)}function S_(t){let n=[];for(let e=0;e ");else if(typeof n=="object"){let o=[];for(let s in n)if(n.hasOwnProperty(s)){let a=n[s];o.push(s+":"+(typeof a=="string"?JSON.stringify(a):In(a)))}r=`{${o.join(", ")}}`}return`${e}${i?"("+i+")":""}[${r}]: ${t.replace(iO,` - `)}`}var Ny=dM(nM("Optional"),8);var hM=dM(nM("SkipSelf"),4);function gs(t,n){let e=t.hasOwnProperty(ph);return e?t[ph]:null}function cO(t,n,e){if(t.length!==n.length)return!1;for(let i=0;iArray.isArray(e)?Ly(e,n):n(e))}function fM(t,n,e){n>=t.length?t.push(e):t.splice(n,0,e)}function _h(t,n){return n>=t.length-1?t.pop():t.splice(n,1)[0]}function dO(t,n){let e=[];for(let i=0;in;){let o=r-2;t[r]=t[o],r--}t[n]=e,t[n+1]=i}}function Fy(t,n,e){let i=Rc(t,n);return i>=0?t[i|1]=e:(i=~i,hO(t,i,n,e)),i}function s_(t,n){let e=Rc(t,n);if(e>=0)return t[e|1]}function Rc(t,n){return fO(t,n,1)}function fO(t,n,e){let i=0,r=t.length>>e;for(;r!==i;){let o=i+(r-i>>1),s=t[o<n?r=o:i=o+1}return~(r<{e.push(s)};return Ly(n,s=>{let a=s;E_(a,o,[],i)&&(r||=[],r.push(a))}),r!==void 0&&yM(r,o),e}function yM(t,n){for(let e=0;e{n(o,i)})}}function E_(t,n,e,i){if(t=_n(t),!t)return!1;let r=null,o=lD(t),s=!o&&Pa(t);if(!o&&!s){let l=t.ngModule;if(o=lD(l),o)r=l;else return!1}else{if(s&&!s.standalone)return!1;r=t}let a=i.has(r);if(s){if(a)return!1;if(i.add(r),s.dependencies){let l=typeof s.dependencies=="function"?s.dependencies():s.dependencies;for(let c of l)E_(c,n,e,i)}}else if(o){if(o.imports!=null&&!a){i.add(r);let c;try{Ly(o.imports,u=>{E_(u,n,e,i)&&(c||=[],c.push(u))})}finally{}c!==void 0&&yM(c,n)}if(!a){let c=gs(r)||(()=>new r);n({provide:r,useFactory:c,deps:Tn},r),n({provide:mM,useValue:r,multi:!0},r),n({provide:Oa,useValue:()=>F(r),multi:!0},r)}let l=o.providers;if(l!=null&&!a){let c=t;jy(l,u=>{n(u,c)})}}else return!1;return r!==t&&t.providers!==void 0}function jy(t,n){for(let e of t)aM(e)&&(e=e.\u0275providers),Array.isArray(e)?jy(e,n):n(e)}var gO=We({provide:String,useValue:We});function vM(t){return t!==null&&typeof t=="object"&&gO in t}function _O(t){return!!(t&&t.useExisting)}function yO(t){return!!(t&&t.useFactory)}function Na(t){return typeof t=="function"}function vO(t){return!!t.useClass}var Uh=new B(""),lh={},hD={},a_;function Hy(){return a_===void 0&&(a_=new yh),a_}var yn=class{},Dc=class extends yn{parent;source;scopes;records=new Map;_ngOnDestroyHooks=new Set;_onDestroyHooks=[];get destroyed(){return this._destroyed}_destroyed=!1;injectorDefTypes;constructor(n,e,i,r){super(),this.parent=e,this.source=i,this.scopes=r,I_(n,s=>this.processProvider(s)),this.records.set(pM,xa(void 0,this)),r.has("environment")&&this.records.set(yn,xa(void 0,this));let o=this.records.get(Uh);o!=null&&typeof o.value=="string"&&this.scopes.add(o.value),this.injectorDefTypes=new Set(this.get(mM,Tn,Ce.Self))}retrieve(n,e){let i=e;return this.get(n,i.optional?Ed:fs,i)}destroy(){bc(this),this._destroyed=!0;let n=ge(null);try{for(let i of this._ngOnDestroyHooks)i.ngOnDestroy();let e=this._onDestroyHooks;this._onDestroyHooks=[];for(let i of e)i()}finally{this.records.clear(),this._ngOnDestroyHooks.clear(),this.injectorDefTypes.clear(),ge(n)}}onDestroy(n){return bc(this),this._onDestroyHooks.push(n),()=>this.removeOnDestroy(n)}runInContext(n){bc(this);let e=Fr(this),i=En(void 0),r;try{return n()}finally{Fr(e),En(i)}}get(n,e=fs,i=Ce.Default){if(bc(this),n.hasOwnProperty(uD))return n[uD](this);i=Bh(i);let r,o=Fr(this),s=En(void 0);try{if(!(i&Ce.SkipSelf)){let l=this.records.get(n);if(l===void 0){let c=MO(n)&&Hh(n);c&&this.injectableDefInScope(c)?l=xa(T_(n),lh):l=null,this.records.set(n,l)}if(l!=null)return this.hydrate(n,l)}let a=i&Ce.Self?Hy():this.parent;return e=i&Ce.Optional&&e===fs?null:e,a.get(n,e)}catch(a){if(a.name==="NullInjectorError"){if((a[gh]=a[gh]||[]).unshift(In(n)),o)throw a;return aO(a,n,"R3InjectorError",this.source)}else throw a}finally{En(s),Fr(o)}}resolveInjectorInitializers(){let n=ge(null),e=Fr(this),i=En(void 0),r;try{let o=this.get(Oa,Tn,Ce.Self);for(let s of o)s()}finally{Fr(e),En(i),ge(n)}}toString(){let n=[],e=this.records;for(let i of e.keys())n.push(In(i));return`R3Injector[${n.join(", ")}]`}processProvider(n){n=_n(n);let e=Na(n)?n:_n(n&&n.provide),i=CO(n);if(!Na(n)&&n.multi===!0){let r=this.records.get(e);r||(r=xa(void 0,lh,!0),r.factory=()=>S_(r.multi),this.records.set(e,r)),e=n,r.multi.push(n)}this.records.set(e,i)}hydrate(n,e){let i=ge(null);try{return e.value===hD?lM(In(n)):e.value===lh&&(e.value=hD,e.value=e.factory()),typeof e.value=="object"&&e.value&&DO(e.value)&&this._ngOnDestroyHooks.add(e.value),e.value}finally{ge(i)}}injectableDefInScope(n){if(!n.providedIn)return!1;let e=_n(n.providedIn);return typeof e=="string"?e==="any"||this.scopes.has(e):this.injectorDefTypes.has(e)}removeOnDestroy(n){let e=this._onDestroyHooks.indexOf(n);e!==-1&&this._onDestroyHooks.splice(e,1)}};function T_(t){let n=Hh(t),e=n!==null?n.factory:gs(t);if(e!==null)return e;if(t instanceof B)throw new R(204,!1);if(t instanceof Function)return bO(t);throw new R(204,!1)}function bO(t){if(t.length>0)throw new R(204,!1);let e=qR(t);return e!==null?()=>e.factory(t):()=>new t}function CO(t){if(vM(t))return xa(void 0,t.useValue);{let n=bM(t);return xa(n,lh)}}function bM(t,n,e){let i;if(Na(t)){let r=_n(t);return gs(r)||T_(r)}else if(vM(t))i=()=>_n(t.useValue);else if(yO(t))i=()=>t.useFactory(...S_(t.deps||[]));else if(_O(t))i=()=>F(_n(t.useExisting));else{let r=_n(t&&(t.useClass||t.provide));if(wO(t))i=()=>new r(...S_(t.deps));else return gs(r)||T_(r)}return i}function bc(t){if(t.destroyed)throw new R(205,!1)}function xa(t,n,e=!1){return{factory:t,value:n,multi:e?[]:void 0}}function wO(t){return!!t.deps}function DO(t){return t!==null&&typeof t=="object"&&typeof t.ngOnDestroy=="function"}function MO(t){return typeof t=="function"||typeof t=="object"&&t instanceof B}function I_(t,n){for(let e of t)Array.isArray(e)?I_(e,n):e&&aM(e)?I_(e.\u0275providers,n):n(e)}function Gn(t,n){let e;t instanceof Dc?(bc(t),e=t):e=new mh(t);let i,r=Fr(e),o=En(void 0);try{return n()}finally{Fr(r),En(o)}}function SO(){return cM()!==void 0||pc()!=null}function EO(t){return typeof t=="function"}var ur=0,he=1,fe=2,un=3,Hi=4,An=5,La=6,vh=7,Bt=8,Fa=9,Hr=10,ut=11,Mc=12,fD=13,za=14,zn=15,ys=16,ka=17,Br=18,$h=19,CM=20,bo=21,l_=22,bh=23,fi=24,c_=25,Ut=26,By=1;var vs=7,Ch=8,Va=9,cn=10;function Co(t){return Array.isArray(t)&&typeof t[By]=="object"}function $r(t){return Array.isArray(t)&&t[By]===!0}function Uy(t){return(t.flags&4)!==0}function Wa(t){return t.componentOffset>-1}function Yh(t){return(t.flags&1)===1}function Bi(t){return!!t.template}function wh(t){return(t[fe]&512)!==0}function Oc(t){return(t[fe]&256)===256}var x_=class{previousValue;currentValue;firstChange;constructor(n,e,i){this.previousValue=n,this.currentValue=e,this.firstChange=i}isFirstChange(){return this.firstChange}};function wM(t,n,e,i){n!==null?n.applyValueToInputSignal(n,i):t[e]=i}var xe=(()=>{let t=()=>DM;return t.ngInherit=!0,t})();function DM(t){return t.type.prototype.ngOnChanges&&(t.setInput=IO),TO}function TO(){let t=SM(this),n=t?.current;if(n){let e=t.previous;if(e===_s)t.previous=n;else for(let i in n)e[i]=n[i];t.current=null,this.ngOnChanges(n)}}function IO(t,n,e,i,r){let o=this.declaredInputs[i],s=SM(t)||xO(t,{previous:_s,current:null}),a=s.current||(s.current={}),l=s.previous,c=l[o];a[o]=new x_(c&&c.currentValue,e,l===_s),wM(t,n,r,e)}var MM="__ngSimpleChanges__";function SM(t){return t[MM]||null}function xO(t,n){return t[MM]=n}var pD=null;var Je=function(t,n=null,e){pD?.(t,n,e)},kO="svg",AO="math";function sr(t){for(;Array.isArray(t);)t=t[ur];return t}function RO(t){for(;Array.isArray(t);){if(typeof t[By]=="object")return t;t=t[ur]}return null}function EM(t,n){return sr(n[t])}function dr(t,n){return sr(n[t.index])}function $y(t,n){return t.data[n]}function Yy(t,n){return t[n]}function ar(t,n){let e=n[t];return Co(e)?e:e[ur]}function OO(t){return(t[fe]&4)===4}function zy(t){return(t[fe]&128)===128}function PO(t){return $r(t[un])}function wo(t,n){return n==null?null:t[n]}function TM(t){t[ka]=0}function IM(t){t[fe]&1024||(t[fe]|=1024,zy(t)&&Wh(t))}function NO(t,n){for(;t>0;)n=n[za],t--;return n}function zh(t){return!!(t[fe]&9216||t[fi]?.dirty)}function k_(t){t[Hr].changeDetectionScheduler?.notify(8),t[fe]&64&&(t[fe]|=1024),zh(t)&&Wh(t)}function Wh(t){t[Hr].changeDetectionScheduler?.notify(0);let n=bs(t);for(;n!==null&&!(n[fe]&8192||(n[fe]|=8192,!zy(n)));)n=bs(n)}function xM(t,n){if(Oc(t))throw new R(911,!1);t[bo]===null&&(t[bo]=[]),t[bo].push(n)}function LO(t,n){if(t[bo]===null)return;let e=t[bo].indexOf(n);e!==-1&&t[bo].splice(e,1)}function bs(t){let n=t[un];return $r(n)?n[un]:n}function Wy(t){return t[vh]??=[]}function Gy(t){return t.cleanup??=[]}function FO(t,n,e,i){let r=Wy(n);r.push(e),t.firstCreatePass&&Gy(t).push(i,r.length-1)}var ye={lFrame:FM(null),bindingsEnabled:!0,skipHydrationRootTNode:null};var A_=!1;function VO(){return ye.lFrame.elementDepthCount}function jO(){ye.lFrame.elementDepthCount++}function HO(){ye.lFrame.elementDepthCount--}function qy(){return ye.bindingsEnabled}function kM(){return ye.skipHydrationRootTNode!==null}function BO(t){return ye.skipHydrationRootTNode===t}function UO(){ye.skipHydrationRootTNode=null}function ie(){return ye.lFrame.lView}function dt(){return ye.lFrame.tView}function C(t){return ye.lFrame.contextLView=t,t[Bt]}function w(t){return ye.lFrame.contextLView=null,t}function vn(){let t=AM();for(;t!==null&&t.type===64;)t=t.parent;return t}function AM(){return ye.lFrame.currentTNode}function $O(){let t=ye.lFrame,n=t.currentTNode;return t.isParent?n:n.parent}function Ms(t,n){let e=ye.lFrame;e.currentTNode=t,e.isParent=n}function Qy(){return ye.lFrame.isParent}function Zy(){ye.lFrame.isParent=!1}function YO(){return ye.lFrame.contextLView}function RM(){return A_}function mD(t){let n=A_;return A_=t,n}function Ga(){let t=ye.lFrame,n=t.bindingRootIndex;return n===-1&&(n=t.bindingRootIndex=t.tView.bindingStartIndex),n}function zO(){return ye.lFrame.bindingIndex}function WO(t){return ye.lFrame.bindingIndex=t}function Ss(){return ye.lFrame.bindingIndex++}function Ky(t){let n=ye.lFrame,e=n.bindingIndex;return n.bindingIndex=n.bindingIndex+t,e}function GO(){return ye.lFrame.inI18n}function qO(t,n){let e=ye.lFrame;e.bindingIndex=e.bindingRootIndex=t,R_(n)}function QO(){return ye.lFrame.currentDirectiveIndex}function R_(t){ye.lFrame.currentDirectiveIndex=t}function OM(t){let n=ye.lFrame.currentDirectiveIndex;return n===-1?null:t[n]}function PM(){return ye.lFrame.currentQueryIndex}function Jy(t){ye.lFrame.currentQueryIndex=t}function ZO(t){let n=t[he];return n.type===2?n.declTNode:n.type===1?t[An]:null}function NM(t,n,e){if(e&Ce.SkipSelf){let r=n,o=t;for(;r=r.parent,r===null&&!(e&Ce.Host);)if(r=ZO(o),r===null||(o=o[za],r.type&10))break;if(r===null)return!1;n=r,t=o}let i=ye.lFrame=LM();return i.currentTNode=n,i.lView=t,!0}function Xy(t){let n=LM(),e=t[he];ye.lFrame=n,n.currentTNode=e.firstChild,n.lView=t,n.tView=e,n.contextLView=t,n.bindingIndex=e.bindingStartIndex,n.inI18n=!1}function LM(){let t=ye.lFrame,n=t===null?null:t.child;return n===null?FM(t):n}function FM(t){let 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:t,child:null,inI18n:!1};return t!==null&&(t.child=n),n}function VM(){let t=ye.lFrame;return ye.lFrame=t.parent,t.currentTNode=null,t.lView=null,t}var jM=VM;function ev(){let t=VM();t.isParent=!0,t.tView=null,t.selectedIndex=-1,t.contextLView=null,t.elementDepthCount=0,t.currentDirectiveIndex=-1,t.currentNamespace=null,t.bindingRootIndex=-1,t.bindingIndex=-1,t.currentQueryIndex=0}function KO(t){return(ye.lFrame.contextLView=NO(t,ye.lFrame.contextLView))[Bt]}function Yr(){return ye.lFrame.selectedIndex}function Cs(t){ye.lFrame.selectedIndex=t}function Pc(){let t=ye.lFrame;return $y(t.tView,t.selectedIndex)}function JO(){return ye.lFrame.currentNamespace}var HM=!0;function Gh(){return HM}function qh(t){HM=t}function XO(t,n,e){let{ngOnChanges:i,ngOnInit:r,ngDoCheck:o}=n.type.prototype;if(i){let s=DM(n);(e.preOrderHooks??=[]).push(t,s),(e.preOrderCheckHooks??=[]).push(t,s)}r&&(e.preOrderHooks??=[]).push(0-t,r),o&&((e.preOrderHooks??=[]).push(t,o),(e.preOrderCheckHooks??=[]).push(t,o))}function tv(t,n){for(let e=n.directiveStart,i=n.directiveEnd;e=i)break}else n[l]<0&&(t[ka]+=65536),(a>14>16&&(t[fe]&3)===n&&(t[fe]+=16384,gD(a,o)):gD(a,o)}var Ra=-1,ws=class{factory;injectImpl;resolving=!1;canSeeViewProviders;multi;componentProviders;index;providerFactory;constructor(n,e,i){this.factory=n,this.canSeeViewProviders=e,this.injectImpl=i}};function tP(t){return(t.flags&8)!==0}function nP(t){return(t.flags&16)!==0}function iP(t,n,e){let i=0;for(;in){s=o-1;break}}}for(;o>16}function Mh(t,n){let e=oP(t),i=n;for(;e>0;)i=i[za],e--;return i}var O_=!0;function Sh(t){let n=O_;return O_=t,n}var sP=256,YM=sP-1,zM=5,aP=0,or={};function lP(t,n,e){let i;typeof e=="string"?i=e.charCodeAt(0)||0:e.hasOwnProperty(wc)&&(i=e[wc]),i==null&&(i=e[wc]=aP++);let r=i&YM,o=1<>zM)]|=o}function Eh(t,n){let e=WM(t,n);if(e!==-1)return e;let i=n[he];i.firstCreatePass&&(t.injectorIndex=n.length,d_(i.data,t),d_(n,null),d_(i.blueprint,null));let r=nv(t,n),o=t.injectorIndex;if($M(r)){let s=Dh(r),a=Mh(r,n),l=a[he].data;for(let c=0;c<8;c++)n[o+c]=a[s+c]|l[s+c]}return n[o+8]=r,o}function d_(t,n){t.push(0,0,0,0,0,0,0,0,n)}function WM(t,n){return t.injectorIndex===-1||t.parent&&t.parent.injectorIndex===t.injectorIndex||n[t.injectorIndex+8]===null?-1:t.injectorIndex}function nv(t,n){if(t.parent&&t.parent.injectorIndex!==-1)return t.parent.injectorIndex;let e=0,i=null,r=n;for(;r!==null;){if(i=KM(r),i===null)return Ra;if(e++,r=r[za],i.injectorIndex!==-1)return i.injectorIndex|e<<16}return Ra}function P_(t,n,e){lP(t,n,e)}function cP(t,n){if(n==="class")return t.classes;if(n==="style")return t.styles;let e=t.attrs;if(e){let i=e.length,r=0;for(;r>20,m=i?a:a+u,b=r?a+u:c;for(let _=m;_=l&&M.type===e)return _}if(r){let _=s[l];if(_&&Bi(_)&&_.type===e)return l}return null}function Sc(t,n,e,i){let r=t[e],o=n.data;if(r instanceof ws){let s=r;s.resolving&&lM(eO(o[e]));let a=Sh(s.canSeeViewProviders);s.resolving=!0;let l,c=s.injectImpl?En(s.injectImpl):null,u=NM(t,i,Ce.Default);try{r=t[e]=s.factory(void 0,o,t,i),n.firstCreatePass&&e>=i.directiveStart&&XO(e,o[e],n)}finally{c!==null&&En(c),Sh(a),s.resolving=!1,jM()}}return r}function dP(t){if(typeof t=="string")return t.charCodeAt(0)||0;let n=t.hasOwnProperty(wc)?t[wc]:void 0;return typeof n=="number"?n>=0?n&YM:hP:n}function yD(t,n,e){let i=1<>zM)]&i)}function vD(t,n){return!(t&Ce.Self)&&!(t&Ce.Host&&n)}var ps=class{_tNode;_lView;constructor(n,e){this._tNode=n,this._lView=e}get(n,e,i){return QM(this._tNode,this._lView,n,Bh(i),e)}};function hP(){return new ps(vn(),ie())}function bn(t){return Ac(()=>{let n=t.prototype.constructor,e=n[ph]||N_(n),i=Object.prototype,r=Object.getPrototypeOf(t.prototype).constructor;for(;r&&r!==i;){let o=r[ph]||N_(r);if(o&&o!==e)return o;r=Object.getPrototypeOf(r)}return o=>new o})}function N_(t){return iM(t)?()=>{let n=N_(_n(t));return n&&n()}:gs(t)}function fP(t,n,e,i,r){let o=t,s=n;for(;o!==null&&s!==null&&s[fe]&2048&&!wh(s);){let a=ZM(o,s,e,i|Ce.Self,or);if(a!==or)return a;let l=o.parent;if(!l){let c=s[CM];if(c){let u=c.get(e,or,i);if(u!==or)return u}l=KM(s),s=s[za]}o=l}return r}function KM(t){let n=t[he],e=n.type;return e===2?n.declTNode:e===1?t[An]:null}function iv(t){return cP(vn(),t)}function bD(t,n=null,e=null,i){let r=JM(t,n,e,i);return r.resolveInjectorInitializers(),r}function JM(t,n=null,e=null,i,r=new Set){let o=[e||Tn,Vy(t)];return i=i||(typeof t=="object"?void 0:In(t)),new Dc(o,n||Hy(),i||null,r)}var kt=class t{static THROW_IF_NOT_FOUND=fs;static NULL=new yh;static create(n,e){if(Array.isArray(n))return bD({name:""},e,n,"");{let i=n.name??"";return bD({name:i},n.parent,n.providers,i)}}static \u0275prov=x({token:t,providedIn:"any",factory:()=>F(pM)});static __NG_ELEMENT_ID__=-1};var pP=new B("");pP.__NG_ELEMENT_ID__=t=>{let n=vn();if(n===null)throw new R(204,!1);if(n.type&2)return n.value;if(t&Ce.Optional)return null;throw new R(204,!1)};var XM=!1,Nc=(()=>{class t{static __NG_ELEMENT_ID__=mP;static __NG_ENV_ID__=e=>e}return t})(),L_=class extends Nc{_lView;constructor(n){super(),this._lView=n}onDestroy(n){return xM(this._lView,n),()=>LO(this._lView,n)}};function mP(){return new L_(ie())}var Ec=class{},rv=new B("",{providedIn:"root",factory:()=>!1});var eS=new B(""),tS=new B(""),Mo=(()=>{class t{taskId=0;pendingTasks=new Set;get _hasPendingTasks(){return this.hasPendingTasks.value}hasPendingTasks=new Pe(!1);add(){this._hasPendingTasks||this.hasPendingTasks.next(!0);let e=this.taskId++;return this.pendingTasks.add(e),e}has(e){return this.pendingTasks.has(e)}remove(e){this.pendingTasks.delete(e),this.pendingTasks.size===0&&this._hasPendingTasks&&this.hasPendingTasks.next(!1)}ngOnDestroy(){this.pendingTasks.clear(),this._hasPendingTasks&&this.hasPendingTasks.next(!1)}static \u0275prov=x({token:t,providedIn:"root",factory:()=>new t})}return t})();var F_=class extends X{__isAsync;destroyRef=void 0;pendingTasks=void 0;constructor(n=!1){super(),this.__isAsync=n,SO()&&(this.destroyRef=S(Nc,{optional:!0})??void 0,this.pendingTasks=S(Mo,{optional:!0})??void 0)}emit(n){let e=ge(null);try{super.next(n)}finally{ge(e)}}subscribe(n,e,i){let r=n,o=e||(()=>null),s=i;if(n&&typeof n=="object"){let l=n;r=l.next?.bind(l),o=l.error?.bind(l),s=l.complete?.bind(l)}this.__isAsync&&(o=this.wrapInTimeout(o),r&&(r=this.wrapInTimeout(r)),s&&(s=this.wrapInTimeout(s)));let a=super.subscribe({next:r,error:o,complete:s});return n instanceof Ue&&n.add(a),a}wrapInTimeout(n){return e=>{let i=this.pendingTasks?.add();setTimeout(()=>{n(e),i!==void 0&&this.pendingTasks?.remove(i)})}}},P=F_;function Th(...t){}function nS(t){let n,e;function i(){t=Th;try{e!==void 0&&typeof cancelAnimationFrame=="function"&&cancelAnimationFrame(e),n!==void 0&&clearTimeout(n)}catch{}}return n=setTimeout(()=>{t(),i()}),typeof requestAnimationFrame=="function"&&(e=requestAnimationFrame(()=>{t(),i()})),()=>i()}function CD(t){return queueMicrotask(()=>t()),()=>{t=Th}}var ov="isAngularZone",Ih=ov+"_ID",gP=0,Me=class t{hasPendingMacrotasks=!1;hasPendingMicrotasks=!1;isStable=!0;onUnstable=new P(!1);onMicrotaskEmpty=new P(!1);onStable=new P(!1);onError=new P(!1);constructor(n){let{enableLongStackTrace:e=!1,shouldCoalesceEventChangeDetection:i=!1,shouldCoalesceRunChangeDetection:r=!1,scheduleInRootZone:o=XM}=n;if(typeof Zone>"u")throw new R(908,!1);Zone.assertZonePatched();let s=this;s._nesting=0,s._outer=s._inner=Zone.current,Zone.TaskTrackingZoneSpec&&(s._inner=s._inner.fork(new Zone.TaskTrackingZoneSpec)),e&&Zone.longStackTraceZoneSpec&&(s._inner=s._inner.fork(Zone.longStackTraceZoneSpec)),s.shouldCoalesceEventChangeDetection=!r&&i,s.shouldCoalesceRunChangeDetection=r,s.callbackScheduled=!1,s.scheduleInRootZone=o,vP(s)}static isInAngularZone(){return typeof Zone<"u"&&Zone.current.get(ov)===!0}static assertInAngularZone(){if(!t.isInAngularZone())throw new R(909,!1)}static assertNotInAngularZone(){if(t.isInAngularZone())throw new R(909,!1)}run(n,e,i){return this._inner.run(n,e,i)}runTask(n,e,i,r){let o=this._inner,s=o.scheduleEventTask("NgZoneEvent: "+r,n,_P,Th,Th);try{return o.runTask(s,e,i)}finally{o.cancelTask(s)}}runGuarded(n,e,i){return this._inner.runGuarded(n,e,i)}runOutsideAngular(n){return this._outer.run(n)}},_P={};function sv(t){if(t._nesting==0&&!t.hasPendingMicrotasks&&!t.isStable)try{t._nesting++,t.onMicrotaskEmpty.emit(null)}finally{if(t._nesting--,!t.hasPendingMicrotasks)try{t.runOutsideAngular(()=>t.onStable.emit(null))}finally{t.isStable=!0}}}function yP(t){if(t.isCheckStableRunning||t.callbackScheduled)return;t.callbackScheduled=!0;function n(){nS(()=>{t.callbackScheduled=!1,V_(t),t.isCheckStableRunning=!0,sv(t),t.isCheckStableRunning=!1})}t.scheduleInRootZone?Zone.root.run(()=>{n()}):t._outer.run(()=>{n()}),V_(t)}function vP(t){let n=()=>{yP(t)},e=gP++;t._inner=t._inner.fork({name:"angular",properties:{[ov]:!0,[Ih]:e,[Ih+e]:!0},onInvokeTask:(i,r,o,s,a,l)=>{if(bP(l))return i.invokeTask(o,s,a,l);try{return wD(t),i.invokeTask(o,s,a,l)}finally{(t.shouldCoalesceEventChangeDetection&&s.type==="eventTask"||t.shouldCoalesceRunChangeDetection)&&n(),DD(t)}},onInvoke:(i,r,o,s,a,l,c)=>{try{return wD(t),i.invoke(o,s,a,l,c)}finally{t.shouldCoalesceRunChangeDetection&&!t.callbackScheduled&&!CP(l)&&n(),DD(t)}},onHasTask:(i,r,o,s)=>{i.hasTask(o,s),r===o&&(s.change=="microTask"?(t._hasPendingMicrotasks=s.microTask,V_(t),sv(t)):s.change=="macroTask"&&(t.hasPendingMacrotasks=s.macroTask))},onHandleError:(i,r,o,s)=>(i.handleError(o,s),t.runOutsideAngular(()=>t.onError.emit(s)),!1)})}function V_(t){t._hasPendingMicrotasks||(t.shouldCoalesceEventChangeDetection||t.shouldCoalesceRunChangeDetection)&&t.callbackScheduled===!0?t.hasPendingMicrotasks=!0:t.hasPendingMicrotasks=!1}function wD(t){t._nesting++,t.isStable&&(t.isStable=!1,t.onUnstable.emit(null))}function DD(t){t._nesting--,sv(t)}var j_=class{hasPendingMicrotasks=!1;hasPendingMacrotasks=!1;isStable=!0;onUnstable=new P;onMicrotaskEmpty=new P;onStable=new P;onError=new P;run(n,e,i){return n.apply(e,i)}runGuarded(n,e,i){return n.apply(e,i)}runOutsideAngular(n){return n()}runTask(n,e,i,r){return n.apply(e,i)}};function bP(t){return iS(t,"__ignore_ng_zone__")}function CP(t){return iS(t,"__scheduler_tick__")}function iS(t,n){return!Array.isArray(t)||t.length!==1?!1:t[0]?.data?.[n]===!0}var lr=class{_console=console;handleError(n){this._console.error("ERROR",n)}},wP=new B("",{providedIn:"root",factory:()=>{let t=S(Me),n=S(lr);return e=>t.runOutsideAngular(()=>n.handleError(e))}}),H_=class{destroyed=!1;listeners=null;errorHandler=S(lr,{optional:!0});destroyRef=S(Nc);constructor(){this.destroyRef.onDestroy(()=>{this.destroyed=!0,this.listeners=null})}subscribe(n){if(this.destroyed)throw new R(953,!1);return(this.listeners??=[]).push(n),{unsubscribe:()=>{let e=this.listeners?.indexOf(n);e!==void 0&&e!==-1&&this.listeners?.splice(e,1)}}}emit(n){if(this.destroyed){console.warn(Oy(953,!1));return}if(this.listeners===null)return;let e=ge(null);try{for(let i of this.listeners)try{i(n)}catch(r){this.errorHandler?.handleError(r)}}finally{ge(e)}}};function Qh(t){return new H_}function MD(t,n){return tM(t,n)}function DP(t){return tM(eM,t)}var Rn=(MD.required=DP,MD);function MP(){return qa(vn(),ie())}function qa(t,n){return new $(dr(t,n))}var $=(()=>{class t{nativeElement;constructor(e){this.nativeElement=e}static __NG_ELEMENT_ID__=MP}return t})();function SP(t){return t instanceof $?t.nativeElement:t}function EP(t){return typeof t=="function"&&t[ci]!==void 0}function ht(t,n){let e=Fg(t,n?.equal),i=e[ci];return e.set=r=>fc(i,r),e.update=r=>Vg(i,r),e.asReadonly=TP.bind(e),e}function TP(){let t=this[ci];if(t.readonlyFn===void 0){let n=()=>this();n[ci]=t,t.readonlyFn=n}return t.readonlyFn}function rS(t){return EP(t)&&typeof t.set=="function"}function IP(){return this._results[Symbol.iterator]()}var Ha=class{_emitDistinctChangesOnly;dirty=!0;_onDirty=void 0;_results=[];_changesDetected=!1;_changes=void 0;length=0;first=void 0;last=void 0;get changes(){return this._changes??=new X}constructor(n=!1){this._emitDistinctChangesOnly=n}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,e){return this._results.reduce(n,e)}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,e){this.dirty=!1;let i=uO(n);(this._changesDetected=!cO(this._results,i,e))&&(this._results=i,this.length=i.length,this.last=i[this.length-1],this.first=i[0])}notifyOnChanges(){this._changes!==void 0&&(this._changesDetected||!this._emitDistinctChangesOnly)&&this._changes.next(this)}onDirty(n){this._onDirty=n}setDirty(){this.dirty=!0,this._onDirty?.()}destroy(){this._changes!==void 0&&(this._changes.complete(),this._changes.unsubscribe())}[Symbol.iterator]=IP};function oS(t){return(t.flags&128)===128}var sS=function(t){return t[t.OnPush=0]="OnPush",t[t.Default=1]="Default",t}(sS||{}),aS=new Map,xP=0;function kP(){return xP++}function AP(t){aS.set(t[$h],t)}function B_(t){aS.delete(t[$h])}var SD="__ngContext__";function Qa(t,n){Co(n)?(t[SD]=n[$h],AP(n)):t[SD]=n}function lS(t){return uS(t[Mc])}function cS(t){return uS(t[Hi])}function uS(t){for(;t!==null&&!$r(t);)t=t[Hi];return t}var U_;function dS(t){U_=t}function hS(){if(U_!==void 0)return U_;if(typeof document<"u")return document;throw new R(210,!1)}var av=new B("",{providedIn:"root",factory:()=>RP}),RP="ng",lv=new B(""),qn=new B("",{providedIn:"platform",factory:()=>"unknown"});var Lc=new B(""),cv=new B("",{providedIn:"root",factory:()=>hS().body?.querySelector("[ngCspNonce]")?.getAttribute("ngCspNonce")||null});var OP="h",PP="b";var fS=!1,NP=new B("",{providedIn:"root",factory:()=>fS});var pS=function(t){return t[t.CHANGE_DETECTION=0]="CHANGE_DETECTION",t[t.AFTER_NEXT_RENDER=1]="AFTER_NEXT_RENDER",t}(pS||{}),Zh=new B(""),ED=new Set;function Za(t){ED.has(t)||(ED.add(t),performance?.mark?.("mark_feature_usage",{detail:{feature:t}}))}var LP=(()=>{class t{impl=null;execute(){this.impl?.execute()}static \u0275prov=x({token:t,providedIn:"root",factory:()=>new t})}return t})();var FP=()=>null;function mS(t,n,e=!1){return FP(t,n,e)}function gS(t,n){let e=t.contentQueries;if(e!==null){let i=ge(null);try{for(let r=0;rt,createScript:t=>t,createScriptURL:t=>t})}catch{}return rh}function Kh(t){return VP()?.createHTML(t)||t}var oh;function _S(){if(oh===void 0&&(oh=null,rr.trustedTypes))try{oh=rr.trustedTypes.createPolicy("angular#unsafe-bypass",{createHTML:t=>t,createScript:t=>t,createScriptURL:t=>t})}catch{}return oh}function TD(t){return _S()?.createHTML(t)||t}function ID(t){return _S()?.createScriptURL(t)||t}var Ur=class{changingThisBreaksApplicationSecurity;constructor(n){this.changingThisBreaksApplicationSecurity=n}toString(){return`SafeValue must use [property]=binding: ${this.changingThisBreaksApplicationSecurity} (see ${XD})`}},Y_=class extends Ur{getTypeName(){return"HTML"}},z_=class extends Ur{getTypeName(){return"Style"}},W_=class extends Ur{getTypeName(){return"Script"}},G_=class extends Ur{getTypeName(){return"URL"}},q_=class extends Ur{getTypeName(){return"ResourceURL"}};function Ui(t){return t instanceof Ur?t.changingThisBreaksApplicationSecurity:t}function zr(t,n){let e=jP(t);if(e!=null&&e!==n){if(e==="ResourceURL"&&n==="URL")return!0;throw new Error(`Required a safe ${n}, got a ${e} (see ${XD})`)}return e===n}function jP(t){return t instanceof Ur&&t.getTypeName()||null}function yS(t){return new Y_(t)}function vS(t){return new z_(t)}function bS(t){return new W_(t)}function CS(t){return new G_(t)}function wS(t){return new q_(t)}function HP(t){let n=new Z_(t);return BP()?new Q_(n):n}var Q_=class{inertDocumentHelper;constructor(n){this.inertDocumentHelper=n}getInertBodyElement(n){n=""+n;try{let e=new window.DOMParser().parseFromString(Kh(n),"text/html").body;return e===null?this.inertDocumentHelper.getInertBodyElement(n):(e.firstChild?.remove(),e)}catch{return null}}},Z_=class{defaultDoc;inertDocument;constructor(n){this.defaultDoc=n,this.inertDocument=this.defaultDoc.implementation.createHTMLDocument("sanitization-inert")}getInertBodyElement(n){let e=this.inertDocument.createElement("template");return e.innerHTML=Kh(n),e}};function BP(){try{return!!new window.DOMParser().parseFromString(Kh(""),"text/html")}catch{return!1}}var UP=/^(?!javascript:)(?:[a-z0-9+.-]+:|[^&:\/?#]*(?:[\/?#]|$))/i;function Jh(t){return t=String(t),t.match(UP)?t:"unsafe:"+t}function Wr(t){let n={};for(let e of t.split(","))n[e]=!0;return n}function Fc(...t){let n={};for(let e of t)for(let i in e)e.hasOwnProperty(i)&&(n[i]=!0);return n}var DS=Wr("area,br,col,hr,img,wbr"),MS=Wr("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr"),SS=Wr("rp,rt"),$P=Fc(SS,MS),YP=Fc(MS,Wr("address,article,aside,blockquote,caption,center,del,details,dialog,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,main,map,menu,nav,ol,pre,section,summary,table,ul")),zP=Fc(SS,Wr("a,abbr,acronym,audio,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,picture,q,ruby,rp,rt,s,samp,small,source,span,strike,strong,sub,sup,time,track,tt,u,var,video")),xD=Fc(DS,YP,zP,$P),ES=Wr("background,cite,href,itemtype,longdesc,poster,src,xlink:href"),WP=Wr("abbr,accesskey,align,alt,autoplay,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,controls,coords,datetime,default,dir,download,face,headers,height,hidden,hreflang,hspace,ismap,itemscope,itemprop,kind,label,lang,language,loop,media,muted,nohref,nowrap,open,preload,rel,rev,role,rows,rowspan,rules,scope,scrolling,shape,size,sizes,span,srclang,srcset,start,summary,tabindex,target,title,translate,type,usemap,valign,value,vspace,width"),GP=Wr("aria-activedescendant,aria-atomic,aria-autocomplete,aria-busy,aria-checked,aria-colcount,aria-colindex,aria-colspan,aria-controls,aria-current,aria-describedby,aria-details,aria-disabled,aria-dropeffect,aria-errormessage,aria-expanded,aria-flowto,aria-grabbed,aria-haspopup,aria-hidden,aria-invalid,aria-keyshortcuts,aria-label,aria-labelledby,aria-level,aria-live,aria-modal,aria-multiline,aria-multiselectable,aria-orientation,aria-owns,aria-placeholder,aria-posinset,aria-pressed,aria-readonly,aria-relevant,aria-required,aria-roledescription,aria-rowcount,aria-rowindex,aria-rowspan,aria-selected,aria-setsize,aria-sort,aria-valuemax,aria-valuemin,aria-valuenow,aria-valuetext"),qP=Fc(ES,WP,GP),QP=Wr("script,style,template"),K_=class{sanitizedSomething=!1;buf=[];sanitizeChildren(n){let e=n.firstChild,i=!0,r=[];for(;e;){if(e.nodeType===Node.ELEMENT_NODE?i=this.startElement(e):e.nodeType===Node.TEXT_NODE?this.chars(e.nodeValue):this.sanitizedSomething=!0,i&&e.firstChild){r.push(e),e=JP(e);continue}for(;e;){e.nodeType===Node.ELEMENT_NODE&&this.endElement(e);let o=KP(e);if(o){e=o;break}e=r.pop()}}return this.buf.join("")}startElement(n){let e=kD(n).toLowerCase();if(!xD.hasOwnProperty(e))return this.sanitizedSomething=!0,!QP.hasOwnProperty(e);this.buf.push("<"),this.buf.push(e);let i=n.attributes;for(let r=0;r"),!0}endElement(n){let e=kD(n).toLowerCase();xD.hasOwnProperty(e)&&!DS.hasOwnProperty(e)&&(this.buf.push(""))}chars(n){this.buf.push(AD(n))}};function ZP(t,n){return(t.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_CONTAINED_BY)!==Node.DOCUMENT_POSITION_CONTAINED_BY}function KP(t){let n=t.nextSibling;if(n&&t!==n.previousSibling)throw TS(n);return n}function JP(t){let n=t.firstChild;if(n&&ZP(t,n))throw TS(n);return n}function kD(t){let n=t.nodeName;return typeof n=="string"?n:"FORM"}function TS(t){return new Error(`Failed to sanitize html because the element is clobbered: ${t.outerHTML}`)}var XP=/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,eN=/([^\#-~ |!])/g;function AD(t){return t.replace(/&/g,"&").replace(XP,function(n){let e=n.charCodeAt(0),i=n.charCodeAt(1);return"&#"+((e-55296)*1024+(i-56320)+65536)+";"}).replace(eN,function(n){return"&#"+n.charCodeAt(0)+";"}).replace(//g,">")}var sh;function dv(t,n){let e=null;try{sh=sh||HP(t);let i=n?String(n):"";e=sh.getInertBodyElement(i);let r=5,o=i;do{if(r===0)throw new Error("Failed to sanitize html because the input is unstable");r--,i=o,o=e.innerHTML,e=sh.getInertBodyElement(i)}while(i!==o);let a=new K_().sanitizeChildren(RD(e)||e);return Kh(a)}finally{if(e){let i=RD(e)||e;for(;i.firstChild;)i.firstChild.remove()}}}function RD(t){return"content"in t&&tN(t)?t.content:null}function tN(t){return t.nodeType===Node.ELEMENT_NODE&&t.nodeName==="TEMPLATE"}var Qn=function(t){return t[t.NONE=0]="NONE",t[t.HTML=1]="HTML",t[t.STYLE=2]="STYLE",t[t.SCRIPT=3]="SCRIPT",t[t.URL=4]="URL",t[t.RESOURCE_URL=5]="RESOURCE_URL",t}(Qn||{});function mi(t){let n=hv();return n?TD(n.sanitize(Qn.HTML,t)||""):zr(t,"HTML")?TD(Ui(t)):dv(hS(),ms(t))}function ft(t){let n=hv();return n?n.sanitize(Qn.URL,t)||"":zr(t,"URL")?Ui(t):Jh(ms(t))}function Xh(t){let n=hv();if(n)return ID(n.sanitize(Qn.RESOURCE_URL,t)||"");if(zr(t,"ResourceURL"))return ID(Ui(t));throw new R(904,!1)}function nN(t,n){return n==="src"&&(t==="embed"||t==="frame"||t==="iframe"||t==="media"||t==="script")||n==="href"&&(t==="base"||t==="link")?Xh:ft}function IS(t,n,e){return nN(n,e)(t)}function hv(){let t=ie();return t&&t[Hr].sanitizer}var iN=/^>|^->||--!>|)/g,oN="\u200B$1\u200B";function sN(t){return t.replace(iN,n=>n.replace(rN,oN))}function Vc(t){return t.ownerDocument.defaultView}function xS(t){return t instanceof Function?t():t}function aN(t,n,e){let i=t.length;for(;;){let r=t.indexOf(n,e);if(r===-1)return r;if(r===0||t.charCodeAt(r-1)<=32){let o=n.length;if(r+o===i||t.charCodeAt(r+o)<=32)return r}e=r+1}}var kS="ng-template";function lN(t,n,e,i){let r=0;if(i){for(;r-1){let o;for(;++ro?m="":m=r[u+1].toLowerCase(),i&2&&c!==m){if(Vi(i))return!1;s=!0}}}}return Vi(i)||s}function Vi(t){return(t&1)===0}function dN(t,n,e,i){if(n===null)return-1;let r=0;if(i||!e){let o=!1;for(;r-1)for(e++;e0?'="'+a+'"':"")+"]"}else i&8?r+="."+s:i&4&&(r+=" "+s);else r!==""&&!Vi(s)&&(n+=OD(o,r),r=""),i=s,o=o||!Vi(i);e++}return r!==""&&(n+=OD(o,r)),n}function _N(t){return t.map(gN).join(",")}function yN(t){let n=[],e=[],i=1,r=2;for(;iUt&&FS(t,n,Ut,!1),Je(s?2:0,r),e(i,r)}finally{Cs(o),Je(s?3:1,r)}}function tf(t,n,e){ON(t,n,e),(e.flags&64)===64&&PN(t,n,e)}function _v(t,n,e=dr){let i=n.localNames;if(i!==null){let r=n.index+1;for(let o=0;onull;function AN(t){return t==="class"?"className":t==="for"?"htmlFor":t==="formaction"?"formAction":t==="innerHtml"?"innerHTML":t==="readonly"?"readOnly":t==="tabindex"?"tabIndex":t}function nf(t,n,e,i,r,o,s,a){if(!a&&vv(n,t,e,i,r)){Wa(n)&&RN(e,n.index);return}if(n.type&3){let l=dr(n,e);i=AN(i),r=s!=null?s(r,n.value||"",i):r,o.setProperty(l,i,r)}else n.type&12}function RN(t,n){let e=ar(n,t);e[fe]&16||(e[fe]|=64)}function ON(t,n,e){let i=e.directiveStart,r=e.directiveEnd;Wa(e)&&TN(n,e,t.data[i+e.componentOffset]),t.firstCreatePass||Eh(e,n);let o=e.initialInputs;for(let s=i;s=0?i[a]():i[-a].unsubscribe(),s+=2}else{let a=i[e[s+1]];e[s].call(a)}i!==null&&(n[vh]=null);let r=n[bo];if(r!==null){n[bo]=null;for(let s=0;s{Wh(t.lView)},consumerOnSignalRead(){this.lView[fi]=this}});function aL(t){let n=t[fi]??Object.create(lL);return n.lView=t,n}var lL=W(E({},dc),{consumerIsAlwaysLive:!0,kind:"template",consumerMarkedDirty:t=>{let n=bs(t.lView);for(;n&&!WS(n[he]);)n=bs(n);n&&IM(n)},consumerOnSignalRead(){this.lView[fi]=this}});function WS(t){return t.type!==2}function GS(t){if(t[bh]===null)return;let n=!0;for(;n;){let e=!1;for(let i of t[bh])i.dirty&&(e=!0,i.zone===null||Zone.current===i.zone?i.run():i.zone.run(()=>i.run()));n=e&&!!(t[fe]&8192)}}var cL=100;function qS(t,n=!0,e=0){let r=t[Hr].rendererFactory,o=!1;o||r.begin?.();try{uL(t,e)}catch(s){throw n&&HN(t,s),s}finally{o||r.end?.()}}function uL(t,n){let e=RM();try{mD(!0),ey(t,n);let i=0;for(;zh(t);){if(i===cL)throw new R(103,!1);i++,ey(t,1)}}finally{mD(e)}}function dL(t,n,e,i){if(Oc(n))return;let r=n[fe],o=!1,s=!1;Xy(n);let a=!0,l=null,c=null;o||(WS(t)?(c=iL(n),l=wd(c)):Ig()===null?(a=!1,c=aL(n),l=wd(c)):n[fi]&&(Pg(n[fi]),n[fi]=null));try{TM(n),WO(t.bindingStartIndex),e!==null&&VS(t,n,e,2,i);let u=(r&3)===3;if(!o)if(u){let _=t.preOrderCheckHooks;_!==null&&ch(n,_,null)}else{let _=t.preOrderHooks;_!==null&&uh(n,_,0,null),u_(n,0)}if(s||hL(n),GS(n),QS(n,0),t.contentQueries!==null&&gS(t,n),!o)if(u){let _=t.contentCheckHooks;_!==null&&ch(n,_)}else{let _=t.contentHooks;_!==null&&uh(n,_,1),u_(n,1)}pL(t,n);let m=t.components;m!==null&&KS(n,m,0);let b=t.viewQuery;if(b!==null&&$_(2,b,i),!o)if(u){let _=t.viewCheckHooks;_!==null&&ch(n,_)}else{let _=t.viewHooks;_!==null&&uh(n,_,2),u_(n,2)}if(t.firstUpdatePass===!0&&(t.firstUpdatePass=!1),n[l_]){for(let _ of n[l_])_();n[l_]=null}o||(YS(n),n[fe]&=-73)}catch(u){throw o||Wh(n),u}finally{c!==null&&(Rg(c,l),a&&oL(c)),ev()}}function QS(t,n){for(let e=lS(t);e!==null;e=cS(e))for(let i=cn;i0&&(t[e-1][Hi]=i[Hi]);let o=_h(t,cn+n);zN(i[he],i);let s=o[Br];s!==null&&s.detachView(o[he]),i[un]=null,i[Hi]=null,i[fe]&=-129}return i}function mL(t,n,e,i){let r=cn+i,o=e.length;i>0&&(e[r-1][Hi]=n),i-1&&(Tc(n,i),_h(e,i))}this._attachedToViewContainer=!1}rf(this._lView[he],this._lView)}onDestroy(n){xM(this._lView,n)}markForCheck(){Sv(this._cdRefInjectingView||this._lView,4)}detach(){this._lView[fe]&=-129}reattach(){k_(this._lView),this._lView[fe]|=128}detectChanges(){this._lView[fe]|=1024,qS(this._lView,this.notifyErrorHandler)}checkNoChanges(){}attachToViewContainerRef(){if(this._appRef)throw new R(902,!1);this._attachedToViewContainer=!0}detachFromAppRef(){this._appRef=null;let n=wh(this._lView),e=this._lView[ys];e!==null&&!n&&Dv(e,this._lView),jS(this._lView[he],this._lView)}attachToAppRef(n){if(this._attachedToViewContainer)throw new R(902,!1);this._appRef=n;let e=wh(this._lView),i=this._lView[ys];i!==null&&!e&&tE(i,this._lView),k_(this._lView)}};var St=(()=>{class t{static __NG_ELEMENT_ID__=yL}return t})(),gL=St,_L=class extends gL{_declarationLView;_declarationTContainer;elementRef;constructor(n,e,i){super(),this._declarationLView=n,this._declarationTContainer=e,this.elementRef=i}get ssrId(){return this._declarationTContainer.tView?.ssrId||null}createEmbeddedView(n,e){return this.createEmbeddedViewImpl(n,e)}createEmbeddedViewImpl(n,e,i){let r=jc(this._declarationLView,this._declarationTContainer,n,{embeddedViewInjector:e,dehydratedView:i});return new Ic(r)}};function yL(){return af(vn(),ie())}function af(t,n){return t.type&4?new _L(n,t,qa(t,n)):null}function Bc(t,n,e,i,r){let o=t.data[n];if(o===null)o=vL(t,n,e,i,r),GO()&&(o.flags|=32);else if(o.type&64){o.type=e,o.value=i,o.attrs=r;let s=$O();o.injectorIndex=s===null?-1:s.injectorIndex}return Ms(o,!0),o}function vL(t,n,e,i,r){let o=AM(),s=Qy(),a=s?o:o&&o.parent,l=t.data[n]=CL(t,a,e,n,i,r);return bL(t,l,o,s),l}function bL(t,n,e,i){t.firstChild===null&&(t.firstChild=n),e!==null&&(i?e.child==null&&n.parent!==null&&(e.child=n):e.next===null&&(e.next=n,n.prev=e))}function CL(t,n,e,i,r,o){let s=n?n.injectorIndex:-1,a=0;return kM()&&(a|=128),{type:e,index:i,insertBeforeIndex:null,injectorIndex:s,directiveStart:-1,directiveEnd:-1,directiveStylingLast:-1,componentOffset:-1,propertyBindings:null,flags:a,providerIndexes:0,value:r,attrs:o,mergedAttrs:null,localNames:null,initialInputs:null,inputs:null,hostDirectiveInputs:null,outputs:null,hostDirectiveOutputs:null,directiveToIndex: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}}var LX=new RegExp(`^(\\d+)*(${PP}|${OP})*(.*)`);var wL=()=>null;function Ua(t,n){return wL(t,n)}var DL=class{},nE=class{},ty=class{resolveComponentFactory(n){throw Error(`No component factory found for ${In(n)}.`)}},So=class{static NULL=new ty},xn=class{},ke=(()=>{class t{destroyNode=null;static __NG_ELEMENT_ID__=()=>ML()}return t})();function ML(){let t=ie(),n=vn(),e=ar(n.index,t);return(Co(e)?e:t)[ut]}var SL=(()=>{class t{static \u0275prov=x({token:t,providedIn:"root",factory:()=>null})}return t})();var f_={},ny=class{injector;parentInjector;constructor(n,e){this.injector=n,this.parentInjector=e}get(n,e,i){i=Bh(i);let r=this.injector.get(n,f_,i);return r!==f_||e===f_?r:this.parentInjector.get(n,e,i)}};function iy(t,n,e){let i=e?t.styles:null,r=e?t.classes:null,o=0;if(n!==null)for(let s=0;s0&&(e.directiveToIndex=new Map);for(let b=0;b0;){let e=t[--n];if(typeof e=="number"&&e<0)return e}return 0}function NL(t,n,e){if(e){if(n.exportAs)for(let i=0;i{let[e,i,r]=t[n],o={propName:e,templateName:n,isSignal:(i&ef.SignalBased)!==0};return r&&(o.transform=r),o})}function VL(t){return Object.keys(t).map(n=>({propName:t[n],templateName:n}))}function jL(t,n,e){let i=n instanceof yn?n:n?.injector;return i&&t.getStandaloneInjector!==null&&(i=t.getStandaloneInjector(i)||i),i?new ny(e,i):e}function HL(t){let n=t.get(xn,null);if(n===null)throw new R(407,!1);let e=t.get(SL,null),i=t.get(Ec,null);return{rendererFactory:n,sanitizer:e,changeDetectionScheduler:i}}function BL(t,n){let e=(t.selectors[0][0]||"div").toLowerCase();return RS(n,e,e==="svg"?kO:e==="math"?AO:null)}var xc=class extends nE{componentDef;ngModule;selector;componentType;ngContentSelectors;isBoundToModule;cachedInputs=null;cachedOutputs=null;get inputs(){return this.cachedInputs??=FL(this.componentDef.inputs),this.cachedInputs}get outputs(){return this.cachedOutputs??=VL(this.componentDef.outputs),this.cachedOutputs}constructor(n,e){super(),this.componentDef=n,this.ngModule=e,this.componentType=n.type,this.selector=_N(n.selectors),this.ngContentSelectors=n.ngContentSelectors??[],this.isBoundToModule=!!e}create(n,e,i,r){Je(22);let o=ge(null);try{let s=this.componentDef,a=i?["ng-version","19.2.8"]:yN(this.componentDef.selectors[0]),l=pv(0,null,null,1,0,null,null,null,null,[a],null),c=jL(s,r||this.ngModule,n),u=HL(c),m=u.rendererFactory.createRenderer(null,s),b=i?IN(m,i,s.encapsulation,c):BL(s,m),_=mv(null,l,null,512|NS(s),null,null,u,m,c,null,mS(b,c,!0));_[Ut]=b,Xy(_);let M=null;try{let I=rE(Ut,l,_,"#host",()=>[this.componentDef],!0,0);b&&(PS(m,b,I),Qa(b,_)),tf(l,_,I),uv(l,I,_),oE(l,I),e!==void 0&&UL(I,this.ngContentSelectors,e),M=ar(I.index,_),_[Bt]=M[Bt],bv(l,_,null)}catch(I){throw M!==null&&B_(M),B_(_),I}finally{Je(23),ev()}return new ry(this.componentType,_)}finally{ge(o)}}},ry=class extends DL{_rootLView;instance;hostView;changeDetectorRef;componentType;location;previousInputValues=null;_tNode;constructor(n,e){super(),this._rootLView=e,this._tNode=$y(e[he],Ut),this.location=qa(this._tNode,e),this.instance=ar(this._tNode.index,e)[Bt],this.hostView=this.changeDetectorRef=new Ic(e,void 0,!1),this.componentType=n}setInput(n,e){let i=this._tNode;if(this.previousInputValues??=new Map,this.previousInputValues.has(n)&&Object.is(this.previousInputValues.get(n),e))return;let r=this._rootLView,o=vv(i,r[he],r,n,e);this.previousInputValues.set(n,e);let s=ar(i.index,r);Sv(s,1)}get injector(){return new ps(this._tNode,this._rootLView)}destroy(){this.hostView.destroy()}onDestroy(n){this.hostView.onDestroy(n)}};function UL(t,n,e){let i=t.projection=[];for(let r=0;r{class t{static __NG_ELEMENT_ID__=$L}return t})();function $L(){let t=vn();return aE(t,ie())}var YL=pt,sE=class extends YL{_lContainer;_hostTNode;_hostLView;constructor(n,e,i){super(),this._lContainer=n,this._hostTNode=e,this._hostLView=i}get element(){return qa(this._hostTNode,this._hostLView)}get injector(){return new ps(this._hostTNode,this._hostLView)}get parentInjector(){let n=nv(this._hostTNode,this._hostLView);if($M(n)){let e=Mh(n,this._hostLView),i=Dh(n),r=e[he].data[i+8];return new ps(r,e)}else return new ps(null,this._hostLView)}clear(){for(;this.length>0;)this.remove(this.length-1)}get(n){let e=jD(this._lContainer);return e!==null&&e[n]||null}get length(){return this._lContainer.length-cn}createEmbeddedView(n,e,i){let r,o;typeof i=="number"?r=i:i!=null&&(r=i.index,o=i.injector);let s=Ua(this._lContainer,n.ssrId),a=n.createEmbeddedViewImpl(e||{},o,s);return this.insertImpl(a,r,Ba(this._hostTNode,s)),a}createComponent(n,e,i,r,o){let s=n&&!EO(n),a;if(s)a=e;else{let M=e||{};a=M.index,i=M.injector,r=M.projectableNodes,o=M.environmentInjector||M.ngModuleRef}let l=s?n:new xc(Pa(n)),c=i||this.parentInjector;if(!o&&l.ngModule==null){let I=(s?c:this.parentInjector).get(yn,null);I&&(o=I)}let u=Pa(l.componentType??{}),m=Ua(this._lContainer,u?.id??null),b=m?.firstChild??null,_=l.create(c,r,b,o);return this.insertImpl(_.hostView,a,Ba(this._hostTNode,m)),_}insert(n,e){return this.insertImpl(n,e,!0)}insertImpl(n,e,i){let r=n._lView;if(PO(r)){let a=this.indexOf(n);if(a!==-1)this.detach(a);else{let l=r[un],c=new sE(l,l[An],l[un]);c.detach(c.indexOf(n))}}let o=this._adjustIndex(e),s=this._lContainer;return Hc(s,r,o,i),n.attachToViewContainerRef(),fM(p_(s),o,n),n}move(n,e){return this.insert(n,e)}indexOf(n){let e=jD(this._lContainer);return e!==null?e.indexOf(n):-1}remove(n){let e=this._adjustIndex(n,-1),i=Tc(this._lContainer,e);i&&(_h(p_(this._lContainer),e),rf(i[he],i))}detach(n){let e=this._adjustIndex(n,-1),i=Tc(this._lContainer,e);return i&&_h(p_(this._lContainer),e)!=null?new Ic(i):null}_adjustIndex(n,e=0){return n??this.length+e}};function jD(t){return t[Ch]}function p_(t){return t[Ch]||(t[Ch]=[])}function aE(t,n){let e,i=n[t.index];return $r(i)?e=i:(e=JS(i,n,null,t),n[t.index]=e,gv(n,e)),WL(e,n,t,i),new sE(e,t,n)}function zL(t,n){let e=t[ut],i=e.createComment(""),r=dr(n,t),o=e.parentNode(r);return xh(e,o,i,e.nextSibling(r),!1),i}var WL=QL,GL=()=>!1;function qL(t,n,e){return GL(t,n,e)}function QL(t,n,e,i){if(t[vs])return;let r;e.type&8?r=sr(i):r=zL(n,e),t[vs]=r}var oy=class t{queryList;matches=null;constructor(n){this.queryList=n}clone(){return new t(this.queryList)}setDirty(){this.queryList.setDirty()}},sy=class t{queries;constructor(n=[]){this.queries=n}createEmbeddedView(n){let e=n.queries;if(e!==null){let i=n.contentQueries!==null?n.contentQueries[0]:e.length,r=[];for(let o=0;o0)i.push(s[a/2]);else{let c=o[a+1],u=n[-l];for(let m=cn;mn.trim())}function uE(t,n,e){t.queries===null&&(t.queries=new ay),t.queries.track(new ly(n,e))}function rF(t,n){let e=t.contentQueries||(t.contentQueries=[]),i=e.length?e[e.length-1]:-1;n!==i&&e.push(t.queries.length-1,n)}function Tv(t,n){return t.queries.getByIndex(n)}function oF(t,n){let e=t[he],i=Tv(e,n);return i.crossesNgTemplate?cy(e,t,n,[]):lE(e,t,i,n)}var $a=class{},Iv=class{};var uy=class extends $a{ngModuleType;_parent;_bootstrapComponents=[];_r3Injector;instance;destroyCbs=[];componentFactoryResolver=new Ah(this);constructor(n,e,i,r=!0){super(),this.ngModuleType=n,this._parent=e;let o=gM(n);this._bootstrapComponents=xS(o.bootstrap),this._r3Injector=JM(n,e,[{provide:$a,useValue:this},{provide:So,useValue:this.componentFactoryResolver},...i],In(n),new Set(["environment"])),r&&this.resolveInjectorInitializers()}resolveInjectorInitializers(){this._r3Injector.resolveInjectorInitializers(),this.instance=this._r3Injector.get(this.ngModuleType)}get injector(){return this._r3Injector}destroy(){let n=this._r3Injector;!n.destroyed&&n.destroy(),this.destroyCbs.forEach(e=>e()),this.destroyCbs=null}onDestroy(n){this.destroyCbs.push(n)}},dy=class extends Iv{moduleType;constructor(n){super(),this.moduleType=n}create(n){return new uy(this.moduleType,n,[])}};var Oh=class extends $a{injector;componentFactoryResolver=new Ah(this);instance=null;constructor(n){super();let e=new Dc([...n.providers,{provide:$a,useValue:this},{provide:So,useValue:this.componentFactoryResolver}],n.parent||Hy(),n.debugName,new Set(["environment"]));this.injector=e,n.runEnvironmentInitializers&&e.resolveInjectorInitializers()}destroy(){this.injector.destroy()}onDestroy(n){this.injector.onDestroy(n)}};function lf(t,n,e=null){return new Oh({providers:t,parent:n,debugName:e,runEnvironmentInitializers:!0}).injector}var sF=(()=>{class t{_injector;cachedInjectors=new Map;constructor(e){this._injector=e}getOrCreateStandaloneInjector(e){if(!e.standalone)return null;if(!this.cachedInjectors.has(e)){let i=_M(!1,e.type),r=i.length>0?lf([i],this._injector,`Standalone[${e.type.name}]`):null;this.cachedInjectors.set(e,r)}return this.cachedInjectors.get(e)}ngOnDestroy(){try{for(let e of this.cachedInjectors.values())e!==null&&e.destroy()}finally{this.cachedInjectors.clear()}}static \u0275prov=x({token:t,providedIn:"environment",factory:()=>new t(F(yn))})}return t})();function L(t){return Ac(()=>{let n=dE(t),e=W(E({},n),{decls:t.decls,vars:t.vars,template:t.template,consts:t.consts||null,ngContentSelectors:t.ngContentSelectors,onPush:t.changeDetection===sS.OnPush,directiveDefs:null,pipeDefs:null,dependencies:n.standalone&&t.dependencies||null,getStandaloneInjector:n.standalone?r=>r.get(sF).getOrCreateStandaloneInjector(e):null,getExternalStyles:null,signals:t.signals??!1,data:t.data||{},encapsulation:t.encapsulation||pi.Emulated,styles:t.styles||Tn,_:null,schemas:t.schemas||null,tView:null,id:""});n.standalone&&Za("NgStandalone"),hE(e);let i=t.dependencies;return e.directiveDefs=HD(i,!1),e.pipeDefs=HD(i,!0),e.id=dF(e),e})}function aF(t){return Pa(t)||pO(t)}function lF(t){return t!==null}function be(t){return Ac(()=>({type:t.type,bootstrap:t.bootstrap||Tn,declarations:t.declarations||Tn,imports:t.imports||Tn,exports:t.exports||Tn,transitiveCompileScopes:null,schemas:t.schemas||null,id:t.id||null}))}function cF(t,n){if(t==null)return _s;let e={};for(let i in t)if(t.hasOwnProperty(i)){let r=t[i],o,s,a,l;Array.isArray(r)?(a=r[0],o=r[1],s=r[2]??o,l=r[3]||null):(o=r,s=r,a=ef.None,l=null),e[o]=[i,a,l],n[o]=s}return e}function uF(t){if(t==null)return _s;let n={};for(let e in t)t.hasOwnProperty(e)&&(n[t[e]]=e);return n}function H(t){return Ac(()=>{let n=dE(t);return hE(n),n})}function Eo(t){return{type:t.type,name:t.name,factory:null,pure:t.pure!==!1,standalone:t.standalone??!0,onDestroy:t.type.prototype.ngOnDestroy||null}}function dE(t){let n={};return{type:t.type,providersResolver:null,factory:null,hostBindings:t.hostBindings||null,hostVars:t.hostVars||0,hostAttrs:t.hostAttrs||null,contentQueries:t.contentQueries||null,declaredInputs:n,inputConfig:t.inputs||_s,exportAs:t.exportAs||null,standalone:t.standalone??!0,signals:t.signals===!0,selectors:t.selectors||Tn,viewQuery:t.viewQuery||null,features:t.features||null,setInput:null,findHostDirectiveDefs:null,hostDirectives:null,inputs:cF(t.inputs,n),outputs:uF(t.outputs),debugInfo:null}}function hE(t){t.features?.forEach(n=>n(t))}function HD(t,n){if(!t)return null;let e=n?mO:aF;return()=>(typeof t=="function"?t():t).map(i=>e(i)).filter(lF)}function dF(t){let n=0,e=typeof t.consts=="function"?"":t.consts,i=[t.selectors,t.ngContentSelectors,t.hostVars,t.hostAttrs,e,t.vars,t.decls,t.encapsulation,t.standalone,t.signals,t.exportAs,JSON.stringify(t.inputs),JSON.stringify(t.outputs),Object.getOwnPropertyNames(t.type.prototype),!!t.contentQueries,!!t.viewQuery];for(let o of i.join("|"))n=Math.imul(31,n)+o.charCodeAt(0)<<0;return n+=2147483648,"c"+n}function hF(t){return Object.getPrototypeOf(t.prototype).constructor}function Ct(t){let n=hF(t.type),e=!0,i=[t];for(;n;){let r;if(Bi(t))r=n.\u0275cmp||n.\u0275dir;else{if(n.\u0275cmp)throw new R(903,!1);r=n.\u0275dir}if(r){if(e){i.push(r);let s=t;s.inputs=m_(t.inputs),s.declaredInputs=m_(t.declaredInputs),s.outputs=m_(t.outputs);let a=r.hostBindings;a&&_F(t,a);let l=r.viewQuery,c=r.contentQueries;if(l&&mF(t,l),c&&gF(t,c),fF(t,r),WR(t.outputs,r.outputs),Bi(r)&&r.data.animation){let u=t.data;u.animation=(u.animation||[]).concat(r.data.animation)}}let o=r.features;if(o)for(let s=0;s=0;i--){let r=t[i];r.hostVars=n+=r.hostVars,r.hostAttrs=ja(r.hostAttrs,e=ja(e,r.hostAttrs))}}function m_(t){return t===_s?{}:t===Tn?[]:t}function mF(t,n){let e=t.viewQuery;e?t.viewQuery=(i,r)=>{n(i,r),e(i,r)}:t.viewQuery=n}function gF(t,n){let e=t.contentQueries;e?t.contentQueries=(i,r,o)=>{n(i,r,o),e(i,r,o)}:t.contentQueries=n}function _F(t,n){let e=t.hostBindings;e?t.hostBindings=(i,r)=>{n(i,r),e(i,r)}:t.hostBindings=n}function fE(t){return xv(t)?Array.isArray(t)||!(t instanceof Map)&&Symbol.iterator in t:!1}function yF(t,n){if(Array.isArray(t))for(let e=0;e{class t{log(e){console.log(e)}warn(e){console.warn(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}return t})();var pE=new B("");var MF=(()=>{class t{static \u0275prov=x({token:t,providedIn:"root",factory:()=>new hy})}return t})(),hy=class{queuedEffectCount=0;queues=new Map;schedule(n){this.enqueue(n)}remove(n){let e=n.zone,i=this.queues.get(e);i.has(n)&&(i.delete(n),this.queuedEffectCount--)}enqueue(n){let e=n.zone;this.queues.has(e)||this.queues.set(e,new Set);let i=this.queues.get(e);i.has(n)||(this.queuedEffectCount++,i.add(n))}flush(){for(;this.queuedEffectCount>0;)for(let[n,e]of this.queues)n===null?this.flushQueue(e):n.run(()=>this.flushQueue(e))}flushQueue(n){for(let e of n)n.delete(e),this.queuedEffectCount--,e.run()}};function To(t){return!!t&&typeof t.then=="function"}function Rv(t){return!!t&&typeof t.subscribe=="function"}var SF=new B("");var mE=(()=>{class t{resolve;reject;initialized=!1;done=!1;donePromise=new Promise((e,i)=>{this.resolve=e,this.reject=i});appInits=S(SF,{optional:!0})??[];injector=S(kt);constructor(){}runInitializers(){if(this.initialized)return;let e=[];for(let r of this.appInits){let o=Gn(this.injector,r);if(To(o))e.push(o);else if(Rv(o)){let s=new Promise((a,l)=>{o.subscribe({complete:a,error:l})});e.push(s)}}let i=()=>{this.done=!0,this.resolve()};Promise.all(e).then(()=>{i()}).catch(r=>{this.reject(r)}),e.length===0&&i(),this.initialized=!0}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Ov=new B("");function EF(){Lg(()=>{throw new R(600,!1)})}function TF(t){return t.isBoundToModule}var IF=10;var kn=(()=>{class t{_runningTick=!1;_destroyed=!1;_destroyListeners=[];_views=[];internalErrorHandler=S(wP);afterRenderManager=S(LP);zonelessEnabled=S(rv);rootEffectScheduler=S(MF);dirtyFlags=0;tracingSnapshot=null;externalTestViews=new Set;afterTick=new X;get allViews(){return[...this.externalTestViews.keys(),...this._views]}get destroyed(){return this._destroyed}componentTypes=[];components=[];isStable=S(Mo).hasPendingTasks.pipe(G(e=>!e));constructor(){S(Zh,{optional:!0})}whenStable(){let e;return new Promise(i=>{e=this.isStable.subscribe({next:r=>{r&&i()}})}).finally(()=>{e.unsubscribe()})}_injector=S(yn);_rendererFactory=null;get injector(){return this._injector}bootstrap(e,i){return this.bootstrapImpl(e,i)}bootstrapImpl(e,i,r=kt.NULL){Je(10);let o=e instanceof nE;if(!this._injector.get(mE).done){let _="";throw new R(405,_)}let a;o?a=e:a=this._injector.get(So).resolveComponentFactory(e),this.componentTypes.push(a.componentType);let l=TF(a)?void 0:this._injector.get($a),c=i||a.selector,u=a.create(r,[],c,l),m=u.location.nativeElement,b=u.injector.get(pE,null);return b?.registerApplication(m),u.onDestroy(()=>{this.detachView(u.hostView),hh(this.components,u),b?.unregisterApplication(m)}),this._loadComponent(u),Je(11,u),u}tick(){this.zonelessEnabled||(this.dirtyFlags|=1),this._tick()}_tick(){Je(12),this.tracingSnapshot!==null?this.tracingSnapshot.run(pS.CHANGE_DETECTION,this.tickImpl):this.tickImpl()}tickImpl=()=>{if(this._runningTick)throw new R(101,!1);let e=ge(null);try{this._runningTick=!0,this.synchronize()}catch(i){this.internalErrorHandler(i)}finally{this._runningTick=!1,this.tracingSnapshot?.dispose(),this.tracingSnapshot=null,ge(e),this.afterTick.next(),Je(13)}};synchronize(){this._rendererFactory===null&&!this._injector.destroyed&&(this._rendererFactory=this._injector.get(xn,null,{optional:!0}));let e=0;for(;this.dirtyFlags!==0&&e++zh(e))){this.dirtyFlags|=2;return}else this.dirtyFlags&=-8}attachView(e){let i=e;this._views.push(i),i.attachToAppRef(this)}detachView(e){let i=e;hh(this._views,i),i.detachFromAppRef()}_loadComponent(e){this.attachView(e.hostView),this.tick(),this.components.push(e),this._injector.get(Ov,[]).forEach(r=>r(e))}ngOnDestroy(){if(!this._destroyed)try{this._destroyListeners.forEach(e=>e()),this._views.slice().forEach(e=>e.destroy())}finally{this._destroyed=!0,this._views=[],this._destroyListeners=[]}}onDestroy(e){return this._destroyListeners.push(e),()=>hh(this._destroyListeners,e)}destroy(){if(this._destroyed)throw new R(406,!1);let e=this._injector;e.destroy&&!e.destroyed&&e.destroy()}get viewCount(){return this._views.length}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function hh(t,n){let e=t.indexOf(n);e>-1&&t.splice(e,1)}function xF(t,n,e,i){if(!e&&!zh(t))return;qS(t,n,e&&!i?0:1)}function J(t,n,e,i){let r=ie(),o=Ss();if(Wn(r,o,n)){let s=dt(),a=Pc();LN(a,r,t,n,e,i)}return J}function gE(t,n,e,i){return Wn(t,Ss(),e)?n+ms(e)+i:On}function kF(t,n,e,i,r,o){let s=zO(),a=kv(t,s,e,r);return Ky(2),a?n+ms(e)+i+ms(r)+o:On}function ah(t,n){return t<<17|n<<2}function Ds(t){return t>>17&32767}function AF(t){return(t&2)==2}function RF(t,n){return t&131071|n<<17}function fy(t){return t|2}function Ya(t){return(t&131068)>>2}function g_(t,n){return t&-131069|n<<2}function OF(t){return(t&1)===1}function py(t){return t|1}function PF(t,n,e,i,r,o){let s=o?n.classBindings:n.styleBindings,a=Ds(s),l=Ya(s);t[i]=e;let c=!1,u;if(Array.isArray(e)){let m=e;u=m[1],(u===null||Rc(m,u)>0)&&(c=!0)}else u=e;if(r)if(l!==0){let b=Ds(t[a+1]);t[i+1]=ah(b,a),b!==0&&(t[b+1]=g_(t[b+1],i)),t[a+1]=RF(t[a+1],i)}else t[i+1]=ah(a,0),a!==0&&(t[a+1]=g_(t[a+1],i)),a=i;else t[i+1]=ah(l,0),a===0?a=i:t[l+1]=g_(t[l+1],i),l=i;c&&(t[i+1]=fy(t[i+1])),BD(t,u,i,!0),BD(t,u,i,!1),NF(n,u,t,i,o),s=ah(a,l),o?n.classBindings=s:n.styleBindings=s}function NF(t,n,e,i,r){let o=r?t.residualClasses:t.residualStyles;o!=null&&typeof n=="string"&&Rc(o,n)>=0&&(e[i+1]=py(e[i+1]))}function BD(t,n,e,i){let r=t[e+1],o=n===null,s=i?Ds(r):Ya(r),a=!1;for(;s!==0&&(a===!1||o);){let l=t[s],c=t[s+1];LF(l,n)&&(a=!0,t[s+1]=i?py(c):fy(c)),s=i?Ds(c):Ya(c)}a&&(t[e+1]=i?fy(r):py(r))}function LF(t,n){return t===null||n==null||(Array.isArray(t)?t[1]:t)===n?!0:Array.isArray(t)&&typeof n=="string"?Rc(t,n)>=0:!1}var ji={textEnd:0,key:0,keyEnd:0,value:0,valueEnd:0};function FF(t){return t.substring(ji.key,ji.keyEnd)}function VF(t){return jF(t),_E(t,yE(t,0,ji.textEnd))}function _E(t,n){let e=ji.textEnd;return e===n?-1:(n=ji.keyEnd=HF(t,ji.key=n,e),yE(t,n,e))}function jF(t){ji.key=0,ji.keyEnd=0,ji.value=0,ji.valueEnd=0,ji.textEnd=t.length}function yE(t,n,e){for(;n32;)n++;return n}function g(t,n,e){let i=ie(),r=Ss();if(Wn(i,r,n)){let o=dt(),s=Pc();nf(o,s,i,t,n,i[ut],e,!1)}return g}function my(t,n,e,i,r){vv(n,t,e,r?"class":"style",i)}function rn(t,n,e){return vE(t,n,e,!1),rn}function j(t,n){return vE(t,n,null,!0),j}function Jt(t){UF(qF,BF,t,!0)}function BF(t,n){for(let e=VF(n);e>=0;e=_E(n,e))Fy(t,FF(n),!0)}function vE(t,n,e,i){let r=ie(),o=dt(),s=Ky(2);if(o.firstUpdatePass&&CE(o,t,s,i),n!==On&&Wn(r,s,n)){let a=o.data[Yr()];wE(o,a,r,r[ut],t,r[s+1]=ZF(n,e),i,s)}}function UF(t,n,e,i){let r=dt(),o=Ky(2);r.firstUpdatePass&&CE(r,null,o,i);let s=ie();if(e!==On&&Wn(s,o,e)){let a=r.data[Yr()];if(DE(a,i)&&!bE(r,o)){let l=i?a.classesWithoutHost:a.stylesWithoutHost;l!==null&&(e=w_(l,e||"")),my(r,a,s,e,i)}else QF(r,a,s,s[ut],s[o+1],s[o+1]=GF(t,n,e),i,o)}}function bE(t,n){return n>=t.expandoStartIndex}function CE(t,n,e,i){let r=t.data;if(r[e+1]===null){let o=r[Yr()],s=bE(t,e);DE(o,i)&&n===null&&!s&&(n=!1),n=$F(r,o,n,i),PF(r,o,n,e,s,i)}}function $F(t,n,e,i){let r=OM(t),o=i?n.residualClasses:n.residualStyles;if(r===null)(i?n.classBindings:n.styleBindings)===0&&(e=__(null,t,n,e,i),e=kc(e,n.attrs,i),o=null);else{let s=n.directiveStylingLast;if(s===-1||t[s]!==r)if(e=__(r,t,n,e,i),o===null){let l=YF(t,n,i);l!==void 0&&Array.isArray(l)&&(l=__(null,t,n,l[1],i),l=kc(l,n.attrs,i),zF(t,n,i,l))}else o=WF(t,n,i)}return o!==void 0&&(i?n.residualClasses=o:n.residualStyles=o),e}function YF(t,n,e){let i=e?n.classBindings:n.styleBindings;if(Ya(i)!==0)return t[Ds(i)]}function zF(t,n,e,i){let r=e?n.classBindings:n.styleBindings;t[Ds(r)]=i}function WF(t,n,e){let i,r=n.directiveEnd;for(let o=1+n.directiveStylingLast;o0;){let l=t[r],c=Array.isArray(l),u=c?l[1]:l,m=u===null,b=e[r+1];b===On&&(b=m?Tn:void 0);let _=m?s_(b,i):u===i?b:void 0;if(c&&!Nh(_)&&(_=s_(l,i)),Nh(_)&&(a=_,s))return a;let M=t[r+1];r=s?Ds(M):Ya(M)}if(n!==null){let l=o?n.residualClasses:n.residualStyles;l!=null&&(a=s_(l,i))}return a}function Nh(t){return t!==void 0}function ZF(t,n){return t==null||t===""||(typeof n=="string"?t=t+n:typeof t=="object"&&(t=In(Ui(t)))),t}function DE(t,n){return(t.flags&(n?8:16))!==0}var gy=class{destroy(n){}updateValue(n,e){}swap(n,e){let i=Math.min(n,e),r=Math.max(n,e),o=this.detach(r);if(r-i>1){let s=this.detach(i);this.attach(i,o),this.attach(r,s)}else this.attach(i,o)}move(n,e){this.attach(e,this.detach(n))}};function y_(t,n,e,i,r){return t===e&&Object.is(n,i)?1:Object.is(r(t,n),r(e,i))?-1:0}function KF(t,n,e){let i,r,o=0,s=t.length-1,a=void 0;if(Array.isArray(n)){let l=n.length-1;for(;o<=s&&o<=l;){let c=t.at(o),u=n[o],m=y_(o,c,o,u,e);if(m!==0){m<0&&t.updateValue(o,u),o++;continue}let b=t.at(s),_=n[l],M=y_(s,b,l,_,e);if(M!==0){M<0&&t.updateValue(s,_),s--,l--;continue}let I=e(o,c),O=e(s,b),V=e(o,u);if(Object.is(V,O)){let de=e(l,_);Object.is(de,I)?(t.swap(o,s),t.updateValue(s,_),l--,s--):t.move(s,o),t.updateValue(o,u),o++;continue}if(i??=new Lh,r??=YD(t,o,s,e),_y(t,i,o,V))t.updateValue(o,u),o++,s++;else if(r.has(V))i.set(I,t.detach(o)),s--;else{let de=t.create(o,n[o]);t.attach(o,de),o++,s++}}for(;o<=l;)$D(t,i,e,o,n[o]),o++}else if(n!=null){let l=n[Symbol.iterator](),c=l.next();for(;!c.done&&o<=s;){let u=t.at(o),m=c.value,b=y_(o,u,o,m,e);if(b!==0)b<0&&t.updateValue(o,m),o++,c=l.next();else{i??=new Lh,r??=YD(t,o,s,e);let _=e(o,m);if(_y(t,i,o,_))t.updateValue(o,m),o++,s++,c=l.next();else if(!r.has(_))t.attach(o,t.create(o,m)),o++,s++,c=l.next();else{let M=e(o,u);i.set(M,t.detach(o)),s--}}}for(;!c.done;)$D(t,i,e,t.length,c.value),c=l.next()}for(;o<=s;)t.destroy(t.detach(s--));i?.forEach(l=>{t.destroy(l)})}function _y(t,n,e,i){return n!==void 0&&n.has(i)?(t.attach(e,n.get(i)),n.delete(i),!0):!1}function $D(t,n,e,i,r){if(_y(t,n,i,e(i,r)))t.updateValue(i,r);else{let o=t.create(i,r);t.attach(i,o)}}function YD(t,n,e,i){let r=new Set;for(let o=n;o<=e;o++)r.add(i(o,t.at(o)));return r}var Lh=class{kvMap=new Map;_vMap=void 0;has(n){return this.kvMap.has(n)}delete(n){if(!this.has(n))return!1;let e=this.kvMap.get(n);return this._vMap!==void 0&&this._vMap.has(e)?(this.kvMap.set(n,this._vMap.get(e)),this._vMap.delete(e)):this.kvMap.delete(n),!0}get(n){return this.kvMap.get(n)}set(n,e){if(this.kvMap.has(n)){let i=this.kvMap.get(n);this._vMap===void 0&&(this._vMap=new Map);let r=this._vMap;for(;r.has(i);)i=r.get(i);r.set(i,e)}else this.kvMap.set(n,e)}forEach(n){for(let[e,i]of this.kvMap)if(n(i,e),this._vMap!==void 0){let r=this._vMap;for(;r.has(i);)i=r.get(i),n(i,e)}}};function Re(t,n){Za("NgControlFlow");let e=ie(),i=Ss(),r=e[i]!==On?e[i]:-1,o=r!==-1?Fh(e,Ut+r):void 0,s=0;if(Wn(e,i,t)){let a=ge(null);try{if(o!==void 0&&eE(o,s),t!==-1){let l=Ut+t,c=Fh(e,l),u=Cy(e[he],l),m=Ua(c,u.tView.ssrId),b=jc(e,u,n,{dehydratedView:m});Hc(c,b,s,Ba(u,m))}}finally{ge(a)}}else if(o!==void 0){let a=XS(o,s);a!==void 0&&(a[Bt]=n)}}var yy=class{lContainer;$implicit;$index;constructor(n,e,i){this.lContainer=n,this.$implicit=e,this.$index=i}get $count(){return this.lContainer.length-cn}};function Ka(t){return t}var vy=class{hasEmptyBlock;trackByFn;liveCollection;constructor(n,e,i){this.hasEmptyBlock=n,this.trackByFn=e,this.liveCollection=i}};function Et(t,n,e,i,r,o,s,a,l,c,u,m,b){Za("NgControlFlow");let _=ie(),M=dt(),I=l!==void 0,O=ie(),V=a?s.bind(O[zn][Bt]):s,de=new vy(I,V);O[Ut+t]=de,Ph(_,M,t+1,n,e,i,r,wo(M.consts,o)),I&&Ph(_,M,t+2,l,c,u,m,wo(M.consts,b))}var by=class extends gy{lContainer;hostLView;templateTNode;operationsCounter=void 0;needsIndexUpdate=!1;constructor(n,e,i){super(),this.lContainer=n,this.hostLView=e,this.templateTNode=i}get length(){return this.lContainer.length-cn}at(n){return this.getLView(n)[Bt].$implicit}attach(n,e){let i=e[La];this.needsIndexUpdate||=n!==this.length,Hc(this.lContainer,e,n,Ba(this.templateTNode,i))}detach(n){return this.needsIndexUpdate||=n!==this.length-1,JF(this.lContainer,n)}create(n,e){let i=Ua(this.lContainer,this.templateTNode.tView.ssrId),r=jc(this.hostLView,this.templateTNode,new yy(this.lContainer,e,n),{dehydratedView:i});return this.operationsCounter?.recordCreate(),r}destroy(n){rf(n[he],n),this.operationsCounter?.recordDestroy()}updateValue(n,e){this.getLView(n)[Bt].$implicit=e}reset(){this.needsIndexUpdate=!1,this.operationsCounter?.reset()}updateIndexes(){if(this.needsIndexUpdate)for(let n=0;n(qh(!0),RS(i,r,JO()));function t2(t,n,e,i,r){let o=n.consts,s=wo(o,i),a=Bc(n,t,8,"ng-container",s);s!==null&&iy(a,s,!0);let l=wo(o,r);return qy()&&Ev(n,e,a,l,yv),a.mergedAttrs=ja(a.mergedAttrs,a.attrs),n.queries!==null&&n.queries.elementStart(n,a),a}function At(t,n,e){let i=ie(),r=dt(),o=t+Ut,s=r.firstCreatePass?t2(o,r,i,n,e):r.data[o];Ms(s,!0);let a=n2(r,i,s,t);return i[o]=a,Gh()&&of(r,i,a,s),Qa(a,i),Yh(s)&&(tf(r,i,s),uv(r,s,i)),e!=null&&_v(i,s),At}function Rt(){let t=vn(),n=dt();return Qy()?Zy():(t=t.parent,Ms(t,!1)),n.firstCreatePass&&(tv(n,t),Uy(t)&&n.queries.elementEnd(t)),Rt}function gi(t,n,e){return At(t,n,e),Rt(),gi}var n2=(t,n,e,i)=>(qh(!0),CN(n[ut],""));function N(){return ie()}function Pv(t,n,e){let i=ie(),r=Ss();if(Wn(i,r,n)){let o=dt(),s=Pc(),a=OM(o.data),l=jN(a,s,i);nf(o,s,i,t,n,l,e,!0)}return Pv}var hs=void 0;function i2(t){let n=Math.floor(Math.abs(t)),e=t.toString().replace(/^[^.]*\.?/,"").length;return n===1&&e===0?1:5}var r2=["en",[["a","p"],["AM","PM"],hs],[["AM","PM"],hs,hs],[["S","M","T","W","T","F","S"],["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],["Su","Mo","Tu","We","Th","Fr","Sa"]],hs,[["J","F","M","A","M","J","J","A","S","O","N","D"],["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],["January","February","March","April","May","June","July","August","September","October","November","December"]],hs,[["B","A"],["BC","AD"],["Before Christ","Anno Domini"]],0,[6,0],["M/d/yy","MMM d, y","MMMM d, y","EEEE, MMMM d, y"],["h:mm a","h:mm:ss a","h:mm:ss a z","h:mm:ss a zzzz"],["{1}, {0}",hs,"{1} 'at' {0}",hs],[".",",",";","%","+","-","E","\xD7","\u2030","\u221E","NaN",":"],["#,##0.###","#,##0%","\xA4#,##0.00","#E0"],"USD","$","US Dollar",{},"ltr",i2],v_={};function Zn(t){let n=o2(t),e=zD(n);if(e)return e;let i=n.split("-")[0];if(e=zD(i),e)return e;if(i==="en")return r2;throw new R(701,!1)}function zD(t){return t in v_||(v_[t]=rr.ng&&rr.ng.common&&rr.ng.common.locales&&rr.ng.common.locales[t]),v_[t]}var wt=function(t){return t[t.LocaleId=0]="LocaleId",t[t.DayPeriodsFormat=1]="DayPeriodsFormat",t[t.DayPeriodsStandalone=2]="DayPeriodsStandalone",t[t.DaysFormat=3]="DaysFormat",t[t.DaysStandalone=4]="DaysStandalone",t[t.MonthsFormat=5]="MonthsFormat",t[t.MonthsStandalone=6]="MonthsStandalone",t[t.Eras=7]="Eras",t[t.FirstDayOfWeek=8]="FirstDayOfWeek",t[t.WeekendRange=9]="WeekendRange",t[t.DateFormat=10]="DateFormat",t[t.TimeFormat=11]="TimeFormat",t[t.DateTimeFormat=12]="DateTimeFormat",t[t.NumberSymbols=13]="NumberSymbols",t[t.NumberFormats=14]="NumberFormats",t[t.CurrencyCode=15]="CurrencyCode",t[t.CurrencySymbol=16]="CurrencySymbol",t[t.CurrencyName=17]="CurrencyName",t[t.Currencies=18]="Currencies",t[t.Directionality=19]="Directionality",t[t.PluralCase=20]="PluralCase",t[t.ExtraData=21]="ExtraData",t}(wt||{});function o2(t){return t.toLowerCase().replace(/_/g,"-")}var Vh="en-US";var s2=Vh;function a2(t){typeof t=="string"&&(s2=t.toLowerCase().replace(/_/g,"-"))}function WD(t,n,e){return function i(r){if(r===Function)return e;let o=Wa(t)?ar(t.index,n):n;Sv(o,5);let s=n[Bt],a=GD(n,s,e,r),l=i.__ngNextListenerFn__;for(;l;)a=GD(n,s,l,r)&&a,l=l.__ngNextListenerFn__;return a}}function GD(t,n,e,i){let r=ge(null);try{return Je(6,n,e),e(i)!==!1}catch(o){return l2(t,o),!1}finally{Je(7,n,e),ge(r)}}function l2(t,n){let e=t[Fa],i=e?e.get(lr,null):null;i&&i.handleError(n)}function qD(t,n,e,i,r,o){let s=n[e],a=n[he],c=a.data[e].outputs[i],u=s[c],m=a.firstCreatePass?Gy(a):null,b=Wy(n),_=u.subscribe(o),M=b.length;b.push(o,_),m&&m.push(r,t.index,M,-(M+1))}var c2=(t,n,e)=>{};function D(t,n,e,i){let r=ie(),o=dt(),s=vn();return ME(o,r,r[ut],s,t,n,i),D}function u2(t,n,e,i){let r=t.cleanup;if(r!=null)for(let o=0;ol?a[l]:null}typeof s=="string"&&(o+=2)}return null}function ME(t,n,e,i,r,o,s){let a=Yh(i),c=t.firstCreatePass?Gy(t):null,u=Wy(n),m=!0;if(i.type&3||s){let b=dr(i,n),_=s?s(b):b,M=u.length,I=s?V=>s(sr(V[i.index])):i.index,O=null;if(!s&&a&&(O=u2(t,n,r,i.index)),O!==null){let V=O.__ngLastListenerFn__||O;V.__ngNextListenerFn__=o,O.__ngLastListenerFn__=o,m=!1}else{o=WD(i,n,o),c2(_,r,o);let V=e.listen(_,r,o);u.push(o,V),c&&c.push(r,I,M,M+1)}}else o=WD(i,n,o);if(m){let b=i.outputs?.[r],_=i.hostDirectiveOutputs?.[r];if(_&&_.length)for(let M=0;M<_.length;M+=2){let I=_[M],O=_[M+1];qD(i,n,I,O,r,o)}if(b&&b.length)for(let M of b)qD(i,n,M,r,r,o)}}function p(t=1){return KO(t)}function d2(t,n){let e=null,i=hN(t);for(let r=0;r=t.data.length&&(t.data[e]=null,t.blueprint[e]=null),n[e]=i}function $t(t){let n=YO();return Yy(n,Ut+t)}function v(t,n=""){let e=ie(),i=dt(),r=t+Ut,o=i.firstCreatePass?Bc(i,r,1,n,null):i.data[r],s=p2(i,e,o,n,t);e[r]=s,Gh()&&of(i,e,s,o),Ms(o,!1)}var p2=(t,n,e,i,r)=>(qh(!0),vN(n[ut],i));function U(t){return Te("",t,""),U}function Te(t,n,e){let i=ie(),r=gE(i,t,n,e);return r!==On&&SE(i,Yr(),r),Te}function hr(t,n,e,i,r){let o=ie(),s=kF(o,t,n,e,i,r);return s!==On&&SE(o,Yr(),s),hr}function SE(t,n,e){let i=EM(n,t);bN(t[ut],i,e)}function Le(t,n,e){rS(n)&&(n=n());let i=ie(),r=Ss();if(Wn(i,r,n)){let o=dt(),s=Pc();nf(o,s,i,t,n,i[ut],e,!1)}return Le}function Ve(t,n){let e=rS(t);return e&&t.set(n),e}function Fe(t,n){let e=ie(),i=dt(),r=vn();return ME(i,e,e[ut],r,t,n),Fe}function m2(t,n,e){let i=dt();if(i.firstCreatePass){let r=Bi(t);wy(e,i.data,i.blueprint,r,!0),wy(n,i.data,i.blueprint,r,!1)}}function wy(t,n,e,i,r){if(t=_n(t),Array.isArray(t))for(let o=0;o>20;if(Na(t)||!t.multi){let _=new ws(c,r,y),M=C_(l,n,r?u:u+b,m);M===-1?(P_(Eh(a,s),o,l),b_(o,t,n.length),n.push(l),a.directiveStart++,a.directiveEnd++,r&&(a.providerIndexes+=1048576),e.push(_),s.push(_)):(e[M]=_,s[M]=_)}else{let _=C_(l,n,u+b,m),M=C_(l,n,u,u+b),I=_>=0&&e[_],O=M>=0&&e[M];if(r&&!O||!r&&!I){P_(Eh(a,s),o,l);let V=y2(r?_2:g2,e.length,r,i,c);!r&&O&&(e[M].providerFactory=V),b_(o,t,n.length,0),n.push(l),a.directiveStart++,a.directiveEnd++,r&&(a.providerIndexes+=1048576),e.push(V),s.push(V)}else{let V=EE(e[r?M:_],c,!r&&i);b_(o,t,_>-1?_:M,V)}!r&&i&&O&&e[M].componentProviders++}}}function b_(t,n,e,i){let r=Na(n),o=vO(n);if(r||o){let l=(o?_n(n.useClass):n).prototype.ngOnDestroy;if(l){let c=t.destroyHooks||(t.destroyHooks=[]);if(!r&&n.multi){let u=c.indexOf(e);u===-1?c.push(e,[i,l]):c[u+1].push(i,l)}else c.push(e,l)}}}function EE(t,n,e){return e&&t.componentProviders++,t.multi.push(n)-1}function C_(t,n,e,i){for(let r=e;r{e.providersResolver=(i,r)=>m2(i,r?r(t):t,n)}}function Gr(t,n,e){let i=Ga()+t,r=ie();return r[i]===On?cf(r,i,e?n.call(e):n()):vF(r,i)}function qr(t,n,e,i){return IE(ie(),Ga(),t,n,e,i)}function Qr(t,n,e,i,r){return xE(ie(),Ga(),t,n,e,i,r)}function TE(t,n,e,i,r,o){return v2(ie(),Ga(),t,n,e,i,r,o)}function Nv(t,n){let e=t[n];return e===On?void 0:e}function IE(t,n,e,i,r,o){let s=n+e;return Wn(t,s,r)?cf(t,s+1,o?i.call(o,r):i(r)):Nv(t,s+1)}function xE(t,n,e,i,r,o,s){let a=n+e;return kv(t,a,r,o)?cf(t,a+2,s?i.call(s,r,o):i(r,o)):Nv(t,a+2)}function v2(t,n,e,i,r,o,s,a){let l=n+e;return bF(t,l,r,o,s)?cf(t,l+3,a?i.call(a,r,o,s):i(r,o,s)):Nv(t,l+3)}function te(t,n){let e=dt(),i,r=t+Ut;e.firstCreatePass?(i=b2(n,e.pipeRegistry),e.data[r]=i,i.onDestroy&&(e.destroyHooks??=[]).push(r,i.onDestroy)):i=e.data[r];let o=i.factory||(i.factory=gs(i.type,!0)),s,a=En(y);try{let l=Sh(!1),c=o();return Sh(l),f2(e,ie(),r,c),c}finally{En(a)}}function b2(t,n){if(n)for(let e=n.length-1;e>=0;e--){let i=n[e];if(t===i.name)return i}}function pe(t,n,e){let i=t+Ut,r=ie(),o=Yy(r,i);return kE(r,i)?IE(r,Ga(),n,o.transform,e,o):o.transform(e)}function Ja(t,n,e,i){let r=t+Ut,o=ie(),s=Yy(o,r);return kE(o,r)?xE(o,Ga(),n,s.transform,e,i,s):s.transform(e,i)}function kE(t,n){return t[he].data[n].pure}function Kn(t,n){return af(t,n)}var My=class{ngModuleFactory;componentFactories;constructor(n,e){this.ngModuleFactory=n,this.componentFactories=e}},AE=(()=>{class t{compileModuleSync(e){return new dy(e)}compileModuleAsync(e){return Promise.resolve(this.compileModuleSync(e))}compileModuleAndAllComponentsSync(e){let i=this.compileModuleSync(e),r=gM(e),o=xS(r.declarations).reduce((s,a)=>{let l=Pa(a);return l&&s.push(new xc(l)),s},[]);return new My(i,o)}compileModuleAndAllComponentsAsync(e){return Promise.resolve(this.compileModuleAndAllComponentsSync(e))}clearCache(){}clearCacheFor(e){}getModuleId(e){}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var C2=(()=>{class t{zone=S(Me);changeDetectionScheduler=S(Ec);applicationRef=S(kn);_onMicrotaskEmptySubscription;initialize(){this._onMicrotaskEmptySubscription||(this._onMicrotaskEmptySubscription=this.zone.onMicrotaskEmpty.subscribe({next:()=>{this.changeDetectionScheduler.runningTick||this.zone.run(()=>{this.applicationRef.tick()})}}))}ngOnDestroy(){this._onMicrotaskEmptySubscription?.unsubscribe()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function w2({ngZoneFactory:t,ignoreChangesOutsideZone:n,scheduleInRootZone:e}){return t??=()=>new Me(W(E({},D2()),{scheduleInRootZone:e})),[{provide:Me,useFactory:t},{provide:Oa,multi:!0,useFactory:()=>{let i=S(C2,{optional:!0});return()=>i.initialize()}},{provide:Oa,multi:!0,useFactory:()=>{let i=S(M2);return()=>{i.initialize()}}},n===!0?{provide:eS,useValue:!0}:[],{provide:tS,useValue:e??XM}]}function D2(t){return{enableLongStackTrace:!1,shouldCoalesceEventChangeDetection:t?.eventCoalescing??!1,shouldCoalesceRunChangeDetection:t?.runCoalescing??!1}}var M2=(()=>{class t{subscription=new Ue;initialized=!1;zone=S(Me);pendingTasks=S(Mo);initialize(){if(this.initialized)return;this.initialized=!0;let e=null;!this.zone.isStable&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(e=this.pendingTasks.add()),this.zone.runOutsideAngular(()=>{this.subscription.add(this.zone.onStable.subscribe(()=>{Me.assertNotInAngularZone(),queueMicrotask(()=>{e!==null&&!this.zone.hasPendingMacrotasks&&!this.zone.hasPendingMicrotasks&&(this.pendingTasks.remove(e),e=null)})}))}),this.subscription.add(this.zone.onUnstable.subscribe(()=>{Me.assertInAngularZone(),e??=this.pendingTasks.add()}))}ngOnDestroy(){this.subscription.unsubscribe()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var S2=(()=>{class t{appRef=S(kn);taskService=S(Mo);ngZone=S(Me);zonelessEnabled=S(rv);tracing=S(Zh,{optional:!0});disableScheduling=S(eS,{optional:!0})??!1;zoneIsDefined=typeof Zone<"u"&&!!Zone.root.run;schedulerTickApplyArgs=[{data:{__scheduler_tick__:!0}}];subscriptions=new Ue;angularZoneId=this.zoneIsDefined?this.ngZone._inner?.get(Ih):null;scheduleInRootZone=!this.zonelessEnabled&&this.zoneIsDefined&&(S(tS,{optional:!0})??!1);cancelScheduledCallback=null;useMicrotaskScheduler=!1;runningTick=!1;pendingRenderTaskId=null;constructor(){this.subscriptions.add(this.appRef.afterTick.subscribe(()=>{this.runningTick||this.cleanup()})),this.subscriptions.add(this.ngZone.onUnstable.subscribe(()=>{this.runningTick||this.cleanup()})),this.disableScheduling||=!this.zonelessEnabled&&(this.ngZone instanceof j_||!this.zoneIsDefined)}notify(e){if(!this.zonelessEnabled&&e===5)return;let i=!1;switch(e){case 0:{this.appRef.dirtyFlags|=2;break}case 3:case 2:case 4:case 5:case 1:{this.appRef.dirtyFlags|=4;break}case 6:{this.appRef.dirtyFlags|=2,i=!0;break}case 12:{this.appRef.dirtyFlags|=16,i=!0;break}case 13:{this.appRef.dirtyFlags|=2,i=!0;break}case 11:{i=!0;break}case 9:case 8:case 7:case 10:default:this.appRef.dirtyFlags|=8}if(this.appRef.tracingSnapshot=this.tracing?.snapshot(this.appRef.tracingSnapshot)??null,!this.shouldScheduleTick(i))return;let r=this.useMicrotaskScheduler?CD:nS;this.pendingRenderTaskId=this.taskService.add(),this.scheduleInRootZone?this.cancelScheduledCallback=Zone.root.run(()=>r(()=>this.tick())):this.cancelScheduledCallback=this.ngZone.runOutsideAngular(()=>r(()=>this.tick()))}shouldScheduleTick(e){return!(this.disableScheduling&&!e||this.appRef.destroyed||this.pendingRenderTaskId!==null||this.runningTick||this.appRef._runningTick||!this.zonelessEnabled&&this.zoneIsDefined&&Zone.current.get(Ih+this.angularZoneId))}tick(){if(this.runningTick||this.appRef.destroyed)return;if(this.appRef.dirtyFlags===0){this.cleanup();return}!this.zonelessEnabled&&this.appRef.dirtyFlags&7&&(this.appRef.dirtyFlags|=1);let e=this.taskService.add();try{this.ngZone.run(()=>{this.runningTick=!0,this.appRef._tick()},void 0,this.schedulerTickApplyArgs)}catch(i){throw this.taskService.remove(e),i}finally{this.cleanup()}this.useMicrotaskScheduler=!0,CD(()=>{this.useMicrotaskScheduler=!1,this.taskService.remove(e)})}ngOnDestroy(){this.subscriptions.unsubscribe(),this.cleanup()}cleanup(){if(this.runningTick=!1,this.cancelScheduledCallback?.(),this.cancelScheduledCallback=null,this.pendingRenderTaskId!==null){let e=this.pendingRenderTaskId;this.pendingRenderTaskId=null,this.taskService.remove(e)}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function E2(){return typeof $localize<"u"&&$localize.locale||Vh}var Uc=new B("",{providedIn:"root",factory:()=>S(Uc,Ce.Optional|Ce.SkipSelf)||E2()});var Sy=new B(""),T2=new B("");function vc(t){return!t.moduleRef}function I2(t){let n=vc(t)?t.r3Injector:t.moduleRef.injector,e=n.get(Me);return e.run(()=>{vc(t)?t.r3Injector.resolveInjectorInitializers():t.moduleRef.resolveInjectorInitializers();let i=n.get(lr,null),r;if(e.runOutsideAngular(()=>{r=e.onError.subscribe({next:o=>{i.handleError(o)}})}),vc(t)){let o=()=>n.destroy(),s=t.platformInjector.get(Sy);s.add(o),n.onDestroy(()=>{r.unsubscribe(),s.delete(o)})}else{let o=()=>t.moduleRef.destroy(),s=t.platformInjector.get(Sy);s.add(o),t.moduleRef.onDestroy(()=>{hh(t.allPlatformModules,t.moduleRef),r.unsubscribe(),s.delete(o)})}return k2(i,e,()=>{let o=n.get(mE);return o.runInitializers(),o.donePromise.then(()=>{let s=n.get(Uc,Vh);if(a2(s||Vh),!n.get(T2,!0))return vc(t)?n.get(kn):(t.allPlatformModules.push(t.moduleRef),t.moduleRef);if(vc(t)){let l=n.get(kn);return t.rootComponent!==void 0&&l.bootstrap(t.rootComponent),l}else return x2(t.moduleRef,t.allPlatformModules),t.moduleRef})})})}function x2(t,n){let e=t.injector.get(kn);if(t._bootstrapComponents.length>0)t._bootstrapComponents.forEach(i=>e.bootstrap(i));else if(t.instance.ngDoBootstrap)t.instance.ngDoBootstrap(e);else throw new R(-403,!1);n.push(t)}function k2(t,n,e){try{let i=e();return To(i)?i.catch(r=>{throw n.runOutsideAngular(()=>t.handleError(r)),r}):i}catch(i){throw n.runOutsideAngular(()=>t.handleError(i)),i}}var fh=null;function A2(t=[],n){return kt.create({name:n,providers:[{provide:Uh,useValue:"platform"},{provide:Sy,useValue:new Set([()=>fh=null])},...t]})}function R2(t=[]){if(fh)return fh;let n=A2(t);return fh=n,EF(),O2(n),n}function O2(t){let n=t.get(lv,null);Gn(t,()=>{n?.forEach(e=>e())})}function RE(){return!1}var it=(()=>{class t{static __NG_ELEMENT_ID__=P2}return t})();function P2(t){return N2(vn(),ie(),(t&16)===16)}function N2(t,n,e){if(Wa(t)&&!e){let i=ar(t.index,n);return new Ic(i,i)}else if(t.type&175){let i=n[zn];return new Ic(i,n)}return null}var Ey=class{constructor(){}supports(n){return fE(n)}create(n){return new Ty(n)}},L2=(t,n)=>n,Ty=class{length=0;collection;_linkedRecords=null;_unlinkedRecords=null;_previousItHead=null;_itHead=null;_itTail=null;_additionsHead=null;_additionsTail=null;_movesHead=null;_movesTail=null;_removalsHead=null;_removalsTail=null;_identityChangesHead=null;_identityChangesTail=null;_trackByFn;constructor(n){this._trackByFn=n||L2}forEachItem(n){let e;for(e=this._itHead;e!==null;e=e._next)n(e)}forEachOperation(n){let e=this._itHead,i=this._removalsHead,r=0,o=null;for(;e||i;){let s=!i||e&&e.currentIndex{s=this._trackByFn(r,a),e===null||!Object.is(e.trackById,s)?(e=this._mismatch(e,a,s,r),i=!0):(i&&(e=this._verifyReinsertion(e,a,s,r)),Object.is(e.item,a)||this._addIdentityChange(e,a)),e=e._next,r++}),this.length=r;return this._truncate(e),this.collection=n,this.isDirty}get isDirty(){return this._additionsHead!==null||this._movesHead!==null||this._removalsHead!==null||this._identityChangesHead!==null}_reset(){if(this.isDirty){let n;for(n=this._previousItHead=this._itHead;n!==null;n=n._next)n._nextPrevious=n._next;for(n=this._additionsHead;n!==null;n=n._nextAdded)n.previousIndex=n.currentIndex;for(this._additionsHead=this._additionsTail=null,n=this._movesHead;n!==null;n=n._nextMoved)n.previousIndex=n.currentIndex;this._movesHead=this._movesTail=null,this._removalsHead=this._removalsTail=null,this._identityChangesHead=this._identityChangesTail=null}}_mismatch(n,e,i,r){let o;return n===null?o=this._itTail:(o=n._prev,this._remove(n)),n=this._unlinkedRecords===null?null:this._unlinkedRecords.get(i,null),n!==null?(Object.is(n.item,e)||this._addIdentityChange(n,e),this._reinsertAfter(n,o,r)):(n=this._linkedRecords===null?null:this._linkedRecords.get(i,r),n!==null?(Object.is(n.item,e)||this._addIdentityChange(n,e),this._moveAfter(n,o,r)):n=this._addAfter(new Iy(e,i),o,r)),n}_verifyReinsertion(n,e,i,r){let o=this._unlinkedRecords===null?null:this._unlinkedRecords.get(i,null);return o!==null?n=this._reinsertAfter(o,n._prev,r):n.currentIndex!=r&&(n.currentIndex=r,this._addToMoves(n,r)),n}_truncate(n){for(;n!==null;){let e=n._next;this._addToRemovals(this._unlink(n)),n=e}this._unlinkedRecords!==null&&this._unlinkedRecords.clear(),this._additionsTail!==null&&(this._additionsTail._nextAdded=null),this._movesTail!==null&&(this._movesTail._nextMoved=null),this._itTail!==null&&(this._itTail._next=null),this._removalsTail!==null&&(this._removalsTail._nextRemoved=null),this._identityChangesTail!==null&&(this._identityChangesTail._nextIdentityChange=null)}_reinsertAfter(n,e,i){this._unlinkedRecords!==null&&this._unlinkedRecords.remove(n);let r=n._prevRemoved,o=n._nextRemoved;return r===null?this._removalsHead=o:r._nextRemoved=o,o===null?this._removalsTail=r:o._prevRemoved=r,this._insertAfter(n,e,i),this._addToMoves(n,i),n}_moveAfter(n,e,i){return this._unlink(n),this._insertAfter(n,e,i),this._addToMoves(n,i),n}_addAfter(n,e,i){return this._insertAfter(n,e,i),this._additionsTail===null?this._additionsTail=this._additionsHead=n:this._additionsTail=this._additionsTail._nextAdded=n,n}_insertAfter(n,e,i){let r=e===null?this._itHead:e._next;return n._next=r,n._prev=e,r===null?this._itTail=n:r._prev=n,e===null?this._itHead=n:e._next=n,this._linkedRecords===null&&(this._linkedRecords=new jh),this._linkedRecords.put(n),n.currentIndex=i,n}_remove(n){return this._addToRemovals(this._unlink(n))}_unlink(n){this._linkedRecords!==null&&this._linkedRecords.remove(n);let e=n._prev,i=n._next;return e===null?this._itHead=i:e._next=i,i===null?this._itTail=e:i._prev=e,n}_addToMoves(n,e){return n.previousIndex===e||(this._movesTail===null?this._movesTail=this._movesHead=n:this._movesTail=this._movesTail._nextMoved=n),n}_addToRemovals(n){return this._unlinkedRecords===null&&(this._unlinkedRecords=new jh),this._unlinkedRecords.put(n),n.currentIndex=null,n._nextRemoved=null,this._removalsTail===null?(this._removalsTail=this._removalsHead=n,n._prevRemoved=null):(n._prevRemoved=this._removalsTail,this._removalsTail=this._removalsTail._nextRemoved=n),n}_addIdentityChange(n,e){return n.item=e,this._identityChangesTail===null?this._identityChangesTail=this._identityChangesHead=n:this._identityChangesTail=this._identityChangesTail._nextIdentityChange=n,n}},Iy=class{item;trackById;currentIndex=null;previousIndex=null;_nextPrevious=null;_prev=null;_next=null;_prevDup=null;_nextDup=null;_prevRemoved=null;_nextRemoved=null;_nextAdded=null;_nextMoved=null;_nextIdentityChange=null;constructor(n,e){this.item=n,this.trackById=e}},xy=class{_head=null;_tail=null;add(n){this._head===null?(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,e){let i;for(i=this._head;i!==null;i=i._nextDup)if((e===null||e<=i.currentIndex)&&Object.is(i.trackById,n))return i;return null}remove(n){let e=n._prevDup,i=n._nextDup;return e===null?this._head=i:e._nextDup=i,i===null?this._tail=e:i._prevDup=e,this._head===null}},jh=class{map=new Map;put(n){let e=n.trackById,i=this.map.get(e);i||(i=new xy,this.map.set(e,i)),i.add(n)}get(n,e){let i=n,r=this.map.get(i);return r?r.get(n,e):null}remove(n){let e=n.trackById;return this.map.get(e).remove(n)&&this.map.delete(e),n}get isEmpty(){return this.map.size===0}clear(){this.map.clear()}};function QD(t,n,e){let i=t.previousIndex;if(i===null)return i;let r=0;return e&&i{if(e&&e.key===r)this._maybeAddToChanges(e,i),this._appendAfter=e,e=e._next;else{let o=this._getOrCreateRecordForKey(r,i);e=this._insertBeforeOrAppend(e,o)}}),e){e._prev&&(e._prev._next=null),this._removalsHead=e;for(let i=e;i!==null;i=i._nextRemoved)i===this._mapHead&&(this._mapHead=null),this._records.delete(i.key),i._nextRemoved=i._next,i.previousValue=i.currentValue,i.currentValue=null,i._prev=null,i._next=null}return this._changesTail&&(this._changesTail._nextChanged=null),this._additionsTail&&(this._additionsTail._nextAdded=null),this.isDirty}_insertBeforeOrAppend(n,e){if(n){let i=n._prev;return e._next=n,e._prev=i,n._prev=e,i&&(i._next=e),n===this._mapHead&&(this._mapHead=e),this._appendAfter=n,n}return this._appendAfter?(this._appendAfter._next=e,e._prev=this._appendAfter):this._mapHead=e,this._appendAfter=e,null}_getOrCreateRecordForKey(n,e){if(this._records.has(n)){let r=this._records.get(n);this._maybeAddToChanges(r,e);let o=r._prev,s=r._next;return o&&(o._next=s),s&&(s._prev=o),r._next=null,r._prev=null,r}let i=new Ry(n);return this._records.set(n,i),i.currentValue=e,this._addToAdditions(i),i}_reset(){if(this.isDirty){let n;for(this._previousMapHead=this._mapHead,n=this._previousMapHead;n!==null;n=n._next)n._nextPrevious=n._next;for(n=this._changesHead;n!==null;n=n._nextChanged)n.previousValue=n.currentValue;for(n=this._additionsHead;n!=null;n=n._nextAdded)n.previousValue=n.currentValue;this._changesHead=this._changesTail=null,this._additionsHead=this._additionsTail=null,this._removalsHead=null}}_maybeAddToChanges(n,e){Object.is(e,n.currentValue)||(n.previousValue=n.currentValue,n.currentValue=e,this._addToChanges(n))}_addToAdditions(n){this._additionsHead===null?this._additionsHead=this._additionsTail=n:(this._additionsTail._nextAdded=n,this._additionsTail=n)}_addToChanges(n){this._changesHead===null?this._changesHead=this._changesTail=n:(this._changesTail._nextChanged=n,this._changesTail=n)}_forEach(n,e){n instanceof Map?n.forEach(e):Object.keys(n).forEach(i=>e(n[i],i))}},Ry=class{key;previousValue=null;currentValue=null;_nextPrevious=null;_next=null;_prev=null;_nextAdded=null;_nextRemoved=null;_nextChanged=null;constructor(n){this.key=n}};function ZD(){return new Lv([new Ey])}var Lv=(()=>{class t{factories;static \u0275prov=x({token:t,providedIn:"root",factory:ZD});constructor(e){this.factories=e}static create(e,i){if(i!=null){let r=i.factories.slice();e=e.concat(r)}return new t(e)}static extend(e){return{provide:t,useFactory:i=>t.create(e,i||ZD()),deps:[[t,new hM,new Ny]]}}find(e){let i=this.factories.find(r=>r.supports(e));if(i!=null)return i;throw new R(901,!1)}}return t})();function KD(){return new Fv([new ky])}var Fv=(()=>{class t{static \u0275prov=x({token:t,providedIn:"root",factory:KD});factories;constructor(e){this.factories=e}static create(e,i){if(i){let r=i.factories.slice();e=e.concat(r)}return new t(e)}static extend(e){return{provide:t,useFactory:i=>t.create(e,i||KD()),deps:[[t,new hM,new Ny]]}}find(e){let i=this.factories.find(r=>r.supports(e));if(i)return i;throw new R(901,!1)}}return t})();function OE(t){Je(8);try{let{rootComponent:n,appProviders:e,platformProviders:i}=t,r=R2(i),o=[w2({}),{provide:Ec,useExisting:S2},...e||[]],s=new Oh({providers:o,parent:r,debugName:"",runEnvironmentInitializers:!1});return I2({r3Injector:s.injector,platformInjector:r,rootComponent:n})}catch(n){return Promise.reject(n)}finally{Je(9)}}function Xe(t){return typeof t=="boolean"?t:t!=null&&t!=="false"}function Es(t,n=NaN){return!isNaN(parseFloat(t))&&!isNaN(Number(t))?Number(t):n}function _i(t){return jg(t)}function $i(t,n){return Ng(t,n?.equal)}var JD=class{[ci];constructor(n){this[ci]=n}destroy(){this[ci].destroy()}};var Ie=new B("");var LE=null;function yi(){return LE}function Vv(t){LE??=t}var $c=class{},jv=(()=>{class t{historyGo(e){throw new Error("")}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>S(FE),providedIn:"platform"})}return t})();var FE=(()=>{class t extends jv{_location;_history;_doc=S(Ie);constructor(){super(),this._location=window.location,this._history=window.history}getBaseHrefFromDOM(){return yi().getBaseHref(this._doc)}onPopState(e){let i=yi().getGlobalEventTarget(this._doc,"window");return i.addEventListener("popstate",e,!1),()=>i.removeEventListener("popstate",e)}onHashChange(e){let i=yi().getGlobalEventTarget(this._doc,"window");return i.addEventListener("hashchange",e,!1),()=>i.removeEventListener("hashchange",e)}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(e){this._location.pathname=e}pushState(e,i,r){this._history.pushState(e,i,r)}replaceState(e,i,r){this._history.replaceState(e,i,r)}forward(){this._history.forward()}back(){this._history.back()}historyGo(e=0){this._history.go(e)}getState(){return this._history.state}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>new t,providedIn:"platform"})}return t})();function VE(t,n){return t?n?t.endsWith("/")?n.startsWith("/")?t+n.slice(1):t+n:n.startsWith("/")?t+n:`${t}/${n}`:t:n}function PE(t){let n=t.search(/#|\?|$/);return t[n-1]==="/"?t.slice(0,n-1)+t.slice(n):t}function ko(t){return t&&t[0]!=="?"?`?${t}`:t}var Xa=(()=>{class t{historyGo(e){throw new Error("")}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>S(HE),providedIn:"root"})}return t})(),jE=new B(""),HE=(()=>{class t extends Xa{_platformLocation;_baseHref;_removeListenerFns=[];constructor(e,i){super(),this._platformLocation=e,this._baseHref=i??this._platformLocation.getBaseHrefFromDOM()??S(Ie).location?.origin??""}ngOnDestroy(){for(;this._removeListenerFns.length;)this._removeListenerFns.pop()()}onPopState(e){this._removeListenerFns.push(this._platformLocation.onPopState(e),this._platformLocation.onHashChange(e))}getBaseHref(){return this._baseHref}prepareExternalUrl(e){return VE(this._baseHref,e)}path(e=!1){let i=this._platformLocation.pathname+ko(this._platformLocation.search),r=this._platformLocation.hash;return r&&e?`${i}${r}`:i}pushState(e,i,r,o){let s=this.prepareExternalUrl(r+ko(o));this._platformLocation.pushState(e,i,s)}replaceState(e,i,r,o){let s=this.prepareExternalUrl(r+ko(o));this._platformLocation.replaceState(e,i,s)}forward(){this._platformLocation.forward()}back(){this._platformLocation.back()}getState(){return this._platformLocation.getState()}historyGo(e=0){this._platformLocation.historyGo?.(e)}static \u0275fac=function(i){return new(i||t)(F(jv),F(jE,8))};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),el=(()=>{class t{_subject=new X;_basePath;_locationStrategy;_urlChangeListeners=[];_urlChangeSubscription=null;constructor(e){this._locationStrategy=e;let i=this._locationStrategy.getBaseHref();this._basePath=j2(PE(NE(i))),this._locationStrategy.onPopState(r=>{this._subject.next({url:this.path(!0),pop:!0,state:r.state,type:r.type})})}ngOnDestroy(){this._urlChangeSubscription?.unsubscribe(),this._urlChangeListeners=[]}path(e=!1){return this.normalize(this._locationStrategy.path(e))}getState(){return this._locationStrategy.getState()}isCurrentPathEqualTo(e,i=""){return this.path()==this.normalize(e+ko(i))}normalize(e){return t.stripTrailingSlash(V2(this._basePath,NE(e)))}prepareExternalUrl(e){return e&&e[0]!=="/"&&(e="/"+e),this._locationStrategy.prepareExternalUrl(e)}go(e,i="",r=null){this._locationStrategy.pushState(r,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+ko(i)),r)}replaceState(e,i="",r=null){this._locationStrategy.replaceState(r,"",e,i),this._notifyUrlChangeListeners(this.prepareExternalUrl(e+ko(i)),r)}forward(){this._locationStrategy.forward()}back(){this._locationStrategy.back()}historyGo(e=0){this._locationStrategy.historyGo?.(e)}onUrlChange(e){return this._urlChangeListeners.push(e),this._urlChangeSubscription??=this.subscribe(i=>{this._notifyUrlChangeListeners(i.url,i.state)}),()=>{let i=this._urlChangeListeners.indexOf(e);this._urlChangeListeners.splice(i,1),this._urlChangeListeners.length===0&&(this._urlChangeSubscription?.unsubscribe(),this._urlChangeSubscription=null)}}_notifyUrlChangeListeners(e="",i){this._urlChangeListeners.forEach(r=>r(e,i))}subscribe(e,i,r){return this._subject.subscribe({next:e,error:i??void 0,complete:r??void 0})}static normalizeQueryParams=ko;static joinWithSlash=VE;static stripTrailingSlash=PE;static \u0275fac=function(i){return new(i||t)(F(Xa))};static \u0275prov=x({token:t,factory:()=>F2(),providedIn:"root"})}return t})();function F2(){return new el(F(Xa))}function V2(t,n){if(!t||!n.startsWith(t))return n;let e=n.substring(t.length);return e===""||["/",";","?","#"].includes(e[0])?e:n}function NE(t){return t.replace(/\/index.html$/,"")}function j2(t){if(new RegExp("^(https?:)?//").test(t)){let[,e]=t.split(/\/\/[^\/]+/);return e}return t}var qv=function(t){return t[t.Decimal=0]="Decimal",t[t.Percent=1]="Percent",t[t.Currency=2]="Currency",t[t.Scientific=3]="Scientific",t}(qv||{});var dn=function(t){return t[t.Format=0]="Format",t[t.Standalone=1]="Standalone",t}(dn||{}),$e=function(t){return t[t.Narrow=0]="Narrow",t[t.Abbreviated=1]="Abbreviated",t[t.Wide=2]="Wide",t[t.Short=3]="Short",t}($e||{}),Nn=function(t){return t[t.Short=0]="Short",t[t.Medium=1]="Medium",t[t.Long=2]="Long",t[t.Full=3]="Full",t}(Nn||{}),Ln={Decimal:0,Group:1,List:2,PercentSign:3,PlusSign:4,MinusSign:5,Exponential:6,SuperscriptingExponent:7,PerMille:8,Infinity:9,NaN:10,TimeSeparator:11,CurrencyDecimal:12,CurrencyGroup:13};function WE(t){return Zn(t)[wt.LocaleId]}function GE(t,n,e){let i=Zn(t),r=[i[wt.DayPeriodsFormat],i[wt.DayPeriodsStandalone]],o=vi(r,n);return vi(o,e)}function qE(t,n,e){let i=Zn(t),r=[i[wt.DaysFormat],i[wt.DaysStandalone]],o=vi(r,n);return vi(o,e)}function QE(t,n,e){let i=Zn(t),r=[i[wt.MonthsFormat],i[wt.MonthsStandalone]],o=vi(r,n);return vi(o,e)}function ZE(t,n){let i=Zn(t)[wt.Eras];return vi(i,n)}function Yc(t,n){let e=Zn(t);return vi(e[wt.DateFormat],n)}function zc(t,n){let e=Zn(t);return vi(e[wt.TimeFormat],n)}function Wc(t,n){let i=Zn(t)[wt.DateTimeFormat];return vi(i,n)}function fr(t,n){let e=Zn(t),i=e[wt.NumberSymbols][n];if(typeof i>"u"){if(n===Ln.CurrencyDecimal)return e[wt.NumberSymbols][Ln.Decimal];if(n===Ln.CurrencyGroup)return e[wt.NumberSymbols][Ln.Group]}return i}function KE(t,n){return Zn(t)[wt.NumberFormats][n]}function JE(t){if(!t[wt.ExtraData])throw new Error(`Missing extra locale data for the locale "${t[wt.LocaleId]}". Use "registerLocaleData" to load new data. See the "I18n guide" on angular.io to know more.`)}function XE(t){let n=Zn(t);return JE(n),(n[wt.ExtraData][2]||[]).map(i=>typeof i=="string"?Hv(i):[Hv(i[0]),Hv(i[1])])}function eT(t,n,e){let i=Zn(t);JE(i);let r=[i[wt.ExtraData][0],i[wt.ExtraData][1]],o=vi(r,n)||[];return vi(o,e)||[]}function vi(t,n){for(let e=n;e>-1;e--)if(typeof t[e]<"u")return t[e];throw new Error("Locale data API: locale data undefined")}function Hv(t){let[n,e]=t.split(":");return{hours:+n,minutes:+e}}var H2=/^(\d{4,})-?(\d\d)-?(\d\d)(?:T(\d\d)(?::?(\d\d)(?::?(\d\d)(?:\.(\d+))?)?)?(Z|([+-])(\d\d):?(\d\d))?)?$/,uf={},B2=/((?:[^BEGHLMOSWYZabcdhmswyz']+)|(?:'(?:[^']|'')*')|(?:G{1,5}|y{1,4}|Y{1,4}|M{1,5}|L{1,5}|w{1,2}|W{1}|d{1,2}|E{1,6}|c{1,6}|a{1,5}|b{1,5}|B{1,5}|h{1,2}|H{1,2}|m{1,2}|s{1,2}|S{1,3}|z{1,4}|Z{1,5}|O{1,4}))([\s\S]*)/;function tT(t,n,e,i){let r=Z2(t);n=Zr(e,n)||n;let s=[],a;for(;n;)if(a=B2.exec(n),a){s=s.concat(a.slice(1));let u=s.pop();if(!u)break;n=u}else{s.push(n);break}let l=r.getTimezoneOffset();i&&(l=iT(i,l),r=Q2(r,i));let c="";return s.forEach(u=>{let m=G2(u);c+=m?m(r,e,l):u==="''"?"'":u.replace(/(^'|'$)/g,"").replace(/''/g,"'")}),c}function mf(t,n,e){let i=new Date(0);return i.setFullYear(t,n,e),i.setHours(0,0,0),i}function Zr(t,n){let e=WE(t);if(uf[e]??={},uf[e][n])return uf[e][n];let i="";switch(n){case"shortDate":i=Yc(t,Nn.Short);break;case"mediumDate":i=Yc(t,Nn.Medium);break;case"longDate":i=Yc(t,Nn.Long);break;case"fullDate":i=Yc(t,Nn.Full);break;case"shortTime":i=zc(t,Nn.Short);break;case"mediumTime":i=zc(t,Nn.Medium);break;case"longTime":i=zc(t,Nn.Long);break;case"fullTime":i=zc(t,Nn.Full);break;case"short":let r=Zr(t,"shortTime"),o=Zr(t,"shortDate");i=df(Wc(t,Nn.Short),[r,o]);break;case"medium":let s=Zr(t,"mediumTime"),a=Zr(t,"mediumDate");i=df(Wc(t,Nn.Medium),[s,a]);break;case"long":let l=Zr(t,"longTime"),c=Zr(t,"longDate");i=df(Wc(t,Nn.Long),[l,c]);break;case"full":let u=Zr(t,"fullTime"),m=Zr(t,"fullDate");i=df(Wc(t,Nn.Full),[u,m]);break}return i&&(uf[e][n]=i),i}function df(t,n){return n&&(t=t.replace(/\{([^}]+)}/g,function(e,i){return n!=null&&i in n?n[i]:e})),t}function Yi(t,n,e="-",i,r){let o="";(t<0||r&&t<=0)&&(r?t=-t+1:(t=-t,o=e));let s=String(t);for(;s.length0||a>-e)&&(a+=e),t===3)a===0&&e===-12&&(a=12);else if(t===6)return U2(a,n);let l=fr(s,Ln.MinusSign);return Yi(a,n,l,i,r)}}function $2(t,n){switch(t){case 0:return n.getFullYear();case 1:return n.getMonth();case 2:return n.getDate();case 3:return n.getHours();case 4:return n.getMinutes();case 5:return n.getSeconds();case 6:return n.getMilliseconds();case 7:return n.getDay();default:throw new Error(`Unknown DateType value "${t}".`)}}function et(t,n,e=dn.Format,i=!1){return function(r,o){return Y2(r,o,t,n,e,i)}}function Y2(t,n,e,i,r,o){switch(e){case 2:return QE(n,r,i)[t.getMonth()];case 1:return qE(n,r,i)[t.getDay()];case 0:let s=t.getHours(),a=t.getMinutes();if(o){let c=XE(n),u=eT(n,r,i),m=c.findIndex(b=>{if(Array.isArray(b)){let[_,M]=b,I=s>=_.hours&&a>=_.minutes,O=s0?Math.floor(r/60):Math.ceil(r/60);switch(t){case 0:return(r>=0?"+":"")+Yi(s,2,o)+Yi(Math.abs(r%60),2,o);case 1:return"GMT"+(r>=0?"+":"")+Yi(s,1,o);case 2:return"GMT"+(r>=0?"+":"")+Yi(s,2,o)+":"+Yi(Math.abs(r%60),2,o);case 3:return i===0?"Z":(r>=0?"+":"")+Yi(s,2,o)+":"+Yi(Math.abs(r%60),2,o);default:throw new Error(`Unknown zone width "${t}"`)}}}var z2=0,pf=4;function W2(t){let n=mf(t,z2,1).getDay();return mf(t,0,1+(n<=pf?pf:pf+7)-n)}function nT(t){let n=t.getDay(),e=n===0?-3:pf-n;return mf(t.getFullYear(),t.getMonth(),t.getDate()+e)}function Bv(t,n=!1){return function(e,i){let r;if(n){let o=new Date(e.getFullYear(),e.getMonth(),1).getDay()-1,s=e.getDate();r=1+Math.floor((s+o)/7)}else{let o=nT(e),s=W2(o.getFullYear()),a=o.getTime()-s.getTime();r=1+Math.round(a/6048e5)}return Yi(r,t,fr(i,Ln.MinusSign))}}function ff(t,n=!1){return function(e,i){let o=nT(e).getFullYear();return Yi(o,t,fr(i,Ln.MinusSign),n)}}var Uv={};function G2(t){if(Uv[t])return Uv[t];let n;switch(t){case"G":case"GG":case"GGG":n=et(3,$e.Abbreviated);break;case"GGGG":n=et(3,$e.Wide);break;case"GGGGG":n=et(3,$e.Narrow);break;case"y":n=Pt(0,1,0,!1,!0);break;case"yy":n=Pt(0,2,0,!0,!0);break;case"yyy":n=Pt(0,3,0,!1,!0);break;case"yyyy":n=Pt(0,4,0,!1,!0);break;case"Y":n=ff(1);break;case"YY":n=ff(2,!0);break;case"YYY":n=ff(3);break;case"YYYY":n=ff(4);break;case"M":case"L":n=Pt(1,1,1);break;case"MM":case"LL":n=Pt(1,2,1);break;case"MMM":n=et(2,$e.Abbreviated);break;case"MMMM":n=et(2,$e.Wide);break;case"MMMMM":n=et(2,$e.Narrow);break;case"LLL":n=et(2,$e.Abbreviated,dn.Standalone);break;case"LLLL":n=et(2,$e.Wide,dn.Standalone);break;case"LLLLL":n=et(2,$e.Narrow,dn.Standalone);break;case"w":n=Bv(1);break;case"ww":n=Bv(2);break;case"W":n=Bv(1,!0);break;case"d":n=Pt(2,1);break;case"dd":n=Pt(2,2);break;case"c":case"cc":n=Pt(7,1);break;case"ccc":n=et(1,$e.Abbreviated,dn.Standalone);break;case"cccc":n=et(1,$e.Wide,dn.Standalone);break;case"ccccc":n=et(1,$e.Narrow,dn.Standalone);break;case"cccccc":n=et(1,$e.Short,dn.Standalone);break;case"E":case"EE":case"EEE":n=et(1,$e.Abbreviated);break;case"EEEE":n=et(1,$e.Wide);break;case"EEEEE":n=et(1,$e.Narrow);break;case"EEEEEE":n=et(1,$e.Short);break;case"a":case"aa":case"aaa":n=et(0,$e.Abbreviated);break;case"aaaa":n=et(0,$e.Wide);break;case"aaaaa":n=et(0,$e.Narrow);break;case"b":case"bb":case"bbb":n=et(0,$e.Abbreviated,dn.Standalone,!0);break;case"bbbb":n=et(0,$e.Wide,dn.Standalone,!0);break;case"bbbbb":n=et(0,$e.Narrow,dn.Standalone,!0);break;case"B":case"BB":case"BBB":n=et(0,$e.Abbreviated,dn.Format,!0);break;case"BBBB":n=et(0,$e.Wide,dn.Format,!0);break;case"BBBBB":n=et(0,$e.Narrow,dn.Format,!0);break;case"h":n=Pt(3,1,-12);break;case"hh":n=Pt(3,2,-12);break;case"H":n=Pt(3,1);break;case"HH":n=Pt(3,2);break;case"m":n=Pt(4,1);break;case"mm":n=Pt(4,2);break;case"s":n=Pt(5,1);break;case"ss":n=Pt(5,2);break;case"S":n=Pt(6,1);break;case"SS":n=Pt(6,2);break;case"SSS":n=Pt(6,3);break;case"Z":case"ZZ":case"ZZZ":n=hf(0);break;case"ZZZZZ":n=hf(3);break;case"O":case"OO":case"OOO":case"z":case"zz":case"zzz":n=hf(1);break;case"OOOO":case"ZZZZ":case"zzzz":n=hf(2);break;default:return null}return Uv[t]=n,n}function iT(t,n){t=t.replace(/:/g,"");let e=Date.parse("Jan 01, 1970 00:00:00 "+t)/6e4;return isNaN(e)?n:e}function q2(t,n){return t=new Date(t.getTime()),t.setMinutes(t.getMinutes()+n),t}function Q2(t,n,e){let r=t.getTimezoneOffset(),o=iT(n,r);return q2(t,-1*(o-r))}function Z2(t){if(BE(t))return t;if(typeof t=="number"&&!isNaN(t))return new Date(t);if(typeof t=="string"){if(t=t.trim(),/^(\d{4}(-\d{1,2}(-\d{1,2})?)?)$/.test(t)){let[r,o=1,s=1]=t.split("-").map(a=>+a);return mf(r,o-1,s)}let e=parseFloat(t);if(!isNaN(t-e))return new Date(e);let i;if(i=t.match(H2))return K2(i)}let n=new Date(t);if(!BE(n))throw new Error(`Unable to convert "${t}" into a date`);return n}function K2(t){let n=new Date(0),e=0,i=0,r=t[8]?n.setUTCFullYear:n.setFullYear,o=t[8]?n.setUTCHours:n.setHours;t[9]&&(e=Number(t[9]+t[10]),i=Number(t[9]+t[11])),r.call(n,Number(t[1]),Number(t[2])-1,Number(t[3]));let s=Number(t[4]||0)-e,a=Number(t[5]||0)-i,l=Number(t[6]||0),c=Math.floor(parseFloat("0."+(t[7]||0))*1e3);return o.call(n,s,a,l,c),n}function BE(t){return t instanceof Date&&!isNaN(t.valueOf())}var J2=/^(\d+)?\.((\d+)(-(\d+))?)?$/,UE=22,gf=".",Gc="0",X2=";",eV=",",$v="#";function tV(t,n,e,i,r,o,s=!1){let a="",l=!1;if(!isFinite(t))a=fr(e,Ln.Infinity);else{let c=rV(t);s&&(c=iV(c));let u=n.minInt,m=n.minFrac,b=n.maxFrac;if(o){let de=o.match(J2);if(de===null)throw new Error(`${o} is not a valid digit info`);let we=de[1],nt=de[3],Pi=de[5];we!=null&&(u=Yv(we)),nt!=null&&(m=Yv(nt)),Pi!=null?b=Yv(Pi):nt!=null&&m>b&&(b=m)}oV(c,m,b);let _=c.digits,M=c.integerLen,I=c.exponent,O=[];for(l=_.every(de=>!de);M0?O=_.splice(M,_.length):(O=_,_=[0]);let V=[];for(_.length>=n.lgSize&&V.unshift(_.splice(-n.lgSize,_.length).join(""));_.length>n.gSize;)V.unshift(_.splice(-n.gSize,_.length).join(""));_.length&&V.unshift(_.join("")),a=V.join(fr(e,i)),O.length&&(a+=fr(e,r)+O.join("")),I&&(a+=fr(e,Ln.Exponential)+"+"+I)}return t<0&&!l?a=n.negPre+a+n.negSuf:a=n.posPre+a+n.posSuf,a}function rT(t,n,e){let i=KE(n,qv.Decimal),r=nV(i,fr(n,Ln.MinusSign));return tV(t,r,n,Ln.Group,Ln.Decimal,e)}function nV(t,n="-"){let e={minInt:1,minFrac:0,maxFrac:0,posPre:"",posSuf:"",negPre:"",negSuf:"",gSize:0,lgSize:0},i=t.split(X2),r=i[0],o=i[1],s=r.indexOf(gf)!==-1?r.split(gf):[r.substring(0,r.lastIndexOf(Gc)+1),r.substring(r.lastIndexOf(Gc)+1)],a=s[0],l=s[1]||"";e.posPre=a.substring(0,a.indexOf($v));for(let u=0;u-1&&(n=n.replace(gf,"")),(o=n.search(/e/i))>0?(r<0&&(r=o),r+=+n.slice(o+1),n=n.substring(0,o)):r<0&&(r=n.length),o=0;n.charAt(o)===Gc;o++);if(o===(a=n.length))i=[0],r=1;else{for(a--;n.charAt(a)===Gc;)a--;for(r-=o,i=[],s=0;o<=a;o++,s++)i[s]=Number(n.charAt(o))}return r>UE&&(i=i.splice(0,UE-1),e=r-1,r=1),{digits:i,exponent:e,integerLen:r}}function oV(t,n,e){if(n>e)throw new Error(`The minimum number of digits after fraction (${n}) is higher than the maximum (${e}).`);let i=t.digits,r=i.length-t.integerLen,o=Math.min(Math.max(n,r),e),s=o+t.integerLen,a=i[s];if(s>0){i.splice(Math.max(t.integerLen,s));for(let m=s;m=5)if(s-1<0){for(let m=0;m>s;m--)i.unshift(0),t.integerLen++;i.unshift(1),t.integerLen++}else i[s-1]++;for(;r=c?M.pop():l=!1),b>=10?1:0},0);u&&(i.unshift(u),t.integerLen++)}function Yv(t){let n=parseInt(t);if(isNaN(n))throw new Error("Invalid integer literal when parsing "+t);return n}var zv=/\s+/,$E=[],on=(()=>{class t{_ngEl;_renderer;initialClasses=$E;rawClass;stateMap=new Map;constructor(e,i){this._ngEl=e,this._renderer=i}set klass(e){this.initialClasses=e!=null?e.trim().split(zv):$E}set ngClass(e){this.rawClass=typeof e=="string"?e.trim().split(zv):e}ngDoCheck(){for(let i of this.initialClasses)this._updateState(i,!0);let e=this.rawClass;if(Array.isArray(e)||e instanceof Set)for(let i of e)this._updateState(i,!0);else if(e!=null)for(let i of Object.keys(e))this._updateState(i,!!e[i]);this._applyStateDiff()}_updateState(e,i){let r=this.stateMap.get(e);r!==void 0?(r.enabled!==i&&(r.changed=!0,r.enabled=i),r.touched=!0):this.stateMap.set(e,{enabled:i,changed:!0,touched:!0})}_applyStateDiff(){for(let e of this.stateMap){let i=e[0],r=e[1];r.changed?(this._toggleClass(i,r.enabled),r.changed=!1):r.touched||(r.enabled&&this._toggleClass(i,!1),this.stateMap.delete(i)),r.touched=!1}}_toggleClass(e,i){e=e.trim(),e.length>0&&e.split(zv).forEach(r=>{i?this._renderer.addClass(this._ngEl.nativeElement,r):this._renderer.removeClass(this._ngEl.nativeElement,r)})}static \u0275fac=function(i){return new(i||t)(y($),y(ke))};static \u0275dir=H({type:t,selectors:[["","ngClass",""]],inputs:{klass:[0,"class","klass"],ngClass:"ngClass"}})}return t})();var _f=class{$implicit;ngForOf;index;count;constructor(n,e,i,r){this.$implicit=n,this.ngForOf=e,this.index=i,this.count=r}get first(){return this.index===0}get last(){return this.index===this.count-1}get even(){return this.index%2===0}get odd(){return!this.even}},rt=(()=>{class t{_viewContainer;_template;_differs;set ngForOf(e){this._ngForOf=e,this._ngForOfDirty=!0}set ngForTrackBy(e){this._trackByFn=e}get ngForTrackBy(){return this._trackByFn}_ngForOf=null;_ngForOfDirty=!0;_differ=null;_trackByFn;constructor(e,i,r){this._viewContainer=e,this._template=i,this._differs=r}set ngForTemplate(e){e&&(this._template=e)}ngDoCheck(){if(this._ngForOfDirty){this._ngForOfDirty=!1;let e=this._ngForOf;!this._differ&&e&&(this._differ=this._differs.find(e).create(this.ngForTrackBy))}if(this._differ){let e=this._differ.diff(this._ngForOf);e&&this._applyChanges(e)}}_applyChanges(e){let i=this._viewContainer;e.forEachOperation((r,o,s)=>{if(r.previousIndex==null)i.createEmbeddedView(this._template,new _f(r.item,this._ngForOf,-1,-1),s===null?void 0:s);else if(s==null)i.remove(o===null?void 0:o);else if(o!==null){let a=i.get(o);i.move(a,s),YE(a,r)}});for(let r=0,o=i.length;r{let o=i.get(r.currentIndex);YE(o,r)})}static ngTemplateContextGuard(e,i){return!0}static \u0275fac=function(i){return new(i||t)(y(pt),y(St),y(Lv))};static \u0275dir=H({type:t,selectors:[["","ngFor","","ngForOf",""]],inputs:{ngForOf:"ngForOf",ngForTrackBy:"ngForTrackBy",ngForTemplate:"ngForTemplate"}})}return t})();function YE(t,n){t.context.$implicit=n.item}var De=(()=>{class t{_viewContainer;_context=new yf;_thenTemplateRef=null;_elseTemplateRef=null;_thenViewRef=null;_elseViewRef=null;constructor(e,i){this._viewContainer=e,this._thenTemplateRef=i}set ngIf(e){this._context.$implicit=this._context.ngIf=e,this._updateView()}set ngIfThen(e){zE(e,!1),this._thenTemplateRef=e,this._thenViewRef=null,this._updateView()}set ngIfElse(e){zE(e,!1),this._elseTemplateRef=e,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 ngIfUseIfTypeGuard;static ngTemplateGuard_ngIf;static ngTemplateContextGuard(e,i){return!0}static \u0275fac=function(i){return new(i||t)(y(pt),y(St))};static \u0275dir=H({type:t,selectors:[["","ngIf",""]],inputs:{ngIf:"ngIf",ngIfThen:"ngIfThen",ngIfElse:"ngIfElse"}})}return t})(),yf=class{$implicit=null;ngIf=null};function zE(t,n){if(t&&!t.createEmbeddedView)throw new R(2020,!1)}var vf=class{_viewContainerRef;_templateRef;_created=!1;constructor(n,e){this._viewContainerRef=n,this._templateRef=e}create(){this._created=!0,this._viewContainerRef.createEmbeddedView(this._templateRef)}destroy(){this._created=!1,this._viewContainerRef.clear()}enforceState(n){n&&!this._created?this.create():!n&&this._created&&this.destroy()}},bi=(()=>{class t{_defaultViews=[];_defaultUsed=!1;_caseCount=0;_lastCaseCheckIndex=0;_lastCasesMatched=!1;_ngSwitch;set ngSwitch(e){this._ngSwitch=e,this._caseCount===0&&this._updateDefaultCases(!0)}_addCase(){return this._caseCount++}_addDefault(e){this._defaultViews.push(e)}_matchCase(e){let i=e===this._ngSwitch;return this._lastCasesMatched||=i,this._lastCaseCheckIndex++,this._lastCaseCheckIndex===this._caseCount&&(this._updateDefaultCases(!this._lastCasesMatched),this._lastCaseCheckIndex=0,this._lastCasesMatched=!1),i}_updateDefaultCases(e){if(this._defaultViews.length>0&&e!==this._defaultUsed){this._defaultUsed=e;for(let i of this._defaultViews)i.enforceState(e)}}static \u0275fac=function(i){return new(i||t)};static \u0275dir=H({type:t,selectors:[["","ngSwitch",""]],inputs:{ngSwitch:"ngSwitch"}})}return t})(),pr=(()=>{class t{ngSwitch;_view;ngSwitchCase;constructor(e,i,r){this.ngSwitch=r,r._addCase(),this._view=new vf(e,i)}ngDoCheck(){this._view.enforceState(this.ngSwitch._matchCase(this.ngSwitchCase))}static \u0275fac=function(i){return new(i||t)(y(pt),y(St),y(bi,9))};static \u0275dir=H({type:t,selectors:[["","ngSwitchCase",""]],inputs:{ngSwitchCase:"ngSwitchCase"}})}return t})(),Qv=(()=>{class t{constructor(e,i,r){r._addDefault(new vf(e,i))}static \u0275fac=function(i){return new(i||t)(y(pt),y(St),y(bi,9))};static \u0275dir=H({type:t,selectors:[["","ngSwitchDefault",""]]})}return t})();var Zv=(()=>{class t{_ngEl;_differs;_renderer;_ngStyle=null;_differ=null;constructor(e,i,r){this._ngEl=e,this._differs=i,this._renderer=r}set ngStyle(e){this._ngStyle=e,!this._differ&&e&&(this._differ=this._differs.find(e).create())}ngDoCheck(){if(this._differ){let e=this._differ.diff(this._ngStyle);e&&this._applyChanges(e)}}_setStyle(e,i){let[r,o]=e.split("."),s=r.indexOf("-")===-1?void 0:cr.DashCase;i!=null?this._renderer.setStyle(this._ngEl.nativeElement,r,o?`${i}${o}`:i,s):this._renderer.removeStyle(this._ngEl.nativeElement,r,s)}_applyChanges(e){e.forEachRemovedItem(i=>this._setStyle(i.key,null)),e.forEachAddedItem(i=>this._setStyle(i.key,i.currentValue)),e.forEachChangedItem(i=>this._setStyle(i.key,i.currentValue))}static \u0275fac=function(i){return new(i||t)(y($),y(Fv),y(ke))};static \u0275dir=H({type:t,selectors:[["","ngStyle",""]],inputs:{ngStyle:"ngStyle"}})}return t})(),Ts=(()=>{class t{_viewContainerRef;_viewRef=null;ngTemplateOutletContext=null;ngTemplateOutlet=null;ngTemplateOutletInjector=null;constructor(e){this._viewContainerRef=e}ngOnChanges(e){if(this._shouldRecreateView(e)){let i=this._viewContainerRef;if(this._viewRef&&i.remove(i.indexOf(this._viewRef)),!this.ngTemplateOutlet){this._viewRef=null;return}let r=this._createContextForwardProxy();this._viewRef=i.createEmbeddedView(this.ngTemplateOutlet,r,{injector:this.ngTemplateOutletInjector??void 0})}}_shouldRecreateView(e){return!!e.ngTemplateOutlet||!!e.ngTemplateOutletInjector}_createContextForwardProxy(){return new Proxy({},{set:(e,i,r)=>this.ngTemplateOutletContext?Reflect.set(this.ngTemplateOutletContext,i,r):!1,get:(e,i,r)=>{if(this.ngTemplateOutletContext)return Reflect.get(this.ngTemplateOutletContext,i,r)}})}static \u0275fac=function(i){return new(i||t)(y(pt))};static \u0275dir=H({type:t,selectors:[["","ngTemplateOutlet",""]],inputs:{ngTemplateOutletContext:"ngTemplateOutletContext",ngTemplateOutlet:"ngTemplateOutlet",ngTemplateOutletInjector:"ngTemplateOutletInjector"},features:[xe]})}return t})();function Kv(t,n){return new R(2100,!1)}var Wv=class{createSubscription(n,e){return _i(()=>n.subscribe({next:e,error:i=>{throw i}}))}dispose(n){_i(()=>n.unsubscribe())}},Gv=class{createSubscription(n,e){return n.then(e,i=>{throw i})}dispose(n){}},sV=new Gv,aV=new Wv,mr=(()=>{class t{_ref;_latestValue=null;markForCheckOnValueUpdate=!0;_subscription=null;_obj=null;_strategy=null;constructor(e){this._ref=e}ngOnDestroy(){this._subscription&&this._dispose(),this._ref=null}transform(e){if(!this._obj){if(e)try{this.markForCheckOnValueUpdate=!1,this._subscribe(e)}finally{this.markForCheckOnValueUpdate=!0}return this._latestValue}return e!==this._obj?(this._dispose(),this.transform(e)):this._latestValue}_subscribe(e){this._obj=e,this._strategy=this._selectStrategy(e),this._subscription=this._strategy.createSubscription(e,i=>this._updateLatestValue(e,i))}_selectStrategy(e){if(To(e))return sV;if(Rv(e))return aV;throw Kv(t,e)}_dispose(){this._strategy.dispose(this._subscription),this._latestValue=null,this._subscription=null,this._obj=null}_updateLatestValue(e,i){e===this._obj&&(this._latestValue=i,this.markForCheckOnValueUpdate&&this._ref?.markForCheck())}static \u0275fac=function(i){return new(i||t)(y(it,16))};static \u0275pipe=Eo({name:"async",type:t,pure:!1})}return t})();var lV="mediumDate",oT=new B(""),sT=new B(""),qc=(()=>{class t{locale;defaultTimezone;defaultOptions;constructor(e,i,r){this.locale=e,this.defaultTimezone=i,this.defaultOptions=r}transform(e,i,r,o){if(e==null||e===""||e!==e)return null;try{let s=i??this.defaultOptions?.dateFormat??lV,a=r??this.defaultOptions?.timezone??this.defaultTimezone??void 0;return tT(e,s,o||this.locale,a)}catch(s){throw Kv(t,s.message)}}static \u0275fac=function(i){return new(i||t)(y(Uc,16),y(oT,24),y(sT,24))};static \u0275pipe=Eo({name:"date",type:t,pure:!0})}return t})();var Jv=(()=>{class t{_locale;constructor(e){this._locale=e}transform(e,i,r){if(!cV(e))return null;r||=this._locale;try{let o=uV(e);return rT(o,r,i)}catch(o){throw Kv(t,o.message)}}static \u0275fac=function(i){return new(i||t)(y(Uc,16))};static \u0275pipe=Eo({name:"number",type:t,pure:!0})}return t})();function cV(t){return!(t==null||t===""||t!==t)}function uV(t){if(typeof t=="string"&&!isNaN(Number(t)-parseFloat(t)))return Number(t);if(typeof t!="number")throw new Error(`${t} is not a number`);return t}var ot=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=be({type:t});static \u0275inj=ve({})}return t})();function Qc(t,n){n=encodeURIComponent(n);for(let e of t.split(";")){let i=e.indexOf("="),[r,o]=i==-1?[e,""]:[e.slice(0,i),e.slice(i+1)];if(r.trim()===n)return decodeURIComponent(o)}return null}var bf="browser",aT="server";function xs(t){return t===bf}function Cf(t){return t===aT}var Is=class{};var Mf=new B(""),i0=(()=>{class t{_zone;_plugins;_eventNameToPlugin=new Map;constructor(e,i){this._zone=i,e.forEach(r=>{r.manager=this}),this._plugins=e.slice().reverse()}addEventListener(e,i,r,o){return this._findPluginFor(i).addEventListener(e,i,r,o)}getZone(){return this._zone}_findPluginFor(e){let i=this._eventNameToPlugin.get(e);if(i)return i;if(i=this._plugins.find(o=>o.supports(e)),!i)throw new R(5101,!1);return this._eventNameToPlugin.set(e,i),i}static \u0275fac=function(i){return new(i||t)(F(Mf),F(Me))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})(),Zc=class{_doc;constructor(n){this._doc=n}manager},wf="ng-app-id";function lT(t){for(let n of t)n.remove()}function cT(t,n){let e=n.createElement("style");return e.textContent=t,e}function dV(t,n,e,i){let r=t.head?.querySelectorAll(`style[${wf}="${n}"],link[${wf}="${n}"]`);if(r)for(let o of r)o.removeAttribute(wf),o instanceof HTMLLinkElement?i.set(o.href.slice(o.href.lastIndexOf("/")+1),{usage:0,elements:[o]}):o.textContent&&e.set(o.textContent,{usage:0,elements:[o]})}function t0(t,n){let e=n.createElement("link");return e.setAttribute("rel","stylesheet"),e.setAttribute("href",t),e}var r0=(()=>{class t{doc;appId;nonce;inline=new Map;external=new Map;hosts=new Set;isServer;constructor(e,i,r,o={}){this.doc=e,this.appId=i,this.nonce=r,this.isServer=Cf(o),dV(e,i,this.inline,this.external),this.hosts.add(e.head)}addStyles(e,i){for(let r of e)this.addUsage(r,this.inline,cT);i?.forEach(r=>this.addUsage(r,this.external,t0))}removeStyles(e,i){for(let r of e)this.removeUsage(r,this.inline);i?.forEach(r=>this.removeUsage(r,this.external))}addUsage(e,i,r){let o=i.get(e);o?o.usage++:i.set(e,{usage:1,elements:[...this.hosts].map(s=>this.addElement(s,r(e,this.doc)))})}removeUsage(e,i){let r=i.get(e);r&&(r.usage--,r.usage<=0&&(lT(r.elements),i.delete(e)))}ngOnDestroy(){for(let[,{elements:e}]of[...this.inline,...this.external])lT(e);this.hosts.clear()}addHost(e){this.hosts.add(e);for(let[i,{elements:r}]of this.inline)r.push(this.addElement(e,cT(i,this.doc)));for(let[i,{elements:r}]of this.external)r.push(this.addElement(e,t0(i,this.doc)))}removeHost(e){this.hosts.delete(e)}addElement(e,i){return this.nonce&&i.setAttribute("nonce",this.nonce),this.isServer&&i.setAttribute(wf,this.appId),e.appendChild(i)}static \u0275fac=function(i){return new(i||t)(F(Ie),F(av),F(cv,8),F(qn))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})(),e0={svg:"http://www.w3.org/2000/svg",xhtml:"http://www.w3.org/1999/xhtml",xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/",math:"http://www.w3.org/1998/Math/MathML"},o0=/%COMP%/g;var dT="%COMP%",hV=`_nghost-${dT}`,fV=`_ngcontent-${dT}`,pV=!0,mV=new B("",{providedIn:"root",factory:()=>pV});function gV(t){return fV.replace(o0,t)}function _V(t){return hV.replace(o0,t)}function hT(t,n){return n.map(e=>e.replace(o0,t))}var Xc=(()=>{class t{eventManager;sharedStylesHost;appId;removeStylesOnCompDestroy;doc;platformId;ngZone;nonce;tracingService;rendererByCompId=new Map;defaultRenderer;platformIsServer;constructor(e,i,r,o,s,a,l,c=null,u=null){this.eventManager=e,this.sharedStylesHost=i,this.appId=r,this.removeStylesOnCompDestroy=o,this.doc=s,this.platformId=a,this.ngZone=l,this.nonce=c,this.tracingService=u,this.platformIsServer=Cf(a),this.defaultRenderer=new Kc(e,s,l,this.platformIsServer,this.tracingService)}createRenderer(e,i){if(!e||!i)return this.defaultRenderer;this.platformIsServer&&i.encapsulation===pi.ShadowDom&&(i=W(E({},i),{encapsulation:pi.Emulated}));let r=this.getOrCreateRenderer(e,i);return r instanceof Df?r.applyToHost(e):r instanceof Jc&&r.applyStyles(),r}getOrCreateRenderer(e,i){let r=this.rendererByCompId,o=r.get(i.id);if(!o){let s=this.doc,a=this.ngZone,l=this.eventManager,c=this.sharedStylesHost,u=this.removeStylesOnCompDestroy,m=this.platformIsServer,b=this.tracingService;switch(i.encapsulation){case pi.Emulated:o=new Df(l,c,i,this.appId,u,s,a,m,b);break;case pi.ShadowDom:return new n0(l,c,e,i,s,a,this.nonce,m,b);default:o=new Jc(l,c,i,u,s,a,m,b);break}r.set(i.id,o)}return o}ngOnDestroy(){this.rendererByCompId.clear()}componentReplaced(e){this.rendererByCompId.delete(e)}static \u0275fac=function(i){return new(i||t)(F(i0),F(r0),F(av),F(mV),F(Ie),F(qn),F(Me),F(cv),F(Zh,8))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})(),Kc=class{eventManager;doc;ngZone;platformIsServer;tracingService;data=Object.create(null);throwOnSyntheticProps=!0;constructor(n,e,i,r,o){this.eventManager=n,this.doc=e,this.ngZone=i,this.platformIsServer=r,this.tracingService=o}destroy(){}destroyNode=null;createElement(n,e){return e?this.doc.createElementNS(e0[e]||e,n):this.doc.createElement(n)}createComment(n){return this.doc.createComment(n)}createText(n){return this.doc.createTextNode(n)}appendChild(n,e){(uT(n)?n.content:n).appendChild(e)}insertBefore(n,e,i){n&&(uT(n)?n.content:n).insertBefore(e,i)}removeChild(n,e){e.remove()}selectRootElement(n,e){let i=typeof n=="string"?this.doc.querySelector(n):n;if(!i)throw new R(-5104,!1);return e||(i.textContent=""),i}parentNode(n){return n.parentNode}nextSibling(n){return n.nextSibling}setAttribute(n,e,i,r){if(r){e=r+":"+e;let o=e0[r];o?n.setAttributeNS(o,e,i):n.setAttribute(e,i)}else n.setAttribute(e,i)}removeAttribute(n,e,i){if(i){let r=e0[i];r?n.removeAttributeNS(r,e):n.removeAttribute(`${i}:${e}`)}else n.removeAttribute(e)}addClass(n,e){n.classList.add(e)}removeClass(n,e){n.classList.remove(e)}setStyle(n,e,i,r){r&(cr.DashCase|cr.Important)?n.style.setProperty(e,i,r&cr.Important?"important":""):n.style[e]=i}removeStyle(n,e,i){i&cr.DashCase?n.style.removeProperty(e):n.style[e]=""}setProperty(n,e,i){n!=null&&(n[e]=i)}setValue(n,e){n.nodeValue=e}listen(n,e,i,r){if(typeof n=="string"&&(n=yi().getGlobalEventTarget(this.doc,n),!n))throw new R(5102,!1);let o=this.decoratePreventDefault(i);return this.tracingService?.wrapEventListener&&(o=this.tracingService.wrapEventListener(n,e,o)),this.eventManager.addEventListener(n,e,o,r)}decoratePreventDefault(n){return e=>{if(e==="__ngUnwrap__")return n;(this.platformIsServer?this.ngZone.runGuarded(()=>n(e)):n(e))===!1&&e.preventDefault()}}};function uT(t){return t.tagName==="TEMPLATE"&&t.content!==void 0}var n0=class extends Kc{sharedStylesHost;hostEl;shadowRoot;constructor(n,e,i,r,o,s,a,l,c){super(n,o,s,l,c),this.sharedStylesHost=e,this.hostEl=i,this.shadowRoot=i.attachShadow({mode:"open"}),this.sharedStylesHost.addHost(this.shadowRoot);let u=r.styles;u=hT(r.id,u);for(let b of u){let _=document.createElement("style");a&&_.setAttribute("nonce",a),_.textContent=b,this.shadowRoot.appendChild(_)}let m=r.getExternalStyles?.();if(m)for(let b of m){let _=t0(b,o);a&&_.setAttribute("nonce",a),this.shadowRoot.appendChild(_)}}nodeOrShadowRoot(n){return n===this.hostEl?this.shadowRoot:n}appendChild(n,e){return super.appendChild(this.nodeOrShadowRoot(n),e)}insertBefore(n,e,i){return super.insertBefore(this.nodeOrShadowRoot(n),e,i)}removeChild(n,e){return super.removeChild(null,e)}parentNode(n){return this.nodeOrShadowRoot(super.parentNode(this.nodeOrShadowRoot(n)))}destroy(){this.sharedStylesHost.removeHost(this.shadowRoot)}},Jc=class extends Kc{sharedStylesHost;removeStylesOnCompDestroy;styles;styleUrls;constructor(n,e,i,r,o,s,a,l,c){super(n,o,s,a,l),this.sharedStylesHost=e,this.removeStylesOnCompDestroy=r;let u=i.styles;this.styles=c?hT(c,u):u,this.styleUrls=i.getExternalStyles?.(c)}applyStyles(){this.sharedStylesHost.addStyles(this.styles,this.styleUrls)}destroy(){this.removeStylesOnCompDestroy&&this.sharedStylesHost.removeStyles(this.styles,this.styleUrls)}},Df=class extends Jc{contentAttr;hostAttr;constructor(n,e,i,r,o,s,a,l,c){let u=r+"-"+i.id;super(n,e,i,o,s,a,l,c,u),this.contentAttr=gV(u),this.hostAttr=_V(u)}applyToHost(n){this.applyStyles(),this.setAttribute(n,this.hostAttr,"")}createElement(n,e){let i=super.createElement(n,e);return super.setAttribute(i,this.contentAttr,""),i}};var Sf=class t extends $c{supportsDOMEvents=!0;static makeCurrent(){Vv(new t)}onAndCancel(n,e,i,r){return n.addEventListener(e,i,r),()=>{n.removeEventListener(e,i,r)}}dispatchEvent(n,e){n.dispatchEvent(e)}remove(n){n.remove()}createElement(n,e){return e=e||this.getDefaultDocument(),e.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,e){return e==="window"?window:e==="document"?n:e==="body"?n.body:null}getBaseHref(n){let e=yV();return e==null?null:vV(e)}resetBaseElement(){eu=null}getUserAgent(){return window.navigator.userAgent}getCookie(n){return Qc(document.cookie,n)}},eu=null;function yV(){return eu=eu||document.querySelector("base"),eu?eu.getAttribute("href"):null}function vV(t){return new URL(t,document.baseURI).pathname}var bV=(()=>{class t{build(){return new XMLHttpRequest}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})(),pT=(()=>{class t extends Zc{constructor(e){super(e)}supports(e){return!0}addEventListener(e,i,r,o){return e.addEventListener(i,r,o),()=>this.removeEventListener(e,i,r,o)}removeEventListener(e,i,r,o){return e.removeEventListener(i,r,o)}static \u0275fac=function(i){return new(i||t)(F(Ie))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})(),fT=["alt","control","meta","shift"],CV={"\b":"Backspace"," ":"Tab","\x7F":"Delete","\x1B":"Escape",Del:"Delete",Esc:"Escape",Left:"ArrowLeft",Right:"ArrowRight",Up:"ArrowUp",Down:"ArrowDown",Menu:"ContextMenu",Scroll:"ScrollLock",Win:"OS"},wV={alt:t=>t.altKey,control:t=>t.ctrlKey,meta:t=>t.metaKey,shift:t=>t.shiftKey},mT=(()=>{class t extends Zc{constructor(e){super(e)}supports(e){return t.parseEventName(e)!=null}addEventListener(e,i,r,o){let s=t.parseEventName(i),a=t.eventCallback(s.fullKey,r,this.manager.getZone());return this.manager.getZone().runOutsideAngular(()=>yi().onAndCancel(e,s.domEventName,a,o))}static parseEventName(e){let i=e.toLowerCase().split("."),r=i.shift();if(i.length===0||!(r==="keydown"||r==="keyup"))return null;let o=t._normalizeKey(i.pop()),s="",a=i.indexOf("code");if(a>-1&&(i.splice(a,1),s="code."),fT.forEach(c=>{let u=i.indexOf(c);u>-1&&(i.splice(u,1),s+=c+".")}),s+=o,i.length!=0||o.length===0)return null;let l={};return l.domEventName=r,l.fullKey=s,l}static matchEventFullKeyCode(e,i){let r=CV[e.key]||e.key,o="";return i.indexOf("code.")>-1&&(r=e.code,o="code."),r==null||!r?!1:(r=r.toLowerCase(),r===" "?r="space":r==="."&&(r="dot"),fT.forEach(s=>{if(s!==r){let a=wV[s];a(e)&&(o+=s+".")}}),o+=r,o===i)}static eventCallback(e,i,r){return o=>{t.matchEventFullKeyCode(o,e)&&r.runGuarded(()=>i(o))}}static _normalizeKey(e){return e==="esc"?"escape":e}static \u0275fac=function(i){return new(i||t)(F(Ie))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})();function s0(t,n){return OE(E({rootComponent:t},DV(n)))}function DV(t){return{appProviders:[...IV,...t?.providers??[]],platformProviders:TV}}function MV(){Sf.makeCurrent()}function SV(){return new lr}function EV(){return dS(document),document}var TV=[{provide:qn,useValue:bf},{provide:lv,useValue:MV,multi:!0},{provide:Ie,useFactory:EV}];var IV=[{provide:Uh,useValue:"root"},{provide:lr,useFactory:SV},{provide:Mf,useClass:pT,multi:!0,deps:[Ie]},{provide:Mf,useClass:mT,multi:!0,deps:[Ie]},Xc,r0,i0,{provide:xn,useExisting:Xc},{provide:Is,useClass:bV},[]];var nl=class{},tu=class{},Ao=class t{headers;normalizedNames=new Map;lazyInit;lazyUpdate=null;constructor(n){n?typeof n=="string"?this.lazyInit=()=>{this.headers=new Map,n.split(` -`).forEach(e=>{let i=e.indexOf(":");if(i>0){let r=e.slice(0,i),o=e.slice(i+1).trim();this.addHeaderEntry(r,o)}})}:typeof Headers<"u"&&n instanceof Headers?(this.headers=new Map,n.forEach((e,i)=>{this.addHeaderEntry(i,e)})):this.lazyInit=()=>{this.headers=new Map,Object.entries(n).forEach(([e,i])=>{this.setHeaderEntries(e,i)})}:this.headers=new Map}has(n){return this.init(),this.headers.has(n.toLowerCase())}get(n){this.init();let e=this.headers.get(n.toLowerCase());return e&&e.length>0?e[0]:null}keys(){return this.init(),Array.from(this.normalizedNames.values())}getAll(n){return this.init(),this.headers.get(n.toLowerCase())||null}append(n,e){return this.clone({name:n,value:e,op:"a"})}set(n,e){return this.clone({name:n,value:e,op:"s"})}delete(n,e){return this.clone({name:n,value:e,op:"d"})}maybeSetNormalizedName(n,e){this.normalizedNames.has(e)||this.normalizedNames.set(e,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(e=>{this.headers.set(e,n.headers.get(e)),this.normalizedNames.set(e,n.normalizedNames.get(e))})}clone(n){let e=new t;return e.lazyInit=this.lazyInit&&this.lazyInit instanceof t?this.lazyInit:this,e.lazyUpdate=(this.lazyUpdate||[]).concat([n]),e}applyUpdate(n){let e=n.name.toLowerCase();switch(n.op){case"a":case"s":let i=n.value;if(typeof i=="string"&&(i=[i]),i.length===0)return;this.maybeSetNormalizedName(n.name,e);let r=(n.op==="a"?this.headers.get(e):void 0)||[];r.push(...i),this.headers.set(e,r);break;case"d":let o=n.value;if(!o)this.headers.delete(e),this.normalizedNames.delete(e);else{let s=this.headers.get(e);if(!s)return;s=s.filter(a=>o.indexOf(a)===-1),s.length===0?(this.headers.delete(e),this.normalizedNames.delete(e)):this.headers.set(e,s)}break}}addHeaderEntry(n,e){let i=n.toLowerCase();this.maybeSetNormalizedName(n,i),this.headers.has(i)?this.headers.get(i).push(e):this.headers.set(i,[e])}setHeaderEntries(n,e){let i=(Array.isArray(e)?e:[e]).map(o=>o.toString()),r=n.toLowerCase();this.headers.set(r,i),this.maybeSetNormalizedName(n,r)}forEach(n){this.init(),Array.from(this.normalizedNames.keys()).forEach(e=>n(this.normalizedNames.get(e),this.headers.get(e)))}};var Tf=class{encodeKey(n){return gT(n)}encodeValue(n){return gT(n)}decodeKey(n){return decodeURIComponent(n)}decodeValue(n){return decodeURIComponent(n)}};function xV(t,n){let e=new Map;return t.length>0&&t.replace(/^\?/,"").split("&").forEach(r=>{let o=r.indexOf("="),[s,a]=o==-1?[n.decodeKey(r),""]:[n.decodeKey(r.slice(0,o)),n.decodeValue(r.slice(o+1))],l=e.get(s)||[];l.push(a),e.set(s,l)}),e}var kV=/%(\d[a-f0-9])/gi,AV={40:"@","3A":":",24:"$","2C":",","3B":";","3D":"=","3F":"?","2F":"/"};function gT(t){return encodeURIComponent(t).replace(kV,(n,e)=>AV[e]??n)}function Ef(t){return`${t}`}var zi=class t{map;encoder;updates=null;cloneFrom=null;constructor(n={}){if(this.encoder=n.encoder||new Tf,n.fromString){if(n.fromObject)throw new R(2805,!1);this.map=xV(n.fromString,this.encoder)}else n.fromObject?(this.map=new Map,Object.keys(n.fromObject).forEach(e=>{let i=n.fromObject[e],r=Array.isArray(i)?i.map(Ef):[Ef(i)];this.map.set(e,r)})):this.map=null}has(n){return this.init(),this.map.has(n)}get(n){this.init();let e=this.map.get(n);return e?e[0]:null}getAll(n){return this.init(),this.map.get(n)||null}keys(){return this.init(),Array.from(this.map.keys())}append(n,e){return this.clone({param:n,value:e,op:"a"})}appendAll(n){let e=[];return Object.keys(n).forEach(i=>{let r=n[i];Array.isArray(r)?r.forEach(o=>{e.push({param:i,value:o,op:"a"})}):e.push({param:i,value:r,op:"a"})}),this.clone(e)}set(n,e){return this.clone({param:n,value:e,op:"s"})}delete(n,e){return this.clone({param:n,value:e,op:"d"})}toString(){return this.init(),this.keys().map(n=>{let e=this.encoder.encodeKey(n);return this.map.get(n).map(i=>e+"="+this.encoder.encodeValue(i)).join("&")}).filter(n=>n!=="").join("&")}clone(n){let e=new t({encoder:this.encoder});return e.cloneFrom=this.cloneFrom||this,e.updates=(this.updates||[]).concat(n),e}init(){this.map===null&&(this.map=new Map),this.cloneFrom!==null&&(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":let e=(n.op==="a"?this.map.get(n.param):void 0)||[];e.push(Ef(n.value)),this.map.set(n.param,e);break;case"d":if(n.value!==void 0){let i=this.map.get(n.param)||[],r=i.indexOf(Ef(n.value));r!==-1&&i.splice(r,1),i.length>0?this.map.set(n.param,i):this.map.delete(n.param)}else{this.map.delete(n.param);break}}}),this.cloneFrom=this.updates=null)}};var If=class{map=new Map;set(n,e){return this.map.set(n,e),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 RV(t){switch(t){case"DELETE":case"GET":case"HEAD":case"OPTIONS":case"JSONP":return!1;default:return!0}}function _T(t){return typeof ArrayBuffer<"u"&&t instanceof ArrayBuffer}function yT(t){return typeof Blob<"u"&&t instanceof Blob}function vT(t){return typeof FormData<"u"&&t instanceof FormData}function OV(t){return typeof URLSearchParams<"u"&&t instanceof URLSearchParams}var bT="Content-Type",CT="Accept",wT="X-Request-URL",DT="text/plain",MT="application/json",PV=`${MT}, ${DT}, */*`,tl=class t{url;body=null;headers;context;reportProgress=!1;withCredentials=!1;responseType="json";method;params;urlWithParams;transferCache;constructor(n,e,i,r){this.url=e,this.method=n.toUpperCase();let o;if(RV(this.method)||r?(this.body=i!==void 0?i:null,o=r):o=i,o&&(this.reportProgress=!!o.reportProgress,this.withCredentials=!!o.withCredentials,o.responseType&&(this.responseType=o.responseType),o.headers&&(this.headers=o.headers),o.context&&(this.context=o.context),o.params&&(this.params=o.params),this.transferCache=o.transferCache),this.headers??=new Ao,this.context??=new If,!this.params)this.params=new zi,this.urlWithParams=e;else{let s=this.params.toString();if(s.length===0)this.urlWithParams=e;else{let a=e.indexOf("?"),l=a===-1?"?":ab.set(_,n.setHeaders[_]),c)),n.setParams&&(u=Object.keys(n.setParams).reduce((b,_)=>b.set(_,n.setParams[_]),u)),new t(e,i,s,{params:u,headers:c,context:m,reportProgress:l,responseType:r,withCredentials:a,transferCache:o})}},ks=function(t){return t[t.Sent=0]="Sent",t[t.UploadProgress=1]="UploadProgress",t[t.ResponseHeader=2]="ResponseHeader",t[t.DownloadProgress=3]="DownloadProgress",t[t.Response=4]="Response",t[t.User=5]="User",t}(ks||{}),il=class{headers;status;statusText;url;ok;type;constructor(n,e=200,i="OK"){this.headers=n.headers||new Ao,this.status=n.status!==void 0?n.status:e,this.statusText=n.statusText||i,this.url=n.url||null,this.ok=this.status>=200&&this.status<300}},xf=class t extends il{constructor(n={}){super(n)}type=ks.ResponseHeader;clone(n={}){return new t({headers:n.headers||this.headers,status:n.status!==void 0?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}},nu=class t extends il{body;constructor(n={}){super(n),this.body=n.body!==void 0?n.body:null}type=ks.Response;clone(n={}){return new t({body:n.body!==void 0?n.body:this.body,headers:n.headers||this.headers,status:n.status!==void 0?n.status:this.status,statusText:n.statusText||this.statusText,url:n.url||this.url||void 0})}},iu=class extends il{name="HttpErrorResponse";message;error;ok=!1;constructor(n){super(n,0,"Unknown Error"),this.status>=200&&this.status<300?this.message=`Http failure during parsing for ${n.url||"(unknown url)"}`:this.message=`Http failure response for ${n.url||"(unknown url)"}: ${n.status} ${n.statusText}`,this.error=n.error||null}},NV=200,LV=204;function a0(t,n){return{body:n,headers:t.headers,context:t.context,observe:t.observe,params:t.params,reportProgress:t.reportProgress,responseType:t.responseType,withCredentials:t.withCredentials,transferCache:t.transferCache}}var Fn=(()=>{class t{handler;constructor(e){this.handler=e}request(e,i,r={}){let o;if(e instanceof tl)o=e;else{let l;r.headers instanceof Ao?l=r.headers:l=new Ao(r.headers);let c;r.params&&(r.params instanceof zi?c=r.params:c=new zi({fromObject:r.params})),o=new tl(e,i,r.body!==void 0?r.body:null,{headers:l,context:r.context,params:c,reportProgress:r.reportProgress,responseType:r.responseType||"json",withCredentials:r.withCredentials,transferCache:r.transferCache})}let s=Q(o).pipe(yo(l=>this.handler.handle(l)));if(e instanceof tl||r.observe==="events")return s;let a=s.pipe(le(l=>l instanceof nu));switch(r.observe||"body"){case"body":switch(o.responseType){case"arraybuffer":return a.pipe(G(l=>{if(l.body!==null&&!(l.body instanceof ArrayBuffer))throw new R(2806,!1);return l.body}));case"blob":return a.pipe(G(l=>{if(l.body!==null&&!(l.body instanceof Blob))throw new R(2807,!1);return l.body}));case"text":return a.pipe(G(l=>{if(l.body!==null&&typeof l.body!="string")throw new R(2808,!1);return l.body}));case"json":default:return a.pipe(G(l=>l.body))}case"response":return a;default:throw new R(2809,!1)}}delete(e,i={}){return this.request("DELETE",e,i)}get(e,i={}){return this.request("GET",e,i)}head(e,i={}){return this.request("HEAD",e,i)}jsonp(e,i){return this.request("JSONP",e,{params:new zi().append(i,"JSONP_CALLBACK"),observe:"body",responseType:"json"})}options(e,i={}){return this.request("OPTIONS",e,i)}patch(e,i,r={}){return this.request("PATCH",e,a0(r,i))}post(e,i,r={}){return this.request("POST",e,a0(r,i))}put(e,i,r={}){return this.request("PUT",e,a0(r,i))}static \u0275fac=function(i){return new(i||t)(F(nl))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})();var FV=new B("");function VV(t,n){return n(t)}function jV(t,n,e){return(i,r)=>Gn(e,()=>n(i,o=>t(o,r)))}var c0=new B(""),ST=new B(""),ET=new B("",{providedIn:"root",factory:()=>!0});var kf=(()=>{class t extends nl{backend;injector;chain=null;pendingTasks=S(Mo);contributeToStability=S(ET);constructor(e,i){super(),this.backend=e,this.injector=i}handle(e){if(this.chain===null){let i=Array.from(new Set([...this.injector.get(c0),...this.injector.get(ST,[])]));this.chain=i.reduceRight((r,o)=>jV(r,o,this.injector),VV)}if(this.contributeToStability){let i=this.pendingTasks.add();return this.chain(e,r=>this.backend.handle(r)).pipe(di(()=>this.pendingTasks.remove(i)))}else return this.chain(e,i=>this.backend.handle(i))}static \u0275fac=function(i){return new(i||t)(F(tu),F(yn))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})();var HV=/^\)\]\}',?\n/,BV=RegExp(`^${wT}:`,"m");function UV(t){return"responseURL"in t&&t.responseURL?t.responseURL:BV.test(t.getAllResponseHeaders())?t.getResponseHeader(wT):null}var l0=(()=>{class t{xhrFactory;constructor(e){this.xhrFactory=e}handle(e){if(e.method==="JSONP")throw new R(-2800,!1);let i=this.xhrFactory;return(i.\u0275loadImpl?Ke(i.\u0275loadImpl()):Q(null)).pipe(vt(()=>new ne(o=>{let s=i.build();if(s.open(e.method,e.urlWithParams),e.withCredentials&&(s.withCredentials=!0),e.headers.forEach((I,O)=>s.setRequestHeader(I,O.join(","))),e.headers.has(CT)||s.setRequestHeader(CT,PV),!e.headers.has(bT)){let I=e.detectContentTypeHeader();I!==null&&s.setRequestHeader(bT,I)}if(e.responseType){let I=e.responseType.toLowerCase();s.responseType=I!=="json"?I:"text"}let a=e.serializeBody(),l=null,c=()=>{if(l!==null)return l;let I=s.statusText||"OK",O=new Ao(s.getAllResponseHeaders()),V=UV(s)||e.url;return l=new xf({headers:O,status:s.status,statusText:I,url:V}),l},u=()=>{let{headers:I,status:O,statusText:V,url:de}=c(),we=null;O!==LV&&(we=typeof s.response>"u"?s.responseText:s.response),O===0&&(O=we?NV:0);let nt=O>=200&&O<300;if(e.responseType==="json"&&typeof we=="string"){let Pi=we;we=we.replace(HV,"");try{we=we!==""?JSON.parse(we):null}catch(ai){we=Pi,nt&&(nt=!1,we={error:ai,text:we})}}nt?(o.next(new nu({body:we,headers:I,status:O,statusText:V,url:de||void 0})),o.complete()):o.error(new iu({error:we,headers:I,status:O,statusText:V,url:de||void 0}))},m=I=>{let{url:O}=c(),V=new iu({error:I,status:s.status||0,statusText:s.statusText||"Unknown Error",url:O||void 0});o.error(V)},b=!1,_=I=>{b||(o.next(c()),b=!0);let O={type:ks.DownloadProgress,loaded:I.loaded};I.lengthComputable&&(O.total=I.total),e.responseType==="text"&&s.responseText&&(O.partialText=s.responseText),o.next(O)},M=I=>{let O={type:ks.UploadProgress,loaded:I.loaded};I.lengthComputable&&(O.total=I.total),o.next(O)};return s.addEventListener("load",u),s.addEventListener("error",m),s.addEventListener("timeout",m),s.addEventListener("abort",m),e.reportProgress&&(s.addEventListener("progress",_),a!==null&&s.upload&&s.upload.addEventListener("progress",M)),s.send(a),o.next({type:ks.Sent}),()=>{s.removeEventListener("error",m),s.removeEventListener("abort",m),s.removeEventListener("load",u),s.removeEventListener("timeout",m),e.reportProgress&&(s.removeEventListener("progress",_),a!==null&&s.upload&&s.upload.removeEventListener("progress",M)),s.readyState!==s.DONE&&s.abort()}})))}static \u0275fac=function(i){return new(i||t)(F(Is))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})(),TT=new B(""),$V="XSRF-TOKEN",YV=new B("",{providedIn:"root",factory:()=>$V}),zV="X-XSRF-TOKEN",WV=new B("",{providedIn:"root",factory:()=>zV}),ru=class{},GV=(()=>{class t{doc;platform;cookieName;lastCookieString="";lastToken=null;parseCount=0;constructor(e,i,r){this.doc=e,this.platform=i,this.cookieName=r}getToken(){if(this.platform==="server")return null;let e=this.doc.cookie||"";return e!==this.lastCookieString&&(this.parseCount++,this.lastToken=Qc(e,this.cookieName),this.lastCookieString=e),this.lastToken}static \u0275fac=function(i){return new(i||t)(F(Ie),F(qn),F(YV))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})();function qV(t,n){let e=t.url.toLowerCase();if(!S(TT)||t.method==="GET"||t.method==="HEAD"||e.startsWith("http://")||e.startsWith("https://"))return n(t);let i=S(ru).getToken(),r=S(WV);return i!=null&&!t.headers.has(r)&&(t=t.clone({headers:t.headers.set(r,i)})),n(t)}var u0=function(t){return t[t.Interceptors=0]="Interceptors",t[t.LegacyInterceptors=1]="LegacyInterceptors",t[t.CustomXsrfConfiguration=2]="CustomXsrfConfiguration",t[t.NoXsrfProtection=3]="NoXsrfProtection",t[t.JsonpSupport=4]="JsonpSupport",t[t.RequestsMadeViaParent=5]="RequestsMadeViaParent",t[t.Fetch=6]="Fetch",t}(u0||{});function QV(t,n){return{\u0275kind:t,\u0275providers:n}}function d0(...t){let n=[Fn,l0,kf,{provide:nl,useExisting:kf},{provide:tu,useFactory:()=>S(FV,{optional:!0})??S(l0)},{provide:c0,useValue:qV,multi:!0},{provide:TT,useValue:!0},{provide:ru,useClass:GV}];for(let e of t)n.push(...e.\u0275providers);return Do(n)}function h0(t){return QV(u0.Interceptors,t.map(n=>({provide:c0,useValue:n,multi:!0})))}var IT=(()=>{class t{_doc;constructor(e){this._doc=e}getTitle(){return this._doc.title}setTitle(e){this._doc.title=e||""}static \u0275fac=function(i){return new(i||t)(F(Ie))};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Kr=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:function(i){let r=null;return i?r=new(i||t):r=F(KV),r},providedIn:"root"})}return t})(),KV=(()=>{class t extends Kr{_doc;constructor(e){super(),this._doc=e}sanitize(e,i){if(i==null)return null;switch(e){case Qn.NONE:return i;case Qn.HTML:return zr(i,"HTML")?Ui(i):dv(this._doc,String(i)).toString();case Qn.STYLE:return zr(i,"Style")?Ui(i):i;case Qn.SCRIPT:if(zr(i,"Script"))return Ui(i);throw new R(5200,!1);case Qn.URL:return zr(i,"URL")?Ui(i):Jh(String(i));case Qn.RESOURCE_URL:if(zr(i,"ResourceURL"))return Ui(i);throw new R(5201,!1);default:throw new R(5202,!1)}}bypassSecurityTrustHtml(e){return yS(e)}bypassSecurityTrustStyle(e){return vS(e)}bypassSecurityTrustScript(e){return bS(e)}bypassSecurityTrustUrl(e){return CS(e)}bypassSecurityTrustResourceUrl(e){return wS(e)}static \u0275fac=function(i){return new(i||t)(F(Ie))};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var _e="primary",yu=Symbol("RouteTitle"),_0=class{params;constructor(n){this.params=n||{}}has(n){return Object.prototype.hasOwnProperty.call(this.params,n)}get(n){if(this.has(n)){let e=this.params[n];return Array.isArray(e)?e[0]:e}return null}getAll(n){if(this.has(n)){let e=this.params[n];return Array.isArray(e)?e:[e]}return[]}get keys(){return Object.keys(this.params)}};function Os(t){return new _0(t)}function LT(t,n,e){let i=e.path.split("/");if(i.length>t.length||e.pathMatch==="full"&&(n.hasChildren()||i.lengthi[o]===r)}else return t===n}function VT(t){return t.length>0?t[t.length-1]:null}function Po(t){return e_(t)?t:To(t)?Ke(Promise.resolve(t)):Q(t)}var XV={exact:HT,subset:BT},jT={exact:ej,subset:tj,ignored:()=>!0};function xT(t,n,e){return XV[e.paths](t.root,n.root,e.matrixParams)&&jT[e.queryParams](t.queryParams,n.queryParams)&&!(e.fragment==="exact"&&t.fragment!==n.fragment)}function ej(t,n){return gr(t,n)}function HT(t,n,e){if(!As(t.segments,n.segments)||!Pf(t.segments,n.segments,e)||t.numberOfChildren!==n.numberOfChildren)return!1;for(let i in n.children)if(!t.children[i]||!HT(t.children[i],n.children[i],e))return!1;return!0}function tj(t,n){return Object.keys(n).length<=Object.keys(t).length&&Object.keys(n).every(e=>FT(t[e],n[e]))}function BT(t,n,e){return UT(t,n,n.segments,e)}function UT(t,n,e,i){if(t.segments.length>e.length){let r=t.segments.slice(0,e.length);return!(!As(r,e)||n.hasChildren()||!Pf(r,e,i))}else if(t.segments.length===e.length){if(!As(t.segments,e)||!Pf(t.segments,e,i))return!1;for(let r in n.children)if(!t.children[r]||!BT(t.children[r],n.children[r],i))return!1;return!0}else{let r=e.slice(0,t.segments.length),o=e.slice(t.segments.length);return!As(t.segments,r)||!Pf(t.segments,r,i)||!t.children[_e]?!1:UT(t.children[_e],n,o,i)}}function Pf(t,n,e){return n.every((i,r)=>jT[e](t[r].parameters,i.parameters))}var yr=class{root;queryParams;fragment;_queryParamMap;constructor(n=new je([],{}),e={},i=null){this.root=n,this.queryParams=e,this.fragment=i}get queryParamMap(){return this._queryParamMap??=Os(this.queryParams),this._queryParamMap}toString(){return rj.serialize(this)}},je=class{segments;children;parent=null;constructor(n,e){this.segments=n,this.children=e,Object.values(e).forEach(i=>i.parent=this)}hasChildren(){return this.numberOfChildren>0}get numberOfChildren(){return Object.keys(this.children).length}toString(){return Nf(this)}},Ro=class{path;parameters;_parameterMap;constructor(n,e){this.path=n,this.parameters=e}get parameterMap(){return this._parameterMap??=Os(this.parameters),this._parameterMap}toString(){return YT(this)}};function nj(t,n){return As(t,n)&&t.every((e,i)=>gr(e.parameters,n[i].parameters))}function As(t,n){return t.length!==n.length?!1:t.every((e,i)=>e.path===n[i].path)}function ij(t,n){let e=[];return Object.entries(t.children).forEach(([i,r])=>{i===_e&&(e=e.concat(n(r,i)))}),Object.entries(t.children).forEach(([i,r])=>{i!==_e&&(e=e.concat(n(r,i)))}),e}var vu=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>new Ps,providedIn:"root"})}return t})(),Ps=class{parse(n){let e=new b0(n);return new yr(e.parseRootSegment(),e.parseQueryParams(),e.parseFragment())}serialize(n){let e=`/${ou(n.root,!0)}`,i=aj(n.queryParams),r=typeof n.fragment=="string"?`#${oj(n.fragment)}`:"";return`${e}${i}${r}`}},rj=new Ps;function Nf(t){return t.segments.map(n=>YT(n)).join("/")}function ou(t,n){if(!t.hasChildren())return Nf(t);if(n){let e=t.children[_e]?ou(t.children[_e],!1):"",i=[];return Object.entries(t.children).forEach(([r,o])=>{r!==_e&&i.push(`${r}:${ou(o,!1)}`)}),i.length>0?`${e}(${i.join("//")})`:e}else{let e=ij(t,(i,r)=>r===_e?[ou(t.children[_e],!1)]:[`${r}:${ou(i,!1)}`]);return Object.keys(t.children).length===1&&t.children[_e]!=null?`${Nf(t)}/${e[0]}`:`${Nf(t)}/(${e.join("//")})`}}function $T(t){return encodeURIComponent(t).replace(/%40/g,"@").replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",")}function Rf(t){return $T(t).replace(/%3B/gi,";")}function oj(t){return encodeURI(t)}function v0(t){return $T(t).replace(/\(/g,"%28").replace(/\)/g,"%29").replace(/%26/gi,"&")}function Lf(t){return decodeURIComponent(t)}function kT(t){return Lf(t.replace(/\+/g,"%20"))}function YT(t){return`${v0(t.path)}${sj(t.parameters)}`}function sj(t){return Object.entries(t).map(([n,e])=>`;${v0(n)}=${v0(e)}`).join("")}function aj(t){let n=Object.entries(t).map(([e,i])=>Array.isArray(i)?i.map(r=>`${Rf(e)}=${Rf(r)}`).join("&"):`${Rf(e)}=${Rf(i)}`).filter(e=>e);return n.length?`?${n.join("&")}`:""}var lj=/^[^\/()?;#]+/;function f0(t){let n=t.match(lj);return n?n[0]:""}var cj=/^[^\/()?;=#]+/;function uj(t){let n=t.match(cj);return n?n[0]:""}var dj=/^[^=?&#]+/;function hj(t){let n=t.match(dj);return n?n[0]:""}var fj=/^[^&#]+/;function pj(t){let n=t.match(fj);return n?n[0]:""}var b0=class{url;remaining;constructor(n){this.url=n,this.remaining=n}parseRootSegment(){return this.consumeOptional("/"),this.remaining===""||this.peekStartsWith("?")||this.peekStartsWith("#")?new je([],{}):new je([],this.parseChildren())}parseQueryParams(){let 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("/");let n=[];for(this.peekStartsWith("(")||n.push(this.parseSegment());this.peekStartsWith("/")&&!this.peekStartsWith("//")&&!this.peekStartsWith("/(");)this.capture("/"),n.push(this.parseSegment());let e={};this.peekStartsWith("/(")&&(this.capture("/"),e=this.parseParens(!0));let i={};return this.peekStartsWith("(")&&(i=this.parseParens(!1)),(n.length>0||Object.keys(e).length>0)&&(i[_e]=new je(n,e)),i}parseSegment(){let n=f0(this.remaining);if(n===""&&this.peekStartsWith(";"))throw new R(4009,!1);return this.capture(n),new Ro(Lf(n),this.parseMatrixParams())}parseMatrixParams(){let n={};for(;this.consumeOptional(";");)this.parseParam(n);return n}parseParam(n){let e=uj(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){let r=f0(this.remaining);r&&(i=r,this.capture(i))}n[Lf(e)]=Lf(i)}parseQueryParam(n){let e=hj(this.remaining);if(!e)return;this.capture(e);let i="";if(this.consumeOptional("=")){let s=pj(this.remaining);s&&(i=s,this.capture(i))}let r=kT(e),o=kT(i);if(n.hasOwnProperty(r)){let s=n[r];Array.isArray(s)||(s=[s],n[r]=s),s.push(o)}else n[r]=o}parseParens(n){let e={};for(this.capture("(");!this.consumeOptional(")")&&this.remaining.length>0;){let i=f0(this.remaining),r=this.remaining[i.length];if(r!=="/"&&r!==")"&&r!==";")throw new R(4010,!1);let o;i.indexOf(":")>-1?(o=i.slice(0,i.indexOf(":")),this.capture(o),this.capture(":")):n&&(o=_e);let s=this.parseChildren();e[o]=Object.keys(s).length===1?s[_e]:new je([],s),this.consumeOptional("//")}return e}peekStartsWith(n){return this.remaining.startsWith(n)}consumeOptional(n){return this.peekStartsWith(n)?(this.remaining=this.remaining.substring(n.length),!0):!1}capture(n){if(!this.consumeOptional(n))throw new R(4011,!1)}};function zT(t){return t.segments.length>0?new je([],{[_e]:t}):t}function WT(t){let n={};for(let[i,r]of Object.entries(t.children)){let o=WT(r);if(i===_e&&o.segments.length===0&&o.hasChildren())for(let[s,a]of Object.entries(o.children))n[s]=a;else(o.segments.length>0||o.hasChildren())&&(n[i]=o)}let e=new je(t.segments,n);return mj(e)}function mj(t){if(t.numberOfChildren===1&&t.children[_e]){let n=t.children[_e];return new je(t.segments.concat(n.segments),n.children)}return t}function Oo(t){return t instanceof yr}function GT(t,n,e=null,i=null){let r=qT(t);return QT(r,n,e,i)}function qT(t){let n;function e(o){let s={};for(let l of o.children){let c=e(l);s[l.outlet]=c}let a=new je(o.url,s);return o===t&&(n=a),a}let i=e(t.root),r=zT(i);return n??r}function QT(t,n,e,i){let r=t;for(;r.parent;)r=r.parent;if(n.length===0)return p0(r,r,r,e,i);let o=gj(n);if(o.toRoot())return p0(r,r,new je([],{}),e,i);let s=_j(o,r,t),a=s.processChildren?au(s.segmentGroup,s.index,o.commands):KT(s.segmentGroup,s.index,o.commands);return p0(r,s.segmentGroup,a,e,i)}function Vf(t){return typeof t=="object"&&t!=null&&!t.outlets&&!t.segmentPath}function cu(t){return typeof t=="object"&&t!=null&&t.outlets}function p0(t,n,e,i,r){let o={};i&&Object.entries(i).forEach(([l,c])=>{o[l]=Array.isArray(c)?c.map(u=>`${u}`):`${c}`});let s;t===n?s=e:s=ZT(t,n,e);let a=zT(WT(s));return new yr(a,o,r)}function ZT(t,n,e){let i={};return Object.entries(t.children).forEach(([r,o])=>{o===n?i[r]=e:i[r]=ZT(o,n,e)}),new je(t.segments,i)}var jf=class{isAbsolute;numberOfDoubleDots;commands;constructor(n,e,i){if(this.isAbsolute=n,this.numberOfDoubleDots=e,this.commands=i,n&&i.length>0&&Vf(i[0]))throw new R(4003,!1);let r=i.find(cu);if(r&&r!==VT(i))throw new R(4004,!1)}toRoot(){return this.isAbsolute&&this.commands.length===1&&this.commands[0]=="/"}};function gj(t){if(typeof t[0]=="string"&&t.length===1&&t[0]==="/")return new jf(!0,0,t);let n=0,e=!1,i=t.reduce((r,o,s)=>{if(typeof o=="object"&&o!=null){if(o.outlets){let a={};return Object.entries(o.outlets).forEach(([l,c])=>{a[l]=typeof c=="string"?c.split("/"):c}),[...r,{outlets:a}]}if(o.segmentPath)return[...r,o.segmentPath]}return typeof o!="string"?[...r,o]:s===0?(o.split("/").forEach((a,l)=>{l==0&&a==="."||(l==0&&a===""?e=!0:a===".."?n++:a!=""&&r.push(a))}),r):[...r,o]},[]);return new jf(e,n,i)}var sl=class{segmentGroup;processChildren;index;constructor(n,e,i){this.segmentGroup=n,this.processChildren=e,this.index=i}};function _j(t,n,e){if(t.isAbsolute)return new sl(n,!0,0);if(!e)return new sl(n,!1,NaN);if(e.parent===null)return new sl(e,!0,0);let i=Vf(t.commands[0])?0:1,r=e.segments.length-1+i;return yj(e,r,t.numberOfDoubleDots)}function yj(t,n,e){let i=t,r=n,o=e;for(;o>r;){if(o-=r,i=i.parent,!i)throw new R(4005,!1);r=i.segments.length}return new sl(i,!1,r-o)}function vj(t){return cu(t[0])?t[0].outlets:{[_e]:t}}function KT(t,n,e){if(t??=new je([],{}),t.segments.length===0&&t.hasChildren())return au(t,n,e);let i=bj(t,n,e),r=e.slice(i.commandIndex);if(i.match&&i.pathIndexo!==_e)&&t.children[_e]&&t.numberOfChildren===1&&t.children[_e].segments.length===0){let o=au(t.children[_e],n,e);return new je(t.segments,o.children)}return Object.entries(i).forEach(([o,s])=>{typeof s=="string"&&(s=[s]),s!==null&&(r[o]=KT(t.children[o],n,s))}),Object.entries(t.children).forEach(([o,s])=>{i[o]===void 0&&(r[o]=s)}),new je(t.segments,r)}}function bj(t,n,e){let i=0,r=n,o={match:!1,pathIndex:0,commandIndex:0};for(;r=e.length)return o;let s=t.segments[r],a=e[i];if(cu(a))break;let l=`${a}`,c=i0&&l===void 0)break;if(l&&c&&typeof c=="object"&&c.outlets===void 0){if(!RT(l,c,s))return o;i+=2}else{if(!RT(l,{},s))return o;i++}r++}return{match:!0,pathIndex:r,commandIndex:i}}function C0(t,n,e){let i=t.segments.slice(0,n),r=0;for(;r{typeof i=="string"&&(i=[i]),i!==null&&(n[e]=C0(new je([],{}),0,i))}),n}function AT(t){let n={};return Object.entries(t).forEach(([e,i])=>n[e]=`${i}`),n}function RT(t,n,e){return t==e.path&&gr(n,e.parameters)}var Ff="imperative",Xt=function(t){return t[t.NavigationStart=0]="NavigationStart",t[t.NavigationEnd=1]="NavigationEnd",t[t.NavigationCancel=2]="NavigationCancel",t[t.NavigationError=3]="NavigationError",t[t.RoutesRecognized=4]="RoutesRecognized",t[t.ResolveStart=5]="ResolveStart",t[t.ResolveEnd=6]="ResolveEnd",t[t.GuardsCheckStart=7]="GuardsCheckStart",t[t.GuardsCheckEnd=8]="GuardsCheckEnd",t[t.RouteConfigLoadStart=9]="RouteConfigLoadStart",t[t.RouteConfigLoadEnd=10]="RouteConfigLoadEnd",t[t.ChildActivationStart=11]="ChildActivationStart",t[t.ChildActivationEnd=12]="ChildActivationEnd",t[t.ActivationStart=13]="ActivationStart",t[t.ActivationEnd=14]="ActivationEnd",t[t.Scroll=15]="Scroll",t[t.NavigationSkipped=16]="NavigationSkipped",t}(Xt||{}),Xn=class{id;url;constructor(n,e){this.id=n,this.url=e}},Ns=class extends Xn{type=Xt.NavigationStart;navigationTrigger;restoredState;constructor(n,e,i="imperative",r=null){super(n,e),this.navigationTrigger=i,this.restoredState=r}toString(){return`NavigationStart(id: ${this.id}, url: '${this.url}')`}},vr=class extends Xn{urlAfterRedirects;type=Xt.NavigationEnd;constructor(n,e,i){super(n,e),this.urlAfterRedirects=i}toString(){return`NavigationEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}')`}},Vn=function(t){return t[t.Redirect=0]="Redirect",t[t.SupersededByNewNavigation=1]="SupersededByNewNavigation",t[t.NoDataFromResolver=2]="NoDataFromResolver",t[t.GuardRejected=3]="GuardRejected",t}(Vn||{}),uu=function(t){return t[t.IgnoredSameUrlNavigation=0]="IgnoredSameUrlNavigation",t[t.IgnoredByUrlHandlingStrategy=1]="IgnoredByUrlHandlingStrategy",t}(uu||{}),_r=class extends Xn{reason;code;type=Xt.NavigationCancel;constructor(n,e,i,r){super(n,e),this.reason=i,this.code=r}toString(){return`NavigationCancel(id: ${this.id}, url: '${this.url}')`}},Jr=class extends Xn{reason;code;type=Xt.NavigationSkipped;constructor(n,e,i,r){super(n,e),this.reason=i,this.code=r}},ll=class extends Xn{error;target;type=Xt.NavigationError;constructor(n,e,i,r){super(n,e),this.error=i,this.target=r}toString(){return`NavigationError(id: ${this.id}, url: '${this.url}', error: ${this.error})`}},du=class extends Xn{urlAfterRedirects;state;type=Xt.RoutesRecognized;constructor(n,e,i,r){super(n,e),this.urlAfterRedirects=i,this.state=r}toString(){return`RoutesRecognized(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Hf=class extends Xn{urlAfterRedirects;state;type=Xt.GuardsCheckStart;constructor(n,e,i,r){super(n,e),this.urlAfterRedirects=i,this.state=r}toString(){return`GuardsCheckStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Bf=class extends Xn{urlAfterRedirects;state;shouldActivate;type=Xt.GuardsCheckEnd;constructor(n,e,i,r,o){super(n,e),this.urlAfterRedirects=i,this.state=r,this.shouldActivate=o}toString(){return`GuardsCheckEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state}, shouldActivate: ${this.shouldActivate})`}},Uf=class extends Xn{urlAfterRedirects;state;type=Xt.ResolveStart;constructor(n,e,i,r){super(n,e),this.urlAfterRedirects=i,this.state=r}toString(){return`ResolveStart(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},$f=class extends Xn{urlAfterRedirects;state;type=Xt.ResolveEnd;constructor(n,e,i,r){super(n,e),this.urlAfterRedirects=i,this.state=r}toString(){return`ResolveEnd(id: ${this.id}, url: '${this.url}', urlAfterRedirects: '${this.urlAfterRedirects}', state: ${this.state})`}},Yf=class{route;type=Xt.RouteConfigLoadStart;constructor(n){this.route=n}toString(){return`RouteConfigLoadStart(path: ${this.route.path})`}},zf=class{route;type=Xt.RouteConfigLoadEnd;constructor(n){this.route=n}toString(){return`RouteConfigLoadEnd(path: ${this.route.path})`}},Wf=class{snapshot;type=Xt.ChildActivationStart;constructor(n){this.snapshot=n}toString(){return`ChildActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Gf=class{snapshot;type=Xt.ChildActivationEnd;constructor(n){this.snapshot=n}toString(){return`ChildActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},qf=class{snapshot;type=Xt.ActivationStart;constructor(n){this.snapshot=n}toString(){return`ActivationStart(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}},Qf=class{snapshot;type=Xt.ActivationEnd;constructor(n){this.snapshot=n}toString(){return`ActivationEnd(path: '${this.snapshot.routeConfig&&this.snapshot.routeConfig.path||""}')`}};var hu=class{},cl=class{url;navigationBehaviorOptions;constructor(n,e){this.url=n,this.navigationBehaviorOptions=e}};function wj(t,n){return t.providers&&!t._injector&&(t._injector=lf(t.providers,n,`Route: ${t.path}`)),t._injector??n}function Wi(t){return t.outlet||_e}function Dj(t,n){let e=t.filter(i=>Wi(i)===n);return e.push(...t.filter(i=>Wi(i)!==n)),e}function bu(t){if(!t)return null;if(t.routeConfig?._injector)return t.routeConfig._injector;for(let n=t.parent;n;n=n.parent){let e=n.routeConfig;if(e?._loadedInjector)return e._loadedInjector;if(e?._injector)return e._injector}return null}var Zf=class{rootInjector;outlet=null;route=null;children;attachRef=null;get injector(){return bu(this.route?.snapshot)??this.rootInjector}constructor(n){this.rootInjector=n,this.children=new hl(this.rootInjector)}},hl=(()=>{class t{rootInjector;contexts=new Map;constructor(e){this.rootInjector=e}onChildOutletCreated(e,i){let r=this.getOrCreateContext(e);r.outlet=i,this.contexts.set(e,r)}onChildOutletDestroyed(e){let i=this.getContext(e);i&&(i.outlet=null,i.attachRef=null)}onOutletDeactivated(){let e=this.contexts;return this.contexts=new Map,e}onOutletReAttached(e){this.contexts=e}getOrCreateContext(e){let i=this.getContext(e);return i||(i=new Zf(this.rootInjector),this.contexts.set(e,i)),i}getContext(e){return this.contexts.get(e)||null}static \u0275fac=function(i){return new(i||t)(F(yn))};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Kf=class{_root;constructor(n){this._root=n}get root(){return this._root.value}parent(n){let e=this.pathFromRoot(n);return e.length>1?e[e.length-2]:null}children(n){let e=w0(n,this._root);return e?e.children.map(i=>i.value):[]}firstChild(n){let e=w0(n,this._root);return e&&e.children.length>0?e.children[0].value:null}siblings(n){let e=D0(n,this._root);return e.length<2?[]:e[e.length-2].children.map(r=>r.value).filter(r=>r!==n)}pathFromRoot(n){return D0(n,this._root).map(e=>e.value)}};function w0(t,n){if(t===n.value)return n;for(let e of n.children){let i=w0(t,e);if(i)return i}return null}function D0(t,n){if(t===n.value)return[n];for(let e of n.children){let i=D0(t,e);if(i.length)return i.unshift(n),i}return[]}var Jn=class{value;children;constructor(n,e){this.value=n,this.children=e}toString(){return`TreeNode(${this.value})`}};function ol(t){let n={};return t&&t.children.forEach(e=>n[e.value.outlet]=e),n}var fu=class extends Kf{snapshot;constructor(n,e){super(n),this.snapshot=e,A0(this,n)}toString(){return this.snapshot.toString()}};function JT(t){let n=Mj(t),e=new Pe([new Ro("",{})]),i=new Pe({}),r=new Pe({}),o=new Pe({}),s=new Pe(""),a=new Gi(e,i,o,s,r,_e,t,n.root);return a.snapshot=n.root,new fu(new Jn(a,[]),n)}function Mj(t){let n={},e={},i={},r="",o=new Rs([],n,i,r,e,_e,t,null,{});return new pu("",new Jn(o,[]))}var Gi=class{urlSubject;paramsSubject;queryParamsSubject;fragmentSubject;dataSubject;outlet;component;snapshot;_futureSnapshot;_routerState;_paramMap;_queryParamMap;title;url;params;queryParams;fragment;data;constructor(n,e,i,r,o,s,a,l){this.urlSubject=n,this.paramsSubject=e,this.queryParamsSubject=i,this.fragmentSubject=r,this.dataSubject=o,this.outlet=s,this.component=a,this._futureSnapshot=l,this.title=this.dataSubject?.pipe(G(c=>c[yu]))??Q(void 0),this.url=n,this.params=e,this.queryParams=i,this.fragment=r,this.data=o}get routeConfig(){return this._futureSnapshot.routeConfig}get root(){return this._routerState.root}get parent(){return this._routerState.parent(this)}get firstChild(){return this._routerState.firstChild(this)}get children(){return this._routerState.children(this)}get pathFromRoot(){return this._routerState.pathFromRoot(this)}get paramMap(){return this._paramMap??=this.params.pipe(G(n=>Os(n))),this._paramMap}get queryParamMap(){return this._queryParamMap??=this.queryParams.pipe(G(n=>Os(n))),this._queryParamMap}toString(){return this.snapshot?this.snapshot.toString():`Future(${this._futureSnapshot})`}};function Jf(t,n,e="emptyOnly"){let i,{routeConfig:r}=t;return n!==null&&(e==="always"||r?.path===""||!n.component&&!n.routeConfig?.loadComponent)?i={params:E(E({},n.params),t.params),data:E(E({},n.data),t.data),resolve:E(E(E(E({},t.data),n.data),r?.data),t._resolvedData)}:i={params:E({},t.params),data:E({},t.data),resolve:E(E({},t.data),t._resolvedData??{})},r&&eI(r)&&(i.resolve[yu]=r.title),i}var Rs=class{url;params;queryParams;fragment;data;outlet;component;routeConfig;_resolve;_resolvedData;_routerState;_paramMap;_queryParamMap;get title(){return this.data?.[yu]}constructor(n,e,i,r,o,s,a,l,c){this.url=n,this.params=e,this.queryParams=i,this.fragment=r,this.data=o,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??=Os(this.params),this._paramMap}get queryParamMap(){return this._queryParamMap??=Os(this.queryParams),this._queryParamMap}toString(){let n=this.url.map(i=>i.toString()).join("/"),e=this.routeConfig?this.routeConfig.path:"";return`Route(url:'${n}', path:'${e}')`}},pu=class extends Kf{url;constructor(n,e){super(e),this.url=n,A0(this,e)}toString(){return XT(this._root)}};function A0(t,n){n.value._routerState=t,n.children.forEach(e=>A0(t,e))}function XT(t){let n=t.children.length>0?` { ${t.children.map(XT).join(", ")} } `:"";return`${t.value}${n}`}function m0(t){if(t.snapshot){let n=t.snapshot,e=t._futureSnapshot;t.snapshot=e,gr(n.queryParams,e.queryParams)||t.queryParamsSubject.next(e.queryParams),n.fragment!==e.fragment&&t.fragmentSubject.next(e.fragment),gr(n.params,e.params)||t.paramsSubject.next(e.params),JV(n.url,e.url)||t.urlSubject.next(e.url),gr(n.data,e.data)||t.dataSubject.next(e.data)}else t.snapshot=t._futureSnapshot,t.dataSubject.next(t._futureSnapshot.data)}function M0(t,n){let e=gr(t.params,n.params)&&nj(t.url,n.url),i=!t.parent!=!n.parent;return e&&!i&&(!t.parent||M0(t.parent,n.parent))}function eI(t){return typeof t.title=="string"||t.title===null}var tI=new B(""),Cu=(()=>{class t{activated=null;get activatedComponentRef(){return this.activated}_activatedRoute=null;name=_e;activateEvents=new P;deactivateEvents=new P;attachEvents=new P;detachEvents=new P;routerOutletData=Rn(void 0);parentContexts=S(hl);location=S(pt);changeDetector=S(it);inputBinder=S(np,{optional:!0});supportsBindingToComponentInputs=!0;ngOnChanges(e){if(e.name){let{firstChange:i,previousValue:r}=e.name;if(i)return;this.isTrackedInParentContexts(r)&&(this.deactivate(),this.parentContexts.onChildOutletDestroyed(r)),this.initializeOutletWithName()}}ngOnDestroy(){this.isTrackedInParentContexts(this.name)&&this.parentContexts.onChildOutletDestroyed(this.name),this.inputBinder?.unsubscribeFromRouteData(this)}isTrackedInParentContexts(e){return this.parentContexts.getContext(e)?.outlet===this}ngOnInit(){this.initializeOutletWithName()}initializeOutletWithName(){if(this.parentContexts.onChildOutletCreated(this.name,this),this.activated)return;let e=this.parentContexts.getContext(this.name);e?.route&&(e.attachRef?this.attach(e.attachRef,e.route):this.activateWith(e.route,e.injector))}get isActivated(){return!!this.activated}get component(){if(!this.activated)throw new R(4012,!1);return this.activated.instance}get activatedRoute(){if(!this.activated)throw new R(4012,!1);return this._activatedRoute}get activatedRouteData(){return this._activatedRoute?this._activatedRoute.snapshot.data:{}}detach(){if(!this.activated)throw new R(4012,!1);this.location.detach();let e=this.activated;return this.activated=null,this._activatedRoute=null,this.detachEvents.emit(e.instance),e}attach(e,i){this.activated=e,this._activatedRoute=i,this.location.insert(e.hostView),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.attachEvents.emit(e.instance)}deactivate(){if(this.activated){let e=this.component;this.activated.destroy(),this.activated=null,this._activatedRoute=null,this.deactivateEvents.emit(e)}}activateWith(e,i){if(this.isActivated)throw new R(4013,!1);this._activatedRoute=e;let r=this.location,s=e.snapshot.component,a=this.parentContexts.getOrCreateContext(this.name).children,l=new S0(e,a,r.injector,this.routerOutletData);this.activated=r.createComponent(s,{index:r.length,injector:l,environmentInjector:i}),this.changeDetector.markForCheck(),this.inputBinder?.bindActivatedRouteToOutletComponent(this),this.activateEvents.emit(this.activated.instance)}static \u0275fac=function(i){return new(i||t)};static \u0275dir=H({type:t,selectors:[["router-outlet"]],inputs:{name:"name",routerOutletData:[1,"routerOutletData"]},outputs:{activateEvents:"activate",deactivateEvents:"deactivate",attachEvents:"attach",detachEvents:"detach"},exportAs:["outlet"],features:[xe]})}return t})(),S0=class{route;childContexts;parent;outletData;constructor(n,e,i,r){this.route=n,this.childContexts=e,this.parent=i,this.outletData=r}get(n,e){return n===Gi?this.route:n===hl?this.childContexts:n===tI?this.outletData:this.parent.get(n,e)}},np=new B("");function Sj(t,n,e){let i=mu(t,n._root,e?e._root:void 0);return new fu(i,n)}function mu(t,n,e){if(e&&t.shouldReuseRoute(n.value,e.value.snapshot)){let i=e.value;i._futureSnapshot=n.value;let r=Ej(t,n,e);return new Jn(i,r)}else{if(t.shouldAttach(n.value)){let o=t.retrieve(n.value);if(o!==null){let s=o.route;return s.value._futureSnapshot=n.value,s.children=n.children.map(a=>mu(t,a)),s}}let i=Tj(n.value),r=n.children.map(o=>mu(t,o));return new Jn(i,r)}}function Ej(t,n,e){return n.children.map(i=>{for(let r of e.children)if(t.shouldReuseRoute(i.value,r.value.snapshot))return mu(t,i,r);return mu(t,i)})}function Tj(t){return new Gi(new Pe(t.url),new Pe(t.params),new Pe(t.queryParams),new Pe(t.fragment),new Pe(t.data),t.outlet,t.component,t)}var ul=class{redirectTo;navigationBehaviorOptions;constructor(n,e){this.redirectTo=n,this.navigationBehaviorOptions=e}},nI="ngNavigationCancelingError";function Xf(t,n){let{redirectTo:e,navigationBehaviorOptions:i}=Oo(n)?{redirectTo:n,navigationBehaviorOptions:void 0}:n,r=iI(!1,Vn.Redirect);return r.url=e,r.navigationBehaviorOptions=i,r}function iI(t,n){let e=new Error(`NavigationCancelingError: ${t||""}`);return e[nI]=!0,e.cancellationCode=n,e}function Ij(t){return rI(t)&&Oo(t.url)}function rI(t){return!!t&&t[nI]}var xj=(t,n,e,i)=>G(r=>(new E0(n,r.targetRouterState,r.currentRouterState,e,i).activate(t),r)),E0=class{routeReuseStrategy;futureState;currState;forwardEvent;inputBindingEnabled;constructor(n,e,i,r,o){this.routeReuseStrategy=n,this.futureState=e,this.currState=i,this.forwardEvent=r,this.inputBindingEnabled=o}activate(n){let e=this.futureState._root,i=this.currState?this.currState._root:null;this.deactivateChildRoutes(e,i,n),m0(this.futureState.root),this.activateChildRoutes(e,i,n)}deactivateChildRoutes(n,e,i){let r=ol(e);n.children.forEach(o=>{let s=o.value.outlet;this.deactivateRoutes(o,r[s],i),delete r[s]}),Object.values(r).forEach(o=>{this.deactivateRouteAndItsChildren(o,i)})}deactivateRoutes(n,e,i){let r=n.value,o=e?e.value:null;if(r===o)if(r.component){let s=i.getContext(r.outlet);s&&this.deactivateChildRoutes(n,e,s.children)}else this.deactivateChildRoutes(n,e,i);else o&&this.deactivateRouteAndItsChildren(e,i)}deactivateRouteAndItsChildren(n,e){n.value.component&&this.routeReuseStrategy.shouldDetach(n.value.snapshot)?this.detachAndStoreRouteSubtree(n,e):this.deactivateRouteAndOutlet(n,e)}detachAndStoreRouteSubtree(n,e){let i=e.getContext(n.value.outlet),r=i&&n.value.component?i.children:e,o=ol(n);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,r);if(i&&i.outlet){let s=i.outlet.detach(),a=i.children.onOutletDeactivated();this.routeReuseStrategy.store(n.value.snapshot,{componentRef:s,route:n,contexts:a})}}deactivateRouteAndOutlet(n,e){let i=e.getContext(n.value.outlet),r=i&&n.value.component?i.children:e,o=ol(n);for(let s of Object.values(o))this.deactivateRouteAndItsChildren(s,r);i&&(i.outlet&&(i.outlet.deactivate(),i.children.onOutletDeactivated()),i.attachRef=null,i.route=null)}activateChildRoutes(n,e,i){let r=ol(e);n.children.forEach(o=>{this.activateRoutes(o,r[o.value.outlet],i),this.forwardEvent(new Qf(o.value.snapshot))}),n.children.length&&this.forwardEvent(new Gf(n.value.snapshot))}activateRoutes(n,e,i){let r=n.value,o=e?e.value:null;if(m0(r),r===o)if(r.component){let s=i.getOrCreateContext(r.outlet);this.activateChildRoutes(n,e,s.children)}else this.activateChildRoutes(n,e,i);else if(r.component){let s=i.getOrCreateContext(r.outlet);if(this.routeReuseStrategy.shouldAttach(r.snapshot)){let a=this.routeReuseStrategy.retrieve(r.snapshot);this.routeReuseStrategy.store(r.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),m0(a.route.value),this.activateChildRoutes(n,null,s.children)}else s.attachRef=null,s.route=r,s.outlet&&s.outlet.activateWith(r,s.injector),this.activateChildRoutes(n,null,s.children)}else this.activateChildRoutes(n,null,i)}},ep=class{path;route;constructor(n){this.path=n,this.route=this.path[this.path.length-1]}},al=class{component;route;constructor(n,e){this.component=n,this.route=e}};function kj(t,n,e){let i=t._root,r=n?n._root:null;return su(i,r,e,[i.value])}function Aj(t){let n=t.routeConfig?t.routeConfig.canActivateChild:null;return!n||n.length===0?null:{node:t,guards:n}}function fl(t,n){let e=Symbol(),i=n.get(t,e);return i===e?typeof t=="function"&&!rM(t)?t:n.get(t):i}function su(t,n,e,i,r={canDeactivateChecks:[],canActivateChecks:[]}){let o=ol(n);return t.children.forEach(s=>{Rj(s,o[s.value.outlet],e,i.concat([s.value]),r),delete o[s.value.outlet]}),Object.entries(o).forEach(([s,a])=>lu(a,e.getContext(s),r)),r}function Rj(t,n,e,i,r={canDeactivateChecks:[],canActivateChecks:[]}){let o=t.value,s=n?n.value:null,a=e?e.getContext(t.value.outlet):null;if(s&&o.routeConfig===s.routeConfig){let l=Oj(s,o,o.routeConfig.runGuardsAndResolvers);l?r.canActivateChecks.push(new ep(i)):(o.data=s.data,o._resolvedData=s._resolvedData),o.component?su(t,n,a?a.children:null,i,r):su(t,n,e,i,r),l&&a&&a.outlet&&a.outlet.isActivated&&r.canDeactivateChecks.push(new al(a.outlet.component,s))}else s&&lu(n,a,r),r.canActivateChecks.push(new ep(i)),o.component?su(t,null,a?a.children:null,i,r):su(t,null,e,i,r);return r}function Oj(t,n,e){if(typeof e=="function")return e(t,n);switch(e){case"pathParamsChange":return!As(t.url,n.url);case"pathParamsOrQueryParamsChange":return!As(t.url,n.url)||!gr(t.queryParams,n.queryParams);case"always":return!0;case"paramsOrQueryParamsChange":return!M0(t,n)||!gr(t.queryParams,n.queryParams);case"paramsChange":default:return!M0(t,n)}}function lu(t,n,e){let i=ol(t),r=t.value;Object.entries(i).forEach(([o,s])=>{r.component?n?lu(s,n.children.getContext(o),e):lu(s,null,e):lu(s,n,e)}),r.component?n&&n.outlet&&n.outlet.isActivated?e.canDeactivateChecks.push(new al(n.outlet.component,r)):e.canDeactivateChecks.push(new al(null,r)):e.canDeactivateChecks.push(new al(null,r))}function wu(t){return typeof t=="function"}function Pj(t){return typeof t=="boolean"}function Nj(t){return t&&wu(t.canLoad)}function Lj(t){return t&&wu(t.canActivate)}function Fj(t){return t&&wu(t.canActivateChild)}function Vj(t){return t&&wu(t.canDeactivate)}function jj(t){return t&&wu(t.canMatch)}function oI(t){return t instanceof Li||t?.name==="EmptyError"}var Of=Symbol("INITIAL_VALUE");function dl(){return vt(t=>go(t.map(n=>n.pipe(yt(1),ds(Of)))).pipe(G(n=>{for(let e of n)if(e!==!0){if(e===Of)return Of;if(e===!1||Hj(e))return e}return!0}),le(n=>n!==Of),yt(1)))}function Hj(t){return Oo(t)||t instanceof ul}function Bj(t,n){return ze(e=>{let{targetSnapshot:i,currentSnapshot:r,guards:{canActivateChecks:o,canDeactivateChecks:s}}=e;return s.length===0&&o.length===0?Q(W(E({},e),{guardsResult:!0})):Uj(s,i,r,t).pipe(ze(a=>a&&Pj(a)?$j(i,o,t,n):Q(a)),G(a=>W(E({},e),{guardsResult:a})))})}function Uj(t,n,e,i){return Ke(t).pipe(ze(r=>qj(r.component,r.route,e,n,i)),jr(r=>r!==!0,!0))}function $j(t,n,e,i){return Ke(n).pipe(yo(r=>_o(zj(r.route.parent,i),Yj(r.route,i),Gj(t,r.path,e),Wj(t,r.route,e))),jr(r=>r!==!0,!0))}function Yj(t,n){return t!==null&&n&&n(new qf(t)),Q(!0)}function zj(t,n){return t!==null&&n&&n(new Wf(t)),Q(!0)}function Wj(t,n,e){let i=n.routeConfig?n.routeConfig.canActivate:null;if(!i||i.length===0)return Q(!0);let r=i.map(o=>eh(()=>{let s=bu(n)??e,a=fl(o,s),l=Lj(a)?a.canActivate(n,t):Gn(s,()=>a(n,t));return Po(l).pipe(jr())}));return Q(r).pipe(dl())}function Gj(t,n,e){let i=n[n.length-1],o=n.slice(0,n.length-1).reverse().map(s=>Aj(s)).filter(s=>s!==null).map(s=>eh(()=>{let a=s.guards.map(l=>{let c=bu(s.node)??e,u=fl(l,c),m=Fj(u)?u.canActivateChild(i,t):Gn(c,()=>u(i,t));return Po(m).pipe(jr())});return Q(a).pipe(dl())}));return Q(o).pipe(dl())}function qj(t,n,e,i,r){let o=n&&n.routeConfig?n.routeConfig.canDeactivate:null;if(!o||o.length===0)return Q(!0);let s=o.map(a=>{let l=bu(n)??r,c=fl(a,l),u=Vj(c)?c.canDeactivate(t,n,e,i):Gn(l,()=>c(t,n,e,i));return Po(u).pipe(jr())});return Q(s).pipe(dl())}function Qj(t,n,e,i){let r=n.canLoad;if(r===void 0||r.length===0)return Q(!0);let o=r.map(s=>{let a=fl(s,t),l=Nj(a)?a.canLoad(n,e):Gn(t,()=>a(n,e));return Po(l)});return Q(o).pipe(dl(),sI(i))}function sI(t){return Wg(ct(n=>{if(typeof n!="boolean")throw Xf(t,n)}),G(n=>n===!0))}function Zj(t,n,e,i){let r=n.canMatch;if(!r||r.length===0)return Q(!0);let o=r.map(s=>{let a=fl(s,t),l=jj(a)?a.canMatch(n,e):Gn(t,()=>a(n,e));return Po(l)});return Q(o).pipe(dl(),sI(i))}var gu=class{segmentGroup;constructor(n){this.segmentGroup=n||null}},_u=class extends Error{urlTree;constructor(n){super(),this.urlTree=n}};function rl(t){return Ma(new gu(t))}function Kj(t){return Ma(new R(4e3,!1))}function Jj(t){return Ma(iI(!1,Vn.GuardRejected))}var T0=class{urlSerializer;urlTree;constructor(n,e){this.urlSerializer=n,this.urlTree=e}lineralizeSegments(n,e){let i=[],r=e.root;for(;;){if(i=i.concat(r.segments),r.numberOfChildren===0)return Q(i);if(r.numberOfChildren>1||!r.children[_e])return Kj(`${n.redirectTo}`);r=r.children[_e]}}applyRedirectCommands(n,e,i,r,o){if(typeof e!="string"){let a=e,{queryParams:l,fragment:c,routeConfig:u,url:m,outlet:b,params:_,data:M,title:I}=r,O=Gn(o,()=>a({params:_,data:M,queryParams:l,fragment:c,routeConfig:u,url:m,outlet:b,title:I}));if(O instanceof yr)throw new _u(O);e=O}let s=this.applyRedirectCreateUrlTree(e,this.urlSerializer.parse(e),n,i);if(e[0]==="/")throw new _u(s);return s}applyRedirectCreateUrlTree(n,e,i,r){let o=this.createSegmentGroup(n,e.root,i,r);return new yr(o,this.createQueryParams(e.queryParams,this.urlTree.queryParams),e.fragment)}createQueryParams(n,e){let i={};return Object.entries(n).forEach(([r,o])=>{if(typeof o=="string"&&o[0]===":"){let a=o.substring(1);i[r]=e[a]}else i[r]=o}),i}createSegmentGroup(n,e,i,r){let o=this.createSegments(n,e.segments,i,r),s={};return Object.entries(e.children).forEach(([a,l])=>{s[a]=this.createSegmentGroup(n,l,i,r)}),new je(o,s)}createSegments(n,e,i,r){return e.map(o=>o.path[0]===":"?this.findPosParam(n,o,r):this.findOrReturn(o,i))}findPosParam(n,e,i){let r=i[e.path.substring(1)];if(!r)throw new R(4001,!1);return r}findOrReturn(n,e){let i=0;for(let r of e){if(r.path===n.path)return e.splice(i),r;i++}return n}},I0={matched:!1,consumedSegments:[],remainingSegments:[],parameters:{},positionalParamSegments:{}};function Xj(t,n,e,i,r){let o=aI(t,n,e);return o.matched?(i=wj(n,i),Zj(i,n,e,r).pipe(G(s=>s===!0?o:E({},I0)))):Q(o)}function aI(t,n,e){if(n.path==="**")return eH(e);if(n.path==="")return n.pathMatch==="full"&&(t.hasChildren()||e.length>0)?E({},I0):{matched:!0,consumedSegments:[],remainingSegments:e,parameters:{},positionalParamSegments:{}};let r=(n.matcher||LT)(e,t,n);if(!r)return E({},I0);let o={};Object.entries(r.posParams??{}).forEach(([a,l])=>{o[a]=l.path});let s=r.consumed.length>0?E(E({},o),r.consumed[r.consumed.length-1].parameters):o;return{matched:!0,consumedSegments:r.consumed,remainingSegments:e.slice(r.consumed.length),parameters:s,positionalParamSegments:r.posParams??{}}}function eH(t){return{matched:!0,parameters:t.length>0?VT(t).parameters:{},consumedSegments:t,remainingSegments:[],positionalParamSegments:{}}}function OT(t,n,e,i){return e.length>0&&iH(t,e,i)?{segmentGroup:new je(n,nH(i,new je(e,t.children))),slicedSegments:[]}:e.length===0&&rH(t,e,i)?{segmentGroup:new je(t.segments,tH(t,e,i,t.children)),slicedSegments:e}:{segmentGroup:new je(t.segments,t.children),slicedSegments:e}}function tH(t,n,e,i){let r={};for(let o of e)if(ip(t,n,o)&&!i[Wi(o)]){let s=new je([],{});r[Wi(o)]=s}return E(E({},i),r)}function nH(t,n){let e={};e[_e]=n;for(let i of t)if(i.path===""&&Wi(i)!==_e){let r=new je([],{});e[Wi(i)]=r}return e}function iH(t,n,e){return e.some(i=>ip(t,n,i)&&Wi(i)!==_e)}function rH(t,n,e){return e.some(i=>ip(t,n,i))}function ip(t,n,e){return(t.hasChildren()||n.length>0)&&e.pathMatch==="full"?!1:e.path===""}function oH(t,n,e){return n.length===0&&!t.children[e]}var x0=class{};function sH(t,n,e,i,r,o,s="emptyOnly"){return new k0(t,n,e,i,r,s,o).recognize()}var aH=31,k0=class{injector;configLoader;rootComponentType;config;urlTree;paramsInheritanceStrategy;urlSerializer;applyRedirects;absoluteRedirectCount=0;allowRedirects=!0;constructor(n,e,i,r,o,s,a){this.injector=n,this.configLoader=e,this.rootComponentType=i,this.config=r,this.urlTree=o,this.paramsInheritanceStrategy=s,this.urlSerializer=a,this.applyRedirects=new T0(this.urlSerializer,this.urlTree)}noMatchError(n){return new R(4002,`'${n.segmentGroup}'`)}recognize(){let n=OT(this.urlTree.root,[],[],this.config).segmentGroup;return this.match(n).pipe(G(({children:e,rootSnapshot:i})=>{let r=new Jn(i,e),o=new pu("",r),s=GT(i,[],this.urlTree.queryParams,this.urlTree.fragment);return s.queryParams=this.urlTree.queryParams,o.url=this.urlSerializer.serialize(s),{state:o,tree:s}}))}match(n){let e=new Rs([],Object.freeze({}),Object.freeze(E({},this.urlTree.queryParams)),this.urlTree.fragment,Object.freeze({}),_e,this.rootComponentType,null,{});return this.processSegmentGroup(this.injector,this.config,n,_e,e).pipe(G(i=>({children:i,rootSnapshot:e})),Fi(i=>{if(i instanceof _u)return this.urlTree=i.urlTree,this.match(i.urlTree.root);throw i instanceof gu?this.noMatchError(i):i}))}processSegmentGroup(n,e,i,r,o){return i.segments.length===0&&i.hasChildren()?this.processChildren(n,e,i,o):this.processSegment(n,e,i,i.segments,r,!0,o).pipe(G(s=>s instanceof Jn?[s]:[]))}processChildren(n,e,i,r){let o=[];for(let s of Object.keys(i.children))s==="primary"?o.unshift(s):o.push(s);return Ke(o).pipe(yo(s=>{let a=i.children[s],l=Dj(e,s);return this.processSegmentGroup(n,l,a,s,r)}),yc((s,a)=>(s.push(...a),s)),vo(null),i_(),ze(s=>{if(s===null)return rl(i);let a=lI(s);return lH(a),Q(a)}))}processSegment(n,e,i,r,o,s,a){return Ke(e).pipe(yo(l=>this.processSegmentAgainstRoute(l._injector??n,e,l,i,r,o,s,a).pipe(Fi(c=>{if(c instanceof gu)return Q(null);throw c}))),jr(l=>!!l),Fi(l=>{if(oI(l))return oH(i,r,o)?Q(new x0):rl(i);throw l}))}processSegmentAgainstRoute(n,e,i,r,o,s,a,l){return Wi(i)!==s&&(s===_e||!ip(r,o,i))?rl(r):i.redirectTo===void 0?this.matchSegmentAgainstRoute(n,r,i,o,s,l):this.allowRedirects&&a?this.expandSegmentAgainstRouteUsingRedirect(n,r,e,i,o,s,l):rl(r)}expandSegmentAgainstRouteUsingRedirect(n,e,i,r,o,s,a){let{matched:l,parameters:c,consumedSegments:u,positionalParamSegments:m,remainingSegments:b}=aI(e,r,o);if(!l)return rl(e);typeof r.redirectTo=="string"&&r.redirectTo[0]==="/"&&(this.absoluteRedirectCount++,this.absoluteRedirectCount>aH&&(this.allowRedirects=!1));let _=new Rs(o,c,Object.freeze(E({},this.urlTree.queryParams)),this.urlTree.fragment,PT(r),Wi(r),r.component??r._loadedComponent??null,r,NT(r)),M=Jf(_,a,this.paramsInheritanceStrategy);_.params=Object.freeze(M.params),_.data=Object.freeze(M.data);let I=this.applyRedirects.applyRedirectCommands(u,r.redirectTo,m,_,n);return this.applyRedirects.lineralizeSegments(r,I).pipe(ze(O=>this.processSegment(n,i,e,O.concat(b),s,!1,a)))}matchSegmentAgainstRoute(n,e,i,r,o,s){let a=Xj(e,i,r,n,this.urlSerializer);return i.path==="**"&&(e.children={}),a.pipe(vt(l=>l.matched?(n=i._injector??n,this.getChildConfig(n,i,r).pipe(vt(({routes:c})=>{let u=i._loadedInjector??n,{parameters:m,consumedSegments:b,remainingSegments:_}=l,M=new Rs(b,m,Object.freeze(E({},this.urlTree.queryParams)),this.urlTree.fragment,PT(i),Wi(i),i.component??i._loadedComponent??null,i,NT(i)),I=Jf(M,s,this.paramsInheritanceStrategy);M.params=Object.freeze(I.params),M.data=Object.freeze(I.data);let{segmentGroup:O,slicedSegments:V}=OT(e,b,_,c);if(V.length===0&&O.hasChildren())return this.processChildren(u,c,O,M).pipe(G(we=>new Jn(M,we)));if(c.length===0&&V.length===0)return Q(new Jn(M,[]));let de=Wi(i)===o;return this.processSegment(u,c,O,V,de?_e:o,!0,M).pipe(G(we=>new Jn(M,we instanceof Jn?[we]:[])))}))):rl(e)))}getChildConfig(n,e,i){return e.children?Q({routes:e.children,injector:n}):e.loadChildren?e._loadedRoutes!==void 0?Q({routes:e._loadedRoutes,injector:e._loadedInjector}):Qj(n,e,i,this.urlSerializer).pipe(ze(r=>r?this.configLoader.loadChildren(n,e).pipe(ct(o=>{e._loadedRoutes=o.routes,e._loadedInjector=o.injector})):Jj(e))):Q({routes:[],injector:n})}};function lH(t){t.sort((n,e)=>n.value.outlet===_e?-1:e.value.outlet===_e?1:n.value.outlet.localeCompare(e.value.outlet))}function cH(t){let n=t.value.routeConfig;return n&&n.path===""}function lI(t){let n=[],e=new Set;for(let i of t){if(!cH(i)){n.push(i);continue}let r=n.find(o=>i.value.routeConfig===o.value.routeConfig);r!==void 0?(r.children.push(...i.children),e.add(r)):n.push(i)}for(let i of e){let r=lI(i.children);n.push(new Jn(i.value,r))}return n.filter(i=>!e.has(i))}function PT(t){return t.data||{}}function NT(t){return t.resolve||{}}function uH(t,n,e,i,r,o){return ze(s=>sH(t,n,e,i,s.extractedUrl,r,o).pipe(G(({state:a,tree:l})=>W(E({},s),{targetSnapshot:a,urlAfterRedirects:l}))))}function dH(t,n){return ze(e=>{let{targetSnapshot:i,guards:{canActivateChecks:r}}=e;if(!r.length)return Q(e);let o=new Set(r.map(l=>l.route)),s=new Set;for(let l of o)if(!s.has(l))for(let c of cI(l))s.add(c);let a=0;return Ke(s).pipe(yo(l=>o.has(l)?hH(l,i,t,n):(l.data=Jf(l,l.parent,t).resolve,Q(void 0))),ct(()=>a++),Ia(1),ze(l=>a===s.size?Q(e):Mt))})}function cI(t){let n=t.children.map(e=>cI(e)).flat();return[t,...n]}function hH(t,n,e,i){let r=t.routeConfig,o=t._resolve;return r?.title!==void 0&&!eI(r)&&(o[yu]=r.title),fH(o,t,n,i).pipe(G(s=>(t._resolvedData=s,t.data=Jf(t,t.parent,e).resolve,null)))}function fH(t,n,e,i){let r=y0(t);if(r.length===0)return Q({});let o={};return Ke(r).pipe(ze(s=>pH(t[s],n,e,i).pipe(jr(),ct(a=>{if(a instanceof ul)throw Xf(new Ps,a);o[s]=a}))),Ia(1),G(()=>o),Fi(s=>oI(s)?Mt:Ma(s)))}function pH(t,n,e,i){let r=bu(n)??i,o=fl(t,r),s=o.resolve?o.resolve(n,e):Gn(r,()=>o(n,e));return Po(s)}function g0(t){return vt(n=>{let e=t(n);return e?Ke(e).pipe(G(()=>n)):Q(n)})}var R0=(()=>{class t{buildTitle(e){let i,r=e.root;for(;r!==void 0;)i=this.getResolvedTitleForRoute(r)??i,r=r.children.find(o=>o.outlet===_e);return i}getResolvedTitleForRoute(e){return e.data[yu]}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>S(uI),providedIn:"root"})}return t})(),uI=(()=>{class t extends R0{title;constructor(e){super(),this.title=e}updateTitle(e){let i=this.buildTitle(e);i!==void 0&&this.title.setTitle(i)}static \u0275fac=function(i){return new(i||t)(F(IT))};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),Du=new B("",{providedIn:"root",factory:()=>({})}),O0=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275cmp=L({type:t,selectors:[["ng-component"]],exportAs:["emptyRouterOutlet"],decls:1,vars:0,template:function(i,r){i&1&&A(0,"router-outlet")},dependencies:[Cu],encapsulation:2})}return t})();function P0(t){let n=t.children&&t.children.map(P0),e=n?W(E({},t),{children:n}):E({},t);return!e.component&&!e.loadComponent&&(n||e.loadChildren)&&e.outlet&&e.outlet!==_e&&(e.component=O0),e}var Mu=new B(""),dI=(()=>{class t{componentLoaders=new WeakMap;childrenLoaders=new WeakMap;onLoadStartListener;onLoadEndListener;compiler=S(AE);loadComponent(e){if(this.componentLoaders.get(e))return this.componentLoaders.get(e);if(e._loadedComponent)return Q(e._loadedComponent);this.onLoadStartListener&&this.onLoadStartListener(e);let i=Po(e.loadComponent()).pipe(G(fI),ct(o=>{this.onLoadEndListener&&this.onLoadEndListener(e),e._loadedComponent=o}),di(()=>{this.componentLoaders.delete(e)})),r=new va(i,()=>new X).pipe(ya());return this.componentLoaders.set(e,r),r}loadChildren(e,i){if(this.childrenLoaders.get(i))return this.childrenLoaders.get(i);if(i._loadedRoutes)return Q({routes:i._loadedRoutes,injector:i._loadedInjector});this.onLoadStartListener&&this.onLoadStartListener(i);let o=hI(i,this.compiler,e,this.onLoadEndListener).pipe(di(()=>{this.childrenLoaders.delete(i)})),s=new va(o,()=>new X).pipe(ya());return this.childrenLoaders.set(i,s),s}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function hI(t,n,e,i){return Po(t.loadChildren()).pipe(G(fI),ze(r=>r instanceof Iv||Array.isArray(r)?Q(r):Ke(n.compileModuleAsync(r))),G(r=>{i&&i(t);let o,s,a=!1;return Array.isArray(r)?(s=r,a=!0):(o=r.create(e).injector,s=o.get(Mu,[],{optional:!0,self:!0}).flat()),{routes:s.map(P0),injector:o}}))}function mH(t){return t&&typeof t=="object"&&"default"in t}function fI(t){return mH(t)?t.default:t}var rp=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>S(gH),providedIn:"root"})}return t})(),gH=(()=>{class t{shouldProcessUrl(e){return!0}extract(e){return e}merge(e,i){return e}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),pI=new B("");var mI=new B(""),gI=(()=>{class t{currentNavigation=null;currentTransition=null;lastSuccessfulNavigation=null;events=new X;transitionAbortSubject=new X;configLoader=S(dI);environmentInjector=S(yn);destroyRef=S(Nc);urlSerializer=S(vu);rootContexts=S(hl);location=S(el);inputBindingEnabled=S(np,{optional:!0})!==null;titleStrategy=S(R0);options=S(Du,{optional:!0})||{};paramsInheritanceStrategy=this.options.paramsInheritanceStrategy||"emptyOnly";urlHandlingStrategy=S(rp);createViewTransition=S(pI,{optional:!0});navigationErrorHandler=S(mI,{optional:!0});navigationId=0;get hasRequestedNavigation(){return this.navigationId!==0}transitions;afterPreactivation=()=>Q(void 0);rootComponentType=null;destroyed=!1;constructor(){let e=r=>this.events.next(new Yf(r)),i=r=>this.events.next(new zf(r));this.configLoader.onLoadEndListener=i,this.configLoader.onLoadStartListener=e,this.destroyRef.onDestroy(()=>{this.destroyed=!0})}complete(){this.transitions?.complete()}handleNavigationRequest(e){let i=++this.navigationId;this.transitions?.next(W(E({},e),{extractedUrl:this.urlHandlingStrategy.extract(e.rawUrl),targetSnapshot:null,targetRouterState:null,guards:{canActivateChecks:[],canDeactivateChecks:[]},guardsResult:null,id:i}))}setupNavigations(e){return this.transitions=new Pe(null),this.transitions.pipe(le(i=>i!==null),vt(i=>{let r=!1,o=!1;return Q(i).pipe(vt(s=>{if(this.navigationId>i.id)return this.cancelNavigationTransition(i,"",Vn.SupersededByNewNavigation),Mt;this.currentTransition=i,this.currentNavigation={id:s.id,initialUrl:s.rawUrl,extractedUrl:s.extractedUrl,targetBrowserUrl:typeof s.extras.browserUrl=="string"?this.urlSerializer.parse(s.extras.browserUrl):s.extras.browserUrl,trigger:s.source,extras:s.extras,previousNavigation:this.lastSuccessfulNavigation?W(E({},this.lastSuccessfulNavigation),{previousNavigation:null}):null};let a=!e.navigated||this.isUpdatingInternalState()||this.isUpdatedBrowserUrl(),l=s.extras.onSameUrlNavigation??e.onSameUrlNavigation;if(!a&&l!=="reload"){let c="";return this.events.next(new Jr(s.id,this.urlSerializer.serialize(s.rawUrl),c,uu.IgnoredSameUrlNavigation)),s.resolve(!1),Mt}if(this.urlHandlingStrategy.shouldProcessUrl(s.rawUrl))return Q(s).pipe(vt(c=>(this.events.next(new Ns(c.id,this.urlSerializer.serialize(c.extractedUrl),c.source,c.restoredState)),c.id!==this.navigationId?Mt:Promise.resolve(c))),uH(this.environmentInjector,this.configLoader,this.rootComponentType,e.config,this.urlSerializer,this.paramsInheritanceStrategy),ct(c=>{i.targetSnapshot=c.targetSnapshot,i.urlAfterRedirects=c.urlAfterRedirects,this.currentNavigation=W(E({},this.currentNavigation),{finalUrl:c.urlAfterRedirects});let u=new du(c.id,this.urlSerializer.serialize(c.extractedUrl),this.urlSerializer.serialize(c.urlAfterRedirects),c.targetSnapshot);this.events.next(u)}));if(a&&this.urlHandlingStrategy.shouldProcessUrl(s.currentRawUrl)){let{id:c,extractedUrl:u,source:m,restoredState:b,extras:_}=s,M=new Ns(c,this.urlSerializer.serialize(u),m,b);this.events.next(M);let I=JT(this.rootComponentType).snapshot;return this.currentTransition=i=W(E({},s),{targetSnapshot:I,urlAfterRedirects:u,extras:W(E({},_),{skipLocationChange:!1,replaceUrl:!1})}),this.currentNavigation.finalUrl=u,Q(i)}else{let c="";return this.events.next(new Jr(s.id,this.urlSerializer.serialize(s.extractedUrl),c,uu.IgnoredByUrlHandlingStrategy)),s.resolve(!1),Mt}}),ct(s=>{let a=new Hf(s.id,this.urlSerializer.serialize(s.extractedUrl),this.urlSerializer.serialize(s.urlAfterRedirects),s.targetSnapshot);this.events.next(a)}),G(s=>(this.currentTransition=i=W(E({},s),{guards:kj(s.targetSnapshot,s.currentSnapshot,this.rootContexts)}),i)),Bj(this.environmentInjector,s=>this.events.next(s)),ct(s=>{if(i.guardsResult=s.guardsResult,s.guardsResult&&typeof s.guardsResult!="boolean")throw Xf(this.urlSerializer,s.guardsResult);let a=new Bf(s.id,this.urlSerializer.serialize(s.extractedUrl),this.urlSerializer.serialize(s.urlAfterRedirects),s.targetSnapshot,!!s.guardsResult);this.events.next(a)}),le(s=>s.guardsResult?!0:(this.cancelNavigationTransition(s,"",Vn.GuardRejected),!1)),g0(s=>{if(s.guards.canActivateChecks.length!==0)return Q(s).pipe(ct(a=>{let l=new Uf(a.id,this.urlSerializer.serialize(a.extractedUrl),this.urlSerializer.serialize(a.urlAfterRedirects),a.targetSnapshot);this.events.next(l)}),vt(a=>{let l=!1;return Q(a).pipe(dH(this.paramsInheritanceStrategy,this.environmentInjector),ct({next:()=>l=!0,complete:()=>{l||this.cancelNavigationTransition(a,"",Vn.NoDataFromResolver)}}))}),ct(a=>{let l=new $f(a.id,this.urlSerializer.serialize(a.extractedUrl),this.urlSerializer.serialize(a.urlAfterRedirects),a.targetSnapshot);this.events.next(l)}))}),g0(s=>{let a=l=>{let c=[];l.routeConfig?.loadComponent&&!l.routeConfig._loadedComponent&&c.push(this.configLoader.loadComponent(l.routeConfig).pipe(ct(u=>{l.component=u}),G(()=>{})));for(let u of l.children)c.push(...a(u));return c};return go(a(s.targetSnapshot.root)).pipe(vo(null),yt(1))}),g0(()=>this.afterPreactivation()),vt(()=>{let{currentSnapshot:s,targetSnapshot:a}=i,l=this.createViewTransition?.(this.environmentInjector,s.root,a.root);return l?Ke(l).pipe(G(()=>i)):Q(i)}),G(s=>{let a=Sj(e.routeReuseStrategy,s.targetSnapshot,s.currentRouterState);return this.currentTransition=i=W(E({},s),{targetRouterState:a}),this.currentNavigation.targetRouterState=a,i}),ct(()=>{this.events.next(new hu)}),xj(this.rootContexts,e.routeReuseStrategy,s=>this.events.next(s),this.inputBindingEnabled),yt(1),ct({next:s=>{r=!0,this.lastSuccessfulNavigation=this.currentNavigation,this.events.next(new vr(s.id,this.urlSerializer.serialize(s.extractedUrl),this.urlSerializer.serialize(s.urlAfterRedirects))),this.titleStrategy?.updateTitle(s.targetRouterState.snapshot),s.resolve(!0)},complete:()=>{r=!0}}),hi(this.transitionAbortSubject.pipe(ct(s=>{throw s}))),di(()=>{!r&&!o&&this.cancelNavigationTransition(i,"",Vn.SupersededByNewNavigation),this.currentTransition?.id===i.id&&(this.currentNavigation=null,this.currentTransition=null)}),Fi(s=>{if(this.destroyed)return i.resolve(!1),Mt;if(o=!0,rI(s))this.events.next(new _r(i.id,this.urlSerializer.serialize(i.extractedUrl),s.message,s.cancellationCode)),Ij(s)?this.events.next(new cl(s.url,s.navigationBehaviorOptions)):i.resolve(!1);else{let a=new ll(i.id,this.urlSerializer.serialize(i.extractedUrl),s,i.targetSnapshot??void 0);try{let l=Gn(this.environmentInjector,()=>this.navigationErrorHandler?.(a));if(l instanceof ul){let{message:c,cancellationCode:u}=Xf(this.urlSerializer,l);this.events.next(new _r(i.id,this.urlSerializer.serialize(i.extractedUrl),c,u)),this.events.next(new cl(l.redirectTo,l.navigationBehaviorOptions))}else throw this.events.next(a),s}catch(l){this.options.resolveNavigationPromiseOnError?i.resolve(!1):i.reject(l)}}return Mt}))}))}cancelNavigationTransition(e,i,r){let o=new _r(e.id,this.urlSerializer.serialize(e.extractedUrl),i,r);this.events.next(o),e.resolve(!1)}isUpdatingInternalState(){return this.currentTransition?.extractedUrl.toString()!==this.currentTransition?.currentUrlTree.toString()}isUpdatedBrowserUrl(){let e=this.urlHandlingStrategy.extract(this.urlSerializer.parse(this.location.path(!0))),i=this.currentNavigation?.targetBrowserUrl??this.currentNavigation?.extractedUrl;return e.toString()!==i?.toString()&&!this.currentNavigation?.extras.skipLocationChange}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function _H(t){return t!==Ff}var _I=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>S(yH),providedIn:"root"})}return t})(),tp=class{shouldDetach(n){return!1}store(n,e){}shouldAttach(n){return!1}retrieve(n){return null}shouldReuseRoute(n,e){return n.routeConfig===e.routeConfig}},yH=(()=>{class t extends tp{static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),yI=(()=>{class t{urlSerializer=S(vu);options=S(Du,{optional:!0})||{};canceledNavigationResolution=this.options.canceledNavigationResolution||"replace";location=S(el);urlHandlingStrategy=S(rp);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";currentUrlTree=new yr;getCurrentUrlTree(){return this.currentUrlTree}rawUrlTree=this.currentUrlTree;getRawUrlTree(){return this.rawUrlTree}createBrowserPath({finalUrl:e,initialUrl:i,targetBrowserUrl:r}){let o=e!==void 0?this.urlHandlingStrategy.merge(e,i):i,s=r??o;return s instanceof yr?this.urlSerializer.serialize(s):s}commitTransition({targetRouterState:e,finalUrl:i,initialUrl:r}){i&&e?(this.currentUrlTree=i,this.rawUrlTree=this.urlHandlingStrategy.merge(i,r),this.routerState=e):this.rawUrlTree=r}routerState=JT(null);getRouterState(){return this.routerState}stateMemento=this.createStateMemento();updateStateMemento(){this.stateMemento=this.createStateMemento()}createStateMemento(){return{rawUrlTree:this.rawUrlTree,currentUrlTree:this.currentUrlTree,routerState:this.routerState}}resetInternalState({finalUrl:e}){this.routerState=this.stateMemento.routerState,this.currentUrlTree=this.stateMemento.currentUrlTree,this.rawUrlTree=this.urlHandlingStrategy.merge(this.currentUrlTree,e??this.rawUrlTree)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>S(vH),providedIn:"root"})}return t})(),vH=(()=>{class t extends yI{currentPageId=0;lastSuccessfulId=-1;restoredState(){return this.location.getState()}get browserPageId(){return this.canceledNavigationResolution!=="computed"?this.currentPageId:this.restoredState()?.\u0275routerPageId??this.currentPageId}registerNonRouterCurrentEntryChangeListener(e){return this.location.subscribe(i=>{i.type==="popstate"&&setTimeout(()=>{e(i.url,i.state,"popstate")})})}handleRouterEvent(e,i){e instanceof Ns?this.updateStateMemento():e instanceof Jr?this.commitTransition(i):e instanceof du?this.urlUpdateStrategy==="eager"&&(i.extras.skipLocationChange||this.setBrowserUrl(this.createBrowserPath(i),i)):e instanceof hu?(this.commitTransition(i),this.urlUpdateStrategy==="deferred"&&!i.extras.skipLocationChange&&this.setBrowserUrl(this.createBrowserPath(i),i)):e instanceof _r&&(e.code===Vn.GuardRejected||e.code===Vn.NoDataFromResolver)?this.restoreHistory(i):e instanceof ll?this.restoreHistory(i,!0):e instanceof vr&&(this.lastSuccessfulId=e.id,this.currentPageId=this.browserPageId)}setBrowserUrl(e,{extras:i,id:r}){let{replaceUrl:o,state:s}=i;if(this.location.isCurrentPathEqualTo(e)||o){let a=this.browserPageId,l=E(E({},s),this.generateNgRouterState(r,a));this.location.replaceState(e,"",l)}else{let a=E(E({},s),this.generateNgRouterState(r,this.browserPageId+1));this.location.go(e,"",a)}}restoreHistory(e,i=!1){if(this.canceledNavigationResolution==="computed"){let r=this.browserPageId,o=this.currentPageId-r;o!==0?this.location.historyGo(o):this.getCurrentUrlTree()===e.finalUrl&&o===0&&(this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}else this.canceledNavigationResolution==="replace"&&(i&&this.resetInternalState(e),this.resetUrlToCurrentUrlTree())}resetUrlToCurrentUrlTree(){this.location.replaceState(this.urlSerializer.serialize(this.getRawUrlTree()),"",this.generateNgRouterState(this.lastSuccessfulId,this.currentPageId))}generateNgRouterState(e,i){return this.canceledNavigationResolution==="computed"?{navigationId:e,\u0275routerPageId:i}:{navigationId:e}}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function N0(t,n){t.events.pipe(le(e=>e instanceof vr||e instanceof _r||e instanceof ll||e instanceof Jr),G(e=>e instanceof vr||e instanceof Jr?0:(e instanceof _r?e.code===Vn.Redirect||e.code===Vn.SupersededByNewNavigation:!1)?2:1),le(e=>e!==2),yt(1)).subscribe(()=>{n()})}var bH={paths:"exact",fragment:"ignored",matrixParams:"ignored",queryParams:"exact"},CH={paths:"subset",fragment:"ignored",matrixParams:"ignored",queryParams:"subset"},sn=(()=>{class t{get currentUrlTree(){return this.stateManager.getCurrentUrlTree()}get rawUrlTree(){return this.stateManager.getRawUrlTree()}disposed=!1;nonRouterCurrentEntryChangeSubscription;console=S(Av);stateManager=S(yI);options=S(Du,{optional:!0})||{};pendingTasks=S(Mo);urlUpdateStrategy=this.options.urlUpdateStrategy||"deferred";navigationTransitions=S(gI);urlSerializer=S(vu);location=S(el);urlHandlingStrategy=S(rp);_events=new X;get events(){return this._events}get routerState(){return this.stateManager.getRouterState()}navigated=!1;routeReuseStrategy=S(_I);onSameUrlNavigation=this.options.onSameUrlNavigation||"ignore";config=S(Mu,{optional:!0})?.flat()??[];componentInputBindingEnabled=!!S(np,{optional:!0});constructor(){this.resetConfig(this.config),this.navigationTransitions.setupNavigations(this).subscribe({error:e=>{this.console.warn(e)}}),this.subscribeToNavigationEvents()}eventsSubscription=new Ue;subscribeToNavigationEvents(){let e=this.navigationTransitions.events.subscribe(i=>{try{let r=this.navigationTransitions.currentTransition,o=this.navigationTransitions.currentNavigation;if(r!==null&&o!==null){if(this.stateManager.handleRouterEvent(i,o),i instanceof _r&&i.code!==Vn.Redirect&&i.code!==Vn.SupersededByNewNavigation)this.navigated=!0;else if(i instanceof vr)this.navigated=!0;else if(i instanceof cl){let s=i.navigationBehaviorOptions,a=this.urlHandlingStrategy.merge(i.url,r.currentRawUrl),l=E({browserUrl:r.extras.browserUrl,info:r.extras.info,skipLocationChange:r.extras.skipLocationChange,replaceUrl:r.extras.replaceUrl||this.urlUpdateStrategy==="eager"||_H(r.source)},s);this.scheduleNavigation(a,Ff,null,l,{resolve:r.resolve,reject:r.reject,promise:r.promise})}}DH(i)&&this._events.next(i)}catch(r){this.navigationTransitions.transitionAbortSubject.next(r)}});this.eventsSubscription.add(e)}resetRootComponentType(e){this.routerState.root.component=e,this.navigationTransitions.rootComponentType=e}initialNavigation(){this.setUpLocationChangeListener(),this.navigationTransitions.hasRequestedNavigation||this.navigateToSyncWithBrowser(this.location.path(!0),Ff,this.stateManager.restoredState())}setUpLocationChangeListener(){this.nonRouterCurrentEntryChangeSubscription??=this.stateManager.registerNonRouterCurrentEntryChangeListener((e,i,r)=>{this.navigateToSyncWithBrowser(e,r,i)})}navigateToSyncWithBrowser(e,i,r){let o={replaceUrl:!0},s=r?.navigationId?r:null;if(r){let l=E({},r);delete l.navigationId,delete l.\u0275routerPageId,Object.keys(l).length!==0&&(o.state=l)}let a=this.parseUrl(e);this.scheduleNavigation(a,i,s,o)}get url(){return this.serializeUrl(this.currentUrlTree)}getCurrentNavigation(){return this.navigationTransitions.currentNavigation}get lastSuccessfulNavigation(){return this.navigationTransitions.lastSuccessfulNavigation}resetConfig(e){this.config=e.map(P0),this.navigated=!1}ngOnDestroy(){this.dispose()}dispose(){this._events.unsubscribe(),this.navigationTransitions.complete(),this.nonRouterCurrentEntryChangeSubscription&&(this.nonRouterCurrentEntryChangeSubscription.unsubscribe(),this.nonRouterCurrentEntryChangeSubscription=void 0),this.disposed=!0,this.eventsSubscription.unsubscribe()}createUrlTree(e,i={}){let{relativeTo:r,queryParams:o,fragment:s,queryParamsHandling:a,preserveFragment:l}=i,c=l?this.currentUrlTree.fragment:s,u=null;switch(a??this.options.defaultQueryParamsHandling){case"merge":u=E(E({},this.currentUrlTree.queryParams),o);break;case"preserve":u=this.currentUrlTree.queryParams;break;default:u=o||null}u!==null&&(u=this.removeEmptyProps(u));let m;try{let b=r?r.snapshot:this.routerState.snapshot.root;m=qT(b)}catch{(typeof e[0]!="string"||e[0][0]!=="/")&&(e=[]),m=this.currentUrlTree.root}return QT(m,e,u,c??null)}navigateByUrl(e,i={skipLocationChange:!1}){let r=Oo(e)?e:this.parseUrl(e),o=this.urlHandlingStrategy.merge(r,this.rawUrlTree);return this.scheduleNavigation(o,Ff,null,i)}navigate(e,i={skipLocationChange:!1}){return wH(e),this.navigateByUrl(this.createUrlTree(e,i),i)}serializeUrl(e){return this.urlSerializer.serialize(e)}parseUrl(e){try{return this.urlSerializer.parse(e)}catch{return this.urlSerializer.parse("/")}}isActive(e,i){let r;if(i===!0?r=E({},bH):i===!1?r=E({},CH):r=i,Oo(e))return xT(this.currentUrlTree,e,r);let o=this.parseUrl(e);return xT(this.currentUrlTree,o,r)}removeEmptyProps(e){return Object.entries(e).reduce((i,[r,o])=>(o!=null&&(i[r]=o),i),{})}scheduleNavigation(e,i,r,o,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((m,b)=>{a=m,l=b});let u=this.pendingTasks.add();return N0(this,()=>{queueMicrotask(()=>this.pendingTasks.remove(u))}),this.navigationTransitions.handleNavigationRequest({source:i,restoredState:r,currentUrlTree:this.currentUrlTree,currentRawUrl:this.currentUrlTree,rawUrl:e,extras:o,resolve:a,reject:l,promise:c,currentSnapshot:this.routerState.snapshot,currentRouterState:this.routerState}),c.catch(m=>Promise.reject(m))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();function wH(t){for(let n=0;n{class t{router;route;tabIndexAttribute;renderer;el;locationStrategy;href=null;target;queryParams;fragment;queryParamsHandling;state;info;relativeTo;isAnchorElement;subscription;onChanges=new X;constructor(e,i,r,o,s,a){this.router=e,this.route=i,this.tabIndexAttribute=r,this.renderer=o,this.el=s,this.locationStrategy=a;let l=s.nativeElement.tagName?.toLowerCase();this.isAnchorElement=l==="a"||l==="area",this.isAnchorElement?this.subscription=e.events.subscribe(c=>{c instanceof vr&&this.updateHref()}):this.setTabIndexIfNotOnNativeEl("0")}preserveFragment=!1;skipLocationChange=!1;replaceUrl=!1;setTabIndexIfNotOnNativeEl(e){this.tabIndexAttribute!=null||this.isAnchorElement||this.applyAttributeValue("tabindex",e)}ngOnChanges(e){this.isAnchorElement&&this.updateHref(),this.onChanges.next(this)}routerLinkInput=null;set routerLink(e){e==null?(this.routerLinkInput=null,this.setTabIndexIfNotOnNativeEl(null)):(Oo(e)?this.routerLinkInput=e:this.routerLinkInput=Array.isArray(e)?e:[e],this.setTabIndexIfNotOnNativeEl("0"))}onClick(e,i,r,o,s){let a=this.urlTree;if(a===null||this.isAnchorElement&&(e!==0||i||r||o||s||typeof this.target=="string"&&this.target!="_self"))return!0;let l={skipLocationChange:this.skipLocationChange,replaceUrl:this.replaceUrl,state:this.state,info:this.info};return this.router.navigateByUrl(a,l),!this.isAnchorElement}ngOnDestroy(){this.subscription?.unsubscribe()}updateHref(){let e=this.urlTree;this.href=e!==null&&this.locationStrategy?this.locationStrategy?.prepareExternalUrl(this.router.serializeUrl(e)):null;let i=this.href===null?null:IS(this.href,this.el.nativeElement.tagName.toLowerCase(),"href");this.applyAttributeValue("href",i)}applyAttributeValue(e,i){let r=this.renderer,o=this.el.nativeElement;i!==null?r.setAttribute(o,e,i):r.removeAttribute(o,e)}get urlTree(){return this.routerLinkInput===null?null:Oo(this.routerLinkInput)?this.routerLinkInput:this.router.createUrlTree(this.routerLinkInput,{relativeTo:this.relativeTo!==void 0?this.relativeTo:this.route,queryParams:this.queryParams,fragment:this.fragment,queryParamsHandling:this.queryParamsHandling,preserveFragment:this.preserveFragment})}static \u0275fac=function(i){return new(i||t)(y(sn),y(Gi),iv("tabindex"),y(ke),y($),y(Xa))};static \u0275dir=H({type:t,selectors:[["","routerLink",""]],hostVars:1,hostBindings:function(i,r){i&1&&D("click",function(s){return r.onClick(s.button,s.ctrlKey,s.shiftKey,s.altKey,s.metaKey)}),i&2&&J("target",r.target)},inputs:{target:"target",queryParams:"queryParams",fragment:"fragment",queryParamsHandling:"queryParamsHandling",state:"state",info:"info",relativeTo:"relativeTo",preserveFragment:[2,"preserveFragment","preserveFragment",Xe],skipLocationChange:[2,"skipLocationChange","skipLocationChange",Xe],replaceUrl:[2,"replaceUrl","replaceUrl",Xe],routerLink:"routerLink"},features:[xe]})}return t})();var SH=new B("");function L0(t,...n){return Do([{provide:Mu,multi:!0,useValue:t},[],{provide:Gi,useFactory:EH,deps:[sn]},{provide:Ov,multi:!0,useFactory:TH},n.map(e=>e.\u0275providers)])}function EH(t){return t.routerState.root}function TH(){let t=S(kt);return n=>{let e=t.get(kn);if(n!==e.components[0])return;let i=t.get(sn),r=t.get(IH);t.get(xH)===1&&i.initialNavigation(),t.get(kH,null,Ce.Optional)?.setUpPreloading(),t.get(SH,null,Ce.Optional)?.init(),i.resetRootComponentType(e.componentTypes[0]),r.closed||(r.next(),r.complete(),r.unsubscribe())}}var IH=new B("",{factory:()=>new X}),xH=new B("",{providedIn:"root",factory:()=>1});var kH=new B("");var TI=(()=>{class t{_renderer;_elementRef;onChange=e=>{};onTouched=()=>{};constructor(e,i){this._renderer=e,this._elementRef=i}setProperty(e,i){this._renderer.setProperty(this._elementRef.nativeElement,e,i)}registerOnTouched(e){this.onTouched=e}registerOnChange(e){this.onChange=e}setDisabledState(e){this.setProperty("disabled",e)}static \u0275fac=function(i){return new(i||t)(y(ke),y($))};static \u0275dir=H({type:t})}return t})(),_l=(()=>{class t extends TI{static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=H({type:t,features:[Ct]})}return t})(),It=new B(""),RH={provide:It,useExisting:He(()=>H0),multi:!0},H0=(()=>{class t extends _l{writeValue(e){this.setProperty("checked",e)}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=H({type:t,selectors:[["input","type","checkbox","formControlName",""],["input","type","checkbox","formControl",""],["input","type","checkbox","ngModel",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s.target.checked)})("blur",function(){return r.onTouched()})},standalone:!1,features:[ce([RH]),Ct]})}return t})(),OH={provide:It,useExisting:He(()=>en),multi:!0};function PH(){let t=yi()?yi().getUserAgent():"";return/android (\d+)/.test(t.toLowerCase())}var NH=new B(""),en=(()=>{class t extends TI{_compositionMode;_composing=!1;constructor(e,i,r){super(e,i),this._compositionMode=r,this._compositionMode==null&&(this._compositionMode=!PH())}writeValue(e){let i=e??"";this.setProperty("value",i)}_handleInput(e){(!this._compositionMode||this._compositionMode&&!this._composing)&&this.onChange(e)}_compositionStart(){this._composing=!0}_compositionEnd(e){this._composing=!1,this._compositionMode&&this.onChange(e)}static \u0275fac=function(i){return new(i||t)(y(ke),y($),y(NH,8))};static \u0275dir=H({type:t,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(i,r){i&1&&D("input",function(s){return r._handleInput(s.target.value)})("blur",function(){return r.onTouched()})("compositionstart",function(){return r._compositionStart()})("compositionend",function(s){return r._compositionEnd(s.target.value)})},standalone:!1,features:[ce([OH]),Ct]})}return t})();function B0(t){return t==null||U0(t)===0}function U0(t){return t==null?null:Array.isArray(t)||typeof t=="string"?t.length:t instanceof Set?t.size:null}var eo=new B(""),Ru=new B(""),LH=/^(?=.{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])?)*$/,Ci=class{static min(n){return FH(n)}static max(n){return VH(n)}static required(n){return II(n)}static requiredTrue(n){return jH(n)}static email(n){return HH(n)}static minLength(n){return BH(n)}static maxLength(n){return UH(n)}static pattern(n){return $H(n)}static nullValidator(n){return sp()}static compose(n){return PI(n)}static composeAsync(n){return NI(n)}};function FH(t){return n=>{if(n.value==null||t==null)return null;let e=parseFloat(n.value);return!isNaN(e)&&e{if(n.value==null||t==null)return null;let e=parseFloat(n.value);return!isNaN(e)&&e>t?{max:{max:t,actual:n.value}}:null}}function II(t){return B0(t.value)?{required:!0}:null}function jH(t){return t.value===!0?null:{required:!0}}function HH(t){return B0(t.value)||LH.test(t.value)?null:{email:!0}}function BH(t){return n=>{let e=n.value?.length??U0(n.value);return e===null||e===0?null:e{let e=n.value?.length??U0(n.value);return e!==null&&e>t?{maxlength:{requiredLength:t,actualLength:e}}:null}}function $H(t){if(!t)return sp;let n,e;return typeof t=="string"?(e="",t.charAt(0)!=="^"&&(e+="^"),e+=t,t.charAt(t.length-1)!=="$"&&(e+="$"),n=new RegExp(e)):(e=t.toString(),n=t),i=>{if(B0(i.value))return null;let r=i.value;return n.test(r)?null:{pattern:{requiredPattern:e,actualValue:r}}}}function sp(t){return null}function xI(t){return t!=null}function kI(t){return To(t)?Ke(t):t}function AI(t){let n={};return t.forEach(e=>{n=e!=null?E(E({},n),e):n}),Object.keys(n).length===0?null:n}function RI(t,n){return n.map(e=>e(t))}function YH(t){return!t.validate}function OI(t){return t.map(n=>YH(n)?n:e=>n.validate(e))}function PI(t){if(!t)return null;let n=t.filter(xI);return n.length==0?null:function(e){return AI(RI(e,n))}}function $0(t){return t!=null?PI(OI(t)):null}function NI(t){if(!t)return null;let n=t.filter(xI);return n.length==0?null:function(e){let i=RI(e,n).map(kI);return t_(i).pipe(G(AI))}}function Y0(t){return t!=null?NI(OI(t)):null}function vI(t,n){return t===null?[n]:Array.isArray(t)?[...t,n]:[t,n]}function LI(t){return t._rawValidators}function FI(t){return t._rawAsyncValidators}function F0(t){return t?Array.isArray(t)?t:[t]:[]}function ap(t,n){return Array.isArray(t)?t.includes(n):t===n}function bI(t,n){let e=F0(n);return F0(t).forEach(r=>{ap(e,r)||e.push(r)}),e}function CI(t,n){return F0(n).filter(e=>!ap(t,e))}var lp=class{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}_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators=[];_rawAsyncValidators=[];_setValidators(n){this._rawValidators=n||[],this._composedValidatorFn=$0(this._rawValidators)}_setAsyncValidators(n){this._rawAsyncValidators=n||[],this._composedAsyncValidatorFn=Y0(this._rawAsyncValidators)}get validator(){return this._composedValidatorFn||null}get asyncValidator(){return this._composedAsyncValidatorFn||null}_onDestroyCallbacks=[];_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,e){return this.control?this.control.hasError(n,e):!1}getError(n,e){return this.control?this.control.getError(n,e):null}},Xr=class extends lp{name;get formDirective(){return null}get path(){return null}},jn=class extends lp{_parent=null;name=null;valueAccessor=null},cp=class{_cd;constructor(n){this._cd=n}get isTouched(){return this._cd?.control?._touched?.(),!!this._cd?.control?.touched}get isUntouched(){return!!this._cd?.control?.untouched}get isPristine(){return this._cd?.control?._pristine?.(),!!this._cd?.control?.pristine}get isDirty(){return!!this._cd?.control?.dirty}get isValid(){return this._cd?.control?._status?.(),!!this._cd?.control?.valid}get isInvalid(){return!!this._cd?.control?.invalid}get isPending(){return!!this._cd?.control?.pending}get isSubmitted(){return this._cd?._submitted?.(),!!this._cd?.submitted}},zH={"[class.ng-untouched]":"isUntouched","[class.ng-touched]":"isTouched","[class.ng-pristine]":"isPristine","[class.ng-dirty]":"isDirty","[class.ng-valid]":"isValid","[class.ng-invalid]":"isInvalid","[class.ng-pending]":"isPending"},Pie=W(E({},zH),{"[class.ng-submitted]":"isSubmitted"}),Nt=(()=>{class t extends cp{constructor(e){super(e)}static \u0275fac=function(i){return new(i||t)(y(jn,2))};static \u0275dir=H({type:t,selectors:[["","formControlName",""],["","ngModel",""],["","formControl",""]],hostVars:14,hostBindings:function(i,r){i&2&&j("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)},standalone:!1,features:[Ct]})}return t})(),Cr=(()=>{class t extends cp{constructor(e){super(e)}static \u0275fac=function(i){return new(i||t)(y(Xr,10))};static \u0275dir=H({type:t,selectors:[["","formGroupName",""],["","formArrayName",""],["","ngModelGroup",""],["","formGroup",""],["form",3,"ngNoForm",""],["","ngForm",""]],hostVars:16,hostBindings:function(i,r){i&2&&j("ng-untouched",r.isUntouched)("ng-touched",r.isTouched)("ng-pristine",r.isPristine)("ng-dirty",r.isDirty)("ng-valid",r.isValid)("ng-invalid",r.isInvalid)("ng-pending",r.isPending)("ng-submitted",r.isSubmitted)},standalone:!1,features:[Ct]})}return t})();var Su="VALID",op="INVALID",pl="PENDING",Eu="DISABLED",No=class{},up=class extends No{value;source;constructor(n,e){super(),this.value=n,this.source=e}},Iu=class extends No{pristine;source;constructor(n,e){super(),this.pristine=n,this.source=e}},xu=class extends No{touched;source;constructor(n,e){super(),this.touched=n,this.source=e}},ml=class extends No{status;source;constructor(n,e){super(),this.status=n,this.source=e}},dp=class extends No{source;constructor(n){super(),this.source=n}},hp=class extends No{source;constructor(n){super(),this.source=n}};function z0(t){return(gp(t)?t.validators:t)||null}function WH(t){return Array.isArray(t)?$0(t):t||null}function W0(t,n){return(gp(n)?n.asyncValidators:t)||null}function GH(t){return Array.isArray(t)?Y0(t):t||null}function gp(t){return t!=null&&!Array.isArray(t)&&typeof t=="object"}function VI(t,n,e){let i=t.controls;if(!(n?Object.keys(i):i).length)throw new R(1e3,"");if(!i[e])throw new R(1001,"")}function jI(t,n,e){t._forEachChild((i,r)=>{if(e[r]===void 0)throw new R(1002,"")})}var gl=class{_pendingDirty=!1;_hasOwnPendingAsyncValidator=null;_pendingTouched=!1;_onCollectionChange=()=>{};_updateOn;_parent=null;_asyncValidationSubscription;_composedValidatorFn;_composedAsyncValidatorFn;_rawValidators;_rawAsyncValidators;value;constructor(n,e){this._assignValidators(n),this._assignAsyncValidators(e)}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 status(){return _i(this.statusReactive)}set status(n){_i(()=>this.statusReactive.set(n))}_status=$i(()=>this.statusReactive());statusReactive=ht(void 0);get valid(){return this.status===Su}get invalid(){return this.status===op}get pending(){return this.status==pl}get disabled(){return this.status===Eu}get enabled(){return this.status!==Eu}errors;get pristine(){return _i(this.pristineReactive)}set pristine(n){_i(()=>this.pristineReactive.set(n))}_pristine=$i(()=>this.pristineReactive());pristineReactive=ht(!0);get dirty(){return!this.pristine}get touched(){return _i(this.touchedReactive)}set touched(n){_i(()=>this.touchedReactive.set(n))}_touched=$i(()=>this.touchedReactive());touchedReactive=ht(!1);get untouched(){return!this.touched}_events=new X;events=this._events.asObservable();valueChanges;statusChanges;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(bI(n,this._rawValidators))}addAsyncValidators(n){this.setAsyncValidators(bI(n,this._rawAsyncValidators))}removeValidators(n){this.setValidators(CI(n,this._rawValidators))}removeAsyncValidators(n){this.setAsyncValidators(CI(n,this._rawAsyncValidators))}hasValidator(n){return ap(this._rawValidators,n)}hasAsyncValidator(n){return ap(this._rawAsyncValidators,n)}clearValidators(){this.validator=null}clearAsyncValidators(){this.asyncValidator=null}markAsTouched(n={}){let e=this.touched===!1;this.touched=!0;let i=n.sourceControl??this;this._parent&&!n.onlySelf&&this._parent.markAsTouched(W(E({},n),{sourceControl:i})),e&&n.emitEvent!==!1&&this._events.next(new xu(!0,i))}markAllAsTouched(n={}){this.markAsTouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:this}),this._forEachChild(e=>e.markAllAsTouched(n))}markAsUntouched(n={}){let e=this.touched===!0;this.touched=!1,this._pendingTouched=!1;let i=n.sourceControl??this;this._forEachChild(r=>{r.markAsUntouched({onlySelf:!0,emitEvent:n.emitEvent,sourceControl:i})}),this._parent&&!n.onlySelf&&this._parent._updateTouched(n,i),e&&n.emitEvent!==!1&&this._events.next(new xu(!1,i))}markAsDirty(n={}){let e=this.pristine===!0;this.pristine=!1;let i=n.sourceControl??this;this._parent&&!n.onlySelf&&this._parent.markAsDirty(W(E({},n),{sourceControl:i})),e&&n.emitEvent!==!1&&this._events.next(new Iu(!1,i))}markAsPristine(n={}){let e=this.pristine===!1;this.pristine=!0,this._pendingDirty=!1;let i=n.sourceControl??this;this._forEachChild(r=>{r.markAsPristine({onlySelf:!0,emitEvent:n.emitEvent})}),this._parent&&!n.onlySelf&&this._parent._updatePristine(n,i),e&&n.emitEvent!==!1&&this._events.next(new Iu(!0,i))}markAsPending(n={}){this.status=pl;let e=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new ml(this.status,e)),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.markAsPending(W(E({},n),{sourceControl:e}))}disable(n={}){let e=this._parentMarkedDirty(n.onlySelf);this.status=Eu,this.errors=null,this._forEachChild(r=>{r.disable(W(E({},n),{onlySelf:!0}))}),this._updateValue();let i=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new up(this.value,i)),this._events.next(new ml(this.status,i)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._updateAncestors(W(E({},n),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(r=>r(!0))}enable(n={}){let e=this._parentMarkedDirty(n.onlySelf);this.status=Su,this._forEachChild(i=>{i.enable(W(E({},n),{onlySelf:!0}))}),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent}),this._updateAncestors(W(E({},n),{skipPristineCheck:e}),this),this._onDisabledChange.forEach(i=>i(!1))}_updateAncestors(n,e){this._parent&&!n.onlySelf&&(this._parent.updateValueAndValidity(n),n.skipPristineCheck||this._parent._updatePristine({},e),this._parent._updateTouched({},e))}setParent(n){this._parent=n}getRawValue(){return this.value}updateValueAndValidity(n={}){if(this._setInitialStatus(),this._updateValue(),this.enabled){let i=this._cancelExistingSubscription();this.errors=this._runValidator(),this.status=this._calculateStatus(),(this.status===Su||this.status===pl)&&this._runAsyncValidator(i,n.emitEvent)}let e=n.sourceControl??this;n.emitEvent!==!1&&(this._events.next(new up(this.value,e)),this._events.next(new ml(this.status,e)),this.valueChanges.emit(this.value),this.statusChanges.emit(this.status)),this._parent&&!n.onlySelf&&this._parent.updateValueAndValidity(W(E({},n),{sourceControl:e}))}_updateTreeValidity(n={emitEvent:!0}){this._forEachChild(e=>e._updateTreeValidity(n)),this.updateValueAndValidity({onlySelf:!0,emitEvent:n.emitEvent})}_setInitialStatus(){this.status=this._allControlsDisabled()?Eu:Su}_runValidator(){return this.validator?this.validator(this):null}_runAsyncValidator(n,e){if(this.asyncValidator){this.status=pl,this._hasOwnPendingAsyncValidator={emitEvent:e!==!1};let i=kI(this.asyncValidator(this));this._asyncValidationSubscription=i.subscribe(r=>{this._hasOwnPendingAsyncValidator=null,this.setErrors(r,{emitEvent:e,shouldHaveEmitted:n})})}}_cancelExistingSubscription(){if(this._asyncValidationSubscription){this._asyncValidationSubscription.unsubscribe();let n=this._hasOwnPendingAsyncValidator?.emitEvent??!1;return this._hasOwnPendingAsyncValidator=null,n}return!1}setErrors(n,e={}){this.errors=n,this._updateControlsErrors(e.emitEvent!==!1,this,e.shouldHaveEmitted)}get(n){let e=n;return e==null||(Array.isArray(e)||(e=e.split(".")),e.length===0)?null:e.reduce((i,r)=>i&&i._find(r),this)}getError(n,e){let i=e?this.get(e):this;return i&&i.errors?i.errors[n]:null}hasError(n,e){return!!this.getError(n,e)}get root(){let n=this;for(;n._parent;)n=n._parent;return n}_updateControlsErrors(n,e,i){this.status=this._calculateStatus(),n&&this.statusChanges.emit(this.status),(n||i)&&this._events.next(new ml(this.status,e)),this._parent&&this._parent._updateControlsErrors(n,e,i)}_initObservables(){this.valueChanges=new P,this.statusChanges=new P}_calculateStatus(){return this._allControlsDisabled()?Eu:this.errors?op:this._hasOwnPendingAsyncValidator||this._anyControlsHaveStatus(pl)?pl:this._anyControlsHaveStatus(op)?op:Su}_anyControlsHaveStatus(n){return this._anyControls(e=>e.status===n)}_anyControlsDirty(){return this._anyControls(n=>n.dirty)}_anyControlsTouched(){return this._anyControls(n=>n.touched)}_updatePristine(n,e){let i=!this._anyControlsDirty(),r=this.pristine!==i;this.pristine=i,this._parent&&!n.onlySelf&&this._parent._updatePristine(n,e),r&&this._events.next(new Iu(this.pristine,e))}_updateTouched(n={},e){this.touched=this._anyControlsTouched(),this._events.next(new xu(this.touched,e)),this._parent&&!n.onlySelf&&this._parent._updateTouched(n,e)}_onDisabledChange=[];_registerOnCollectionChange(n){this._onCollectionChange=n}_setUpdateStrategy(n){gp(n)&&n.updateOn!=null&&(this._updateOn=n.updateOn)}_parentMarkedDirty(n){let e=this._parent&&this._parent.dirty;return!n&&!!e&&!this._parent._anyControlsDirty()}_find(n){return null}_assignValidators(n){this._rawValidators=Array.isArray(n)?n.slice():n,this._composedValidatorFn=WH(this._rawValidators)}_assignAsyncValidators(n){this._rawAsyncValidators=Array.isArray(n)?n.slice():n,this._composedAsyncValidatorFn=GH(this._rawAsyncValidators)}},Lo=class extends gl{constructor(n,e,i){super(z0(e),W0(i,e)),this.controls=n,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;registerControl(n,e){return this.controls[n]?this.controls[n]:(this.controls[n]=e,e.setParent(this),e._registerOnCollectionChange(this._onCollectionChange),e)}addControl(n,e,i={}){this.registerControl(n,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}removeControl(n,e={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}setControl(n,e,i={}){this.controls[n]&&this.controls[n]._registerOnCollectionChange(()=>{}),delete this.controls[n],e&&this.registerControl(n,e),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}contains(n){return this.controls.hasOwnProperty(n)&&this.controls[n].enabled}setValue(n,e={}){jI(this,!0,n),Object.keys(n).forEach(i=>{VI(this,!0,i),this.controls[i].setValue(n[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(n,e={}){n!=null&&(Object.keys(n).forEach(i=>{let r=this.controls[i];r&&r.patchValue(n[i],{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(n={},e={}){this._forEachChild((i,r)=>{i.reset(n?n[r]:null,{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this._reduceChildren({},(n,e,i)=>(n[i]=e.getRawValue(),n))}_syncPendingControls(){let n=this._reduceChildren(!1,(e,i)=>i._syncPendingControls()?!0:e);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){Object.keys(this.controls).forEach(e=>{let i=this.controls[e];i&&n(i,e)})}_setUpControls(){this._forEachChild(n=>{n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)})}_updateValue(){this.value=this._reduceValue()}_anyControls(n){for(let[e,i]of Object.entries(this.controls))if(this.contains(e)&&n(i))return!0;return!1}_reduceValue(){let n={};return this._reduceChildren(n,(e,i,r)=>((i.enabled||this.disabled)&&(e[r]=i.value),e))}_reduceChildren(n,e){let i=n;return this._forEachChild((r,o)=>{i=e(i,r,o)}),i}_allControlsDisabled(){for(let 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}};var V0=class extends Lo{};var Ls=new B("",{providedIn:"root",factory:()=>Ou}),Ou="always";function HI(t,n){return[...n.path,t]}function Au(t,n,e=Ou){G0(t,n),n.valueAccessor.writeValue(t.value),(t.disabled||e==="always")&&n.valueAccessor.setDisabledState?.(t.disabled),QH(t,n),KH(t,n),ZH(t,n),qH(t,n)}function fp(t,n,e=!0){let i=()=>{};n.valueAccessor&&(n.valueAccessor.registerOnChange(i),n.valueAccessor.registerOnTouched(i)),mp(t,n),t&&(n._invokeOnDestroyCallbacks(),t._registerOnCollectionChange(()=>{}))}function pp(t,n){t.forEach(e=>{e.registerOnValidatorChange&&e.registerOnValidatorChange(n)})}function qH(t,n){if(n.valueAccessor.setDisabledState){let e=i=>{n.valueAccessor.setDisabledState(i)};t.registerOnDisabledChange(e),n._registerOnDestroy(()=>{t._unregisterOnDisabledChange(e)})}}function G0(t,n){let e=LI(t);n.validator!==null?t.setValidators(vI(e,n.validator)):typeof e=="function"&&t.setValidators([e]);let i=FI(t);n.asyncValidator!==null?t.setAsyncValidators(vI(i,n.asyncValidator)):typeof i=="function"&&t.setAsyncValidators([i]);let r=()=>t.updateValueAndValidity();pp(n._rawValidators,r),pp(n._rawAsyncValidators,r)}function mp(t,n){let e=!1;if(t!==null){if(n.validator!==null){let r=LI(t);if(Array.isArray(r)&&r.length>0){let o=r.filter(s=>s!==n.validator);o.length!==r.length&&(e=!0,t.setValidators(o))}}if(n.asyncValidator!==null){let r=FI(t);if(Array.isArray(r)&&r.length>0){let o=r.filter(s=>s!==n.asyncValidator);o.length!==r.length&&(e=!0,t.setAsyncValidators(o))}}}let i=()=>{};return pp(n._rawValidators,i),pp(n._rawAsyncValidators,i),e}function QH(t,n){n.valueAccessor.registerOnChange(e=>{t._pendingValue=e,t._pendingChange=!0,t._pendingDirty=!0,t.updateOn==="change"&&BI(t,n)})}function ZH(t,n){n.valueAccessor.registerOnTouched(()=>{t._pendingTouched=!0,t.updateOn==="blur"&&t._pendingChange&&BI(t,n),t.updateOn!=="submit"&&t.markAsTouched()})}function BI(t,n){t._pendingDirty&&t.markAsDirty(),t.setValue(t._pendingValue,{emitModelToViewChange:!1}),n.viewToModelUpdate(t._pendingValue),t._pendingChange=!1}function KH(t,n){let e=(i,r)=>{n.valueAccessor.writeValue(i),r&&n.viewToModelUpdate(i)};t.registerOnChange(e),n._registerOnDestroy(()=>{t._unregisterOnChange(e)})}function UI(t,n){t==null,G0(t,n)}function JH(t,n){return mp(t,n)}function q0(t,n){if(!t.hasOwnProperty("model"))return!1;let e=t.model;return e.isFirstChange()?!0:!Object.is(n,e.currentValue)}function XH(t){return Object.getPrototypeOf(t.constructor)===_l}function $I(t,n){t._syncPendingControls(),n.forEach(e=>{let i=e.control;i.updateOn==="submit"&&i._pendingChange&&(e.viewToModelUpdate(i._pendingValue),i._pendingChange=!1)})}function Q0(t,n){if(!n)return null;Array.isArray(n);let e,i,r;return n.forEach(o=>{o.constructor===en?e=o:XH(o)?i=o:r=o}),r||i||e||null}function eB(t,n){let e=t.indexOf(n);e>-1&&t.splice(e,1)}var tB={provide:Xr,useExisting:He(()=>to)},Tu=Promise.resolve(),to=(()=>{class t extends Xr{callSetDisabledState;get submitted(){return _i(this.submittedReactive)}_submitted=$i(()=>this.submittedReactive());submittedReactive=ht(!1);_directives=new Set;form;ngSubmit=new P;options;constructor(e,i,r){super(),this.callSetDisabledState=r,this.form=new Lo({},$0(e),Y0(i))}ngAfterViewInit(){this._setUpdateStrategy()}get formDirective(){return this}get control(){return this.form}get path(){return[]}get controls(){return this.form.controls}addControl(e){Tu.then(()=>{let i=this._findContainer(e.path);e.control=i.registerControl(e.name,e.control),Au(e.control,e,this.callSetDisabledState),e.control.updateValueAndValidity({emitEvent:!1}),this._directives.add(e)})}getControl(e){return this.form.get(e.path)}removeControl(e){Tu.then(()=>{let i=this._findContainer(e.path);i&&i.removeControl(e.name),this._directives.delete(e)})}addFormGroup(e){Tu.then(()=>{let i=this._findContainer(e.path),r=new Lo({});UI(r,e),i.registerControl(e.name,r),r.updateValueAndValidity({emitEvent:!1})})}removeFormGroup(e){Tu.then(()=>{let i=this._findContainer(e.path);i&&i.removeControl(e.name)})}getFormGroup(e){return this.form.get(e.path)}updateModel(e,i){Tu.then(()=>{this.form.get(e.path).setValue(i)})}setValue(e){this.control.setValue(e)}onSubmit(e){return this.submittedReactive.set(!0),$I(this.form,this._directives),this.ngSubmit.emit(e),this.form._events.next(new dp(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this.submittedReactive.set(!1),this.form._events.next(new hp(this.form))}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.form._updateOn=this.options.updateOn)}_findContainer(e){return e.pop(),e.length?this.form.get(e):this.form}static \u0275fac=function(i){return new(i||t)(y(eo,10),y(Ru,10),y(Ls,8))};static \u0275dir=H({type:t,selectors:[["form",3,"ngNoForm","",3,"formGroup",""],["ng-form"],["","ngForm",""]],hostBindings:function(i,r){i&1&&D("submit",function(s){return r.onSubmit(s)})("reset",function(){return r.onReset()})},inputs:{options:[0,"ngFormOptions","options"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[ce([tB]),Ct]})}return t})();function wI(t,n){let e=t.indexOf(n);e>-1&&t.splice(e,1)}function DI(t){return typeof t=="object"&&t!==null&&Object.keys(t).length===2&&"value"in t&&"disabled"in t}var ku=class extends gl{defaultValue=null;_onChange=[];_pendingValue;_pendingChange=!1;constructor(n=null,e,i){super(z0(e),W0(i,e)),this._applyFormState(n),this._setUpdateStrategy(e),this._initObservables(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator}),gp(e)&&(e.nonNullable||e.initialValueIsDefault)&&(DI(n)?this.defaultValue=n.value:this.defaultValue=n)}setValue(n,e={}){this.value=this._pendingValue=n,this._onChange.length&&e.emitModelToViewChange!==!1&&this._onChange.forEach(i=>i(this.value,e.emitViewToModelChange!==!1)),this.updateValueAndValidity(e)}patchValue(n,e={}){this.setValue(n,e)}reset(n=this.defaultValue,e={}){this._applyFormState(n),this.markAsPristine(e),this.markAsUntouched(e),this.setValue(this.value,e),this._pendingChange=!1}_updateValue(){}_anyControls(n){return!1}_allControlsDisabled(){return this.disabled}registerOnChange(n){this._onChange.push(n)}_unregisterOnChange(n){wI(this._onChange,n)}registerOnDisabledChange(n){this._onDisabledChange.push(n)}_unregisterOnDisabledChange(n){wI(this._onDisabledChange,n)}_forEachChild(n){}_syncPendingControls(){return this.updateOn==="submit"&&(this._pendingDirty&&this.markAsDirty(),this._pendingTouched&&this.markAsTouched(),this._pendingChange)?(this.setValue(this._pendingValue,{onlySelf:!0,emitModelToViewChange:!1}),!0):!1}_applyFormState(n){DI(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}};var nB=t=>t instanceof ku;var iB={provide:jn,useExisting:He(()=>wn)},MI=Promise.resolve(),wn=(()=>{class t extends jn{_changeDetectorRef;callSetDisabledState;control=new ku;static ngAcceptInputType_isDisabled;_registered=!1;viewModel;name="";isDisabled;model;options;update=new P;constructor(e,i,r,o,s,a){super(),this._changeDetectorRef=s,this.callSetDisabledState=a,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=Q0(this,o)}ngOnChanges(e){if(this._checkForErrors(),!this._registered||"name"in e){if(this._registered&&(this._checkName(),this.formDirective)){let i=e.name.previousValue;this.formDirective.removeControl({name:i,path:this._getPath(i)})}this._setUpControl()}"isDisabled"in e&&this._updateDisabled(e),q0(e,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(e){this.viewModel=e,this.update.emit(e)}_setUpControl(){this._setUpdateStrategy(),this._isStandalone()?this._setUpStandalone():this.formDirective.addControl(this),this._registered=!0}_setUpdateStrategy(){this.options&&this.options.updateOn!=null&&(this.control._updateOn=this.options.updateOn)}_isStandalone(){return!this._parent||!!(this.options&&this.options.standalone)}_setUpStandalone(){Au(this.control,this,this.callSetDisabledState),this.control.updateValueAndValidity({emitEvent:!1})}_checkForErrors(){this._checkName()}_checkName(){this.options&&this.options.name&&(this.name=this.options.name),!this._isStandalone()&&this.name}_updateValue(e){MI.then(()=>{this.control.setValue(e,{emitViewToModelChange:!1}),this._changeDetectorRef?.markForCheck()})}_updateDisabled(e){let i=e.isDisabled.currentValue,r=i!==0&&Xe(i);MI.then(()=>{r&&!this.control.disabled?this.control.disable():!r&&this.control.disabled&&this.control.enable(),this._changeDetectorRef?.markForCheck()})}_getPath(e){return this._parent?HI(e,this._parent):[e]}static \u0275fac=function(i){return new(i||t)(y(Xr,9),y(eo,10),y(Ru,10),y(It,10),y(it,8),y(Ls,8))};static \u0275dir=H({type:t,selectors:[["","ngModel","",3,"formControlName","",3,"formControl",""]],inputs:{name:"name",isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"],options:[0,"ngModelOptions","options"]},outputs:{update:"ngModelChange"},exportAs:["ngModel"],standalone:!1,features:[ce([iB]),Ct,xe]})}return t})();var wr=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275dir=H({type:t,selectors:[["form",3,"ngNoForm","",3,"ngNativeValidate",""]],hostAttrs:["novalidate",""],standalone:!1})}return t})(),rB={provide:It,useExisting:He(()=>Z0),multi:!0},Z0=(()=>{class t extends _l{writeValue(e){let i=e??"";this.setProperty("value",i)}registerOnChange(e){this.onChange=i=>{e(i==""?null:parseFloat(i))}}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=H({type:t,selectors:[["input","type","number","formControlName",""],["input","type","number","formControl",""],["input","type","number","ngModel",""]],hostBindings:function(i,r){i&1&&D("input",function(s){return r.onChange(s.target.value)})("blur",function(){return r.onTouched()})},standalone:!1,features:[ce([rB]),Ct]})}return t})(),oB={provide:It,useExisting:He(()=>K0),multi:!0};var sB=(()=>{class t{_accessors=[];add(e,i){this._accessors.push([e,i])}remove(e){for(let i=this._accessors.length-1;i>=0;--i)if(this._accessors[i][1]===e){this._accessors.splice(i,1);return}}select(e){this._accessors.forEach(i=>{this._isSameGroup(i,e)&&i[1]!==e&&i[1].fireUncheck(e.value)})}_isSameGroup(e,i){return e[0].control?e[0]._parent===i._control._parent&&e[1].name===i.name:!1}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),K0=(()=>{class t extends _l{_registry;_injector;_state;_control;_fn;setDisabledStateFired=!1;onChange=()=>{};name;formControlName;value;callSetDisabledState=S(Ls,{optional:!0})??Ou;constructor(e,i,r,o){super(e,i),this._registry=r,this._injector=o}ngOnInit(){this._control=this._injector.get(jn),this._checkName(),this._registry.add(this._control,this)}ngOnDestroy(){this._registry.remove(this)}writeValue(e){this._state=e===this.value,this.setProperty("checked",this._state)}registerOnChange(e){this._fn=e,this.onChange=()=>{e(this.value),this._registry.select(this)}}setDisabledState(e){(this.setDisabledStateFired||e||this.callSetDisabledState==="whenDisabledForLegacyCode")&&this.setProperty("disabled",e),this.setDisabledStateFired=!0}fireUncheck(e){this.writeValue(e)}_checkName(){this.name&&this.formControlName&&(this.name,this.formControlName),!this.name&&this.formControlName&&(this.name=this.formControlName)}static \u0275fac=function(i){return new(i||t)(y(ke),y($),y(sB),y(kt))};static \u0275dir=H({type:t,selectors:[["input","type","radio","formControlName",""],["input","type","radio","formControl",""],["input","type","radio","ngModel",""]],hostBindings:function(i,r){i&1&&D("change",function(){return r.onChange()})("blur",function(){return r.onTouched()})},inputs:{name:"name",formControlName:"formControlName",value:"value"},standalone:!1,features:[ce([oB]),Ct]})}return t})();var J0=new B(""),aB={provide:jn,useExisting:He(()=>Fs)},Fs=(()=>{class t extends jn{_ngModelWarningConfig;callSetDisabledState;viewModel;form;set isDisabled(e){}model;update=new P;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,r,o,s){super(),this._ngModelWarningConfig=o,this.callSetDisabledState=s,this._setValidators(e),this._setAsyncValidators(i),this.valueAccessor=Q0(this,r)}ngOnChanges(e){if(this._isControlChanged(e)){let i=e.form.previousValue;i&&fp(i,this,!1),Au(this.form,this,this.callSetDisabledState),this.form.updateValueAndValidity({emitEvent:!1})}q0(e,this.viewModel)&&(this.form.setValue(this.model),this.viewModel=this.model)}ngOnDestroy(){this.form&&fp(this.form,this,!1)}get path(){return[]}get control(){return this.form}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}_isControlChanged(e){return e.hasOwnProperty("form")}static \u0275fac=function(i){return new(i||t)(y(eo,10),y(Ru,10),y(It,10),y(J0,8),y(Ls,8))};static \u0275dir=H({type:t,selectors:[["","formControl",""]],inputs:{form:[0,"formControl","form"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},exportAs:["ngForm"],standalone:!1,features:[ce([aB]),Ct,xe]})}return t})(),lB={provide:Xr,useExisting:He(()=>X0)},X0=(()=>{class t extends Xr{callSetDisabledState;get submitted(){return _i(this._submittedReactive)}set submitted(e){this._submittedReactive.set(e)}_submitted=$i(()=>this._submittedReactive());_submittedReactive=ht(!1);_oldForm;_onCollectionChange=()=>this._updateDomValue();directives=[];form=null;ngSubmit=new P;constructor(e,i,r){super(),this.callSetDisabledState=r,this._setValidators(e),this._setAsyncValidators(i)}ngOnChanges(e){e.hasOwnProperty("form")&&(this._updateValidators(),this._updateDomValue(),this._updateRegistrations(),this._oldForm=this.form)}ngOnDestroy(){this.form&&(mp(this.form,this),this.form._onCollectionChange===this._onCollectionChange&&this.form._registerOnCollectionChange(()=>{}))}get formDirective(){return this}get control(){return this.form}get path(){return[]}addControl(e){let i=this.form.get(e.path);return Au(i,e,this.callSetDisabledState),i.updateValueAndValidity({emitEvent:!1}),this.directives.push(e),i}getControl(e){return this.form.get(e.path)}removeControl(e){fp(e.control||null,e,!1),eB(this.directives,e)}addFormGroup(e){this._setUpFormContainer(e)}removeFormGroup(e){this._cleanUpFormContainer(e)}getFormGroup(e){return this.form.get(e.path)}addFormArray(e){this._setUpFormContainer(e)}removeFormArray(e){this._cleanUpFormContainer(e)}getFormArray(e){return this.form.get(e.path)}updateModel(e,i){this.form.get(e.path).setValue(i)}onSubmit(e){return this._submittedReactive.set(!0),$I(this.form,this.directives),this.ngSubmit.emit(e),this.form._events.next(new dp(this.control)),e?.target?.method==="dialog"}onReset(){this.resetForm()}resetForm(e=void 0){this.form.reset(e),this._submittedReactive.set(!1),this.form._events.next(new hp(this.form))}_updateDomValue(){this.directives.forEach(e=>{let i=e.control,r=this.form.get(e.path);i!==r&&(fp(i||null,e),nB(r)&&(Au(r,e,this.callSetDisabledState),e.control=r))}),this.form._updateTreeValidity({emitEvent:!1})}_setUpFormContainer(e){let i=this.form.get(e.path);UI(i,e),i.updateValueAndValidity({emitEvent:!1})}_cleanUpFormContainer(e){if(this.form){let i=this.form.get(e.path);i&&JH(i,e)&&i.updateValueAndValidity({emitEvent:!1})}}_updateRegistrations(){this.form._registerOnCollectionChange(this._onCollectionChange),this._oldForm&&this._oldForm._registerOnCollectionChange(()=>{})}_updateValidators(){G0(this.form,this),this._oldForm&&mp(this._oldForm,this)}static \u0275fac=function(i){return new(i||t)(y(eo,10),y(Ru,10),y(Ls,8))};static \u0275dir=H({type:t,selectors:[["","formGroup",""]],hostBindings:function(i,r){i&1&&D("submit",function(s){return r.onSubmit(s)})("reset",function(){return r.onReset()})},inputs:{form:[0,"formGroup","form"]},outputs:{ngSubmit:"ngSubmit"},exportAs:["ngForm"],standalone:!1,features:[ce([lB]),Ct,xe]})}return t})();var cB={provide:jn,useExisting:He(()=>eb)},eb=(()=>{class t extends jn{_ngModelWarningConfig;_added=!1;viewModel;control;name=null;set isDisabled(e){}model;update=new P;static _ngModelWarningSentOnce=!1;_ngModelWarningSent=!1;constructor(e,i,r,o,s){super(),this._ngModelWarningConfig=s,this._parent=e,this._setValidators(i),this._setAsyncValidators(r),this.valueAccessor=Q0(this,o)}ngOnChanges(e){this._added||this._setUpControl(),q0(e,this.viewModel)&&(this.viewModel=this.model,this.formDirective.updateModel(this,this.model))}ngOnDestroy(){this.formDirective&&this.formDirective.removeControl(this)}viewToModelUpdate(e){this.viewModel=e,this.update.emit(e)}get path(){return HI(this.name==null?this.name:this.name.toString(),this._parent)}get formDirective(){return this._parent?this._parent.formDirective:null}_setUpControl(){this.control=this.formDirective.addControl(this),this._added=!0}static \u0275fac=function(i){return new(i||t)(y(Xr,13),y(eo,10),y(Ru,10),y(It,10),y(J0,8))};static \u0275dir=H({type:t,selectors:[["","formControlName",""]],inputs:{name:[0,"formControlName","name"],isDisabled:[0,"disabled","isDisabled"],model:[0,"ngModel","model"]},outputs:{update:"ngModelChange"},standalone:!1,features:[ce([cB]),Ct,xe]})}return t})();var uB={provide:It,useExisting:He(()=>_p),multi:!0};function YI(t,n){return t==null?`${n}`:(n&&typeof n=="object"&&(n="Object"),`${t}: ${n}`.slice(0,50))}function dB(t){return t.split(":")[0]}var _p=(()=>{class t extends _l{value;_optionMap=new Map;_idCounter=0;set compareWith(e){this._compareWith=e}_compareWith=Object.is;writeValue(e){this.value=e;let i=this._getOptionId(e),r=YI(i,e);this.setProperty("value",r)}registerOnChange(e){this.onChange=i=>{this.value=this._getOptionValue(i),e(this.value)}}_registerOption(){return(this._idCounter++).toString()}_getOptionId(e){for(let i of this._optionMap.keys())if(this._compareWith(this._optionMap.get(i),e))return i;return null}_getOptionValue(e){let i=dB(e);return this._optionMap.has(i)?this._optionMap.get(i):e}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=H({type:t,selectors:[["select","formControlName","",3,"multiple",""],["select","formControl","",3,"multiple",""],["select","ngModel","",3,"multiple",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s.target.value)})("blur",function(){return r.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[ce([uB]),Ct]})}return t})(),zI=(()=>{class t{_element;_renderer;_select;id;constructor(e,i,r){this._element=e,this._renderer=i,this._select=r,this._select&&(this.id=this._select._registerOption())}set ngValue(e){this._select!=null&&(this._select._optionMap.set(this.id,e),this._setElementValue(YI(this.id,e)),this._select.writeValue(this._select.value))}set value(e){this._setElementValue(e),this._select&&this._select.writeValue(this._select.value)}_setElementValue(e){this._renderer.setProperty(this._element.nativeElement,"value",e)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static \u0275fac=function(i){return new(i||t)(y($),y(ke),y(_p,9))};static \u0275dir=H({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return t})(),hB={provide:It,useExisting:He(()=>WI),multi:!0};function SI(t,n){return t==null?`${n}`:(typeof n=="string"&&(n=`'${n}'`),n&&typeof n=="object"&&(n="Object"),`${t}: ${n}`.slice(0,50))}function fB(t){return t.split(":")[0]}var WI=(()=>{class t extends _l{value;_optionMap=new Map;_idCounter=0;set compareWith(e){this._compareWith=e}_compareWith=Object.is;writeValue(e){this.value=e;let i;if(Array.isArray(e)){let r=e.map(o=>this._getOptionId(o));i=(o,s)=>{o._setSelected(r.indexOf(s.toString())>-1)}}else i=(r,o)=>{r._setSelected(!1)};this._optionMap.forEach(i)}registerOnChange(e){this.onChange=i=>{let r=[],o=i.selectedOptions;if(o!==void 0){let s=o;for(let a=0;a{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=H({type:t,selectors:[["select","multiple","","formControlName",""],["select","multiple","","formControl",""],["select","multiple","","ngModel",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s.target)})("blur",function(){return r.onTouched()})},inputs:{compareWith:"compareWith"},standalone:!1,features:[ce([hB]),Ct]})}return t})(),GI=(()=>{class t{_element;_renderer;_select;id;_value;constructor(e,i,r){this._element=e,this._renderer=i,this._select=r,this._select&&(this.id=this._select._registerOption(this))}set ngValue(e){this._select!=null&&(this._value=e,this._setElementValue(SI(this.id,e)),this._select.writeValue(this._select.value))}set value(e){this._select?(this._value=e,this._setElementValue(SI(this.id,e)),this._select.writeValue(this._select.value)):this._setElementValue(e)}_setElementValue(e){this._renderer.setProperty(this._element.nativeElement,"value",e)}_setSelected(e){this._renderer.setProperty(this._element.nativeElement,"selected",e)}ngOnDestroy(){this._select&&(this._select._optionMap.delete(this.id),this._select.writeValue(this._select.value))}static \u0275fac=function(i){return new(i||t)(y($),y(ke),y(WI,9))};static \u0275dir=H({type:t,selectors:[["option"]],inputs:{ngValue:"ngValue",value:"value"},standalone:!1})}return t})();var pB=(()=>{class t{_validator=sp;_onChange;_enabled;ngOnChanges(e){if(this.inputName in e){let i=this.normalizeInput(e[this.inputName].currentValue);this._enabled=this.enabled(i),this._validator=this._enabled?this.createValidator(i):sp,this._onChange&&this._onChange()}}validate(e){return this._validator(e)}registerOnValidatorChange(e){this._onChange=e}enabled(e){return e!=null}static \u0275fac=function(i){return new(i||t)};static \u0275dir=H({type:t,features:[xe]})}return t})();var mB={provide:eo,useExisting:He(()=>tb),multi:!0};var tb=(()=>{class t extends pB{required;inputName="required";normalizeInput=Xe;createValidator=e=>II;enabled(e){return e}static \u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})();static \u0275dir=H({type:t,selectors:[["","required","","formControlName","",3,"type","checkbox"],["","required","","formControl","",3,"type","checkbox"],["","required","","ngModel","",3,"type","checkbox"]],hostVars:1,hostBindings:function(i,r){i&2&&J("required",r._enabled?"":null)},inputs:{required:"required"},standalone:!1,features:[ce([mB]),Ct]})}return t})();var qI=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=be({type:t});static \u0275inj=ve({})}return t})(),j0=class extends gl{constructor(n,e,i){super(z0(e),W0(i,e)),this.controls=n,this._initObservables(),this._setUpdateStrategy(e),this._setUpControls(),this.updateValueAndValidity({onlySelf:!0,emitEvent:!!this.asyncValidator})}controls;at(n){return this.controls[this._adjustIndex(n)]}push(n,e={}){this.controls.push(n),this._registerControl(n),this.updateValueAndValidity({emitEvent:e.emitEvent}),this._onCollectionChange()}insert(n,e,i={}){this.controls.splice(n,0,e),this._registerControl(e),this.updateValueAndValidity({emitEvent:i.emitEvent})}removeAt(n,e={}){let i=this._adjustIndex(n);i<0&&(i=0),this.controls[i]&&this.controls[i]._registerOnCollectionChange(()=>{}),this.controls.splice(i,1),this.updateValueAndValidity({emitEvent:e.emitEvent})}setControl(n,e,i={}){let r=this._adjustIndex(n);r<0&&(r=0),this.controls[r]&&this.controls[r]._registerOnCollectionChange(()=>{}),this.controls.splice(r,1),e&&(this.controls.splice(r,0,e),this._registerControl(e)),this.updateValueAndValidity({emitEvent:i.emitEvent}),this._onCollectionChange()}get length(){return this.controls.length}setValue(n,e={}){jI(this,!1,n),n.forEach((i,r)=>{VI(this,!1,r),this.at(r).setValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e)}patchValue(n,e={}){n!=null&&(n.forEach((i,r)=>{this.at(r)&&this.at(r).patchValue(i,{onlySelf:!0,emitEvent:e.emitEvent})}),this.updateValueAndValidity(e))}reset(n=[],e={}){this._forEachChild((i,r)=>{i.reset(n[r],{onlySelf:!0,emitEvent:e.emitEvent})}),this._updatePristine(e,this),this._updateTouched(e,this),this.updateValueAndValidity(e)}getRawValue(){return this.controls.map(n=>n.getRawValue())}clear(n={}){this.controls.length<1||(this._forEachChild(e=>e._registerOnCollectionChange(()=>{})),this.controls.splice(0),this.updateValueAndValidity({emitEvent:n.emitEvent}))}_adjustIndex(n){return n<0?n+this.length:n}_syncPendingControls(){let n=this.controls.reduce((e,i)=>i._syncPendingControls()?!0:e,!1);return n&&this.updateValueAndValidity({onlySelf:!0}),n}_forEachChild(n){this.controls.forEach((e,i)=>{n(e,i)})}_updateValue(){this.value=this.controls.filter(n=>n.enabled||this.disabled).map(n=>n.value)}_anyControls(n){return this.controls.some(e=>e.enabled&&n(e))}_setUpControls(){this._forEachChild(n=>this._registerControl(n))}_allControlsDisabled(){for(let n of this.controls)if(n.enabled)return!1;return this.controls.length>0||this.disabled}_registerControl(n){n.setParent(this),n._registerOnCollectionChange(this._onCollectionChange)}_find(n){return this.at(n)??null}};function EI(t){return!!t&&(t.asyncValidators!==void 0||t.validators!==void 0||t.updateOn!==void 0)}var QI=(()=>{class t{useNonNullable=!1;get nonNullable(){let e=new t;return e.useNonNullable=!0,e}group(e,i=null){let r=this._reduceControls(e),o={};return EI(i)?o=i:i!==null&&(o.validators=i.validator,o.asyncValidators=i.asyncValidator),new Lo(r,o)}record(e,i=null){let r=this._reduceControls(e);return new V0(r,i)}control(e,i,r){let o={};return this.useNonNullable?(EI(i)?o=i:(o.validators=i,o.asyncValidators=r),new ku(e,W(E({},o),{nonNullable:!0}))):new ku(e,i,r)}array(e,i,r){let o=e.map(s=>this._createControl(s));return new j0(o,i,r)}_reduceControls(e){let i={};return Object.keys(e).forEach(r=>{i[r]=this._createControl(e[r])}),i}_createControl(e){if(e instanceof ku)return e;if(e instanceof gl)return e;if(Array.isArray(e)){let i=e[0],r=e.length>1?e[1]:null,o=e.length>2?e[2]:null;return this.control(i,r,o)}else return this.control(e)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Hn=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:Ls,useValue:e.callSetDisabledState??Ou}]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=be({type:t});static \u0275inj=ve({imports:[qI]})}return t})(),yl=(()=>{class t{static withConfig(e){return{ngModule:t,providers:[{provide:J0,useValue:e.warnOnNgModelWithFormControl??"always"},{provide:Ls,useValue:e.callSetDisabledState??Ou}]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=be({type:t});static \u0275inj=ve({imports:[qI]})}return t})();var Yt={production:!0,apiUrl:"api/",hubsUrl:"hubs/"};function Vs(t,n){n.set({items:t.body,pagination:JSON.parse(t.headers.get("Pagination"))})}function vl(t,n){let e=new zi;return t&&n&&(e=e.append("pageNumber",t),e=e.append("pageSize",n)),e}var Fo=class t{baseUrl=Yt.apiUrl;http=S(Fn);likeIds=ht([]);paginatedResult=ht(null);toggleLike(n){return this.http.post(`${this.baseUrl}likes/${n}`,{})}getLikes(n,e,i){let r=vl(e,i);return r=r.append("predicate",n),this.http.get(`${this.baseUrl}likes`,{observe:"response",params:r}).subscribe({next:o=>Vs(o,this.paginatedResult)})}getLikeIds(){return this.http.get(`${this.baseUrl}likes/list`).subscribe({next:n=>this.likeIds.set(n)})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})};var ei=class extends Error{constructor(n,e){let i=new.target.prototype;super(`${n}: Status code '${e}'`),this.statusCode=e,this.__proto__=i}},Vo=class extends Error{constructor(n="A timeout occurred."){let e=new.target.prototype;super(n),this.__proto__=e}},tn=class extends Error{constructor(n="An abort occurred."){let e=new.target.prototype;super(n),this.__proto__=e}},yp=class extends Error{constructor(n,e){let i=new.target.prototype;super(n),this.transport=e,this.errorType="UnsupportedTransportError",this.__proto__=i}},vp=class extends Error{constructor(n,e){let i=new.target.prototype;super(n),this.transport=e,this.errorType="DisabledTransportError",this.__proto__=i}},bp=class extends Error{constructor(n,e){let i=new.target.prototype;super(n),this.transport=e,this.errorType="FailedToStartTransportError",this.__proto__=i}},Pu=class extends Error{constructor(n){let e=new.target.prototype;super(n),this.errorType="FailedToNegotiateWithServerError",this.__proto__=e}},Cp=class extends Error{constructor(n,e){let i=new.target.prototype;super(n),this.innerErrors=e,this.__proto__=i}};var bl=class{constructor(n,e,i){this.statusCode=n,this.statusText=e,this.content=i}},Mr=class{get(n,e){return this.send(W(E({},e),{method:"GET",url:n}))}post(n,e){return this.send(W(E({},e),{method:"POST",url:n}))}delete(n,e){return this.send(W(E({},e),{method:"DELETE",url:n}))}getCookieString(n){return""}};var k=function(t){return t[t.Trace=0]="Trace",t[t.Debug=1]="Debug",t[t.Information=2]="Information",t[t.Warning=3]="Warning",t[t.Error=4]="Error",t[t.Critical=5]="Critical",t[t.None=6]="None",t}(k||{});var Sr=class{constructor(){}log(n,e){}};Sr.instance=new Sr;var gB="8.0.7",Ye=class{static isRequired(n,e){if(n==null)throw new Error(`The '${e}' argument is required.`)}static isNotEmpty(n,e){if(!n||n.match(/^\s*$/))throw new Error(`The '${e}' argument should not be empty.`)}static isIn(n,e,i){if(!(n in e))throw new Error(`Unknown ${i} value: ${n}.`)}},Qe=class t{static get isBrowser(){return!t.isNode&&typeof window=="object"&&typeof window.document=="object"}static get isWebWorker(){return!t.isNode&&typeof self=="object"&&"importScripts"in self}static get isReactNative(){return!t.isNode&&typeof window=="object"&&typeof window.document>"u"}static get isNode(){return typeof process<"u"&&process.release&&process.release.name==="node"}};function jo(t,n){let e="";return qi(t)?(e=`Binary data of length ${t.byteLength}`,n&&(e+=`. Content: '${_B(t)}'`)):typeof t=="string"&&(e=`String data of length ${t.length}`,n&&(e+=`. Content: '${t}'`)),e}function _B(t){let n=new Uint8Array(t),e="";return n.forEach(i=>{let r=i<16?"0":"";e+=`0x${r}${i.toString(16)} `}),e.substr(0,e.length-1)}function qi(t){return t&&typeof ArrayBuffer<"u"&&(t instanceof ArrayBuffer||t.constructor&&t.constructor.name==="ArrayBuffer")}function Dp(t,n,e,i,r,o){return me(this,null,function*(){let s={},[a,l]=Er();s[a]=l,t.log(k.Trace,`(${n} transport) sending data. ${jo(r,o.logMessageContent)}.`);let c=qi(r)?"arraybuffer":"text",u=yield e.post(i,{content:r,headers:E(E({},s),o.headers),responseType:c,timeout:o.timeout,withCredentials:o.withCredentials});t.log(k.Trace,`(${n} transport) request complete. Response status: ${u.statusCode}.`)})}function ZI(t){return t===void 0?new js(k.Information):t===null?Sr.instance:t.log!==void 0?t:new js(t)}var wp=class{constructor(n,e){this._subject=n,this._observer=e}dispose(){let n=this._subject.observers.indexOf(this._observer);n>-1&&this._subject.observers.splice(n,1),this._subject.observers.length===0&&this._subject.cancelCallback&&this._subject.cancelCallback().catch(e=>{})}},js=class{constructor(n){this._minLevel=n,this.out=console}log(n,e){if(n>=this._minLevel){let i=`[${new Date().toISOString()}] ${k[n]}: ${e}`;switch(n){case k.Critical:case k.Error:this.out.error(i);break;case k.Warning:this.out.warn(i);break;case k.Information:this.out.info(i);break;default:this.out.log(i);break}}}};function Er(){let t="X-SignalR-User-Agent";return Qe.isNode&&(t="User-Agent"),[t,yB(gB,vB(),CB(),bB())]}function yB(t,n,e,i){let r="Microsoft SignalR/",o=t.split(".");return r+=`${o[0]}.${o[1]}`,r+=` (${t}; `,n&&n!==""?r+=`${n}; `:r+="Unknown OS; ",r+=`${e}`,i?r+=`; ${i}`:r+="; Unknown Runtime Version",r+=")",r}function vB(){if(Qe.isNode)switch(process.platform){case"win32":return"Windows NT";case"darwin":return"macOS";case"linux":return"Linux";default:return process.platform}else return""}function bB(){if(Qe.isNode)return process.versions.node}function CB(){return Qe.isNode?"NodeJS":"Browser"}function Mp(t){return t.stack?t.stack:t.message?t.message:`${t}`}function KI(){if(typeof globalThis<"u")return globalThis;if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw new Error("could not find global")}var Sp=class extends Mr{constructor(n){if(super(),this._logger=n,typeof fetch>"u"||Qe.isNode){let e=typeof __webpack_require__=="function"?__non_webpack_require__:fa;this._jar=new(e("tough-cookie")).CookieJar,typeof fetch>"u"?this._fetchType=e("node-fetch"):this._fetchType=fetch,this._fetchType=e("fetch-cookie")(this._fetchType,this._jar)}else this._fetchType=fetch.bind(KI());if(typeof AbortController>"u"){let e=typeof __webpack_require__=="function"?__non_webpack_require__:fa;this._abortControllerType=e("abort-controller")}else this._abortControllerType=AbortController}send(n){return me(this,null,function*(){if(n.abortSignal&&n.abortSignal.aborted)throw new tn;if(!n.method)throw new Error("No method defined.");if(!n.url)throw new Error("No url defined.");let e=new this._abortControllerType,i;n.abortSignal&&(n.abortSignal.onabort=()=>{e.abort(),i=new tn});let r=null;if(n.timeout){let l=n.timeout;r=setTimeout(()=>{e.abort(),this._logger.log(k.Warning,"Timeout from HTTP request."),i=new Vo},l)}n.content===""&&(n.content=void 0),n.content&&(n.headers=n.headers||{},qi(n.content)?n.headers["Content-Type"]="application/octet-stream":n.headers["Content-Type"]="text/plain;charset=UTF-8");let o;try{o=yield this._fetchType(n.url,{body:n.content,cache:"no-cache",credentials:n.withCredentials===!0?"include":"same-origin",headers:E({"X-Requested-With":"XMLHttpRequest"},n.headers),method:n.method,mode:"cors",redirect:"follow",signal:e.signal})}catch(l){throw i||(this._logger.log(k.Warning,`Error from HTTP request. ${l}.`),l)}finally{r&&clearTimeout(r),n.abortSignal&&(n.abortSignal.onabort=null)}if(!o.ok){let l=yield JI(o,"text");throw new ei(l||o.statusText,o.status)}let a=yield JI(o,n.responseType);return new bl(o.status,o.statusText,a)})}getCookieString(n){let e="";return Qe.isNode&&this._jar&&this._jar.getCookies(n,(i,r)=>e=r.join("; ")),e}};function JI(t,n){let e;switch(n){case"arraybuffer":e=t.arrayBuffer();break;case"text":e=t.text();break;case"blob":case"document":case"json":throw new Error(`${n} is not supported.`);default:e=t.text();break}return e}var Ep=class extends Mr{constructor(n){super(),this._logger=n}send(n){return n.abortSignal&&n.abortSignal.aborted?Promise.reject(new tn):n.method?n.url?new Promise((e,i)=>{let r=new XMLHttpRequest;r.open(n.method,n.url,!0),r.withCredentials=n.withCredentials===void 0?!0:n.withCredentials,r.setRequestHeader("X-Requested-With","XMLHttpRequest"),n.content===""&&(n.content=void 0),n.content&&(qi(n.content)?r.setRequestHeader("Content-Type","application/octet-stream"):r.setRequestHeader("Content-Type","text/plain;charset=UTF-8"));let o=n.headers;o&&Object.keys(o).forEach(s=>{r.setRequestHeader(s,o[s])}),n.responseType&&(r.responseType=n.responseType),n.abortSignal&&(n.abortSignal.onabort=()=>{r.abort(),i(new tn)}),n.timeout&&(r.timeout=n.timeout),r.onload=()=>{n.abortSignal&&(n.abortSignal.onabort=null),r.status>=200&&r.status<300?e(new bl(r.status,r.statusText,r.response||r.responseText)):i(new ei(r.response||r.responseText||r.statusText,r.status))},r.onerror=()=>{this._logger.log(k.Warning,`Error from HTTP request. ${r.status}: ${r.statusText}.`),i(new ei(r.statusText,r.status))},r.ontimeout=()=>{this._logger.log(k.Warning,"Timeout from HTTP request."),i(new Vo)},r.send(n.content)}):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))}};var Tp=class extends Mr{constructor(n){if(super(),typeof fetch<"u"||Qe.isNode)this._httpClient=new Sp(n);else if(typeof XMLHttpRequest<"u")this._httpClient=new Ep(n);else throw new Error("No usable HttpClient found.")}send(n){return n.abortSignal&&n.abortSignal.aborted?Promise.reject(new tn):n.method?n.url?this._httpClient.send(n):Promise.reject(new Error("No url defined.")):Promise.reject(new Error("No method defined."))}getCookieString(n){return this._httpClient.getCookieString(n)}};var ti=class t{static write(n){return`${n}${t.RecordSeparator}`}static parse(n){if(n[n.length-1]!==t.RecordSeparator)throw new Error("Message is incomplete.");let e=n.split(t.RecordSeparator);return e.pop(),e}};ti.RecordSeparatorCode=30;ti.RecordSeparator=String.fromCharCode(ti.RecordSeparatorCode);var Ip=class{writeHandshakeRequest(n){return ti.write(JSON.stringify(n))}parseHandshakeResponse(n){let e,i;if(qi(n)){let a=new Uint8Array(n),l=a.indexOf(ti.RecordSeparatorCode);if(l===-1)throw new Error("Message is incomplete.");let c=l+1;e=String.fromCharCode.apply(null,Array.prototype.slice.call(a.slice(0,c))),i=a.byteLength>c?a.slice(c).buffer:null}else{let a=n,l=a.indexOf(ti.RecordSeparator);if(l===-1)throw new Error("Message is incomplete.");let c=l+1;e=a.substring(0,c),i=a.length>c?a.substring(c):null}let r=ti.parse(e),o=JSON.parse(r[0]);if(o.type)throw new Error("Expected a handshake response from the server.");return[i,o]}};var oe=function(t){return t[t.Invocation=1]="Invocation",t[t.StreamItem=2]="StreamItem",t[t.Completion=3]="Completion",t[t.StreamInvocation=4]="StreamInvocation",t[t.CancelInvocation=5]="CancelInvocation",t[t.Ping=6]="Ping",t[t.Close=7]="Close",t[t.Ack=8]="Ack",t[t.Sequence=9]="Sequence",t}(oe||{});var xp=class{constructor(){this.observers=[]}next(n){for(let e of this.observers)e.next(n)}error(n){for(let e of this.observers)e.error&&e.error(n)}complete(){for(let n of this.observers)n.complete&&n.complete()}subscribe(n){return this.observers.push(n),new wp(this,n)}};var kp=class{constructor(n,e,i){this._bufferSize=1e5,this._messages=[],this._totalMessageCount=0,this._waitForSequenceMessage=!1,this._nextReceivingSequenceId=1,this._latestReceivedSequenceId=0,this._bufferedByteCount=0,this._reconnectInProgress=!1,this._protocol=n,this._connection=e,this._bufferSize=i}_send(n){return me(this,null,function*(){let e=this._protocol.writeMessage(n),i=Promise.resolve();if(this._isInvocationMessage(n)){this._totalMessageCount++;let r=()=>{},o=()=>{};qi(e)?this._bufferedByteCount+=e.byteLength:this._bufferedByteCount+=e.length,this._bufferedByteCount>=this._bufferSize&&(i=new Promise((s,a)=>{r=s,o=a})),this._messages.push(new nb(e,this._totalMessageCount,r,o))}try{this._reconnectInProgress||(yield this._connection.send(e))}catch{this._disconnected()}yield i})}_ack(n){let e=-1;for(let i=0;ithis._nextReceivingSequenceId){this._connection.stop(new Error("Sequence ID greater than amount of messages we've received."));return}this._nextReceivingSequenceId=n.sequenceId}_disconnected(){this._reconnectInProgress=!0,this._waitForSequenceMessage=!0}_resend(){return me(this,null,function*(){let n=this._messages.length!==0?this._messages[0]._id:this._totalMessageCount+1;yield this._connection.send(this._protocol.writeMessage({type:oe.Sequence,sequenceId:n}));let e=this._messages;for(let i of e)yield this._connection.send(i._message);this._reconnectInProgress=!1})}_dispose(n){n??(n=new Error("Unable to reconnect to server."));for(let e of this._messages)e._rejector(n)}_isInvocationMessage(n){switch(n.type){case oe.Invocation:case oe.StreamItem:case oe.Completion:case oe.StreamInvocation:case oe.CancelInvocation:return!0;case oe.Close:case oe.Sequence:case oe.Ping:case oe.Ack:return!1}}_ackTimer(){this._ackTimerHandle===void 0&&(this._ackTimerHandle=setTimeout(()=>me(this,null,function*(){try{this._reconnectInProgress||(yield this._connection.send(this._protocol.writeMessage({type:oe.Ack,sequenceId:this._latestReceivedSequenceId})))}catch{}clearTimeout(this._ackTimerHandle),this._ackTimerHandle=void 0}),1e3))}},nb=class{constructor(n,e,i,r){this._message=n,this._id=e,this._resolver=i,this._rejector=r}};var wB=30*1e3,DB=15*1e3,MB=1e5,Be=function(t){return t.Disconnected="Disconnected",t.Connecting="Connecting",t.Connected="Connected",t.Disconnecting="Disconnecting",t.Reconnecting="Reconnecting",t}(Be||{}),Nu=class t{static create(n,e,i,r,o,s,a){return new t(n,e,i,r,o,s,a)}constructor(n,e,i,r,o,s,a){this._nextKeepAlive=0,this._freezeEventListener=()=>{this._logger.log(k.Warning,"The page is being frozen, this will likely lead to the connection being closed and messages being lost. For more information see the docs at https://learn.microsoft.com/aspnet/core/signalr/javascript-client#bsleep")},Ye.isRequired(n,"connection"),Ye.isRequired(e,"logger"),Ye.isRequired(i,"protocol"),this.serverTimeoutInMilliseconds=o??wB,this.keepAliveIntervalInMilliseconds=s??DB,this._statefulReconnectBufferSize=a??MB,this._logger=e,this._protocol=i,this.connection=n,this._reconnectPolicy=r,this._handshakeProtocol=new Ip,this.connection.onreceive=l=>this._processIncomingData(l),this.connection.onclose=l=>this._connectionClosed(l),this._callbacks={},this._methods={},this._closedCallbacks=[],this._reconnectingCallbacks=[],this._reconnectedCallbacks=[],this._invocationId=0,this._receivedHandshakeResponse=!1,this._connectionState=Be.Disconnected,this._connectionStarted=!1,this._cachedPingMessage=this._protocol.writeMessage({type:oe.Ping})}get state(){return this._connectionState}get connectionId(){return this.connection&&this.connection.connectionId||null}get baseUrl(){return this.connection.baseUrl||""}set baseUrl(n){if(this._connectionState!==Be.Disconnected&&this._connectionState!==Be.Reconnecting)throw new Error("The HubConnection must be in the Disconnected or Reconnecting state to change the url.");if(!n)throw new Error("The HubConnection url must be a valid url.");this.connection.baseUrl=n}start(){return this._startPromise=this._startWithStateTransitions(),this._startPromise}_startWithStateTransitions(){return me(this,null,function*(){if(this._connectionState!==Be.Disconnected)return Promise.reject(new Error("Cannot start a HubConnection that is not in the 'Disconnected' state."));this._connectionState=Be.Connecting,this._logger.log(k.Debug,"Starting HubConnection.");try{yield this._startInternal(),Qe.isBrowser&&window.document.addEventListener("freeze",this._freezeEventListener),this._connectionState=Be.Connected,this._connectionStarted=!0,this._logger.log(k.Debug,"HubConnection connected successfully.")}catch(n){return this._connectionState=Be.Disconnected,this._logger.log(k.Debug,`HubConnection failed to start successfully because of error '${n}'.`),Promise.reject(n)}})}_startInternal(){return me(this,null,function*(){this._stopDuringStartError=void 0,this._receivedHandshakeResponse=!1;let n=new Promise((e,i)=>{this._handshakeResolver=e,this._handshakeRejecter=i});yield this.connection.start(this._protocol.transferFormat);try{let e=this._protocol.version;this.connection.features.reconnect||(e=1);let i={protocol:this._protocol.name,version:e};if(this._logger.log(k.Debug,"Sending handshake request."),yield this._sendMessage(this._handshakeProtocol.writeHandshakeRequest(i)),this._logger.log(k.Information,`Using HubProtocol '${this._protocol.name}'.`),this._cleanupTimeout(),this._resetTimeoutPeriod(),this._resetKeepAliveInterval(),yield n,this._stopDuringStartError)throw this._stopDuringStartError;(this.connection.features.reconnect||!1)&&(this._messageBuffer=new kp(this._protocol,this.connection,this._statefulReconnectBufferSize),this.connection.features.disconnected=this._messageBuffer._disconnected.bind(this._messageBuffer),this.connection.features.resend=()=>{if(this._messageBuffer)return this._messageBuffer._resend()}),this.connection.features.inherentKeepAlive||(yield this._sendMessage(this._cachedPingMessage))}catch(e){throw this._logger.log(k.Debug,`Hub handshake failed with error '${e}' during start(). Stopping HubConnection.`),this._cleanupTimeout(),this._cleanupPingTimer(),yield this.connection.stop(e),e}})}stop(){return me(this,null,function*(){let n=this._startPromise;this.connection.features.reconnect=!1,this._stopPromise=this._stopInternal(),yield this._stopPromise;try{yield n}catch{}})}_stopInternal(n){if(this._connectionState===Be.Disconnected)return this._logger.log(k.Debug,`Call to HubConnection.stop(${n}) ignored because it is already in the disconnected state.`),Promise.resolve();if(this._connectionState===Be.Disconnecting)return this._logger.log(k.Debug,`Call to HttpConnection.stop(${n}) ignored because the connection is already in the disconnecting state.`),this._stopPromise;let e=this._connectionState;return this._connectionState=Be.Disconnecting,this._logger.log(k.Debug,"Stopping HubConnection."),this._reconnectDelayHandle?(this._logger.log(k.Debug,"Connection stopped during reconnect delay. Done reconnecting."),clearTimeout(this._reconnectDelayHandle),this._reconnectDelayHandle=void 0,this._completeClose(),Promise.resolve()):(e===Be.Connected&&this._sendCloseMessage(),this._cleanupTimeout(),this._cleanupPingTimer(),this._stopDuringStartError=n||new tn("The connection was stopped before the hub handshake could complete."),this.connection.stop(n))}_sendCloseMessage(){return me(this,null,function*(){try{yield this._sendWithProtocol(this._createCloseMessage())}catch{}})}stream(n,...e){let[i,r]=this._replaceStreamingParams(e),o=this._createStreamInvocation(n,e,r),s,a=new xp;return a.cancelCallback=()=>{let l=this._createCancelInvocation(o.invocationId);return delete this._callbacks[o.invocationId],s.then(()=>this._sendWithProtocol(l))},this._callbacks[o.invocationId]=(l,c)=>{if(c){a.error(c);return}else l&&(l.type===oe.Completion?l.error?a.error(new Error(l.error)):a.complete():a.next(l.item))},s=this._sendWithProtocol(o).catch(l=>{a.error(l),delete this._callbacks[o.invocationId]}),this._launchStreams(i,s),a}_sendMessage(n){return this._resetKeepAliveInterval(),this.connection.send(n)}_sendWithProtocol(n){return this._messageBuffer?this._messageBuffer._send(n):this._sendMessage(this._protocol.writeMessage(n))}send(n,...e){let[i,r]=this._replaceStreamingParams(e),o=this._sendWithProtocol(this._createInvocation(n,e,!0,r));return this._launchStreams(i,o),o}invoke(n,...e){let[i,r]=this._replaceStreamingParams(e),o=this._createInvocation(n,e,!1,r);return new Promise((a,l)=>{this._callbacks[o.invocationId]=(u,m)=>{if(m){l(m);return}else u&&(u.type===oe.Completion?u.error?l(new Error(u.error)):a(u.result):l(new Error(`Unexpected message type: ${u.type}`)))};let c=this._sendWithProtocol(o).catch(u=>{l(u),delete this._callbacks[o.invocationId]});this._launchStreams(i,c)})}on(n,e){!n||!e||(n=n.toLowerCase(),this._methods[n]||(this._methods[n]=[]),this._methods[n].indexOf(e)===-1&&this._methods[n].push(e))}off(n,e){if(!n)return;n=n.toLowerCase();let i=this._methods[n];if(i)if(e){let r=i.indexOf(e);r!==-1&&(i.splice(r,1),i.length===0&&delete this._methods[n])}else delete this._methods[n]}onclose(n){n&&this._closedCallbacks.push(n)}onreconnecting(n){n&&this._reconnectingCallbacks.push(n)}onreconnected(n){n&&this._reconnectedCallbacks.push(n)}_processIncomingData(n){if(this._cleanupTimeout(),this._receivedHandshakeResponse||(n=this._processHandshakeResponse(n),this._receivedHandshakeResponse=!0),n){let e=this._protocol.parseMessages(n,this._logger);for(let i of e)if(!(this._messageBuffer&&!this._messageBuffer._shouldProcessMessage(i)))switch(i.type){case oe.Invocation:this._invokeClientMethod(i).catch(r=>{this._logger.log(k.Error,`Invoke client method threw error: ${Mp(r)}`)});break;case oe.StreamItem:case oe.Completion:{let r=this._callbacks[i.invocationId];if(r){i.type===oe.Completion&&delete this._callbacks[i.invocationId];try{r(i)}catch(o){this._logger.log(k.Error,`Stream callback threw error: ${Mp(o)}`)}}break}case oe.Ping:break;case oe.Close:{this._logger.log(k.Information,"Close message received from server.");let r=i.error?new Error("Server returned an error on close: "+i.error):void 0;i.allowReconnect===!0?this.connection.stop(r):this._stopPromise=this._stopInternal(r);break}case oe.Ack:this._messageBuffer&&this._messageBuffer._ack(i);break;case oe.Sequence:this._messageBuffer&&this._messageBuffer._resetSequence(i);break;default:this._logger.log(k.Warning,`Invalid message type: ${i.type}.`);break}}this._resetTimeoutPeriod()}_processHandshakeResponse(n){let e,i;try{[i,e]=this._handshakeProtocol.parseHandshakeResponse(n)}catch(r){let o="Error parsing handshake response: "+r;this._logger.log(k.Error,o);let s=new Error(o);throw this._handshakeRejecter(s),s}if(e.error){let r="Server returned handshake error: "+e.error;this._logger.log(k.Error,r);let o=new Error(r);throw this._handshakeRejecter(o),o}else this._logger.log(k.Debug,"Server handshake complete.");return this._handshakeResolver(),i}_resetKeepAliveInterval(){this.connection.features.inherentKeepAlive||(this._nextKeepAlive=new Date().getTime()+this.keepAliveIntervalInMilliseconds,this._cleanupPingTimer())}_resetTimeoutPeriod(){if((!this.connection.features||!this.connection.features.inherentKeepAlive)&&(this._timeoutHandle=setTimeout(()=>this.serverTimeout(),this.serverTimeoutInMilliseconds),this._pingServerHandle===void 0)){let n=this._nextKeepAlive-new Date().getTime();n<0&&(n=0),this._pingServerHandle=setTimeout(()=>me(this,null,function*(){if(this._connectionState===Be.Connected)try{yield this._sendMessage(this._cachedPingMessage)}catch{this._cleanupPingTimer()}}),n)}}serverTimeout(){this.connection.stop(new Error("Server timeout elapsed without receiving a message from the server."))}_invokeClientMethod(n){return me(this,null,function*(){let e=n.target.toLowerCase(),i=this._methods[e];if(!i){this._logger.log(k.Warning,`No client method with the name '${e}' found.`),n.invocationId&&(this._logger.log(k.Warning,`No result given for '${e}' method and invocation ID '${n.invocationId}'.`),yield this._sendWithProtocol(this._createCompletionMessage(n.invocationId,"Client didn't provide a result.",null)));return}let r=i.slice(),o=!!n.invocationId,s,a,l;for(let c of r)try{let u=s;s=yield c.apply(this,n.arguments),o&&s&&u&&(this._logger.log(k.Error,`Multiple results provided for '${e}'. Sending error to server.`),l=this._createCompletionMessage(n.invocationId,"Client provided multiple results.",null)),a=void 0}catch(u){a=u,this._logger.log(k.Error,`A callback for the method '${e}' threw error '${u}'.`)}l?yield this._sendWithProtocol(l):o?(a?l=this._createCompletionMessage(n.invocationId,`${a}`,null):s!==void 0?l=this._createCompletionMessage(n.invocationId,null,s):(this._logger.log(k.Warning,`No result given for '${e}' method and invocation ID '${n.invocationId}'.`),l=this._createCompletionMessage(n.invocationId,"Client didn't provide a result.",null)),yield this._sendWithProtocol(l)):s&&this._logger.log(k.Error,`Result given for '${e}' method but server is not expecting a result.`)})}_connectionClosed(n){this._logger.log(k.Debug,`HubConnection.connectionClosed(${n}) called while in state ${this._connectionState}.`),this._stopDuringStartError=this._stopDuringStartError||n||new tn("The underlying connection was closed before the hub handshake could complete."),this._handshakeResolver&&this._handshakeResolver(),this._cancelCallbacksWithError(n||new Error("Invocation canceled due to the underlying connection being closed.")),this._cleanupTimeout(),this._cleanupPingTimer(),this._connectionState===Be.Disconnecting?this._completeClose(n):this._connectionState===Be.Connected&&this._reconnectPolicy?this._reconnect(n):this._connectionState===Be.Connected&&this._completeClose(n)}_completeClose(n){if(this._connectionStarted){this._connectionState=Be.Disconnected,this._connectionStarted=!1,this._messageBuffer&&(this._messageBuffer._dispose(n??new Error("Connection closed.")),this._messageBuffer=void 0),Qe.isBrowser&&window.document.removeEventListener("freeze",this._freezeEventListener);try{this._closedCallbacks.forEach(e=>e.apply(this,[n]))}catch(e){this._logger.log(k.Error,`An onclose callback called with error '${n}' threw error '${e}'.`)}}}_reconnect(n){return me(this,null,function*(){let e=Date.now(),i=0,r=n!==void 0?n:new Error("Attempting to reconnect due to a unknown error."),o=this._getNextRetryDelay(i++,0,r);if(o===null){this._logger.log(k.Debug,"Connection not reconnecting because the IRetryPolicy returned null on the first reconnect attempt."),this._completeClose(n);return}if(this._connectionState=Be.Reconnecting,n?this._logger.log(k.Information,`Connection reconnecting because of error '${n}'.`):this._logger.log(k.Information,"Connection reconnecting."),this._reconnectingCallbacks.length!==0){try{this._reconnectingCallbacks.forEach(s=>s.apply(this,[n]))}catch(s){this._logger.log(k.Error,`An onreconnecting callback called with error '${n}' threw error '${s}'.`)}if(this._connectionState!==Be.Reconnecting){this._logger.log(k.Debug,"Connection left the reconnecting state in onreconnecting callback. Done reconnecting.");return}}for(;o!==null;){if(this._logger.log(k.Information,`Reconnect attempt number ${i} will start in ${o} ms.`),yield new Promise(s=>{this._reconnectDelayHandle=setTimeout(s,o)}),this._reconnectDelayHandle=void 0,this._connectionState!==Be.Reconnecting){this._logger.log(k.Debug,"Connection left the reconnecting state during reconnect delay. Done reconnecting.");return}try{if(yield this._startInternal(),this._connectionState=Be.Connected,this._logger.log(k.Information,"HubConnection reconnected successfully."),this._reconnectedCallbacks.length!==0)try{this._reconnectedCallbacks.forEach(s=>s.apply(this,[this.connection.connectionId]))}catch(s){this._logger.log(k.Error,`An onreconnected callback called with connectionId '${this.connection.connectionId}; threw error '${s}'.`)}return}catch(s){if(this._logger.log(k.Information,`Reconnect attempt failed because of error '${s}'.`),this._connectionState!==Be.Reconnecting){this._logger.log(k.Debug,`Connection moved to the '${this._connectionState}' from the reconnecting state during reconnect attempt. Done reconnecting.`),this._connectionState===Be.Disconnecting&&this._completeClose();return}r=s instanceof Error?s:new Error(s.toString()),o=this._getNextRetryDelay(i++,Date.now()-e,r)}}this._logger.log(k.Information,`Reconnect retries have been exhausted after ${Date.now()-e} ms and ${i} failed attempts. Connection disconnecting.`),this._completeClose()})}_getNextRetryDelay(n,e,i){try{return this._reconnectPolicy.nextRetryDelayInMilliseconds({elapsedMilliseconds:e,previousRetryCount:n,retryReason:i})}catch(r){return this._logger.log(k.Error,`IRetryPolicy.nextRetryDelayInMilliseconds(${n}, ${e}) threw error '${r}'.`),null}}_cancelCallbacksWithError(n){let e=this._callbacks;this._callbacks={},Object.keys(e).forEach(i=>{let r=e[i];try{r(null,n)}catch(o){this._logger.log(k.Error,`Stream 'error' callback called with '${n}' threw error: ${Mp(o)}`)}})}_cleanupPingTimer(){this._pingServerHandle&&(clearTimeout(this._pingServerHandle),this._pingServerHandle=void 0)}_cleanupTimeout(){this._timeoutHandle&&clearTimeout(this._timeoutHandle)}_createInvocation(n,e,i,r){if(i)return r.length!==0?{arguments:e,streamIds:r,target:n,type:oe.Invocation}:{arguments:e,target:n,type:oe.Invocation};{let o=this._invocationId;return this._invocationId++,r.length!==0?{arguments:e,invocationId:o.toString(),streamIds:r,target:n,type:oe.Invocation}:{arguments:e,invocationId:o.toString(),target:n,type:oe.Invocation}}}_launchStreams(n,e){if(n.length!==0){e||(e=Promise.resolve());for(let i in n)n[i].subscribe({complete:()=>{e=e.then(()=>this._sendWithProtocol(this._createCompletionMessage(i)))},error:r=>{let o;r instanceof Error?o=r.message:r&&r.toString?o=r.toString():o="Unknown error",e=e.then(()=>this._sendWithProtocol(this._createCompletionMessage(i,o)))},next:r=>{e=e.then(()=>this._sendWithProtocol(this._createStreamItemMessage(i,r)))}})}}_replaceStreamingParams(n){let e=[],i=[];for(let r=0;r{class t{}return t.Authorization="Authorization",t.Cookie="Cookie",t})();var Ap=class extends Mr{constructor(n,e){super(),this._innerClient=n,this._accessTokenFactory=e}send(n){return me(this,null,function*(){let e=!0;this._accessTokenFactory&&(!this._accessToken||n.url&&n.url.indexOf("/negotiate?")>0)&&(e=!1,this._accessToken=yield this._accessTokenFactory()),this._setAuthorizationHeader(n);let i=yield this._innerClient.send(n);return e&&i.statusCode===401&&this._accessTokenFactory?(this._accessToken=yield this._accessTokenFactory(),this._setAuthorizationHeader(n),yield this._innerClient.send(n)):i})}_setAuthorizationHeader(n){n.headers||(n.headers={}),this._accessToken?n.headers[Hs.Authorization]=`Bearer ${this._accessToken}`:this._accessTokenFactory&&n.headers[Hs.Authorization]&&delete n.headers[Hs.Authorization]}getCookieString(n){return this._innerClient.getCookieString(n)}};var zt=function(t){return t[t.None=0]="None",t[t.WebSockets=1]="WebSockets",t[t.ServerSentEvents=2]="ServerSentEvents",t[t.LongPolling=4]="LongPolling",t}(zt||{}),Lt=function(t){return t[t.Text=1]="Text",t[t.Binary=2]="Binary",t}(Lt||{});var Rp=class{constructor(){this._isAborted=!1,this.onabort=null}abort(){this._isAborted||(this._isAborted=!0,this.onabort&&this.onabort())}get signal(){return this}get aborted(){return this._isAborted}};var Fu=class{get pollAborted(){return this._pollAbort.aborted}constructor(n,e,i){this._httpClient=n,this._logger=e,this._pollAbort=new Rp,this._options=i,this._running=!1,this.onreceive=null,this.onclose=null}connect(n,e){return me(this,null,function*(){if(Ye.isRequired(n,"url"),Ye.isRequired(e,"transferFormat"),Ye.isIn(e,Lt,"transferFormat"),this._url=n,this._logger.log(k.Trace,"(LongPolling transport) Connecting."),e===Lt.Binary&&typeof XMLHttpRequest<"u"&&typeof new XMLHttpRequest().responseType!="string")throw new Error("Binary protocols over XmlHttpRequest not implementing advanced features are not supported.");let[i,r]=Er(),o=E({[i]:r},this._options.headers),s={abortSignal:this._pollAbort.signal,headers:o,timeout:1e5,withCredentials:this._options.withCredentials};e===Lt.Binary&&(s.responseType="arraybuffer");let a=`${n}&_=${Date.now()}`;this._logger.log(k.Trace,`(LongPolling transport) polling: ${a}.`);let l=yield this._httpClient.get(a,s);l.statusCode!==200?(this._logger.log(k.Error,`(LongPolling transport) Unexpected response code: ${l.statusCode}.`),this._closeError=new ei(l.statusText||"",l.statusCode),this._running=!1):this._running=!0,this._receiving=this._poll(this._url,s)})}_poll(n,e){return me(this,null,function*(){try{for(;this._running;)try{let i=`${n}&_=${Date.now()}`;this._logger.log(k.Trace,`(LongPolling transport) polling: ${i}.`);let r=yield this._httpClient.get(i,e);r.statusCode===204?(this._logger.log(k.Information,"(LongPolling transport) Poll terminated by server."),this._running=!1):r.statusCode!==200?(this._logger.log(k.Error,`(LongPolling transport) Unexpected response code: ${r.statusCode}.`),this._closeError=new ei(r.statusText||"",r.statusCode),this._running=!1):r.content?(this._logger.log(k.Trace,`(LongPolling transport) data received. ${jo(r.content,this._options.logMessageContent)}.`),this.onreceive&&this.onreceive(r.content)):this._logger.log(k.Trace,"(LongPolling transport) Poll timed out, reissuing.")}catch(i){this._running?i instanceof Vo?this._logger.log(k.Trace,"(LongPolling transport) Poll timed out, reissuing."):(this._closeError=i,this._running=!1):this._logger.log(k.Trace,`(LongPolling transport) Poll errored after shutdown: ${i.message}`)}}finally{this._logger.log(k.Trace,"(LongPolling transport) Polling complete."),this.pollAborted||this._raiseOnClose()}})}send(n){return me(this,null,function*(){return this._running?Dp(this._logger,"LongPolling",this._httpClient,this._url,n,this._options):Promise.reject(new Error("Cannot send until the transport is connected"))})}stop(){return me(this,null,function*(){this._logger.log(k.Trace,"(LongPolling transport) Stopping polling."),this._running=!1,this._pollAbort.abort();try{yield this._receiving,this._logger.log(k.Trace,`(LongPolling transport) sending DELETE request to ${this._url}.`);let n={},[e,i]=Er();n[e]=i;let r={headers:E(E({},n),this._options.headers),timeout:this._options.timeout,withCredentials:this._options.withCredentials},o;try{yield this._httpClient.delete(this._url,r)}catch(s){o=s}o?o instanceof ei&&(o.statusCode===404?this._logger.log(k.Trace,"(LongPolling transport) A 404 response was returned from sending a DELETE request."):this._logger.log(k.Trace,`(LongPolling transport) Error sending a DELETE request: ${o}`)):this._logger.log(k.Trace,"(LongPolling transport) DELETE request accepted.")}finally{this._logger.log(k.Trace,"(LongPolling transport) Stop finished."),this._raiseOnClose()}})}_raiseOnClose(){if(this.onclose){let n="(LongPolling transport) Firing onclose event.";this._closeError&&(n+=" Error: "+this._closeError),this._logger.log(k.Trace,n),this.onclose(this._closeError)}}};var Op=class{constructor(n,e,i,r){this._httpClient=n,this._accessToken=e,this._logger=i,this._options=r,this.onreceive=null,this.onclose=null}connect(n,e){return me(this,null,function*(){return Ye.isRequired(n,"url"),Ye.isRequired(e,"transferFormat"),Ye.isIn(e,Lt,"transferFormat"),this._logger.log(k.Trace,"(SSE transport) Connecting."),this._url=n,this._accessToken&&(n+=(n.indexOf("?")<0?"?":"&")+`access_token=${encodeURIComponent(this._accessToken)}`),new Promise((i,r)=>{let o=!1;if(e!==Lt.Text){r(new Error("The Server-Sent Events transport only supports the 'Text' transfer format"));return}let s;if(Qe.isBrowser||Qe.isWebWorker)s=new this._options.EventSource(n,{withCredentials:this._options.withCredentials});else{let a=this._httpClient.getCookieString(n),l={};l.Cookie=a;let[c,u]=Er();l[c]=u,s=new this._options.EventSource(n,{withCredentials:this._options.withCredentials,headers:E(E({},l),this._options.headers)})}try{s.onmessage=a=>{if(this.onreceive)try{this._logger.log(k.Trace,`(SSE transport) data received. ${jo(a.data,this._options.logMessageContent)}.`),this.onreceive(a.data)}catch(l){this._close(l);return}},s.onerror=a=>{o?this._close():r(new Error("EventSource failed to connect. The connection could not be found on the server, either the connection ID is not present on the server, or a proxy is refusing/buffering the connection. If you have multiple servers check that sticky sessions are enabled."))},s.onopen=()=>{this._logger.log(k.Information,`SSE connected to ${this._url}`),this._eventSource=s,o=!0,i()}}catch(a){r(a);return}})})}send(n){return me(this,null,function*(){return this._eventSource?Dp(this._logger,"SSE",this._httpClient,this._url,n,this._options):Promise.reject(new Error("Cannot send until the transport is connected"))})}stop(){return this._close(),Promise.resolve()}_close(n){this._eventSource&&(this._eventSource.close(),this._eventSource=void 0,this.onclose&&this.onclose(n))}};var Pp=class{constructor(n,e,i,r,o,s){this._logger=i,this._accessTokenFactory=e,this._logMessageContent=r,this._webSocketConstructor=o,this._httpClient=n,this.onreceive=null,this.onclose=null,this._headers=s}connect(n,e){return me(this,null,function*(){Ye.isRequired(n,"url"),Ye.isRequired(e,"transferFormat"),Ye.isIn(e,Lt,"transferFormat"),this._logger.log(k.Trace,"(WebSockets transport) Connecting.");let i;return this._accessTokenFactory&&(i=yield this._accessTokenFactory()),new Promise((r,o)=>{n=n.replace(/^http/,"ws");let s,a=this._httpClient.getCookieString(n),l=!1;if(Qe.isNode||Qe.isReactNative){let c={},[u,m]=Er();c[u]=m,i&&(c[Hs.Authorization]=`Bearer ${i}`),a&&(c[Hs.Cookie]=a),s=new this._webSocketConstructor(n,void 0,{headers:E(E({},c),this._headers)})}else i&&(n+=(n.indexOf("?")<0?"?":"&")+`access_token=${encodeURIComponent(i)}`);s||(s=new this._webSocketConstructor(n)),e===Lt.Binary&&(s.binaryType="arraybuffer"),s.onopen=c=>{this._logger.log(k.Information,`WebSocket connected to ${n}.`),this._webSocket=s,l=!0,r()},s.onerror=c=>{let u=null;typeof ErrorEvent<"u"&&c instanceof ErrorEvent?u=c.error:u="There was an error with the transport",this._logger.log(k.Information,`(WebSockets transport) ${u}.`)},s.onmessage=c=>{if(this._logger.log(k.Trace,`(WebSockets transport) data received. ${jo(c.data,this._logMessageContent)}.`),this.onreceive)try{this.onreceive(c.data)}catch(u){this._close(u);return}},s.onclose=c=>{if(l)this._close(c);else{let u=null;typeof ErrorEvent<"u"&&c instanceof ErrorEvent?u=c.error:u="WebSocket failed to connect. The connection could not be found on the server, either the endpoint may not be a SignalR endpoint, the connection ID is not present on the server, or there is a proxy blocking WebSockets. If you have multiple servers check that sticky sessions are enabled.",o(new Error(u))}}})})}send(n){return this._webSocket&&this._webSocket.readyState===this._webSocketConstructor.OPEN?(this._logger.log(k.Trace,`(WebSockets transport) sending data. ${jo(n,this._logMessageContent)}.`),this._webSocket.send(n),Promise.resolve()):Promise.reject("WebSocket is not in the OPEN state")}stop(){return this._webSocket&&this._close(void 0),Promise.resolve()}_close(n){this._webSocket&&(this._webSocket.onclose=()=>{},this._webSocket.onmessage=()=>{},this._webSocket.onerror=()=>{},this._webSocket.close(),this._webSocket=void 0),this._logger.log(k.Trace,"(WebSockets transport) socket closed."),this.onclose&&(this._isCloseEvent(n)&&(n.wasClean===!1||n.code!==1e3)?this.onclose(new Error(`WebSocket closed with status code: ${n.code} (${n.reason||"no reason given"}).`)):n instanceof Error?this.onclose(n):this.onclose())}_isCloseEvent(n){return n&&typeof n.wasClean=="boolean"&&typeof n.code=="number"}};var XI=100,Np=class{constructor(n,e={}){if(this._stopPromiseResolver=()=>{},this.features={},this._negotiateVersion=1,Ye.isRequired(n,"url"),this._logger=ZI(e.logger),this.baseUrl=this._resolveUrl(n),e=e||{},e.logMessageContent=e.logMessageContent===void 0?!1:e.logMessageContent,typeof e.withCredentials=="boolean"||e.withCredentials===void 0)e.withCredentials=e.withCredentials===void 0?!0:e.withCredentials;else throw new Error("withCredentials option was not a 'boolean' or 'undefined' value");e.timeout=e.timeout===void 0?100*1e3:e.timeout;let i=null,r=null;if(Qe.isNode&&typeof fa<"u"){let o=typeof __webpack_require__=="function"?__non_webpack_require__:fa;i=o("ws"),r=o("eventsource")}!Qe.isNode&&typeof WebSocket<"u"&&!e.WebSocket?e.WebSocket=WebSocket:Qe.isNode&&!e.WebSocket&&i&&(e.WebSocket=i),!Qe.isNode&&typeof EventSource<"u"&&!e.EventSource?e.EventSource=EventSource:Qe.isNode&&!e.EventSource&&typeof r<"u"&&(e.EventSource=r),this._httpClient=new Ap(e.httpClient||new Tp(this._logger),e.accessTokenFactory),this._connectionState="Disconnected",this._connectionStarted=!1,this._options=e,this.onreceive=null,this.onclose=null}start(n){return me(this,null,function*(){if(n=n||Lt.Binary,Ye.isIn(n,Lt,"transferFormat"),this._logger.log(k.Debug,`Starting connection with transfer format '${Lt[n]}'.`),this._connectionState!=="Disconnected")return Promise.reject(new Error("Cannot start an HttpConnection that is not in the 'Disconnected' state."));if(this._connectionState="Connecting",this._startInternalPromise=this._startInternal(n),yield this._startInternalPromise,this._connectionState==="Disconnecting"){let e="Failed to start the HttpConnection before stop() was called.";return this._logger.log(k.Error,e),yield this._stopPromise,Promise.reject(new tn(e))}else if(this._connectionState!=="Connected"){let e="HttpConnection.startInternal completed gracefully but didn't enter the connection into the connected state!";return this._logger.log(k.Error,e),Promise.reject(new tn(e))}this._connectionStarted=!0})}send(n){return this._connectionState!=="Connected"?Promise.reject(new Error("Cannot send data if the connection is not in the 'Connected' State.")):(this._sendQueue||(this._sendQueue=new ib(this.transport)),this._sendQueue.send(n))}stop(n){return me(this,null,function*(){if(this._connectionState==="Disconnected")return this._logger.log(k.Debug,`Call to HttpConnection.stop(${n}) ignored because the connection is already in the disconnected state.`),Promise.resolve();if(this._connectionState==="Disconnecting")return this._logger.log(k.Debug,`Call to HttpConnection.stop(${n}) ignored because the connection is already in the disconnecting state.`),this._stopPromise;this._connectionState="Disconnecting",this._stopPromise=new Promise(e=>{this._stopPromiseResolver=e}),yield this._stopInternal(n),yield this._stopPromise})}_stopInternal(n){return me(this,null,function*(){this._stopError=n;try{yield this._startInternalPromise}catch{}if(this.transport){try{yield this.transport.stop()}catch(e){this._logger.log(k.Error,`HttpConnection.transport.stop() threw error '${e}'.`),this._stopConnection()}this.transport=void 0}else this._logger.log(k.Debug,"HttpConnection.transport is undefined in HttpConnection.stop() because start() failed.")})}_startInternal(n){return me(this,null,function*(){let e=this.baseUrl;this._accessTokenFactory=this._options.accessTokenFactory,this._httpClient._accessTokenFactory=this._accessTokenFactory;try{if(this._options.skipNegotiation)if(this._options.transport===zt.WebSockets)this.transport=this._constructTransport(zt.WebSockets),yield this._startTransport(e,n);else throw new Error("Negotiation can only be skipped when using the WebSocket transport directly.");else{let i=null,r=0;do{if(i=yield this._getNegotiationResponse(e),this._connectionState==="Disconnecting"||this._connectionState==="Disconnected")throw new tn("The connection was stopped during negotiation.");if(i.error)throw new Error(i.error);if(i.ProtocolVersion)throw new Error("Detected a connection attempt to an ASP.NET SignalR Server. This client only supports connecting to an ASP.NET Core SignalR Server. See https://aka.ms/signalr-core-differences for details.");if(i.url&&(e=i.url),i.accessToken){let o=i.accessToken;this._accessTokenFactory=()=>o,this._httpClient._accessToken=o,this._httpClient._accessTokenFactory=void 0}r++}while(i.url&&r0?Promise.reject(new Cp(`Unable to connect to the server with any of the available transports. ${s.join(" ")}`,s)):Promise.reject(new Error("None of the transports supported by the client are supported by the server."))})}_constructTransport(n){switch(n){case zt.WebSockets:if(!this._options.WebSocket)throw new Error("'WebSocket' is not supported in your environment.");return new Pp(this._httpClient,this._accessTokenFactory,this._logger,this._options.logMessageContent,this._options.WebSocket,this._options.headers||{});case zt.ServerSentEvents:if(!this._options.EventSource)throw new Error("'EventSource' is not supported in your environment.");return new Op(this._httpClient,this._httpClient._accessToken,this._logger,this._options);case zt.LongPolling:return new Fu(this._httpClient,this._logger,this._options);default:throw new Error(`Unknown transport: ${n}.`)}}_startTransport(n,e){return this.transport.onreceive=this.onreceive,this.features.reconnect?this.transport.onclose=i=>me(this,null,function*(){let r=!1;if(this.features.reconnect)try{this.features.disconnected(),yield this.transport.connect(n,e),yield this.features.resend()}catch{r=!0}else{this._stopConnection(i);return}r&&this._stopConnection(i)}):this.transport.onclose=i=>this._stopConnection(i),this.transport.connect(n,e)}_resolveTransportOrError(n,e,i,r){let o=zt[n.transport];if(o==null)return this._logger.log(k.Debug,`Skipping transport '${n.transport}' because it is not supported by this client.`),new Error(`Skipping transport '${n.transport}' because it is not supported by this client.`);if(EB(e,o))if(n.transferFormats.map(a=>Lt[a]).indexOf(i)>=0){if(o===zt.WebSockets&&!this._options.WebSocket||o===zt.ServerSentEvents&&!this._options.EventSource)return this._logger.log(k.Debug,`Skipping transport '${zt[o]}' because it is not supported in your environment.'`),new yp(`'${zt[o]}' is not supported in your environment.`,o);this._logger.log(k.Debug,`Selecting transport '${zt[o]}'.`);try{return this.features.reconnect=o===zt.WebSockets?r:void 0,this._constructTransport(o)}catch(a){return a}}else return this._logger.log(k.Debug,`Skipping transport '${zt[o]}' because it does not support the requested transfer format '${Lt[i]}'.`),new Error(`'${zt[o]}' does not support ${Lt[i]}.`);else return this._logger.log(k.Debug,`Skipping transport '${zt[o]}' because it was disabled by the client.`),new vp(`'${zt[o]}' is disabled by the client.`,o)}_isITransport(n){return n&&typeof n=="object"&&"connect"in n}_stopConnection(n){if(this._logger.log(k.Debug,`HttpConnection.stopConnection(${n}) called while in state ${this._connectionState}.`),this.transport=void 0,n=this._stopError||n,this._stopError=void 0,this._connectionState==="Disconnected"){this._logger.log(k.Debug,`Call to HttpConnection.stopConnection(${n}) was ignored because the connection is already in the disconnected state.`);return}if(this._connectionState==="Connecting")throw this._logger.log(k.Warning,`Call to HttpConnection.stopConnection(${n}) was ignored because the connection is still in the connecting state.`),new Error(`HttpConnection.stopConnection(${n}) was called while the connection is still in the connecting state.`);if(this._connectionState==="Disconnecting"&&this._stopPromiseResolver(),n?this._logger.log(k.Error,`Connection disconnected with error '${n}'.`):this._logger.log(k.Information,"Connection disconnected."),this._sendQueue&&(this._sendQueue.stop().catch(e=>{this._logger.log(k.Error,`TransportSendQueue.stop() threw error '${e}'.`)}),this._sendQueue=void 0),this.connectionId=void 0,this._connectionState="Disconnected",this._connectionStarted){this._connectionStarted=!1;try{this.onclose&&this.onclose(n)}catch(e){this._logger.log(k.Error,`HttpConnection.onclose(${n}) threw error '${e}'.`)}}}_resolveUrl(n){if(n.lastIndexOf("https://",0)===0||n.lastIndexOf("http://",0)===0)return n;if(!Qe.isBrowser)throw new Error(`Cannot resolve '${n}'.`);let e=window.document.createElement("a");return e.href=n,this._logger.log(k.Information,`Normalizing '${n}' to '${e.href}'.`),e.href}_resolveNegotiateUrl(n){let e=new URL(n);e.pathname.endsWith("/")?e.pathname+="negotiate":e.pathname+="/negotiate";let i=new URLSearchParams(e.searchParams);return i.has("negotiateVersion")||i.append("negotiateVersion",this._negotiateVersion.toString()),i.has("useStatefulReconnect")?i.get("useStatefulReconnect")==="true"&&(this._options._useStatefulReconnect=!0):this._options._useStatefulReconnect===!0&&i.append("useStatefulReconnect","true"),e.search=i.toString(),e.toString()}};function EB(t,n){return!t||(n&t)!==0}var ib=class t{constructor(n){this._transport=n,this._buffer=[],this._executing=!0,this._sendBufferedData=new Cl,this._transportResult=new Cl,this._sendLoopPromise=this._sendLoop()}send(n){return this._bufferData(n),this._transportResult||(this._transportResult=new Cl),this._transportResult.promise}stop(){return this._executing=!1,this._sendBufferedData.resolve(),this._sendLoopPromise}_bufferData(n){if(this._buffer.length&&typeof this._buffer[0]!=typeof n)throw new Error(`Expected data to be of type ${typeof this._buffer} but was of type ${typeof n}`);this._buffer.push(n),this._sendBufferedData.resolve()}_sendLoop(){return me(this,null,function*(){for(;;){if(yield this._sendBufferedData.promise,!this._executing){this._transportResult&&this._transportResult.reject("Connection stopped.");break}this._sendBufferedData=new Cl;let n=this._transportResult;this._transportResult=void 0;let e=typeof this._buffer[0]=="string"?this._buffer.join(""):t._concatBuffers(this._buffer);this._buffer.length=0;try{yield this._transport.send(e),n.resolve()}catch(i){n.reject(i)}}})}static _concatBuffers(n){let e=n.map(o=>o.byteLength).reduce((o,s)=>o+s),i=new Uint8Array(e),r=0;for(let o of n)i.set(new Uint8Array(o),r),r+=o.byteLength;return i.buffer}},Cl=class{constructor(){this.promise=new Promise((n,e)=>[this._resolver,this._rejecter]=[n,e])}resolve(){this._resolver()}reject(n){this._rejecter(n)}};var TB="json",Lp=class{constructor(){this.name=TB,this.version=2,this.transferFormat=Lt.Text}parseMessages(n,e){if(typeof n!="string")throw new Error("Invalid input for JSON hub protocol. Expected a string.");if(!n)return[];e===null&&(e=Sr.instance);let i=ti.parse(n),r=[];for(let o of i){let s=JSON.parse(o);if(typeof s.type!="number")throw new Error("Invalid payload.");switch(s.type){case oe.Invocation:this._isInvocationMessage(s);break;case oe.StreamItem:this._isStreamItemMessage(s);break;case oe.Completion:this._isCompletionMessage(s);break;case oe.Ping:break;case oe.Close:break;case oe.Ack:this._isAckMessage(s);break;case oe.Sequence:this._isSequenceMessage(s);break;default:e.log(k.Information,"Unknown message type '"+s.type+"' ignored.");continue}r.push(s)}return r}writeMessage(n){return ti.write(JSON.stringify(n))}_isInvocationMessage(n){this._assertNotEmptyString(n.target,"Invalid payload for Invocation message."),n.invocationId!==void 0&&this._assertNotEmptyString(n.invocationId,"Invalid payload for Invocation message.")}_isStreamItemMessage(n){if(this._assertNotEmptyString(n.invocationId,"Invalid payload for StreamItem message."),n.item===void 0)throw new Error("Invalid payload for StreamItem message.")}_isCompletionMessage(n){if(n.result&&n.error)throw new Error("Invalid payload for Completion message.");!n.result&&n.error&&this._assertNotEmptyString(n.error,"Invalid payload for Completion message."),this._assertNotEmptyString(n.invocationId,"Invalid payload for Completion message.")}_isAckMessage(n){if(typeof n.sequenceId!="number")throw new Error("Invalid SequenceId for Ack message.")}_isSequenceMessage(n){if(typeof n.sequenceId!="number")throw new Error("Invalid SequenceId for Sequence message.")}_assertNotEmptyString(n,e){if(typeof n!="string"||n==="")throw new Error(e)}};var IB={trace:k.Trace,debug:k.Debug,info:k.Information,information:k.Information,warn:k.Warning,warning:k.Warning,error:k.Error,critical:k.Critical,none:k.None};function xB(t){let n=IB[t.toLowerCase()];if(typeof n<"u")return n;throw new Error(`Unknown log level: ${t}`)}var Bs=class{configureLogging(n){if(Ye.isRequired(n,"logging"),kB(n))this.logger=n;else if(typeof n=="string"){let e=xB(n);this.logger=new js(e)}else this.logger=new js(n);return this}withUrl(n,e){return Ye.isRequired(n,"url"),Ye.isNotEmpty(n,"url"),this.url=n,typeof e=="object"?this.httpConnectionOptions=E(E({},this.httpConnectionOptions),e):this.httpConnectionOptions=W(E({},this.httpConnectionOptions),{transport:e}),this}withHubProtocol(n){return Ye.isRequired(n,"protocol"),this.protocol=n,this}withAutomaticReconnect(n){if(this.reconnectPolicy)throw new Error("A reconnectPolicy has already been set.");return n?Array.isArray(n)?this.reconnectPolicy=new Lu(n):this.reconnectPolicy=n:this.reconnectPolicy=new Lu,this}withServerTimeout(n){return Ye.isRequired(n,"milliseconds"),this._serverTimeoutInMilliseconds=n,this}withKeepAliveInterval(n){return Ye.isRequired(n,"milliseconds"),this._keepAliveIntervalInMilliseconds=n,this}withStatefulReconnect(n){return this.httpConnectionOptions===void 0&&(this.httpConnectionOptions={}),this.httpConnectionOptions._useStatefulReconnect=!0,this._statefulReconnectBufferSize=n?.bufferSize,this}build(){let n=this.httpConnectionOptions||{};if(n.logger===void 0&&(n.logger=this.logger),!this.url)throw new Error("The 'HubConnectionBuilder.withUrl' method must be called before building the connection.");let e=new Np(this.url,n);return Nu.create(e,this.logger||Sr.instance,this.protocol||new Lp,this.reconnectPolicy,this._serverTimeoutInMilliseconds,this._keepAliveIntervalInMilliseconds,this._statefulReconnectBufferSize)}};function kB(t){return t.log!==void 0}var ue=function(t){return t[t.State=0]="State",t[t.Transition=1]="Transition",t[t.Sequence=2]="Sequence",t[t.Group=3]="Group",t[t.Animate=4]="Animate",t[t.Keyframes=5]="Keyframes",t[t.Style=6]="Style",t[t.Trigger=7]="Trigger",t[t.Reference=8]="Reference",t[t.AnimateChild=9]="AnimateChild",t[t.AnimateRef=10]="AnimateRef",t[t.Query=11]="Query",t[t.Stagger=12]="Stagger",t}(ue||{}),wi="*";function no(t,n){return{type:ue.Trigger,name:t,definitions:n,options:{}}}function Dn(t,n=null){return{type:ue.Animate,styles:n,timings:t}}function Fp(t,n=null){return{type:ue.Sequence,steps:t,options:n}}function bt(t){return{type:ue.Style,styles:t,offset:null}}function Ir(t,n,e){return{type:ue.State,name:t,styles:n,options:e}}function ni(t,n,e=null){return{type:ue.Transition,expr:t,animation:n,options:e}}var Tr=class{_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_originalOnDoneFns=[];_originalOnStartFns=[];_started=!1;_destroyed=!1;_finished=!1;_position=0;parentPlayer=null;totalTime;constructor(n=0,e=0){this.totalTime=n+e}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}onStart(n){this._originalOnStartFns.push(n),this._onStartFns.push(n)}onDone(n){this._originalOnDoneFns.push(n),this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}init(){}play(){this.hasStarted()||(this._onStart(),this.triggerMicrotask()),this._started=!0}triggerMicrotask(){queueMicrotask(()=>this._onFinish())}_onStart(){this._onStartFns.forEach(n=>n()),this._onStartFns=[]}pause(){}restart(){}finish(){this._onFinish()}destroy(){this._destroyed||(this._destroyed=!0,this.hasStarted()||this._onStart(),this.finish(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this._started=!1,this._finished=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}setPosition(n){this._position=this.totalTime?n*this.totalTime:1}getPosition(){return this.totalTime?this._position/this.totalTime:1}triggerCallback(n){let e=n=="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},Us=class{_onDoneFns=[];_onStartFns=[];_finished=!1;_started=!1;_destroyed=!1;_onDestroyFns=[];parentPlayer=null;totalTime=0;players;constructor(n){this.players=n;let e=0,i=0,r=0,o=this.players.length;o==0?queueMicrotask(()=>this._onFinish()):this.players.forEach(s=>{s.onDone(()=>{++e==o&&this._onFinish()}),s.onDestroy(()=>{++i==o&&this._onDestroy()}),s.onStart(()=>{++r==o&&this._onStart()})}),this.totalTime=this.players.reduce((s,a)=>Math.max(s,a.totalTime),0)}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}init(){this.players.forEach(n=>n.init())}onStart(n){this._onStartFns.push(n)}_onStart(){this.hasStarted()||(this._started=!0,this._onStartFns.forEach(n=>n()),this._onStartFns=[])}onDone(n){this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}hasStarted(){return this._started}play(){this.parentPlayer||this.init(),this._onStart(),this.players.forEach(n=>n.play())}pause(){this.players.forEach(n=>n.pause())}restart(){this.players.forEach(n=>n.restart())}finish(){this._onFinish(),this.players.forEach(n=>n.finish())}destroy(){this._onDestroy()}_onDestroy(){this._destroyed||(this._destroyed=!0,this._onFinish(),this.players.forEach(n=>n.destroy()),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}reset(){this.players.forEach(n=>n.reset()),this._destroyed=!1,this._finished=!1,this._started=!1}setPosition(n){let e=n*this.totalTime;this.players.forEach(i=>{let r=i.totalTime?Math.min(1,e/i.totalTime):1;i.setPosition(r)})}getPosition(){let n=this.players.reduce((e,i)=>e===null||i.totalTime>e.totalTime?i:e,null);return n!=null?n.getPosition():0}beforeDestroy(){this.players.forEach(n=>{n.beforeDestroy&&n.beforeDestroy()})}triggerCallback(n){let e=n=="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},wl="!";var Vp=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:()=>S(AB),providedIn:"root"})}return t})(),rb=class{},AB=(()=>{class t extends Vp{animationModuleType=S(Lc,{optional:!0});_nextAnimationId=0;_renderer;constructor(e,i){super();let r={id:"0",encapsulation:pi.None,styles:[],data:{animation:[]}};if(this._renderer=e.createRenderer(i.body,r),this.animationModuleType===null&&!OB(this._renderer))throw new R(3600,!1)}build(e){let i=this._nextAnimationId;this._nextAnimationId++;let r=Array.isArray(e)?Fp(e):e;return ex(this._renderer,null,i,"register",[r]),new ob(i,this._renderer)}static \u0275fac=function(i){return new(i||t)(F(xn),F(Ie))};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),ob=class extends rb{_id;_renderer;constructor(n,e){super(),this._id=n,this._renderer=e}create(n,e){return new sb(this._id,n,e||{},this._renderer)}},sb=class{id;element;_renderer;parentPlayer=null;_started=!1;constructor(n,e,i,r){this.id=n,this.element=e,this._renderer=r,this._command("create",i)}_listen(n,e){return this._renderer.listen(this.element,`@@${this.id}:${n}`,e)}_command(n,...e){ex(this._renderer,this.element,this.id,n,e)}onDone(n){this._listen("done",n)}onStart(n){this._listen("start",n)}onDestroy(n){this._listen("destroy",n)}init(){this._command("init")}hasStarted(){return this._started}play(){this._command("play"),this._started=!0}pause(){this._command("pause")}restart(){this._command("restart")}finish(){this._command("finish")}destroy(){this._command("destroy")}reset(){this._command("reset"),this._started=!1}setPosition(n){this._command("setPosition",n)}getPosition(){return RB(this._renderer)?.engine?.players[this.id]?.getPosition()??0}totalTime=0};function ex(t,n,e,i,r){t.setProperty(n,`@@${e}:${i}`,r)}function RB(t){let n=t.\u0275type;return n===0?t:n===1?t.animationRenderer:null}function OB(t){let n=t.\u0275type;return n===0||n===1}var tx=["toast-component",""];function NB(t,n){if(t&1){let e=N();d(0,"button",5),D("click",function(){C(e);let r=p();return w(r.remove())}),d(1,"span",6),v(2,"\xD7"),h()()}}function LB(t,n){if(t&1&&(At(0),v(1),Rt()),t&2){let e=p(2);f(),Te("[",e.duplicatesCount+1,"]")}}function FB(t,n){if(t&1&&(d(0,"div"),v(1),T(2,LB,2,1,"ng-container",4),h()),t&2){let e=p();Jt(e.options.titleClass),J("aria-label",e.title),f(),Te(" ",e.title," "),f(),g("ngIf",e.duplicatesCount)}}function VB(t,n){if(t&1&&A(0,"div",7),t&2){let e=p();Jt(e.options.messageClass),g("innerHTML",e.message,mi)}}function jB(t,n){if(t&1&&(d(0,"div",8),v(1),h()),t&2){let e=p();Jt(e.options.messageClass),J("aria-label",e.message),f(),Te(" ",e.message," ")}}function HB(t,n){if(t&1&&(d(0,"div"),A(1,"div",9),h()),t&2){let e=p();f(),rn("width",e.width()+"%")}}function BB(t,n){if(t&1){let e=N();d(0,"button",5),D("click",function(){C(e);let r=p();return w(r.remove())}),d(1,"span",6),v(2,"\xD7"),h()()}}function UB(t,n){if(t&1&&(At(0),v(1),Rt()),t&2){let e=p(2);f(),Te("[",e.duplicatesCount+1,"]")}}function $B(t,n){if(t&1&&(d(0,"div"),v(1),T(2,UB,2,1,"ng-container",4),h()),t&2){let e=p();Jt(e.options.titleClass),J("aria-label",e.title),f(),Te(" ",e.title," "),f(),g("ngIf",e.duplicatesCount)}}function YB(t,n){if(t&1&&A(0,"div",7),t&2){let e=p();Jt(e.options.messageClass),g("innerHTML",e.message,mi)}}function zB(t,n){if(t&1&&(d(0,"div",8),v(1),h()),t&2){let e=p();Jt(e.options.messageClass),J("aria-label",e.message),f(),Te(" ",e.message," ")}}function WB(t,n){if(t&1&&(d(0,"div"),A(1,"div",9),h()),t&2){let e=p();f(),rn("width",e.width()+"%")}}var ab=class{_attachedHost;component;viewContainerRef;injector;constructor(n,e){this.component=n,this.injector=e}attach(n,e){return this._attachedHost=n,n.attach(this,e)}detach(){let n=this._attachedHost;if(n)return this._attachedHost=void 0,n.detach()}get isAttached(){return this._attachedHost!=null}setAttachedHost(n){this._attachedHost=n}},lb=class{_attachedPortal;_disposeFn;attach(n,e){return this._attachedPortal=n,this.attachComponentPortal(n,e)}detach(){this._attachedPortal&&this._attachedPortal.setAttachedHost(),this._attachedPortal=void 0,this._disposeFn&&(this._disposeFn(),this._disposeFn=void 0)}setDisposeFn(n){this._disposeFn=n}},cb=class{_overlayRef;componentInstance;duplicatesCount=0;_afterClosed=new X;_activate=new X;_manualClose=new X;_resetTimeout=new X;_countDuplicate=new X;constructor(n){this._overlayRef=n}manualClose(){this._manualClose.next(),this._manualClose.complete()}manualClosed(){return this._manualClose.asObservable()}timeoutReset(){return this._resetTimeout.asObservable()}countDuplicate(){return this._countDuplicate.asObservable()}close(){this._overlayRef.detach(),this._afterClosed.next(),this._manualClose.next(),this._afterClosed.complete(),this._manualClose.complete(),this._activate.complete(),this._resetTimeout.complete(),this._countDuplicate.complete()}afterClosed(){return this._afterClosed.asObservable()}isInactive(){return this._activate.isStopped}activate(){this._activate.next(),this._activate.complete()}afterActivate(){return this._activate.asObservable()}onDuplicate(n,e){n&&this._resetTimeout.next(),e&&this._countDuplicate.next(++this.duplicatesCount)}},Dl=class{toastId;config;message;title;toastType;toastRef;_onTap=new X;_onAction=new X;constructor(n,e,i,r,o,s){this.toastId=n,this.config=e,this.message=i,this.title=r,this.toastType=o,this.toastRef=s,this.toastRef.afterClosed().subscribe(()=>{this._onAction.complete(),this._onTap.complete()})}triggerTap(){this._onTap.next(),this.config.tapToDismiss&&this._onTap.complete()}onTap(){return this._onTap.asObservable()}triggerAction(n){this._onAction.next(n)}onAction(){return this._onAction.asObservable()}},nx={maxOpened:0,autoDismiss:!1,newestOnTop:!0,preventDuplicates:!1,countDuplicates:!1,resetTimeoutOnDuplicate:!1,includeTitleDuplicates:!1,iconClasses:{error:"toast-error",info:"toast-info",success:"toast-success",warning:"toast-warning"},closeButton:!1,disableTimeOut:!1,timeOut:5e3,extendedTimeOut:1e3,enableHtml:!1,progressBar:!1,toastClass:"ngx-toastr",positionClass:"toast-top-right",titleClass:"toast-title",messageClass:"toast-message",easing:"ease-in",easeTime:300,tapToDismiss:!0,onActivateTick:!1,progressAnimation:"decreasing"},ix=new B("ToastConfig"),ub=class extends lb{_hostDomElement;_componentFactoryResolver;_appRef;constructor(n,e,i){super(),this._hostDomElement=n,this._componentFactoryResolver=e,this._appRef=i}attachComponentPortal(n,e){let i=this._componentFactoryResolver.resolveComponentFactory(n.component),r;return r=i.create(n.injector),this._appRef.attachView(r.hostView),this.setDisposeFn(()=>{this._appRef.detachView(r.hostView),r.destroy()}),e?this._hostDomElement.insertBefore(this._getComponentRootNode(r),this._hostDomElement.firstChild):this._hostDomElement.appendChild(this._getComponentRootNode(r)),r}_getComponentRootNode(n){return n.hostView.rootNodes[0]}},GB=(()=>{class t{_document=S(Ie);_containerElement;ngOnDestroy(){this._containerElement&&this._containerElement.parentNode&&this._containerElement.parentNode.removeChild(this._containerElement)}getContainerElement(){return this._containerElement||this._createContainer(),this._containerElement}_createContainer(){let e=this._document.createElement("div");e.classList.add("overlay-container"),e.setAttribute("aria-live","polite"),this._document.body.appendChild(e),this._containerElement=e}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),db=class{_portalHost;constructor(n){this._portalHost=n}attach(n,e=!0){return this._portalHost.attach(n,e)}detach(){return this._portalHost.detach()}},qB=(()=>{class t{_overlayContainer=S(GB);_componentFactoryResolver=S(So);_appRef=S(kn);_document=S(Ie);_paneElements=new Map;create(e,i){return this._createOverlayRef(this.getPaneElement(e,i))}getPaneElement(e="",i){return this._paneElements.get(i)||this._paneElements.set(i,{}),this._paneElements.get(i)[e]||(this._paneElements.get(i)[e]=this._createPaneElement(e,i)),this._paneElements.get(i)[e]}_createPaneElement(e,i){let r=this._document.createElement("div");return r.id="toast-container",r.classList.add(e),r.classList.add("toast-container"),i?i.getContainerElement().appendChild(r):this._overlayContainer.getContainerElement().appendChild(r),r}_createPortalHost(e){return new ub(e,this._componentFactoryResolver,this._appRef)}_createOverlayRef(e){return new db(this._createPortalHost(e))}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),hn=(()=>{class t{overlay;_injector;sanitizer;ngZone;toastrConfig;currentlyActive=0;toasts=[];overlayContainer;previousToastMessage;index=0;constructor(e,i,r,o,s){this.overlay=i,this._injector=r,this.sanitizer=o,this.ngZone=s,this.toastrConfig=E(E({},e.default),e.config),e.config.iconClasses&&(this.toastrConfig.iconClasses=E(E({},e.default.iconClasses),e.config.iconClasses))}show(e,i,r={},o=""){return this._preBuildNotification(o,e,i,this.applyConfig(r))}success(e,i,r={}){let o=this.toastrConfig.iconClasses.success||"";return this._preBuildNotification(o,e,i,this.applyConfig(r))}error(e,i,r={}){let o=this.toastrConfig.iconClasses.error||"";return this._preBuildNotification(o,e,i,this.applyConfig(r))}info(e,i,r={}){let o=this.toastrConfig.iconClasses.info||"";return this._preBuildNotification(o,e,i,this.applyConfig(r))}warning(e,i,r={}){let o=this.toastrConfig.iconClasses.warning||"";return this._preBuildNotification(o,e,i,this.applyConfig(r))}clear(e){for(let i of this.toasts)if(e!==void 0){if(i.toastId===e){i.toastRef.manualClose();return}}else i.toastRef.manualClose()}remove(e){let i=this._findToast(e);if(!i||(i.activeToast.toastRef.close(),this.toasts.splice(i.index,1),this.currentlyActive=this.currentlyActive-1,!this.toastrConfig.maxOpened||!this.toasts.length))return!1;if(this.currentlyActivethis._buildNotification(e,i,r,o)):this._buildNotification(e,i,r,o)}_buildNotification(e,i,r,o){if(!o.toastComponent)throw new Error("toastComponent required");let s=this.findDuplicate(r,i,this.toastrConfig.resetTimeoutOnDuplicate&&o.timeOut>0,this.toastrConfig.countDuplicates);if((this.toastrConfig.includeTitleDuplicates&&r||i)&&this.toastrConfig.preventDuplicates&&s!==null)return s;this.previousToastMessage=i;let a=!1;this.toastrConfig.maxOpened&&this.currentlyActive>=this.toastrConfig.maxOpened&&(a=!0,this.toastrConfig.autoDismiss&&this.clear(this.toasts[0].toastId));let l=this.overlay.create(o.positionClass,this.overlayContainer);this.index=this.index+1;let c=i;i&&o.enableHtml&&(c=this.sanitizer.sanitize(Qn.HTML,i));let u=new cb(l),m=new Dl(this.index,o,c,r,e,u),b=[{provide:Dl,useValue:m}],_=kt.create({providers:b,parent:this._injector}),M=new ab(o.toastComponent,_),I=l.attach(M,o.newestOnTop);u.componentInstance=I.instance;let O={toastId:this.index,title:r||"",message:i||"",toastRef:u,onShown:u.afterActivate(),onHidden:u.afterClosed(),onTap:m.onTap(),onAction:m.onAction(),portal:I};return a||(this.currentlyActive=this.currentlyActive+1,setTimeout(()=>{O.toastRef.activate()})),this.toasts.push(O),O}static \u0275fac=function(i){return new(i||t)(F(ix),F(qB),F(kt),F(Kr),F(Me))};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})(),QB=(()=>{class t{toastrService;toastPackage;ngZone;message;title;options;duplicatesCount;originalTimeout;width=ht(-1);toastClasses="";state;get _state(){return this.state()}get displayStyle(){if(this.state().value==="inactive")return"none"}timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(e,i,r){this.toastrService=e,this.toastPackage=i,this.ngZone=r,this.message=i.message,this.title=i.title,this.options=i.config,this.originalTimeout=i.config.timeOut,this.toastClasses=`${i.toastType} ${i.config.toastClass}`,this.sub=i.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=i.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=i.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=i.toastRef.countDuplicate().subscribe(o=>{this.duplicatesCount=o}),this.state=ht({value:"inactive",params:{easeTime:this.toastPackage.config.easeTime,easing:"ease-in"}})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.update(e=>W(E({},e),{value:"active"})),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.outsideTimeout(()=>this.remove(),this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let e=new Date().getTime(),i=this.hideTime-e;this.width.set(i/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(r=>100-r),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.update(e=>W(E({},e),{value:"active"})),this.outsideTimeout(()=>this.remove(),this.originalTimeout),this.options.timeOut=this.originalTimeout,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10)}remove(){this.state().value!=="removed"&&(clearTimeout(this.timeout),this.state.update(e=>W(E({},e),{value:"removed"})),this.outsideTimeout(()=>this.toastrService.remove(this.toastPackage.toastId),+this.toastPackage.config.easeTime))}tapToast(){this.state().value!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state().value!=="removed"&&this.options.disableTimeOut!=="extendedTimeOut"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state().value==="removed"||(this.outsideTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&this.outsideInterval(()=>this.updateProgress(),10))}outsideTimeout(e,i){this.ngZone?this.ngZone.runOutsideAngular(()=>this.timeout=setTimeout(()=>this.runInsideAngular(e),i)):this.timeout=setTimeout(()=>e(),i)}outsideInterval(e,i){this.ngZone?this.ngZone.runOutsideAngular(()=>this.intervalId=setInterval(()=>this.runInsideAngular(e),i)):this.intervalId=setInterval(()=>e(),i)}runInsideAngular(e){this.ngZone?this.ngZone.run(()=>e()):e()}static \u0275fac=function(i){return new(i||t)(y(hn),y(Dl),y(Me))};static \u0275cmp=L({type:t,selectors:[["","toast-component",""]],hostVars:5,hostBindings:function(i,r){i&1&&D("click",function(){return r.tapToast()})("mouseenter",function(){return r.stickAround()})("mouseleave",function(){return r.delayedHideToast()}),i&2&&(Pv("@flyInOut",r._state),Jt(r.toastClasses),rn("display",r.displayStyle))},attrs:tx,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(i,r){i&1&&T(0,NB,3,0,"button",0)(1,FB,3,5,"div",1)(2,VB,1,3,"div",2)(3,jB,2,4,"div",3)(4,HB,2,2,"div",4),i&2&&(g("ngIf",r.options.closeButton),f(),g("ngIf",r.title),f(),g("ngIf",r.message&&r.options.enableHtml),f(),g("ngIf",r.message&&!r.options.enableHtml),f(),g("ngIf",r.options.progressBar))},dependencies:[De],encapsulation:2,data:{animation:[no("flyInOut",[Ir("inactive",bt({opacity:0})),Ir("active",bt({opacity:1})),Ir("removed",bt({opacity:0})),ni("inactive => active",Dn("{{ easeTime }}ms {{ easing }}")),ni("active => removed",Dn("{{ easeTime }}ms {{ easing }}"))])]},changeDetection:0})}return t})(),ZB=W(E({},nx),{toastComponent:QB}),hb=(t={})=>Do([{provide:ix,useValue:{default:ZB,config:t}}]),rx=(()=>{class t{static forRoot(e={}){return{ngModule:t,providers:[hb(e)]}}static \u0275fac=function(i){return new(i||t)};static \u0275mod=be({type:t});static \u0275inj=ve({})}return t})();var KB=(()=>{class t{toastrService;toastPackage;appRef;message;title;options;duplicatesCount;originalTimeout;width=ht(-1);toastClasses="";get displayStyle(){return this.state()==="inactive"?"none":null}state=ht("inactive");timeout;intervalId;hideTime;sub;sub1;sub2;sub3;constructor(e,i,r){this.toastrService=e,this.toastPackage=i,this.appRef=r,this.message=i.message,this.title=i.title,this.options=i.config,this.originalTimeout=i.config.timeOut,this.toastClasses=`${i.toastType} ${i.config.toastClass}`,this.sub=i.toastRef.afterActivate().subscribe(()=>{this.activateToast()}),this.sub1=i.toastRef.manualClosed().subscribe(()=>{this.remove()}),this.sub2=i.toastRef.timeoutReset().subscribe(()=>{this.resetTimeout()}),this.sub3=i.toastRef.countDuplicate().subscribe(o=>{this.duplicatesCount=o})}ngOnDestroy(){this.sub.unsubscribe(),this.sub1.unsubscribe(),this.sub2.unsubscribe(),this.sub3.unsubscribe(),clearInterval(this.intervalId),clearTimeout(this.timeout)}activateToast(){this.state.set("active"),!(this.options.disableTimeOut===!0||this.options.disableTimeOut==="timeOut")&&this.options.timeOut&&(this.timeout=setTimeout(()=>{this.remove()},this.options.timeOut),this.hideTime=new Date().getTime()+this.options.timeOut,this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))),this.options.onActivateTick&&this.appRef.tick()}updateProgress(){if(this.width()===0||this.width()===100||!this.options.timeOut)return;let e=new Date().getTime(),i=this.hideTime-e;this.width.set(i/this.options.timeOut*100),this.options.progressAnimation==="increasing"&&this.width.update(r=>100-r),this.width()<=0&&this.width.set(0),this.width()>=100&&this.width.set(100)}resetTimeout(){clearTimeout(this.timeout),clearInterval(this.intervalId),this.state.set("active"),this.options.timeOut=this.originalTimeout,this.timeout=setTimeout(()=>this.remove(),this.originalTimeout),this.hideTime=new Date().getTime()+(this.originalTimeout||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10))}remove(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.state.set("removed"),this.timeout=setTimeout(()=>this.toastrService.remove(this.toastPackage.toastId)))}tapToast(){this.state()!=="removed"&&(this.toastPackage.triggerTap(),this.options.tapToDismiss&&this.remove())}stickAround(){this.state()!=="removed"&&(clearTimeout(this.timeout),this.options.timeOut=0,this.hideTime=0,clearInterval(this.intervalId),this.width.set(0))}delayedHideToast(){this.options.disableTimeOut===!0||this.options.disableTimeOut==="extendedTimeOut"||this.options.extendedTimeOut===0||this.state()==="removed"||(this.timeout=setTimeout(()=>this.remove(),this.options.extendedTimeOut),this.options.timeOut=this.options.extendedTimeOut,this.hideTime=new Date().getTime()+(this.options.timeOut||0),this.width.set(-1),this.options.progressBar&&(this.intervalId=setInterval(()=>this.updateProgress(),10)))}static \u0275fac=function(i){return new(i||t)(y(hn),y(Dl),y(kn))};static \u0275cmp=L({type:t,selectors:[["","toast-component",""]],hostVars:4,hostBindings:function(i,r){i&1&&D("click",function(){return r.tapToast()})("mouseenter",function(){return r.stickAround()})("mouseleave",function(){return r.delayedHideToast()}),i&2&&(Jt(r.toastClasses),rn("display",r.displayStyle))},attrs:tx,decls:5,vars:5,consts:[["type","button","class","toast-close-button","aria-label","Close",3,"click",4,"ngIf"],[3,"class",4,"ngIf"],["role","alert",3,"class","innerHTML",4,"ngIf"],["role","alert",3,"class",4,"ngIf"],[4,"ngIf"],["type","button","aria-label","Close",1,"toast-close-button",3,"click"],["aria-hidden","true"],["role","alert",3,"innerHTML"],["role","alert"],[1,"toast-progress"]],template:function(i,r){i&1&&T(0,BB,3,0,"button",0)(1,$B,3,5,"div",1)(2,YB,1,3,"div",2)(3,zB,2,4,"div",3)(4,WB,2,2,"div",4),i&2&&(g("ngIf",r.options.closeButton),f(),g("ngIf",r.title),f(),g("ngIf",r.message&&r.options.enableHtml),f(),g("ngIf",r.message&&!r.options.enableHtml),f(),g("ngIf",r.options.progressBar))},dependencies:[De],encapsulation:2,changeDetection:0})}return t})(),hse=W(E({},nx),{toastComponent:KB});var Ho=class t{hubConnection;toastr=S(hn);router=S(sn);onlineUsers=ht([]);hubUrl=Yt.hubsUrl;createHubConnection(n){this.hubConnection=new Bs().withUrl(this.hubUrl+"presence",{accessTokenFactory:()=>n.token}).withAutomaticReconnect().build(),this.hubConnection.start().catch(e=>console.log(e)),this.hubConnection.on("UserIsOnline",e=>{this.toastr.info(e+" has connected"),this.onlineUsers.update(i=>[...i,e])}),this.hubConnection.on("UserIsOffline",e=>{this.toastr.warning(e+" has disconnected"),this.onlineUsers.update(i=>i.filter(r=>r!==e))}),this.hubConnection.on("GetOnlineUsers",e=>{this.onlineUsers.set(e)}),this.hubConnection.on("NewMessageReceived",({username:e,knownAs:i})=>{this.toastr.info(i+" has sent you a new message!").onTap.pipe(yt(1)).subscribe(()=>this.router.navigateByUrl("/members/"+e+"?tab=Messages"))}),this.hubConnection.on("PhotoApproved",e=>{this.toastr.success(e.message)}),this.hubConnection.on("PhotoRejected",e=>{this.toastr.error(e.message)})}stopHubConnection(){this.hubConnection?.state===Be.Connected&&this.hubConnection.stop().catch(n=>console.log(n))}static \u0275fac=function(e){return new(e||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})};var tt=class t{http=S(Fn);likesService=S(Fo);presenceSerivce=S(Ho);baseUrl=Yt.apiUrl;currentUser=ht(null);roles=$i(()=>{let n=this.currentUser();if(n&&n.token){let e=JSON.parse(atob(n.token.split(".")[1])).role;return Array.isArray(e)?e:[e]}return[]});login(n){return this.http.post(this.baseUrl+"account/login",n).pipe(G(e=>{e&&this.setCurrentUser(e)}))}register(n){return this.http.post(this.baseUrl+"account/register",n).pipe(G(e=>(e&&this.setCurrentUser(e),e)))}setCurrentUser(n){n.photoUrl||(n.photoUrl="https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain"),localStorage.setItem("user",JSON.stringify(n)),this.currentUser.set(n),this.likesService.getLikeIds(),this.presenceSerivce.createHubConnection(n)}logout(){localStorage.removeItem("user"),this.currentUser.set(null),this.presenceSerivce.stopHubConnection()}static \u0275fac=function(e){return new(e||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})};function JB(t,n){if(t&1&&(d(0,"div",3),v(1),h()),t&2){let e=p();f(),Te(" Please enter ",e.label()," ")}}function XB(t,n){if(t&1&&(d(0,"div",3),v(1),h()),t&2){let e,i=p();f(),hr(" ",i.label()," must be at least ",(e=i.control.getError("minlength"))==null?null:e.requiredLength," characters ")}}function e3(t,n){if(t&1&&(d(0,"div",3),v(1),h()),t&2){let e,i=p();f(),hr(" ",i.label()," must be at most ",(e=i.control.getError("maxlength"))==null?null:e.requiredLength," characters ")}}function t3(t,n){t&1&&(d(0,"div",3),v(1," Passwords do not match "),h())}var jp=class t{constructor(n){this.ngControl=n;this.ngControl.valueAccessor=this}label=Rn("");type=Rn("text");get control(){return this.ngControl.control}writeValue(n){}registerOnChange(n){}registerOnTouched(n){}static \u0275fac=function(e){return new(e||t)(y(jn,2))};static \u0275cmp=L({type:t,selectors:[["app-text-input"]],inputs:{label:[1,"label"],type:[1,"type"]},decls:8,vars:10,consts:[[1,"mb-3","form-floating"],[1,"form-control",3,"type","formControl","placeholder"],["class","invalid-feedback text-start",4,"ngIf"],[1,"invalid-feedback","text-start"]],template:function(e,i){e&1&&(d(0,"div",0),A(1,"input",1),d(2,"label"),v(3),h(),T(4,JB,2,1,"div",2)(5,XB,2,2,"div",2)(6,e3,2,2,"div",2)(7,t3,2,0,"div",2),h()),e&2&&(f(),j("is-invalid",i.control.touched&&i.control.invalid),g("type",i.type())("formControl",i.control)("placeholder",i.label()),f(2),U(i.label()),f(),g("ngIf",(i.control==null?null:i.control.hasError("required"))&&(i.control==null?null:i.control.touched)),f(),g("ngIf",(i.control==null?null:i.control.hasError("minlength"))&&(i.control==null?null:i.control.touched)),f(),g("ngIf",(i.control==null?null:i.control.hasError("maxlength"))&&(i.control==null?null:i.control.touched)),f(),g("ngIf",i.control==null?null:i.control.hasError("isMatching")))},dependencies:[yl,en,Nt,Fs,De],encapsulation:2})};function n3(t,n){return(t%n+n)%n}function qs(t){return t<0?Math.ceil(t)||0:Math.floor(t)}function ri(t){return typeof t=="string"}function Qu(t){return t instanceof Date||Object.prototype.toString.call(t)==="[object Date]"}function ao(t){return t&&t.getTime&&!isNaN(t.getTime())}function Zs(t){return t instanceof Function||Object.prototype.toString.call(t)==="[object Function]"}function Vl(t){return typeof t=="number"||Object.prototype.toString.call(t)==="[object Number]"}function st(t){return t instanceof Array||Object.prototype.toString.call(t)==="[object Array]"}function fn(t,n){return Object.prototype.hasOwnProperty.call(t,n)}function Js(t){return t!=null&&Object.prototype.toString.call(t)==="[object Object]"}function i3(t){if(Object.getOwnPropertyNames)return Object.getOwnPropertyNames(t).length===0;let n;for(n in t)if(t.hasOwnProperty(n))return!1;return!0}function Fx(t){return t===void 0}function Se(t){let n=+t,e=0;return n!==0&&isFinite(n)&&(e=qs(n)),e}var Uu={},ox={date:"day",hour:"hours",minute:"minutes",second:"seconds",millisecond:"milliseconds"};function pn(t,n){let e=t.toLowerCase(),i=t;e in ox&&(i=ox[e]),Uu[e]=Uu[`${e}s`]=Uu[n]=i}function Vx(t){return ri(t)?Uu[t]||Uu[t.toLowerCase()]:void 0}function r3(t){let n={},e,i;for(i in t)fn(t,i)&&(e=Vx(i),e&&(n[e]=t[i]));return n}var Zi=0,oo=1,xr=2,Wt=3,Ki=4,so=5,Ks=6,o3=7,s3=8;function ro(t,n,e){let i=`${Math.abs(t)}`,r=n-i.length,s=t>=0?e?"+":"":"-",a=Math.pow(10,Math.max(0,r)).toString().substr(1);return s+a+i}var fb={},Nl={},jx=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|YYYYYY|YYYYY|YYYY|YY|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g;function re(t,n,e,i){t&&(Nl[t]=i),n&&(Nl[n[0]]=function(){return ro(i.apply(null,arguments),n[1],n[2])}),e&&(Nl[e]=function(r,o){return o.locale.ordinal(i.apply(null,arguments),t)})}function a3(t){let n=t.match(jx),e=n.length,i=new Array(e);for(let r=0;r=0&&isFinite(i.getUTCFullYear())&&i.setUTCFullYear(t),i}function Jp(t,n=0,e=1,i=0,r=0,o=0,s=0){let a=new Date(t,n,e,i,r,o,s);return t<100&&t>=0&&isFinite(a.getFullYear())&&a.setFullYear(t),a}function Ee(t,n=!1){return n?t.getUTCHours():t.getHours()}function Rl(t,n=!1){return n?t.getUTCMinutes():t.getMinutes()}function xb(t,n=!1){return n?t.getUTCSeconds():t.getSeconds()}function io(t,n=!1){return n?t.getUTCMilliseconds():t.getMilliseconds()}function c3(t){return t.getTime()}function Ji(t,n=!1){return n?t.getUTCDay():t.getDay()}function Wu(t,n=!1){return n?t.getUTCDate():t.getDate()}function Ae(t,n=!1){return n?t.getUTCMonth():t.getMonth()}function Ft(t,n=!1){return n?t.getUTCFullYear():t.getFullYear()}function u3(t){return Math.floor(t.valueOf()/1e3)}function Hx(t){return Jp(t.getFullYear(),t.getMonth(),1,t.getHours(),t.getMinutes(),t.getSeconds())}function Bx(t,n){return t.getDay()===Number(n)}function ea(t,n){return!t||!n?!1:ta(t,n)&&Ae(t)===Ae(n)}function ta(t,n){return!t||!n?!1:Ft(t)===Ft(n)}function lo(t,n){return!t||!n?!1:ta(t,n)&&ea(t,n)&&Wu(t)===Wu(n)}var Ux=/\d/,ii=/\d\d/,$x=/\d{3}/,kb=/\d{4}/,Wp=/[+-]?\d{6}/,lt=/\d\d?/,sx=/\d\d\d\d?/,ax=/\d\d\d\d\d\d?/,Up=/\d{1,3}/,Ab=/\d{1,4}/,Gp=/[+-]?\d{1,6}/,d3=/\d+/,qp=/[+-]?\d+/;var pb=/Z|[+-]\d\d(?::?\d\d)?/gi,h3=/[+-]?\d+(\.\d{1,3})?/,$u=/[0-9]{0,256}['a-z\u00A0-\u05FF\u0700-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF]{1,256}|[\u0600-\u06FF\/]{1,256}(\s*?[\u0600-\u06FF]{1,256}){1,2}/i,Qp={};function q(t,n,e){if(Zs(n)){Qp[t]=n;return}Qp[t]=function(i,r){return i&&e?e:n}}function f3(t,n){return fn(Qp,t)?Qp[t](!1,n):new RegExp(p3(t))}function p3(t){return Qs(t.replace("\\","").replace(/\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g,(n,e,i,r,o)=>e||i||r||o))}function Qs(t){return t.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&")}var Rb={};function at(t,n){let e=ri(t)?[t]:t,i=n;if(Vl(n)&&(i=function(r,o,s){return o[n]=Se(r),s}),st(e)&&Zs(i)){let r;for(r=0;r68?1900:2e3)}function Yu(t){return Yx(t)?366:365}function Yx(t){return t%4===0&&t%100!==0||t%400===0}function jb(t,n){if(isNaN(t)||isNaN(n))return NaN;let e=n3(n,12),i=t+(n-e)/12;return e===1?Yx(i)?29:28:31-e%7%2}function b3(){re("M",["MM",2,!1],"Mo",function(t,n){return(Ae(t,n.isUTC)+1).toString(10)}),re("MMM",null,null,function(t,n){return n.locale.monthsShort(t,n.format,n.isUTC)}),re("MMMM",null,null,function(t,n){return n.locale.months(t,n.format,n.isUTC)}),pn("month","M"),mn("month",8),q("M",lt),q("MM",lt,ii),q("MMM",function(t,n){return n.monthsShortRegex(t)}),q("MMMM",function(t,n){return n.monthsRegex(t)}),at(["M","MM"],function(t,n,e){return n[oo]=Se(t)-1,e}),at(["MMM","MMMM"],function(t,n,e,i){let r=e._locale.monthsParse(t,i,e._strict);return r!=null?n[oo]=r:Ne(e).invalidMonth=!!t,e})}var C3={year:0,month:0,day:0,hour:0,minute:0,seconds:0};function qt(t,n){let e=Object.assign({},C3,n),i=t.getFullYear()+(e.year||0),r=t.getMonth()+(e.month||0),o=t.getDate()+(e.day||0);return e.month&&!e.day&&(o=Math.min(o,jb(i,r))),Jp(i,r,o,t.getHours()+(e.hour||0),t.getMinutes()+(e.minute||0),t.getSeconds()+(e.seconds||0))}function zx(t,n){return Jp(Ml(t.getFullYear(),n.year),Ml(t.getMonth(),n.month),1,Ml(t.getHours(),n.hour),Ml(t.getMinutes(),n.minute),Ml(t.getSeconds(),n.seconds),Ml(t.getMilliseconds(),n.milliseconds))}function Ml(t,n){return Vl(n)?n:t}function Pb(t,n,e){let i=Math.min(Wu(t),jb(Ft(t),n));return e?t.setUTCMonth(n,i):t.setMonth(n,i),t}function w3(t,n,e){return e?t.setUTCHours(n):t.setHours(n),t}function D3(t,n,e){return e?t.setUTCMinutes(n):t.setMinutes(n),t}function M3(t,n,e){return e?t.setUTCSeconds(n):t.setSeconds(n),t}function S3(t,n,e){return e?t.setUTCMilliseconds(n):t.setMilliseconds(n),t}function Wx(t,n,e){return e?t.setUTCDate(n):t.setDate(n),t}function E3(t,n){return t.setTime(n),t}function Xs(t){return new Date(t.getTime())}function kr(t,n,e){let i=Xs(t);switch(n){case"year":Pb(i,0,e);case"quarter":case"month":Wx(i,1,e);case"week":case"isoWeek":case"day":case"date":w3(i,0,e);case"hours":D3(i,0,e);case"minutes":M3(i,0,e);case"seconds":S3(i,0,e)}return n==="week"&&QU(i,0,{isUTC:e}),n==="isoWeek"&&KU(i,1),n==="quarter"&&Pb(i,Math.floor(Ae(i,e)/3)*3,e),i}function Zu(t,n,e){let i=n;i==="date"&&(i="day");let r=kr(t,i,e),o=qu(r,1,i==="isoWeek"?"week":i,e);return zU(o,1,"milliseconds",e)}function T3(){re("DDD",["DDDD",3,!1],"DDDo",function(t){return Gx(t).toString(10)}),pn("dayOfYear","DDD"),mn("dayOfYear",4),q("DDD",Up),q("DDDD",$x),at(["DDD","DDDD"],function(t,n,e){return e._dayOfYear=Se(t),e})}function Gx(t,n){let e=+kr(t,"day",n),i=+kr(t,"year",n),r=e-i,o=1e3*60*60*24;return Math.round(r/o)+1}function Zp(t,n,e){let i=n-e+7;return-((Vb(t,0,i).getUTCDay()-n+7)%7)+i-1}function I3(t,n,e,i,r){let o=(7+e-i)%7,s=Zp(t,i,r),a=1+7*(n-1)+o+s,l,c;return a<=0?(l=t-1,c=Yu(l)+a):a>Yu(t)?(l=t+1,c=a-Yu(t)):(l=t,c=a),{year:l,dayOfYear:c}}function Ll(t,n,e,i){let r=Zp(Ft(t,i),n,e),o=Math.floor((Gx(t,i)-r-1)/7)+1,s,a;return o<1?(a=Ft(t,i)-1,s=o+$p(a,n,e)):o>$p(Ft(t,i),n,e)?(s=o-$p(Ft(t,i),n,e),a=Ft(t,i)+1):(a=Ft(t,i),s=o),{week:s,year:a}}function $p(t,n,e){let i=Zp(t,n,e),r=Zp(t+1,n,e);return(Yu(t)-i+r)/7}var lx=/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/,x3="January_February_March_April_May_June_July_August_September_October_November_December".split("_"),qx="Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),k3="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Qx="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),A3="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),Zx={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},R3="%d",O3=/\d{1,2}/,P3=$u,N3=$u,Nb=class{constructor(n){n&&this.set(n)}set(n){let e;for(e in n){if(!n.hasOwnProperty(e))continue;let i=n[e],r=Zs(i)?e:`_${e}`;this[r]=i}this._config=n}calendar(n,e,i){let r=this._calendar[n]||this._calendar.sameElse;return Zs(r)?r.call(null,e,i):r}longDateFormat(n){let e=this._longDateFormat[n],i=this._longDateFormat[n.toUpperCase()];return e||!i?e:(this._longDateFormat[n]=i.replace(/MMMM|MM|DD|dddd/g,function(r){return r.slice(1)}),this._longDateFormat[n])}get invalidDate(){return this._invalidDate}set invalidDate(n){this._invalidDate=n}ordinal(n,e){return this._ordinal.replace("%d",n.toString(10))}preparse(n,e){return n}getFullYear(n,e=!1){return Ft(n,e)}postformat(n){return n}relativeTime(n,e,i,r){let o=this._relativeTime[i];return Zs(o)?o(n,e,i,r):o.replace(/%d/i,n.toString(10))}pastFuture(n,e){let i=this._relativeTime[n>0?"future":"past"];return Zs(i)?i(e):i.replace(/%s/i,e)}months(n,e,i=!1){if(!n)return st(this._months)?this._months:this._months.standalone;if(st(this._months))return this._months[Ae(n,i)];let r=(this._months.isFormat||lx).test(e)?"format":"standalone";return this._months[r][Ae(n,i)]}monthsShort(n,e,i=!1){if(!n)return st(this._monthsShort)?this._monthsShort:this._monthsShort.standalone;if(st(this._monthsShort))return this._monthsShort[Ae(n,i)];let r=lx.test(e)?"format":"standalone";return this._monthsShort[r][Ae(n,i)]}monthsParse(n,e,i){let r,o;if(this._monthsParseExact)return this.handleMonthStrictParse(n,e,i);this._monthsParse||(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[]);let s;for(s=0;s<12;s++){if(r=new Date(Date.UTC(2e3,s)),i&&!this._longMonthsParse[s]){let a=this.months(r,"",!0).replace(".",""),l=this.monthsShort(r,"",!0).replace(".","");this._longMonthsParse[s]=new RegExp(`^${a}$`,"i"),this._shortMonthsParse[s]=new RegExp(`^${l}$`,"i")}if(!i&&!this._monthsParse[s]&&(o=`^${this.months(r,"",!0)}|^${this.monthsShort(r,"",!0)}`,this._monthsParse[s]=new RegExp(o.replace(".",""),"i")),i&&e==="MMMM"&&this._longMonthsParse[s].test(n)||i&&e==="MMM"&&this._shortMonthsParse[s].test(n)||!i&&this._monthsParse[s].test(n))return s}}monthsRegex(n){return this._monthsParseExact?(fn(this,"_monthsRegex")||this.computeMonthsParse(),n?this._monthsStrictRegex:this._monthsRegex):(fn(this,"_monthsRegex")||(this._monthsRegex=N3),this._monthsStrictRegex&&n?this._monthsStrictRegex:this._monthsRegex)}monthsShortRegex(n){return this._monthsParseExact?(fn(this,"_monthsRegex")||this.computeMonthsParse(),n?this._monthsShortStrictRegex:this._monthsShortRegex):(fn(this,"_monthsShortRegex")||(this._monthsShortRegex=P3),this._monthsShortStrictRegex&&n?this._monthsShortStrictRegex:this._monthsShortRegex)}week(n,e){return Ll(n,this._week.dow,this._week.doy,e).week}firstDayOfWeek(){return this._week.dow}firstDayOfYear(){return this._week.doy}weekdays(n,e,i){if(!n)return st(this._weekdays)?this._weekdays:this._weekdays.standalone;if(st(this._weekdays))return this._weekdays[Ji(n,i)];let r=this._weekdays.isFormat.test(e)?"format":"standalone";return this._weekdays[r][Ji(n,i)]}weekdaysMin(n,e,i){return n?this._weekdaysMin[Ji(n,i)]:this._weekdaysMin}weekdaysShort(n,e,i){return n?this._weekdaysShort[Ji(n,i)]:this._weekdaysShort}weekdaysParse(n,e,i){let r,o;if(this._weekdaysParseExact)return this.handleWeekStrictParse(n,e,i);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),r=0;r<7;r++){let s=Yp(new Date(Date.UTC(2e3,1)),r,null,!0);if(i&&!this._fullWeekdaysParse[r]&&(this._fullWeekdaysParse[r]=new RegExp(`^${this.weekdays(s,"",!0).replace(".",".?")}$`,"i"),this._shortWeekdaysParse[r]=new RegExp(`^${this.weekdaysShort(s,"",!0).replace(".",".?")}$`,"i"),this._minWeekdaysParse[r]=new RegExp(`^${this.weekdaysMin(s,"",!0).replace(".",".?")}$`,"i")),this._weekdaysParse[r]||(o=`^${this.weekdays(s,"",!0)}|^${this.weekdaysShort(s,"",!0)}|^${this.weekdaysMin(s,"",!0)}`,this._weekdaysParse[r]=new RegExp(o.replace(".",""),"i")),!st(this._fullWeekdaysParse)||!st(this._shortWeekdaysParse)||!st(this._minWeekdaysParse)||!st(this._weekdaysParse))return;if(i&&e==="dddd"&&this._fullWeekdaysParse[r].test(n))return r;if(i&&e==="ddd"&&this._shortWeekdaysParse[r].test(n))return r;if(i&&e==="dd"&&this._minWeekdaysParse[r].test(n))return r;if(!i&&this._weekdaysParse[r].test(n))return r}}weekdaysRegex(n){return this._weekdaysParseExact?(fn(this,"_weekdaysRegex")||this.computeWeekdaysParse(),n?this._weekdaysStrictRegex:this._weekdaysRegex):(fn(this,"_weekdaysRegex")||(this._weekdaysRegex=$u),this._weekdaysStrictRegex&&n?this._weekdaysStrictRegex:this._weekdaysRegex)}weekdaysShortRegex(n){return this._weekdaysParseExact?(fn(this,"_weekdaysRegex")||this.computeWeekdaysParse(),n?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(fn(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=$u),this._weekdaysShortStrictRegex&&n?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}weekdaysMinRegex(n){return this._weekdaysParseExact?(fn(this,"_weekdaysRegex")||this.computeWeekdaysParse(),n?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(fn(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=$u),this._weekdaysMinStrictRegex&&n?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}isPM(n){return n.toLowerCase().charAt(0)==="p"}meridiem(n,e,i){return n>11?i?"pm":"PM":i?"am":"AM"}formatLongDate(n){this._longDateFormat=this._longDateFormat?this._longDateFormat:Zx;let e=this._longDateFormat[n],i=this._longDateFormat[n.toUpperCase()];return e||!i?e:(this._longDateFormat[n]=i.replace(/MMMM|MM|DD|dddd/g,r=>r.slice(1)),this._longDateFormat[n])}handleMonthStrictParse(n,e,i){let r=n.toLocaleLowerCase(),o,s,a;if(!this._monthsParse)for(this._monthsParse=[],this._longMonthsParse=[],this._shortMonthsParse=[],o=0;o<12;++o)a=new Date(2e3,o),this._shortMonthsParse[o]=this.monthsShort(a,"").toLocaleLowerCase(),this._longMonthsParse[o]=this.months(a,"").toLocaleLowerCase();return i?e==="MMM"?(s=this._shortMonthsParse.indexOf(r),s!==-1?s:null):(s=this._longMonthsParse.indexOf(r),s!==-1?s:null):e==="MMM"?(s=this._shortMonthsParse.indexOf(r),s!==-1?s:(s=this._longMonthsParse.indexOf(r),s!==-1?s:null)):(s=this._longMonthsParse.indexOf(r),s!==-1?s:(s=this._shortMonthsParse.indexOf(r),s!==-1?s:null))}handleWeekStrictParse(n,e,i){let r,o=n.toLocaleLowerCase();if(!this._weekdaysParse){this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[];let s;for(s=0;s<7;++s){let a=Yp(new Date(Date.UTC(2e3,1)),s,null,!0);this._minWeekdaysParse[s]=this.weekdaysMin(a).toLocaleLowerCase(),this._shortWeekdaysParse[s]=this.weekdaysShort(a).toLocaleLowerCase(),this._weekdaysParse[s]=this.weekdays(a,"").toLocaleLowerCase()}}if(!(!st(this._weekdaysParse)||!st(this._shortWeekdaysParse)||!st(this._minWeekdaysParse)))return i?e==="dddd"?(r=this._weekdaysParse.indexOf(o),r!==-1?r:null):e==="ddd"?(r=this._shortWeekdaysParse.indexOf(o),r!==-1?r:null):(r=this._minWeekdaysParse.indexOf(o),r!==-1?r:null):e==="dddd"?(r=this._weekdaysParse.indexOf(o),r!==-1||(r=this._shortWeekdaysParse.indexOf(o),r!==-1)?r:(r=this._minWeekdaysParse.indexOf(o),r!==-1?r:null)):e==="ddd"?(r=this._shortWeekdaysParse.indexOf(o),r!==-1||(r=this._weekdaysParse.indexOf(o),r!==-1)?r:(r=this._minWeekdaysParse.indexOf(o),r!==-1?r:null)):(r=this._minWeekdaysParse.indexOf(o),r!==-1||(r=this._weekdaysParse.indexOf(o),r!==-1)?r:(r=this._shortWeekdaysParse.indexOf(o),r!==-1?r:null))}computeMonthsParse(){let n=[],e=[],i=[],r,o;for(o=0;o<12;o++)r=new Date(2e3,o),n.push(this.monthsShort(r,"")),e.push(this.months(r,"")),i.push(this.months(r,"")),i.push(this.monthsShort(r,""));for(n.sort($s),e.sort($s),i.sort($s),o=0;o<12;o++)n[o]=Qs(n[o]),e[o]=Qs(e[o]);for(o=0;o<24;o++)i[o]=Qs(i[o]);this._monthsRegex=new RegExp(`^(${i.join("|")})`,"i"),this._monthsShortRegex=this._monthsRegex,this._monthsStrictRegex=new RegExp(`^(${e.join("|")})`,"i"),this._monthsShortStrictRegex=new RegExp(`^(${n.join("|")})`,"i")}computeWeekdaysParse(){let n=[],e=[],i=[],r=[],o;for(o=0;o<7;o++){let s=Yp(new Date(Date.UTC(2e3,1)),o,null,!0),a=this.weekdaysMin(s),l=this.weekdaysShort(s),c=this.weekdays(s);n.push(a),e.push(l),i.push(c),r.push(a),r.push(l),r.push(c)}for(n.sort($s),e.sort($s),i.sort($s),r.sort($s),o=0;o<7;o++)e[o]=Qs(e[o]),i[o]=Qs(i[o]),r[o]=Qs(r[o]);this._weekdaysRegex=new RegExp(`^(${r.join("|")})`,"i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp(`^(${i.join("|")})`,"i"),this._weekdaysShortStrictRegex=new RegExp(`^(${e.join("|")})`,"i"),this._weekdaysMinStrictRegex=new RegExp(`^(${n.join("|")})`,"i")}};function $s(t,n){return n.length-t.length}var L3={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},F3="Invalid date",V3={dow:0,doy:6},j3=/[ap]\.?m?\.?/i,H3={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},B3={calendar:L3,longDateFormat:Zx,invalidDate:F3,ordinal:R3,dayOfMonthOrdinalParse:O3,relativeTime:H3,months:x3,monthsShort:qx,week:V3,weekdays:k3,weekdaysMin:A3,weekdaysShort:Qx,meridiemParse:j3};function U3(t,n,e){let i=Math.min(t.length,n.length),r=Math.abs(t.length-n.length),o=0,s;for(s=0;s0;){if(e=lU(r.slice(0,o).join("-")),e)return e;if(n&&n.length>=o&&U3(r,n,!0)>=o-1)break;o--}i++}return null}function aU(t,n){let e=Object.assign({},t);for(let i in n)fn(n,i)&&(Js(t[i])&&Js(n[i])?(e[i]={},Object.assign(e[i],t[i]),Object.assign(e[i],n[i])):n[i]!=null?e[i]=n[i]:delete e[i]);for(let i in t)fn(t,i)&&!fn(n,i)&&Js(t[i])&&(e[i]=Object.assign({},e[i]));return e}function lU(t){return Uo[t]||console.error(`Khronos locale error: please load locale "${t}" before using it`),Uo[t]}function Xx(t,n){let e;return t&&(Fx(n)?e=an(t):ri(t)&&(e=e1(t,n)),e&&(zu=e)),zu&&zu._abbr}function e1(t,n){if(n===null)return delete Uo[t],zu=an("en"),null;if(!n)return;let e=B3;if(n.abbr=t,n.parentLocale!=null)if(Uo[n.parentLocale]!=null)e=Uo[n.parentLocale]._config;else return Vu[n.parentLocale]||(Vu[n.parentLocale]=[]),Vu[n.parentLocale].push({name:t,config:n}),null;return Uo[t]=new Nb(aU(e,n)),Vu[t]&&Vu[t].forEach(function(i){e1(i.name,i.config)}),Xx(t),Uo[t]}function an(t){if(cU(),!t)return zu;let n=st(t)?t:[t];return sU(n)}function cU(){Uo.en||(Xx("en",{dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal(t){let n=t%10,e=Se(t%100/10)===1?"th":n===1?"st":n===2?"nd":n===3?"rd":"th";return t+e}}),$3(),z3(),v3(),W3(),G3(),q3(),Q3(),K3(),b3(),iU(),rU(),oU(),T3(),WU(),_3())}var Bu=["year","quarter","month","week","day","hours","minutes","seconds","milliseconds"],uU=Bu.reduce((t,n)=>(t[n]=!0,t),{});function dU(t){if(Object.keys(t).some(i=>i in uU&&t[i]===null||isNaN(t[i])))return!1;let e=!1;for(let i=0;i=0&&e>=0&&i>=0||n<=0&&e<=0&&i<=0||(n+=fx(Lb(i)+e)*864e5,e=0,i=0),r.milliseconds=n%1e3;let o=qs(n/1e3);r.seconds=o%60;let s=qs(o/60);r.minutes=s%60;let a=qs(s/60);r.hours=a%24,e+=qs(a/24);let l=qs(t1(e));i+=l,e-=fx(Lb(l));let c=qs(i/12);return i%=12,r.day=e,r.month=i,r.year=c,t}function t1(t){return t*4800/146097}function Lb(t){return t*146097/4800}var Sl=Math.round,El={ss:44,s:45,m:45,h:22,d:26,M:11};function fU(t,n,e,i,r){return r.relativeTime(n||1,!!e,t,i)}function pU(t,n,e){let i=Yb(t).abs(),r=Sl(i.as("s")),o=Sl(i.as("m")),s=Sl(i.as("h")),a=Sl(i.as("d")),l=Sl(i.as("M")),c=Sl(i.as("y")),u=r<=El.ss&&["s",r]||r0,e];return fU.apply(null,m)}var Kp=class{constructor(n,e={}){this._data={},this._locale=an(),this._locale=e&&e._locale||an();let i=n,r=i.year||0,o=i.quarter||0,s=i.month||0,a=i.week||0,l=i.day||0,c=i.hours||0,u=i.minutes||0,m=i.seconds||0,b=i.milliseconds||0;return this._isValid=dU(i),this._milliseconds=+b+m*1e3+u*60*1e3+c*1e3*60*60,this._days=+l+a*7,this._months=+s+o*3+r*12,hU(this)}isValid(){return this._isValid}humanize(n){if(!this.isValid())return this.localeData().invalidDate;let e=this.localeData(),i=pU(this,!n,e);return n&&(i=e.pastFuture(+this,i)),e.postformat(i)}localeData(){return this._locale}locale(n){return n?(this._locale=an(n)||this._locale,this):this._locale._abbr}abs(){let n=Math.abs,e=this._data;return this._milliseconds=n(this._milliseconds),this._days=n(this._days),this._months=n(this._months),e.milliseconds=n(e.milliseconds),e.seconds=n(e.seconds),e.minutes=n(e.minutes),e.hours=n(e.hours),e.month=n(e.month),e.year=n(e.year),this}as(n){if(!this.isValid())return NaN;let e,i,r=this._milliseconds,o=Vx(n);if(o==="month"||o==="year")return e=this._days+r/864e5,i=this._months+t1(e),o==="month"?i:i/12;switch(e=this._days+Math.round(Lb(this._months)),o){case"week":return e/7+r/6048e5;case"day":return e+r/864e5;case"hours":return e*24+r/36e5;case"minutes":return e*1440+r/6e4;case"seconds":return e*86400+r/1e3;case"milliseconds":return Math.floor(e*864e5)+r;default:throw new Error(`Unknown unit ${o}`)}}valueOf(){return this.isValid()?this._milliseconds+this._days*864e5+this._months%12*2592e6+Se(this._months/12)*31536e6:NaN}};function mU(t){return t instanceof Kp}function Hb(t){if(t._isValid==null){let n=Ne(t),e=Array.prototype.some.call(n.parsedDateParts,function(r){return r!=null}),i=!isNaN(t._d&&t._d.getTime())&&n.overflow<0&&!n.empty&&!n.invalidMonth&&!n.invalidWeekday&&!n.weekdayMismatch&&!n.nullInput&&!n.invalidFormat&&!n.userInvalidated&&(!n.meridiem||n.meridiem&&e);if(t._strict&&(i=i&&n.charsLeftOver===0&&n.unusedTokens.length===0&&n.bigHour===void 0),Object.isFrozen==null||!Object.isFrozen(t))t._isValid=i;else return i}return t._isValid}function Xp(t,n){return t._d=new Date(NaN),Object.assign(Ne(t),n||{userInvalidated:!0}),t}function gU(t){return t._isValid=!1,t}var _U=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,yU=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([\+\-]\d\d(?::?\d\d)?|\s*Z)?)?$/,vU=/Z|[+-]\d\d(?::?\d\d)?/,Bp=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/,!0],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/,!0],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/,!0],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/,!0],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/,!0],["YYYYMMDD",/\d{8}/,!0],["GGGG[W]WWE",/\d{4}W\d{3}/,!0],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/,!0]],gb=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],bU=/^\/?Date\((\-?\d+)/i,CU={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60},wU=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/;function n1(t){if(!ri(t._i))return t;let n=t._i,e=_U.exec(n)||yU.exec(n),i,r,o,s;if(!e)return t._isValid=!1,t;let a,l;for(a=0,l=Bp.length;an.formatLongDate(s)||s;for(r.lastIndex=0;i>=0&&r.test(e);)e=e.replace(r,o),r.lastIndex=0,i-=1;return e}function Ol(t,n,e){return t??n??e}function kU(t){let n=new Date;return t._useUTC?[n.getUTCFullYear(),n.getUTCMonth(),n.getUTCDate()]:[n.getFullYear(),n.getMonth(),n.getDate()]}function Bb(t){let n=[],e,i,r;if(t._d)return t;let o=kU(t);for(t._w&&t._a[xr]==null&&t._a[oo]==null&&AU(t),t._dayOfYear!=null&&(r=Ol(t._a[Zi],o[Zi]),(t._dayOfYear>Yu(r)||t._dayOfYear===0)&&(Ne(t)._overflowDayOfYear=!0),i=new Date(Date.UTC(r,0,t._dayOfYear)),t._a[oo]=i.getUTCMonth(),t._a[xr]=i.getUTCDate()),e=0;e<3&&t._a[e]==null;++e)t._a[e]=n[e]=o[e];for(;e<7;e++)t._a[e]=n[e]=t._a[e]==null?e===2?1:0:t._a[e];t._a[Wt]===24&&t._a[Ki]===0&&t._a[so]===0&&t._a[Ks]===0&&(t._nextDay=!0,t._a[Wt]=0),t._d=(t._useUTC?Vb:Jp).apply(null,n);let s=t._useUTC?t._d.getUTCDay():t._d.getDay();return t._tzm!=null&&t._d.setUTCMinutes(t._d.getUTCMinutes()-t._tzm),t._nextDay&&(t._a[Wt]=24),t._w&&typeof t._w.d<"u"&&t._w.d!==s&&(Ne(t).weekdayMismatch=!0),t}function AU(t){let n,e,i,r,o,s,a,l=t._w;if(l.GG!=null||l.W!=null||l.E!=null)r=1,o=4,n=Ol(l.GG,t._a[Zi],Ll(new Date,1,4).year),e=Ol(l.W,1),i=Ol(l.E,1),(i<1||i>7)&&(a=!0);else{r=t._locale._week.dow,o=t._locale._week.doy;let c=Ll(new Date,r,o);n=Ol(l.gg,t._a[Zi],c.year),e=Ol(l.w,c.week),l.d!=null?(i=l.d,(i<0||i>6)&&(a=!0)):l.e!=null?(i=l.e+r,(l.e<0||l.e>6)&&(a=!0)):i=r}return e<1||e>$p(n,r,o)?Ne(t)._overflowWeeks=!0:a!=null?Ne(t)._overflowWeekday=!0:(s=I3(n,e,i,r,o),t._a[Zi]=s.year,t._dayOfYear=s.dayOfYear),t}function o1(t){let n,e=t._a;return e&&Ne(t).overflow===-2&&(n=e[oo]<0||e[oo]>11?oo:e[xr]<1||e[xr]>jb(e[Zi],e[oo])?xr:e[Wt]<0||e[Wt]>24||e[Wt]===24&&(e[Ki]!==0||e[so]!==0||e[Ks]!==0)?Wt:e[Ki]<0||e[Ki]>59?Ki:e[so]<0||e[so]>59?so:e[Ks]<0||e[Ks]>999?Ks:-1,Ne(t)._overflowDayOfYear&&(nxr)&&(n=xr),Ne(t)._overflowWeeks&&n===-1&&(n=o3),Ne(t)._overflowWeekday&&n===-1&&(n=s3),Ne(t).overflow=n),t}var RU="ISO_8601",OU="RFC_2822";function Ub(t){if(t._f===RU)return n1(t);if(t._f===OU)return i1(t);if(t._a=[],Ne(t).empty=!0,st(t._f)||!t._i&&t._i!==0)return t;let n=t._i.toString(),e=0,i=n.length,r=r1(t._f,t._locale).match(jx)||[],o,s,a,l;for(o=0;o0&&Ne(t).unusedInput.push(l),n=n.slice(n.indexOf(a)+a.length),e+=a.length),Nl[s]?(a?Ne(t).empty=!1:Ne(t).unusedTokens.push(s),m3(s,a,t)):t._strict&&!a&&Ne(t).unusedTokens.push(s);return Ne(t).charsLeftOver=i-e,n.length>0&&Ne(t).unusedInput.push(n),t._a[Wt]<=12&&Ne(t).bigHour===!0&&t._a[Wt]>0&&(Ne(t).bigHour=void 0),Ne(t).parsedDateParts=t._a.slice(0),Ne(t).meridiem=t._meridiem,t._a[Wt]=PU(t._locale,t._a[Wt],t._meridiem),Bb(t),o1(t)}function PU(t,n,e){let i=n;if(e==null)return i;if(t.meridiemHour!=null)return t.meridiemHour(i,e);if(t.isPM==null)return i;let r=t.isPM(e);return r&&i<12&&(i+=12),!r&&i===12&&(i=0),i}function NU(t){let n,e,i,r;if(!t._f||t._f.length===0)return Ne(t).invalidFormat=!0,Xp(t);let o;for(o=0;ori(i)?parseInt(i,10):i)}return Bb(t)}function FU(t){let n=o1(VU(t));return n._d=new Date(n._d!=null?n._d.getTime():NaN),Hb(Object.assign({},n,{_isValid:null}))||(n._d=new Date(NaN)),n}function VU(t){let n=t._i,e=t._f;return t._locale=t._locale||an(t._l),n===null||e===void 0&&n===""?Xp(t,{nullInput:!0}):(ri(n)&&(t._i=n=t._locale.preparse(n,e)),Qu(n)?(t._d=Xs(n),t):(st(e)?NU(t):e?Ub(t):jU(t),Hb(t)||(t._d=null),t))}function jU(t){let n=t._i;if(Fx(n))t._d=new Date;else if(Qu(n))t._d=Xs(n);else if(ri(n))IU(t);else if(st(n)&&n.length){let e=n.slice(0);t._a=e.map(i=>ri(i)?parseInt(i,10):i),Bb(t)}else if(Js(n))LU(t);else if(Vl(n))t._d=new Date(n);else return Xp(t);return t}function HU(t,n,e,i,r){let o={},s=t;return(Js(s)&&i3(s)||st(s)&&s.length===0)&&(s=void 0),o._useUTC=o._isUTC=r,o._l=e,o._i=s,o._f=n,o._strict=i,FU(o)}function Fl(t,n,e,i,r){return Qu(t)?t:HU(t,n,e,i,r)._d}function $b(t){return t instanceof Date?new Date(t.getUTCFullYear(),t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds()):null}function Fb(t){return t<0?Math.round(t*-1)*-1:Math.round(t)}function co(t,n,e="milliseconds"){return!t||!n?!1:e==="milliseconds"?t.valueOf()>n.valueOf():n.valueOf()"u"||!n||!n.length?!1:n.some(e=>e===t.getDay())}function Ku(t,n,e="milliseconds"){if(!t||!n)return!1;if(e==="milliseconds")return t.valueOf()===n.valueOf();let i=n.valueOf();return kr(t,e).valueOf()<=i&&i<=Zu(t,e).valueOf()}var BU=/^(\-|\+)?(?:(\d*)[. ])?(\d+)\:(\d+)(?:\:(\d+)(\.\d*)?)?$/,UU=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function Yb(t,n,e={}){let i=$U(t,n);return new Kp(i,e)}function $U(t,n){if(t==null)return{};if(mU(t))return{milliseconds:t._milliseconds,day:t._days,month:t._months};if(Vl(t))return n?{[n]:t}:{milliseconds:t};if(ri(t)){let e=BU.exec(t);if(e){let i=e[1]==="-"?-1:1;return{year:0,day:Se(e[xr])*i,hours:Se(e[Wt])*i,minutes:Se(e[Ki])*i,seconds:Se(e[so])*i,milliseconds:Se(Fb(Se(e[Ks])*1e3))*i}}if(e=UU.exec(t),e){let i=e[1]==="-"?-1:(e[1]==="+",1);return{year:Ys(e[2],i),month:Ys(e[3],i),week:Ys(e[4],i),day:Ys(e[5],i),hours:Ys(e[6],i),minutes:Ys(e[7],i),seconds:Ys(e[8],i)}}}if(Js(t)&&("from"in t||"to"in t)){let e=YU(Fl(t.from),Fl(t.to));return{milliseconds:e.milliseconds,month:e.months}}return t}function Ys(t,n){let e=t&&parseFloat(t.replace(",","."));return(isNaN(e)?0:e)*n}function px(t,n){let e={milliseconds:0,months:0};e.months=Ae(n)-Ae(t)+(Ft(n)-Ft(t))*12;let i=qu(Xs(t),e.months,"month");return co(i,n)&&--e.months,e.milliseconds=+n-+qu(Xs(t),e.months,"month"),e}function YU(t,n){if(!(ao(t)&&ao(n)))return{milliseconds:0,months:0};let e,i=eU(n,t,{_offset:t.getTimezoneOffset()});return Yo(t,i)?e=px(t,i):(e=px(i,t),e.milliseconds=-e.milliseconds,e.months=-e.months),e}function qu(t,n,e,i){let r=Yb(n,e);return a1(t,r,1,i)}function zU(t,n,e,i){let r=Yb(n,e);return a1(t,r,-1,i)}function a1(t,n,e,i){let r=n._milliseconds,o=Fb(n._days),s=Fb(n._months);return s&&Pb(t,Ae(t,i)+s*e,i),o&&Wx(t,Wu(t,i)+o*e,i),r&&E3(t,c3(t)+r*e),Xs(t)}function WU(){re("d",null,"do",function(t,n){return Ji(t,n.isUTC).toString(10)}),re("dd",null,null,function(t,n){return n.locale.weekdaysMin(t,n.format,n.isUTC)}),re("ddd",null,null,function(t,n){return n.locale.weekdaysShort(t,n.format,n.isUTC)}),re("dddd",null,null,function(t,n){return n.locale.weekdays(t,n.format,n.isUTC)}),re("e",null,null,function(t,n){return l1(t,n.locale,n.isUTC).toString(10)}),re("E",null,null,function(t,n){return ZU(t,n.isUTC).toString(10)}),pn("day","d"),pn("weekday","e"),pn("isoWeekday","E"),mn("day",11),mn("weekday",11),mn("isoWeekday",11),q("d",lt),q("e",lt),q("E",lt),q("dd",function(t,n){return n.weekdaysMinRegex(t)}),q("ddd",function(t,n){return n.weekdaysShortRegex(t)}),q("dddd",function(t,n){return n.weekdaysRegex(t)}),Gu(["dd","ddd","dddd"],function(t,n,e,i){let r=e._locale.weekdaysParse(t,i,e._strict);return r!=null?n.d=r:Ne(e).invalidWeekday=!!t,e}),Gu(["d","e","E"],function(t,n,e,i){return n[i]=Se(t),e})}function GU(t,n){if(!ri(t))return t;let e=parseInt(t,10);if(!isNaN(e))return e;let i=n.weekdaysParse(t);return Vl(i)?i:null}function qU(t,n=an()){return ri(t)?n.weekdaysParse(t)%7||7:Vl(t)&&isNaN(t)?null:t}function Yp(t,n,e=an(),i){let r=Ji(t,i),o=GU(n,e);return qu(t,o-r,"day")}function Gt(t,n){return Ji(t,n)}function l1(t,n=an(),e){return(Ji(t,e)+7-n.firstDayOfWeek())%7}function QU(t,n,e={}){let i=l1(t,e.locale,e.isUTC);return qu(t,n-i,"day")}function ZU(t,n){return Ji(t,n)||7}function KU(t,n,e={}){let i=qU(n,e.locale);return Yp(t,Gt(t)%7?i:i-7)}var JU={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},XU={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},mx=function(t){return t===0?0:t===1?1:t===2?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},e$={s:["\u0623\u0642\u0644 \u0645\u0646 \u062B\u0627\u0646\u064A\u0629","\u062B\u0627\u0646\u064A\u0629 \u0648\u0627\u062D\u062F\u0629",["\u062B\u0627\u0646\u064A\u062A\u0627\u0646","\u062B\u0627\u0646\u064A\u062A\u064A\u0646"],"%d \u062B\u0648\u0627\u0646","%d \u062B\u0627\u0646\u064A\u0629","%d \u062B\u0627\u0646\u064A\u0629"],m:["\u0623\u0642\u0644 \u0645\u0646 \u062F\u0642\u064A\u0642\u0629","\u062F\u0642\u064A\u0642\u0629 \u0648\u0627\u062D\u062F\u0629",["\u062F\u0642\u064A\u0642\u062A\u0627\u0646","\u062F\u0642\u064A\u0642\u062A\u064A\u0646"],"%d \u062F\u0642\u0627\u0626\u0642","%d \u062F\u0642\u064A\u0642\u0629","%d \u062F\u0642\u064A\u0642\u0629"],h:["\u0623\u0642\u0644 \u0645\u0646 \u0633\u0627\u0639\u0629","\u0633\u0627\u0639\u0629 \u0648\u0627\u062D\u062F\u0629",["\u0633\u0627\u0639\u062A\u0627\u0646","\u0633\u0627\u0639\u062A\u064A\u0646"],"%d \u0633\u0627\u0639\u0627\u062A","%d \u0633\u0627\u0639\u0629","%d \u0633\u0627\u0639\u0629"],d:["\u0623\u0642\u0644 \u0645\u0646 \u064A\u0648\u0645","\u064A\u0648\u0645 \u0648\u0627\u062D\u062F",["\u064A\u0648\u0645\u0627\u0646","\u064A\u0648\u0645\u064A\u0646"],"%d \u0623\u064A\u0627\u0645","%d \u064A\u0648\u0645\u064B\u0627","%d \u064A\u0648\u0645"],M:["\u0623\u0642\u0644 \u0645\u0646 \u0634\u0647\u0631","\u0634\u0647\u0631 \u0648\u0627\u062D\u062F",["\u0634\u0647\u0631\u0627\u0646","\u0634\u0647\u0631\u064A\u0646"],"%d \u0623\u0634\u0647\u0631","%d \u0634\u0647\u0631\u0627","%d \u0634\u0647\u0631"],y:["\u0623\u0642\u0644 \u0645\u0646 \u0639\u0627\u0645","\u0639\u0627\u0645 \u0648\u0627\u062D\u062F",["\u0639\u0627\u0645\u0627\u0646","\u0639\u0627\u0645\u064A\u0646"],"%d \u0623\u0639\u0648\u0627\u0645","%d \u0639\u0627\u0645\u064B\u0627","%d \u0639\u0627\u0645"]},Di=function(t){return function(n,e){let i=mx(n),r=e$[t][mx(n)];return i===2&&(r=r[e?0:1]),r.replace(/%d/i,n.toString())}},gx=["\u064A\u0646\u0627\u064A\u0631","\u0641\u0628\u0631\u0627\u064A\u0631","\u0645\u0627\u0631\u0633","\u0623\u0628\u0631\u064A\u0644","\u0645\u0627\u064A\u0648","\u064A\u0648\u0646\u064A\u0648","\u064A\u0648\u0644\u064A\u0648","\u0623\u063A\u0633\u0637\u0633","\u0633\u0628\u062A\u0645\u0628\u0631","\u0623\u0643\u062A\u0648\u0628\u0631","\u0646\u0648\u0641\u0645\u0628\u0631","\u062F\u064A\u0633\u0645\u0628\u0631"],$se={abbr:"ar",months:gx,monthsShort:gx,weekdays:"\u0627\u0644\u0623\u062D\u062F_\u0627\u0644\u0625\u062B\u0646\u064A\u0646_\u0627\u0644\u062B\u0644\u0627\u062B\u0627\u0621_\u0627\u0644\u0623\u0631\u0628\u0639\u0627\u0621_\u0627\u0644\u062E\u0645\u064A\u0633_\u0627\u0644\u062C\u0645\u0639\u0629_\u0627\u0644\u0633\u0628\u062A".split("_"),weekdaysShort:"\u0623\u062D\u062F_\u0625\u062B\u0646\u064A\u0646_\u062B\u0644\u0627\u062B\u0627\u0621_\u0623\u0631\u0628\u0639\u0627\u0621_\u062E\u0645\u064A\u0633_\u062C\u0645\u0639\u0629_\u0633\u0628\u062A".split("_"),weekdaysMin:"\u062D_\u0646_\u062B_\u0631_\u062E_\u062C_\u0633".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200FM/\u200FYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM(t){return t==="\u0645"},meridiem(t,n,e){return t<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0644\u064A\u0648\u0645 \u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextDay:"[\u063A\u062F\u064B\u0627 \u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",nextWeek:"dddd [\u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastDay:"[\u0623\u0645\u0633 \u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",lastWeek:"dddd [\u0639\u0646\u062F \u0627\u0644\u0633\u0627\u0639\u0629] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062F %s",past:"\u0645\u0646\u0630 %s",s:Di("s"),ss:Di("s"),m:Di("m"),mm:Di("m"),h:Di("h"),hh:Di("h"),d:Di("d"),dd:Di("d"),M:Di("M"),MM:Di("M"),y:Di("y"),yy:Di("y")},preparse(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(n){return XU[n]}).replace(/،/g,",")},postformat(t){return t.replace(/\d/g,function(n){return JU[n]}).replace(/,/g,"\u060C")},week:{dow:6,doy:12}};var Yse={abbr:"bg",months:"\u044F\u043D\u0443\u0430\u0440\u0438_\u0444\u0435\u0432\u0440\u0443\u0430\u0440\u0438_\u043C\u0430\u0440\u0442_\u0430\u043F\u0440\u0438\u043B_\u043C\u0430\u0439_\u044E\u043D\u0438_\u044E\u043B\u0438_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043F\u0442\u0435\u043C\u0432\u0440\u0438_\u043E\u043A\u0442\u043E\u043C\u0432\u0440\u0438_\u043D\u043E\u0435\u043C\u0432\u0440\u0438_\u0434\u0435\u043A\u0435\u043C\u0432\u0440\u0438".split("_"),monthsShort:"\u044F\u043D\u0440_\u0444\u0435\u0432_\u043C\u0430\u0440_\u0430\u043F\u0440_\u043C\u0430\u0439_\u044E\u043D\u0438_\u044E\u043B\u0438_\u0430\u0432\u0433_\u0441\u0435\u043F_\u043E\u043A\u0442_\u043D\u043E\u0435_\u0434\u0435\u043A".split("_"),weekdays:"\u043D\u0435\u0434\u0435\u043B\u044F_\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u043D\u0438\u043A_\u0432\u0442\u043E\u0440\u043D\u0438\u043A_\u0441\u0440\u044F\u0434\u0430_\u0447\u0435\u0442\u0432\u044A\u0440\u0442\u044A\u043A_\u043F\u0435\u0442\u044A\u043A_\u0441\u044A\u0431\u043E\u0442\u0430".split("_"),weekdaysShort:"\u043D\u0435\u0434_\u043F\u043E\u043D_\u0432\u0442\u043E_\u0441\u0440\u044F_\u0447\u0435\u0442_\u043F\u0435\u0442_\u0441\u044A\u0431".split("_"),weekdaysMin:"\u043D\u0434_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"D.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[\u0414\u043D\u0435\u0441 \u0432] LT",nextDay:"[\u0423\u0442\u0440\u0435 \u0432] LT",nextWeek:"dddd [\u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432] LT",lastWeek:function(t){switch(t){case 0:case 3:case 6:return"[\u0412 \u0438\u0437\u043C\u0438\u043D\u0430\u043B\u0430\u0442\u0430] dddd [\u0432] LT";case 1:case 2:case 4:case 5:return"[\u0412 \u0438\u0437\u043C\u0438\u043D\u0430\u043B\u0438\u044F] dddd [\u0432] LT"}},sameElse:"L"},relativeTime:{future:"\u0441\u043B\u0435\u0434 %s",past:"\u043F\u0440\u0435\u0434\u0438 %s",s:"\u043D\u044F\u043A\u043E\u043B\u043A\u043E \u0441\u0435\u043A\u0443\u043D\u0434\u0438",ss:"%d \u0441\u0435\u043A\u0443\u043D\u0434\u0438",m:"\u043C\u0438\u043D\u0443\u0442\u0430",mm:"%d \u043C\u0438\u043D\u0443\u0442\u0438",h:"\u0447\u0430\u0441",hh:"%d \u0447\u0430\u0441\u0430",d:"\u0434\u0435\u043D",dd:"%d \u0434\u043D\u0438",M:"\u043C\u0435\u0441\u0435\u0446",MM:"%d \u043C\u0435\u0441\u0435\u0446\u0430",y:"\u0433\u043E\u0434\u0438\u043D\u0430",yy:"%d \u0433\u043E\u0434\u0438\u043D\u0438"},dayOfMonthOrdinalParse:/\d{1,2}-(ев|ен|ти|ви|ри|ми)/,ordinal:function(t){let n=Number(t),e=n%10,i=n%100;return n===0?n+"-\u0435\u0432":i===0?n+"-\u0435\u043D":i>10&&i<20?n+"-\u0442\u0438":e===1?n+"-\u0432\u0438":e===2?n+"-\u0440\u0438":e===7||e===8?n+"-\u043C\u0438":n+"-\u0442\u0438"},week:{dow:1,doy:7}};var _x="gen._feb._mar._abr._mai._jun._jul._ago._set._oct._nov._des.".split("_"),t$="ene_feb_mar_abr_mai_jun_jul_ago_set_oct_nov_des".split("_"),_b=[/^gen/i,/^feb/i,/^mar/i,/^abr/i,/^mai/i,/^jun/i,/^jul/i,/^ago/i,/^set/i,/^oct/i,/^nov/i,/^des/i],yx=/^(gener|febrer|març|abril|maig|juny|juliol|agost|setembre|octubre|novembre|desembre|gen\.?|feb\.?|mar\.?|abr\.?|mai\.?|jun\.?|jul\.?|ago\.?|set\.?|oct\.?|nov\.?|des\.?)/i,zse={abbr:"ca",months:"gener_febrer_mar\xE7_abril_maig_juny_juliol_agost_setembre_octubre_novembre_desembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?t$[Ae(t,e)]:_x[Ae(t,e)]:_x},monthsRegex:yx,monthsShortRegex:yx,monthsStrictRegex:/^(gener|febrer|març|abril|maig|juny|juliol|agost|setembre|octubre|novembre|desembre)/i,monthsShortStrictRegex:/^(gen\.?|feb\.?|mar\.?|abr\.?|mai\.?|jun\.?|jul\.?|ago\.?|set\.?|oct\.?|nov\.?|des\.?)/i,monthsParse:_b,longMonthsParse:_b,shortMonthsParse:_b,weekdays:"diumenge_dilluns_dimarts_dimecres_dijous_divendres_dissabte".split("_"),weekdaysShort:"diu._dil._dim._dix._dij._div._dis.".split("_"),weekdaysMin:"dg_dl_dt_dc_dj_dv_ds".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay(t){return"[avui a "+("la"+(Ee(t)!==1)?"les":"")+"] LT"},nextDay(t){return"[dema a "+("la"+(Ee(t)!==1)?"les":"")+"] LT"},nextWeek(t){return"dddd [a "+("la"+(Ee(t)!==1)?"les":"")+"] LT"},lastDay(t){return"[ahir a "+("la"+(Ee(t)!==1)?"les":"")+"] LT"},lastWeek(t){return"[el] dddd ["+("passada la "+(Ee(t)!==1)?"passades les":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fa %s",s:"uns segons",ss:"%d segons",m:"un minut",mm:"%d minuts",h:"una hora",hh:"%d hores",d:"un dia",dd:"%d dies",M:"un mes",MM:"%d mesos",y:"un any",yy:"%d anys"},dayOfMonthOrdinalParse:/\d{1,2}(er|on|er|rt|é)/,ordinal(t){let n=Number(t),e=n>4?"\xE9":n===1||n===3?"r":n===2?"n":n===4?"t":"\xE9";return n+e},week:{dow:1,doy:4}};var yb="leden_\xFAnor_b\u0159ezen_duben_kv\u011Bten_\u010Derven_\u010Dervenec_srpen_z\xE1\u0159\xED_\u0159\xEDjen_listopad_prosinec".split("_"),vb="led_\xFAno_b\u0159e_dub_kv\u011B_\u010Dvn_\u010Dvc_srp_z\xE1\u0159_\u0159\xEDj_lis_pro".split("_");function Tl(t){return t>1&&t<5&&~~(t/10)!==1}function Mi(t,n,e,i){let r=t+" ";switch(e){case"s":return n||i?"p\xE1r sekund":"p\xE1r sekundami";case"ss":return n||i?r+(Tl(t)?"sekundy":"sekund"):r+"sekundami";case"m":return n?"minuta":i?"minutu":"minutou";case"mm":return n||i?r+(Tl(t)?"minuty":"minut"):r+"minutami";case"h":return n?"hodina":i?"hodinu":"hodinou";case"hh":return n||i?r+(Tl(t)?"hodiny":"hodin"):r+"hodinami";case"d":return n||i?"den":"dnem";case"dd":return n||i?r+(Tl(t)?"dny":"dn\xED"):r+"dny";case"M":return n||i?"m\u011Bs\xEDc":"m\u011Bs\xEDcem";case"MM":return n||i?r+(Tl(t)?"m\u011Bs\xEDce":"m\u011Bs\xEDc\u016F"):r+"m\u011Bs\xEDci";case"y":return n||i?"rok":"rokem";case"yy":return n||i?r+(Tl(t)?"roky":"let"):r+"lety"}}var Wse={abbr:"cs",months:yb,monthsShort:vb,monthsParse:function(t,n){let e,i=[];for(e=0;e<12;e++)i[e]=new RegExp("^"+t[e]+"$|^"+n[e]+"$","i");return i}(yb,vb),shortMonthsParse:function(t){let n,e=[];for(n=0;n<12;n++)e[n]=new RegExp("^"+t[n]+"$","i");return e}(vb),longMonthsParse:function(t){let n,e=[];for(n=0;n<12;n++)e[n]=new RegExp("^"+t[n]+"$","i");return e}(yb),weekdays:"ned\u011Ble_pond\u011Bl\xED_\xFAter\xFD_st\u0159eda_\u010Dtvrtek_p\xE1tek_sobota".split("_"),weekdaysShort:"ne_po_\xFAt_st_\u010Dt_p\xE1_so".split("_"),weekdaysMin:"ne_po_\xFAt_st_\u010Dt_p\xE1_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes v] LT",nextDay:"[z\xEDtra v] LT",nextWeek(t){switch(Gt(t)){case 0:return"[v ned\u011Bli v] LT";case 1:case 2:return"[v] dddd [v] LT";case 3:return"[ve st\u0159edu v] LT";case 4:return"[ve \u010Dtvrtek v] LT";case 5:return"[v p\xE1tek v] LT";case 6:return"[v sobotu v] LT"}},lastDay:"[v\u010Dera v] LT",lastWeek(t){switch(Gt(t)){case 0:return"[minulou ned\u011Bli v] LT";case 1:case 2:return"[minul\xE9] dddd [v] LT";case 3:return"[minulou st\u0159edu v] LT";case 4:case 5:return"[minul\xFD] dddd [v] LT";case 6:return"[minulou sobotu v] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"p\u0159ed %s",s:Mi,ss:Mi,m:Mi,mm:Mi,h:Mi,hh:Mi,d:Mi,dd:Mi,M:Mi,MM:Mi,y:Mi,yy:Mi},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var Gse={abbr:"da",months:"Januar_Februar_Marts_April_Maj_Juni_Juli_August_September_Oktober_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Maj_Jun_Jul_Aug_Sep_Okt_Nov_Dec".split("_"),weekdays:"S\xF8ndag_Mandag_Tirsdag_Onsdag_Torsdag_Fredag_L\xF8rdag".split("_"),weekdaysShort:"S\xF8n_Man_Tir_Ons_Tor_Fre_L\xF8r".split("_"),weekdaysMin:"S\xF8_Ma_Ti_On_To_Fr_L\xF8".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd [d.] D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"p\xE5 dddd [kl.] LT",lastDay:"[i g\xE5r kl.] LT",lastWeek:"[i] dddd[s kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"f\xE5 sekunder",m:"et minut",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dage",M:"en m\xE5ned",MM:"%d m\xE5neder",y:"et \xE5r",yy:"%d \xE5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};function Bo(t,n,e,i){let r={m:["eine Minute","einer Minute"],h:["eine Stunde","einer Stunde"],d:["ein Tag","einem Tag"],dd:[t+" Tage",t+" Tagen"],M:["ein Monat","einem Monat"],MM:[t+" Monate",t+" Monaten"],y:["ein Jahr","einem Jahr"],yy:[t+" Jahre",t+" Jahren"]};return n?r[e][0]:r[e][1]}var qse={abbr:"de",months:"Januar_Februar_M\xE4rz_April_Mai_Juni_Juli_August_September_Oktober_November_Dezember".split("_"),monthsShort:"Jan._Feb._M\xE4rz_Apr._Mai_Juni_Juli_Aug._Sep._Okt._Nov._Dez.".split("_"),monthsParseExact:!0,weekdays:"Sonntag_Montag_Dienstag_Mittwoch_Donnerstag_Freitag_Samstag".split("_"),weekdaysShort:"So._Mo._Di._Mi._Do._Fr._Sa.".split("_"),weekdaysMin:"So_Mo_Di_Mi_Do_Fr_Sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY HH:mm",LLLL:"dddd, D. MMMM YYYY HH:mm"},calendar:{sameDay:"[heute um] LT [Uhr]",sameElse:"L",nextDay:"[morgen um] LT [Uhr]",nextWeek:"dddd [um] LT [Uhr]",lastDay:"[gestern um] LT [Uhr]",lastWeek:"[letzten] dddd [um] LT [Uhr]"},relativeTime:{future:"in %s",past:"vor %s",s:"ein paar Sekunden",ss:"%d Sekunden",m:Bo,mm:"%d Minuten",h:Bo,hh:"%d Stunden",d:Bo,dd:Bo,M:Bo,MM:Bo,y:Bo,yy:Bo},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var Qse={abbr:"en-gb",months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),monthsShort:"Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"),weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),weekdaysShort:"Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),weekdaysMin:"Su_Mo_Tu_We_Th_Fr_Sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal(t){let n=Number(t),e=n%10,i=~~(n%100/10)===1?"th":e===1?"st":e===2?"nd":e===3?"rd":"th";return n+i},week:{dow:1,doy:4}};var vx="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),n$="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),bb=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],bx=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,Zse={abbr:"es-do",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?n$[Ae(t,e)]:vx[Ae(t,e)]:vx},monthsRegex:bx,monthsShortRegex:bx,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:bb,longMonthsParse:bb,shortMonthsParse:bb,weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay(t){return"[hoy a la"+(Ee(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1ana a la"+(Ee(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [a la"+(Ee(t)!==1?"s":"")+"] LT"},lastDay(t){return"[ayer a la"+(Ee(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[el] dddd [pasado a la"+(Ee(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:1,doy:4}};var Cx="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),i$="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),Cb=[/^ene/i,/^feb/i,/^mar/i,/^abr/i,/^may/i,/^jun/i,/^jul/i,/^ago/i,/^sep/i,/^oct/i,/^nov/i,/^dic/i],wx=/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre|ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,Kse={abbr:"es",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?i$[Ae(t,e)]:Cx[Ae(t,e)]:Cx},monthsRegex:wx,monthsShortRegex:wx,monthsStrictRegex:/^(enero|febrero|marzo|abril|mayo|junio|julio|agosto|septiembre|octubre|noviembre|diciembre)/i,monthsShortStrictRegex:/^(ene\.?|feb\.?|mar\.?|abr\.?|may\.?|jun\.?|jul\.?|ago\.?|sep\.?|oct\.?|nov\.?|dic\.?)/i,monthsParse:Cb,longMonthsParse:Cb,shortMonthsParse:Cb,weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay(t){return"[hoy a la"+(Ee(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1ana a la"+(Ee(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [a la"+(Ee(t)!==1?"s":"")+"] LT"},lastDay(t){return"[ayer a la"+(Ee(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[el] dddd [pasado a la"+(Ee(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:1,doy:4}};var Dx="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),r$="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),Jse={abbr:"es-pr",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?r$[Ae(t,e)]:Dx[Ae(t,e)]:Dx},monthsParseExact:!0,weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY h:mm A",LLLL:"dddd, D [de] MMMM [de] YYYY h:mm A"},calendar:{sameDay(t){return"[hoy a la"+(Ee(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1ana a la"+(Ee(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [a la"+(Ee(t)!==1?"s":"")+"] LT"},lastDay(t){return"[ayer a la"+(Ee(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[el] dddd [pasado a la"+(Ee(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:0,doy:6}};var Mx="ene._feb._mar._abr._may._jun._jul._ago._sep._oct._nov._dic.".split("_"),o$="ene_feb_mar_abr_may_jun_jul_ago_sep_oct_nov_dic".split("_"),Xse={abbr:"es-us",months:"enero_febrero_marzo_abril_mayo_junio_julio_agosto_septiembre_octubre_noviembre_diciembre".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?o$[Ae(t,e)]:Mx[Ae(t,e)]:Mx},monthsParseExact:!0,weekdays:"domingo_lunes_martes_mi\xE9rcoles_jueves_viernes_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._mi\xE9._jue._vie._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_mi_ju_vi_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"MM/DD/YYYY",LL:"MMMM [de] D [de] YYYY",LLL:"MMMM [de] D [de] YYYY h:mm A",LLLL:"dddd, MMMM [de] D [de] YYYY h:mm A"},calendar:{sameDay(t){return"[hoy a la"+(Ee(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1ana a la"+(Ee(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [a la"+(Ee(t)!==1?"s":"")+"] LT"},lastDay(t){return"[ayer a la"+(Ee(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[el] dddd [pasado a la"+(Ee(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"hace %s",s:"unos segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"una hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un a\xF1o",yy:"%d a\xF1os"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:0,doy:6}};var Qi=function(t,n,e,i){let r={s:["m\xF5ne sekundi","m\xF5ni sekund","paar sekundit"],ss:[t+"sekundi",t+"sekundit"],m:["\xFChe minuti","\xFCks minut"],mm:[t+" minuti",t+" minutit"],h:["\xFChe tunni","tund aega","\xFCks tund"],hh:[t+" tunni",t+" tundi"],d:["\xFChe p\xE4eva","\xFCks p\xE4ev"],M:["kuu aja","kuu aega","\xFCks kuu"],MM:[t+" kuu",t+" kuud"],y:["\xFChe aasta","aasta","\xFCks aasta"],yy:[t+" aasta",t+" aastat"]};return n?r[e][2]?r[e][2]:r[e][1]:i?r[e][0]:r[e][1]},eae={abbr:"et",months:"jaanuar_veebruar_m\xE4rts_aprill_mai_juuni_juuli_august_september_oktoober_november_detsember".split("_"),monthsShort:"jaan_veebr_m\xE4rts_apr_mai_juuni_juuli_aug_sept_okt_nov_dets".split("_"),weekdays:"p\xFChap\xE4ev_esmasp\xE4ev_teisip\xE4ev_kolmap\xE4ev_neljap\xE4ev_reede_laup\xE4ev".split("_"),weekdaysShort:"P_E_T_K_N_R_L".split("_"),weekdaysMin:"P_E_T_K_N_R_L".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[T\xE4na,] LT",nextDay:"[Homme,] LT",nextWeek:"[J\xE4rgmine] dddd LT",lastDay:"[Eile,] LT",lastWeek:"[Eelmine] dddd LT",sameElse:"L"},relativeTime:{future:"%s p\xE4rast",past:"%s tagasi",s:Qi,ss:Qi,m:Qi,mm:Qi,h:Qi,hh:Qi,d:Qi,dd:"%d p\xE4eva",M:Qi,MM:Qi,y:Qi,yy:Qi},dayOfMonthOrdinalParse:/\d{1,2}./,ordinal:"%d.",week:{dow:1,doy:4}};var zp="nolla yksi kaksi kolme nelj\xE4 viisi kuusi seitsem\xE4n kahdeksan yhdeks\xE4n".split(" "),s$=["nolla","yhden","kahden","kolmen","nelj\xE4n","viiden","kuuden",zp[7],zp[8],zp[9]];function Si(t,n,e,i){var r="";switch(e){case"s":return i?"muutaman sekunnin":"muutama sekunti";case"ss":return i?"sekunnin":"sekuntia";case"m":return i?"minuutin":"minuutti";case"mm":r=i?"minuutin":"minuuttia";break;case"h":return i?"tunnin":"tunti";case"hh":r=i?"tunnin":"tuntia";break;case"d":return i?"p\xE4iv\xE4n":"p\xE4iv\xE4";case"dd":r=i?"p\xE4iv\xE4n":"p\xE4iv\xE4\xE4";break;case"M":return i?"kuukauden":"kuukausi";case"MM":r=i?"kuukauden":"kuukautta";break;case"y":return i?"vuoden":"vuosi";case"yy":r=i?"vuoden":"vuotta";break}return r=a$(t,i)+" "+r,r}function a$(t,n){return t<10?n?s$[t]:zp[t]:t}var tae={abbr:"fi",months:"tammikuu_helmikuu_maaliskuu_huhtikuu_toukokuu_kes\xE4kuu_hein\xE4kuu_elokuu_syyskuu_lokakuu_marraskuu_joulukuu".split("_"),monthsShort:"tammi_helmi_maalis_huhti_touko_kes\xE4_hein\xE4_elo_syys_loka_marras_joulu".split("_"),weekdays:"sunnuntai_maanantai_tiistai_keskiviikko_torstai_perjantai_lauantai".split("_"),weekdaysShort:"su_ma_ti_ke_to_pe_la".split("_"),weekdaysMin:"su_ma_ti_ke_to_pe_la".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD.MM.YYYY",LL:"Do MMMM[ta] YYYY",LLL:"Do MMMM[ta] YYYY, [klo] HH.mm",LLLL:"dddd, Do MMMM[ta] YYYY, [klo] HH.mm",l:"D.M.YYYY",ll:"Do MMM YYYY",lll:"Do MMM YYYY, [klo] HH.mm",llll:"ddd, Do MMM YYYY, [klo] HH.mm"},calendar:{sameDay:"[t\xE4n\xE4\xE4n] [klo] LT",nextDay:"[huomenna] [klo] LT",nextWeek:"dddd [klo] LT",lastDay:"[eilen] [klo] LT",lastWeek:"[viime] dddd[na] [klo] LT",sameElse:"L"},relativeTime:{future:"%s p\xE4\xE4st\xE4",past:"%s sitten",s:Si,ss:Si,m:Si,mm:Si,h:Si,hh:Si,d:Si,dd:Si,M:Si,MM:Si,y:Si,yy:Si},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var nae={abbr:"fr",months:"janvier_f\xE9vrier_mars_avril_mai_juin_juillet_ao\xFBt_septembre_octobre_novembre_d\xE9cembre".split("_"),monthsShort:"janv._f\xE9vr._mars_avr._mai_juin_juil._ao\xFBt_sept._oct._nov._d\xE9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xE0] LT",nextDay:"[Demain \xE0] LT",nextWeek:"dddd [\xE0] LT",lastDay:"[Hier \xE0] LT",lastWeek:"dddd [dernier \xE0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|)/,ordinal(t,n){let e=Number(t);switch(n){case"D":return e+(e===1?"er":"");default:case"M":case"Q":case"DDD":case"d":return e+(e===1?"er":"e");case"w":case"W":return e+(e===1?"re":"e")}},week:{dow:1,doy:4}};var iae={abbr:"fr-ca",months:"janvier_f\xE9vrier_mars_avril_mai_juin_juillet_ao\xFBt_septembre_octobre_novembre_d\xE9cembre".split("_"),monthsShort:"janv._f\xE9vr._mars_avr._mai_juin_juil._ao\xFBt_sept._oct._nov._d\xE9c.".split("_"),monthsParseExact:!0,weekdays:"dimanche_lundi_mardi_mercredi_jeudi_vendredi_samedi".split("_"),weekdaysShort:"dim._lun._mar._mer._jeu._ven._sam.".split("_"),weekdaysMin:"di_lu_ma_me_je_ve_sa".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Aujourd\u2019hui \xE0] LT",nextDay:"[Demain \xE0] LT",nextWeek:"dddd [\xE0] LT",lastDay:"[Hier \xE0] LT",lastWeek:"dddd [dernier \xE0] LT",sameElse:"L"},relativeTime:{future:"dans %s",past:"il y a %s",s:"quelques secondes",ss:"%d secondes",m:"une minute",mm:"%d minutes",h:"une heure",hh:"%d heures",d:"un jour",dd:"%d jours",M:"un mois",MM:"%d mois",y:"un an",yy:"%d ans"},dayOfMonthOrdinalParse:/\d{1,2}(er|e|)/,ordinal(t,n){let e=Number(t);switch(n){case"D":return e+(e===1?"er":"");default:case"M":case"Q":case"DDD":case"d":return e+(e===1?"er":"e");case"w":case"W":return e+(e===1?"re":"e")}},week:{dow:1,doy:4}};var Sx="xan._feb._mar._abr._mai._xu\xF1._xul._ago._set._out._nov._dec.".split("_"),l$="xan_feb_mar_abr_mai_xu\xF1_xul_ago_set_out_nov_dec".split("_"),wb=[/^xan/i,/^feb/i,/^mar/i,/^abr/i,/^mai/i,/^xuñ/i,/^xul/i,/^ago/i,/^set/i,/^out/i,/^nov/i,/^dec/i],Ex=/^(xaneiro|febreiro|marzo|abril|maio|xuño|xullo|agosto|setembro|outubro|novembro|decembro|xan\.?|feb\.?|mar\.?|abr\.?|mai\.?|xuñ\.?|xul\.?|ago\.?|set\.?|out\.?|nov\.?|dec\.?)/i,rae={abbr:"gl",months:"xaneiro_febreiro_marzo_abril_maio_xu\xF1o_xullo_agosto_setembro_outubro_novembro_decembro".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?l$[Ae(t,e)]:Sx[Ae(t,e)]:Sx},monthsRegex:Ex,monthsShortRegex:Ex,monthsStrictRegex:/^(xaneiro|febreiro|marzo|abril|maio|xuño|xullo|agosto|setembro|outubro|novembro|decembro)/i,monthsShortStrictRegex:/^(xan\.?|feb\.?|mar\.?|abr\.?|mai\.?|xuñ\.?|xul\.?|ago\.?|set\.?|out\.?|nov\.?|dec\.?)/i,monthsParse:wb,longMonthsParse:wb,shortMonthsParse:wb,weekdays:"domingo_luns_martes_m\xE9rcores_xoves_venres_s\xE1bado".split("_"),weekdaysShort:"dom._lun._mar._m\xE9r._xov._ven._s\xE1b.".split("_"),weekdaysMin:"do_lu_ma_m\xE9_xo_ve_s\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY H:mm",LLLL:"dddd, D [de] MMMM [de] YYYY H:mm"},calendar:{sameDay(t){return"[hoxe \xE1"+(Ee(t)!==1?"s":"")+"] LT"},nextDay(t){return"[ma\xF1an \xE1"+(Ee(t)!==1?"s":"")+"] LT"},nextWeek(t){return"dddd [\xE1"+(Ee(t)!==1?"s":"")+"] LT"},lastDay(t){return"[onte \xE1"+(Ee(t)!==1?"s":"")+"] LT"},lastWeek(t){return"[o] dddd [pasado \xE1"+(Ee(t)!==1?"s":"")+"] LT"},sameElse:"L"},relativeTime:{future:"en %s",past:"fai %s",s:"uns segundos",ss:"%d segundos",m:"un minuto",mm:"%d minutos",h:"unha hora",hh:"%d horas",d:"un d\xEDa",dd:"%d d\xEDas",M:"un mes",MM:"%d meses",y:"un ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:1,doy:4}};var oae={abbr:"he",months:"\u05D9\u05E0\u05D5\u05D0\u05E8_\u05E4\u05D1\u05E8\u05D5\u05D0\u05E8_\u05DE\u05E8\u05E5_\u05D0\u05E4\u05E8\u05D9\u05DC_\u05DE\u05D0\u05D9_\u05D9\u05D5\u05E0\u05D9_\u05D9\u05D5\u05DC\u05D9_\u05D0\u05D5\u05D2\u05D5\u05E1\u05D8_\u05E1\u05E4\u05D8\u05DE\u05D1\u05E8_\u05D0\u05D5\u05E7\u05D8\u05D5\u05D1\u05E8_\u05E0\u05D5\u05D1\u05DE\u05D1\u05E8_\u05D3\u05E6\u05DE\u05D1\u05E8".split("_"),monthsShort:"\u05D9\u05E0\u05D5\u05F3_\u05E4\u05D1\u05E8\u05F3_\u05DE\u05E8\u05E5_\u05D0\u05E4\u05E8\u05F3_\u05DE\u05D0\u05D9_\u05D9\u05D5\u05E0\u05D9_\u05D9\u05D5\u05DC\u05D9_\u05D0\u05D5\u05D2\u05F3_\u05E1\u05E4\u05D8\u05F3_\u05D0\u05D5\u05E7\u05F3_\u05E0\u05D5\u05D1\u05F3_\u05D3\u05E6\u05DE\u05F3".split("_"),weekdays:"\u05E8\u05D0\u05E9\u05D5\u05DF_\u05E9\u05E0\u05D9_\u05E9\u05DC\u05D9\u05E9\u05D9_\u05E8\u05D1\u05D9\u05E2\u05D9_\u05D7\u05DE\u05D9\u05E9\u05D9_\u05E9\u05D9\u05E9\u05D9_\u05E9\u05D1\u05EA".split("_"),weekdaysShort:"\u05D0\u05F3_\u05D1\u05F3_\u05D2\u05F3_\u05D3\u05F3_\u05D4\u05F3_\u05D5\u05F3_\u05E9\u05F3".split("_"),weekdaysMin:"\u05D0_\u05D1_\u05D2_\u05D3_\u05D4_\u05D5_\u05E9".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [\u05D1]MMMM YYYY",LLL:"D [\u05D1]MMMM YYYY HH:mm",LLLL:"dddd, D [\u05D1]MMMM YYYY HH:mm",l:"D/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[\u05D4\u05D9\u05D5\u05DD \u05D1\u05BE]LT",nextDay:"[\u05DE\u05D7\u05E8 \u05D1\u05BE]LT",nextWeek:"dddd [\u05D1\u05E9\u05E2\u05D4] LT",lastDay:"[\u05D0\u05EA\u05DE\u05D5\u05DC \u05D1\u05BE]LT",lastWeek:"[\u05D1\u05D9\u05D5\u05DD] dddd [\u05D4\u05D0\u05D7\u05E8\u05D5\u05DF \u05D1\u05E9\u05E2\u05D4] LT",sameElse:"L"},relativeTime:{future:"\u05D1\u05E2\u05D5\u05D3 %s",past:"\u05DC\u05E4\u05E0\u05D9 %s",s:"\u05DE\u05E1\u05E4\u05E8 \u05E9\u05E0\u05D9\u05D5\u05EA",ss:"%d \u05E9\u05E0\u05D9\u05D5\u05EA",m:"\u05D3\u05E7\u05D4",mm:"%d \u05D3\u05E7\u05D5\u05EA",h:"\u05E9\u05E2\u05D4",hh(t){return t===2?"\u05E9\u05E2\u05EA\u05D9\u05D9\u05DD":t+" \u05E9\u05E2\u05D5\u05EA"},d:"\u05D9\u05D5\u05DD",dd(t){return t===2?"\u05D9\u05D5\u05DE\u05D9\u05D9\u05DD":t+" \u05D9\u05DE\u05D9\u05DD"},M:"\u05D7\u05D5\u05D3\u05E9",MM(t){return t===2?"\u05D7\u05D5\u05D3\u05E9\u05D9\u05D9\u05DD":t+" \u05D7\u05D5\u05D3\u05E9\u05D9\u05DD"},y:"\u05E9\u05E0\u05D4",yy(t){return t===2?"\u05E9\u05E0\u05EA\u05D9\u05D9\u05DD":t%10===0&&t!==10?t+" \u05E9\u05E0\u05D4":t+" \u05E9\u05E0\u05D9\u05DD"}},meridiemParse:/אחה"צ|לפנה"צ|אחרי הצהריים|לפני הצהריים|לפנות בוקר|בבוקר|בערב/i,isPM(t){return/^(אחה"צ|אחרי הצהריים|בערב)$/.test(t)},meridiem(t,n,e){return t<5?"\u05DC\u05E4\u05E0\u05D5\u05EA \u05D1\u05D5\u05E7\u05E8":t<10?"\u05D1\u05D1\u05D5\u05E7\u05E8":t<12?e?'\u05DC\u05E4\u05E0\u05D4"\u05E6':"\u05DC\u05E4\u05E0\u05D9 \u05D4\u05E6\u05D4\u05E8\u05D9\u05D9\u05DD":t<18?e?'\u05D0\u05D7\u05D4"\u05E6':"\u05D0\u05D7\u05E8\u05D9 \u05D4\u05E6\u05D4\u05E8\u05D9\u05D9\u05DD":"\u05D1\u05E2\u05E8\u05D1"}};var c$={1:"\u0967",2:"\u0968",3:"\u0969",4:"\u096A",5:"\u096B",6:"\u096C",7:"\u096D",8:"\u096E",9:"\u096F",0:"\u0966"},u$={"\u0967":"1","\u0968":"2","\u0969":"3","\u096A":"4","\u096B":"5","\u096C":"6","\u096D":"7","\u096E":"8","\u096F":"9","\u0966":"0"},sae={abbr:"hi",months:"\u091C\u0928\u0935\u0930\u0940_\u092B\u093C\u0930\u0935\u0930\u0940_\u092E\u093E\u0930\u094D\u091A_\u0905\u092A\u094D\u0930\u0948\u0932_\u092E\u0908_\u091C\u0942\u0928_\u091C\u0941\u0932\u093E\u0908_\u0905\u0917\u0938\u094D\u0924_\u0938\u093F\u0924\u092E\u094D\u092C\u0930_\u0905\u0915\u094D\u091F\u0942\u092C\u0930_\u0928\u0935\u092E\u094D\u092C\u0930_\u0926\u093F\u0938\u092E\u094D\u092C\u0930".split("_"),monthsShort:"\u091C\u0928._\u092B\u093C\u0930._\u092E\u093E\u0930\u094D\u091A_\u0905\u092A\u094D\u0930\u0948._\u092E\u0908_\u091C\u0942\u0928_\u091C\u0941\u0932._\u0905\u0917._\u0938\u093F\u0924._\u0905\u0915\u094D\u091F\u0942._\u0928\u0935._\u0926\u093F\u0938.".split("_"),monthsParseExact:!0,weekdays:"\u0930\u0935\u093F\u0935\u093E\u0930_\u0938\u094B\u092E\u0935\u093E\u0930_\u092E\u0902\u0917\u0932\u0935\u093E\u0930_\u092C\u0941\u0927\u0935\u093E\u0930_\u0917\u0941\u0930\u0942\u0935\u093E\u0930_\u0936\u0941\u0915\u094D\u0930\u0935\u093E\u0930_\u0936\u0928\u093F\u0935\u093E\u0930".split("_"),weekdaysShort:"\u0930\u0935\u093F_\u0938\u094B\u092E_\u092E\u0902\u0917\u0932_\u092C\u0941\u0927_\u0917\u0941\u0930\u0942_\u0936\u0941\u0915\u094D\u0930_\u0936\u0928\u093F".split("_"),weekdaysMin:"\u0930_\u0938\u094B_\u092E\u0902_\u092C\u0941_\u0917\u0941_\u0936\u0941_\u0936".split("_"),longDateFormat:{LT:"A h:mm \u092C\u091C\u0947",LTS:"A h:mm:ss \u092C\u091C\u0947",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY, A h:mm \u092C\u091C\u0947",LLLL:"dddd, D MMMM YYYY, A h:mm \u092C\u091C\u0947"},calendar:{sameDay:"[\u0906\u091C] LT",nextDay:"[\u0915\u0932] LT",nextWeek:"dddd, LT",lastDay:"[\u0915\u0932] LT",lastWeek:"[\u092A\u093F\u091B\u0932\u0947] dddd, LT",sameElse:"L"},relativeTime:{future:"%s \u092E\u0947\u0902",past:"%s \u092A\u0939\u0932\u0947",s:"\u0915\u0941\u091B \u0939\u0940 \u0915\u094D\u0937\u0923",ss:"%d \u0938\u0947\u0915\u0902\u0921",m:"\u090F\u0915 \u092E\u093F\u0928\u091F",mm:"%d \u092E\u093F\u0928\u091F",h:"\u090F\u0915 \u0918\u0902\u091F\u093E",hh:"%d \u0918\u0902\u091F\u0947",d:"\u090F\u0915 \u0926\u093F\u0928",dd:"%d \u0926\u093F\u0928",M:"\u090F\u0915 \u092E\u0939\u0940\u0928\u0947",MM:"%d \u092E\u0939\u0940\u0928\u0947",y:"\u090F\u0915 \u0935\u0930\u094D\u0937",yy:"%d \u0935\u0930\u094D\u0937"},preparse(t){return t.replace(/[१२३४५६७८९०]/g,function(n){return u$[n]})},postformat(t){return t.replace(/\d/g,function(n){return c$[n]})},meridiemParse:/रात|सुबह|दोपहर|शाम/,meridiemHour(t,n){if(t===12&&(t=0),n==="\u0930\u093E\u0924")return t<4?t:t+12;if(n==="\u0938\u0941\u092C\u0939")return t;if(n==="\u0926\u094B\u092A\u0939\u0930")return t>=10?t:t+12;if(n==="\u0936\u093E\u092E")return t+12},meridiem(t,n,e){return t<4?"\u0930\u093E\u0924":t<10?"\u0938\u0941\u092C\u0939":t<17?"\u0926\u094B\u092A\u0939\u0930":t<20?"\u0936\u093E\u092E":"\u0930\u093E\u0924"},week:{dow:0,doy:6}};var d$="vas\xE1rnap h\xE9tf\u0151n kedden szerd\xE1n cs\xFCt\xF6rt\xF6k\xF6n p\xE9nteken szombaton".split(" ");function Ei(t,n,e,i){switch(e){case"s":return i||n?"n\xE9h\xE1ny m\xE1sodperc":"n\xE9h\xE1ny m\xE1sodperce";case"ss":return t+(i||n?" m\xE1sodperc":" m\xE1sodperce");case"m":return"egy"+(i||n?" perc":" perce");case"mm":return t+(i||n?" perc":" perce");case"h":return"egy"+(i||n?" \xF3ra":" \xF3r\xE1ja");case"hh":return t+(i||n?" \xF3ra":" \xF3r\xE1ja");case"d":return"egy"+(i||n?" nap":" napja");case"dd":return t+(i||n?" nap":" napja");case"M":return"egy"+(i||n?" h\xF3nap":" h\xF3napja");case"MM":return t+(i||n?" h\xF3nap":" h\xF3napja");case"y":return"egy"+(i||n?" \xE9v":" \xE9ve");case"yy":return t+(i||n?" \xE9v":" \xE9ve")}return""}function Tx(t,n){return(n?"":"[m\xFAlt] ")+"["+d$[Gt(t)]+"] LT[-kor]"}var aae={abbr:"hu",months:"janu\xE1r_febru\xE1r_m\xE1rcius_\xE1prilis_m\xE1jus_j\xFAnius_j\xFAlius_augusztus_szeptember_okt\xF3ber_november_december".split("_"),monthsShort:"jan_feb_m\xE1rc_\xE1pr_m\xE1j_j\xFAn_j\xFAl_aug_szept_okt_nov_dec".split("_"),weekdays:"vas\xE1rnap_h\xE9tf\u0151_kedd_szerda_cs\xFCt\xF6rt\xF6k_p\xE9ntek_szombat".split("_"),weekdaysShort:"vas_h\xE9t_kedd_sze_cs\xFCt_p\xE9n_szo".split("_"),weekdaysMin:"v_h_k_sze_cs_p_szo".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"YYYY.MM.DD.",LL:"YYYY. MMMM D.",LLL:"YYYY. MMMM D. H:mm",LLLL:"YYYY. MMMM D., dddd H:mm"},meridiemParse:/de|du/i,isPM(t){return t.charAt(1).toLowerCase()==="u"},meridiem(t,n,e){return t<12?e===!0?"de":"DE":e===!0?"du":"DU"},calendar:{sameDay:"[ma] LT[-kor]",nextDay:"[holnap] LT[-kor]",nextWeek(t){return Tx(t,!0)},lastDay:"[tegnap] LT[-kor]",lastWeek(t){return Tx(t,!1)},sameElse:"L"},relativeTime:{future:"%s m\xFAlva",past:"%s",s:Ei,ss:Ei,m:Ei,mm:Ei,h:Ei,hh:Ei,d:Ei,dd:Ei,M:Ei,MM:Ei,y:Ei,yy:Ei},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var lae={abbr:"hr",months:"Sije\u010Danj_Velja\u010Da_O\u017Eujak_Travanj_Svibanj_Lipanj_Srpanj_Kolovoz_Rujan_Listopad_Studeni_Prosinac".split("_"),monthsShort:"Sij_Velj_O\u017Eu_Tra_Svi_Lip_Srp_Kol_Ruj_Lis_Stu_Pro".split("_"),weekdays:"Nedjelja_Ponedjeljak_Utorak_Srijeda_\u010Cetvrtak_Petak_Subota".split("_"),weekdaysShort:"Ned_Pon_Uto_Sri_\u010Cet_Pet_Sub".split("_"),weekdaysMin:"Ne_Po_Ut_Sr_\u010Ce_Pe_Su".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY.",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Danas u] LT",nextDay:"[Sutra u] LT",nextWeek:"dddd [u] LT",lastDay:"[Ju\u010Der u] LT",lastWeek:"[Zadnji] dddd [u] LT",sameElse:"L"},invalidDate:"Neispravan datum",relativeTime:{future:"za %s",past:"%s prije",s:"nekoliko sekundi",ss:"%d sekundi",m:"minuta",mm:"%d minuta",h:"sat",hh:"%d sati",d:"dan",dd:"%d dana",M:"mjesec",MM:"%d mjeseci",y:"godina",yy:"%d godina"},dayOfMonthOrdinalParse:/\d{1,2}(st|nd|rd|th)/,ordinal(t){let n=Number(t),e=n%10,i=(~~(n%100/10)===1,".");return n+i},week:{dow:1,doy:4}};var cae={abbr:"id",months:"Januari_Februari_Maret_April_Mei_Juni_Juli_Agustus_September_Oktober_November_Desember".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mei_Jun_Jul_Ags_Sep_Okt_Nov_Des".split("_"),weekdays:"Minggu_Senin_Selasa_Rabu_Kamis_Jumat_Sabtu".split("_"),weekdaysShort:"Min_Sen_Sel_Rab_Kam_Jum_Sab".split("_"),weekdaysMin:"Mg_Sn_Sl_Rb_Km_Jm_Sb".split("_"),longDateFormat:{LT:"HH.mm",LTS:"HH.mm.ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [pukul] HH.mm",LLLL:"dddd, D MMMM YYYY [pukul] HH.mm"},meridiemParse:/pagi|siang|sore|malam/,meridiemHour(t,n){if(t===12&&(t=0),n==="pagi")return t;if(n==="siang")return t>=11?t:t+12;if(n==="sore"||n==="malam")return t+12},meridiem(t,n,e){return t<11?"pagi":t<15?"siang":t<19?"sore":"malam"},calendar:{sameDay:"[Hari ini pukul] LT",nextDay:"[Besok pukul] LT",nextWeek:"dddd [pukul] LT",lastDay:"[Kemarin pukul] LT",lastWeek:"dddd [lalu pukul] LT",sameElse:"L"},relativeTime:{future:"dalam %s",past:"%s yang lalu",s:"beberapa detik",ss:"%d detik",m:"semenit",mm:"%d menit",h:"sejam",hh:"%d jam",d:"sehari",dd:"%d hari",M:"sebulan",MM:"%d bulan",y:"setahun",yy:"%d tahun"},week:{dow:1,doy:7}};var uae={abbr:"it",months:"gennaio_febbraio_marzo_aprile_maggio_giugno_luglio_agosto_settembre_ottobre_novembre_dicembre".split("_"),monthsShort:"gen_feb_mar_apr_mag_giu_lug_ago_set_ott_nov_dic".split("_"),weekdays:"domenica_luned\xEC_marted\xEC_mercoled\xEC_gioved\xEC_venerd\xEC_sabato".split("_"),weekdaysShort:"dom_lun_mar_mer_gio_ven_sab".split("_"),weekdaysMin:"do_lu_ma_me_gi_ve_sa".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[Oggi alle] LT",nextDay:"[Domani alle] LT",nextWeek:"dddd [alle] LT",lastDay:"[Ieri alle] LT",lastWeek(t){switch(Gt(t)){case 0:return"[la scorsa] dddd [alle] LT";default:return"[lo scorso] dddd [alle] LT"}},sameElse:"L"},relativeTime:{future(t){return(/^[0-9].+$/.test(t.toString(10))?"tra":"in")+" "+t},past:"%s fa",s:"alcuni secondi",ss:"%d secondi",m:"un minuto",mm:"%d minuti",h:"un'ora",hh:"%d ore",d:"un giorno",dd:"%d giorni",M:"un mese",MM:"%d mesi",y:"un anno",yy:"%d anni"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA",week:{dow:1,doy:4}};var dae={abbr:"ja",months:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u65E5\u66DC\u65E5_\u6708\u66DC\u65E5_\u706B\u66DC\u65E5_\u6C34\u66DC\u65E5_\u6728\u66DC\u65E5_\u91D1\u66DC\u65E5_\u571F\u66DC\u65E5".split("_"),weekdaysShort:"\u65E5_\u6708_\u706B_\u6C34_\u6728_\u91D1_\u571F".split("_"),weekdaysMin:"\u65E5_\u6708_\u706B_\u6C34_\u6728_\u91D1_\u571F".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5E74M\u6708D\u65E5",LLL:"YYYY\u5E74M\u6708D\u65E5 HH:mm",LLLL:"YYYY\u5E74M\u6708D\u65E5 HH:mm dddd",l:"YYYY/MM/DD",ll:"YYYY\u5E74M\u6708D\u65E5",lll:"YYYY\u5E74M\u6708D\u65E5 HH:mm",llll:"YYYY\u5E74M\u6708D\u65E5 HH:mm dddd"},meridiemParse:/午前|午後/i,isPM(t){return t==="\u5348\u5F8C"},meridiem(t,n,e){return t<12?"\u5348\u524D":"\u5348\u5F8C"},calendar:{sameDay:"[\u4ECA\u65E5] LT",nextDay:"[\u660E\u65E5] LT",nextWeek:"[\u6765\u9031]dddd LT",lastDay:"[\u6628\u65E5] LT",lastWeek:"[\u524D\u9031]dddd LT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}日/,ordinal(t,n){switch(n){case"d":case"D":case"DDD":return t+"\u65E5";default:return t.toString(10)}},relativeTime:{future:"%s\u5F8C",past:"%s\u524D",s:"\u6570\u79D2",ss:"%d\u79D2",m:"1\u5206",mm:"%d\u5206",h:"1\u6642\u9593",hh:"%d\u6642\u9593",d:"1\u65E5",dd:"%d\u65E5",M:"1\u30F6\u6708",MM:"%d\u30F6\u6708",y:"1\u5E74",yy:"%d\u5E74"}};var hae={abbr:"ka",months:{format:"\u10D8\u10D0\u10DC\u10D5\u10D0\u10E0\u10E1_\u10D7\u10D4\u10D1\u10D4\u10E0\u10D5\u10D0\u10DA\u10E1_\u10DB\u10D0\u10E0\u10E2\u10E1_\u10D0\u10DE\u10E0\u10D8\u10DA\u10D8\u10E1_\u10DB\u10D0\u10D8\u10E1\u10E1_\u10D8\u10D5\u10DC\u10D8\u10E1\u10E1_\u10D8\u10D5\u10DA\u10D8\u10E1\u10E1_\u10D0\u10D2\u10D5\u10D8\u10E1\u10E2\u10E1_\u10E1\u10D4\u10E5\u10E2\u10D4\u10DB\u10D1\u10D4\u10E0\u10E1_\u10DD\u10E5\u10E2\u10DD\u10DB\u10D1\u10D4\u10E0\u10E1_\u10DC\u10DD\u10D4\u10DB\u10D1\u10D4\u10E0\u10E1_\u10D3\u10D4\u10D9\u10D4\u10DB\u10D1\u10D4\u10E0\u10E1".split("_"),standalone:"\u10D8\u10D0\u10DC\u10D5\u10D0\u10E0\u10D8_\u10D7\u10D4\u10D1\u10D4\u10E0\u10D5\u10D0\u10DA\u10D8_\u10DB\u10D0\u10E0\u10E2\u10D8_\u10D0\u10DE\u10E0\u10D8\u10DA\u10D8_\u10DB\u10D0\u10D8\u10E1\u10D8_\u10D8\u10D5\u10DC\u10D8\u10E1\u10D8_\u10D8\u10D5\u10DA\u10D8\u10E1\u10D8_\u10D0\u10D2\u10D5\u10D8\u10E1\u10E2\u10DD_\u10E1\u10D4\u10E5\u10E2\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8_\u10DD\u10E5\u10E2\u10DD\u10DB\u10D1\u10D4\u10E0\u10D8_\u10DC\u10DD\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8_\u10D3\u10D4\u10D9\u10D4\u10DB\u10D1\u10D4\u10E0\u10D8".split("_")},monthsShort:"\u10D8\u10D0\u10DC_\u10D7\u10D4\u10D1_\u10DB\u10D0\u10E0_\u10D0\u10DE\u10E0_\u10DB\u10D0\u10D8_\u10D8\u10D5\u10DC_\u10D8\u10D5\u10DA_\u10D0\u10D2\u10D5_\u10E1\u10D4\u10E5_\u10DD\u10E5\u10E2_\u10DC\u10DD\u10D4_\u10D3\u10D4\u10D9".split("_"),weekdays:{standalone:"\u10D9\u10D5\u10D8\u10E0\u10D0_\u10DD\u10E0\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10E1\u10D0\u10DB\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10DD\u10D7\u10EE\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10EE\u10E3\u10D7\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8_\u10DE\u10D0\u10E0\u10D0\u10E1\u10D9\u10D4\u10D5\u10D8_\u10E8\u10D0\u10D1\u10D0\u10D7\u10D8".split("_"),format:"\u10D9\u10D5\u10D8\u10E0\u10D0\u10E1_\u10DD\u10E0\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1_\u10E1\u10D0\u10DB\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1_\u10DD\u10D7\u10EE\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1_\u10EE\u10E3\u10D7\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1_\u10DE\u10D0\u10E0\u10D0\u10E1\u10D9\u10D4\u10D5\u10E1_\u10E8\u10D0\u10D1\u10D0\u10D7\u10E1".split("_"),isFormat:/(წინა|შემდეგ)/},weekdaysShort:"\u10D9\u10D5\u10D8_\u10DD\u10E0\u10E8_\u10E1\u10D0\u10DB_\u10DD\u10D7\u10EE_\u10EE\u10E3\u10D7_\u10DE\u10D0\u10E0_\u10E8\u10D0\u10D1".split("_"),weekdaysMin:"\u10D9\u10D5_\u10DD\u10E0_\u10E1\u10D0_\u10DD\u10D7_\u10EE\u10E3_\u10DE\u10D0_\u10E8\u10D0".split("_"),longDateFormat:{LT:"h:mm A",LTS:"h:mm:ss A",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY h:mm A",LLLL:"dddd, D MMMM YYYY h:mm A"},calendar:{sameDay:"[\u10D3\u10E6\u10D4\u10E1] LT[-\u10D6\u10D4]",nextDay:"[\u10EE\u10D5\u10D0\u10DA] LT[-\u10D6\u10D4]",lastDay:"[\u10D2\u10E3\u10E8\u10D8\u10DC] LT[-\u10D6\u10D4]",nextWeek:"[\u10E8\u10D4\u10DB\u10D3\u10D4\u10D2] dddd LT[-\u10D6\u10D4]",lastWeek:"[\u10EC\u10D8\u10DC\u10D0] dddd LT-\u10D6\u10D4",sameElse:"L"},relativeTime:{future(t){var n=t.toString();return/(წამი|წუთი|საათი|წელი)/.test(n)?n.replace(/ი$/,"\u10E8\u10D8"):n+"\u10E8\u10D8"},past(t){var n=t.toString();if(/(წამი|წუთი|საათი|დღე|თვე)/.test(n))return n.replace(/(ი|ე)$/,"\u10D8\u10E1 \u10EC\u10D8\u10DC");if(/წელი/.test(n))return n.replace(/წელი$/,"\u10EC\u10DA\u10D8\u10E1 \u10EC\u10D8\u10DC")},s:"\u10E0\u10D0\u10DB\u10D3\u10D4\u10DC\u10D8\u10DB\u10D4 \u10EC\u10D0\u10DB\u10D8",ss:"%d \u10EC\u10D0\u10DB\u10D8",m:"\u10EC\u10E3\u10D7\u10D8",mm:"%d \u10EC\u10E3\u10D7\u10D8",h:"\u10E1\u10D0\u10D0\u10D7\u10D8",hh:"%d \u10E1\u10D0\u10D0\u10D7\u10D8",d:"\u10D3\u10E6\u10D4",dd:"%d \u10D3\u10E6\u10D4",M:"\u10D7\u10D5\u10D4",MM:"%d \u10D7\u10D5\u10D4",y:"\u10EC\u10D4\u10DA\u10D8",yy:"%d \u10EC\u10D4\u10DA\u10D8"},dayOfMonthOrdinalParse:/0|1-ლი|მე-\d{1,2}|\d{1,2}-ე/,ordinal(t,n){let e=Number(t);return e===0?e.toString():e===1?e+"-\u10DA\u10D8":e<20||e<=100&&e%20===0||e%100===0?"\u10DB\u10D4-"+e:e+"-\u10D4"},week:{dow:1,doy:4}},Db={0:"-\u0448\u0456",1:"-\u0448\u0456",2:"-\u0448\u0456",3:"-\u0448\u0456",4:"-\u0448\u0456",5:"-\u0448\u0456",6:"-\u0448\u044B",7:"-\u0448\u0456",8:"-\u0448\u0456",9:"-\u0448\u044B",10:"-\u0448\u044B",20:"-\u0448\u044B",30:"-\u0448\u044B",40:"-\u0448\u044B",50:"-\u0448\u0456",60:"-\u0448\u044B",70:"-\u0448\u0456",80:"-\u0448\u0456",90:"-\u0448\u044B",100:"-\u0448\u0456"},fae={abbr:"kk",months:"\u049B\u0430\u04A3\u0442\u0430\u0440_\u0430\u049B\u043F\u0430\u043D_\u043D\u0430\u0443\u0440\u044B\u0437_\u0441\u04D9\u0443\u0456\u0440_\u043C\u0430\u043C\u044B\u0440_\u043C\u0430\u0443\u0441\u044B\u043C_\u0448\u0456\u043B\u0434\u0435_\u0442\u0430\u043C\u044B\u0437_\u049B\u044B\u0440\u043A\u04AF\u0439\u0435\u043A_\u049B\u0430\u0437\u0430\u043D_\u049B\u0430\u0440\u0430\u0448\u0430_\u0436\u0435\u043B\u0442\u043E\u049B\u0441\u0430\u043D".split("_"),monthsShort:"\u049B\u0430\u04A3_\u0430\u049B\u043F_\u043D\u0430\u0443_\u0441\u04D9\u0443_\u043C\u0430\u043C_\u043C\u0430\u0443_\u0448\u0456\u043B_\u0442\u0430\u043C_\u049B\u044B\u0440_\u049B\u0430\u0437_\u049B\u0430\u0440_\u0436\u0435\u043B".split("_"),weekdays:"\u0436\u0435\u043A\u0441\u0435\u043D\u0431\u0456_\u0434\u04AF\u0439\u0441\u0435\u043D\u0431\u0456_\u0441\u0435\u0439\u0441\u0435\u043D\u0431\u0456_\u0441\u04D9\u0440\u0441\u0435\u043D\u0431\u0456_\u0431\u0435\u0439\u0441\u0435\u043D\u0431\u0456_\u0436\u04B1\u043C\u0430_\u0441\u0435\u043D\u0431\u0456".split("_"),weekdaysShort:"\u0436\u0435\u043A_\u0434\u04AF\u0439_\u0441\u0435\u0439_\u0441\u04D9\u0440_\u0431\u0435\u0439_\u0436\u04B1\u043C_\u0441\u0435\u043D".split("_"),weekdaysMin:"\u0436\u043A_\u0434\u0439_\u0441\u0439_\u0441\u0440_\u0431\u0439_\u0436\u043C_\u0441\u043D".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[\u0411\u04AF\u0433\u0456\u043D \u0441\u0430\u0493\u0430\u0442] LT",nextDay:"[\u0415\u0440\u0442\u0435\u04A3 \u0441\u0430\u0493\u0430\u0442] LT",nextWeek:"dddd [\u0441\u0430\u0493\u0430\u0442] LT",lastDay:"[\u041A\u0435\u0448\u0435 \u0441\u0430\u0493\u0430\u0442] LT",lastWeek:"[\u04E8\u0442\u043A\u0435\u043D \u0430\u043F\u0442\u0430\u043D\u044B\u04A3] dddd [\u0441\u0430\u0493\u0430\u0442] LT",sameElse:"L"},relativeTime:{future:"%s \u0456\u0448\u0456\u043D\u0434\u0435",past:"%s \u0431\u04B1\u0440\u044B\u043D",s:"\u0431\u0456\u0440\u043D\u0435\u0448\u0435 \u0441\u0435\u043A\u0443\u043D\u0434",ss:"%d \u0441\u0435\u043A\u0443\u043D\u0434",m:"\u0431\u0456\u0440 \u043C\u0438\u043D\u0443\u0442",mm:"%d \u043C\u0438\u043D\u0443\u0442",h:"\u0431\u0456\u0440 \u0441\u0430\u0493\u0430\u0442",hh:"%d \u0441\u0430\u0493\u0430\u0442",d:"\u0431\u0456\u0440 \u043A\u04AF\u043D",dd:"%d \u043A\u04AF\u043D",M:"\u0431\u0456\u0440 \u0430\u0439",MM:"%d \u0430\u0439",y:"\u0431\u0456\u0440 \u0436\u044B\u043B",yy:"%d \u0436\u044B\u043B"},dayOfMonthOrdinalParse:/\d{1,2}-(ші|шы)/,ordinal(t){let n=t%10,e=t>=100?100:null;return t+(Db[t]||Db[n]||Db[e])},week:{dow:1,doy:7}};var pae={abbr:"ko",months:"1\uC6D4_2\uC6D4_3\uC6D4_4\uC6D4_5\uC6D4_6\uC6D4_7\uC6D4_8\uC6D4_9\uC6D4_10\uC6D4_11\uC6D4_12\uC6D4".split("_"),monthsShort:"1\uC6D4_2\uC6D4_3\uC6D4_4\uC6D4_5\uC6D4_6\uC6D4_7\uC6D4_8\uC6D4_9\uC6D4_10\uC6D4_11\uC6D4_12\uC6D4".split("_"),weekdays:"\uC77C\uC694\uC77C_\uC6D4\uC694\uC77C_\uD654\uC694\uC77C_\uC218\uC694\uC77C_\uBAA9\uC694\uC77C_\uAE08\uC694\uC77C_\uD1A0\uC694\uC77C".split("_"),weekdaysShort:"\uC77C_\uC6D4_\uD654_\uC218_\uBAA9_\uAE08_\uD1A0".split("_"),weekdaysMin:"\uC77C_\uC6D4_\uD654_\uC218_\uBAA9_\uAE08_\uD1A0".split("_"),longDateFormat:{LT:"A h:mm",LTS:"A h:mm:ss",L:"YYYY.MM.DD",LL:"YYYY\uB144 MMMM D\uC77C",LLL:"YYYY\uB144 MMMM D\uC77C A h:mm",LLLL:"YYYY\uB144 MMMM D\uC77C dddd A h:mm",l:"YYYY.MM.DD",ll:"YYYY\uB144 MMMM D\uC77C",lll:"YYYY\uB144 MMMM D\uC77C A h:mm",llll:"YYYY\uB144 MMMM D\uC77C dddd A h:mm"},calendar:{sameDay:"\uC624\uB298 LT",nextDay:"\uB0B4\uC77C LT",nextWeek:"dddd LT",lastDay:"\uC5B4\uC81C LT",lastWeek:"\uC9C0\uB09C\uC8FC dddd LT",sameElse:"L"},relativeTime:{future:"%s \uD6C4",past:"%s \uC804",s:"\uBA87 \uCD08",ss:"%d\uCD08",m:"1\uBD84",mm:"%d\uBD84",h:"\uD55C \uC2DC\uAC04",hh:"%d\uC2DC\uAC04",d:"\uD558\uB8E8",dd:"%d\uC77C",M:"\uD55C \uB2EC",MM:"%d\uB2EC",y:"\uC77C \uB144",yy:"%d\uB144"},dayOfMonthOrdinalParse:/\d{1,2}(일|월|주)/,ordinal:function(t,n){switch(n){case"d":case"D":case"DDD":return t+"\uC77C";case"M":return t+"\uC6D4";case"w":case"W":return t+"\uC8FC";default:return t.toString(10)}},meridiemParse:/오전|오후/,isPM:function(t){return t==="\uC624\uD6C4"},meridiem:function(t,n,e){return t<12?"\uC624\uC804":"\uC624\uD6C4"}};var h$={ss:"sekund\u0117_sekund\u017Ei\u0173_sekundes",m:"minut\u0117_minut\u0117s_minut\u0119",mm:"minut\u0117s_minu\u010Di\u0173_minutes",h:"valanda_valandos_valand\u0105",hh:"valandos_valand\u0173_valandas",d:"diena_dienos_dien\u0105",dd:"dienos_dien\u0173_dienas",M:"m\u0117nuo_m\u0117nesio_m\u0117nes\u012F",MM:"m\u0117nesiai_m\u0117nesi\u0173_m\u0117nesius",y:"metai_met\u0173_metus",yy:"metai_met\u0173_metus"};function f$(t,n,e,i){return n?"kelios sekund\u0117s":i?"keli\u0173 sekund\u017Ei\u0173":"kelias sekundes"}function Pl(t,n,e,i){return n?$o(e)[0]:i?$o(e)[1]:$o(e)[2]}function Ix(t){return t%10===0||t>10&&t<20}function $o(t){return h$[t].split("_")}function Il(t,n,e,i){let r=t+" ";return t===1?r+Pl(t,n,e[0],i):n?r+(Ix(t)?$o(e)[1]:$o(e)[0]):i?r+$o(e)[1]:r+(Ix(t)?$o(e)[1]:$o(e)[2])}var mae={abbr:"lt",months:{format:"sausio_vasario_kovo_baland\u017Eio_gegu\u017E\u0117s_bir\u017Eelio_liepos_rugpj\u016B\u010Dio_rugs\u0117jo_spalio_lapkri\u010Dio_gruod\u017Eio".split("_"),standalone:"sausis_vasaris_kovas_balandis_gegu\u017E\u0117_bir\u017Eelis_liepa_rugpj\u016Btis_rugs\u0117jis_spalis_lapkritis_gruodis".split("_"),isFormat:/D[oD]?(\[[^\[\]]*\]|\s)+MMMM?|MMMM?(\[[^\[\]]*\]|\s)+D[oD]?/},monthsShort:"sau_vas_kov_bal_geg_bir_lie_rgp_rgs_spa_lap_grd".split("_"),weekdays:{format:"sekmadien\u012F_pirmadien\u012F_antradien\u012F_tre\u010Diadien\u012F_ketvirtadien\u012F_penktadien\u012F_\u0161e\u0161tadien\u012F".split("_"),standalone:"sekmadienis_pirmadienis_antradienis_tre\u010Diadienis_ketvirtadienis_penktadienis_\u0161e\u0161tadienis".split("_"),isFormat:/dddd HH:mm/},weekdaysShort:"Sek_Pir_Ant_Tre_Ket_Pen_\u0160e\u0161".split("_"),weekdaysMin:"S_P_A_T_K_Pn_\u0160".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY [m.] MMMM D [d.]",LLL:"YYYY [m.] MMMM D [d.], HH:mm [val.]",LLLL:"YYYY [m.] MMMM D [d.], dddd, HH:mm [val.]",l:"YYYY-MM-DD",ll:"YYYY [m.] MMMM D [d.]",lll:"YYYY [m.] MMMM D [d.], HH:mm [val.]",llll:"YYYY [m.] MMMM D [d.], ddd, HH:mm [val.]"},calendar:{sameDay:"[\u0160iandien] LT",nextDay:"[Rytoj] LT",nextWeek:"dddd LT",lastDay:"[Vakar] LT",lastWeek:"[Pra\u0117jus\u012F] dddd LT",sameElse:"L"},relativeTime:{future:"po %s",past:"prie\u0161 %s",s:f$,ss:Il,m:Pl,mm:Il,h:Pl,hh:Il,d:Pl,dd:Il,M:Pl,MM:Il,y:Pl,yy:Il},dayOfMonthOrdinalParse:/\d{1,2}-oji/,ordinal(t){return t+"-oji"},week:{dow:1,doy:4}};var gae={abbr:"lv",months:"Janv\u0101ris_Febru\u0101ris_Marts_Apr\u012Blis_Maijs_J\u016Bnijs_J\u016Blijs_Augusts_Septembris_Oktobris_Novembris_Decembris".split("_"),monthsShort:"Jan_Feb_Mar_Apr_Mai_J\u016Bn_J\u016Bl_Aug_Sep_Okt_Nov_Dec".split("_"),weekdays:"Sv\u0113tdiena_Pirmdiena_Otrdiena_Tre\u0161diena_Ceturtdiena_Piektdiena_Sestdiena".split("_"),weekdaysShort:"Sv\u0113td_Pirmd_Otrd_Tre\u0161d_Ceturtd_Piektd_Sestd".split("_"),weekdaysMin:"Sv_Pi_Ot_Tr_Ce_Pk_Se".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},relativeTime:{future:"p\u0113c %s",past:"pirms %s",s:"da\u017E\u0101m sekund\u0113m",ss:"%d sekund\u0113m",m:"min\u016Btes",mm:"%d min\u016Bt\u0113m",h:"stundas",hh:"%d stund\u0101m",d:"dienas",dd:"%d dien\u0101m",M:"m\u0113ne\u0161a",MM:"%d m\u0113ne\u0161iem",y:"gada",yy:"%d gadiem"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal(t){return t+"."},week:{dow:1,doy:4}};function Ti(t,n,e,i){switch(e){case"s":return n?"\u0445\u044D\u0434\u0445\u044D\u043D \u0441\u0435\u043A\u0443\u043D\u0434":"\u0445\u044D\u0434\u0445\u044D\u043D \u0441\u0435\u043A\u0443\u043D\u0434\u044B\u043D";case"ss":return t+(n?" \u0441\u0435\u043A\u0443\u043D\u0434":" \u0441\u0435\u043A\u0443\u043D\u0434\u044B\u043D");case"m":case"mm":return t+(n?" \u043C\u0438\u043D\u0443\u0442":" \u043C\u0438\u043D\u0443\u0442\u044B\u043D");case"h":case"hh":return t+(n?" \u0446\u0430\u0433":" \u0446\u0430\u0433\u0438\u0439\u043D");case"d":case"dd":return t+(n?" \u04E9\u0434\u04E9\u0440":" \u04E9\u0434\u0440\u0438\u0439\u043D");case"M":case"MM":return t+(n?" \u0441\u0430\u0440":" \u0441\u0430\u0440\u044B\u043D");case"y":case"yy":return t+(n?" \u0436\u0438\u043B":" \u0436\u0438\u043B\u0438\u0439\u043D");default:return t.toString(10)}}var _ae={abbr:"mn",months:"\u041D\u044D\u0433\u0434\u04AF\u0433\u044D\u044D\u0440 \u0441\u0430\u0440_\u0425\u043E\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0413\u0443\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u04E9\u0440\u04E9\u0432\u0434\u04AF\u0433\u044D\u044D\u0440 \u0441\u0430\u0440_\u0422\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0417\u0443\u0440\u0433\u0430\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0414\u043E\u043B\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u041D\u0430\u0439\u043C\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0415\u0441\u0434\u04AF\u0433\u044D\u044D\u0440 \u0441\u0430\u0440_\u0410\u0440\u0430\u0432\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043D \u043D\u044D\u0433\u0434\u04AF\u0433\u044D\u044D\u0440 \u0441\u0430\u0440_\u0410\u0440\u0432\u0430\u043D \u0445\u043E\u0451\u0440\u0434\u0443\u0433\u0430\u0430\u0440 \u0441\u0430\u0440".split("_"),monthsShort:"1 \u0441\u0430\u0440_2 \u0441\u0430\u0440_3 \u0441\u0430\u0440_4 \u0441\u0430\u0440_5 \u0441\u0430\u0440_6 \u0441\u0430\u0440_7 \u0441\u0430\u0440_8 \u0441\u0430\u0440_9 \u0441\u0430\u0440_10 \u0441\u0430\u0440_11 \u0441\u0430\u0440_12 \u0441\u0430\u0440".split("_"),monthsParseExact:!0,weekdays:"\u041D\u044F\u043C_\u0414\u0430\u0432\u0430\u0430_\u041C\u044F\u0433\u043C\u0430\u0440_\u041B\u0445\u0430\u0433\u0432\u0430_\u041F\u04AF\u0440\u044D\u0432_\u0411\u0430\u0430\u0441\u0430\u043D_\u0411\u044F\u043C\u0431\u0430".split("_"),weekdaysShort:"\u041D\u044F\u043C_\u0414\u0430\u0432_\u041C\u044F\u0433_\u041B\u0445\u0430_\u041F\u04AF\u0440_\u0411\u0430\u0430_\u0411\u044F\u043C".split("_"),weekdaysMin:"\u041D\u044F_\u0414\u0430_\u041C\u044F_\u041B\u0445_\u041F\u04AF_\u0411\u0430_\u0411\u044F".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"YYYY \u043E\u043D\u044B MMMM\u044B\u043D D",LLL:"YYYY \u043E\u043D\u044B MMMM\u044B\u043D D HH:mm",LLLL:"dddd, YYYY \u043E\u043D\u044B MMMM\u044B\u043D D HH:mm"},meridiemParse:/ҮӨ|ҮХ/i,isPM:function(t){return t==="\u04AE\u0425"},meridiem:function(t,n,e){return t<12?"\u04AE\u04E8":"\u04AE\u0425"},calendar:{sameDay:"[\u04E8\u043D\u04E9\u04E9\u0434\u04E9\u0440] LT",nextDay:"[\u041C\u0430\u0440\u0433\u0430\u0430\u0448] LT",nextWeek:"[\u0418\u0440\u044D\u0445] dddd LT",lastDay:"[\u04E8\u0447\u0438\u0433\u0434\u04E9\u0440] LT",lastWeek:"[\u04E8\u043D\u0433\u04E9\u0440\u0441\u04E9\u043D] dddd LT",sameElse:"L"},relativeTime:{future:"%s \u0434\u0430\u0440\u0430\u0430",past:"%s \u04E9\u043C\u043D\u04E9",s:Ti,ss:Ti,m:Ti,mm:Ti,h:Ti,hh:Ti,d:Ti,dd:Ti,M:Ti,MM:Ti,y:Ti,yy:Ti},dayOfMonthOrdinalParse:/\d{1,2} өдөр/,ordinal:function(t,n){switch(n){case"d":case"D":case"DDD":return t+" \u04E9\u0434\u04E9\u0440";default:return t.toString(10)}}};var yae={abbr:"nb",months:"januar_februar_mars_april_mai_juni_juli_august_september_oktober_november_desember".split("_"),monthsShort:"jan._feb._mars_april_mai_juni_juli_aug._sep._okt._nov._des.".split("_"),monthsParseExact:!0,weekdays:"s\xF8ndag_mandag_tirsdag_onsdag_torsdag_fredag_l\xF8rdag".split("_"),weekdaysShort:"s\xF8._ma._ti._on._to._fr._l\xF8.".split("_"),weekdaysMin:"s\xF8_ma_ti_on_to_fr_l\xF8".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY [kl.] HH:mm",LLLL:"dddd D. MMMM YYYY [kl.] HH:mm"},calendar:{sameDay:"[i dag kl.] LT",nextDay:"[i morgen kl.] LT",nextWeek:"dddd [kl.] LT",lastDay:"[i g\xE5r kl.] LT",lastWeek:"[forrige] dddd [kl.] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"%s siden",s:"noen sekunder",ss:"%d sekunder",m:"ett minutt",mm:"%d minutter",h:"en time",hh:"%d timer",d:"en dag",dd:"%d dager",M:"en m\xE5ned",MM:"%d m\xE5neder",y:"ett \xE5r",yy:"%d \xE5r"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var xx="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),p$="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),Mb=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],kx=/^(januari|februari|maart|april|mei|april|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,vae={abbr:"nl-be",months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?p$[Ae(t,e)]:xx[Ae(t,e)]:xx},monthsRegex:kx,monthsShortRegex:kx,monthsStrictRegex:/^(januari|februari|maart|mei|ju[nl]i|april|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:Mb,longMonthsParse:Mb,shortMonthsParse:Mb,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xE9\xE9n minuut",mm:"%d minuten",h:"\xE9\xE9n uur",hh:"%d uur",d:"\xE9\xE9n dag",dd:"%d dagen",M:"\xE9\xE9n maand",MM:"%d maanden",y:"\xE9\xE9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal(t){let n=Number(t);return n+(n===1||n===8||n>=20?"ste":"de")},week:{dow:1,doy:4}};var Ax="jan._feb._mrt._apr._mei_jun._jul._aug._sep._okt._nov._dec.".split("_"),m$="jan_feb_mrt_apr_mei_jun_jul_aug_sep_okt_nov_dec".split("_"),Sb=[/^jan/i,/^feb/i,/^maart|mrt.?$/i,/^apr/i,/^mei$/i,/^jun[i.]?$/i,/^jul[i.]?$/i,/^aug/i,/^sep/i,/^okt/i,/^nov/i,/^dec/i],Rx=/^(januari|februari|maart|april|mei|april|ju[nl]i|augustus|september|oktober|november|december|jan\.?|feb\.?|mrt\.?|apr\.?|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,bae={abbr:"nl",months:"januari_februari_maart_april_mei_juni_juli_augustus_september_oktober_november_december".split("_"),monthsShort(t,n,e){return t?/-MMM-/.test(n)?m$[Ae(t,e)]:Ax[Ae(t,e)]:Ax},monthsRegex:Rx,monthsShortRegex:Rx,monthsStrictRegex:/^(januari|februari|maart|mei|ju[nl]i|april|augustus|september|oktober|november|december)/i,monthsShortStrictRegex:/^(jan\.?|feb\.?|mrt\.?|apr\.?|mei|ju[nl]\.?|aug\.?|sep\.?|okt\.?|nov\.?|dec\.?)/i,monthsParse:Sb,longMonthsParse:Sb,shortMonthsParse:Sb,weekdays:"zondag_maandag_dinsdag_woensdag_donderdag_vrijdag_zaterdag".split("_"),weekdaysShort:"zo._ma._di._wo._do._vr._za.".split("_"),weekdaysMin:"zo_ma_di_wo_do_vr_za".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD-MM-YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},calendar:{sameDay:"[vandaag om] LT",nextDay:"[morgen om] LT",nextWeek:"dddd [om] LT",lastDay:"[gisteren om] LT",lastWeek:"[afgelopen] dddd [om] LT",sameElse:"L"},relativeTime:{future:"over %s",past:"%s geleden",s:"een paar seconden",ss:"%d seconden",m:"\xE9\xE9n minuut",mm:"%d minuten",h:"\xE9\xE9n uur",hh:"%d uur",d:"\xE9\xE9n dag",dd:"%d dagen",M:"\xE9\xE9n maand",MM:"%d maanden",y:"\xE9\xE9n jaar",yy:"%d jaar"},dayOfMonthOrdinalParse:/\d{1,2}(ste|de)/,ordinal(t){let n=Number(t);return n+(n===1||n===8||n>=20?"ste":"de")},week:{dow:1,doy:4}};var Eb="stycze\u0144_luty_marzec_kwiecie\u0144_maj_czerwiec_lipiec_sierpie\u0144_wrzesie\u0144_pa\u017Adziernik_listopad_grudzie\u0144".split("_"),Ox="stycznia_lutego_marca_kwietnia_maja_czerwca_lipca_sierpnia_wrze\u015Bnia_pa\u017Adziernika_listopada_grudnia".split("_");function ju(t){return t%10<5&&t%10>1&&~~(t/10)%10!==1}function zs(t,n,e){let i=t+" ";switch(e){case"ss":return i+(ju(t)?"sekundy":"sekund");case"m":return n?"minuta":"minut\u0119";case"mm":return i+(ju(t)?"minuty":"minut");case"h":return n?"godzina":"godzin\u0119";case"hh":return i+(ju(t)?"godziny":"godzin");case"MM":return i+(ju(t)?"miesi\u0105ce":"miesi\u0119cy");case"yy":return i+(ju(t)?"lata":"lat")}}var Cae={abbr:"pl",months(t,n,e){return t?n===""?"("+Ox[Ae(t,e)]+"|"+Eb[Ae(t,e)]+")":/D MMMM/.test(n)?Ox[Ae(t,e)]:Eb[Ae(t,e)]:Eb},monthsShort:"sty_lut_mar_kwi_maj_cze_lip_sie_wrz_pa\u017A_lis_gru".split("_"),weekdays:"niedziela_poniedzia\u0142ek_wtorek_\u015Broda_czwartek_pi\u0105tek_sobota".split("_"),weekdaysShort:"ndz_pon_wt_\u015Br_czw_pt_sob".split("_"),weekdaysMin:"Nd_Pn_Wt_\u015Ar_Cz_Pt_So".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Dzi\u015B o] LT",nextDay:"[Jutro o] LT",nextWeek(t){switch(Gt(t)){case 0:return"[W niedziel\u0119 o] LT";case 2:return"[We wtorek o] LT";case 3:return"[W \u015Brod\u0119 o] LT";case 5:return"[W pi\u0105tek o] LT";case 6:return"[W sobot\u0119 o] LT";default:return"[W] dddd [o] LT"}},lastDay:"[Wczoraj o] LT",lastWeek(t){switch(Gt(t)){case 0:return"[W zesz\u0142\u0105 niedziel\u0119 o] LT";case 3:return"[W zesz\u0142\u0105 \u015Brod\u0119 o] LT";case 4:return"[W zesz\u0142\u0105 czwartek o] LT";case 5:return"[W zesz\u0142\u0105 pi\u0105tek o] LT";case 6:return"[W zesz\u0142\u0105 sobot\u0119 o] LT";default:return"[W zesz\u0142y] dddd [o] LT"}},sameElse:"L"},relativeTime:{future:"za %s",past:"%s temu",s:"kilka sekund",ss:zs,m:zs,mm:zs,h:zs,hh:zs,d:"1 dzie\u0144",dd:"%d dni",M:"miesi\u0105c",MM:zs,y:"rok",yy:zs},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var wae={abbr:"pt-br",months:"Janeiro_Fevereiro_Mar\xE7o_Abril_Maio_Junho_Julho_Agosto_Setembro_Outubro_Novembro_Dezembro".split("_"),monthsShort:"Jan_Fev_Mar_Abr_Mai_Jun_Jul_Ago_Set_Out_Nov_Dez".split("_"),weekdays:"Domingo_Segunda-feira_Ter\xE7a-feira_Quarta-feira_Quinta-feira_Sexta-feira_S\xE1bado".split("_"),weekdaysShort:"Dom_Seg_Ter_Qua_Qui_Sex_S\xE1b".split("_"),weekdaysMin:"Do_2\xAA_3\xAA_4\xAA_5\xAA_6\xAA_S\xE1".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D [de] MMMM [de] YYYY",LLL:"D [de] MMMM [de] YYYY [\xE0s] HH:mm",LLLL:"dddd, D [de] MMMM [de] YYYY [\xE0s] HH:mm"},calendar:{sameDay:"[Hoje \xE0s] LT",nextDay:"[Amanh\xE3 \xE0s] LT",nextWeek:"dddd [\xE0s] LT",lastDay:"[Ontem \xE0s] LT",lastWeek(t){return Gt(t)===0||Gt(t)===6?"[\xDAltimo] dddd [\xE0s] LT":"[\xDAltima] dddd [\xE0s] LT"},sameElse:"L"},relativeTime:{future:"em %s",past:"%s atr\xE1s",s:"poucos segundos",ss:"%d segundos",m:"um minuto",mm:"%d minutos",h:"uma hora",hh:"%d horas",d:"um dia",dd:"%d dias",M:"um m\xEAs",MM:"%d meses",y:"um ano",yy:"%d anos"},dayOfMonthOrdinalParse:/\d{1,2}º/,ordinal:"%d\xBA"};function xl(t,n,e){let i={ss:"secunde",mm:"minute",hh:"ore",dd:"zile",MM:"luni",yy:"ani"},r=" ";return(t%100>=20||t>=100&&t%100===0)&&(r=" de "),t+r+i[e]}var Dae={abbr:"ro",months:"ianuarie_februarie_martie_aprilie_mai_iunie_iulie_august_septembrie_octombrie_noiembrie_decembrie".split("_"),monthsShort:"ian._febr._mart._apr._mai_iun._iul._aug._sept._oct._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"duminic\u0103_luni_mar\u021Bi_miercuri_joi_vineri_s\xE2mb\u0103t\u0103".split("_"),weekdaysShort:"Dum_Lun_Mar_Mie_Joi_Vin_S\xE2m".split("_"),weekdaysMin:"Du_Lu_Ma_Mi_Jo_Vi_S\xE2".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY H:mm",LLLL:"dddd, D MMMM YYYY H:mm"},calendar:{sameDay:"[azi la] LT",nextDay:"[m\xE2ine la] LT",nextWeek:"dddd [la] LT",lastDay:"[ieri la] LT",lastWeek:"[fosta] dddd [la] LT",sameElse:"L"},relativeTime:{future:"peste %s",past:"%s \xEEn urm\u0103",s:"c\xE2teva secunde",ss:xl,m:"un minut",mm:xl,h:"o or\u0103",hh:xl,d:"o zi",dd:xl,M:"o lun\u0103",MM:xl,y:"un an",yy:xl},week:{dow:1,doy:7}};function g$(t,n){let e=t.split("_");return n%10===1&&n%100!==11?e[0]:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?e[1]:e[2]}function Ws(t,n,e){let i={ss:n?"\u0441\u0435\u043A\u0443\u043D\u0434\u0430_\u0441\u0435\u043A\u0443\u043D\u0434\u044B_\u0441\u0435\u043A\u0443\u043D\u0434":"\u0441\u0435\u043A\u0443\u043D\u0434\u0443_\u0441\u0435\u043A\u0443\u043D\u0434\u044B_\u0441\u0435\u043A\u0443\u043D\u0434",mm:n?"\u043C\u0438\u043D\u0443\u0442\u0430_\u043C\u0438\u043D\u0443\u0442\u044B_\u043C\u0438\u043D\u0443\u0442":"\u043C\u0438\u043D\u0443\u0442\u0443_\u043C\u0438\u043D\u0443\u0442\u044B_\u043C\u0438\u043D\u0443\u0442",hh:"\u0447\u0430\u0441_\u0447\u0430\u0441\u0430_\u0447\u0430\u0441\u043E\u0432",dd:"\u0434\u0435\u043D\u044C_\u0434\u043D\u044F_\u0434\u043D\u0435\u0439",MM:"\u043C\u0435\u0441\u044F\u0446_\u043C\u0435\u0441\u044F\u0446\u0430_\u043C\u0435\u0441\u044F\u0446\u0435\u0432",yy:"\u0433\u043E\u0434_\u0433\u043E\u0434\u0430_\u043B\u0435\u0442"};return e==="m"?n?"\u043C\u0438\u043D\u0443\u0442\u0430":"\u043C\u0438\u043D\u0443\u0442\u0443":t+" "+g$(i[e],+t)}var Tb=[/^янв/i,/^фев/i,/^мар/i,/^апр/i,/^ма[йя]/i,/^июн/i,/^июл/i,/^авг/i,/^сен/i,/^окт/i,/^ноя/i,/^дек/i],Mae={abbr:"ru",months:{format:"\u044F\u043D\u0432\u0430\u0440\u044F_\u0444\u0435\u0432\u0440\u0430\u043B\u044F_\u043C\u0430\u0440\u0442\u0430_\u0430\u043F\u0440\u0435\u043B\u044F_\u043C\u0430\u044F_\u0438\u044E\u043D\u044F_\u0438\u044E\u043B\u044F_\u0430\u0432\u0433\u0443\u0441\u0442\u0430_\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044F_\u043E\u043A\u0442\u044F\u0431\u0440\u044F_\u043D\u043E\u044F\u0431\u0440\u044F_\u0434\u0435\u043A\u0430\u0431\u0440\u044F".split("_"),standalone:"\u044F\u043D\u0432\u0430\u0440\u044C_\u0444\u0435\u0432\u0440\u0430\u043B\u044C_\u043C\u0430\u0440\u0442_\u0430\u043F\u0440\u0435\u043B\u044C_\u043C\u0430\u0439_\u0438\u044E\u043D\u044C_\u0438\u044E\u043B\u044C_\u0430\u0432\u0433\u0443\u0441\u0442_\u0441\u0435\u043D\u0442\u044F\u0431\u0440\u044C_\u043E\u043A\u0442\u044F\u0431\u0440\u044C_\u043D\u043E\u044F\u0431\u0440\u044C_\u0434\u0435\u043A\u0430\u0431\u0440\u044C".split("_")},monthsShort:{format:"\u044F\u043D\u0432._\u0444\u0435\u0432\u0440._\u043C\u0430\u0440._\u0430\u043F\u0440._\u043C\u0430\u044F_\u0438\u044E\u043D\u044F_\u0438\u044E\u043B\u044F_\u0430\u0432\u0433._\u0441\u0435\u043D\u0442._\u043E\u043A\u0442._\u043D\u043E\u044F\u0431._\u0434\u0435\u043A.".split("_"),standalone:"\u044F\u043D\u0432._\u0444\u0435\u0432\u0440._\u043C\u0430\u0440\u0442_\u0430\u043F\u0440._\u043C\u0430\u0439_\u0438\u044E\u043D\u044C_\u0438\u044E\u043B\u044C_\u0430\u0432\u0433._\u0441\u0435\u043D\u0442._\u043E\u043A\u0442._\u043D\u043E\u044F\u0431._\u0434\u0435\u043A.".split("_")},weekdays:{standalone:"\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435_\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A_\u0432\u0442\u043E\u0440\u043D\u0438\u043A_\u0441\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043F\u044F\u0442\u043D\u0438\u0446\u0430_\u0441\u0443\u0431\u0431\u043E\u0442\u0430".split("_"),format:"\u0432\u043E\u0441\u043A\u0440\u0435\u0441\u0435\u043D\u044C\u0435_\u043F\u043E\u043D\u0435\u0434\u0435\u043B\u044C\u043D\u0438\u043A_\u0432\u0442\u043E\u0440\u043D\u0438\u043A_\u0441\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440\u0433_\u043F\u044F\u0442\u043D\u0438\u0446\u0443_\u0441\u0443\u0431\u0431\u043E\u0442\u0443".split("_"),isFormat:/\[ ?[Вв] ?(?:прошлую|следующую|эту)? ?\] ?dddd/},weekdaysShort:"\u0432\u0441_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u0432\u0441_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),monthsParse:Tb,longMonthsParse:Tb,shortMonthsParse:Tb,monthsRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsShortRegex:/^(январ[ья]|янв\.?|феврал[ья]|февр?\.?|марта?|мар\.?|апрел[ья]|апр\.?|ма[йя]|июн[ья]|июн\.?|июл[ья]|июл\.?|августа?|авг\.?|сентябр[ья]|сент?\.?|октябр[ья]|окт\.?|ноябр[ья]|нояб?\.?|декабр[ья]|дек\.?)/i,monthsStrictRegex:/^(январ[яь]|феврал[яь]|марта?|апрел[яь]|ма[яй]|июн[яь]|июл[яь]|августа?|сентябр[яь]|октябр[яь]|ноябр[яь]|декабр[яь])/i,monthsShortStrictRegex:/^(янв\.|февр?\.|мар[т.]|апр\.|ма[яй]|июн[ья.]|июл[ья.]|авг\.|сент?\.|окт\.|нояб?\.|дек\.)/i,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0433.",LLL:"D MMMM YYYY \u0433., H:mm",LLLL:"dddd, D MMMM YYYY \u0433., H:mm"},calendar:{sameDay:"[\u0421\u0435\u0433\u043E\u0434\u043D\u044F \u0432] LT",nextDay:"[\u0417\u0430\u0432\u0442\u0440\u0430 \u0432] LT",lastDay:"[\u0412\u0447\u0435\u0440\u0430 \u0432] LT",nextWeek(t,n){if(Hu(n)!==Hu(t))switch(Gt(t)){case 0:return"[\u0412 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0435\u0435] dddd [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0438\u0439] dddd [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u0441\u043B\u0435\u0434\u0443\u044E\u0449\u0443\u044E] dddd [\u0432] LT"}else return Gt(t)===2?"[\u0412\u043E] dddd [\u0432] LT":"[\u0412] dddd [\u0432] LT"},lastWeek(t,n){if(Hu(n)!==Hu(t))switch(Gt(t)){case 0:return"[\u0412 \u043F\u0440\u043E\u0448\u043B\u043E\u0435] dddd [\u0432] LT";case 1:case 2:case 4:return"[\u0412 \u043F\u0440\u043E\u0448\u043B\u044B\u0439] dddd [\u0432] LT";case 3:case 5:case 6:return"[\u0412 \u043F\u0440\u043E\u0448\u043B\u0443\u044E] dddd [\u0432] LT"}else return Gt(t)===2?"[\u0412\u043E] dddd [\u0432] LT":"[\u0412] dddd [\u0432] LT"},sameElse:"L"},relativeTime:{future:"\u0447\u0435\u0440\u0435\u0437 %s",past:"%s \u043D\u0430\u0437\u0430\u0434",s:"\u043D\u0435\u0441\u043A\u043E\u043B\u044C\u043A\u043E \u0441\u0435\u043A\u0443\u043D\u0434",ss:Ws,m:Ws,mm:Ws,h:"\u0447\u0430\u0441",hh:Ws,d:"\u0434\u0435\u043D\u044C",dd:Ws,M:"\u043C\u0435\u0441\u044F\u0446",MM:Ws,y:"\u0433\u043E\u0434",yy:Ws},meridiemParse:/ночи|утра|дня|вечера/i,isPM(t){return/^(дня|вечера)$/.test(t)},meridiem(t,n,e){return t<4?"\u043D\u043E\u0447\u0438":t<12?"\u0443\u0442\u0440\u0430":t<17?"\u0434\u043D\u044F":"\u0432\u0435\u0447\u0435\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го|я)/,ordinal(t,n){let e=Number(t);switch(n){case"M":case"d":case"DDD":return e+"-\u0439";case"D":return e+"-\u0433\u043E";case"w":case"W":return e+"-\u044F";default:return e.toString(10)}},week:{dow:1,doy:4}};var _$="janu\xE1r_febru\xE1r_marec_apr\xEDl_m\xE1j_j\xFAn_j\xFAl_august_september_okt\xF3ber_november_december".split("_"),y$="jan_feb_mar_apr_m\xE1j_j\xFAn_j\xFAl_aug_sep_okt_nov_dec".split("_");function kl(t){return t>1&&t<5&&~~(t/10)!==1}function Ii(t,n,e,i){let r=t+" ";switch(e){case"s":return n||i?"p\xE1r sek\xFAnd":"p\xE1r sekundami";case"ss":return n||i?r+(kl(t)?"sekundy":"sek\xFAnd"):r+"sekundami";case"m":return n?"min\xFAta":i?"min\xFAtu":"min\xFAtou";case"mm":return n||i?r+(kl(t)?"min\xFAty":"min\xFAt"):r+"min\xFAtami";case"h":return n?"hodina":i?"hodinu":"hodinou";case"hh":return n||i?r+(kl(t)?"hodiny":"hod\xEDn"):r+"hodinami";case"d":return n||i?"de\u0148":"d\u0148om";case"dd":return n||i?r+(kl(t)?"dni":"dn\xED"):r+"d\u0148ami";case"M":return n||i?"mesiac":"mesiacom";case"MM":return n||i?r+(kl(t)?"mesiace":"mesiacov"):r+"mesiacmi";case"y":return n||i?"rok":"rokom";case"yy":return n||i?r+(kl(t)?"roky":"rokov"):r+"rokmi"}}var Sae={abbr:"sk",months:_$,monthsShort:y$,weekdays:"nede\u013Ea_pondelok_utorok_streda_\u0161tvrtok_piatok_sobota".split("_"),weekdaysShort:"ne_po_ut_st_\u0161t_pi_so".split("_"),weekdaysMin:"ne_po_ut_st_\u0161t_pi_so".split("_"),longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd D. MMMM YYYY H:mm",l:"D. M. YYYY"},calendar:{sameDay:"[dnes o] LT",nextDay:"[zajtra o] LT",nextWeek(t){switch(Gt(t)){case 0:return"[v nede\u013Eu o] LT";case 1:case 2:return"[v] dddd [o] LT";case 3:return"[v stredu o] LT";case 4:return"[vo \u0161tvrtok o] LT";case 5:return"[v piatok o] LT";case 6:return"[v sobotu o] LT"}},lastDay:"[v\u010Dera o] LT",lastWeek(t){switch(Gt(t)){case 0:return"[minul\xFA nede\u013Eu o] LT";case 1:case 2:return"[minul\xFD] dddd [o] LT";case 3:return"[minul\xFA stredu o] LT";case 4:case 5:return"[minul\xFD] dddd [o] LT";case 6:return"[minul\xFA sobotu o] LT"}},sameElse:"L"},relativeTime:{future:"o %s",past:"pred %s",s:Ii,ss:Ii,m:Ii,mm:Ii,h:Ii,hh:Ii,d:Ii,dd:Ii,M:Ii,MM:Ii,y:Ii,yy:Ii},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};function xi(t,n,e,i){var r=t+" ";switch(e){case"s":return n||i?"nekaj sekund":"nekaj sekundami";case"ss":return t===1?r+=n?"sekundo":"sekundi":t===2?r+=n||i?"sekundi":"sekundah":t<5?r+=n||i?"sekunde":"sekundah":r+="sekund",r;case"m":return n?"ena minuta":"eno minuto";case"mm":return t===1?r+=n?"minuta":"minuto":t===2?r+=n||i?"minuti":"minutama":t<5?r+=n||i?"minute":"minutami":r+=n||i?"minut":"minutami",r;case"h":return n?"ena ura":"eno uro";case"hh":return t===1?r+=n?"ura":"uro":t===2?r+=n||i?"uri":"urama":t<5?r+=n||i?"ure":"urami":r+=n||i?"ur":"urami",r;case"d":return n||i?"en dan":"enim dnem";case"dd":return t===1?r+=n||i?"dan":"dnem":t===2?r+=n||i?"dni":"dnevoma":r+=n||i?"dni":"dnevi",r;case"M":return n||i?"en mesec":"enim mesecem";case"MM":return t===1?r+=n||i?"mesec":"mesecem":t===2?r+=n||i?"meseca":"mesecema":t<5?r+=n||i?"mesece":"meseci":r+=n||i?"mesecev":"meseci",r;case"y":return n||i?"eno leto":"enim letom";case"yy":return t===1?r+=n||i?"leto":"letom":t===2?r+=n||i?"leti":"letoma":t<5?r+=n||i?"leta":"leti":r+=n||i?"let":"leti",r}}var Eae={abbr:"sl",months:"januar_februar_marec_april_maj_junij_julij_avgust_september_oktober_november_december".split("_"),monthsShort:"jan._feb._mar._apr._maj._jun._jul._avg._sep._okt._nov._dec.".split("_"),monthsParseExact:!0,weekdays:"nedelja_ponedeljek_torek_sreda_\u010Detrtek_petek_sobota".split("_"),weekdaysShort:"ned._pon._tor._sre._\u010Det._pet._sob.".split("_"),weekdaysMin:"ne_po_to_sr_\u010De_pe_so".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D. MMMM YYYY",LLL:"D. MMMM YYYY H:mm",LLLL:"dddd, D. MMMM YYYY H:mm"},calendar:{sameDay:"[danes ob] LT",nextDay:"[jutri ob] LT",nextWeek(t){switch(Gt(t)){case 0:return"[v] [nedeljo] [ob] LT";case 3:return"[v] [sredo] [ob] LT";case 6:return"[v] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[v] dddd [ob] LT"}},lastDay:"[v\u010Deraj ob] LT",lastWeek(t){switch(Gt(t)){case 0:return"[prej\u0161njo] [nedeljo] [ob] LT";case 3:return"[prej\u0161njo] [sredo] [ob] LT";case 6:return"[prej\u0161njo] [soboto] [ob] LT";case 1:case 2:case 4:case 5:return"[prej\u0161nji] dddd [ob] LT"}},sameElse:"L"},relativeTime:{future:"\u010Dez %s",past:"pred %s",s:xi,ss:xi,m:xi,mm:xi,h:xi,hh:xi,d:xi,dd:xi,M:xi,MM:xi,y:xi,yy:xi},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:7}};var Tae={abbr:"sq",months:"Janar_Shkurt_Mars_Prill_Maj_Qershor_Korrik_Gusht_Shtator_Tetor_N\xEBntor_Dhjetor".split("_"),monthsShort:"Jan_Shk_Mar_Pri_Maj_Qer_Kor_Gus_Sht_Tet_N\xEBn_Dhj".split("_"),weekdays:"E Diel\xEB_E H\xEBn\xEB_E Mart\xEB_E M\xEBrkur\xEB_E Enjte_E Premte_E Shtun\xEB".split("_"),weekdaysShort:"Die_H\xEBn_Mar_M\xEBr_Enj_Pre_Sht".split("_"),weekdaysMin:"Di_He_Ma_Me_En_Pr_Sh".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[Sot n\xEB] LT",nextDay:"[Nes\xEBr n\xEB] LT",nextWeek:"dddd [n\xEB] LT",lastDay:"[Dje n\xEB] LT",lastWeek:"dddd [e kaluar n\xEB] LT",sameElse:"L"},relativeTime:{future:"n\xEB %s",past:"para %sve",s:"disa sekonda",ss:"%d sekonda",m:"nj\xEB minut",mm:"%d minuta",h:"nj\xEB or\xEB",hh:"%d or\xEB",d:"nj\xEB dit\xEB",dd:"%d dit\xEB",M:"nj\xEB muaj",MM:"%d muaj",y:"nj\xEB vit",yy:"%d vite"},dayOfMonthOrdinalParse:/\d{1,2}\./,ordinal:"%d.",week:{dow:1,doy:4}};var Iae={abbr:"sv",months:"januari_februari_mars_april_maj_juni_juli_augusti_september_oktober_november_december".split("_"),monthsShort:"jan_feb_mar_apr_maj_jun_jul_aug_sep_okt_nov_dec".split("_"),weekdays:"s\xF6ndag_m\xE5ndag_tisdag_onsdag_torsdag_fredag_l\xF6rdag".split("_"),weekdaysShort:"s\xF6n_m\xE5n_tis_ons_tor_fre_l\xF6r".split("_"),weekdaysMin:"s\xF6_m\xE5_ti_on_to_fr_l\xF6".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY-MM-DD",LL:"D MMMM YYYY",LLL:"D MMMM YYYY [kl.] HH:mm",LLLL:"dddd D MMMM YYYY [kl.] HH:mm",lll:"D MMM YYYY HH:mm",llll:"ddd D MMM YYYY HH:mm"},calendar:{sameDay:"[Idag] LT",nextDay:"[Imorgon] LT",lastDay:"[Ig\xE5r] LT",nextWeek:"[P\xE5] dddd LT",lastWeek:"[I] dddd[s] LT",sameElse:"L"},relativeTime:{future:"om %s",past:"f\xF6r %s sedan",s:"n\xE5gra sekunder",ss:"%d sekunder",m:"en minut",mm:"%d minuter",h:"en timme",hh:"%d timmar",d:"en dag",dd:"%d dagar",M:"en m\xE5nad",MM:"%d m\xE5nader",y:"ett \xE5r",yy:"%d \xE5r"},dayOfMonthOrdinalParse:/\d{1,2}(e|a)/,ordinal(t){let n=Number(t),e=n%10,i=~~(n%100/10)===1?"e":e===1||e===2?"a":"e";return n+i},week:{dow:1,doy:4}},xae={abbr:"th",months:"\u0E21\u0E01\u0E23\u0E32\u0E04\u0E21_\u0E01\u0E38\u0E21\u0E20\u0E32\u0E1E\u0E31\u0E19\u0E18\u0E4C_\u0E21\u0E35\u0E19\u0E32\u0E04\u0E21_\u0E40\u0E21\u0E29\u0E32\u0E22\u0E19_\u0E1E\u0E24\u0E29\u0E20\u0E32\u0E04\u0E21_\u0E21\u0E34\u0E16\u0E38\u0E19\u0E32\u0E22\u0E19_\u0E01\u0E23\u0E01\u0E0E\u0E32\u0E04\u0E21_\u0E2A\u0E34\u0E07\u0E2B\u0E32\u0E04\u0E21_\u0E01\u0E31\u0E19\u0E22\u0E32\u0E22\u0E19_\u0E15\u0E38\u0E25\u0E32\u0E04\u0E21_\u0E1E\u0E24\u0E28\u0E08\u0E34\u0E01\u0E32\u0E22\u0E19_\u0E18\u0E31\u0E19\u0E27\u0E32\u0E04\u0E21".split("_"),monthsShort:"\u0E21.\u0E04._\u0E01.\u0E1E._\u0E21\u0E35.\u0E04._\u0E40\u0E21.\u0E22._\u0E1E.\u0E04._\u0E21\u0E34.\u0E22._\u0E01.\u0E04._\u0E2A.\u0E04._\u0E01.\u0E22._\u0E15.\u0E04._\u0E1E.\u0E22._\u0E18.\u0E04.".split("_"),monthsParseExact:!0,weekdays:"\u0E2D\u0E32\u0E17\u0E34\u0E15\u0E22\u0E4C_\u0E08\u0E31\u0E19\u0E17\u0E23\u0E4C_\u0E2D\u0E31\u0E07\u0E04\u0E32\u0E23_\u0E1E\u0E38\u0E18_\u0E1E\u0E24\u0E2B\u0E31\u0E2A\u0E1A\u0E14\u0E35_\u0E28\u0E38\u0E01\u0E23\u0E4C_\u0E40\u0E2A\u0E32\u0E23\u0E4C".split("_"),weekdaysShort:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),weekdaysMin:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm",LLLL:"\u0E27\u0E31\u0E19dddd\u0E17\u0E35\u0E48 D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM(t){return t==="\u0E2B\u0E25\u0E31\u0E07\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07"},meridiem(t,n,e){return t<12?"\u0E01\u0E48\u0E2D\u0E19\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07":"\u0E2B\u0E25\u0E31\u0E07\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07"},calendar:{sameDay:"[\u0E27\u0E31\u0E19\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",nextDay:"[\u0E1E\u0E23\u0E38\u0E48\u0E07\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",nextWeek:"dddd[\u0E2B\u0E19\u0E49\u0E32 \u0E40\u0E27\u0E25\u0E32] LT",lastDay:"[\u0E40\u0E21\u0E37\u0E48\u0E2D\u0E27\u0E32\u0E19\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",lastWeek:"[\u0E27\u0E31\u0E19]dddd[\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27 \u0E40\u0E27\u0E25\u0E32] LT",sameElse:"L"},relativeTime:{future:"\u0E2D\u0E35\u0E01 %s",past:"%s\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27",s:"\u0E44\u0E21\u0E48\u0E01\u0E35\u0E48\u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",ss:"%d \u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",m:"1 \u0E19\u0E32\u0E17\u0E35",mm:"%d \u0E19\u0E32\u0E17\u0E35",h:"1 \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",hh:"%d \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",d:"1 \u0E27\u0E31\u0E19",dd:"%d \u0E27\u0E31\u0E19",M:"1 \u0E40\u0E14\u0E37\u0E2D\u0E19",MM:"%d \u0E40\u0E14\u0E37\u0E2D\u0E19",y:"1 \u0E1B\u0E35",yy:"%d \u0E1B\u0E35"}},Px={abbr:"th-be",months:"\u0E21\u0E01\u0E23\u0E32\u0E04\u0E21_\u0E01\u0E38\u0E21\u0E20\u0E32\u0E1E\u0E31\u0E19\u0E18\u0E4C_\u0E21\u0E35\u0E19\u0E32\u0E04\u0E21_\u0E40\u0E21\u0E29\u0E32\u0E22\u0E19_\u0E1E\u0E24\u0E29\u0E20\u0E32\u0E04\u0E21_\u0E21\u0E34\u0E16\u0E38\u0E19\u0E32\u0E22\u0E19_\u0E01\u0E23\u0E01\u0E0E\u0E32\u0E04\u0E21_\u0E2A\u0E34\u0E07\u0E2B\u0E32\u0E04\u0E21_\u0E01\u0E31\u0E19\u0E22\u0E32\u0E22\u0E19_\u0E15\u0E38\u0E25\u0E32\u0E04\u0E21_\u0E1E\u0E24\u0E28\u0E08\u0E34\u0E01\u0E32\u0E22\u0E19_\u0E18\u0E31\u0E19\u0E27\u0E32\u0E04\u0E21".split("_"),monthsShort:"\u0E21.\u0E04._\u0E01.\u0E1E._\u0E21\u0E35.\u0E04._\u0E40\u0E21.\u0E22._\u0E1E.\u0E04._\u0E21\u0E34.\u0E22._\u0E01.\u0E04._\u0E2A.\u0E04._\u0E01.\u0E22._\u0E15.\u0E04._\u0E1E.\u0E22._\u0E18.\u0E04.".split("_"),monthsParseExact:!0,weekdays:"\u0E2D\u0E32\u0E17\u0E34\u0E15\u0E22\u0E4C_\u0E08\u0E31\u0E19\u0E17\u0E23\u0E4C_\u0E2D\u0E31\u0E07\u0E04\u0E32\u0E23_\u0E1E\u0E38\u0E18_\u0E1E\u0E24\u0E2B\u0E31\u0E2A\u0E1A\u0E14\u0E35_\u0E28\u0E38\u0E01\u0E23\u0E4C_\u0E40\u0E2A\u0E32\u0E23\u0E4C".split("_"),weekdaysShort:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),weekdaysMin:"\u0E2D\u0E32._\u0E08._\u0E2D._\u0E1E._\u0E1E\u0E24._\u0E28._\u0E2A.".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"H:mm",LTS:"H:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm",LLLL:"\u0E27\u0E31\u0E19dddd\u0E17\u0E35\u0E48 D MMMM YYYY \u0E40\u0E27\u0E25\u0E32 H:mm"},meridiemParse:/ก่อนเที่ยง|หลังเที่ยง/,isPM(t){return t==="\u0E2B\u0E25\u0E31\u0E07\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07"},meridiem(t,n,e){return t<12?"\u0E01\u0E48\u0E2D\u0E19\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07":"\u0E2B\u0E25\u0E31\u0E07\u0E40\u0E17\u0E35\u0E48\u0E22\u0E07"},calendar:{sameDay:"[\u0E27\u0E31\u0E19\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",nextDay:"[\u0E1E\u0E23\u0E38\u0E48\u0E07\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",nextWeek:"dddd[\u0E2B\u0E19\u0E49\u0E32 \u0E40\u0E27\u0E25\u0E32] LT",lastDay:"[\u0E40\u0E21\u0E37\u0E48\u0E2D\u0E27\u0E32\u0E19\u0E19\u0E35\u0E49 \u0E40\u0E27\u0E25\u0E32] LT",lastWeek:"[\u0E27\u0E31\u0E19]dddd[\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27 \u0E40\u0E27\u0E25\u0E32] LT",sameElse:"L"},relativeTime:{future:"\u0E2D\u0E35\u0E01 %s",past:"%s\u0E17\u0E35\u0E48\u0E41\u0E25\u0E49\u0E27",s:"\u0E44\u0E21\u0E48\u0E01\u0E35\u0E48\u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",ss:"%d \u0E27\u0E34\u0E19\u0E32\u0E17\u0E35",m:"1 \u0E19\u0E32\u0E17\u0E35",mm:"%d \u0E19\u0E32\u0E17\u0E35",h:"1 \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",hh:"%d \u0E0A\u0E31\u0E48\u0E27\u0E42\u0E21\u0E07",d:"1 \u0E27\u0E31\u0E19",dd:"%d \u0E27\u0E31\u0E19",M:"1 \u0E40\u0E14\u0E37\u0E2D\u0E19",MM:"%d \u0E40\u0E14\u0E37\u0E2D\u0E19",y:"1 \u0E1B\u0E35",yy:"%d \u0E1B\u0E35"},preparse(t,n){let e=Px.longDateFormat[n]?Px.longDateFormat[n]:n;if(e.indexOf("YYYY",e.length-4)!==-1){let i=t.substr(0,t.length-4),r=parseInt(t.substr(t.length-4),10)-543;return i+r}return t},getFullYear(t,n=!1){return 543+(n?t.getUTCFullYear():t.getFullYear())}};var Ib={1:"'inci",5:"'inci",8:"'inci",70:"'inci",80:"'inci",2:"'nci",7:"'nci",20:"'nci",50:"'nci",3:"'\xFCnc\xFC",4:"'\xFCnc\xFC",100:"'\xFCnc\xFC",6:"'nc\u0131",9:"'uncu",10:"'uncu",30:"'uncu",60:"'\u0131nc\u0131",90:"'\u0131nc\u0131"},kae={abbr:"tr",months:"Ocak_\u015Eubat_Mart_Nisan_May\u0131s_Haziran_Temmuz_A\u011Fustos_Eyl\xFCl_Ekim_Kas\u0131m_Aral\u0131k".split("_"),monthsShort:"Oca_\u015Eub_Mar_Nis_May_Haz_Tem_A\u011Fu_Eyl_Eki_Kas_Ara".split("_"),weekdays:"Pazar_Pazartesi_Sal\u0131_\xC7ar\u015Famba_Per\u015Fembe_Cuma_Cumartesi".split("_"),weekdaysShort:"Paz_Pts_Sal_\xC7ar_Per_Cum_Cts".split("_"),weekdaysMin:"Pz_Pt_Sa_\xC7a_Pe_Cu_Ct".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd, D MMMM YYYY HH:mm"},calendar:{sameDay:"[bug\xFCn saat] LT",nextDay:"[yar\u0131n saat] LT",nextWeek:"[gelecek] dddd [saat] LT",lastDay:"[d\xFCn] LT",lastWeek:"[ge\xE7en] dddd [saat] LT",sameElse:"L"},relativeTime:{future:"%s sonra",past:"%s \xF6nce",s:"birka\xE7 saniye",ss:"%d saniye",m:"bir dakika",mm:"%d dakika",h:"bir saat",hh:"%d saat",d:"bir g\xFCn",dd:"%d g\xFCn",M:"bir ay",MM:"%d ay",y:"bir y\u0131l",yy:"%d y\u0131l"},dayOfMonthOrdinalParse:/\d{1,2}'(inci|nci|üncü|ncı|uncu|ıncı)/,ordinal(t){let n=Number(t);if(n===0)return n+"'\u0131nc\u0131";let e=n%10,i=n%100-e,r=n>=100?100:null;return n+(Ib[e]||Ib[i]||Ib[r])},week:{dow:1,doy:7}};function v$(t,n){let e=t.split("_");return n%10===1&&n%100!==11?e[0]:n%10>=2&&n%10<=4&&(n%100<10||n%100>=20)?e[1]:e[2]}function Gs(t,n,e){let i={ss:n?"\u0441\u0435\u043A\u0443\u043D\u0434\u0430_\u0441\u0435\u043A\u0443\u043D\u0434\u0438_\u0441\u0435\u043A\u0443\u043D\u0434":"\u0441\u0435\u043A\u0443\u043D\u0434\u0443_\u0441\u0435\u043A\u0443\u043D\u0434\u0438_\u0441\u0435\u043A\u0443\u043D\u0434",mm:n?"\u0445\u0432\u0438\u043B\u0438\u043D\u0430_\u0445\u0432\u0438\u043B\u0438\u043D\u0438_\u0445\u0432\u0438\u043B\u0438\u043D":"\u0445\u0432\u0438\u043B\u0438\u043D\u0443_\u0445\u0432\u0438\u043B\u0438\u043D\u0438_\u0445\u0432\u0438\u043B\u0438\u043D",hh:n?"\u0433\u043E\u0434\u0438\u043D\u0430_\u0433\u043E\u0434\u0438\u043D\u0438_\u0433\u043E\u0434\u0438\u043D":"\u0433\u043E\u0434\u0438\u043D\u0443_\u0433\u043E\u0434\u0438\u043D\u0438_\u0433\u043E\u0434\u0438\u043D",dd:"\u0434\u0435\u043D\u044C_\u0434\u043D\u0456_\u0434\u043D\u0456\u0432",MM:"\u043C\u0456\u0441\u044F\u0446\u044C_\u043C\u0456\u0441\u044F\u0446\u0456_\u043C\u0456\u0441\u044F\u0446\u0456\u0432",yy:"\u0440\u0456\u043A_\u0440\u043E\u043A\u0438_\u0440\u043E\u043A\u0456\u0432"};return e==="m"?n?"\u0445\u0432\u0438\u043B\u0438\u043D\u0430":"\u0445\u0432\u0438\u043B\u0438\u043D\u0443":e==="h"?n?"\u0433\u043E\u0434\u0438\u043D\u0430":"\u0433\u043E\u0434\u0438\u043D\u0443":t+" "+v$(i[e],+t)}function b$(t,n,e){let i={nominative:"\u043D\u0435\u0434\u0456\u043B\u044F_\u043F\u043E\u043D\u0435\u0434\u0456\u043B\u043E\u043A_\u0432\u0456\u0432\u0442\u043E\u0440\u043E\u043A_\u0441\u0435\u0440\u0435\u0434\u0430_\u0447\u0435\u0442\u0432\u0435\u0440_\u043F\u2019\u044F\u0442\u043D\u0438\u0446\u044F_\u0441\u0443\u0431\u043E\u0442\u0430".split("_"),accusative:"\u043D\u0435\u0434\u0456\u043B\u044E_\u043F\u043E\u043D\u0435\u0434\u0456\u043B\u043E\u043A_\u0432\u0456\u0432\u0442\u043E\u0440\u043E\u043A_\u0441\u0435\u0440\u0435\u0434\u0443_\u0447\u0435\u0442\u0432\u0435\u0440_\u043F\u2019\u044F\u0442\u043D\u0438\u0446\u044E_\u0441\u0443\u0431\u043E\u0442\u0443".split("_"),genitive:"\u043D\u0435\u0434\u0456\u043B\u0456_\u043F\u043E\u043D\u0435\u0434\u0456\u043B\u043A\u0430_\u0432\u0456\u0432\u0442\u043E\u0440\u043A\u0430_\u0441\u0435\u0440\u0435\u0434\u0438_\u0447\u0435\u0442\u0432\u0435\u0440\u0433\u0430_\u043F\u2019\u044F\u0442\u043D\u0438\u0446\u0456_\u0441\u0443\u0431\u043E\u0442\u0438".split("_")};if(!t)return i.nominative;let r=/(\[[ВвУу]\]) ?dddd/.test(n)?"accusative":/\[?(?:минулої|наступної)? ?\] ?dddd/.test(n)?"genitive":"nominative";return i[r][Gt(t,e)]}function Al(t){return function(n){return t+"\u043E"+(Ee(n)===11?"\u0431":"")+"] LT"}}var Aae={abbr:"uk",months:{format:"\u0441\u0456\u0447\u043D\u044F_\u043B\u044E\u0442\u043E\u0433\u043E_\u0431\u0435\u0440\u0435\u0437\u043D\u044F_\u043A\u0432\u0456\u0442\u043D\u044F_\u0442\u0440\u0430\u0432\u043D\u044F_\u0447\u0435\u0440\u0432\u043D\u044F_\u043B\u0438\u043F\u043D\u044F_\u0441\u0435\u0440\u043F\u043D\u044F_\u0432\u0435\u0440\u0435\u0441\u043D\u044F_\u0436\u043E\u0432\u0442\u043D\u044F_\u043B\u0438\u0441\u0442\u043E\u043F\u0430\u0434\u0430_\u0433\u0440\u0443\u0434\u043D\u044F".split("_"),standalone:"\u0441\u0456\u0447\u0435\u043D\u044C_\u043B\u044E\u0442\u0438\u0439_\u0431\u0435\u0440\u0435\u0437\u0435\u043D\u044C_\u043A\u0432\u0456\u0442\u0435\u043D\u044C_\u0442\u0440\u0430\u0432\u0435\u043D\u044C_\u0447\u0435\u0440\u0432\u0435\u043D\u044C_\u043B\u0438\u043F\u0435\u043D\u044C_\u0441\u0435\u0440\u043F\u0435\u043D\u044C_\u0432\u0435\u0440\u0435\u0441\u0435\u043D\u044C_\u0436\u043E\u0432\u0442\u0435\u043D\u044C_\u043B\u0438\u0441\u0442\u043E\u043F\u0430\u0434_\u0433\u0440\u0443\u0434\u0435\u043D\u044C".split("_")},monthsShort:"\u0441\u0456\u0447_\u043B\u044E\u0442_\u0431\u0435\u0440_\u043A\u0432\u0456\u0442_\u0442\u0440\u0430\u0432_\u0447\u0435\u0440\u0432_\u043B\u0438\u043F_\u0441\u0435\u0440\u043F_\u0432\u0435\u0440_\u0436\u043E\u0432\u0442_\u043B\u0438\u0441\u0442_\u0433\u0440\u0443\u0434".split("_"),weekdays:b$,weekdaysShort:"\u043D\u0434_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),weekdaysMin:"\u043D\u0434_\u043F\u043D_\u0432\u0442_\u0441\u0440_\u0447\u0442_\u043F\u0442_\u0441\u0431".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY \u0440.",LLL:"D MMMM YYYY \u0440., HH:mm",LLLL:"dddd, D MMMM YYYY \u0440., HH:mm"},calendar:{sameDay:Al("[\u0421\u044C\u043E\u0433\u043E\u0434\u043D\u0456 "),nextDay:Al("[\u0417\u0430\u0432\u0442\u0440\u0430 "),lastDay:Al("[\u0412\u0447\u043E\u0440\u0430 "),nextWeek:Al("[\u0423] dddd ["),lastWeek(t){switch(Gt(t)){case 0:case 3:case 5:case 6:return Al("[\u041C\u0438\u043D\u0443\u043B\u043E\u0457] dddd [")(t);case 1:case 2:case 4:return Al("[\u041C\u0438\u043D\u0443\u043B\u043E\u0433\u043E] dddd [")(t)}},sameElse:"L"},relativeTime:{future:"\u0437\u0430 %s",past:"%s \u0442\u043E\u043C\u0443",s:"\u0434\u0435\u043A\u0456\u043B\u044C\u043A\u0430 \u0441\u0435\u043A\u0443\u043D\u0434",ss:Gs,m:Gs,mm:Gs,h:"\u0433\u043E\u0434\u0438\u043D\u0443",hh:Gs,d:"\u0434\u0435\u043D\u044C",dd:Gs,M:"\u043C\u0456\u0441\u044F\u0446\u044C",MM:Gs,y:"\u0440\u0456\u043A",yy:Gs},meridiemParse:/ночі|ранку|дня|вечора/,isPM(t){return/^(дня|вечора)$/.test(t)},meridiem(t,n,e){return t<4?"\u043D\u043E\u0447\u0456":t<12?"\u0440\u0430\u043D\u043A\u0443":t<17?"\u0434\u043D\u044F":"\u0432\u0435\u0447\u043E\u0440\u0430"},dayOfMonthOrdinalParse:/\d{1,2}-(й|го)/,ordinal(t,n){let e=Number(t);switch(n){case"M":case"d":case"DDD":case"w":case"W":return e+"-\u0439";case"D":return e+"-\u0433\u043E";default:return e.toString()}},week:{dow:1,doy:7}};var Rae={abbr:"vi",months:"th\xE1ng 1_th\xE1ng 2_th\xE1ng 3_th\xE1ng 4_th\xE1ng 5_th\xE1ng 6_th\xE1ng 7_th\xE1ng 8_th\xE1ng 9_th\xE1ng 10_th\xE1ng 11_th\xE1ng 12".split("_"),monthsShort:"Th01_Th02_Th03_Th04_Th05_Th06_Th07_Th08_Th09_Th10_Th11_Th12".split("_"),monthsParseExact:!0,weekdays:"ch\u1EE7 nh\u1EADt_th\u1EE9 hai_th\u1EE9 ba_th\u1EE9 t\u01B0_th\u1EE9 n\u0103m_th\u1EE9 s\xE1u_th\u1EE9 b\u1EA3y".split("_"),weekdaysShort:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysMin:"CN_T2_T3_T4_T5_T6_T7".split("_"),weekdaysParseExact:!0,meridiemParse:/sa|ch/i,isPM(t){return/^ch$/i.test(t)},meridiem(t,n,e){return t<12?e?"sa":"SA":e?"ch":"CH"},longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"DD/MM/YYYY",LL:"D MMMM [n\u0103m] YYYY",LLL:"D MMMM [n\u0103m] YYYY HH:mm",LLLL:"dddd, D MMMM [n\u0103m] YYYY HH:mm",l:"DD/M/YYYY",ll:"D MMM YYYY",lll:"D MMM YYYY HH:mm",llll:"ddd, D MMM YYYY HH:mm"},calendar:{sameDay:"[H\xF4m nay l\xFAc] LT",nextDay:"[Ng\xE0y mai l\xFAc] LT",nextWeek:"dddd [tu\u1EA7n t\u1EDBi l\xFAc] LT",lastDay:"[H\xF4m qua l\xFAc] LT",lastWeek:"dddd [tu\u1EA7n tr\u01B0\u1EDBc l\xFAc] LT",sameElse:"L"},relativeTime:{future:"%s t\u1EDBi",past:"%s tr\u01B0\u1EDBc",s:"v\xE0i gi\xE2y",ss:"%d gi\xE2y",m:"m\u1ED9t ph\xFAt",mm:"%d ph\xFAt",h:"m\u1ED9t gi\u1EDD",hh:"%d gi\u1EDD",d:"m\u1ED9t ng\xE0y",dd:"%d ng\xE0y",M:"m\u1ED9t th\xE1ng",MM:"%d th\xE1ng",y:"m\u1ED9t n\u0103m",yy:"%d n\u0103m"},dayOfMonthOrdinalParse:/\d{1,2}/,ordinal(t){return""+t},week:{dow:1,doy:4}};var Oae={abbr:"zh-cn",months:"\u4E00\u6708_\u4E8C\u6708_\u4E09\u6708_\u56DB\u6708_\u4E94\u6708_\u516D\u6708_\u4E03\u6708_\u516B\u6708_\u4E5D\u6708_\u5341\u6708_\u5341\u4E00\u6708_\u5341\u4E8C\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661F\u671F\u65E5_\u661F\u671F\u4E00_\u661F\u671F\u4E8C_\u661F\u671F\u4E09_\u661F\u671F\u56DB_\u661F\u671F\u4E94_\u661F\u671F\u516D".split("_"),weekdaysShort:"\u5468\u65E5_\u5468\u4E00_\u5468\u4E8C_\u5468\u4E09_\u5468\u56DB_\u5468\u4E94_\u5468\u516D".split("_"),weekdaysMin:"\u65E5_\u4E00_\u4E8C_\u4E09_\u56DB_\u4E94_\u516D".split("_"),longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY\u5E74M\u6708D\u65E5",LLL:"YYYY\u5E74M\u6708D\u65E5Ah\u70B9mm\u5206",LLLL:"YYYY\u5E74M\u6708D\u65E5ddddAh\u70B9mm\u5206",l:"YYYY/M/D",ll:"YYYY\u5E74M\u6708D\u65E5",lll:"YYYY\u5E74M\u6708D\u65E5 HH:mm",llll:"YYYY\u5E74M\u6708D\u65E5dddd HH:mm"},meridiemParse:/凌晨|早上|上午|中午|下午|晚上/,meridiemHour(t,n){return t===12&&(t=0),n==="\u51CC\u6668"||n==="\u65E9\u4E0A"||n==="\u4E0A\u5348"?t:n==="\u4E0B\u5348"||n==="\u665A\u4E0A"?t+12:t>=11?t:t+12},meridiem(t,n,e){let i=t*100+n;return i<600?"\u51CC\u6668":i<900?"\u65E9\u4E0A":i<1130?"\u4E0A\u5348":i<1230?"\u4E2D\u5348":i<1800?"\u4E0B\u5348":"\u665A\u4E0A"},calendar:{sameDay:"[\u4ECA\u5929]LT",nextDay:"[\u660E\u5929]LT",nextWeek:"[\u4E0B]ddddLT",lastDay:"[\u6628\u5929]LT",lastWeek:"[\u4E0A]ddddLT",sameElse:"L"},dayOfMonthOrdinalParse:/\d{1,2}(日|月|周)/,ordinal(t,n){let e=Number(t);switch(n){case"d":case"D":case"DDD":return e+"\u65E5";case"M":return e+"\u6708";case"w":case"W":return e+"\u5468";default:return e.toString()}},relativeTime:{future:"%s\u5185",past:"%s\u524D",s:"\u51E0\u79D2",ss:"%d \u79D2",m:"1 \u5206\u949F",mm:"%d \u5206\u949F",h:"1 \u5C0F\u65F6",hh:"%d \u5C0F\u65F6",d:"1 \u5929",dd:"%d \u5929",M:"1 \u4E2A\u6708",MM:"%d \u4E2A\u6708",y:"1 \u5E74",yy:"%d \u5E74"},week:{dow:1,doy:4}};var C$={1:"\u0661",2:"\u0662",3:"\u0663",4:"\u0664",5:"\u0665",6:"\u0666",7:"\u0667",8:"\u0668",9:"\u0669",0:"\u0660"},w$={"\u0661":"1","\u0662":"2","\u0663":"3","\u0664":"4","\u0665":"5","\u0666":"6","\u0667":"7","\u0668":"8","\u0669":"9","\u0660":"0"},Nx=function(t){return t===0?0:t===1?1:t===2?2:t%100>=3&&t%100<=10?3:t%100>=11?4:5},D$={s:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u062B\u0627\u0646\u06CC\u0647","\u06CC\u06A9 \u062B\u0627\u0646\u06CC\u0647",["\u062F\u0648 \u062B\u0627\u0646\u06CC\u0647","\u062F\u0648 \u062B\u0627\u0646\u06CC\u0647"],"%d \u062B\u0627\u0646\u06CC\u0647","%d \u062B\u0627\u0646\u06CC\u0647","%d \u062B\u0627\u0646\u06CC\u0647"],m:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u062F\u0642\u06CC\u0642\u0647","\u06CC\u06A9 \u062F\u0642\u06CC\u0642\u0647",["\u062F\u0648 \u062F\u0642\u06CC\u0642\u0647","\u062F\u0648 \u062F\u0642\u06CC\u0642\u0647"],"%d \u062F\u0642\u06CC\u0642\u0647","%d \u062F\u0642\u06CC\u0642\u0647","%d \u062F\u0642\u06CC\u0642\u0647"],h:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u0633\u0627\u0639\u062A","\u06CC\u06A9 \u0633\u0627\u0639\u062A",["\u062F\u0648 \u0633\u0627\u0639\u062A","\u062F\u0648 \u0633\u0627\u0639\u062A"],"%d \u0633\u0627\u0639\u062A","%d \u0633\u0627\u0639\u062A","%d \u0633\u0627\u0639\u062A"],d:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u0631\u0648\u0632","\u06CC\u06A9 \u0631\u0648\u0632",["\u062F\u0648 \u0631\u0648\u0632","\u062F\u0648 \u0631\u0648\u0632"],"%d \u0631\u0648\u0632","%d \u0631\u0648\u0632","%d \u0631\u0648\u0632"],M:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u0645\u0627\u0647","\u06CC\u06A9 \u0645\u0627\u0647",["\u062F\u0648 \u0645\u0627\u0647","\u062F\u0648 \u0645\u0627\u0647"],"%d \u0645\u0627\u0647","%d \u0645\u0627\u0647","%d \u0645\u0627\u0647"],y:["\u06A9\u0645\u062A\u0631 \u0627\u0632 \u06CC\u06A9 \u0633\u0627\u0644","\u06CC\u06A9 \u0633\u0627\u0644",["\u062F\u0648 \u0633\u0627\u0644","\u062F\u0648 \u0633\u0627\u0644"],"%d \u0633\u0627\u0644","%d \u0633\u0627\u0644","%d \u0633\u0627\u0644"]},ki=function(t){return function(n,e){let i=Nx(n),r=D$[t][Nx(n)];return i===2&&(r=r[e?0:1]),r.replace(/%d/i,n.toString())}},Lx=["\u0698\u0627\u0646\u0648\u06CC\u0647","\u0641\u0648\u0631\u06CC\u0647","\u0645\u0627\u0631\u0633","\u0622\u0648\u0631\u06CC\u0644","\u0645\u06CC","\u0698\u0648\u0626\u0646","\u062C\u0648\u0644\u0627\u06CC","\u0622\u06AF\u0648\u0633\u062A","\u0633\u067E\u062A\u0627\u0645\u0628\u0631","\u0627\u06A9\u062A\u0628\u0631","\u0646\u0648\u0627\u0645\u0628\u0631","\u062F\u0633\u0627\u0645\u0628\u0631"],Pae={abbr:"fa",months:Lx,monthsShort:Lx,weekdays:"\u06CC\u06A9\u0634\u0646\u0628\u0647_\u062F\u0648\u0634\u0646\u0628\u0647_\u0633\u0647 \u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u0634\u0646\u0628\u0647_\u067E\u0646\u062C \u0634\u0646\u0628\u0647_\u062C\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysShort:"\u06CC\u06A9\u0634\u0646\u0628\u0647_\u062F\u0648\u200C\u0634\u0646\u0628\u0647_\u0633\u0647\u200C\u0634\u0646\u0628\u0647_\u0686\u0647\u0627\u0631\u200C\u0634\u0646\u0628\u0647_\u067E\u0646\u062C\u200C\u0634\u0646\u0628\u0647_\u062C\u0645\u0639\u0647_\u0634\u0646\u0628\u0647".split("_"),weekdaysMin:"\u06CC_\u062F_\u0633_\u0686_\u067E_\u062C_\u0634".split("_"),weekdaysParseExact:!0,longDateFormat:{LT:"HH:mm",LTS:"HH:mm:ss",L:"D/\u200FM/\u200FYYYY",LL:"D MMMM YYYY",LLL:"D MMMM YYYY HH:mm",LLLL:"dddd D MMMM YYYY HH:mm"},meridiemParse:/ص|م/,isPM(t){return t==="\u0645"},meridiem(t,n,e){return t<12?"\u0635":"\u0645"},calendar:{sameDay:"[\u0627\u0645\u0631\u0648\u0632 \u062F\u0631 \u0633\u0627\u0639\u062A] LT",nextDay:"[\u0641\u0631\u062F\u0627 \u062F\u0631 \u0633\u0627\u0639\u062A] LT",nextWeek:"dddd [\u062F\u0631 \u0633\u0627\u0639\u062A] LT",lastDay:"[\u062F\u06CC\u0631\u0648\u0632 \u062F\u0631 \u0633\u0627\u0639\u062A] LT",lastWeek:"dddd [\u062F\u0631 \u0633\u0627\u0639\u062A] LT",sameElse:"L"},relativeTime:{future:"\u0628\u0639\u062F %s",past:"\u067E\u06CC\u0634 %s",s:ki("s"),ss:ki("s"),m:ki("m"),mm:ki("m"),h:ki("h"),hh:ki("h"),d:ki("d"),dd:ki("d"),M:ki("M"),MM:ki("M"),y:ki("y"),yy:ki("y")},preparse(t){return t.replace(/[١٢٣٤٥٦٧٨٩٠]/g,function(n){return w$[n]}).replace(/،/g,",")},postformat(t){return t.replace(/\d/g,function(n){return C$[n]}).replace(/,/g,"\u060C")},week:{dow:6,doy:80}};var zb=class{constructor(n,e){this.open=n,this.close=e||n}isManual(){return this.open==="manual"||this.close==="manual"}},M$={hover:["mouseover","mouseout"],focus:["focusin","focusout"]};function Wb(t,n=M$){let e=(t||"").trim();if(e.length===0)return[];let i=e.split(/\s+/).map(o=>o.split(":")).map(o=>{let s=n[o[0]]||o;return new zb(s[0],s[1])}),r=i.filter(o=>o.isManual());if(r.length>1)throw new Error("Triggers parse error: only one manual trigger is allowed");if(r.length===1&&i.length>1)throw new Error("Triggers parse error: manual trigger can't be mixed with other triggers");return i}function u1(t,n){let e=Wb(n.triggers),i=n.target;if(e.length===1&&e[0].isManual())return Function.prototype;let r=[],o=[],s=()=>{o.forEach(a=>r.push(a())),o.length=0};return e.forEach(a=>{let l=a.open===a.close,c=l?n.toggle:n.show;if(!l&&a.close&&n.hide){let u=a.close,m=n.hide,b=()=>t.listen(i,u,m);o.push(b)}c&&r.push(t.listen(i,a.open,()=>c(s)))}),()=>{r.forEach(a=>a())}}function d1(t,n){return n.outsideClick?t.listen("document","click",e=>{n.target&&n.target.contains(e.target)||n.targets&&n.targets.some(i=>i.contains(e.target))||n.hide&&n.hide()}):Function.prototype}function h1(t,n){return n.outsideEsc?t.listen("document","keyup.esc",e=>{n.target&&n.target.contains(e.target)||n.targets&&n.targets.some(i=>i.contains(e.target))||n.hide&&n.hide()}):Function.prototype}var Vt=typeof window<"u"&&window||{},jt=Vt.document,Fae=Vt.location,Vae=Vt.gc?()=>Vt.gc():()=>null,jae=Vt.performance?Vt.performance:null,Hae=Vt.Event,Bae=Vt.MouseEvent,Uae=Vt.KeyboardEvent,$ae=Vt.EventTarget,Yae=Vt.History,zae=Vt.Location,Wae=Vt.EventListener,f1=function(t){return t.isBs4="bs4",t.isBs5="bs5",t}(f1||{}),zo;function p1(){let t=Vt.document.createElement("span");t.innerText="testing bs version",t.classList.add("d-none"),t.classList.add("pl-1"),Vt.document.head.appendChild(t);let n=Vt.getComputedStyle(t).paddingLeft;return n&&parseFloat(n)?(Vt.document.head.removeChild(t),"bs4"):(Vt.document.head.removeChild(t),"bs5")}function S$(){return zo||(zo=p1()),zo==="bs4"}function E$(){return zo||(zo=p1()),zo==="bs5"}function Wo(){return{isBs4:S$(),isBs5:E$()}}function T$(){let t=Wo(),n=Object.keys(t).find(e=>t[e]);return f1[n]}function m1(){let t="Change";return function(e,i){let r=` __${i}Value`;Object.defineProperty(e,i,{get(){return this[r]},set(o){let s=this[r];this[r]=o,s!==o&&this[i+t]&&this[i+t].emit(o)}})}}var em=class{static reflow(n){n.offsetHeight}static getStyles(n){let e=n.ownerDocument.defaultView;return(!e||!e.opener)&&(e=Vt),e.getComputedStyle(n)}static stackOverflowConfig(){let n=T$();return{crossorigin:"anonymous",integrity:n==="bs5"?"sha384-rbsA2VBKQhggwzxH7pPCaAqO46MgnOM80zW1RWuH61DGLwZJEdK2Kadq2F9CUG65":"sha384-TX8t27EcRE3e/ihU7zmQxVncDAy5uIKz4rEkgIXeMed4M0jlfIDPvg6uqKI2xXr2",cdnLink:n==="bs5"?"https://cdn.jsdelivr.net/npm/bootstrap@5.2.3/dist/css/bootstrap.min.css":"https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css"}}},c1={},I$=typeof console>"u"||!("warn"in console);function Bn(t){!RE()||I$||t in c1||(c1[t]=!0,console.warn(t))}var C1=function(t){return t.top="top",t.bottom="bottom",t.left="left",t.right="right",t.auto="auto",t.end="right",t.start="left",t["top left"]="top left",t["top right"]="top right",t["right top"]="right top",t["right bottom"]="right bottom",t["bottom right"]="bottom right",t["bottom left"]="bottom left",t["left bottom"]="left bottom",t["left top"]="left top",t["top start"]="top left",t["top end"]="top right",t["end top"]="right top",t["end bottom"]="right bottom",t["bottom end"]="bottom right",t["bottom start"]="bottom left",t["start bottom"]="start bottom",t["start top"]="left top",t}(C1||{}),Ju=function(t){return t.top="top",t.bottom="bottom",t.left="start",t.right="end",t.auto="auto",t.end="end",t.start="start",t["top left"]="top start",t["top right"]="top end",t["right top"]="end top",t["right bottom"]="end bottom",t["bottom right"]="bottom end",t["bottom left"]="bottom start",t["left bottom"]="start bottom",t["left top"]="start top",t["top start"]="top start",t["top end"]="top end",t["end top"]="end top",t["end bottom"]="end bottom",t["bottom end"]="bottom end",t["bottom start"]="bottom start",t["start bottom"]="start bottom",t["start top"]="start top",t}(Ju||{});function na(t,n){if(t.nodeType!==1)return[];let i=t.ownerDocument.defaultView?.getComputedStyle(t,null);return n?i&&i[n]:i}function Zb(t){if(!t)return document.documentElement;let n=null,e=t?.offsetParent,i;for(;e===n&&t.nextElementSibling&&i!==t.nextElementSibling;)i=t.nextElementSibling,e=i.offsetParent;let r=e&&e.nodeName;return!r||r==="BODY"||r==="HTML"?i?i.ownerDocument.documentElement:document.documentElement:e&&["TH","TD","TABLE"].indexOf(e.nodeName)!==-1&&na(e,"position")==="static"?Zb(e):e}function x$(t){let{nodeName:n}=t;return n==="BODY"?!1:n==="HTML"||Zb(t.firstElementChild)===t}function Gb(t){return t.parentNode!==null?Gb(t.parentNode):t}function rm(t,n){if(!t||!t.nodeType||!n||!n.nodeType)return document.documentElement;let e=t.compareDocumentPosition(n)&Node.DOCUMENT_POSITION_FOLLOWING,i=e?t:n,r=e?n:t,o=document.createRange();o.setStart(i,0),o.setEnd(r,0);let s=o.commonAncestorContainer;if(t!==s&&n!==s||i.contains(r))return x$(s)?s:Zb(s);let a=Gb(t);return a.host?rm(a.host,n):rm(t,Gb(n).host)}function w1(t){if(!t||!t.parentElement)return document.documentElement;let n=t.parentElement;for(;n?.parentElement&&na(n,"transform")==="none";)n=n.parentElement;return n||document.documentElement}function g1(t,n){let e=n==="x"?"Left":"Top",i=e==="Left"?"Right":"Bottom";return parseFloat(t[`border${e}Width`])+parseFloat(t[`border${i}Width`])}function _1(t,n,e){let i=n,r=e;return Math.max(i[`offset${t}`],i[`scroll${t}`],r[`client${t}`],r[`offset${t}`],r[`scroll${t}`],0)}function D1(t){let n=t.body,e=t.documentElement;return{height:_1("Height",n,e),width:_1("Width",n,e)}}function Xu(t){return W(E({},t),{right:(t.left||0)+t.width,bottom:(t.top||0)+t.height})}function k$(t){return t!==""&&!isNaN(parseFloat(t))&&isFinite(Number(t))}function mt(t){return typeof t=="number"||Object.prototype.toString.call(t)==="[object Number]"}function y1(t){let n=t.getBoundingClientRect();if(!(n&&mt(n.top)&&mt(n.left)&&mt(n.bottom)&&mt(n.right)))return n;let e={left:n.left,top:n.top,width:n.right-n.left,height:n.bottom-n.top},i=t.nodeName==="HTML"?D1(t.ownerDocument):void 0,r=i?.width||t.clientWidth||mt(n.right)&&mt(e.left)&&n.right-e.left||0,o=i?.height||t.clientHeight||mt(n.bottom)&&mt(e.top)&&n.bottom-e.top||0,s=t.offsetWidth-r,a=t.offsetHeight-o;if(s||a){let l=na(t);s-=g1(l,"x"),a-=g1(l,"y"),e.width-=s,e.height-=a}return Xu(e)}function Kb(t,n,e=!1){let i=n.nodeName==="HTML",r=y1(t),o=y1(n),s=na(n),a=parseFloat(s.borderTopWidth),l=parseFloat(s.borderLeftWidth);e&&i&&(o.top=Math.max(o.top??0,0),o.left=Math.max(o.left??0,0));let c=Xu({top:(r.top??0)-(o.top??0)-a,left:(r.left??0)-(o.left??0)-l,width:r.width,height:r.height});if(c.marginTop=0,c.marginLeft=0,i){let u=parseFloat(s.marginTop),m=parseFloat(s.marginLeft);mt(c.top)&&(c.top-=a-u),mt(c.bottom)&&(c.bottom-=a-u),mt(c.left)&&(c.left-=l-m),mt(c.right)&&(c.right-=l-m),c.marginTop=u,c.marginLeft=m}return c}function Jb(t){return t.nodeName==="HTML"?t:t.parentNode||t.host}function M1(t){if(!t)return document.body;switch(t.nodeName){case"HTML":case"BODY":return t.ownerDocument.body;case"#document":return t.body;default:}let{overflow:n,overflowX:e,overflowY:i}=na(t);return/(auto|scroll|overlay)/.test(String(n)+String(i)+String(e))?t:M1(Jb(t))}function v1(t,n="top"){let e=n==="top"?"scrollTop":"scrollLeft",i=t.nodeName;if(i==="BODY"||i==="HTML"){let r=t.ownerDocument.documentElement;return(t.ownerDocument.scrollingElement||r)[e]}return t[e]}function A$(t,n=!1){let e=t.ownerDocument.documentElement,i=Kb(t,e),r=Math.max(e.clientWidth,window.innerWidth||0),o=Math.max(e.clientHeight,window.innerHeight||0),s=n?0:v1(e),a=n?0:v1(e,"left"),l={top:s-Number(i?.top)+Number(i?.marginTop),left:a-Number(i?.left)+Number(i?.marginLeft),width:r,height:o};return Xu(l)}function S1(t){let n=t.nodeName;return n==="BODY"||n==="HTML"?!1:na(t,"position")==="fixed"?!0:S1(Jb(t))}function Xb(t,n,e=0,i,r=!1){let o={top:0,left:0},s=r?w1(t):rm(t,n);if(i==="viewport")o=A$(s,r);else{let a;i==="scrollParent"?(a=M1(Jb(n)),a.nodeName==="BODY"&&(a=t.ownerDocument.documentElement)):i==="window"?a=t.ownerDocument.documentElement:a=i;let l=Kb(a,s,r);if(l&&a.nodeName==="HTML"&&!S1(s)){let{height:c,width:u}=D1(t.ownerDocument);mt(o.top)&&mt(l.top)&&mt(l.marginTop)&&(o.top+=l.top-l.marginTop),mt(o.top)&&(o.bottom=Number(c)+Number(l.top)),mt(o.left)&&mt(l.left)&&mt(l.marginLeft)&&(o.left+=l.left-l.marginLeft),mt(o.top)&&(o.right=Number(u)+Number(l.left))}else l&&(o=l)}return mt(o.left)&&(o.left+=e),mt(o.top)&&(o.top+=e),mt(o.right)&&(o.right-=e),mt(o.bottom)&&(o.bottom-=e),o}function R$({width:t,height:n}){return t*n}function E1(t,n,e,i,r=["top","bottom","right","left"],o="viewport",s=0){if(t.indexOf("auto")===-1)return t;let a=Xb(e,i,s,o),l={top:{width:a?.width??0,height:(n?.top??0)-(a?.top??0)},right:{width:(a?.right??0)-(n?.right??0),height:a?.height??0},bottom:{width:a?.width??0,height:(a?.bottom??0)-(n?.bottom??0)},left:{width:(n.left??0)-(a?.left??0),height:a?.height??0}},c=Object.keys(l).map(_=>W(E({position:_},l[_]),{area:R$(l[_])})).sort((_,M)=>M.area-_.area),u=c.filter(({width:_,height:M})=>_>=e.clientWidth&&M>=e.clientHeight);u=u.filter(({position:_})=>r.some(M=>M===_));let m=u.length>0?u[0].position:c[0].position,b=t.split(" ")[1];return e.className=e.className.replace(/bs-tooltip-auto/g,`bs-tooltip-${Wo().isBs5?Ju[m]:m}`),m+(b?`-${b}`:"")}function O$(t){return{width:t.offsets.target.width,height:t.offsets.target.height,left:Math.floor(t.offsets.target.left??0),top:Math.round(t.offsets.target.top??0),bottom:Math.round(t.offsets.target.bottom??0),right:Math.floor(t.offsets.target.right??0)}}function P$(t){let n={left:"right",right:"left",bottom:"top",top:"bottom"};return t.replace(/left|right|bottom|top/g,e=>n[e])}function N$(t){return t==="right"?"left":t==="left"?"right":t}var tm=(t,n=0)=>t?parseFloat(t):n;function T1(t){let e=t.ownerDocument.defaultView?.getComputedStyle(t),i=tm(e?.marginTop)+tm(e?.marginBottom),r=tm(e?.marginLeft)+tm(e?.marginRight);return{width:Number(t.offsetWidth)+r,height:Number(t.offsetHeight)+i}}function I1(t,n,e){let i=e?w1(t):rm(t,n);return Kb(n,i,e)}function qb(t,n,e){let i=e.split(" ")[0],r=T1(t),o={width:r.width,height:r.height},s=["right","left"].indexOf(i)!==-1,a=s?"top":"left",l=s?"left":"top",c=s?"height":"width",u=s?"width":"height";return o[a]=(n[a]??0)+n[c]/2-r[c]/2,o[l]=i===l?(n[l]??0)-r[u]:n[P$(l)]??0,o}function x1(t,n){return!!t.modifiers[n]?.enabled}var L$={top:["top","top start","top end"],bottom:["bottom","bottom start","bottom end"],start:["start","start top","start bottom"],end:["end","end top","end bottom"]};function nm(t,n){return Wo().isBs5?L$[n].includes(t):!1}function F$(t){return Wo().isBs5?nm(t,"end")?"ms-2":nm(t,"start")?"me-2":nm(t,"top")?"mb-2":nm(t,"bottom")?"mt-2":"":""}function V$(t,n){let e=t.instance.target,i=e.className,r=Wo().isBs5?Ju[t.placement]:t.placement;if(t.placementAuto&&(i=i.replace(/bs-popover-auto/g,`bs-popover-${r}`),i=i.replace(/ms-2|me-2|mb-2|mt-2/g,""),i=i.replace(/bs-tooltip-auto/g,`bs-tooltip-${r}`),i=i.replace(/\sauto/g,` ${r}`),i.indexOf("popover")!==-1&&(i=i+" "+F$(r)),i.indexOf("popover")!==-1&&i.indexOf("popover-auto")===-1&&(i+=" popover-auto"),i.indexOf("tooltip")!==-1&&i.indexOf("tooltip-auto")===-1&&(i+=" tooltip-auto")),i=i.replace(/left|right|top|bottom|end|start/g,`${r.split(" ")[0]}`),n){n.setAttribute(e,"class",i);return}e.className=i}function b1(t,n,e){!t||!n||Object.keys(n).forEach(i=>{let r="";if(["width","height","top","right","bottom","left"].indexOf(i)!==-1&&k$(n[i])&&(r="px"),e){e.setStyle(t,i,`${String(n[i])}${r}`);return}t.style[i]=String(n[i])+r})}function j$(t){let n=t.offsets.target,e=t.instance.target.querySelector(".arrow");if(!e)return t;let i=["left","right"].indexOf(t.placement.split(" ")[0])!==-1,r=i?"height":"width",o=i?"Top":"Left",s=o.toLowerCase(),a=i?"left":"top",l=i?"bottom":"right",c=T1(e)[r],u=t.placement.split(" ")[1];(t.offsets.host[l]??0)-c<(n[s]??0)&&(n[s]-=(n[s]??0)-((t.offsets.host[l]??0)-c)),Number(t.offsets.host[s])+Number(c)>(n[l]??0)&&(n[s]+=Number(t.offsets.host[s])+Number(c)-Number(n[l])),n=Xu(n);let m=na(t.instance.target),b=parseFloat(m[`margin${o}`])||0,_=parseFloat(m[`border${o}Width`])||0,M;if(!u)M=Number(t.offsets.host[s])+Number(t.offsets.host[r]/2-c/2);else{let O=parseFloat(m.borderRadius)||0,V=Number(b+_+O);M=s===u?Number(t.offsets.host[s])+V:Number(t.offsets.host[s])+Number(t.offsets.host[r]-V)}let I=M-(n[s]??0)-b-_;return I=Math.max(Math.min(n[r]-(c+5),I),0),t.offsets.arrow={[s]:Math.round(I),[a]:""},t.instance.arrow=e,t}function H$(t){if(t.offsets.target=Xu(t.offsets.target),!x1(t.options,"flip"))return t.offsets.target=E(E({},t.offsets.target),qb(t.instance.target,t.offsets.host,t.placement)),t;let n=Xb(t.instance.target,t.instance.host,0,"viewport",!1),e=t.placement.split(" ")[0],i=t.placement.split(" ")[1]||"",r=t.offsets.host,o=t.instance.target,s=t.instance.host,a=E1("auto",r,o,s,t.options.allowedPositions),l=[e,a];return l.forEach((c,u)=>{if(e!==c||l.length===u+1)return;e=t.placement.split(" ")[0];let m=e==="left"&&Math.floor(t.offsets.target.right??0)>Math.floor(t.offsets.host.left??0)||e==="right"&&Math.floor(t.offsets.target.left??0)Math.floor(t.offsets.host.top??0)||e==="bottom"&&Math.floor(t.offsets.target.top??0)Math.floor(n.right??0),M=Math.floor(t.offsets.target.top??0)Math.floor(n.bottom??0),O=e==="left"&&b||e==="right"&&_||e==="top"&&M||e==="bottom"&&I,V=["top","bottom"].indexOf(e)!==-1,de=V&&i==="left"&&b||V&&i==="right"&&_||!V&&i==="left"&&M||!V&&i==="right"&&I;(m||O||de)&&((m||O)&&(e=l[u+1]),de&&(i=N$(i)),t.placement=e+(i?` ${i}`:""),t.offsets.target=E(E({},t.offsets.target),qb(t.instance.target,t.offsets.host,t.placement)))}),t}function B$(t,n,e,i){if(!t||!n)return;let r=I1(t,n);!e.match(/^(auto)*\s*(left|right|top|bottom|start|end)*$/)&&!e.match(/^(left|right|top|bottom|start|end)*(?: (left|right|top|bottom|start|end))*$/)&&(e="auto");let o=!!e.match(/auto/g),s=e.match(/auto\s(left|right|top|bottom|start|end)/)?e.split(" ")[1]||"auto":e,a=s.match(/^(left|right|top|bottom|start|end)* ?(?!\1)(left|right|top|bottom|start|end)?/);a&&(s=a[1]+(a[2]?` ${a[2]}`:"")),["left right","right left","top bottom","bottom top"].indexOf(s)!==-1&&(s="auto"),s=E1(s,r,t,n,i?i.allowedPositions:void 0);let l=qb(t,r,s);return{options:i||{modifiers:{}},instance:{target:t,host:n,arrow:void 0},offsets:{target:l,host:r,arrow:void 0},positionFixed:!1,placement:s,placementAuto:o}}function U$(t){if(!x1(t.options,"preventOverflow"))return t;let n="transform",e=t.instance.target.style,{top:i,left:r,[n]:o}=e;e.top="",e.left="",e[n]="";let s=Xb(t.instance.target,t.instance.host,0,t.options.modifiers.preventOverflow?.boundariesElement||"scrollParent",!1);e.top=i,e.left=r,e[n]=o;let a=["left","right","top","bottom"],l={primary(c){let u=t.offsets.target[c];return(t.offsets.target[c]??0)<(s[c]??0)&&(u=Math.max(t.offsets.target[c]??0,s[c]??0)),{[c]:u}},secondary(c){let u=c==="right",m=u?"left":"top",b=u?"width":"height",_=t.offsets.target[m];return(t.offsets.target[c]??0)>(s[c]??0)&&(_=Math.min(t.offsets.target[m]??0,(s[c]??0)-t.offsets.target[b])),{[m]:_}}};return a.forEach(c=>{let u=["left","top","start"].indexOf(c)!==-1?l.primary:l.secondary;t.offsets.target=E(E({},t.offsets.target),u(c))}),t}function $$(t){let n=t.placement,e=n.split(" ")[0],i=n.split(" ")[1];if(i){let{host:r,target:o}=t.offsets,s=["bottom","top"].indexOf(e)!==-1,a=s?"left":"top",l=s?"width":"height",c={start:{[a]:r[a]},end:{[a]:(r[a]??0)+r[l]-o[l]}};t.offsets.target=W(E({},o),{[a]:a===i?c.start[a]:c.end[a]})}return t}var Qb=class{position(n,e){return this.offset(n,e)}offset(n,e){return I1(e,n)}positionElements(n,e,i,r,o){let s=[H$,$$,U$,j$],a=C1[i],l=B$(e,n,a,o);if(l)return s.reduce((c,u)=>u(c),l)}},Y$=new Qb;function z$(t,n,e,i,r,o){let s=Y$.positionElements(t,n,e,i,r);if(!s)return;let a=O$(s);b1(n,{"will-change":"transform",top:"0px",left:"0px",transform:`translate3d(${a.left}px, ${a.top}px, 0px)`},o),s.instance.arrow&&b1(s.instance.arrow,s.offsets.arrow,o),V$(s,o)}var nn=(()=>{class t{constructor(e,i,r){this.update$$=new X,this.positionElements=new Map,this.isDisabled=!1,xs(r)&&e.runOutsideAngular(()=>{this.triggerEvent$=Ea(ui(window,"scroll",{passive:!0}),ui(window,"resize",{passive:!0}),Q(0,wa),this.update$$),this.triggerEvent$.subscribe(()=>{this.isDisabled||this.positionElements.forEach(o=>{z$(im(o.target),im(o.element),o.attachment,o.appendToBody,this.options,i.createRenderer(null,null))})})})}position(e){this.addPositionElement(e)}get event$(){return this.triggerEvent$}disable(){this.isDisabled=!0}enable(){this.isDisabled=!1}addPositionElement(e){this.positionElements.set(im(e.element),e)}calcPosition(){this.update$$.next(null)}deletePositionElement(e){this.positionElements.delete(im(e))}setOptions(e){this.options=e}static{this.\u0275fac=function(i){return new(i||t)(F(Me),F(xn),F(qn))}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function im(t){return typeof t=="string"?document.querySelector(t):t instanceof $?t.nativeElement:t??null}var jl=class extends Pe{constructor(n,e,i){super(n),e.pipe(cs(Kg)).pipe(yc((s,a)=>a?i(s,a):s,n)).subscribe(s=>this.next(s))}},Hl=class t extends ne{constructor(n,e,i){super(),this._dispatcher=n,this._reducer=e,this.source=i}select(n){return(this.source?.pipe(G(n))||new ne().pipe(G(n))).pipe(Vr())}lift(n){let e=new t(this._dispatcher,this._reducer,this);return e.operator=n,e}dispatch(n){this._dispatcher.next(n)}next(n){this._dispatcher.next(n)}error(n){this._dispatcher.error(n)}complete(){}};function W$(t,n){t&1&&(d(0,"td"),v(1,"\xA0\xA0\xA0"),h())}function G$(t,n){if(t&1){let e=N();d(0,"td")(1,"a",1),D("click",function(){C(e);let r=p();return w(r.changeMinutes(r.minuteStep))}),A(2,"span",2),h()()}if(t&2){let e=p();f(),j("disabled",!e.canIncrementMinutes||!e.isEditable)}}function q$(t,n){t&1&&(d(0,"td"),v(1,"\xA0"),h())}function Q$(t,n){if(t&1){let e=N();d(0,"td")(1,"a",1),D("click",function(){C(e);let r=p();return w(r.changeSeconds(r.secondsStep))}),A(2,"span",2),h()()}if(t&2){let e=p();f(),j("disabled",!e.canIncrementSeconds||!e.isEditable)}}function Z$(t,n){t&1&&(d(0,"td"),v(1,"\xA0\xA0\xA0"),h())}function K$(t,n){t&1&&A(0,"td")}function J$(t,n){t&1&&(d(0,"td"),v(1,"\xA0:\xA0"),h())}function X$(t,n){if(t&1){let e=N();d(0,"td",4)(1,"input",5),D("wheel",function(r){C(e);let o=p();return o.prevDef(r),w(o.changeMinutes(o.minuteStep*o.wheelSign(r),"wheel"))})("keydown.ArrowUp",function(){C(e);let r=p();return w(r.changeMinutes(r.minuteStep,"key"))})("keydown.ArrowDown",function(){C(e);let r=p();return w(r.changeMinutes(-r.minuteStep,"key"))})("change",function(r){C(e);let o=p();return w(o.updateMinutes(r.target))}),h()()}if(t&2){let e=p();j("has-error",e.invalidMinutes),f(),j("is-invalid",e.invalidMinutes),g("placeholder",e.minutesPlaceholder)("readonly",e.readonlyInput)("disabled",e.disabled)("value",e.minutes),J("aria-label",e.labelMinutes)}}function eY(t,n){t&1&&(d(0,"td"),v(1,"\xA0:\xA0"),h())}function tY(t,n){if(t&1){let e=N();d(0,"td",4)(1,"input",5),D("wheel",function(r){C(e);let o=p();return o.prevDef(r),w(o.changeSeconds(o.secondsStep*o.wheelSign(r),"wheel"))})("keydown.ArrowUp",function(){C(e);let r=p();return w(r.changeSeconds(r.secondsStep,"key"))})("keydown.ArrowDown",function(){C(e);let r=p();return w(r.changeSeconds(-r.secondsStep,"key"))})("change",function(r){C(e);let o=p();return w(o.updateSeconds(r.target))}),h()()}if(t&2){let e=p();j("has-error",e.invalidSeconds),f(),j("is-invalid",e.invalidSeconds),g("placeholder",e.secondsPlaceholder)("readonly",e.readonlyInput)("disabled",e.disabled)("value",e.seconds),J("aria-label",e.labelSeconds)}}function nY(t,n){t&1&&(d(0,"td"),v(1,"\xA0\xA0\xA0"),h())}function iY(t,n){if(t&1){let e=N();d(0,"td")(1,"button",8),D("click",function(){C(e);let r=p();return w(r.toggleMeridian())}),v(2),h()()}if(t&2){let e=p();f(),j("disabled",!e.isEditable||!e.canToggleMeridian),g("disabled",!e.isEditable||!e.canToggleMeridian),f(),Te("",e.meridian," ")}}function rY(t,n){t&1&&(d(0,"td"),v(1,"\xA0\xA0\xA0"),h())}function oY(t,n){if(t&1){let e=N();d(0,"td")(1,"a",1),D("click",function(){C(e);let r=p();return w(r.changeMinutes(-r.minuteStep))}),A(2,"span",7),h()()}if(t&2){let e=p();f(),j("disabled",!e.canDecrementMinutes||!e.isEditable)}}function sY(t,n){t&1&&(d(0,"td"),v(1,"\xA0"),h())}function aY(t,n){if(t&1){let e=N();d(0,"td")(1,"a",1),D("click",function(){C(e);let r=p();return w(r.changeSeconds(-r.secondsStep))}),A(2,"span",7),h()()}if(t&2){let e=p();f(),j("disabled",!e.canDecrementSeconds||!e.isEditable)}}function lY(t,n){t&1&&(d(0,"td"),v(1,"\xA0\xA0\xA0"),h())}function cY(t,n){t&1&&A(0,"td")}var Go=(()=>{class t{static{this.WRITE_VALUE="[timepicker] write value from ng model"}static{this.CHANGE_HOURS="[timepicker] change hours"}static{this.CHANGE_MINUTES="[timepicker] change minutes"}static{this.CHANGE_SECONDS="[timepicker] change seconds"}static{this.SET_TIME_UNIT="[timepicker] set time unit"}static{this.UPDATE_CONTROLS="[timepicker] update controls"}writeValue(e){return{type:t.WRITE_VALUE,payload:e}}changeHours(e){return{type:t.CHANGE_HOURS,payload:e}}changeMinutes(e){return{type:t.CHANGE_MINUTES,payload:e}}changeSeconds(e){return{type:t.CHANGE_SECONDS,payload:e}}setTime(e){return{type:t.SET_TIME_UNIT,payload:e}}updateControls(e){return{type:t.UPDATE_CONTROLS,payload:e}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),uY=10,dY=24,N1=12,hY=60,fY=60;function iC(t){return!t||t instanceof Date&&isNaN(t.getHours())?!1:typeof t=="string"?iC(new Date(t)):!0}function tC(t,n){return!(t.min&&nt.max)}function Bl(t){return typeof t>"u"?NaN:typeof t=="number"?t:parseInt(t,uY)}function L1(t,n=!1){let e=Bl(t);return isNaN(e)||e<0||e>(n?N1:dY)?NaN:e}function F1(t){let n=Bl(t);return isNaN(n)||n<0||n>hY?NaN:n}function V1(t){let n=Bl(t);return isNaN(n)||n<0||n>fY?NaN:n}function k1(t){return typeof t=="string"?new Date(t):t}function Ai(t,n){if(!t)return Ai(sm(new Date,0,0,0),n);if(!n)return t;let e=t.getHours(),i=t.getMinutes(),r=t.getSeconds();return n.hour&&(e=e+Bl(n.hour)),n.minute&&(i=i+Bl(n.minute)),n.seconds&&(r=r+Bl(n.seconds)),sm(t,e,i,r)}function j1(t,n){let e=L1(n.hour),i=F1(n.minute),r=V1(n.seconds)||0;return n.isPM&&e!==12&&(e+=N1),t?isNaN(e)||isNaN(i)?t:sm(t,e,i,r):!isNaN(e)&&!isNaN(i)?sm(new Date,e,i,r):t}function sm(t,n,e,i){let r=new Date(t.getFullYear(),t.getMonth(),t.getDate(),n,e,i,t.getMilliseconds());return r.setFullYear(t.getFullYear()),r.setMonth(t.getMonth()),r.setDate(t.getDate()),r}function nC(t){let n=t.toString();return n.length>1?n:`0${n}`}function H1(t,n){return!isNaN(L1(t,n))}function B1(t){return!isNaN(F1(t))}function U1(t){return!isNaN(V1(t))}function pY(t,n,e){let i=j1(new Date,t);return!(!i||n&&i>n||e&&i0&&!n.canIncrementHours||t.step<0&&!n.canDecrementHours)}function _Y(t,n){return!(!t.step||t.step>0&&!n.canIncrementMinutes||t.step<0&&!n.canDecrementMinutes)}function yY(t,n){return!(!t.step||t.step>0&&!n.canIncrementSeconds||t.step<0&&!n.canDecrementSeconds)}function R1(t){let{hourStep:n,minuteStep:e,secondsStep:i,readonlyInput:r,disabled:o,mousewheel:s,arrowkeys:a,showSpinners:l,showMeridian:c,showSeconds:u,meridians:m,min:b,max:_}=t;return{hourStep:n,minuteStep:e,secondsStep:i,readonlyInput:r,disabled:o,mousewheel:s,arrowkeys:a,showSpinners:l,showMeridian:c,showSeconds:u,meridians:m,min:b,max:_}}function vY(t,n){let{min:r,max:o,hourStep:s,minuteStep:a,secondsStep:l,showSeconds:c}=n,u={canIncrementHours:!0,canIncrementMinutes:!0,canIncrementSeconds:!0,canDecrementHours:!0,canDecrementMinutes:!0,canDecrementSeconds:!0,canToggleMeridian:!0};if(!t)return u;if(o){let m=Ai(t,{hour:s});if(u.canIncrementHours=o>m&&t.getHours()+s<24,!u.canIncrementHours){let b=Ai(t,{minute:a});u.canIncrementMinutes=c?o>b:o>=b}if(!u.canIncrementMinutes){let b=Ai(t,{seconds:l});u.canIncrementSeconds=o>=b}t.getHours()<12&&(u.canToggleMeridian=Ai(t,{hour:12})=12&&(u.canToggleMeridian=Ai(t,{hour:-12})>r)}return u}var $1=(()=>{class t{constructor(){this.hourStep=1,this.minuteStep=5,this.secondsStep=10,this.showMeridian=!0,this.meridians=["AM","PM"],this.readonlyInput=!1,this.disabled=!1,this.allowEmptyTime=!1,this.mousewheel=!0,this.arrowkeys=!0,this.showSpinners=!0,this.showSeconds=!1,this.showMinutes=!0,this.hoursPlaceholder="HH",this.minutesPlaceholder="MM",this.secondsPlaceholder="SS",this.ariaLabelHours="hours",this.ariaLabelMinutes="minutes",this.ariaLabelSeconds="seconds"}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),Y1={value:void 0,config:new $1,controls:{canIncrementHours:!0,canIncrementMinutes:!0,canIncrementSeconds:!0,canDecrementHours:!0,canDecrementMinutes:!0,canDecrementSeconds:!0,canToggleMeridian:!0}};function O1(t=Y1,n){switch(n.type){case Go.WRITE_VALUE:return Object.assign({},t,{value:n.payload});case Go.CHANGE_HOURS:{if(!om(t.config,n.payload)||!gY(n.payload,t.controls))return t;let e=Ai(t.value,{hour:n.payload.step});return(t.config.max||t.config.min)&&!tC(t.config,e)?t:Object.assign({},t,{value:e})}case Go.CHANGE_MINUTES:{if(!om(t.config,n.payload)||!_Y(n.payload,t.controls))return t;let e=Ai(t.value,{minute:n.payload.step});return(t.config.max||t.config.min)&&!tC(t.config,e)?t:Object.assign({},t,{value:e})}case Go.CHANGE_SECONDS:{if(!om(t.config,n.payload)||!yY(n.payload,t.controls))return t;let e=Ai(t.value,{seconds:n.payload.step});return(t.config.max||t.config.min)&&!tC(t.config,e)?t:Object.assign({},t,{value:e})}case Go.SET_TIME_UNIT:{if(!om(t.config))return t;let e=j1(t.value,n.payload);return Object.assign({},t,{value:e})}case Go.UPDATE_CONTROLS:{let e=vY(t.value,n.payload),i={value:t.value,config:n.payload,controls:e};return t.config.showMeridian!==i.config.showMeridian&&t.value&&(i.value=new Date(t.value)),Object.assign({},t,i)}default:return t}}var P1=(()=>{class t extends Hl{constructor(){let e=new Pe({type:"[mini-ngrx] dispatcher init"}),i=new jl(Y1,e,O1);super(e,O1,i)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),bY={provide:It,useExisting:He(()=>Ul),multi:!0},Ul=(()=>{class t{constructor(e,i,r,o){this._cd=i,this._store=r,this._timepickerActions=o,this.hourStep=1,this.minuteStep=5,this.secondsStep=10,this.readonlyInput=!1,this.disabled=!1,this.mousewheel=!0,this.arrowkeys=!0,this.showSpinners=!0,this.showMeridian=!0,this.showMinutes=!0,this.showSeconds=!1,this.meridians=["AM","PM"],this.hoursPlaceholder="HH",this.minutesPlaceholder="MM",this.secondsPlaceholder="SS",this.isValid=new P,this.meridianChange=new P,this.hours="",this.minutes="",this.seconds="",this.meridian="",this.invalidHours=!1,this.invalidMinutes=!1,this.invalidSeconds=!1,this.labelHours="hours",this.labelMinutes="minutes",this.labelSeconds="seconds",this.canIncrementHours=!0,this.canIncrementMinutes=!0,this.canIncrementSeconds=!0,this.canDecrementHours=!0,this.canDecrementMinutes=!0,this.canDecrementSeconds=!0,this.canToggleMeridian=!0,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.config=e,Object.assign(this,this.config),this.timepickerSub=r.select(s=>s.value).subscribe(s=>{this._renderTime(s),this.onChange(s),this._store.dispatch(this._timepickerActions.updateControls(R1(this)))}),r.select(s=>s.controls).subscribe(s=>{let a=A1(this.hours,this.minutes,this.seconds,this.isPM()),l=this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||a;this.isValid.emit(l),Object.assign(this,s),i.markForCheck()})}get isSpinnersVisible(){return this.showSpinners&&!this.readonlyInput}get isEditable(){return!(this.readonlyInput||this.disabled)}resetValidation(){this.invalidHours=!1,this.invalidMinutes=!1,this.invalidSeconds=!1}isPM(){return this.showMeridian&&this.meridian===this.meridians[1]}prevDef(e){e.preventDefault()}wheelSign(e){return Math.sign(e.deltaY||0)*-1}ngOnChanges(){this._store.dispatch(this._timepickerActions.updateControls(R1(this)))}changeHours(e,i=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeHours({step:e,source:i}))}changeMinutes(e,i=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeMinutes({step:e,source:i}))}changeSeconds(e,i=""){this.resetValidation(),this._store.dispatch(this._timepickerActions.changeSeconds({step:e,source:i}))}updateHours(e){this.resetValidation(),this.hours=e.value;let i=H1(this.hours,this.isPM())&&this.isValidLimit();if(!(this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||i)){this.invalidHours=!0,this.isValid.emit(!1),this.onChange(null);return}this._updateTime()}updateMinutes(e){this.resetValidation(),this.minutes=e.value;let i=B1(this.minutes)&&this.isValidLimit();if(!(this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||i)){this.invalidMinutes=!0,this.isValid.emit(!1),this.onChange(null);return}this._updateTime()}updateSeconds(e){this.resetValidation(),this.seconds=e.value;let i=U1(this.seconds)&&this.isValidLimit();if(!(this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||i)){this.invalidSeconds=!0,this.isValid.emit(!1),this.onChange(null);return}this._updateTime()}isValidLimit(){return pY({hour:this.hours,minute:this.minutes,seconds:this.seconds,isPM:this.isPM()},this.max,this.min)}isOneOfDatesIsEmpty(){return mY(this.hours,this.minutes,this.seconds)}_updateTime(){let e=this.showSeconds?this.seconds:void 0,i=this.showMinutes?this.minutes:void 0,r=A1(this.hours,i,e,this.isPM());if(!(this.config.allowEmptyTime&&this.isOneOfDatesIsEmpty()||r)){this.isValid.emit(!1),this.onChange(null);return}this._store.dispatch(this._timepickerActions.setTime({hour:this.hours,minute:this.minutes,seconds:this.seconds,isPM:this.isPM()}))}toggleMeridian(){if(!this.showMeridian||!this.isEditable)return;this._store.dispatch(this._timepickerActions.changeHours({step:12,source:""}))}writeValue(e){iC(e)?(this.resetValidation(),this._store.dispatch(this._timepickerActions.writeValue(k1(e)))):e==null&&this._store.dispatch(this._timepickerActions.writeValue())}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this.disabled=e,this._cd.markForCheck()}ngOnDestroy(){this.timepickerSub?.unsubscribe()}_renderTime(e){if(!e||!iC(e)){this.hours="",this.minutes="",this.seconds="",this.meridian=this.meridians[0],this.meridianChange.emit(this.meridian);return}let i=k1(e);if(!i)return;let r=12,o=i.getHours();this.showMeridian&&(this.meridian=this.meridians[o>=r?1:0],this.meridianChange.emit(this.meridian),o=o%r,o===0&&(o=r)),this.hours=nC(o),this.minutes=nC(i.getMinutes()),this.seconds=nC(i.getUTCSeconds())}static{this.\u0275fac=function(i){return new(i||t)(y($1),y(it),y(P1),y(Go))}}static{this.\u0275cmp=L({type:t,selectors:[["timepicker"]],inputs:{hourStep:"hourStep",minuteStep:"minuteStep",secondsStep:"secondsStep",readonlyInput:"readonlyInput",disabled:"disabled",mousewheel:"mousewheel",arrowkeys:"arrowkeys",showSpinners:"showSpinners",showMeridian:"showMeridian",showMinutes:"showMinutes",showSeconds:"showSeconds",meridians:"meridians",min:"min",max:"max",hoursPlaceholder:"hoursPlaceholder",minutesPlaceholder:"minutesPlaceholder",secondsPlaceholder:"secondsPlaceholder"},outputs:{isValid:"isValid",meridianChange:"meridianChange"},features:[ce([bY,P1,Go]),xe],decls:31,vars:33,consts:[[1,"text-center",3,"hidden"],["href","javascript:void(0);",1,"btn","btn-link",3,"click"],[1,"bs-chevron","bs-chevron-up"],[4,"ngIf"],[1,"form-group","mb-3"],["type","text","maxlength","2",1,"form-control","text-center","bs-timepicker-field",3,"wheel","keydown.ArrowUp","keydown.ArrowDown","change","placeholder","readonly","disabled","value"],["class","form-group mb-3",3,"has-error",4,"ngIf"],[1,"bs-chevron","bs-chevron-down"],["type","button",1,"btn","btn-default","text-center",3,"click","disabled"]],template:function(i,r){i&1&&(d(0,"table")(1,"tbody")(2,"tr",0)(3,"td")(4,"a",1),D("click",function(){return r.changeHours(r.hourStep)}),A(5,"span",2),h()(),T(6,W$,2,0,"td",3)(7,G$,3,2,"td",3)(8,q$,2,0,"td",3)(9,Q$,3,2,"td",3)(10,Z$,2,0,"td",3)(11,K$,1,0,"td",3),h(),d(12,"tr")(13,"td",4)(14,"input",5),D("wheel",function(s){return r.prevDef(s),r.changeHours(r.hourStep*r.wheelSign(s),"wheel")})("keydown.ArrowUp",function(){return r.changeHours(r.hourStep,"key")})("keydown.ArrowDown",function(){return r.changeHours(-r.hourStep,"key")})("change",function(s){return r.updateHours(s.target)}),h()(),T(15,J$,2,0,"td",3)(16,X$,2,9,"td",6)(17,eY,2,0,"td",3)(18,tY,2,9,"td",6)(19,nY,2,0,"td",3)(20,iY,3,4,"td",3),h(),d(21,"tr",0)(22,"td")(23,"a",1),D("click",function(){return r.changeHours(-r.hourStep)}),A(24,"span",7),h()(),T(25,rY,2,0,"td",3)(26,oY,3,2,"td",3)(27,sY,2,0,"td",3)(28,aY,3,2,"td",3)(29,lY,2,0,"td",3)(30,cY,1,0,"td",3),h()()()),i&2&&(f(2),g("hidden",!r.showSpinners),f(2),j("disabled",!r.canIncrementHours||!r.isEditable),f(2),g("ngIf",r.showMinutes),f(),g("ngIf",r.showMinutes),f(),g("ngIf",r.showSeconds),f(),g("ngIf",r.showSeconds),f(),g("ngIf",r.showMeridian),f(),g("ngIf",r.showMeridian),f(2),j("has-error",r.invalidHours),f(),j("is-invalid",r.invalidHours),g("placeholder",r.hoursPlaceholder)("readonly",r.readonlyInput)("disabled",r.disabled)("value",r.hours),J("aria-label",r.labelHours),f(),g("ngIf",r.showMinutes),f(),g("ngIf",r.showMinutes),f(),g("ngIf",r.showSeconds),f(),g("ngIf",r.showSeconds),f(),g("ngIf",r.showMeridian),f(),g("ngIf",r.showMeridian),f(),g("hidden",!r.showSpinners),f(2),j("disabled",!r.canDecrementHours||!r.isEditable),f(2),g("ngIf",r.showMinutes),f(),g("ngIf",r.showMinutes),f(),g("ngIf",r.showSeconds),f(),g("ngIf",r.showSeconds),f(),g("ngIf",r.showMeridian),f(),g("ngIf",r.showMeridian))},dependencies:[De],styles:[`.bs-chevron{border-style:solid;display:block;width:9px;height:9px;position:relative;border-width:3px 0px 0 3px}.bs-chevron-up{-webkit-transform:rotate(45deg);transform:rotate(45deg);top:2px}.bs-chevron-down{-webkit-transform:rotate(-135deg);transform:rotate(-135deg);top:-2px}.bs-timepicker-field{width:65px;padding:.375rem .55rem} -`],encapsulation:2,changeDetection:0})}}return t})(),$l=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({})}}return t})();var ia=class{constructor(n,e,i){this.nodes=n,this.viewRef=e,this.componentRef=i}},rC=class{constructor(n,e,i,r,o,s,a,l,c){this._viewContainerRef=n,this._renderer=e,this._elementRef=i,this._injector=r,this._componentFactoryResolver=o,this._ngZone=s,this._applicationRef=a,this._posService=l,this._document=c,this.onBeforeShow=new P,this.onShown=new P,this.onBeforeHide=new P,this.onHidden=new P,this._providers=[],this._isHiding=!1,this.containerDefaultSelector="body",this._listenOpts={},this._globalListener=Function.prototype}get isShown(){return this._isHiding?!1:!!this._componentRef}attach(n){return this._componentFactory=this._componentFactoryResolver.resolveComponentFactory(n),this}to(n){return this.container=n||this.container,this}position(n){return n?(this.attachment=n.attachment||this.attachment,this._elementRef=n.target||this._elementRef,this):this}provide(n){return this._providers.push(n),this}show(n={}){if(this._subscribePositioning(),this._innerComponent=void 0,!this._componentRef){this.onBeforeShow.emit(),this._contentRef=this._getContentRef(n.content,n.context,n.initialState);let e=kt.create({providers:this._providers,parent:this._injector});if(!this._componentFactory)return;if(this._componentRef=this._componentFactory.create(e,this._contentRef.nodes),this._applicationRef.attachView(this._componentRef.hostView),this.instance=this._componentRef.instance,Object.assign(this._componentRef.instance,n),this.container instanceof $&&this.container.nativeElement.appendChild(this._componentRef.location.nativeElement),typeof this.container=="string"&&typeof this._document<"u"){let i=this._document.querySelector(this.container)||this._document.querySelector(this.containerDefaultSelector);if(!i)return;i.appendChild(this._componentRef.location.nativeElement)}!this.container&&this._elementRef&&this._elementRef.nativeElement.parentElement&&this._elementRef.nativeElement.parentElement.appendChild(this._componentRef.location.nativeElement),this._contentRef.componentRef&&(this._innerComponent=this._contentRef.componentRef.instance,this._contentRef.componentRef.changeDetectorRef.markForCheck(),this._contentRef.componentRef.changeDetectorRef.detectChanges()),this._componentRef.changeDetectorRef.markForCheck(),this._componentRef.changeDetectorRef.detectChanges(),this.onShown.emit(n.id?{id:n.id}:this._componentRef.instance)}return this._registerOutsideClick(),this._componentRef}hide(n){if(!this._componentRef)return this;this._posService.deletePositionElement(this._componentRef.location),this.onBeforeHide.emit(this._componentRef.instance);let e=this._componentRef.location.nativeElement;return e.parentNode?.removeChild(e),this._contentRef?.componentRef?.destroy(),this._viewContainerRef&&this._contentRef?.viewRef&&this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._contentRef.viewRef)),this._contentRef?.viewRef?.destroy(),this._componentRef?.destroy(),this._contentRef=void 0,this._componentRef=void 0,this._removeGlobalListener(),this.onHidden.emit(n?{id:n}:null),this}toggle(){if(this.isShown){this.hide();return}this.show()}dispose(){this.isShown&&this.hide(),this._unsubscribePositioning(),this._unregisterListenersFn&&this._unregisterListenersFn()}listen(n){this.triggers=n.triggers||this.triggers,this._listenOpts.outsideClick=n.outsideClick,this._listenOpts.outsideEsc=n.outsideEsc,n.target=n.target||this._elementRef?.nativeElement;let e=this._listenOpts.hide=()=>n.hide?n.hide():void this.hide(),i=this._listenOpts.show=o=>{n.show?n.show(o):this.show(o),o()},r=o=>{this.isShown?e():i(o)};return this._renderer&&(this._unregisterListenersFn=u1(this._renderer,{target:n.target,triggers:n.triggers,show:i,hide:e,toggle:r})),this}_removeGlobalListener(){this._globalListener&&(this._globalListener(),this._globalListener=Function.prototype)}attachInline(n,e){return n&&e&&(this._inlineViewRef=n.createEmbeddedView(e)),this}_registerOutsideClick(){if(!this._componentRef||!this._componentRef.location)return;let n=Function.prototype,e=Function.prototype;if(this._listenOpts.outsideClick){let i=this._componentRef.location.nativeElement;setTimeout(()=>{this._renderer&&this._elementRef&&(n=d1(this._renderer,{targets:[i,this._elementRef.nativeElement],outsideClick:this._listenOpts.outsideClick,hide:()=>this._listenOpts.hide&&this._listenOpts.hide()}))})}if(this._listenOpts.outsideEsc&&this._renderer&&this._elementRef){let i=this._componentRef.location.nativeElement;e=h1(this._renderer,{targets:[i,this._elementRef.nativeElement],outsideEsc:this._listenOpts.outsideEsc,hide:()=>this._listenOpts.hide&&this._listenOpts.hide()})}this._globalListener=()=>{n(),e()}}getInnerComponent(){return this._innerComponent}_subscribePositioning(){this._zoneSubscription||!this.attachment||(this.onShown.subscribe(()=>{this._posService.position({element:this._componentRef?.location,target:this._elementRef,attachment:this.attachment,appendToBody:this.container==="body"})}),this._zoneSubscription=this._ngZone.onStable.subscribe(()=>{this._componentRef&&this._posService.calcPosition()}))}_unsubscribePositioning(){this._zoneSubscription&&(this._zoneSubscription.unsubscribe(),this._zoneSubscription=void 0)}_getContentRef(n,e,i){if(!n)return new ia([]);if(n instanceof St){if(this._viewContainerRef){let s=this._viewContainerRef.createEmbeddedView(n,e);return s.markForCheck(),new ia([s.rootNodes],s)}let o=n.createEmbeddedView({});return this._applicationRef.attachView(o),new ia([o.rootNodes],o)}if(typeof n=="function"){let o=this._componentFactoryResolver.resolveComponentFactory(n),s=kt.create({providers:this._providers,parent:this._injector}),a=o.create(s);return Object.assign(a.instance,i),this._applicationRef.attachView(a.hostView),new ia([[a.location.nativeElement]],a.hostView,a)}let r=this._renderer?[this._renderer.createText(`${n}`)]:[];return new ia([r])}},Qt=(()=>{class t{constructor(e,i,r,o,s,a){this._componentFactoryResolver=e,this._ngZone=i,this._injector=r,this._posService=o,this._applicationRef=s,this._document=a}createLoader(e,i,r){return new rC(i,r,e,this._injector,this._componentFactoryResolver,this._ngZone,this._applicationRef,this._posService,this._document)}static{this.\u0275fac=function(i){return new(i||t)(F(So),F(Me),F(kt),F(nn),F(kn),F(Ie))}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var wY=["*"],oC=(()=>{class t{constructor(){this.adaptivePosition=!0,this.placement="top",this.triggers="hover focus",this.delay=0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),DY=(()=>{class t{get _bsVersions(){return Wo()}constructor(e){Object.assign(this,e)}ngAfterViewInit(){this.classMap={in:!1,fade:!1},this.placement&&(this._bsVersions.isBs5&&(this.placement=Ju[this.placement]),this.classMap[this.placement]=!0),this.classMap[`tooltip-${this.placement}`]=!0,this.classMap.in=!0,this.animation&&(this.classMap.fade=!0),this.containerClass&&(this.classMap[this.containerClass]=!0)}static{this.\u0275fac=function(i){return new(i||t)(y(oC))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-tooltip-container"]],hostAttrs:["role","tooltip"],hostVars:3,hostBindings:function(i,r){i&2&&(J("id",r.id),Jt("show tooltip in tooltip-"+r.placement+" bs-tooltip-"+r.placement+" "+r.placement+" "+r.containerClass))},ngContentSelectors:wY,decls:3,vars:0,consts:[[1,"tooltip-arrow","arrow"],[1,"tooltip-inner"]],template:function(i,r){i&1&&(Pn(),A(0,"div",0),d(1,"div",1),Cn(2),h())},styles:[".tooltip[_nghost-%COMP%]{display:block;pointer-events:none;position:absolute}.tooltip[_nghost-%COMP%] .tooltip-arrow[_ngcontent-%COMP%]{position:absolute}"],changeDetection:0})}}return t})(),MY=0,z1=(()=>{class t{get isOpen(){return this._tooltip.isShown}set isOpen(e){e?this.show():this.hide()}set htmlContent(e){Bn("tooltipHtml was deprecated, please use `tooltip` instead"),this.tooltip=e}set _placement(e){Bn("tooltipPlacement was deprecated, please use `placement` instead"),this.placement=e}set _isOpen(e){Bn("tooltipIsOpen was deprecated, please use `isOpen` instead"),this.isOpen=e}get _isOpen(){return Bn("tooltipIsOpen was deprecated, please use `isOpen` instead"),this.isOpen}set _enable(e){Bn("tooltipEnable was deprecated, please use `isDisabled` instead"),this.isDisabled=!e}get _enable(){return Bn("tooltipEnable was deprecated, please use `isDisabled` instead"),this.isDisabled}set _appendToBody(e){Bn('tooltipAppendToBody was deprecated, please use `container="body"` instead'),this.container=e?"body":this.container}get _appendToBody(){return Bn('tooltipAppendToBody was deprecated, please use `container="body"` instead'),this.container==="body"}set _popupClass(e){Bn("tooltipClass deprecated")}set _tooltipContext(e){Bn("tooltipContext deprecated")}set _tooltipPopupDelay(e){Bn("tooltipPopupDelay is deprecated, use `delay` instead"),this.delay=e}get _tooltipTrigger(){return Bn("tooltipTrigger was deprecated, please use `triggers` instead"),this.triggers}set _tooltipTrigger(e){Bn("tooltipTrigger was deprecated, please use `triggers` instead"),this.triggers=(e||"").toString()}constructor(e,i,r,o,s,a){this._elementRef=o,this._renderer=s,this._positionService=a,this.tooltipId=MY++,this.adaptivePosition=!0,this.tooltipChange=new P,this.placement="top",this.triggers="hover focus",this.containerClass="",this.isDisabled=!1,this.delay=0,this.tooltipAnimation=!0,this.tooltipFadeDuration=150,this.tooltipStateChanged=new P,this._tooltip=i.createLoader(this._elementRef,e,this._renderer).provide({provide:oC,useValue:r}),Object.assign(this,r),this.onShown=this._tooltip.onShown,this.onHidden=this._tooltip.onHidden}ngOnInit(){this._tooltip.listen({triggers:this.triggers,show:()=>this.show()}),this.tooltipChange.subscribe(e=>{e||this._tooltip.hide()}),this.onShown.subscribe(()=>{this.setAriaDescribedBy()}),this.onHidden.subscribe(()=>{this.setAriaDescribedBy()})}setAriaDescribedBy(){this._ariaDescribedby=this.isOpen?`tooltip-${this.tooltipId}`:void 0,this._ariaDescribedby?this._renderer.setAttribute(this._elementRef.nativeElement,"aria-describedby",this._ariaDescribedby):this._renderer.removeAttribute(this._elementRef.nativeElement,"aria-describedby")}toggle(){if(this.isOpen)return this.hide();this.show()}show(){if(this._positionService.setOptions({modifiers:{flip:{enabled:this.adaptivePosition},preventOverflow:{enabled:this.adaptivePosition,boundariesElement:this.boundariesElement||"scrollParent"}}}),this.isOpen||this.isDisabled||this._delayTimeoutId||!this.tooltip)return;let e=()=>{this._delayTimeoutId&&(this._delayTimeoutId=void 0),this._tooltip.attach(DY).to(this.container).position({attachment:this.placement}).show({content:this.tooltip,placement:this.placement,containerClass:this.containerClass,id:`tooltip-${this.tooltipId}`})},i=()=>{this._tooltipCancelShowFn&&this._tooltipCancelShowFn()};this.delay?(this._delaySubscription&&this._delaySubscription.unsubscribe(),this._delaySubscription=us(this.delay).subscribe(()=>{e(),i()}),this.triggers&&Wb(this.triggers).forEach(r=>{r.close&&(this._tooltipCancelShowFn=this._renderer.listen(this._elementRef.nativeElement,r.close,()=>{this._delaySubscription?.unsubscribe(),i()}))})):e()}hide(){this._delayTimeoutId&&(clearTimeout(this._delayTimeoutId),this._delayTimeoutId=void 0),this._tooltip.isShown&&(this._tooltip.instance?.classMap&&(this._tooltip.instance.classMap.in=!1),setTimeout(()=>{this._tooltip.hide()},this.tooltipFadeDuration))}ngOnDestroy(){this._tooltip.dispose(),this.tooltipChange.unsubscribe(),this._delaySubscription&&this._delaySubscription.unsubscribe(),this.onShown.unsubscribe(),this.onHidden.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(y(pt),y(Qt),y(oC),y($),y(ke),y(nn))}}static{this.\u0275dir=H({type:t,selectors:[["","tooltip",""],["","tooltipHtml",""]],inputs:{adaptivePosition:"adaptivePosition",tooltip:"tooltip",placement:"placement",triggers:"triggers",container:"container",containerClass:"containerClass",boundariesElement:"boundariesElement",isOpen:"isOpen",isDisabled:"isDisabled",delay:"delay",htmlContent:[0,"tooltipHtml","htmlContent"],_placement:[0,"tooltipPlacement","_placement"],_isOpen:[0,"tooltipIsOpen","_isOpen"],_enable:[0,"tooltipEnable","_enable"],_appendToBody:[0,"tooltipAppendToBody","_appendToBody"],tooltipAnimation:"tooltipAnimation",_popupClass:[0,"tooltipClass","_popupClass"],_tooltipContext:[0,"tooltipContext","_tooltipContext"],_tooltipPopupDelay:[0,"tooltipPopupDelay","_tooltipPopupDelay"],tooltipFadeDuration:"tooltipFadeDuration",_tooltipTrigger:[0,"tooltipTrigger","_tooltipTrigger"]},outputs:{tooltipChange:"tooltipChange",onShown:"onShown",onHidden:"onHidden",tooltipStateChanged:"tooltipStateChanged"},exportAs:["bs-tooltip"],features:[ce([Qt,nn])]})}}return Uw([m1(),$w("design:type",Object)],t.prototype,"tooltip",void 0),t})(),sC=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({imports:[ot]})}}return t})();function EY(t,n){if(t&1){let e=N();d(0,"button",2),D("click",function(){let r=C(e).$implicit,o=p();return w(o.selectFromRanges(r))}),v(1),h()}if(t&2){let e=n.$implicit,i=p();j("selected",i.compareRanges(e)),f(),Te(" ",e.label," ")}}function TY(t,n){if(t&1){let e=N();At(0),v(1," \u200B "),d(2,"button",2),D("click",function(){C(e);let r=p();return w(r.view("month"))}),d(3,"span"),v(4),h()(),Rt()}if(t&2){let e=p();f(2),g("disabled",e.isDisabled),f(2),U(e.calendar.monthTitle)}}var IY=[[["bs-datepicker-navigation-view"]],"*"],xY=["bs-datepicker-navigation-view","*"];function kY(t,n){t&1&&A(0,"bs-current-date",4)}function AY(t,n){t&1&&A(0,"bs-timepicker")}function RY(t,n){if(t&1){let e=N();d(0,"td",4),D("click",function(){let r=C(e).$implicit,o=p(2);return w(o.viewYear(r))})("mouseenter",function(){let r=C(e).$implicit,o=p(2);return w(o.hoverYear(r,!0))})("mouseleave",function(){let r=C(e).$implicit,o=p(2);return w(o.hoverYear(r,!1))}),d(1,"span"),v(2),h()()}if(t&2){let e=n.$implicit;j("disabled",e.isDisabled)("is-highlighted",e.isHovered),f(),j("selected",e.isSelected),f(),U(e.label)}}function OY(t,n){if(t&1&&(d(0,"tr"),T(1,RY,3,7,"td",3),h()),t&2){let e=n.$implicit;f(),g("ngForOf",e)}}function PY(t,n){if(t&1){let e=N();d(0,"td",4),D("click",function(){let r=C(e).$implicit,o=p(2);return w(o.viewMonth(r))})("mouseenter",function(){let r=C(e).$implicit,o=p(2);return w(o.hoverMonth(r,!0))})("mouseleave",function(){let r=C(e).$implicit,o=p(2);return w(o.hoverMonth(r,!1))}),d(1,"span"),v(2),h()()}if(t&2){let e=n.$implicit;j("disabled",e.isDisabled)("is-highlighted",e.isHovered),f(),j("selected",e.isSelected),f(),U(e.label)}}function NY(t,n){if(t&1&&(d(0,"tr"),T(1,PY,3,7,"td",3),h()),t&2){let e=n.$implicit;f(),g("ngForOf",e)}}var LY=["bsDatepickerDayDecorator",""];function FY(t,n){t&1&&A(0,"th")}function VY(t,n){if(t&1&&(d(0,"th",5),v(1),h()),t&2){let e=n.index,i=p();f(),Te("",i.calendar.weekdays[e]," ")}}function jY(t,n){if(t&1){let e=N();d(0,"span",11),D("click",function(){C(e);let r=p(2).$implicit,o=p();return w(o.selectWeek(r))}),v(1),h()}if(t&2){let e=p(2).index,i=p();f(),U(i.calendar.weekNumbers[e])}}function HY(t,n){if(t&1){let e=N();d(0,"span",12),D("click",function(){C(e);let r=p(2).$implicit,o=p();return w(o.selectWeek(r))})("mouseenter",function(){C(e);let r=p(2).$implicit,o=p();return w(o.weekHoverHandler(r,!0))})("mouseleave",function(){C(e);let r=p(2).$implicit,o=p();return w(o.weekHoverHandler(r,!1))}),v(1),h()}if(t&2){let e=p(2).index,i=p();f(),U(i.calendar.weekNumbers[e])}}function BY(t,n){if(t&1&&(d(0,"td",8),T(1,jY,2,1,"span",9)(2,HY,2,1,"span",10),h()),t&2){let e=p(2);j("active-week",e.isWeekHovered),f(),g("ngIf",e.isiOS),f(),g("ngIf",!e.isiOS)}}function UY(t,n){if(t&1){let e=N();d(0,"span",17),D("click",function(){C(e);let r=p().$implicit,o=p(2);return w(o.selectDay(r))})("mouseenter",function(){C(e);let r=p().$implicit,o=p(2);return w(o.hoverDay(r,!0))})("mouseleave",function(){C(e);let r=p().$implicit,o=p(2);return w(o.hoverDay(r,!1))}),v(1),h()}if(t&2){let e=p().$implicit;Dt("tooltip",e.tooltipText),g("day",e),f(),Te("",e.label," 3")}}function $Y(t,n){if(t&1){let e=N();d(0,"span",18),D("click",function(){C(e);let r=p().$implicit,o=p(2);return w(o.selectDay(r))})("mouseenter",function(){C(e);let r=p().$implicit,o=p(2);return w(o.hoverDay(r,!0))})("mouseleave",function(){C(e);let r=p().$implicit,o=p(2);return w(o.hoverDay(r,!1))}),v(1),h()}if(t&2){let e=p().$implicit;g("day",e),f(),Te("",e.label," 2")}}function YY(t,n){if(t&1){let e=N();d(0,"span",19),D("click",function(){C(e);let r=p().$implicit,o=p(2);return w(o.selectDay(r))}),v(1),h()}if(t&2){let e=p().$implicit;g("day",e),f(),Te("",e.label," 1")}}function zY(t,n){if(t&1&&(d(0,"td",13),T(1,UY,2,3,"span",14)(2,$Y,2,2,"span",15)(3,YY,2,2,"span",16),h()),t&2){let e=p(2);f(),g("ngIf",!e.isiOS&&e.isShowTooltip),f(),g("ngIf",!e.isiOS&&!e.isShowTooltip),f(),g("ngIf",e.isiOS)}}function WY(t,n){if(t&1&&(d(0,"tr"),T(1,BY,3,4,"td",6)(2,zY,4,3,"td",7),h()),t&2){let e=n.$implicit,i=p();f(),g("ngIf",i.options&&i.options.showWeekNumbers),f(),g("ngForOf",e.days)}}var K1=["startTP"];function GY(t,n){if(t&1){let e=N();d(0,"bs-days-calendar-view",13),te(1,"async"),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.dayHoverHandler(r))})("onHoverWeek",function(r){C(e);let o=p(3);return w(o.weekHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.daySelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)("isDisabled",i.isDatePickerDisabled)("options",pe(1,5,i.options$))}}function qY(t,n){if(t&1&&A(0,"timepicker",15,1),t&2){let e=p(4);g("disabled",e.isDatePickerDisabled)}}function QY(t,n){if(t&1&&(d(0,"div",14),A(1,"timepicker",15,0),T(3,qY,2,1,"timepicker",16),h()),t&2){let e=p(3);f(),g("disabled",e.isDatePickerDisabled),f(2),g("ngIf",e.isRangePicker)}}function ZY(t,n){if(t&1&&(At(0),d(1,"div",10),T(2,GY,2,7,"bs-days-calendar-view",11),te(3,"async"),h(),T(4,QY,4,2,"div",12),Rt()),t&2){let e=p(2);f(2),g("ngForOf",pe(3,2,e.daysCalendar$)),f(2),g("ngIf",e.withTimepicker)}}function KY(t,n){if(t&1){let e=N();d(0,"bs-month-calendar-view",18),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.monthHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.monthSelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function JY(t,n){if(t&1&&(d(0,"div",10),T(1,KY,1,3,"bs-month-calendar-view",17),te(2,"async"),h()),t&2){let e=p(2);f(),g("ngForOf",pe(2,1,e.monthsCalendar))}}function XY(t,n){if(t&1){let e=N();d(0,"bs-years-calendar-view",18),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.yearHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.yearSelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function e4(t,n){if(t&1&&(d(0,"div",10),T(1,XY,1,3,"bs-years-calendar-view",17),te(2,"async"),h()),t&2){let e=p(2);f(),g("ngForOf",pe(2,1,e.yearsCalendar))}}function t4(t,n){t&1&&(d(0,"div",19)(1,"button",20),v(2,"Apply"),h(),d(3,"button",21),v(4,"Cancel"),h()())}function n4(t,n){if(t&1){let e=N();d(0,"div",24)(1,"button",25),D("click",function(){C(e);let r=p(3);return w(r.setToday())}),v(2),h()()}if(t&2){let e=p(3);j("today-left",e.todayPos==="left")("today-right",e.todayPos==="right")("today-center",e.todayPos==="center"),f(2),U(e.todayBtnLbl)}}function i4(t,n){if(t&1){let e=N();d(0,"div",26)(1,"button",25),D("click",function(){C(e);let r=p(3);return w(r.clearDate())}),v(2),h()()}if(t&2){let e=p(3);j("clear-left",e.clearPos==="left")("clear-right",e.clearPos==="right")("clear-center",e.clearPos==="center"),f(2),U(e.clearBtnLbl)}}function r4(t,n){if(t&1&&(d(0,"div",19),T(1,n4,3,7,"div",22)(2,i4,3,7,"div",23),h()),t&2){let e=p(2);f(),g("ngIf",e.showTodayBtn),f(),g("ngIf",e.showClearBtn)}}function o4(t,n){if(t&1){let e=N();d(0,"div",27)(1,"bs-custom-date-view",28),D("onSelect",function(r){C(e);let o=p(2);return w(o.setRangeOnCalendar(r))}),h()()}if(t&2){let e=p(2);f(),g("selectedRange",e.chosenRange)("ranges",e.customRanges)("customRangeLabel",e.customRangeBtnLbl)}}function s4(t,n){if(t&1){let e=N();d(0,"div",3)(1,"div",4),D("@datepickerAnimation.done",function(){C(e);let r=p();return w(r.positionServiceEnable())}),d(2,"div",5),te(3,"async"),T(4,ZY,5,4,"ng-container",6)(5,JY,3,3,"div",7)(6,e4,3,3,"div",7),h(),T(7,t4,5,0,"div",8)(8,r4,3,2,"div",8),h(),T(9,o4,2,3,"div",9),h()}if(t&2){let e=p();g("ngClass",e.containerClass),f(),g("@datepickerAnimation",e.animationState),f(),g("ngSwitch",pe(3,9,e.viewMode)),f(2),g("ngSwitchCase","day"),f(),g("ngSwitchCase","month"),f(),g("ngSwitchCase","year"),f(),g("ngIf",!1),f(),g("ngIf",e.showTodayBtn||e.showClearBtn),f(),g("ngIf",e.customRanges&&e.customRanges.length>0)}}function a4(t,n){if(t&1){let e=N();d(0,"bs-days-calendar-view",13),te(1,"async"),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.dayHoverHandler(r))})("onHoverWeek",function(r){C(e);let o=p(3);return w(o.weekHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.daySelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)("isDisabled",i.isDatePickerDisabled)("options",pe(1,5,i.options$))}}function l4(t,n){if(t&1&&A(0,"timepicker",15,1),t&2){let e=p(4);g("disabled",e.isDatePickerDisabled)}}function c4(t,n){if(t&1&&(d(0,"div",14),A(1,"timepicker",15,0),T(3,l4,2,1,"timepicker",16),h()),t&2){let e=p(3);f(),g("disabled",e.isDatePickerDisabled),f(2),g("ngIf",e.isRangePicker)}}function u4(t,n){if(t&1&&(At(0),d(1,"div",10),T(2,a4,2,7,"bs-days-calendar-view",11),te(3,"async"),h(),T(4,c4,4,2,"div",12),Rt()),t&2){let e=p(2);f(2),g("ngForOf",pe(3,2,e.daysCalendar$)),f(2),g("ngIf",e.withTimepicker)}}function d4(t,n){if(t&1){let e=N();d(0,"bs-month-calendar-view",18),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.monthHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.monthSelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function h4(t,n){if(t&1&&(d(0,"div",10),T(1,d4,1,3,"bs-month-calendar-view",17),te(2,"async"),h()),t&2){let e=p(2);f(),g("ngForOf",pe(2,1,e.monthsCalendar))}}function f4(t,n){if(t&1){let e=N();d(0,"bs-years-calendar-view",18),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.yearHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.yearSelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function p4(t,n){if(t&1&&(d(0,"div",10),T(1,f4,1,3,"bs-years-calendar-view",17),te(2,"async"),h()),t&2){let e=p(2);f(),g("ngForOf",pe(2,1,e.yearsCalendar))}}function m4(t,n){t&1&&(d(0,"div",19)(1,"button",20),v(2,"Apply"),h(),d(3,"button",21),v(4,"Cancel"),h()())}function g4(t,n){if(t&1){let e=N();d(0,"div",24)(1,"button",25),D("click",function(){C(e);let r=p(3);return w(r.setToday())}),v(2),h()()}if(t&2){let e=p(3);j("today-left",e.todayPos==="left")("today-right",e.todayPos==="right")("today-center",e.todayPos==="center"),f(2),U(e.todayBtnLbl)}}function _4(t,n){if(t&1){let e=N();d(0,"div",26)(1,"button",25),D("click",function(){C(e);let r=p(3);return w(r.clearDate())}),v(2),h()()}if(t&2){let e=p(3);j("clear-left",e.clearPos==="left")("clear-right",e.clearPos==="right")("clear-center",e.clearPos==="center"),f(2),U(e.clearBtnLbl)}}function y4(t,n){if(t&1&&(d(0,"div",19),T(1,g4,3,7,"div",22)(2,_4,3,7,"div",23),h()),t&2){let e=p(2);f(),g("ngIf",e.showTodayBtn),f(),g("ngIf",e.showClearBtn)}}function v4(t,n){if(t&1){let e=N();d(0,"div",27)(1,"bs-custom-date-view",28),D("onSelect",function(r){C(e);let o=p(2);return w(o.setRangeOnCalendar(r))}),h()()}if(t&2){let e=p(2);f(),g("selectedRange",e.chosenRange)("ranges",e.customRanges)("customRangeLabel",e.customRangeBtnLbl)}}function b4(t,n){if(t&1){let e=N();d(0,"div",3)(1,"div",4),D("@datepickerAnimation.done",function(){C(e);let r=p();return w(r.positionServiceEnable())}),d(2,"div",5),te(3,"async"),T(4,u4,5,4,"ng-container",6)(5,h4,3,3,"div",7)(6,p4,3,3,"div",7),h(),T(7,m4,5,0,"div",8)(8,y4,3,2,"div",8),h(),T(9,v4,2,3,"div",9),h()}if(t&2){let e=p();g("ngClass",e.containerClass),f(),g("@datepickerAnimation",e.animationState),f(),g("ngSwitch",pe(3,9,e.viewMode)),f(2),g("ngSwitchCase","day"),f(),g("ngSwitchCase","month"),f(),g("ngSwitchCase","year"),f(),g("ngIf",!1),f(),g("ngIf",e.showTodayBtn||e.showClearBtn),f(),g("ngIf",e.customRanges&&e.customRanges.length>0)}}var C4=["endTP"];function w4(t,n){if(t&1){let e=N();d(0,"bs-days-calendar-view",13),te(1,"async"),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.dayHoverHandler(r))})("onHoverWeek",function(r){C(e);let o=p(3);return w(o.weekHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.daySelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)("isDisabled",i.isDatePickerDisabled)("options",pe(1,5,i.options$))}}function D4(t,n){if(t&1&&A(0,"timepicker",15,1),t&2){let e=p(4);g("disabled",e.isDatePickerDisabled)}}function M4(t,n){if(t&1&&(d(0,"div",14),A(1,"timepicker",15,0),T(3,D4,2,1,"timepicker",16),h()),t&2){let e=p(3);f(),g("disabled",e.isDatePickerDisabled),f(2),g("ngIf",e.isRangePicker)}}function S4(t,n){if(t&1&&(At(0),d(1,"div",10),T(2,w4,2,7,"bs-days-calendar-view",11),te(3,"async"),h(),T(4,M4,4,2,"div",12),Rt()),t&2){let e=p(2);f(2),g("ngForOf",pe(3,2,e.daysCalendar$)),f(2),g("ngIf",e.withTimepicker)}}function E4(t,n){if(t&1){let e=N();d(0,"bs-month-calendar-view",18),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.monthHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.monthSelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function T4(t,n){if(t&1&&(d(0,"div",10),T(1,E4,1,3,"bs-month-calendar-view",17),te(2,"async"),h()),t&2){let e=p(2);f(),g("ngForOf",pe(2,1,e.monthsCalendar))}}function I4(t,n){if(t&1){let e=N();d(0,"bs-years-calendar-view",18),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.yearHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.yearSelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function x4(t,n){if(t&1&&(d(0,"div",10),T(1,I4,1,3,"bs-years-calendar-view",17),te(2,"async"),h()),t&2){let e=p(2);f(),g("ngForOf",pe(2,1,e.yearsCalendar))}}function k4(t,n){t&1&&(d(0,"div",19)(1,"button",20),v(2,"Apply"),h(),d(3,"button",21),v(4,"Cancel"),h()())}function A4(t,n){if(t&1){let e=N();d(0,"div",24)(1,"button",25),D("click",function(){C(e);let r=p(3);return w(r.setToday())}),v(2),h()()}if(t&2){let e=p(3);j("today-left",e.todayPos==="left")("today-right",e.todayPos==="right")("today-center",e.todayPos==="center"),f(2),U(e.todayBtnLbl)}}function R4(t,n){if(t&1){let e=N();d(0,"div",26)(1,"button",25),D("click",function(){C(e);let r=p(3);return w(r.clearDate())}),v(2),h()()}if(t&2){let e=p(3);j("clear-left",e.clearPos==="left")("clear-right",e.clearPos==="right")("clear-center",e.clearPos==="center"),f(2),U(e.clearBtnLbl)}}function O4(t,n){if(t&1&&(d(0,"div",19),T(1,A4,3,7,"div",22)(2,R4,3,7,"div",23),h()),t&2){let e=p(2);f(),g("ngIf",e.showTodayBtn),f(),g("ngIf",e.showClearBtn)}}function P4(t,n){if(t&1){let e=N();d(0,"div",27)(1,"bs-custom-date-view",28),D("onSelect",function(r){C(e);let o=p(2);return w(o.setRangeOnCalendar(r))}),h()()}if(t&2){let e=p(2);f(),g("selectedRange",e.chosenRange)("ranges",e.customRanges)("customRangeLabel",e.customRangeBtnLbl)}}function N4(t,n){if(t&1){let e=N();d(0,"div",3)(1,"div",4),D("@datepickerAnimation.done",function(){C(e);let r=p();return w(r.positionServiceEnable())}),d(2,"div",5),te(3,"async"),T(4,S4,5,4,"ng-container",6)(5,T4,3,3,"div",7)(6,x4,3,3,"div",7),h(),T(7,k4,5,0,"div",8)(8,O4,3,2,"div",8),h(),T(9,P4,2,3,"div",9),h()}if(t&2){let e=p();g("ngClass",e.containerClass),f(),g("@datepickerAnimation",e.animationState),f(),g("ngSwitch",pe(3,9,e.viewMode)),f(2),g("ngSwitchCase","day"),f(),g("ngSwitchCase","month"),f(),g("ngSwitchCase","year"),f(),g("ngIf",!1),f(),g("ngIf",e.showTodayBtn||e.showClearBtn),f(),g("ngIf",e.customRanges&&e.customRanges.length>0)}}function L4(t,n){if(t&1){let e=N();d(0,"bs-days-calendar-view",13),te(1,"async"),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.dayHoverHandler(r))})("onHoverWeek",function(r){C(e);let o=p(3);return w(o.weekHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.daySelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)("isDisabled",i.isDatePickerDisabled)("options",pe(1,5,i.options$))}}function F4(t,n){if(t&1&&A(0,"timepicker",15,1),t&2){let e=p(4);g("disabled",e.isDatePickerDisabled)}}function V4(t,n){if(t&1&&(d(0,"div",14),A(1,"timepicker",15,0),T(3,F4,2,1,"timepicker",16),h()),t&2){let e=p(3);f(),g("disabled",e.isDatePickerDisabled),f(2),g("ngIf",e.isRangePicker)}}function j4(t,n){if(t&1&&(At(0),d(1,"div",10),T(2,L4,2,7,"bs-days-calendar-view",11),te(3,"async"),h(),T(4,V4,4,2,"div",12),Rt()),t&2){let e=p(2);f(2),g("ngForOf",pe(3,2,e.daysCalendar$)),f(2),g("ngIf",e.withTimepicker)}}function H4(t,n){if(t&1){let e=N();d(0,"bs-month-calendar-view",18),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.monthHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.monthSelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function B4(t,n){if(t&1&&(d(0,"div",10),T(1,H4,1,3,"bs-month-calendar-view",17),te(2,"async"),h()),t&2){let e=p(2);f(),g("ngForOf",pe(2,1,e.monthsCalendar))}}function U4(t,n){if(t&1){let e=N();d(0,"bs-years-calendar-view",18),D("onNavigate",function(r){C(e);let o=p(3);return w(o.navigateTo(r))})("onViewMode",function(r){C(e);let o=p(3);return w(o.setViewMode(r))})("onHover",function(r){C(e);let o=p(3);return w(o.yearHoverHandler(r))})("onSelect",function(r){C(e);let o=p(3);return w(o.yearSelectHandler(r))}),h()}if(t&2){let e=n.$implicit,i=p(3);j("bs-datepicker-multiple",i.multipleCalendars),g("calendar",e)}}function $4(t,n){if(t&1&&(d(0,"div",10),T(1,U4,1,3,"bs-years-calendar-view",17),te(2,"async"),h()),t&2){let e=p(2);f(),g("ngForOf",pe(2,1,e.yearsCalendar))}}function Y4(t,n){t&1&&(d(0,"div",19)(1,"button",20),v(2,"Apply"),h(),d(3,"button",21),v(4,"Cancel"),h()())}function z4(t,n){if(t&1){let e=N();d(0,"div",24)(1,"button",25),D("click",function(){C(e);let r=p(3);return w(r.setToday())}),v(2),h()()}if(t&2){let e=p(3);j("today-left",e.todayPos==="left")("today-right",e.todayPos==="right")("today-center",e.todayPos==="center"),f(2),U(e.todayBtnLbl)}}function W4(t,n){if(t&1){let e=N();d(0,"div",26)(1,"button",25),D("click",function(){C(e);let r=p(3);return w(r.clearDate())}),v(2),h()()}if(t&2){let e=p(3);j("clear-left",e.clearPos==="left")("clear-right",e.clearPos==="right")("clear-center",e.clearPos==="center"),f(2),U(e.clearBtnLbl)}}function G4(t,n){if(t&1&&(d(0,"div",19),T(1,z4,3,7,"div",22)(2,W4,3,7,"div",23),h()),t&2){let e=p(2);f(),g("ngIf",e.showTodayBtn),f(),g("ngIf",e.showClearBtn)}}function q4(t,n){if(t&1){let e=N();d(0,"div",27)(1,"bs-custom-date-view",28),D("onSelect",function(r){C(e);let o=p(2);return w(o.setRangeOnCalendar(r))}),h()()}if(t&2){let e=p(2);f(),g("selectedRange",e.chosenRange)("ranges",e.customRanges)("customRangeLabel",e.customRangeBtnLbl)}}function Q4(t,n){if(t&1){let e=N();d(0,"div",3)(1,"div",4),D("@datepickerAnimation.done",function(){C(e);let r=p();return w(r.positionServiceEnable())}),d(2,"div",5),te(3,"async"),T(4,j4,5,4,"ng-container",6)(5,B4,3,3,"div",7)(6,$4,3,3,"div",7),h(),T(7,Y4,5,0,"div",8)(8,G4,3,2,"div",8),h(),T(9,q4,2,3,"div",9),h()}if(t&2){let e=p();g("ngClass",e.containerClass),f(),g("@datepickerAnimation",e.animationState),f(),g("ngSwitch",pe(3,9,e.viewMode)),f(2),g("ngSwitchCase","day"),f(),g("ngSwitchCase","month"),f(),g("ngSwitchCase","year"),f(),g("ngIf",!1),f(),g("ngIf",e.showTodayBtn||e.showClearBtn),f(),g("ngIf",e.customRanges&&e.customRanges.length>0)}}var Xi=(()=>{class t{constructor(){this.adaptivePosition=!1,this.useUtc=!1,this.isAnimated=!1,this.startView="day",this.returnFocusToInput=!1,this.containerClass="theme-green",this.displayMonths=1,this.showWeekNumbers=!0,this.dateInputFormat="L",this.rangeSeparator=" - ",this.rangeInputFormat="L",this.monthTitle="MMMM",this.yearTitle="YYYY",this.dayLabel="D",this.monthLabel="MMMM",this.yearLabel="YYYY",this.weekNumbers="w",this.showTodayButton=!1,this.showClearButton=!1,this.todayPosition="center",this.clearPosition="right",this.todayButtonLabel="Today",this.clearButtonLabel="Clear",this.customRangeButtonLabel="Custom Range",this.withTimepicker=!1,this.allowedPositions=["top","bottom"],this.keepDatepickerOpened=!1,this.keepDatesOutOfRules=!1}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),W1="220ms cubic-bezier(0, 0, 0.2, 1)",cm=no("datepickerAnimation",[Ir("animated-down",bt({height:"*",overflow:"hidden"})),ni("* => animated-down",[bt({height:0,overflow:"hidden"}),Dn(W1)]),Ir("animated-up",bt({height:"*",overflow:"hidden"})),ni("* => animated-up",[bt({height:"*",overflow:"hidden"}),Dn(W1)]),ni("* => unanimated",Dn("0s"))]),lm=class{constructor(){this.containerClass="",this.customRanges=[],this.chosenRange=[],this._daysCalendarSub=new Ue,this.selectedTimeSub=new Ue}set minDate(n){this._effects?.setMinDate(n)}set maxDate(n){this._effects?.setMaxDate(n)}set daysDisabled(n){this._effects?.setDaysDisabled(n)}set datesDisabled(n){this._effects?.setDatesDisabled(n)}set datesEnabled(n){this._effects?.setDatesEnabled(n)}set isDisabled(n){this._effects?.setDisabled(n)}set dateCustomClasses(n){this._effects?.setDateCustomClasses(n)}set dateTooltipTexts(n){this._effects?.setDateTooltipTexts(n)}set daysCalendar$(n){this._daysCalendar$=n,this._daysCalendarSub.unsubscribe(),this._daysCalendarSub.add(this._daysCalendar$.subscribe(e=>{this.multipleCalendars=!!e&&e.length>1}))}get daysCalendar$(){return this._daysCalendar$}setViewMode(n){}navigateTo(n){}dayHoverHandler(n){}weekHoverHandler(n){}monthHoverHandler(n){}yearHoverHandler(n){}timeSelectHandler(n,e){}daySelectHandler(n){}monthSelectHandler(n){}yearSelectHandler(n){}setRangeOnCalendar(n){}setToday(){}clearDate(){}_stopPropagation(n){n.stopPropagation()}},gt=(()=>{class t{static{this.CALCULATE="[datepicker] calculate dates matrix"}static{this.FORMAT="[datepicker] format datepicker values"}static{this.FLAG="[datepicker] set flags"}static{this.SELECT="[datepicker] select date"}static{this.NAVIGATE_OFFSET="[datepicker] shift view date"}static{this.NAVIGATE_TO="[datepicker] change view date"}static{this.SET_OPTIONS="[datepicker] update render options"}static{this.HOVER="[datepicker] hover date"}static{this.CHANGE_VIEWMODE="[datepicker] switch view mode"}static{this.SET_MIN_DATE="[datepicker] set min date"}static{this.SET_MAX_DATE="[datepicker] set max date"}static{this.SET_DAYSDISABLED="[datepicker] set days disabled"}static{this.SET_DATESDISABLED="[datepicker] set dates disabled"}static{this.SET_DATESENABLED="[datepicker] set dates enabled"}static{this.SET_IS_DISABLED="[datepicker] set is disabled"}static{this.SET_DATE_CUSTOM_CLASSES="[datepicker] set date custom classes"}static{this.SET_DATE_TOOLTIP_TEXTS="[datepicker] set date tooltip texts"}static{this.SET_LOCALE="[datepicker] set datepicker locale"}static{this.SELECT_TIME="[datepicker] select time"}static{this.SELECT_RANGE="[daterangepicker] select dates range"}calculate(){return{type:t.CALCULATE}}format(){return{type:t.FORMAT}}flag(){return{type:t.FLAG}}select(e){return{type:t.SELECT,payload:e}}selectTime(e,i){return{type:t.SELECT_TIME,payload:{date:e,index:i}}}changeViewMode(e){return{type:t.CHANGE_VIEWMODE,payload:e}}navigateTo(e){return{type:t.NAVIGATE_TO,payload:e}}navigateStep(e){return{type:t.NAVIGATE_OFFSET,payload:e}}setOptions(e){return{type:t.SET_OPTIONS,payload:e}}selectRange(e){return{type:t.SELECT_RANGE,payload:e}}hoverDay(e){return{type:t.HOVER,payload:e.isHovered?e.cell.date:null}}minDate(e){return{type:t.SET_MIN_DATE,payload:e}}maxDate(e){return{type:t.SET_MAX_DATE,payload:e}}daysDisabled(e){return{type:t.SET_DAYSDISABLED,payload:e}}datesDisabled(e){return{type:t.SET_DATESDISABLED,payload:e}}datesEnabled(e){return{type:t.SET_DATESENABLED,payload:e}}isDisabled(e){return{type:t.SET_IS_DISABLED,payload:e}}setDateCustomClasses(e){return{type:t.SET_DATE_CUSTOM_CLASSES,payload:e}}setDateTooltipTexts(e){return{type:t.SET_DATE_TOOLTIP_TEXTS,payload:e}}setLocale(e){return{type:t.SET_LOCALE,payload:e}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),dC=(()=>{class t{constructor(){this._defaultLocale="en",this._locale=new Pe(this._defaultLocale),this._localeChange=this._locale.asObservable()}get locale(){return this._locale}get localeChange(){return this._localeChange}get currentLocale(){return this._locale.getValue()}use(e){e!==this.currentLocale&&this._locale.next(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),Qo=(()=>{class t{constructor(e,i){this._actions=e,this._localeService=i,this._subs=[]}init(e){return this._store=e,this}setValue(e){this._store?.dispatch(this._actions.select(e))}setRangeValue(e){this._store?.dispatch(this._actions.selectRange(e))}setMinDate(e){return this._store?.dispatch(this._actions.minDate(e)),this}setMaxDate(e){return this._store?.dispatch(this._actions.maxDate(e)),this}setDaysDisabled(e){return this._store?.dispatch(this._actions.daysDisabled(e)),this}setDatesDisabled(e){return this._store?.dispatch(this._actions.datesDisabled(e)),this}setDatesEnabled(e){return this._store?.dispatch(this._actions.datesEnabled(e)),this}setDisabled(e){return this._store?.dispatch(this._actions.isDisabled(e)),this}setDateCustomClasses(e){return this._store?.dispatch(this._actions.setDateCustomClasses(e)),this}setDateTooltipTexts(e){return this._store?.dispatch(this._actions.setDateTooltipTexts(e)),this}setOptions(e){let i=Object.assign({locale:this._localeService.currentLocale},e);return this._store?.dispatch(this._actions.setOptions(i)),this}setBindings(e){return this._store?(e.selectedTime=this._store.select(i=>i.selectedTime).pipe(le(i=>!!i)),e.daysCalendar$=this._store.select(i=>i.flaggedMonths).pipe(le(i=>!!i)),e.monthsCalendar=this._store.select(i=>i.flaggedMonthsCalendar).pipe(le(i=>!!i)),e.yearsCalendar=this._store.select(i=>i.yearsCalendarFlagged).pipe(le(i=>!!i)),e.viewMode=this._store.select(i=>i.view?.mode),e.options$=go([this._store.select(i=>i.showWeekNumbers),this._store.select(i=>i.displayMonths)]).pipe(G(i=>({showWeekNumbers:i[0],displayMonths:i[1]}))),this):this}setEventHandlers(e){return e.setViewMode=i=>{this._store?.dispatch(this._actions.changeViewMode(i))},e.navigateTo=i=>{this._store?.dispatch(this._actions.navigateStep(i.step))},e.dayHoverHandler=i=>{let r=i.cell;r.isOtherMonth||r.isDisabled||(this._store?.dispatch(this._actions.hoverDay(i)),r.isHovered=i.isHovered)},e.monthHoverHandler=i=>{i.cell.isHovered=i.isHovered},e.yearHoverHandler=i=>{i.cell.isHovered=i.isHovered},this}registerDatepickerSideEffects(){return this._store?(this._subs.push(this._store.select(e=>e.view).subscribe(()=>{this._store?.dispatch(this._actions.calculate())})),this._subs.push(this._store.select(e=>e.monthsModel).pipe(le(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.format()))),this._subs.push(this._store.select(e=>e.formattedMonths).pipe(le(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.selectedDate).pipe(le(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.selectedRange).pipe(le(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.monthsCalendar).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.yearsCalendarModel).pipe(le(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.hoveredDate).pipe(le(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.dateCustomClasses).pipe(le(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._store.select(e=>e.dateTooltipTexts).pipe(le(e=>!!e)).subscribe(()=>this._store?.dispatch(this._actions.flag()))),this._subs.push(this._localeService.localeChange.subscribe(e=>this._store?.dispatch(this._actions.setLocale(e)))),this):this}destroy(){for(let e of this._subs)e.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(F(gt),F(dC))}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),Z4={width:7,height:6},K4=24*60*60*1e3;var J4={date:new Date,mode:"day"},J1=Object.assign(new Xi,{locale:"en",view:J4,selectedRange:[],selectedTime:[],monthViewOptions:Z4});function X4(t,n){if(Bx(t,n.firstDayOfWeek))return t;let e=Ji(t),i=ez(e,n.firstDayOfWeek);return qt(t,{day:-i})}function ez(t,n){let e=Number(n);if(isNaN(e))return 0;if(e===0)return t;let i=t-e%7;return i<0?i+7:i}function cC(t,n,e){let i=n&&Yo(Zu(t,"month"),n,"day"),r=e&&co(kr(t,"month"),e,"day");return i||r||!1}function ed(t,n,e){let i=n&&Yo(Zu(t,"year"),n,"day"),r=e&&co(kr(t,"year"),e,"day");return i||r||!1}function hC(t,n,e){return!n||!st(n)||!n.length?!1:e&&e==="year"&&!n[0].getDate()?n.some(i=>Ku(t,i,"year")):n.some(i=>Ku(t,i,"date"))}function fC(t,n,e){return!n||!st(n)||!n.length?!1:!n.some(i=>Ku(t,i,e||"date"))}function X1(t,n=0){let e=t&&t.yearsCalendarModel&&t.yearsCalendarModel[n];return e?.years[0]&&e.years[0][0]&&e.years[0][0].date}function tz(t,n){return!t||!n||!t.length&&!t[0].value||t.forEach(e=>(!e||!e.value||e.value instanceof Date||!(e.value instanceof Array&&e.value.length)||(e.value=tk(e.value,n)),t)),t}function ek(t,n){return!t||!n||t instanceof Array&&!t.length||t instanceof Date?t:tk(t,n)}function tk(t,n){return t instanceof Array?t.map(i=>i&&(co(i,n,"date")&&(i=n),i)):t}function G1(t){return t&&nk(t)}function q1(t){return t?.length&&t.map(n=>n&&nk(n)),t}function nk(t){let n=new Date;return t.setMilliseconds(n.getMilliseconds()),t.setSeconds(n.getSeconds()),t.setMinutes(n.getMinutes()),t.setHours(n.getHours()),t}function pC(t,n){let e=t.initialDate,i=new Array(t.height);for(let r=0;rs),month:e}}function nz(t,n,e){return{month:t.month,monthTitle:oi(t.month,n.monthTitle,n.locale),yearTitle:oi(t.month,n.yearTitle,n.locale),weekNumbers:iz(t.daysMatrix,n.weekNumbers,n.locale),weekdays:rz(n.locale),weeks:t.daysMatrix.map((i,r)=>({days:i.map((o,s)=>({date:o,label:oi(o,n.dayLabel,n.locale),monthIndex:e,weekIndex:r,dayIndex:s}))})),hideLeftArrow:!1,hideRightArrow:!1,disableLeftArrow:!1,disableRightArrow:!1}}function iz(t,n,e){return t.map(i=>i[0]?oi(i[0],n,e):"")}function rz(t){let n=an(t),e=n.weekdaysShort(),i=n.firstDayOfWeek();return[...e.slice(i),...e.slice(0,i)]}function oz(t,n){return t.weeks.forEach(e=>{e.days.forEach((i,r)=>{let o=!ea(i.date,t.month),s=!o&&lo(i.date,n.hoveredDate),a=!o&&n.selectedRange&&lo(i.date,n.selectedRange[0]),l=!o&&n.selectedRange&&lo(i.date,n.selectedRange[1]),c=!o&&lo(i.date,n.selectedDate)||a||l,u=!o&&n.selectedRange&&sz(i.date,n.selectedRange,n.hoveredDate),m=n.isDisabled||Yo(i.date,n.minDate,"day")||co(i.date,n.maxDate,"day")||s1(i.date,n.daysDisabled)||hC(i.date,n.datesDisabled)||fC(i.date,n.datesEnabled),b=new Date,_=!o&&lo(i.date,b),M=n.dateCustomClasses&&n.dateCustomClasses.map(V=>lo(i.date,V.date)?V.classes:[]).reduce((V,de)=>V.concat(de),[]).join(" ")||"",I=n.dateTooltipTexts&&n.dateTooltipTexts.map(V=>lo(i.date,V.date)?V.tooltipText:"").reduce((V,de)=>(V.push(de),V),[]).join(" ")||"",O=Object.assign({},i,{isOtherMonth:o,isHovered:s,isSelected:c,isSelectionStart:a,isSelectionEnd:l,isInRange:u,isDisabled:m,isToday:_,customClasses:M,tooltipText:I});(i.isOtherMonth!==O.isOtherMonth||i.isHovered!==O.isHovered||i.isSelected!==O.isSelected||i.isSelectionStart!==O.isSelectionStart||i.isSelectionEnd!==O.isSelectionEnd||i.isDisabled!==O.isDisabled||i.isInRange!==O.isInRange||i.customClasses!==O.customClasses||i.tooltipText!==O.tooltipText)&&(e.days[r]=O)})}),t.hideLeftArrow=n.isDisabled||!!n.monthIndex&&n.monthIndex>0&&n.monthIndex!==n.displayMonths,t.hideRightArrow=n.isDisabled||(!!n.monthIndex||n.monthIndex===0)&&!!n.displayMonths&&n.monthIndexn[0]&&t<=n[1]:e?t>n[0]&&t<=e:!1}function Q1(t,n){return n?t>=n:!0}var az=4,lz=3,cz={month:1};function ik(t,n){let e=kr(t,"year");return{months:pC({width:lz,height:az,initialDate:e,shift:cz},o=>({date:o,label:oi(o,n.monthLabel,n.locale)})),monthTitle:"",yearTitle:oi(t,n.yearTitle,n.locale),hideRightArrow:!1,hideLeftArrow:!1,disableRightArrow:!1,disableLeftArrow:!1}}function uz(t,n){return t.months.forEach((e,i)=>{e.forEach((r,o)=>{let s,a=ea(r.date,n.hoveredMonth),l=n.isDisabled||hC(r.date,n.datesDisabled)||fC(r.date,n.datesEnabled,"month")||cC(r.date,n.minDate,n.maxDate);!n.selectedDate&&n.selectedRange?(s=ea(r.date,n.selectedRange[0]),s||(s=ea(r.date,n.selectedRange[1]))):s=ea(r.date,n.selectedDate);let c=Object.assign(r,{isHovered:a,isDisabled:l,isSelected:s});(r.isHovered!==c.isHovered||r.isDisabled!==c.isDisabled||r.isSelected!==c.isSelected)&&(t.months[i][o]=c)})}),t.hideLeftArrow=!!n.monthIndex&&n.monthIndex>0&&n.monthIndex!==n.displayMonths,t.hideRightArrow=(!!n.monthIndex||n.monthIndex===0)&&(!!n.displayMonths||n.displayMonths===0)&&n.monthIndex({date:a,label:oi(a,n.yearLabel,n.locale)})),s=fz(o,n);return{years:o,monthTitle:"",yearTitle:s,hideLeftArrow:!1,hideRightArrow:!1,disableLeftArrow:!1,disableRightArrow:!1}}function hz(t,n){return n&&t.getFullYear()>=n.getFullYear()&&t.getFullYear(){r.forEach((s,a)=>{let l,c=ta(s.date,n.hoveredYear),u=n.isDisabled||hC(s.date,n.datesDisabled,"year")||fC(s.date,n.datesEnabled,"year")||ed(s.date,n.minDate,n.maxDate);!n.selectedDate&&n.selectedRange?(l=ta(s.date,n.selectedRange[0]),l||(l=ta(s.date,n.selectedRange[1]))):l=ta(s.date,n.selectedDate);let m=Object.assign(s,{isHovered:c,isDisabled:u,isSelected:l});(s.isHovered!==m.isHovered||s.isDisabled!==m.isDisabled||s.isSelected!==m.isSelected)&&(t.years[o][a]=m)})}),t.hideLeftArrow=!!n.yearIndex&&n.yearIndex>0&&n.yearIndex!==n.displayMonths,t.hideRightArrow=!!n.yearIndex&&!!n.displayMonths&&n.yearIndexs)),e.value instanceof Date&&(e.selectedDate=e.value,e.selectedTime=[e.value])),Object.assign({},t,e)}case gt.SELECT_RANGE:{if(!t.view)return t;let e={selectedRange:n.payload,view:t.view};e.selectedRange?.forEach((s,a)=>{if(Array.isArray(t.selectedTime)){let l=t.selectedTime[a];l&&uC(s,l)}});let i=t.view.mode,r=n.payload&&n.payload[0]||t.view.date,o=lC(r,t.minDate,t.maxDate);return e.view={mode:i,date:o},Object.assign({},t,e)}case gt.SET_MIN_DATE:return Object.assign({},t,{minDate:n.payload});case gt.SET_MAX_DATE:return Object.assign({},t,{maxDate:n.payload});case gt.SET_IS_DISABLED:return Object.assign({},t,{isDisabled:n.payload});case gt.SET_DATE_CUSTOM_CLASSES:return Object.assign({},t,{dateCustomClasses:n.payload});case gt.SET_DATE_TOOLTIP_TEXTS:return Object.assign({},t,{dateTooltipTexts:n.payload});default:return t}}function mz(t){if(!t.view)return t;let n;t.displayOneMonthRange&&sk(t.view.date,t.minDate,t.maxDate)?n=1:n=t.displayMonths||1;let e=t.view.date;if(t.view.mode==="day"&&t.monthViewOptions){t.showPreviousMonth&&t.selectedRange&&t.selectedRange.length===0&&(e=qt(e,{month:-1})),t.monthViewOptions.firstDayOfWeek=an(t.locale).firstDayOfWeek();let i=new Array(n);for(let r=0;rt.monthViewOptions?aC(o.month,t.monthViewOptions):null).filter(o=>o!==null))}return Object.assign({},t,{monthsModel:i})}if(t.view.mode==="month"){let i=new Array(n);for(let r=0;rnz(r,td(t),o));return Object.assign({},t,{formattedMonths:i})}let n=t.displayMonths||1,e=t.view.date;if(t.view.mode==="month"){let i=new Array(n);for(let r=0;roz(i,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,daysDisabled:t.daysDisabled,datesDisabled:t.datesDisabled,datesEnabled:t.datesEnabled,hoveredDate:t.hoveredDate,selectedDate:t.selectedDate,selectedRange:t.selectedRange,displayMonths:n,dateCustomClasses:t.dateCustomClasses,dateTooltipTexts:t.dateTooltipTexts,monthIndex:r}));return Object.assign({},t,{flaggedMonths:e})}if(t.view.mode==="month"&&t.monthsCalendar){let e=t.monthsCalendar.map((i,r)=>uz(i,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,hoveredMonth:t.hoveredMonth,selectedDate:t.selectedDate,datesDisabled:t.datesDisabled,datesEnabled:t.datesEnabled,selectedRange:t.selectedRange,displayMonths:n,monthIndex:r}));return Object.assign({},t,{flaggedMonthsCalendar:e})}if(t.view.mode==="year"&&t.yearsCalendarModel){let e=t.yearsCalendarModel.map((i,r)=>pz(i,{isDisabled:t.isDisabled,minDate:t.minDate,maxDate:t.maxDate,hoveredYear:t.hoveredYear,selectedDate:t.selectedDate,datesDisabled:t.datesDisabled,datesEnabled:t.datesEnabled,selectedRange:t.selectedRange,displayMonths:n,yearIndex:r}));return Object.assign({},t,{yearsCalendarFlagged:e})}return t}function yz(t,n){if(!t.view)return t;let e=vz(t,n);if(!e)return t;let i={view:{mode:t.view.mode,date:e}};return Object.assign({},t,i)}function vz(t,n){if(t.view){if(t.view.mode==="year"&&t.minMode==="year"){let e=X1(t,0);if(e){let i=qt(e,{year:-rk});return qt(i,n.payload)}}return qt(kr(t.view.date,"month"),n.payload)}}function td(t){return{locale:t.locale,monthTitle:t.monthTitle,yearTitle:t.yearTitle,dayLabel:t.dayLabel,monthLabel:t.monthLabel,yearLabel:t.yearLabel,weekNumbers:t.weekNumbers}}function lC(t,n,e){let i=Array.isArray(t)?t[0]:t;return n&&co(n,i,"day")?n:e&&Yo(e,i,"day")?e:i}function sk(t,n,e){return e&&Ku(e,t,"day")?!0:n&&e&&n.getMonth()===e.getMonth()}var Zo=(()=>{class t extends Hl{constructor(){let e=new Pe({type:"[datepicker] dispatcher init"}),i=new jl(J1,e,Z1);super(e,Z1,i)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),dm=(()=>{class t{constructor(){this.onSelect=new P}selectFromRanges(e){this.onSelect.emit(e)}compareRanges(e){return JSON.stringify(e?.value)===JSON.stringify(this.selectedRange)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-custom-date-view"]],inputs:{ranges:"ranges",selectedRange:"selectedRange",customRangeLabel:"customRangeLabel"},outputs:{onSelect:"onSelect"},decls:2,vars:1,consts:[[1,"bs-datepicker-predefined-btns"],["type","button","class","btn",3,"selected","click",4,"ngFor","ngForOf"],["type","button",1,"btn",3,"click"]],template:function(i,r){i&1&&(d(0,"div",0),T(1,EY,2,3,"button",1),h()),i&2&&(f(),g("ngForOf",r.ranges))},dependencies:[rt],encapsulation:2,changeDetection:0})}}return t})(),zl=function(t){return t[t.UP=0]="UP",t[t.DOWN=1]="DOWN",t}(zl||{}),_C=(()=>{class t{constructor(){this.isDisabled=!1,this.onNavigate=new P,this.onViewMode=new P}navTo(e){this.onNavigate.emit(e?zl.DOWN:zl.UP)}view(e){this.isDisabled||this.onViewMode.emit(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-datepicker-navigation-view"]],inputs:{calendar:"calendar",isDisabled:"isDisabled"},outputs:{onNavigate:"onNavigate",onViewMode:"onViewMode"},decls:12,vars:9,consts:[["type","button",1,"previous",3,"click","disabled"],[4,"ngIf"],["type","button",1,"current",3,"click","disabled"],["type","button",1,"next",3,"click","disabled"]],template:function(i,r){i&1&&(d(0,"button",0),D("click",function(){return r.navTo(!0)}),d(1,"span"),v(2,"\u2039"),h()(),T(3,TY,5,2,"ng-container",1),v(4," \u200B "),d(5,"button",2),D("click",function(){return r.view("year")}),d(6,"span"),v(7),h()(),v(8," \u200B "),d(9,"button",3),D("click",function(){return r.navTo(!1)}),d(10,"span"),v(11,"\u203A"),h()()),i&2&&(rn("visibility",r.calendar.hideLeftArrow?"hidden":"visible"),g("disabled",r.calendar.disableLeftArrow),f(3),g("ngIf",r.calendar&&r.calendar.monthTitle),f(2),g("disabled",r.isDisabled),f(2),U(r.calendar.yearTitle),f(2),rn("visibility",r.calendar.hideRightArrow?"hidden":"visible"),g("disabled",r.calendar.disableRightArrow))},dependencies:[De],encapsulation:2,changeDetection:0})}}return t})(),bz=(()=>{class t{constructor(){this.ampm="ok",this.hours=0,this.minutes=0}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-timepicker"]],decls:16,vars:3,consts:[[1,"bs-timepicker-container"],[1,"bs-timepicker-controls"],["type","button",1,"bs-decrease"],["type","text","placeholder","00",3,"value"],["type","button",1,"bs-increase"],["type","button",1,"switch-time-format"],["src","data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAsAAAAKCAYAAABi8KSDAAABSElEQVQYV3XQPUvDUBQG4HNuagtVqc6KgouCv6GIuIntYBLB9hcIQpLStCAIV7DYmpTcRWcXqZio3Vwc/UCc/QEqfgyKGbr0I7nS1EiHeqYzPO/h5SD0jaxUZjmSLCB+OFb+UFINFwASAEAdpu9gaGXVyAHHFQBkHpKHc6a9dzECvADyY9sqlAMsK9W0jzxDXqeytr3mhQckxSji27TJJ5/rPmIpwJJq3HrtduriYOurv1a4i1p5HnhkG9OFymi0ReoO05cGwb+ayv4dysVygjeFmsP05f8wpZQ8fsdvfmuY9zjWSNqUtgYFVnOVReILYoBFzdQI5/GGFzNHhGbeZnopDGU29sZbscgldmC99w35VOATTycIMMcBXIfpSVGzZhA6C8hh00conln6VQ9TGgV32OEAKQC4DrBq7CJwd0ggR7Vq/rPrfgB+C3sGypY5DAAAAABJRU5ErkJggg==","alt",""]],template:function(i,r){i&1&&(d(0,"div",0)(1,"div",1)(2,"button",2),v(3,"-"),h(),A(4,"input",3),d(5,"button",4),v(6,"+"),h()(),d(7,"div",1)(8,"button",2),v(9,"-"),h(),A(10,"input",3),d(11,"button",4),v(12,"+"),h()(),d(13,"button",5),v(14),A(15,"img",6),h()()),i&2&&(f(4),g("value",r.hours),f(6),g("value",r.minutes),f(4),Te("",r.ampm," "))},encapsulation:2})}}return t})(),Cz=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-current-date"]],inputs:{title:"title"},decls:3,vars:1,consts:[[1,"current-timedate"]],template:function(i,r){i&1&&(d(0,"div",0)(1,"span"),v(2),h()()),i&2&&(f(2),U(r.title))},encapsulation:2})}}return t})(),yC=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-calendar-layout"]],ngContentSelectors:xY,decls:6,vars:2,consts:[["title","hey there",4,"ngIf"],[1,"bs-datepicker-head"],[1,"bs-datepicker-body"],[4,"ngIf"],["title","hey there"]],template:function(i,r){i&1&&(Pn(IY),T(0,kY,1,0,"bs-current-date",0),d(1,"div",1),Cn(2),h(),d(3,"div",2),Cn(4,1),h(),T(5,AY,1,0,"bs-timepicker",3)),i&2&&(g("ngIf",!1),f(5),g("ngIf",!1))},dependencies:[De,Cz,bz],encapsulation:2})}}return t})(),hm=(()=>{class t{constructor(){this.onNavigate=new P,this.onViewMode=new P,this.onSelect=new P,this.onHover=new P}navigateTo(e){let i=zl.DOWN===e?-1:1;this.onNavigate.emit({step:{year:i*um}})}viewYear(e){this.onSelect.emit(e)}hoverYear(e,i){this.onHover.emit({cell:e,isHovered:i})}changeViewMode(e){this.onViewMode.emit(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-years-calendar-view"]],inputs:{calendar:"calendar"},outputs:{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"},decls:5,vars:2,consts:[[3,"onNavigate","onViewMode","calendar"],["role","grid",1,"years"],[4,"ngFor","ngForOf"],["role","gridcell",3,"disabled","is-highlighted","click","mouseenter","mouseleave",4,"ngFor","ngForOf"],["role","gridcell",3,"click","mouseenter","mouseleave"]],template:function(i,r){i&1&&(d(0,"bs-calendar-layout")(1,"bs-datepicker-navigation-view",0),D("onNavigate",function(s){return r.navigateTo(s)})("onViewMode",function(s){return r.changeViewMode(s)}),h(),d(2,"table",1)(3,"tbody"),T(4,OY,2,1,"tr",2),h()()()),i&2&&(f(),g("calendar",r.calendar),f(3),g("ngForOf",r.calendar==null?null:r.calendar.years))},dependencies:[yC,_C,rt],encapsulation:2})}}return t})(),fm=(()=>{class t{constructor(){this.onNavigate=new P,this.onViewMode=new P,this.onSelect=new P,this.onHover=new P}navigateTo(e){let i=zl.DOWN===e?-1:1;this.onNavigate.emit({step:{year:i}})}viewMonth(e){this.onSelect.emit(e)}hoverMonth(e,i){this.onHover.emit({cell:e,isHovered:i})}changeViewMode(e){this.onViewMode.emit(e)}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["bs-month-calendar-view"]],inputs:{calendar:"calendar"},outputs:{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover"},decls:5,vars:2,consts:[[3,"onNavigate","onViewMode","calendar"],["role","grid",1,"months"],[4,"ngFor","ngForOf"],["role","gridcell",3,"disabled","is-highlighted","click","mouseenter","mouseleave",4,"ngFor","ngForOf"],["role","gridcell",3,"click","mouseenter","mouseleave"]],template:function(i,r){i&1&&(d(0,"bs-calendar-layout")(1,"bs-datepicker-navigation-view",0),D("onNavigate",function(s){return r.navigateTo(s)})("onViewMode",function(s){return r.changeViewMode(s)}),h(),d(2,"table",1)(3,"tbody"),T(4,NY,2,1,"tr",2),h()()()),i&2&&(f(),g("calendar",r.calendar),f(3),g("ngForOf",r.calendar==null?null:r.calendar.months))},dependencies:[yC,_C,rt],encapsulation:2})}}return t})(),wz=(()=>{class t{constructor(e,i,r){this._config=e,this._elRef=i,this._renderer=r,this.day={date:new Date,label:""}}ngOnInit(){this.day?.isToday&&this._config&&this._config.customTodayClass&&this._renderer.addClass(this._elRef.nativeElement,this._config.customTodayClass),typeof this.day?.customClasses=="string"&&this.day?.customClasses.split(" ").filter(e=>e).forEach(e=>{this._renderer.addClass(this._elRef.nativeElement,e)})}static{this.\u0275fac=function(i){return new(i||t)(y(Xi),y($),y(ke))}}static{this.\u0275cmp=L({type:t,selectors:[["","bsDatepickerDayDecorator",""]],hostVars:16,hostBindings:function(i,r){i&2&&j("disabled",r.day.isDisabled)("is-highlighted",r.day.isHovered)("is-other-month",r.day.isOtherMonth)("is-active-other-month",r.day.isOtherMonthHovered)("in-range",r.day.isInRange)("select-start",r.day.isSelectionStart)("select-end",r.day.isSelectionEnd)("selected",r.day.isSelected)},inputs:{day:"day"},attrs:LY,decls:1,vars:1,template:function(i,r){i&1&&v(0),i&2&&U(r.day&&r.day.label||"")},encapsulation:2,changeDetection:0})}}return t})(),nd=(()=>{class t{constructor(e){this._config=e,this.onNavigate=new P,this.onViewMode=new P,this.onSelect=new P,this.onHover=new P,this.onHoverWeek=new P,this.isiOS=/iPad|iPhone|iPod/.test(navigator.platform)||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1,this._config.dateTooltipTexts&&this._config.dateTooltipTexts.length>0&&(this.isShowTooltip=!0)}navigateTo(e){let i=zl.DOWN===e?-1:1;this.onNavigate.emit({step:{month:i}})}changeViewMode(e){this.onViewMode.emit(e)}selectDay(e){this.onSelect.emit(e)}selectWeek(e){if(!this._config.selectWeek&&!this._config.selectWeekDateRange||e.days.length===0)return;if(this._config.selectWeek&&e.days[0]&&!e.days[0].isDisabled&&this._config.selectFromOtherMonth){this.onSelect.emit(e.days[0]);return}let i=e.days.find(r=>(this._config.selectFromOtherMonth||!r.isOtherMonth)&&!r.isDisabled);if(this.onSelect.emit(i),this._config.selectWeekDateRange){let o=e.days.slice(0).reverse().find(s=>(this._config.selectFromOtherMonth||!s.isOtherMonth)&&!s.isDisabled);this.onSelect.emit(o)}}weekHoverHandler(e,i){if(!this._config.selectWeek&&!this._config.selectWeekDateRange)return;e.days.find(o=>(this._config.selectFromOtherMonth||!o.isOtherMonth)&&!o.isDisabled)&&(e.isHovered=i,this.isWeekHovered=i,this.onHoverWeek.emit(e))}hoverDay(e,i){this._config.selectFromOtherMonth&&e.isOtherMonth&&(e.isOtherMonthHovered=i),this._config.dateTooltipTexts&&(e.tooltipText="",this._config.dateTooltipTexts.forEach(r=>{if(lo(r.date,e.date)){e.tooltipText=r.tooltipText;return}})),this.onHover.emit({cell:e,isHovered:i})}static{this.\u0275fac=function(i){return new(i||t)(y(Xi))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-days-calendar-view"]],inputs:{calendar:"calendar",options:"options",isDisabled:"isDisabled"},outputs:{onNavigate:"onNavigate",onViewMode:"onViewMode",onSelect:"onSelect",onHover:"onHover",onHoverWeek:"onHoverWeek"},decls:9,vars:5,consts:[[3,"onNavigate","onViewMode","calendar","isDisabled"],["role","grid",1,"days","weeks"],[4,"ngIf"],["aria-label","weekday",4,"ngFor","ngForOf"],[4,"ngFor","ngForOf"],["aria-label","weekday"],["class","week",3,"active-week",4,"ngIf"],["role","gridcell",4,"ngFor","ngForOf"],[1,"week"],[3,"click",4,"ngIf"],[3,"click","mouseenter","mouseleave",4,"ngIf"],[3,"click"],[3,"click","mouseenter","mouseleave"],["role","gridcell"],["bsDatepickerDayDecorator","",3,"day","tooltip","click","mouseenter","mouseleave",4,"ngIf"],["bsDatepickerDayDecorator","",3,"day","click","mouseenter","mouseleave",4,"ngIf"],["bsDatepickerDayDecorator","",3,"day","click",4,"ngIf"],["bsDatepickerDayDecorator","",3,"click","mouseenter","mouseleave","day","tooltip"],["bsDatepickerDayDecorator","",3,"click","mouseenter","mouseleave","day"],["bsDatepickerDayDecorator","",3,"click","day"]],template:function(i,r){i&1&&(d(0,"bs-calendar-layout")(1,"bs-datepicker-navigation-view",0),D("onNavigate",function(s){return r.navigateTo(s)})("onViewMode",function(s){return r.changeViewMode(s)}),h(),d(2,"table",1)(3,"thead")(4,"tr"),T(5,FY,1,0,"th",2)(6,VY,2,1,"th",3),h()(),d(7,"tbody"),T(8,WY,3,2,"tr",4),h()()()),i&2&&(f(),g("calendar",r.calendar)("isDisabled",!!r.isDisabled),f(4),g("ngIf",r.options&&r.options.showWeekNumbers),f(),g("ngForOf",r.calendar.weekdays),f(2),g("ngForOf",r.calendar.weeks))},dependencies:[yC,_C,De,rt,wz,sC,z1],encapsulation:2})}}return t})(),vC=(()=>{class t extends lm{set value(e){this._effects?.setValue(e)}get isDatePickerDisabled(){return!!this._config.isDisabled}get isDatepickerDisabled(){return this.isDatePickerDisabled?"":null}get isDatepickerReadonly(){return this.isDatePickerDisabled?"":null}constructor(e,i,r,o,s,a,l){super(),this._config=i,this._store=r,this._element=o,this._actions=s,this._positionService=l,this.valueChange=new P,this.animationState="void",this.isRangePicker=!1,this._subs=[],this._effects=a,e.setStyle(o.nativeElement,"display","block"),e.setStyle(o.nativeElement,"position","absolute")}ngOnInit(){this._positionService.setOptions({modifiers:{flip:{enabled:this._config.adaptivePosition},preventOverflow:{enabled:this._config.adaptivePosition}},allowedPositions:this._config.allowedPositions}),this._positionService.event$?.pipe(yt(1)).subscribe(()=>{if(this._positionService.disable(),this._config.isAnimated){this.animationState=this.isTopPosition?"animated-up":"animated-down";return}this.animationState="unanimated"}),this.isOtherMonthsActive=this._config.selectFromOtherMonth,this.containerClass=this._config.containerClass,this.showTodayBtn=this._config.showTodayButton,this.todayBtnLbl=this._config.todayButtonLabel,this.todayPos=this._config.todayPosition,this.showClearBtn=this._config.showClearButton,this.clearBtnLbl=this._config.clearButtonLabel,this.clearPos=this._config.clearPosition,this.customRangeBtnLbl=this._config.customRangeButtonLabel,this.withTimepicker=this._config.withTimepicker,this._effects?.init(this._store).setOptions(this._config).setBindings(this).setEventHandlers(this).registerDatepickerSideEffects();let e;this._subs.push(this._store.select(i=>i.selectedDate).subscribe(i=>{e=i,this.valueChange.emit(i)})),this._subs.push(this._store.select(i=>i.selectedTime).subscribe(i=>{!i||!i[0]||!(i[0]instanceof Date)||i[0]===e||this.valueChange.emit(i[0])})),this._store.dispatch(this._actions.changeViewMode(this._config.startView))}ngAfterViewInit(){this.selectedTimeSub.add(this.selectedTime?.subscribe(e=>{Array.isArray(e)&&e.length>=1&&this.startTimepicker?.writeValue(e[0])})),this.startTimepicker?.registerOnChange(e=>{this.timeSelectHandler(e,0)})}get isTopPosition(){return this._element.nativeElement.classList.contains("top")}positionServiceEnable(){this._positionService.enable()}timeSelectHandler(e,i){this._store.dispatch(this._actions.selectTime(e,i))}daySelectHandler(e){!e||(this.isOtherMonthsActive?e.isDisabled:e.isOtherMonth||e.isDisabled)||this._store.dispatch(this._actions.select(e.date))}monthSelectHandler(e){!e||e.isDisabled||this._store.dispatch(this._actions.navigateTo({unit:{month:Ae(e.date),year:Ft(e.date)},viewMode:"day"}))}yearSelectHandler(e){!e||e.isDisabled||this._store.dispatch(this._actions.navigateTo({unit:{year:Ft(e.date)},viewMode:"month"}))}setToday(){this._store.dispatch(this._actions.select(new Date))}clearDate(){this._store.dispatch(this._actions.select(void 0))}ngOnDestroy(){for(let e of this._subs)e.unsubscribe();this.selectedTimeSub.unsubscribe(),this._effects?.destroy()}static{this.\u0275fac=function(i){return new(i||t)(y(ke),y(Xi),y(Zo),y($),y(gt),y(Qo),y(nn))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-datepicker-container"]],viewQuery:function(i,r){if(i&1&&Ot(K1,5),i&2){let o;Ge(o=qe())&&(r.startTimepicker=o.first)}},hostAttrs:["role","dialog","aria-label","calendar",1,"bottom"],hostVars:2,hostBindings:function(i,r){i&1&&D("click",function(s){return r._stopPropagation(s)}),i&2&&J("disabled",r.isDatepickerDisabled)("readonly",r.isDatepickerReadonly)},features:[ce([Zo,Qo,gt]),Ct],decls:2,vars:3,consts:[["startTP",""],["endTP",""],["class","bs-datepicker",3,"ngClass",4,"ngIf"],[1,"bs-datepicker",3,"ngClass"],[1,"bs-datepicker-container"],["role","application",1,"bs-calendar-container",3,"ngSwitch"],[4,"ngSwitchCase"],["class","bs-media-container",4,"ngSwitchCase"],["class","bs-datepicker-buttons",4,"ngIf"],["class","bs-datepicker-custom-range",4,"ngIf"],[1,"bs-media-container"],[3,"bs-datepicker-multiple","calendar","isDisabled","options","onNavigate","onViewMode","onHover","onHoverWeek","onSelect",4,"ngFor","ngForOf"],["class","bs-timepicker-in-datepicker-container",4,"ngIf"],[3,"onNavigate","onViewMode","onHover","onHoverWeek","onSelect","calendar","isDisabled","options"],[1,"bs-timepicker-in-datepicker-container"],[3,"disabled"],[3,"disabled",4,"ngIf"],[3,"bs-datepicker-multiple","calendar","onNavigate","onViewMode","onHover","onSelect",4,"ngFor","ngForOf"],[3,"onNavigate","onViewMode","onHover","onSelect","calendar"],[1,"bs-datepicker-buttons"],["type","button",1,"btn","btn-success"],["type","button",1,"btn","btn-default"],["class","btn-today-wrapper",3,"today-left","today-right","today-center",4,"ngIf"],["class","btn-clear-wrapper",3,"clear-left","clear-right","clear-center",4,"ngIf"],[1,"btn-today-wrapper"],[1,"btn","btn-success",3,"click"],[1,"btn-clear-wrapper"],[1,"bs-datepicker-custom-range"],[3,"onSelect","selectedRange","ranges","customRangeLabel"]],template:function(i,r){i&1&&(T(0,s4,10,11,"div",2),te(1,"async")),i&2&&g("ngIf",pe(1,1,r.viewMode))},dependencies:[De,on,bi,pr,rt,nd,$l,Ul,fm,hm,dm,mr],encapsulation:2,data:{animation:[cm]}})}}return t})(),Yl,bC=(()=>{class t{get readonlyValue(){return this.isDisabled?"":null}constructor(e,i,r,o,s){this._config=e,this._elementRef=i,this._renderer=r,this.placement="bottom",this.triggers="click",this.outsideClick=!0,this.container="body",this.outsideEsc=!0,this.isDestroy$=new X,this.isDisabled=!1,this.bsValueChange=new P,this._subs=[],this._dateInputFormat$=new X,Object.assign(this,this._config),this._datepicker=s.createLoader(i,o,r),this.onShown=this._datepicker.onShown,this.onHidden=this._datepicker.onHidden,this.isOpen$=new Pe(this.isOpen)}get isOpen(){return this._datepicker.isShown}set isOpen(e){this.isOpen$.next(e)}set bsValue(e){this._bsValue&&e&&this._bsValue.getTime()===e.getTime()||(!this._bsValue&&e&&!this._config.withTimepicker&&uC(e,new Date),e&&this.bsConfig?.initCurrentTime&&(e=G1(e)),this.initPreviousValue(),this._bsValue=e,this.bsValueChange.emit(e))}get dateInputFormat$(){return this._dateInputFormat$}ngOnInit(){this._datepicker.listen({outsideClick:this.outsideClick,outsideEsc:this.outsideEsc,triggers:this.triggers,show:()=>this.show()}),this.setConfig(),this.initPreviousValue()}initPreviousValue(){Yl=this._bsValue}ngOnChanges(e){e.bsConfig&&(e.bsConfig.currentValue?.initCurrentTime&&e.bsConfig.currentValue?.initCurrentTime!==e.bsConfig.previousValue?.initCurrentTime&&this._bsValue&&(this.initPreviousValue(),this._bsValue=G1(this._bsValue),this.bsValueChange.emit(this._bsValue)),this.setConfig(),this._dateInputFormat$.next(this.bsConfig&&this.bsConfig.dateInputFormat)),!(!this._datepickerRef||!this._datepickerRef.instance)&&(e.minDate&&(this._datepickerRef.instance.minDate=this.minDate),e.maxDate&&(this._datepickerRef.instance.maxDate=this.maxDate),e.daysDisabled&&(this._datepickerRef.instance.daysDisabled=this.daysDisabled),e.datesDisabled&&(this._datepickerRef.instance.datesDisabled=this.datesDisabled),e.datesEnabled&&(this._datepickerRef.instance.datesEnabled=this.datesEnabled),e.isDisabled&&(this._datepickerRef.instance.isDisabled=this.isDisabled),e.dateCustomClasses&&(this._datepickerRef.instance.dateCustomClasses=this.dateCustomClasses),e.dateTooltipTexts&&(this._datepickerRef.instance.dateTooltipTexts=this.dateTooltipTexts))}initSubscribes(){this._subs.push(this.bsValueChange.subscribe(e=>{this._datepickerRef&&(this._datepickerRef.instance.value=e)})),this._datepickerRef&&this._subs.push(this._datepickerRef.instance.valueChange.subscribe(e=>{this.initPreviousValue(),this.bsValue=e,!this.keepDatepickerModalOpened()&&this.hide()}))}keepDatepickerModalOpened(){return!Yl||!this.bsConfig?.keepDatepickerOpened||!this._config.withTimepicker?!1:this.isDateSame()}isDateSame(){return Yl instanceof Date&&this._bsValue?.getDate()===Yl?.getDate()&&this._bsValue?.getMonth()===Yl?.getMonth()&&this._bsValue?.getFullYear()===Yl?.getFullYear()}ngAfterViewInit(){this.isOpen$.pipe(le(e=>e!==this.isOpen),hi(this.isDestroy$)).subscribe(()=>this.toggle())}show(){this._datepicker.isShown||(this.setConfig(),this._datepickerRef=this._datepicker.provide({provide:Xi,useValue:this._config}).attach(vC).to(this.container).position({attachment:this.placement}).show({placement:this.placement}),this.initSubscribes())}hide(){this.isOpen&&this._datepicker.hide();for(let e of this._subs)e.unsubscribe();this._config.returnFocusToInput&&this._renderer.selectRootElement(this._elementRef.nativeElement).focus()}toggle(){if(this.isOpen)return this.hide();this.show()}setConfig(){this._config=Object.assign({},this._config,this.bsConfig,{value:this._config.keepDatesOutOfRules?this._bsValue:ek(this._bsValue,this.maxDate||this.bsConfig&&this.bsConfig.maxDate),isDisabled:this.isDisabled,minDate:this.minDate||this.bsConfig&&this.bsConfig.minDate,maxDate:this.maxDate||this.bsConfig&&this.bsConfig.maxDate,daysDisabled:this.daysDisabled||this.bsConfig&&this.bsConfig.daysDisabled,dateCustomClasses:this.dateCustomClasses||this.bsConfig&&this.bsConfig.dateCustomClasses,dateTooltipTexts:this.dateTooltipTexts||this.bsConfig&&this.bsConfig.dateTooltipTexts,datesDisabled:this.datesDisabled||this.bsConfig&&this.bsConfig.datesDisabled,datesEnabled:this.datesEnabled||this.bsConfig&&this.bsConfig.datesEnabled,minMode:this.minMode||this.bsConfig&&this.bsConfig.minMode,initCurrentTime:this.bsConfig?.initCurrentTime,keepDatepickerOpened:this.bsConfig?.keepDatepickerOpened,keepDatesOutOfRules:this.bsConfig?.keepDatesOutOfRules})}unsubscribeSubscriptions(){this._subs?.length&&(this._subs.map(e=>e.unsubscribe()),this._subs.length=0)}ngOnDestroy(){this._datepicker.dispose(),this.isOpen$.next(!1),this.isDestroy$&&(this.isDestroy$.next(null),this.isDestroy$.complete()),this.unsubscribeSubscriptions()}static{this.\u0275fac=function(i){return new(i||t)(y(Xi),y($),y(ke),y(pt),y(Qt))}}static{this.\u0275dir=H({type:t,selectors:[["","bsDatepicker",""]],hostVars:1,hostBindings:function(i,r){i&2&&J("readonly",r.readonlyValue)},inputs:{placement:"placement",triggers:"triggers",outsideClick:"outsideClick",container:"container",outsideEsc:"outsideEsc",isDisabled:"isDisabled",minDate:"minDate",maxDate:"maxDate",ignoreMinMaxErrors:"ignoreMinMaxErrors",minMode:"minMode",daysDisabled:"daysDisabled",datesDisabled:"datesDisabled",datesEnabled:"datesEnabled",dateCustomClasses:"dateCustomClasses",dateTooltipTexts:"dateTooltipTexts",isOpen:"isOpen",bsValue:"bsValue",bsConfig:"bsConfig"},outputs:{onShown:"onShown",onHidden:"onHidden",bsValueChange:"bsValueChange"},exportAs:["bsDatepicker"],features:[ce([Qt]),xe]})}}return t})();var Dz=(()=>{class t extends vC{get disabledValue(){return this.isDatePickerDisabled?"":null}get readonlyValue(){return this.isDatePickerDisabled?"":null}constructor(e,i,r,o,s,a,l){super(e,i,r,o,s,a,l),e.setStyle(o.nativeElement,"display","inline-block"),e.setStyle(o.nativeElement,"position","static")}static{this.\u0275fac=function(i){return new(i||t)(y(ke),y(Xi),y(Zo),y($),y(gt),y(Qo),y(nn))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-datepicker-inline-container"]],hostVars:2,hostBindings:function(i,r){i&1&&D("click",function(s){return r._stopPropagation(s)}),i&2&&J("disabled",r.disabledValue)("readonly",r.readonlyValue)},features:[ce([Zo,Qo,nn]),Ct],decls:2,vars:3,consts:[["startTP",""],["endTP",""],["class","bs-datepicker",3,"ngClass",4,"ngIf"],[1,"bs-datepicker",3,"ngClass"],[1,"bs-datepicker-container"],["role","application",1,"bs-calendar-container",3,"ngSwitch"],[4,"ngSwitchCase"],["class","bs-media-container",4,"ngSwitchCase"],["class","bs-datepicker-buttons",4,"ngIf"],["class","bs-datepicker-custom-range",4,"ngIf"],[1,"bs-media-container"],[3,"bs-datepicker-multiple","calendar","isDisabled","options","onNavigate","onViewMode","onHover","onHoverWeek","onSelect",4,"ngFor","ngForOf"],["class","bs-timepicker-in-datepicker-container",4,"ngIf"],[3,"onNavigate","onViewMode","onHover","onHoverWeek","onSelect","calendar","isDisabled","options"],[1,"bs-timepicker-in-datepicker-container"],[3,"disabled"],[3,"disabled",4,"ngIf"],[3,"bs-datepicker-multiple","calendar","onNavigate","onViewMode","onHover","onSelect",4,"ngFor","ngForOf"],[3,"onNavigate","onViewMode","onHover","onSelect","calendar"],[1,"bs-datepicker-buttons"],["type","button",1,"btn","btn-success"],["type","button",1,"btn","btn-default"],["class","btn-today-wrapper",3,"today-left","today-right","today-center",4,"ngIf"],["class","btn-clear-wrapper",3,"clear-left","clear-right","clear-center",4,"ngIf"],[1,"btn-today-wrapper"],[1,"btn","btn-success",3,"click"],[1,"btn-clear-wrapper"],[1,"bs-datepicker-custom-range"],[3,"onSelect","selectedRange","ranges","customRangeLabel"]],template:function(i,r){i&1&&(T(0,b4,10,11,"div",2),te(1,"async")),i&2&&g("ngIf",pe(1,1,r.viewMode))},dependencies:[De,on,bi,pr,rt,nd,$l,Ul,fm,hm,dm,mr],encapsulation:2,data:{animation:[cm]}})}}return t})();var CC=(()=>{class t extends lm{set value(e){this._effects?.setRangeValue(e)}get isDatePickerDisabled(){return!!this._config.isDisabled}get isDatepickerDisabled(){return this.isDatePickerDisabled?"":null}get isDatepickerReadonly(){return this.isDatePickerDisabled?"":null}constructor(e,i,r,o,s,a,l){super(),this._config=i,this._store=r,this._element=o,this._actions=s,this._positionService=l,this.valueChange=new P,this.animationState="void",this._rangeStack=[],this.chosenRange=[],this._subs=[],this.isRangePicker=!0,this._effects=a,this.customRanges=this._config.ranges||[],this.customRangeBtnLbl=this._config.customRangeButtonLabel,e.setStyle(o.nativeElement,"display","block"),e.setStyle(o.nativeElement,"position","absolute")}ngOnInit(){this._positionService.setOptions({modifiers:{flip:{enabled:this._config.adaptivePosition},preventOverflow:{enabled:this._config.adaptivePosition}},allowedPositions:this._config.allowedPositions}),this._positionService.event$?.pipe(yt(1)).subscribe(()=>{if(this._positionService.disable(),this._config.isAnimated){this.animationState=this.isTopPosition?"animated-up":"animated-down";return}this.animationState="unanimated"}),this.containerClass=this._config.containerClass,this.isOtherMonthsActive=this._config.selectFromOtherMonth,this.withTimepicker=this._config.withTimepicker,this._effects?.init(this._store).setOptions(this._config).setBindings(this).setEventHandlers(this).registerDatepickerSideEffects();let e;this._subs.push(this._store.select(i=>i.selectedRange).subscribe(i=>{e=i,this.valueChange.emit(i),this.chosenRange=i||[]})),this._subs.push(this._store.select(i=>i.selectedTime).subscribe(i=>{!i||!i[0]||!i[1]||!(i[0]instanceof Date)||!(i[1]instanceof Date)||e&&i[0]===e[0]&&i[1]===e[1]||(this.valueChange.emit(i),this.chosenRange=i||[])}))}ngAfterViewInit(){this.selectedTimeSub.add(this.selectedTime?.subscribe(e=>{Array.isArray(e)&&e.length>=2&&(this.startTimepicker?.writeValue(e[0]),this.endTimepicker?.writeValue(e[1]))})),this.startTimepicker?.registerOnChange(e=>{this.timeSelectHandler(e,0)}),this.endTimepicker?.registerOnChange(e=>{this.timeSelectHandler(e,1)})}get isTopPosition(){return this._element.nativeElement.classList.contains("top")}positionServiceEnable(){this._positionService.enable()}timeSelectHandler(e,i){this._store.dispatch(this._actions.selectTime(e,i))}daySelectHandler(e){!e||(this.isOtherMonthsActive?e.isDisabled:e.isOtherMonth||e.isDisabled)||this.rangesProcessing(e)}monthSelectHandler(e){if(!(!e||e.isDisabled)){if(e.isSelected=!0,this._config.minMode!=="month"){if(e.isDisabled)return;this._store.dispatch(this._actions.navigateTo({unit:{month:Ae(e.date),year:Ft(e.date)},viewMode:"day"}));return}this.rangesProcessing(e)}}yearSelectHandler(e){if(!(!e||e.isDisabled)){if(e.isSelected=!0,this._config.minMode!=="year"){if(e.isDisabled)return;this._store.dispatch(this._actions.navigateTo({unit:{year:Ft(e.date)},viewMode:"month"}));return}this.rangesProcessing(e)}}rangesProcessing(e){this._rangeStack.length===1&&(this._rangeStack=e.date>=this._rangeStack[0]?[this._rangeStack[0],e.date]:[e.date]),this._config.maxDateRange&&this.setMaxDateRangeOnCalendar(e.date),this._rangeStack.length===0&&(this._rangeStack=[e.date],this._config.maxDateRange&&this.setMaxDateRangeOnCalendar(e.date)),this._store.dispatch(this._actions.selectRange(this._rangeStack)),this._rangeStack.length===2&&(this._rangeStack=[])}ngOnDestroy(){for(let e of this._subs)e.unsubscribe();this.selectedTimeSub.unsubscribe(),this._effects?.destroy()}setRangeOnCalendar(e){e&&(this._rangeStack=e.value instanceof Date?[e.value]:e.value),this._store.dispatch(this._actions.selectRange(this._rangeStack))}setMaxDateRangeOnCalendar(e){let i=new Date(e);if(this._config.maxDate){let r=this._config.maxDate.getTime(),o=e.getTime()+(this._config.maxDateRange||0)*K4;i=o>r?new Date(this._config.maxDate):new Date(o)}else i.setDate(e.getDate()+(this._config.maxDateRange||0));this._effects?.setMaxDate(i)}static{this.\u0275fac=function(i){return new(i||t)(y(ke),y(Xi),y(Zo),y($),y(gt),y(Qo),y(nn))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-daterangepicker-container"]],viewQuery:function(i,r){if(i&1&&(Ot(K1,5),Ot(C4,5)),i&2){let o;Ge(o=qe())&&(r.startTimepicker=o.first),Ge(o=qe())&&(r.endTimepicker=o.first)}},hostAttrs:["role","dialog","aria-label","calendar",1,"bottom"],hostVars:2,hostBindings:function(i,r){i&1&&D("click",function(s){return r._stopPropagation(s)}),i&2&&J("disabled",r.isDatepickerDisabled)("readonly",r.isDatepickerReadonly)},features:[ce([Zo,Qo,gt,nn]),Ct],decls:2,vars:3,consts:[["startTP",""],["endTP",""],["class","bs-datepicker",3,"ngClass",4,"ngIf"],[1,"bs-datepicker",3,"ngClass"],[1,"bs-datepicker-container"],["role","application",1,"bs-calendar-container",3,"ngSwitch"],[4,"ngSwitchCase"],["class","bs-media-container",4,"ngSwitchCase"],["class","bs-datepicker-buttons",4,"ngIf"],["class","bs-datepicker-custom-range",4,"ngIf"],[1,"bs-media-container"],[3,"bs-datepicker-multiple","calendar","isDisabled","options","onNavigate","onViewMode","onHover","onHoverWeek","onSelect",4,"ngFor","ngForOf"],["class","bs-timepicker-in-datepicker-container",4,"ngIf"],[3,"onNavigate","onViewMode","onHover","onHoverWeek","onSelect","calendar","isDisabled","options"],[1,"bs-timepicker-in-datepicker-container"],[3,"disabled"],[3,"disabled",4,"ngIf"],[3,"bs-datepicker-multiple","calendar","onNavigate","onViewMode","onHover","onSelect",4,"ngFor","ngForOf"],[3,"onNavigate","onViewMode","onHover","onSelect","calendar"],[1,"bs-datepicker-buttons"],["type","button",1,"btn","btn-success"],["type","button",1,"btn","btn-default"],["class","btn-today-wrapper",3,"today-left","today-right","today-center",4,"ngIf"],["class","btn-clear-wrapper",3,"clear-left","clear-right","clear-center",4,"ngIf"],[1,"btn-today-wrapper"],[1,"btn","btn-success",3,"click"],[1,"btn-clear-wrapper"],[1,"bs-datepicker-custom-range"],[3,"onSelect","selectedRange","ranges","customRangeLabel"]],template:function(i,r){i&1&&(T(0,N4,10,11,"div",2),te(1,"async")),i&2&&g("ngIf",pe(1,1,r.viewMode))},dependencies:[De,on,bi,pr,rt,nd,$l,Ul,fm,hm,dm,mr],encapsulation:2,data:{animation:[cm]}})}}return t})(),Mz=(()=>{class t extends CC{get disabledValue(){return this.isDatePickerDisabled?"":null}get readonlyValue(){return this.isDatePickerDisabled?"":null}constructor(e,i,r,o,s,a,l){super(e,i,r,o,s,a,l),e.setStyle(o.nativeElement,"display","inline-block"),e.setStyle(o.nativeElement,"position","static")}static{this.\u0275fac=function(i){return new(i||t)(y(ke),y(Xi),y(Zo),y($),y(gt),y(Qo),y(nn))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-daterangepicker-inline-container"]],hostVars:2,hostBindings:function(i,r){i&1&&D("click",function(s){return r._stopPropagation(s)}),i&2&&J("disabled",r.disabledValue)("readonly",r.readonlyValue)},features:[ce([Zo,Qo,gt,nn]),Ct],decls:2,vars:3,consts:[["startTP",""],["endTP",""],["class","bs-datepicker",3,"ngClass",4,"ngIf"],[1,"bs-datepicker",3,"ngClass"],[1,"bs-datepicker-container"],["role","application",1,"bs-calendar-container",3,"ngSwitch"],[4,"ngSwitchCase"],["class","bs-media-container",4,"ngSwitchCase"],["class","bs-datepicker-buttons",4,"ngIf"],["class","bs-datepicker-custom-range",4,"ngIf"],[1,"bs-media-container"],[3,"bs-datepicker-multiple","calendar","isDisabled","options","onNavigate","onViewMode","onHover","onHoverWeek","onSelect",4,"ngFor","ngForOf"],["class","bs-timepicker-in-datepicker-container",4,"ngIf"],[3,"onNavigate","onViewMode","onHover","onHoverWeek","onSelect","calendar","isDisabled","options"],[1,"bs-timepicker-in-datepicker-container"],[3,"disabled"],[3,"disabled",4,"ngIf"],[3,"bs-datepicker-multiple","calendar","onNavigate","onViewMode","onHover","onSelect",4,"ngFor","ngForOf"],[3,"onNavigate","onViewMode","onHover","onSelect","calendar"],[1,"bs-datepicker-buttons"],["type","button",1,"btn","btn-success"],["type","button",1,"btn","btn-default"],["class","btn-today-wrapper",3,"today-left","today-right","today-center",4,"ngIf"],["class","btn-clear-wrapper",3,"clear-left","clear-right","clear-center",4,"ngIf"],[1,"btn-today-wrapper"],[1,"btn","btn-success",3,"click"],[1,"btn-clear-wrapper"],[1,"bs-datepicker-custom-range"],[3,"onSelect","selectedRange","ranges","customRangeLabel"]],template:function(i,r){i&1&&(T(0,Q4,10,11,"div",2),te(1,"async")),i&2&&g("ngIf",pe(1,1,r.viewMode))},dependencies:[De,on,bi,pr,rt,nd,$l,Ul,fm,hm,dm,mr],encapsulation:2,data:{animation:[cm]}})}}return t})();var Sz={provide:It,useExisting:He(()=>pm),multi:!0},Ez={provide:eo,useExisting:He(()=>pm),multi:!0},pm=(()=>{class t{constructor(e,i,r,o,s){this._picker=e,this._localeService=i,this._renderer=r,this._elRef=o,this.changeDetection=s,this._onChange=Function.prototype,this._onTouched=Function.prototype,this._validatorChange=Function.prototype,this._subs=new Ue}onChange(e){this.writeValue(e.target.value),this._onChange(this._value),this._picker._config.returnFocusToInput&&this._renderer.selectRootElement(this._elRef.nativeElement).focus(),this._onTouched()}onBlur(){this._onTouched()}hide(){this._picker.hide(),this._renderer.selectRootElement(this._elRef.nativeElement).blur(),this._picker._config.returnFocusToInput&&this._renderer.selectRootElement(this._elRef.nativeElement).focus()}ngOnInit(){let e=i=>{this._setInputValue(i),this._value!==i&&(this._value=i,this._onChange(i),this._onTouched()),this.changeDetection.markForCheck()};this._picker._bsValue&&e(this._picker._bsValue),this._subs.add(this._picker.bsValueChange.subscribe(e)),this._subs.add(this._localeService.localeChange.subscribe(()=>{this._setInputValue(this._value)})),this._subs.add(this._picker.dateInputFormat$.pipe(Vr()).subscribe(()=>{this._setInputValue(this._value)}))}ngOnDestroy(){this._subs.unsubscribe()}_setInputValue(e){let i=e?oi(e,this._picker._config.dateInputFormat,this._localeService.currentLocale):"";this._renderer.setProperty(this._elRef.nativeElement,"value",i)}validate(e){let i=e.value;if(i==null||i==="")return null;if(Qu(i)){if(!ao(i))return{bsDate:{invalid:i}};if(this._picker&&this._picker.minDate&&Yo(i,this._picker.minDate,"date"))return this.writeValue(this._picker.minDate),this._picker.ignoreMinMaxErrors?null:{bsDate:{minDate:this._picker.minDate}};if(this._picker&&this._picker.maxDate&&co(i,this._picker.maxDate,"date"))return this.writeValue(this._picker.maxDate),this._picker.ignoreMinMaxErrors?null:{bsDate:{maxDate:this._picker.maxDate}}}return null}registerOnValidatorChange(e){this._validatorChange=e}writeValue(e){if(!e)this._value=void 0;else{let i=this._localeService.currentLocale;if(!an(i))throw new Error(`Locale "${i}" is not defined, please add it with "defineLocale(...)"`);if(this._value=Fl(e,this._picker._config.dateInputFormat,this._localeService.currentLocale),this._picker._config.useUtc){let o=$b(this._value);this._value=o===null?void 0:o}}this._picker.bsValue=this._value}setDisabledState(e){if(this._picker.isDisabled=e,e){this._renderer.setAttribute(this._elRef.nativeElement,"disabled","disabled");return}this._renderer.removeAttribute(this._elRef.nativeElement,"disabled")}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}static{this.\u0275fac=function(i){return new(i||t)(y(bC,1),y(dC),y(ke),y($),y(it))}}static{this.\u0275dir=H({type:t,selectors:[["input","bsDatepicker",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s)})("blur",function(){return r.onBlur()})("keyup.esc",function(){return r.hide()})("keydown.enter",function(){return r.hide()})},features:[ce([Sz,Ez])]})}}return t})(),Tz=(()=>{class t extends Xi{constructor(){super(...arguments),this.displayMonths=2}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})()}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),qo,Iz=(()=>{class t{get isOpen(){return this._datepicker.isShown}set isOpen(e){this.isOpen$.next(e)}set bsValue(e){this._bsValue!==e&&(e&&this.bsConfig?.initCurrentTime&&(e=q1(e)),this.initPreviousValue(),this._bsValue=e,this.bsValueChange.emit(e))}get isDatepickerReadonly(){return this.isDisabled?"":null}get rangeInputFormat$(){return this._rangeInputFormat$}constructor(e,i,r,o,s){this._config=e,this._elementRef=i,this._renderer=r,this.placement="bottom",this.triggers="click",this.outsideClick=!0,this.container="body",this.outsideEsc=!0,this.isDestroy$=new X,this.isDisabled=!1,this.bsValueChange=new P,this._subs=[],this._rangeInputFormat$=new X,this._datepicker=s.createLoader(i,o,r),Object.assign(this,e),this.onShown=this._datepicker.onShown,this.onHidden=this._datepicker.onHidden,this.isOpen$=new Pe(this.isOpen)}ngOnInit(){this.isDestroy$=new X,this._datepicker.listen({outsideClick:this.outsideClick,outsideEsc:this.outsideEsc,triggers:this.triggers,show:()=>this.show()}),this.initPreviousValue(),this.setConfig()}ngOnChanges(e){e.bsConfig&&(e.bsConfig.currentValue?.initCurrentTime&&e.bsConfig.currentValue?.initCurrentTime!==e.bsConfig.previousValue?.initCurrentTime&&this._bsValue&&(this.initPreviousValue(),this._bsValue=q1(this._bsValue),this.bsValueChange.emit(this._bsValue)),this.setConfig(),this._rangeInputFormat$.next(e.bsConfig.currentValue&&e.bsConfig.currentValue.rangeInputFormat)),!(!this._datepickerRef||!this._datepickerRef.instance)&&(e.minDate&&(this._datepickerRef.instance.minDate=this.minDate),e.maxDate&&(this._datepickerRef.instance.maxDate=this.maxDate),e.datesDisabled&&(this._datepickerRef.instance.datesDisabled=this.datesDisabled),e.datesEnabled&&(this._datepickerRef.instance.datesEnabled=this.datesEnabled),e.daysDisabled&&(this._datepickerRef.instance.daysDisabled=this.daysDisabled),e.isDisabled&&(this._datepickerRef.instance.isDisabled=this.isDisabled),e.dateCustomClasses&&(this._datepickerRef.instance.dateCustomClasses=this.dateCustomClasses))}ngAfterViewInit(){this.isOpen$.pipe(le(e=>e!==this.isOpen),hi(this.isDestroy$)).subscribe(()=>this.toggle())}show(){this._datepicker.isShown||(this.setConfig(),this._datepickerRef=this._datepicker.provide({provide:Xi,useValue:this._config}).attach(CC).to(this.container).position({attachment:this.placement}).show({placement:this.placement}),this.initSubscribes())}initSubscribes(){this._subs.push(this.bsValueChange.subscribe(e=>{this._datepickerRef&&(this._datepickerRef.instance.value=e)})),this._datepickerRef&&this._subs.push(this._datepickerRef.instance.valueChange.pipe(le(e=>e&&e[0]&&!!e[1])).subscribe(e=>{this.initPreviousValue(),this.bsValue=e,!this.keepDatepickerModalOpened()&&this.hide()}))}initPreviousValue(){qo=this._bsValue}keepDatepickerModalOpened(){return!qo||!this.bsConfig?.keepDatepickerOpened||!this._config.withTimepicker?!1:this.isDateSame()}isDateSame(){return this._bsValue?.[0]?.getDate()===qo?.[0]?.getDate()&&this._bsValue?.[0]?.getMonth()===qo?.[0]?.getMonth()&&this._bsValue?.[0]?.getFullYear()===qo?.[0]?.getFullYear()&&this._bsValue?.[1]?.getDate()===qo?.[1]?.getDate()&&this._bsValue?.[1]?.getMonth()===qo?.[1]?.getMonth()&&this._bsValue?.[1]?.getFullYear()===qo?.[1]?.getFullYear()}setConfig(){this._config=Object.assign({},this._config,this.bsConfig,{value:this.bsConfig?.keepDatesOutOfRules?this._bsValue:ek(this._bsValue,this.maxDate||this.bsConfig&&this.bsConfig.maxDate),isDisabled:this.isDisabled,minDate:this.minDate||this.bsConfig&&this.bsConfig.minDate,maxDate:this.maxDate||this.bsConfig&&this.bsConfig.maxDate,daysDisabled:this.daysDisabled||this.bsConfig&&this.bsConfig.daysDisabled,dateCustomClasses:this.dateCustomClasses||this.bsConfig&&this.bsConfig.dateCustomClasses,datesDisabled:this.datesDisabled||this.bsConfig&&this.bsConfig.datesDisabled,datesEnabled:this.datesEnabled||this.bsConfig&&this.bsConfig.datesEnabled,ranges:tz(this.bsConfig&&this.bsConfig.ranges,this.maxDate||this.bsConfig&&this.bsConfig.maxDate),maxDateRange:this.bsConfig&&this.bsConfig.maxDateRange,initCurrentTime:this.bsConfig?.initCurrentTime,keepDatepickerOpened:this.bsConfig?.keepDatepickerOpened,keepDatesOutOfRules:this.bsConfig?.keepDatesOutOfRules})}hide(){this.isOpen&&this._datepicker.hide();for(let e of this._subs)e.unsubscribe();this._config.returnFocusToInput&&this._renderer.selectRootElement(this._elementRef.nativeElement).focus()}toggle(){if(this.isOpen)return this.hide();this.show()}unsubscribeSubscriptions(){this._subs?.length&&(this._subs.map(e=>e.unsubscribe()),this._subs.length=0)}ngOnDestroy(){this._datepicker.dispose(),this.isOpen$.next(!1),this.isDestroy$&&(this.isDestroy$.next(null),this.isDestroy$.complete()),this.unsubscribeSubscriptions()}static{this.\u0275fac=function(i){return new(i||t)(y(Tz),y($),y(ke),y(pt),y(Qt))}}static{this.\u0275dir=H({type:t,selectors:[["","bsDaterangepicker",""]],hostVars:1,hostBindings:function(i,r){i&2&&J("readonly",r.isDatepickerReadonly)},inputs:{placement:"placement",triggers:"triggers",outsideClick:"outsideClick",container:"container",outsideEsc:"outsideEsc",isOpen:"isOpen",bsValue:"bsValue",bsConfig:"bsConfig",isDisabled:"isDisabled",minDate:"minDate",maxDate:"maxDate",dateCustomClasses:"dateCustomClasses",daysDisabled:"daysDisabled",datesDisabled:"datesDisabled",datesEnabled:"datesEnabled"},outputs:{onShown:"onShown",onHidden:"onHidden",bsValueChange:"bsValueChange"},exportAs:["bsDaterangepicker"],features:[ce([Qt]),xe]})}}return t})(),xz={provide:It,useExisting:He(()=>ak),multi:!0},kz={provide:eo,useExisting:He(()=>ak),multi:!0},ak=(()=>{class t{constructor(e,i,r,o,s){this._picker=e,this._localeService=i,this._renderer=r,this._elRef=o,this.changeDetection=s,this._onChange=Function.prototype,this._onTouched=Function.prototype,this._validatorChange=Function.prototype,this._subs=new Ue}ngOnInit(){let e=i=>{this._setInputValue(i),this._value!==i&&(this._value=i,this._onChange(i),this._onTouched()),this.changeDetection.markForCheck()};this._picker._bsValue&&e(this._picker._bsValue),this._subs.add(this._picker.bsValueChange.subscribe(i=>{this._setInputValue(i),this._value!==i&&(this._value=i,this._onChange(i),this._onTouched()),this.changeDetection.markForCheck()})),this._subs.add(this._localeService.localeChange.subscribe(()=>{this._setInputValue(this._value)})),this._subs.add(this._picker.rangeInputFormat$.pipe(Vr()).subscribe(()=>{this._setInputValue(this._value)}))}ngOnDestroy(){this._subs.unsubscribe()}onKeydownEvent(e){(e.keyCode===13||e.code==="Enter")&&this.hide()}_setInputValue(e){let i="";if(e){let r=e[0]?oi(e[0],this._picker._config.rangeInputFormat,this._localeService.currentLocale):"",o=e[1]?oi(e[1],this._picker._config.rangeInputFormat,this._localeService.currentLocale):"";i=r&&o?r+this._picker._config.rangeSeparator+o:""}this._renderer.setProperty(this._elRef.nativeElement,"value",i)}onChange(e){this.writeValue(e.target.value),this._onChange(this._value),this._picker._config.returnFocusToInput&&this._renderer.selectRootElement(this._elRef.nativeElement).focus(),this._onTouched()}validate(e){let i=e.value,r=[];if(i==null||!st(i))return null;i=i.slice().sort((a,l)=>a.getTime()-l.getTime());let o=ao(i[0]),s=ao(i[1]);return o?s?(this._picker&&this._picker.minDate&&Yo(i[0],this._picker.minDate,"date")&&(i[0]=this._picker.minDate,r.push({bsDate:{minDate:this._picker.minDate}})),this._picker&&this._picker.maxDate&&co(i[1],this._picker.maxDate,"date")&&(i[1]=this._picker.maxDate,r.push({bsDate:{maxDate:this._picker.maxDate}})),r.length>0?(this.writeValue(i),r):null):{bsDate:{invalid:i[1]}}:{bsDate:{invalid:i[0]}}}registerOnValidatorChange(e){this._validatorChange=e}writeValue(e){if(!e)this._value=void 0;else{let i=this._localeService.currentLocale;if(!an(i))throw new Error(`Locale "${i}" is not defined, please add it with "defineLocale(...)"`);let o=[];if(typeof e=="string"){let s=this._picker._config.rangeSeparator.trim();e.replace(/[^-]/g,"").length>1?o=e.split(this._picker._config.rangeSeparator):o=e.split(s.length>0?s:this._picker._config.rangeSeparator).map(a=>a.trim())}Array.isArray(e)&&(o=e),this._value=o.map(s=>this._picker._config.useUtc?$b(Fl(s,this._picker._config.rangeInputFormat,this._localeService.currentLocale)):Fl(s,this._picker._config.rangeInputFormat,this._localeService.currentLocale)).map(s=>isNaN(s.valueOf())?void 0:s)}this._picker.bsValue=this._value}setDisabledState(e){if(this._picker.isDisabled=e,e){this._renderer.setAttribute(this._elRef.nativeElement,"disabled","disabled");return}this._renderer.removeAttribute(this._elRef.nativeElement,"disabled")}registerOnChange(e){this._onChange=e}registerOnTouched(e){this._onTouched=e}onBlur(){this._onTouched()}hide(){this._picker.hide(),this._renderer.selectRootElement(this._elRef.nativeElement).blur(),this._picker._config.returnFocusToInput&&this._renderer.selectRootElement(this._elRef.nativeElement).focus()}static{this.\u0275fac=function(i){return new(i||t)(y(Iz,1),y(dC),y(ke),y($),y(it))}}static{this.\u0275dir=H({type:t,selectors:[["input","bsDaterangepicker",""]],hostBindings:function(i,r){i&1&&D("change",function(s){return r.onChange(s)})("keyup.esc",function(){return r.hide()})("keydown",function(s){return r.onKeydownEvent(s)})("blur",function(){return r.onBlur()})},features:[ce([xz,kz])]})}}return t})(),lk=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({imports:[ot,sC,$l,nd,vC,Dz,CC,Mz]})}}return t})();function Rz(t,n){if(t&1&&(d(0,"div",3),v(1),h()),t&2){let e=p();f(),Te(" Please enter ",e.label()," ")}}var mm=class t{constructor(n){this.ngControl=n;this.ngControl.valueAccessor=this,this.bsConfig={containerClass:"theme-blue",isAnimated:!0,adaptivePosition:!0,dateInputFormat:"DD/MM/YYYY"}}label=Rn("");maxDate=Rn();bsConfig;writeValue(n){}registerOnChange(n){}registerOnTouched(n){}get control(){return this.ngControl.control}static \u0275fac=function(e){return new(e||t)(y(jn,2))};static \u0275cmp=L({type:t,selectors:[["app-date-picker"]],inputs:{label:[1,"label"],maxDate:[1,"maxDate"]},decls:5,vars:8,consts:[[1,"mb-3","form-floating"],["bsDatepicker","",1,"form-control",3,"formControl","placeholder","bsConfig","maxDate"],["class","invalid-feedback text-start",4,"ngIf"],[1,"invalid-feedback","text-start"]],template:function(e,i){e&1&&(d(0,"div",0),A(1,"input",1),d(2,"label"),v(3),h(),T(4,Rz,2,1,"div",2),h()),e&2&&(f(),j("is-invalid",i.control.touched&&i.control.invalid),g("formControl",i.control)("placeholder",i.label())("bsConfig",i.bsConfig)("maxDate",i.maxDate()),f(2),U(i.label()),f(),g("ngIf",i.control==null?null:i.control.hasError("required")))},dependencies:[lk,bC,pm,De,yl,en,Nt,Fs],encapsulation:2})};function Oz(t,n){if(t&1&&(d(0,"li"),v(1),h()),t&2){let e=n.$implicit;f(),U(e)}}function Pz(t,n){if(t&1&&(d(0,"div",10)(1,"ul"),Et(2,Oz,2,1,"li",null,Ka),h()()),t&2){let e=p();f(2),Tt(e.validationErrors)}}var gm=class t{accountService=S(tt);fb=S(QI);router=S(sn);cancelRegister=Qh();maxDate=new Date;validationErrors;registerForm=new Lo({});register(){let n=this.getDateOnly(this.registerForm.get("dateOfBirth")?.value);this.registerForm.patchValue({dateOfBirth:n}),this.accountService.register(this.registerForm.value).subscribe({next:e=>this.router.navigateByUrl("/members"),error:e=>this.validationErrors=e})}cancel(){this.cancelRegister.emit(!1)}ngOnInit(){this.initializeFrom(),this.maxDate.setFullYear(this.maxDate.getFullYear()-18)}initializeFrom(){this.registerForm=this.fb.group({gender:["male"],username:["",Ci.required],knownAs:["",Ci.required],dateOfBirth:["",Ci.required],city:["",Ci.required],country:["",Ci.required],password:["",[Ci.required,Ci.minLength(4),Ci.maxLength(8)]],confirmPassword:[,[Ci.required,this.matchValue("password")]]}),this.registerForm.controls.password.valueChanges.subscribe({next:()=>{this.registerForm.controls.confirmPassword.updateValueAndValidity()}})}matchValue(n){return e=>e.value===e.parent?.get(n)?.value?null:{isMatching:!0}}getDateOnly(n){if(n)return new Date(n).toISOString().slice(0,10)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-register"]],outputs:{cancelRegister:"cancelRegister"},decls:26,vars:21,consts:[["autocomplete","off",3,"ngSubmit","formGroup"],[1,"text-center","text-primary"],[1,"mv-3"],[2,"margin-bottom","10px"],[1,"form-check-label",2,"margin-left","8px"],["type","radio","formControlName","gender","value","male",1,"form-check-input"],["type","radio","formControlName","gender","value","female",1,"form-check-input"],[3,"formControl","label","type"],[3,"formControl","label"],[3,"formControl","label","maxDate"],[1,"alert","alert-danger","text-start"],[1,"form-group","text-center"],["type","submit",1,"btn","btn-success","me-2",3,"disabled"],["type","submit",1,"btn","btn-default","me-2",3,"click"]],template:function(e,i){e&1&&(d(0,"form",0),D("ngSubmit",function(){return i.register()}),d(1,"h2",1),v(2,"Sign up"),h(),A(3,"hr"),d(4,"div",2)(5,"label",3),v(6," I'm a: "),h(),d(7,"label",4),A(8,"input",5),v(9," Male "),h(),d(10,"label",4),A(11,"input",6),v(12," Female "),h()(),A(13,"app-text-input",7)(14,"app-text-input",8)(15,"app-date-picker",9)(16,"app-text-input",8)(17,"app-text-input",8)(18,"app-text-input",7)(19,"app-text-input",7),T(20,Pz,4,0,"div",10),d(21,"div",11)(22,"button",12),v(23,"Register"),h(),d(24,"button",13),D("click",function(){return i.cancel()}),v(25,"Cancle"),h()()()),e&2&&(g("formGroup",i.registerForm),f(13),g("formControl",i.registerForm.get("username"))("label","Username")("type","text"),f(),g("formControl",i.registerForm.get("knownAs"))("label","known As"),f(),g("formControl",i.registerForm.get("dateOfBirth"))("label","Date of Birth")("maxDate",i.maxDate),f(),g("formControl",i.registerForm.get("city"))("label","City"),f(),g("formControl",i.registerForm.get("country"))("label","Country"),f(),g("formControl",i.registerForm.get("password"))("label","Password")("type","password"),f(),g("formControl",i.registerForm.get("confirmPassword"))("label","Confirm password")("type","password"),f(),Re(i.validationErrors?20:-1),f(2),g("disabled",!i.registerForm.valid))},dependencies:[yl,wr,en,K0,Nt,Cr,Fs,X0,eb,jp,mm],encapsulation:2})};function Nz(t,n){if(t&1){let e=N();d(0,"h1"),v(1,"Find your match"),h(),d(2,"p",3),v(3,"Come on in to view your matches... all you need to do is sign up?"),h(),d(4,"div",4)(5,"button",5),D("click",function(){C(e);let r=p();return w(r.registerToggle())}),v(6,"Register"),h(),d(7,"button",6),v(8,"Learn more"),h()()}}function Lz(t,n){if(t&1){let e=N();d(0,"div",2)(1,"div",7)(2,"div",8)(3,"app-register",9),D("cancelRegister",function(r){C(e);let o=p();return w(o.cancelRegisterMode(r))}),h()()()()}}var id=class t{registerMode=!1;registerToggle(){this.registerMode=!this.registerMode}cancelRegisterMode(n){this.registerMode=n}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-home"]],decls:4,vars:1,consts:[[1,"container","mt-5"],[2,"text-align","center"],[1,"container"],[1,"lead"],[1,"text-center"],[1,"btn","btn-primary","btn-lg","me-2",3,"click"],[1,"btn","btn-info","btn-lg","me-2"],[1,"row","justify-content-center"],[1,"col-4"],[3,"cancelRegister"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"div",1),T(2,Nz,9,0)(3,Lz,4,0,"div",2),h()()),e&2&&(f(2),Re(i.registerMode?3:2))},dependencies:[gm],encapsulation:2})};var rd=class{gender;minAge=18;maxAge=99;pageNumber=1;pageSize=5;orderBy="lastActive";constructor(n){this.gender=n?.gender==="female"?"male":"female"}};var Ar=class t{http=S(Fn);accountService=S(tt);baseUrl=Yt.apiUrl;paginatedResult=ht(null);memberCache=new Map;user=this.accountService.currentUser();userParams=ht(new rd(this.user));resetUserParams(){this.userParams.set(new rd(this.user))}getMembers(){let n=this.memberCache.get(Object.values(this.userParams()).join("-"));if(n)return Vs(n,this.paginatedResult);let e=vl(this.userParams().pageNumber,this.userParams().pageSize);return e=e.append("minAge",this.userParams().minAge.toString()),e=e.append("maxAge",this.userParams().maxAge.toString()),e=e.append("gender",this.userParams().gender),e=e.append("orderBy",this.userParams().orderBy),this.http.get(this.baseUrl+"users",{params:e,observe:"response"}).subscribe({next:i=>{Vs(i,this.paginatedResult),this.memberCache.set(Object.values(this.userParams()).join("-"),i)}})}getMember(n){let e=[...this.memberCache.values()].reduce((i,r)=>i.concat(r.body),[]).find(i=>i.username==n);return e?Q(e):this.http.get(this.baseUrl+"users/"+n)}updateMember(n){return this.http.put(this.baseUrl+"users",n).pipe()}setMainPhoto(n){return this.http.put(this.baseUrl+"users/set-main-photo/"+n.id,{}).pipe()}deletePhoto(n){return this.http.delete(this.baseUrl+"users/delete-photo/"+n.id).pipe()}static \u0275fac=function(e){return new(e||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})};var Fz=()=>({tab:"Messages"});function Vz(t,n){t&1&&A(0,"i",16)}var Wl=class t{member=Rn.required();presenceService=S(Ho);likesService=S(Fo);hasLiked=$i(()=>this.likesService.likeIds().includes(this.member().id));isOnline=$i(()=>this.presenceService.onlineUsers().includes(this.member().username));toggleLike(){this.likesService.toggleLike(this.member().id).subscribe({next:()=>{this.hasLiked()?this.likesService.likeIds.update(n=>n.filter(e=>e!=this.member().id)):this.likesService.likeIds.update(n=>[...n,this.member().id])}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-card"]],inputs:{member:[1,"member"]},decls:22,vars:13,consts:[[1,"card","mb-4"],[1,"card-img-wrapper"],[1,"card-img-top",3,"src","alt"],[1,"list-inline","member-icons","animate","text-center"],[1,"list-inline-item"],[1,"btn","btn-primary",3,"routerLink"],[1,"fa","fa-user"],[1,"btn","btn-primary",3,"click"],[1,"fa","fa-heart"],[1,"btn","btn-primary",3,"routerLink","queryParams"],[1,"fa","fa-envelope"],[1,"card-body","p-1"],[1,"card-title","text-center","mb-1"],[1,"fa","fa-user","me-2"],["class","fa fa-heart ms-2","style","color: red;",4,"ngIf"],[1,"card-text","text-muted","text-center"],[1,"fa","fa-heart","ms-2",2,"color","red"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"div",1),A(2,"img",2),d(3,"ul",3)(4,"li",4)(5,"button",5),A(6,"i",6),h()(),d(7,"li",4)(8,"button",7),D("click",function(){return i.toggleLike()}),A(9,"i",8),h()(),d(10,"li",4)(11,"button",9),A(12,"i",10),h()()()(),d(13,"div",11)(14,"h6",12)(15,"span"),A(16,"i",13),h(),v(17),A(18,"br"),T(19,Vz,1,0,"i",14),h(),d(20,"p",15),v(21),h()()()),e&2&&(f(2),Dt("src",i.member().photoUrl||"https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain",ft),Dt("alt",i.member().knownAs),f(3),g("routerLink","/members/"+i.member().username),f(6),Io("routerLink","/members/",i.member().username,""),g("queryParams",Gr(12,Fz)),f(4),j("is-online",i.isOnline()),f(2),hr(" ",i.member().knownAs,", ",i.member().age,""),f(2),g("ngIf",i.hasLiked()),f(2),U(i.member().city))},dependencies:[br,De],styles:[".card[_ngcontent-%COMP%]:hover img[_ngcontent-%COMP%]{transform:scale(1.2);transition-duration:.5s;transition-timing-function:ease-out}.card[_ngcontent-%COMP%] img[_ngcontent-%COMP%]{transform:scale(1);transition-duration:.5s;transition-timing-function:ease-out}.card-img-wrapper[_ngcontent-%COMP%]{overflow:hidden;position:relative}.member-icons[_ngcontent-%COMP%]{position:absolute;bottom:-30%;left:0;right:0;margin-right:auto;margin-left:auto;opacity:0;transition:all .3s ease-in-out}.card-img-wrapper[_ngcontent-%COMP%]:hover .member-icons[_ngcontent-%COMP%]{bottom:0;opacity:1}@keyframes _ngcontent-%COMP%_fa-blink{0%{opacity:1}to{opacity:.4}}.is-online[_ngcontent-%COMP%]{animation:_ngcontent-%COMP%_fa-blink 1.5s linear infinite;color:#01bd2a}"]})};var jz=(t,n)=>({"pull-left":t,"float-left":n}),Hz=(t,n)=>({"pull-right":t,"float-right":n}),_m=(t,n)=>({disabled:t,currentPage:n}),Bz=(t,n,e)=>({disabled:t,$implicit:n,currentPage:e});function Uz(t,n){if(t&1){let e=N();d(0,"li",11)(1,"a",12),D("click",function(r){C(e);let o=p();return w(o.selectPage(1,r))}),gi(2,13),h()()}if(t&2){let e=p(),i=$t(13);j("disabled",e.noPrevious()||e.disabled),f(2),g("ngTemplateOutlet",e.customFirstTemplate||i)("ngTemplateOutletContext",Qr(4,_m,e.noPrevious()||e.disabled,e.page))}}function $z(t,n){if(t&1){let e=N();d(0,"li",14)(1,"a",12),D("click",function(r){C(e);let o=p();return w(o.selectPage(o.page-1,r))}),gi(2,13),h()()}if(t&2){let e=p(),i=$t(11);j("disabled",e.noPrevious()||e.disabled),f(2),g("ngTemplateOutlet",e.customPreviousTemplate||i)("ngTemplateOutletContext",Qr(4,_m,e.noPrevious()||e.disabled,e.page))}}function Yz(t,n){if(t&1){let e=N();d(0,"li",15)(1,"a",12),D("click",function(r){let o=C(e).$implicit,s=p();return w(s.selectPage(o.number,r))}),gi(2,13),h()()}if(t&2){let e=n.$implicit,i=p(),r=$t(7);j("active",e.active)("disabled",i.disabled&&!e.active),f(2),g("ngTemplateOutlet",i.customPageTemplate||r)("ngTemplateOutletContext",TE(6,Bz,i.disabled,e,i.page))}}function zz(t,n){if(t&1){let e=N();d(0,"li",16)(1,"a",12),D("click",function(r){C(e);let o=p();return w(o.selectPage(o.page+1,r))}),gi(2,13),h()()}if(t&2){let e=p(),i=$t(9);j("disabled",e.noNext()||e.disabled),f(2),g("ngTemplateOutlet",e.customNextTemplate||i)("ngTemplateOutletContext",Qr(4,_m,e.noNext()||e.disabled,e.page))}}function Wz(t,n){if(t&1){let e=N();d(0,"li",17)(1,"a",12),D("click",function(r){C(e);let o=p();return w(o.selectPage(o.totalPages,r))}),gi(2,13),h()()}if(t&2){let e=p(),i=$t(15);j("disabled",e.noNext()||e.disabled),f(2),g("ngTemplateOutlet",e.customLastTemplate||i)("ngTemplateOutletContext",Qr(4,_m,e.noNext()||e.disabled,e.page))}}function Gz(t,n){if(t&1&&v(0),t&2){let e=n.$implicit;U(e.text)}}function qz(t,n){if(t&1&&v(0),t&2){let e=p();U(e.getText("next"))}}function Qz(t,n){if(t&1&&v(0),t&2){let e=p();U(e.getText("previous"))}}function Zz(t,n){if(t&1&&v(0),t&2){let e=p();U(e.getText("first"))}}function Kz(t,n){if(t&1&&v(0),t&2){let e=p();U(e.getText("last"))}}var ck=(()=>{class t{constructor(){this.main={itemsPerPage:10,boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",pageBtnClass:"",rotate:!0},this.pager={itemsPerPage:15,previousText:"\xAB Previous",nextText:"Next \xBB",pageBtnClass:"",align:!0}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),Jz={provide:It,useExisting:He(()=>Xz),multi:!0},Xz=(()=>{class t{constructor(e,i,r){this.elementRef=e,this.changeDetection=r,this.align=!1,this.boundaryLinks=!1,this.directionLinks=!0,this.firstText="First",this.previousText="\xAB Previous",this.nextText="Next \xBB",this.lastText="Last",this.rotate=!0,this.pageBtnClass="",this.disabled=!1,this.numPages=new P,this.pageChanged=new P,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.classMap="",this.inited=!1,this._itemsPerPage=15,this._totalItems=0,this._totalPages=0,this._page=1,this.elementRef=e,this.config||this.configureOptions(Object.assign({},i.main,i.pager))}get itemsPerPage(){return this._itemsPerPage}set itemsPerPage(e){this._itemsPerPage=e,this.totalPages=this.calculateTotalPages()}get totalItems(){return this._totalItems}set totalItems(e){this._totalItems=e,this.totalPages=this.calculateTotalPages()}get totalPages(){return this._totalPages}set totalPages(e){this._totalPages=e,this.numPages.emit(e),this.inited&&this.selectPage(this.page)}get page(){return this._page}set page(e){let i=this._page;this._page=e>this.totalPages?this.totalPages:e||1,this.changeDetection.markForCheck(),!(i===this._page||typeof i>"u")&&this.pageChanged.emit({page:this._page,itemsPerPage:this.itemsPerPage})}configureOptions(e){this.config=Object.assign({},e)}ngOnInit(){typeof window<"u"&&(this.classMap=this.elementRef.nativeElement.getAttribute("class")||""),typeof this.maxSize>"u"&&(this.maxSize=this.config?.maxSize||0),typeof this.rotate>"u"&&(this.rotate=!!this.config?.rotate),typeof this.boundaryLinks>"u"&&(this.boundaryLinks=!!this.config?.boundaryLinks),typeof this.directionLinks>"u"&&(this.directionLinks=!!this.config?.directionLinks),typeof this.pageBtnClass>"u"&&(this.pageBtnClass=this.config?.pageBtnClass||""),typeof this.itemsPerPage>"u"&&(this.itemsPerPage=this.config?.itemsPerPage||0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.inited=!0}writeValue(e){this.page=e,this.pages=this.getPages(this.page,this.totalPages)}getText(e){return this[`${e}Text`]||this.config[`${e}Text`]}noPrevious(){return this.page===1}noNext(){return this.page===this.totalPages}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}selectPage(e,i){i&&i.preventDefault(),this.disabled||(i&&i.target&&i.target.blur(),this.writeValue(e),this.onChange(this.page))}makePage(e,i,r){return{text:i,number:e,active:r}}getPages(e,i){let r=[],o=1,s=i,a=typeof this.maxSize<"u"&&this.maxSizei&&(s=i,o=s-this.maxSize+1)):(o=(Math.ceil(e/this.maxSize)-1)*this.maxSize+1,s=Math.min(o+this.maxSize-1,i)));for(let l=o;l<=s;l++){let c=this.makePage(l,l.toString(),l===e);r.push(c)}if(a&&!this.rotate){if(o>1){let l=this.makePage(o-1,"...",!1);r.unshift(l)}if(sra),multi:!0},ra=(()=>{class t{constructor(e,i,r){this.elementRef=e,this.changeDetection=r,this.align=!0,this.boundaryLinks=!1,this.directionLinks=!0,this.rotate=!0,this.pageBtnClass="",this.disabled=!1,this.numPages=new P,this.pageChanged=new P,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.classMap="",this.inited=!1,this._itemsPerPage=10,this._totalItems=0,this._totalPages=0,this._page=1,this.elementRef=e,this.config||this.configureOptions(i.main)}get itemsPerPage(){return this._itemsPerPage}set itemsPerPage(e){this._itemsPerPage=e,this.totalPages=this.calculateTotalPages()}get totalItems(){return this._totalItems}set totalItems(e){this._totalItems=e,this.totalPages=this.calculateTotalPages()}get totalPages(){return this._totalPages}set totalPages(e){this._totalPages=e,this.numPages.emit(e),this.inited&&this.selectPage(this.page)}get page(){return this._page}set page(e){let i=this._page;this._page=e>this.totalPages?this.totalPages:e||1,this.changeDetection.markForCheck(),!(i===this._page||typeof i>"u")&&this.pageChanged.emit({page:this._page,itemsPerPage:this.itemsPerPage})}configureOptions(e){this.config=Object.assign({},e)}ngOnInit(){typeof window<"u"&&(this.classMap=this.elementRef.nativeElement.getAttribute("class")||""),typeof this.maxSize>"u"&&(this.maxSize=this.config?.maxSize||0),typeof this.rotate>"u"&&(this.rotate=!!this.config?.rotate),typeof this.boundaryLinks>"u"&&(this.boundaryLinks=!!this.config?.boundaryLinks),typeof this.directionLinks>"u"&&(this.directionLinks=!!this.config?.directionLinks),typeof this.pageBtnClass>"u"&&(this.pageBtnClass=this.config?.pageBtnClass||""),typeof this.itemsPerPage>"u"&&(this.itemsPerPage=this.config?.itemsPerPage||0),this.totalPages=this.calculateTotalPages(),this.pages=this.getPages(this.page,this.totalPages),this.inited=!0}writeValue(e){this.page=e,this.pages=this.getPages(this.page,this.totalPages)}getText(e){return this[`${e}Text`]||this.config[`${e}Text`]}noPrevious(){return this.page===1}noNext(){return this.page===this.totalPages}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}selectPage(e,i){i&&i.preventDefault(),this.disabled||(i&&i.target&&i.target.blur(),this.writeValue(e),this.onChange(this.page))}makePage(e,i,r){return{text:i,number:e,active:r}}getPages(e,i){let r=[],o=1,s=i,a=typeof this.maxSize<"u"&&this.maxSizei&&(s=i,o=s-this.maxSize+1)):(o=(Math.ceil(e/this.maxSize)-1)*this.maxSize+1,s=Math.min(o+this.maxSize-1,i)));for(let l=o;l<=s;l++){let c=this.makePage(l,l.toString(),l===e);r.push(c)}if(a&&!this.rotate){if(o>1){let l=this.makePage(o-1,"...",!1);r.unshift(l)}if(s{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({imports:[ot]})}}return t})();var tW={provide:It,useExisting:He(()=>nW),multi:!0},nW=(()=>{class t{constructor(){this.btnCheckboxTrue=!0,this.btnCheckboxFalse=!1,this.state=!1,this.isDisabled=!1,this.onChange=Function.prototype,this.onTouched=Function.prototype}onClick(){this.isDisabled||(this.toggle(!this.state),this.onChange(this.value))}ngOnInit(){this.toggle(this.trueValue===this.value)}get trueValue(){return typeof this.btnCheckboxTrue<"u"?this.btnCheckboxTrue:!0}get falseValue(){return typeof this.btnCheckboxFalse<"u"?this.btnCheckboxFalse:!1}toggle(e){this.state=e,this.value=this.state?this.trueValue:this.falseValue}writeValue(e){this.state=this.trueValue===e,this.value=e?this.trueValue:this.falseValue}setDisabledState(e){this.isDisabled=e}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275dir=H({type:t,selectors:[["","btnCheckbox",""]],hostVars:3,hostBindings:function(i,r){i&1&&D("click",function(){return r.onClick()}),i&2&&(J("aria-pressed",r.state),j("active",r.state))},inputs:{btnCheckboxTrue:"btnCheckboxTrue",btnCheckboxFalse:"btnCheckboxFalse"},features:[ce([tW])]})}}return t})(),iW={provide:It,useExisting:He(()=>Ko),multi:!0},Ko=(()=>{class t{get value(){return this.group?this.group.value:this._value}set value(e){if(this.group){this.group.value=e;return}this._value=e,this._onChange(e)}get disabled(){return this._disabled}set disabled(e){this.setDisabledState(e)}get controlOrGroupDisabled(){return this.disabled||this.group&&this.group.disabled?!0:void 0}get hasDisabledClass(){return this.controlOrGroupDisabled&&!this.isActive}get isActive(){return this.btnRadio===this.value}get tabindex(){if(!this.controlOrGroupDisabled)return this.isActive||this.group==null?0:-1}get hasFocus(){return this._hasFocus}constructor(e,i,r,o){this.el=e,this.cdr=i,this.renderer=r,this.group=o,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.uncheckable=!1,this.role="radio",this._disabled=!1,this._hasFocus=!1}toggleIfAllowed(){this.canToggle()&&(this.uncheckable&&this.btnRadio===this.value?this.value=void 0:this.value=this.btnRadio)}onSpacePressed(e){this.toggleIfAllowed(),e.preventDefault()}focus(){this.el.nativeElement.focus()}onFocus(){this._hasFocus=!0}onBlur(){this._hasFocus=!1,this.onTouched()}canToggle(){return!this.controlOrGroupDisabled&&(this.uncheckable||this.btnRadio!==this.value)}ngOnChanges(e){"uncheckable"in e&&(this.uncheckable=this.uncheckable!==!1&&typeof this.uncheckable<"u")}_onChange(e){if(this.group){this.group.value=e;return}this.onTouched(),this.onChange(e)}writeValue(e){this.value=e,this.cdr.markForCheck()}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){if(this._disabled=e,e){this.renderer.setAttribute(this.el.nativeElement,"disabled","disabled");return}this.renderer.removeAttribute(this.el.nativeElement,"disabled")}static{this.\u0275fac=function(i){return new(i||t)(y($),y(it),y(ke),y(He(()=>uk),8))}}static{this.\u0275dir=H({type:t,selectors:[["","btnRadio",""]],hostVars:8,hostBindings:function(i,r){i&1&&D("click",function(){return r.toggleIfAllowed()})("keydown.space",function(s){return r.onSpacePressed(s)})("focus",function(){return r.onFocus()})("blur",function(){return r.onBlur()}),i&2&&(J("aria-disabled",r.controlOrGroupDisabled)("aria-checked",r.isActive)("role",r.role)("tabindex",r.tabindex),j("disabled",r.hasDisabledClass)("active",r.isActive))},inputs:{btnRadio:"btnRadio",uncheckable:"uncheckable",value:"value",disabled:"disabled"},features:[ce([iW]),xe]})}}return t})(),rW={provide:It,useExisting:He(()=>uk),multi:!0},uk=(()=>{class t{constructor(e){this.cdr=e,this.onChange=Function.prototype,this.onTouched=Function.prototype,this.role="radiogroup",this._disabled=!1}get value(){return this._value}set value(e){this._value=e,this.onChange(e)}get disabled(){return this._disabled}get tabindex(){return this._disabled?null:0}writeValue(e){this._value=e,this.cdr.markForCheck()}registerOnChange(e){this.onChange=e}registerOnTouched(e){this.onTouched=e}setDisabledState(e){this.radioButtons&&(this._disabled=e,this.radioButtons.forEach(i=>{i.setDisabledState(e)}),this.cdr.markForCheck())}onFocus(){if(this._disabled)return;let e=this.getActiveOrFocusedRadio();if(e){e.focus();return}if(this.radioButtons){let i=this.radioButtons.find(r=>!r.disabled);i&&i.focus()}}onBlur(){this.onTouched&&this.onTouched()}selectNext(e){this.selectInDirection("next"),e.preventDefault()}selectPrevious(e){this.selectInDirection("previous"),e.preventDefault()}selectInDirection(e){if(this._disabled)return;function i(o,s){let l=(o+(e==="next"?1:-1))%s.length;return l<0&&(l=s.length-1),l}let r=this.getActiveOrFocusedRadio();if(r&&this.radioButtons){let o=this.radioButtons.toArray(),s=o.indexOf(r);for(let a=i(s,o);a!==s;a=i(a,o))if(o[a].canToggle()){o[a].toggleIfAllowed(),o[a].focus();break}}}getActiveOrFocusedRadio(){if(this.radioButtons)return this.radioButtons.find(e=>e.isActive)||this.radioButtons.find(e=>e.hasFocus)}static{this.\u0275fac=function(i){return new(i||t)(y(it))}}static{this.\u0275dir=H({type:t,selectors:[["","btnRadioGroup",""]],contentQueries:function(i,r,o){if(i&1&&xo(o,Ko,4),i&2){let s;Ge(s=qe())&&(r.radioButtons=s)}},hostVars:2,hostBindings:function(i,r){i&1&&D("focus",function(){return r.onFocus()})("blur",function(){return r.onBlur()})("keydown.ArrowRight",function(s){return r.selectNext(s)})("keydown.ArrowDown",function(s){return r.selectNext(s)})("keydown.ArrowLeft",function(s){return r.selectPrevious(s)})("keydown.ArrowUp",function(s){return r.selectPrevious(s)}),i&2&&J("role",r.role)("tabindex",r.tabindex)},features:[ce([rW])]})}}return t})(),ql=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({})}}return t})();var oW=(t,n)=>n.value,sW=(t,n)=>n.id;function aW(t,n){if(t&1&&(d(0,"option",10),v(1),h()),t&2){let e=n.$implicit;g("value",e.value),f(),U(e.display)}}function lW(t,n){if(t&1&&(d(0,"div",17)(1,"p"),A(2,"app-member-card",19),h()()),t&2){let e=n.$implicit;f(2),g("member",e)}}function cW(t,n){if(t&1){let e=N();d(0,"div",18)(1,"pagination",20),D("pageChanged",function(r){C(e);let o=p();return w(o.pageChange(r))}),Fe("ngModelChange",function(r){let o;C(e);let s=p();return Ve((o=s.paginatedResult())==null?null:o.pagination.currentPage,r)||(((o=s.paginatedResult())==null?null:o.pagination).currentPage=r),w(r)}),h()()}if(t&2){let e,i,r,o=p();f(),g("boundaryLinks",!0)("totalItems",(e=o.paginatedResult())==null?null:e.pagination.totalItems)("itemsPerPage",(i=o.paginatedResult())==null?null:i.pagination.itemsPerPage),Le("ngModel",(r=o.paginatedResult())==null?null:r.pagination.currentPage),g("maxSize",10)}}var ym=class t{membersService=S(Ar);genderList=[{value:"male",display:"Males"},{value:"female",display:"Females"}];ngOnInit(){this.membersService.paginatedResult()||this.loadMembers()}loadMembers(){this.membersService.getMembers()}resetFilters(){this.membersService.resetUserParams(),this.loadMembers()}pageChange(n){this.membersService.userParams().pageNumber!=n.page&&(this.membersService.userParams().pageNumber=n.page,this.loadMembers())}paginatedResult(){return this.membersService.paginatedResult()}userParams(){return this.membersService.userParams()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-lists"]],decls:34,vars:7,consts:[["form","ngForm"],[1,"row"],[1,"text-center","mt-3"],[1,"container","mt-3"],[1,"d-flex","mb-3",3,"ngSubmit"],[1,"d-flex","mx-2"],[1,"col-form-label"],["type","number","name","minAge",1,"form-control","ms-1",2,"width","70px",3,"ngModelChange","ngModel"],["type","number","name","maxAge",1,"form-control","ms-1",2,"width","70px",3,"ngModelChange","ngModel"],["name","gender",1,"form-select","ms-1",2,"width","130px",3,"ngModelChange","ngModel"],[3,"value"],["type","submit",1,"btn","btn-primary","ms-1"],["type","button",1,"btn","btn-info","ms-1",3,"click"],[1,"col"],[1,"btn-group","float-end"],["name","orderBy","btnRadio","lastActive",1,"btn","btn-primary",3,"click","ngModelChange","ngModel"],["name","orderBy","btnRadio","created",1,"btn","btn-primary",3,"click","ngModelChange","ngModel"],[1,"col-2"],[1,"d-flex","justify-content-center"],[3,"member"],["previousText","\u2039","nextText","\u203A","firstText","\xAB","lastText","\xBB",3,"pageChanged","ngModelChange","boundaryLinks","totalItems","itemsPerPage","ngModel","maxSize"]],template:function(e,i){if(e&1){let r=N();d(0,"div",1)(1,"div",2)(2,"h2"),v(3),h()(),d(4,"div",3)(5,"form",4,0),D("ngSubmit",function(){return C(r),w(i.loadMembers())}),d(7,"div",5)(8,"label",6),v(9,"Age from: "),h(),d(10,"input",7),Fe("ngModelChange",function(s){return C(r),Ve(i.userParams().minAge,s)||(i.userParams().minAge=s),w(s)}),h()(),d(11,"div",5)(12,"label",6),v(13,"Age to: "),h(),d(14,"input",8),Fe("ngModelChange",function(s){return C(r),Ve(i.userParams().maxAge,s)||(i.userParams().maxAge=s),w(s)}),h()(),d(15,"div",5)(16,"label",6),v(17,"Show "),h(),d(18,"select",9),Fe("ngModelChange",function(s){return C(r),Ve(i.userParams().gender,s)||(i.userParams().gender=s),w(s)}),Et(19,aW,2,2,"option",10,oW),h()(),d(21,"button",11),v(22,"Apply filters "),h(),d(23,"button",12),D("click",function(){return C(r),w(i.resetFilters())}),v(24,"Reset filters "),h(),d(25,"div",13)(26,"div",14)(27,"button",15),D("click",function(){return C(r),w(i.loadMembers())}),Fe("ngModelChange",function(s){return C(r),Ve(i.userParams().orderBy,s)||(i.userParams().orderBy=s),w(s)}),v(28,"Last active"),h(),d(29,"button",16),D("click",function(){return C(r),w(i.loadMembers())}),Fe("ngModelChange",function(s){return C(r),Ve(i.userParams().orderBy,s)||(i.userParams().orderBy=s),w(s)}),v(30,"Newest members"),h()()()()(),Et(31,lW,3,1,"div",17,sW),h(),T(33,cW,2,5,"div",18)}if(e&2){let r,o,s;f(3),Te("Your matches - ",(r=i.paginatedResult())==null||r.pagination==null?null:r.pagination.totalItems,""),f(7),Le("ngModel",i.userParams().minAge),f(4),Le("ngModel",i.userParams().maxAge),f(4),Le("ngModel",i.userParams().gender),f(),Tt(i.genderList),f(8),Le("ngModel",i.userParams().orderBy),f(2),Le("ngModel",i.userParams().orderBy),f(2),Tt((o=i.paginatedResult())==null?null:o.items),f(2),Re((s=i.paginatedResult())!=null&&s.pagination?33:-1)}},dependencies:[Wl,Gl,ra,Hn,wr,zI,GI,en,Z0,_p,Nt,Cr,wn,to,ql,Ko],encapsulation:2})};var uW=["*"],dW=t=>["nav-item",t];function hW(t,n){if(t&1){let e=N();d(0,"span",7),D("click",function(r){C(e);let o=p().$implicit,s=p();return r.preventDefault(),w(s.removeTab(o))}),v(1," \u274C"),h()}}function fW(t,n){if(t&1){let e=N();d(0,"li",3),D("keydown",function(r){let o=C(e).index,s=p();return w(s.keyNavActions(r,o))}),d(1,"a",4),D("click",function(){let r=C(e).$implicit;return w(r.active=!0)}),d(2,"span",5),v(3),h(),T(4,hW,2,0,"span",6),h()()}if(t&2){let e=n.$implicit;j("active",e.active)("disabled",e.disabled),g("ngClass",qr(15,dW,e.customClass||"")),f(),j("active",e.active)("disabled",e.disabled),J("aria-controls",e.id?e.id:"")("aria-selected",!!e.active)("id",e.id?e.id+"-link":""),f(),g("ngTransclude",e.headingRef),f(),U(e.heading),f(),g("ngIf",e.removable)}}var pW=(()=>{class t{set ngTransclude(e){this._ngTransclude=e,e&&this.viewRef.createEmbeddedView(e)}get ngTransclude(){return this._ngTransclude}constructor(e){this.viewRef=e}static{this.\u0275fac=function(i){return new(i||t)(y(pt))}}static{this.\u0275dir=H({type:t,selectors:[["","ngTransclude",""]],inputs:{ngTransclude:"ngTransclude"}})}}return t})(),mW=(()=>{class t{constructor(){this.type="tabs",this.isKeysAllowed=!0,this.ariaLabel="Tabs"}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),oa=(()=>{class t{get vertical(){return this._vertical}set vertical(e){this._vertical=e,this.setClassMap()}get justified(){return this._justified}set justified(e){this._justified=e,this.setClassMap()}get type(){return this._type}set type(e){this._type=e,this.setClassMap()}get isKeysAllowed(){return this._isKeysAllowed}set isKeysAllowed(e){this._isKeysAllowed=e}constructor(e,i,r){this.renderer=i,this.elementRef=r,this.clazz=!0,this.tabs=[],this.classMap={},this.ariaLabel="Tabs",this.isDestroyed=!1,this._vertical=!1,this._justified=!1,this._type="tabs",this._isKeysAllowed=!0,Object.assign(this,e)}ngOnDestroy(){this.isDestroyed=!0}addTab(e){this.tabs.push(e),e.active=this.tabs.length===1&&!e.active}removeTab(e,i={reselect:!0,emit:!0}){let r=this.tabs.indexOf(e);if(!(r===-1||this.isDestroyed)){if(i.reselect&&e.active&&this.hasAvailableTabs(r)){let o=this.getClosestTabIndex(r);this.tabs[o].active=!0}i.emit&&e.removed.emit(e),this.tabs.splice(r,1),e.elementRef.nativeElement.parentNode&&this.renderer.removeChild(e.elementRef.nativeElement.parentNode,e.elementRef.nativeElement)}}keyNavActions(e,i){if(!this.isKeysAllowed)return;let r=Array.from(this.elementRef.nativeElement.querySelectorAll(".nav-link"));if(e.keyCode===13||e.key==="Enter"||e.keyCode===32||e.key==="Space"){e.preventDefault(),r[i%r.length].click();return}if(e.keyCode===39||e.key==="RightArrow"){let o,s=1;do o=r[(i+s)%r.length],s++;while(o.classList.contains("disabled"));o.focus();return}if(e.keyCode===37||e.key==="LeftArrow"){let o,s=1,a=i;do a-s<0?(a=r.length-1,o=r[a],s=0):o=r[a-s],s++;while(o.classList.contains("disabled"));o.focus();return}if(e.keyCode===36||e.key==="Home"){e.preventDefault();let o,s=0;do o=r[s%r.length],s++;while(o.classList.contains("disabled"));o.focus();return}if(e.keyCode===35||e.key==="End"){e.preventDefault();let o,s=1,a=i;do a-s<0?(a=r.length-1,o=r[a],s=0):o=r[a-s],s++;while(o.classList.contains("disabled"));o.focus();return}if((e.keyCode===46||e.key==="Delete")&&this.tabs[i].removable){if(this.removeTab(this.tabs[i]),r[i+1]){r[(i+1)%r.length].focus();return}r[r.length-1]&&r[0].focus()}}getClosestTabIndex(e){let i=this.tabs.length;if(!i)return-1;for(let r=1;r<=i;r+=1){let o=e-r,s=e+r;if(this.tabs[o]&&!this.tabs[o].disabled)return o;if(this.tabs[s]&&!this.tabs[s].disabled)return s}return-1}hasAvailableTabs(e){let i=this.tabs.length;if(!i)return!1;for(let r=0;r{class t{get customClass(){return this._customClass}set customClass(e){this.customClass&&this.customClass.split(" ").forEach(i=>{this.renderer.removeClass(this.elementRef.nativeElement,i)}),this._customClass=e?e.trim():"",this.customClass&&this.customClass.split(" ").forEach(i=>{this.renderer.addClass(this.elementRef.nativeElement,i)})}get active(){return this._active}set active(e){if(this._active!==e){if(this.disabled&&e||!e){this._active&&!e&&(this.deselect.emit(this),this._active=e);return}this._active=e,this.selectTab.emit(this),this.tabset.tabs.forEach(i=>{i!==this&&(i.active=!1)})}}get ariaLabelledby(){return this.id?`${this.id}-link`:""}constructor(e,i,r){this.elementRef=i,this.renderer=r,this.disabled=!1,this.removable=!1,this.selectTab=new P,this.deselect=new P,this.removed=new P,this.addClass=!0,this.role="tabpanel",this._active=!1,this._customClass="",this.tabset=e,this.tabset.addTab(this)}ngOnInit(){this.removable=!!this.removable}ngOnDestroy(){this.tabset.removeTab(this,{reselect:!1,emit:!1})}static{this.\u0275fac=function(i){return new(i||t)(y(oa),y($),y(ke))}}static{this.\u0275dir=H({type:t,selectors:[["tab"],["","tab",""]],hostVars:7,hostBindings:function(i,r){i&2&&(J("id",r.id)("role",r.role)("aria-labelledby",r.ariaLabelledby),j("active",r.active)("tab-pane",r.addClass))},inputs:{heading:"heading",id:"id",disabled:"disabled",removable:"removable",customClass:"customClass",active:"active"},outputs:{selectTab:"selectTab",deselect:"deselect",removed:"removed"},exportAs:["tab"]})}}return t})();var Zl=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({imports:[ot]})}}return t})();function vm(t){return t==null?"":typeof t=="string"?t:`${t}px`}var gW=new B("cdk-dir-doc",{providedIn:"root",factory:_W});function _W(){return S(Ie)}var yW=/^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;function SC(t){let n=t?.toLowerCase()||"";return n==="auto"&&typeof navigator<"u"&&navigator?.language?yW.test(navigator.language)?"rtl":"ltr":n==="rtl"?"rtl":"ltr"}var Kl=(()=>{class t{value="ltr";change=new P;constructor(){let e=S(gW,{optional:!0});if(e){let i=e.body?e.body.dir:null,r=e.documentElement?e.documentElement.dir:null;this.value=SC(i||r||"ltr")}}ngOnDestroy(){this.change.complete()}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var bm=(()=>{class t{_dir="ltr";_isInitialized=!1;_rawDir;change=new P;get dir(){return this._dir}set dir(e){let i=this._dir;this._dir=SC(e),this._rawDir=e,i!==this._dir&&this._isInitialized&&this.change.emit(this._dir)}get value(){return this.dir}ngAfterContentInit(){this._isInitialized=!0}ngOnDestroy(){this.change.complete()}static \u0275fac=function(i){return new(i||t)};static \u0275dir=H({type:t,selectors:[["","dir",""]],hostVars:1,hostBindings:function(i,r){i&2&&J("dir",r._rawDir)},inputs:{dir:"dir"},outputs:{change:"dirChange"},exportAs:["dir"],features:[ce([{provide:Kl,useExisting:t}])]})}return t})();var EC;try{EC=typeof Intl<"u"&&Intl.v8BreakIterator}catch{EC=!1}var TC=(()=>{class t{_platformId=S(qn);isBrowser=this._platformId?xs(this._platformId):typeof document=="object"&&!!document;EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent);TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent);BLINK=this.isBrowser&&!!(window.chrome||EC)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT;WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT;IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window);FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent);ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT;SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT;constructor(){}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();var Rr=function(t){return t[t.NORMAL=0]="NORMAL",t[t.NEGATED=1]="NEGATED",t[t.INVERTED=2]="INVERTED",t}(Rr||{}),Cm;function IC(){if(typeof document!="object"||!document)return Rr.NORMAL;if(Cm==null){let t=document.createElement("div"),n=t.style;t.dir="rtl",n.width="1px",n.overflow="auto",n.visibility="hidden",n.pointerEvents="none",n.position="absolute";let e=document.createElement("div"),i=e.style;i.width="2px",i.height="1px",t.appendChild(e),document.body.appendChild(t),Cm=Rr.NORMAL,t.scrollLeft===0&&(t.scrollLeft=1,Cm=t.scrollLeft===0?Rr.NEGATED:Rr.INVERTED),t.remove()}return Cm}function CW(t,n){if(t&1){let e=N();d(0,"div",1),D("click",function(){let r=C(e).index,o=p();return w(o.config.disableBullets?null:o.gallery.ref(o.galleryId).set(r))}),A(1,"div",2),h()}if(t&2){let e=n.index,i=p();rn("width",i.config==null?null:i.config.bulletSize,"px")("height",i.config==null?null:i.config.bulletSize,"px"),j("g-bullet-active",e===i.state.currIndex)}}function wW(t,n){if(t&1){let e=N();d(0,"i",2),D("click",function(){C(e);let r=p();return w(r.gallery.ref(r.id).prev(r.config.scrollBehavior))}),h()}if(t&2){let e=p();g("innerHtml",e.navIcon,mi)}}function DW(t,n){if(t&1){let e=N();d(0,"i",3),D("click",function(){C(e);let r=p();return w(r.gallery.ref(r.id).next(r.config.scrollBehavior))}),h()}if(t&2){let e=p();g("innerHtml",e.navIcon,mi)}}var MW=["iframe"];function SW(t,n){if(t&1&&A(0,"iframe",3,1),t&2){let e=p();g("src",e.iframeSrc,Xh),J("loading",e.loadingAttr)}}function EW(t,n){if(t&1&&A(0,"iframe",4,1),t&2){let e=p();g("src",e.iframeSrc,Xh),J("loading",e.loadingAttr)}}var TW=["video"];function IW(t,n){if(t&1&&A(0,"source",5),t&2){let e=p().$implicit;g("src",e==null?null:e.url,ft)("type",e.type)}}function xW(t,n){if(t&1&&A(0,"source",6),t&2){let e=p().$implicit;g("src",e==null?null:e.url,ft)}}function kW(t,n){if(t&1&&(At(0),T(1,IW,1,2,"source",4)(2,xW,1,1,"ng-template",null,1,Kn),Rt()),t&2){let e=n.$implicit,i=$t(3);f(),g("ngIf",e==null?null:e.type)("ngIfElse",i)}}function AW(t,n){if(t&1){let e=N();At(0),d(1,"img",8),D("load",function(){C(e);let r=p();return w(r.state="success")})("error",function(r){C(e);let o=p();return o.state="failed",w(o.error.emit(r))}),h(),Rt()}if(t&2){let e=p();f(),rn("visibility",e.state==="success"?"visible":"hidden"),g("@fadeIn",e.state)("src",e.src,ft),J("alt",e.alt)("loading",e.loadingAttr)}}function RW(t,n){if(t&1){let e=N();d(0,"img",9),D("load",function(){C(e);let r=p();return w(r.state="success")})("error",function(r){C(e);let o=p();return o.state="failed",w(o.error.emit(r))}),h()}if(t&2){let e=p();rn("visibility",e.state==="success"?"visible":"hidden"),g("galleryImage",e.index)("@fadeIn",e.state)("src",e.src,ft),J("alt",e.alt)("loading",e.loadingAttr)}}function OW(t,n){if(t&1&&A(0,"div",12),t&2){let e=p(2);g("innerHTML",e.errorTemplate,mi)}}function PW(t,n){if(t&1&&(At(0),d(1,"h4"),A(2,"div",13),h(),Rt()),t&2){let e=p(3);f(2),g("innerHTML",e.errorSvg,mi)}}function NW(t,n){if(t&1&&(d(0,"h2"),A(1,"div",14),h(),d(2,"p"),v(3,"Unable to load the image!"),h()),t&2){let e=p(3);f(),g("innerHTML",e.errorSvg,mi)}}function LW(t,n){if(t&1&&T(0,PW,3,1,"ng-container",5)(1,NW,4,1,"ng-template",null,2,Kn),t&2){let e=$t(2),i=p(2);g("ngIf",i.isThumbnail)("ngIfElse",e)}}function FW(t,n){if(t&1&&(d(0,"div",10),T(1,OW,1,1,"div",11)(2,LW,3,2,"ng-template",null,1,Kn),h()),t&2){let e=$t(3),i=p();f(),g("ngIf",i.errorTemplate)("ngIfElse",e)}}function VW(t,n){if(t&1&&A(0,"div",16),t&2){let e=p(2);g("innerHTML",e.loaderTemplate,mi)}}function jW(t,n){t&1&&A(0,"div",18)}function HW(t,n){if(t&1&&T(0,jW,1,0,"div",17),t&2){let e=p(2);g("ngIf",e.isThumbnail)}}function BW(t,n){if(t&1&&(At(0),T(1,VW,1,1,"div",15)(2,HW,1,1,"ng-template",null,3,Kn),Rt()),t&2){let e=$t(3),i=p();f(),g("ngIf",i.loaderTemplate)("ngIfElse",e)}}function UW(t,n){t&1&&gi(0)}function $W(t,n){if(t&1&&(d(0,"div",9),T(1,UW,1,0,"ng-container",10),h()),t&2){let e=p(3);f(),g("ngTemplateOutlet",e.config.imageTemplate)("ngTemplateOutletContext",e.imageContext)}}function YW(t,n){if(t&1){let e=N();At(0),d(1,"gallery-image",7),D("error",function(r){C(e);let o=p(2);return w(o.error.emit(r))}),h(),T(2,$W,2,2,"div",8),Rt()}if(t&2){let e=p(2);f(),g("src",e.imageData.src)("alt",e.imageData.alt)("index",e.index)("loadingAttr",e.config.loadingAttr)("loadingIcon",e.config.loadingIcon)("loadingError",e.config.loadingError),f(),g("ngIf",e.config.imageTemplate)}}function zW(t,n){if(t&1){let e=N();d(0,"gallery-video",11),D("error",function(r){C(e);let o=p(2);return w(o.error.emit(r))}),h()}if(t&2){let e=p(2);g("src",e.videoData.src)("mute",e.videoData.mute)("poster",e.videoData.poster)("controls",e.videoData.controls)("controlsList",e.videoData.controlsList)("disablePictureInPicture",e.videoData.disablePictureInPicture)("play",e.isAutoPlay)("pause",e.currIndex!==e.index)}}function WW(t,n){if(t&1&&A(0,"gallery-iframe",12),t&2){let e=p(2);g("src",e.youtubeSrc)("autoplay",e.isAutoPlay)("loadingAttr",e.config.loadingAttr)("pause",e.currIndex!==e.index)}}function GW(t,n){if(t&1&&A(0,"gallery-iframe",12),t&2){let e=p(2);g("src",e.vimeoSrc)("autoplay",e.isAutoPlay)("loadingAttr",e.config.loadingAttr)("pause",e.currIndex!==e.index)}}function qW(t,n){if(t&1&&A(0,"gallery-iframe",13),t&2){let e=p(2);g("src",e.data.src)("loadingAttr",e.config.loadingAttr)}}function QW(t,n){t&1&&gi(0)}function ZW(t,n){if(t&1&&(d(0,"div",9),T(1,QW,1,0,"ng-container",10),h()),t&2){let e=p(3);f(),g("ngTemplateOutlet",e.config.itemTemplate)("ngTemplateOutletContext",e.itemContext)}}function KW(t,n){if(t&1&&(At(0),T(1,ZW,2,2,"div",8),Rt()),t&2){let e=p(2);f(),g("ngIf",e.config.itemTemplate)}}function JW(t,n){if(t&1&&(At(0,1),T(1,YW,3,7,"ng-container",2)(2,zW,1,8,"gallery-video",3)(3,WW,1,4,"gallery-iframe",4)(4,GW,1,4,"gallery-iframe",4)(5,qW,1,2,"gallery-iframe",5)(6,KW,2,1,"ng-container",6),Rt()),t&2){let e=p();g("ngSwitch",e.type),f(),g("ngSwitchCase",e.Types.Image),f(),g("ngSwitchCase",e.Types.Video),f(),g("ngSwitchCase",e.Types.Youtube),f(),g("ngSwitchCase",e.Types.Vimeo),f(),g("ngSwitchCase",e.Types.Iframe)}}var pk=["slider"],XW=["*"];function e5(t,n){if(t&1){let e=N();d(0,"gallery-item",5),D("activeIndexChange",function(r){C(e);let o=p();return w(o.onActiveIndexChange(r))})("click",function(){let r=C(e).index,o=p();return w(o.itemClick.emit(r))})("error",function(r){let o=C(e).index,s=p();return w(s.error.emit({itemIndex:o,error:r}))}),h()}if(t&2){let e=n.$implicit,i=n.index,r=p();g("type",e.type)("config",r.config)("data",e.data)("currIndex",r.state.currIndex)("index",i)("count",r.state.items.length)("itemIntersectionObserverDisabled",r.isScrolling||r.isSliding||r.isResizing)("adapter",r.adapter),J("galleryId",r.galleryId)}}function t5(t,n){t&1&&(d(0,"div",6)(1,"div",7),v(2,"RESIZING"),h(),d(3,"div",8),v(4,"SCROLLING"),h(),d(5,"div",9),v(6,"SLIDING"),h()())}function n5(t,n){t&1&&gi(0)}function i5(t,n){if(t&1&&(d(0,"div",2),T(1,n5,1,0,"ng-container",3),h()),t&2){let e=p();f(),g("ngTemplateOutlet",e.config.thumbTemplate)("ngTemplateOutletContext",e.imageContext)}}function r5(t,n){if(t&1){let e=N();d(0,"gallery-thumb",4),D("click",function(){let r=C(e).index,o=p();return w(o.config.disableThumbs?null:o.thumbClick.emit(r))})("error",function(r){let o=C(e).index,s=p();return w(s.error.emit({itemIndex:o,error:r}))}),h()}if(t&2){let e=n.$implicit,i=n.index,r=p();g("type",e.type)("config",r.config)("data",e.data)("currIndex",r.state.currIndex)("index",i)("count",r.state.items.length),J("galleryId",r.galleryId)}}var o5=(t,n)=>({state:t,config:n});function s5(t,n){if(t&1){let e=N();d(0,"gallery-thumbs",7),D("thumbClick",function(r){C(e);let o=p();return w(o.thumbClick.emit(r))})("error",function(r){C(e);let o=p();return w(o.error.emit(r))}),h()}if(t&2){let e=p();g("state",e.state)("config",e.config)("galleryId",e.galleryId)}}function a5(t,n){if(t&1&&A(0,"gallery-nav",8),t&2){let e=p();g("state",e.state)("config",e.config)("galleryId",e.galleryId)}}function l5(t,n){if(t&1&&A(0,"gallery-bullets",8),t&2){let e=p();g("state",e.state)("config",e.config)("galleryId",e.galleryId)}}function c5(t,n){if(t&1&&A(0,"gallery-counter",9),t&2){let e=p();g("state",e.state)}}function u5(t,n){t&1&&gi(0)}var si=function(t){return t.INITIALIZED="initialized",t.ITEMS_CHANGED="itemsChanged",t.INDEX_CHANGED="indexChanged",t.PLAY="play",t.STOP="stop",t}(si||{}),xC=function(t){return t.Cover="cover",t.Contain="contain",t}(xC||{}),Mm=function(t){return t.Preload="preload",t.Lazy="lazy",t.Default="default",t}(Mm||{}),mk=function(t){return t.Eager="eager",t.Lazy="lazy",t}(mk||{}),Jl=function(t){return t.Top="top",t.Left="left",t.Right="right",t.Bottom="bottom",t}(Jl||{}),gk=function(t){return t.Top="top",t.Bottom="bottom",t}(gk||{}),_k=function(t){return t.Top="top",t.Bottom="bottom",t}(_k||{}),sd=function(t){return t.Horizontal="horizontal",t.Vertical="vertical",t}(sd||{}),Ri=function(t){return t.Image="image",t.Video="video",t.Youtube="youtube",t.Vimeo="vimeo",t.Iframe="iframe",t}(Ri||{}),dk={action:si.INITIALIZED,isPlaying:!1,hasNext:!1,hasPrev:!1,currIndex:0,items:[]},hk={nav:!0,loop:!1,bullets:!1,thumbs:!1,debug:!1,bulletSize:6,counter:!1,autoplay:!1,thumbWidth:120,thumbHeight:90,disableBullets:!1,disableThumbs:!1,disableScroll:!1,disableThumbScroll:!1,disableMouseScroll:!1,disableThumbMouseScroll:!1,autoplayInterval:3e3,scrollDuration:468,scrollEase:{x1:.42,y1:0,x2:.58,y2:1},thumbCentralized:!1,thumbAutosize:!1,itemAutosize:!1,autoHeight:!1,scrollBehavior:"smooth",resizeDebounceTime:0,loadingAttr:mk.Lazy,imageSize:xC.Contain,thumbImageSize:xC.Cover,bulletPosition:gk.Bottom,counterPosition:_k.Top,thumbPosition:Jl.Bottom,loadingStrategy:Mm.Preload,orientation:sd.Horizontal,navIcon:'',loadingIcon:''},ad=class{constructor(n){this.data=n,this.type=Ri.Image}},kC=class{constructor(n){this.data=n,this.type=Ri.Video}},AC=class{constructor(n){this.data=n,this.type=Ri.Iframe}},RC=class{constructor(n){this.data=W(E({},n),{src:`https://youtube.com/embed/${n.src}`,thumb:n.thumb?n.thumb:`//img.youtube.com/vi/${n.src}/default.jpg`}),this.type=Ri.Youtube}},OC=class{constructor(n){this.data=W(E({},n),{src:`https://player.vimeo.com/video/${n.src}`,thumb:n.thumb?n.thumb:this.getVimeoThumb(n.src)}),this.type=Ri.Vimeo}getVimeoThumb(n){return`//vumbnail.com/${n}.jpg`}},wm=t=>le(n=>t.indexOf(n.action)>-1),PC=class{get stateSnapshot(){return this._state.value}get configSnapshot(){return this._config.value}get initialized(){return this.state.pipe(wm([si.INITIALIZED]))}get itemsChanged(){return this.state.pipe(wm([si.ITEMS_CHANGED]))}get indexChanged(){return this.state.pipe(wm([si.INDEX_CHANGED]))}get playingChanged(){return this.state.pipe(wm([si.PLAY,si.STOP]))}constructor(n,e){this.deleteInstance=e,this.itemClick=new X,this.thumbClick=new X,this.error=new X,this._state=new Pe(dk),this._config=new Pe(n),this.state=this._state.asObservable(),this.config=this._config.asObservable()}setState(n){this._state.next(E(E({},this.stateSnapshot),n))}setConfig(n){this._config.next(E(E({},this._config.value),n))}add(n,e){let i=[...this.stateSnapshot.items,n];this.setState({action:si.ITEMS_CHANGED,items:i,hasNext:i.length>1,currIndex:e?i.length-1:this.stateSnapshot.currIndex})}addImage(n,e){this.add(new ad(n),e)}addVideo(n,e){this.add(new kC(n),e)}addIframe(n,e){this.add(new AC(n),e)}addYoutube(n,e){this.add(new RC(n),e)}addVimeo(n,e){this.add(new OC(n),e)}remove(n){let e=this.stateSnapshot,i=[...e.items.slice(0,n),...e.items.slice(n+1,e.items.length)];this.setState({action:si.ITEMS_CHANGED,currIndex:n<1?e.currIndex:n-1,items:i,hasNext:i.length>1,hasPrev:n>0})}load(n){n&&this.setState({action:si.ITEMS_CHANGED,items:n,hasNext:n.length>1,hasPrev:!1})}set(n,e=this._config.value.scrollBehavior){if(n<0||n>=this.stateSnapshot.items.length){console.error(`[NgGallery]: Unable to set the active item because the given index (${n}) is outside the items range!`);return}n!==this.stateSnapshot.currIndex&&this.setState({behavior:e,action:si.INDEX_CHANGED,currIndex:n,hasNext:n0})}next(n=this._config.value.scrollBehavior,e=!0){this.stateSnapshot.hasNext?this.set(this.stateSnapshot.currIndex+1,n):e&&this._config.value.loop&&this.set(0,n)}prev(n=this._config.value.scrollBehavior,e=!0){this.stateSnapshot.hasPrev?this.set(this.stateSnapshot.currIndex-1,n):e&&this._config.value.loop&&this.set(this.stateSnapshot.items.length-1,n)}play(n){n&&this.setConfig({autoplayInterval:n}),this.setState({action:si.PLAY,behavior:"auto",isPlaying:!0})}stop(){this.setState({action:si.STOP,isPlaying:!1})}reset(){this.setState(dk)}destroy(){this._state.complete(),this._config.complete(),this.itemClick.complete(),this.thumbClick.complete(),this.deleteInstance()}},d5=new B("GALLERY_CONFIG"),Xl=(()=>{class t{constructor(e){this._instances=new Map,this.config=e?E(E({},hk),e):hk}ref(e="root",i){if(this._instances.has(e)){let r=this._instances.get(e);return i&&r.setConfig(i),r}else return this._instances.set(e,new PC(E(E({},this.config),i),this.deleteInstance(e))).get(e)}destroyAll(){this._instances.forEach(e=>e.destroy())}resetAll(){this._instances.forEach(e=>e.reset())}debugConsole(...e){this.config.debug&&console.log(...e)}deleteInstance(e){return()=>{this._instances.has(e)&&this._instances.delete(e)}}static{this.\u0275fac=function(i){return new(i||t)(F(d5,8))}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),h5=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-counter"]],inputs:{state:"state"},decls:2,vars:1,consts:[[1,"g-counter"]],template:function(i,r){i&1&&(d(0,"div",0),v(1),h()),i&2&&(f(),U(r.state.currIndex+1+" / "+r.state.items.length))},styles:[".g-counter[_ngcontent-%COMP%]{font-weight:700;-webkit-user-select:none;user-select:none;opacity:.6;transition:opacity linear .15s;z-index:50;position:absolute;left:50%;transform:translate(-50%) perspective(1px);font-size:12px;padding:4px 10px;color:var(--g-font-color);background-color:var(--g-overlay-color);box-shadow:var(--g-box-shadow);top:var(--counter-top);bottom:var(--counter-bottom);border-radius:var(--counter-border-radius)}.g-counter[_ngcontent-%COMP%]:hover{opacity:.8}"],changeDetection:0})}}return t})(),f5=(()=>{class t{constructor(e){this.gallery=e}static{this.\u0275fac=function(i){return new(i||t)(y(Xl))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-bullets"]],inputs:{galleryId:"galleryId",state:"state",config:"config"},decls:1,vars:1,consts:[["class","g-bullet",3,"g-bullet-active","width","height","click",4,"ngFor","ngForOf"],[1,"g-bullet",3,"click"],[1,"g-bullet-inner"]],template:function(i,r){i&1&&T(0,CW,2,6,"div",0),i&2&&g("ngForOf",r.state.items)},dependencies:[ot,rt],styles:["[_nghost-%COMP%]{position:absolute;left:50%;z-index:99;transform:translate(-50%);display:flex;gap:6px;top:var(--bullets-top);bottom:var(--bullets-bottom)}[_nghost-%COMP%], .g-bullet[_ngcontent-%COMP%], .g-bullet-inner[_ngcontent-%COMP%]{display:flex;justify-content:center;align-items:center}.g-bullet[_ngcontent-%COMP%]{cursor:var(--bullets-cursor);z-index:20}.g-bullet[_ngcontent-%COMP%]:hover .g-bullet-inner[_ngcontent-%COMP%]{opacity:var(--bullets-hover-opacity)}.g-bullet-active[_ngcontent-%COMP%] .g-bullet-inner[_ngcontent-%COMP%]{opacity:var(--bullets-active-opacity)}.g-bullet-inner[_ngcontent-%COMP%]{background-color:var(--g-overlay-color);opacity:var(--bullets-opacity);width:100%;height:100%;border-radius:50%;transition:opacity linear .15s}"],changeDetection:0})}}return t})(),p5=(()=>{class t{constructor(e,i,r){this.gallery=e,this._sanitizer=i,this.dir=r}ngOnInit(){this.navIcon=this._sanitizer.bypassSecurityTrustHtml(this.config.navIcon)}rightButton(){}leftButton(){}static{this.\u0275fac=function(i){return new(i||t)(y(Xl),y(Kr),y(Kl))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-nav"]],inputs:{id:[0,"galleryId","id"],state:"state",config:"config"},decls:2,vars:2,consts:[["class","g-nav-prev","aria-label","Previous","role","button",3,"innerHtml","click",4,"ngIf"],["class","g-nav-next","aria-label","Next","role","button",3,"innerHtml","click",4,"ngIf"],["aria-label","Previous","role","button",1,"g-nav-prev",3,"click","innerHtml"],["aria-label","Next","role","button",1,"g-nav-next",3,"click","innerHtml"]],template:function(i,r){i&1&&T(0,wW,1,1,"i",0)(1,DW,1,1,"i",1),i&2&&(g("ngIf",r.config.loop||r.state.hasPrev),f(),g("ngIf",r.config.loop||r.state.hasNext))},dependencies:[ot,De],styles:[".g-nav-next[_ngcontent-%COMP%], .g-nav-prev[_ngcontent-%COMP%]{position:absolute;top:50%;display:flex;padding:16px 8px;cursor:pointer;z-index:999;opacity:.6;transition:opacity linear .15s,right linear .15s,left linear .15s}.g-nav-next[_ngcontent-%COMP%]:hover, .g-nav-prev[_ngcontent-%COMP%]:hover{opacity:1}.g-nav-next[_ngcontent-%COMP%] svg, .g-nav-prev[_ngcontent-%COMP%] svg{filter:var(--g-nav-drop-shadow);width:28px;height:28px;fill:#fff}.g-nav-next[_ngcontent-%COMP%]{left:var(--nav-next-left);right:var(--nav-next-right);transform:var(--nav-next-transform)}.g-nav-next[_ngcontent-%COMP%]:hover{left:var(--nav-next-hover-left);right:var(--nav-next-hover-right)}.g-nav-prev[_ngcontent-%COMP%]{left:var(--nav-prev-left);right:var(--nav-prev-right);transform:var(--nav-prev-transform)}.g-nav-prev[_ngcontent-%COMP%]:hover{left:var(--nav-prev-hover-left);right:var(--nav-prev-hover-right)}"],changeDetection:0})}}return t})(),m5=2,g5=4,_5=8,y5=16,Sm=class{get scrollValue(){return this.slider.scrollLeft}get clientSize(){return this.slider.clientWidth}get isContentLessThanContainer(){return this.clientSize>=this.slider.firstElementChild.clientWidth}constructor(n,e){this.slider=n,this.config=e,this.hammerDirection=m5|g5,this.scrollSnapType="x mandatory"}getScrollToValue(n,e){let i=n.offsetLeft-(this.clientSize-n.clientWidth)/2;return{behavior:e,start:i}}getRootMargin(){return"1000px 1px 1000px 1px"}getElementRootMargin(n,e){let i=-1*((n.clientWidth-e.clientWidth)/2)+1;return`0px ${i}px 0px ${i}px`}getCentralizerStartSize(){return this.isContentLessThanContainer?(this.clientSize-this.slider.firstElementChild.clientWidth)/2:this.clientSize/2-this.slider.firstElementChild.firstElementChild?.clientWidth/2}getCentralizerEndSize(){return this.isContentLessThanContainer?(this.clientSize-this.slider.firstElementChild.clientWidth)/2:this.clientSize/2-this.slider.firstElementChild.lastElementChild?.clientWidth/2}getHammerVelocity(n){return n.velocityX}getHammerValue(n,e,i){return{behavior:i,left:n-e.deltaX}}},Em=class{get scrollValue(){return this.slider.scrollTop}get clientSize(){return this.slider.clientHeight}get isContentLessThanContainer(){return this.clientSize>=this.slider.firstElementChild.clientHeight}constructor(n,e){this.slider=n,this.config=e,this.hammerDirection=_5|y5,this.scrollSnapType="y mandatory"}getScrollToValue(n,e){let i=n.offsetTop-(this.clientSize-n.clientHeight)/2;return{behavior:e,top:i}}getRootMargin(){return"1px 1000px 1px 1000px"}getElementRootMargin(n,e){let i=-1*((n.clientHeight-e.clientHeight)/2)+1;return`${i}px 0px ${i}px 0px`}getCentralizerStartSize(){return this.isContentLessThanContainer?(this.clientSize-this.slider.firstElementChild.clientHeight)/2:this.clientSize/2-this.slider.firstElementChild.firstElementChild?.clientHeight/2}getCentralizerEndSize(){return this.isContentLessThanContainer?(this.clientSize-this.slider.firstElementChild.clientHeight)/2:this.clientSize/2-this.slider.firstElementChild.lastElementChild?.clientHeight/2}getHammerVelocity(n){return n.velocityY}getHammerValue(n,e,i){return{behavior:i,top:n-e.deltaY}}};var v5=4,b5=.001,C5=1e-7,w5=10,od=11,Dm=1/(od-1),D5=typeof Float32Array=="function";function yk(t,n){return 1-3*n+3*t}function vk(t,n){return 3*n-6*t}function bk(t){return 3*t}function Tm(t,n,e){return((yk(n,e)*t+vk(n,e))*t+bk(n))*t}function Ck(t,n,e){return 3*yk(n,e)*t*t+2*vk(n,e)*t+bk(n)}function M5(t,n,e,i,r){let o,s,a=0;do s=n+(e-n)/2,o=Tm(s,i,r)-t,o>0?e=s:n=s;while(Math.abs(o)>C5&&++a=b5?S5(s,m,t,e):b===0?m:M5(s,a,a+Dm,t,e)}return function(a){return a===0?0:a===1?1:Tm(o(a),n,i)}}var wk=(()=>{class t{get _w(){return this._document.defaultView}get _now(){return this._w.performance?.now?.bind(this._w.performance)||Date.now}set smoothScroll(e){e&&this._zone.runOutsideAngular(()=>{this.scrollTo(e)})}constructor(e,i,r,o){this._document=e,this._zone=i,this._dir=r,this._scrollController=new X,this._finished=new X,this.isScrollingChange=new P,this._el=o.nativeElement}ngOnInit(){this._subscription=this._scrollController.pipe(vt(e=>(this._zone.run(()=>{this.isScrollingChange.emit(!0)}),this._el.classList.add("g-scrolling"),this._el.style.setProperty("--slider-scroll-snap-type","none"),Q(null).pipe(Ta(()=>this._step(e).pipe(o_(i=>this._isFinished(i)),hi(this._finished))),di(()=>this.resetElement()),hi(this._interrupted()))))).subscribe()}ngOnDestroy(){this._subscription?.unsubscribe(),this._scrollController.complete()}_scrollElement(e,i){this._el.scrollLeft=e,this._el.scrollTop=i}resetElement(){this._zone.run(()=>{this.isScrollingChange.emit(!1)}),this._el.classList.remove("g-scrolling"),this._isInterruptedByMouse||this._el.style.setProperty("--slider-scroll-snap-type",this.adapter.scrollSnapType),this._isInterruptedByMouse=!1}_isFinished(e){return e.currentX!==e.x||e.currentY!==e.y?!0:(this._finished.next(),!1)}_interrupted(){let e;return this.interruptOnMousemove&&typeof Hammer<"u"?(this._hammer=new Hammer(this._el,{inputClass:Hammer.MouseInput}),this._hammer.get("pan").set({direction:this.adapter.hammerDirection}),e=Ea(new ne(i=>(this._hammer.on("panstart",()=>{this._isInterruptedByMouse=!0,i.next(),i.complete()}),()=>{this._hammer.destroy()})),ui(this._el,"wheel",{passive:!0,capture:!0}),ui(this._el,"touchmove",{passive:!0,capture:!0}))):e=Ea(ui(this._el,"wheel",{passive:!0,capture:!0}),ui(this._el,"touchmove",{passive:!0,capture:!0})),e.pipe(yt(1))}_step(e){return new ne(i=>{let r=(this._now()-e.startTime)/e.duration;r=r>1?1:r;let o=e.easing(r);e.currentX=e.startX+(e.x-e.startX)*o,e.currentY=e.startY+(e.y-e.startY)*o,this._scrollElement(e.currentX,e.currentY),requestAnimationFrame(()=>{i.next(e),i.complete()})})}_applyScrollToOptions(e){e.duration||this._scrollElement(e.left,e.top);let i={scrollable:this._el,startTime:this._now(),startX:this._el.scrollLeft,startY:this._el.scrollTop,x:e.left==null?this._el.scrollLeft:~~e.left,y:e.top==null?this._el.scrollTop:~~e.top,duration:e.duration,easing:T5(e.easing.x1,e.easing.y1,e.easing.x2,e.easing.y2)};this._scrollController.next(i)}scrollTo(e){let i=this._dir.value==="rtl",r=IC(),o=W(E({},e),{left:e.left==null?i?e.end:e.start:e.left,right:e.right==null?i?e.start:e.end:e.right,duration:e.behavior==="smooth"?this.config.scrollDuration:0,easing:this.config.scrollEase});return o.bottom!=null&&(o.top=this._el.scrollHeight-this._el.clientHeight-o.bottom),i&&r!==Rr.NORMAL?(o.left!=null&&(o.right=this._el.scrollWidth-this._el.clientWidth-o.left),r===Rr.INVERTED?o.left=o.right:r===Rr.NEGATED&&(o.left=o.right?-o.right:o.right)):o.right!=null&&(o.left=this._el.scrollWidth-this._el.clientWidth-o.right),this._applyScrollToOptions(o)}static{this.\u0275fac=function(i){return new(i||t)(y(Ie),y(Me),y(bm),y($))}}static{this.\u0275dir=H({type:t,selectors:[["","smoothScroll",""]],inputs:{smoothScroll:"smoothScroll",adapter:"adapter",config:"config",interruptOnMousemove:[0,"smoothScrollInterruptOnMousemove","interruptOnMousemove"]},outputs:{isScrollingChange:"isScrollingChange"},features:[ce([bm])]})}}return t})(),Dk=(()=>{class t{get _viewport(){return this._el.nativeElement}constructor(e,i,r,o,s){this._document=e,this._el=i,this._dir=r,this._platform=o,this._zone=s,this.activeIndexChange=new P,this.isSlidingChange=new P}ngOnChanges(e){e.enabled&&e.enabled?.currentValue!==e.enabled?.previousValue&&(this.enabled?this._subscribe():this._unsubscribe()),!e.adapter?.firstChange&&e.adapter?.currentValue!==e.adapter?.previousValue&&(this.enabled?this._subscribe():this._unsubscribe())}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe(),!this._platform.ANDROID&&!this._platform.IOS&&typeof Hammer<"u"&&this._zone.runOutsideAngular(()=>{let e=this.adapter.hammerDirection;this._hammer=new Hammer(this._el.nativeElement,{inputClass:Hammer.MouseInput}),this._hammer.get("pan").set({direction:e});let i;this._hammer.on("panstart",()=>{this._zone.run(()=>{this.isSlidingChange.emit(!0)}),i=this.adapter.scrollValue,this._viewport.classList.add("g-sliding"),this._viewport.style.setProperty("--slider-scroll-snap-type","none")}),this._hammer.on("panmove",r=>this._viewport.scrollTo(this.adapter.getHammerValue(i,r,"auto"))),this._hammer.on("panend",r=>{this._document.onselectstart=null,this._viewport.classList.remove("g-sliding");let o=this.getIndexOnMouseUp(r);this._zone.run(()=>{this.isSlidingChange.emit(!1),this.activeIndexChange.emit(o)})})})}_unsubscribe(){this._hammer?.destroy()}getIndexOnMouseUp(e){let i=this.items[this.state.currIndex].nativeElement,r=this.getElementFromViewportCenter();if(r&&r!==i)return+r.getAttribute("galleryIndex");let o=this.adapter.getHammerVelocity(e);return Math.abs(o)>.3?this.config.orientation===sd.Horizontal?o>0?this._dir.value==="rtl"?this.state.currIndex+1:this.state.currIndex-1:this._dir.value==="rtl"?this.state.currIndex-1:this.state.currIndex+1:o>0?this.state.currIndex-1:this.state.currIndex+1:-1}getElementFromViewportCenter(){let e=this._viewport.getBoundingClientRect();return this._document.elementsFromPoint(e.x+e.width/2,e.y+e.height/2).find(r=>r.getAttribute("galleryId")===this.galleryId)}static{this.\u0275fac=function(i){return new(i||t)(y(Ie),y($),y(Kl),y(TC),y(Me))}}static{this.\u0275dir=H({type:t,selectors:[["","hammerSliding",""]],inputs:{enabled:[0,"hammerSliding","enabled"],galleryId:"galleryId",items:"items",adapter:"adapter",state:"state",config:"config"},outputs:{activeIndexChange:"activeIndexChange",isSlidingChange:"isSlidingChange"},features:[xe]})}}return t})(),Im=class{observe(n,e,i){return I5(n,e,i).pipe(G(r=>r.isIntersecting?(r.target.classList.add("g-item-highlight"),+r.target.getAttribute("galleryIndex")):(r.target.classList.remove("g-item-highlight"),-1)),le(r=>r!==-1))}};function I5(t,n,e){return new ne(i=>{let r=new IntersectionObserver(o=>i.next(o),{root:t,rootMargin:e,threshold:1});return n.forEach(o=>r.observe(o)),()=>{n.forEach(o=>r.unobserve(o)),r.disconnect()}}).pipe(ze(i=>i))}var x5=(()=>{class t{get _viewport(){return this._el.nativeElement}constructor(e,i){this._zone=e,this._el=i,this._sensor=new Im,this.activeIndexChange=new P}ngOnChanges(){this.config.itemAutosize||this.disabled?this._unsubscribe():this._subscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){if(this._unsubscribe(),this.adapter&&this.items?.length){let e=this.adapter.getRootMargin();this.config.debug&&this._viewport.style.setProperty("--intersection-margin",`"INTERSECTION(${e})"`),this._zone.runOutsideAngular(()=>{this._currentSubscription=this._sensor.observe(this._viewport,this.items.map(i=>i.nativeElement),e).subscribe(i=>{this._zone.run(()=>this.activeIndexChange.emit(i))})})}}_unsubscribe(){this._currentSubscription?.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(y(Me),y($))}}static{this.\u0275dir=H({type:t,selectors:[["","sliderIntersectionObserver",""]],inputs:{adapter:"adapter",items:"items",config:"config",disabled:[0,"sliderIntersectionObserverDisabled","disabled"]},outputs:{activeIndexChange:"activeIndexChange"},features:[xe]})}}return t})();function xm(t,n){return new ne(e=>{let i=new ResizeObserver(r=>e.next(r));return i.observe(t),n&&n(i),()=>i.disconnect()}).pipe(ze(e=>e))}var k5=(()=>{class t{set src(e){this.videoSrc=e,this.iframeSrc=this._sanitizer.bypassSecurityTrustResourceUrl(e)}set pauseVideo(e){if(this.iframe?.nativeElement&&e){let i=this.iframe.nativeElement;i.src=null,!this.autoplay&&this.videoSrc&&(this.iframeSrc=this._sanitizer.bypassSecurityTrustResourceUrl(this.videoSrc))}}constructor(e){this._sanitizer=e}static{this.\u0275fac=function(i){return new(i||t)(y(Kr))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-iframe"]],viewQuery:function(i,r){if(i&1&&Ot(MW,5),i&2){let o;Ge(o=qe())&&(r.iframe=o.first)}},inputs:{src:"src",pauseVideo:[0,"pause","pauseVideo"],autoplay:"autoplay",loadingAttr:"loadingAttr"},decls:3,vars:2,consts:[["default",""],["iframe",""],["allowfullscreen","","allow","","style","border:none",3,"src",4,"ngIf","ngIfElse"],["allowfullscreen","","allow","",2,"border","none",3,"src"],["allowfullscreen","",2,"border","none",3,"src"]],template:function(i,r){if(i&1&&T(0,SW,2,2,"iframe",2)(1,EW,2,2,"ng-template",null,0,Kn),i&2){let o=$t(2);g("ngIf",r.autoplay)("ngIfElse",o)}},dependencies:[De],encapsulation:2,changeDetection:0})}}return t})(),A5=(()=>{class t{constructor(){this.error=new P}set pauseVideo(e){if(this.video.nativeElement){let i=this.video.nativeElement;e&&!i.paused&&i.pause()}}set playVideo(e){if(this.video.nativeElement){let i=this.video.nativeElement;e&&i.play()}}ngOnInit(){this.src instanceof Array?this.videoSources=[...this.src]:this.videoSources=[{url:this.src}]}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-video"]],viewQuery:function(i,r){if(i&1&&Ot(TW,7),i&2){let o;Ge(o=qe())&&(r.video=o.first)}},inputs:{src:"src",poster:"poster",mute:"mute",loop:"loop",controls:"controls",controlsList:"controlsList",disableRemotePlayback:"disableRemotePlayback",disablePictureInPicture:"disablePictureInPicture",pauseVideo:[0,"pause","pauseVideo"],playVideo:[0,"play","playVideo"]},outputs:{error:"error"},decls:3,vars:8,consts:[["video",""],["noType",""],[3,"error","disableRemotePlayback","controls","loop","poster"],[4,"ngFor","ngForOf"],[3,"src","type",4,"ngIf","ngIfElse"],[3,"src","type"],[3,"src"]],template:function(i,r){if(i&1){let o=N();d(0,"video",2,0),D("error",function(a){return C(o),w(r.error.emit(a))}),T(2,kW,4,2,"ng-container",3),h()}i&2&&(g("disableRemotePlayback",r.disableRemotePlayback)("controls",r.controls)("loop",r.loop)("poster",r.poster,ft),J("mute",r.mute)("controlsList",r.controlsList)("disablePictureInPicture",r.disablePictureInPicture),f(2),g("ngForOf",r.videoSources))},dependencies:[rt,De],encapsulation:2,changeDetection:0})}}return t})(),R5=` - - - - - - - - -`,Am=(()=>{class t{constructor(){this.trigger$=new Pe(null),this.images=new Map}getActiveItem(e){return this.trigger$.pipe(vt(()=>e.pipe(vt(i=>{let r=this.images.get(i.currIndex);return r?r.state.pipe(le(o=>o!=="loading"),G(()=>r.target)):Mt}))))}addItem(e,i){this.images.set(e,i),this.trigger$.next()}deleteItem(e){this.images.has(e)&&(this.images.delete(e),this.trigger$.next())}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac})}}return t})(),O5=(()=>{class t{onLoad(){this.item.state$.next("success")}onError(){this.item.state$.next("failed")}constructor(e,i,r){if(this.el=e,this.manager=i,this.item=r,r)r.isItemContainImage=!0;else throw new Error("[NgGallery]: galleryImage directive should be only used inside gallery item templates!")}ngOnInit(){this.manager.addItem(this.index,{state:this.item.state$.asObservable(),target:this.el.nativeElement})}ngOnDestroy(){this.manager.deleteItem(this.index)}static{this.\u0275fac=function(i){return new(i||t)(y($),y(Am),y(km))}}static{this.\u0275dir=H({type:t,selectors:[["img","galleryImage",""]],hostBindings:function(i,r){i&1&&D("load",function(s){return r.onLoad(s)})("error",function(s){return r.onError(s)})},inputs:{index:[0,"galleryImage","index"]}})}}return t})(),Mk=(()=>{class t{get imageState(){return this.state}constructor(e){this._sanitizer=e,this.state="loading",this.errorIcon=R5,this.error=new P}ngOnInit(){this.loadingIcon&&(this.loaderTemplate=this._sanitizer.bypassSecurityTrustHtml(this.loadingIcon)),this.loadingError&&(this.errorTemplate=this._sanitizer.bypassSecurityTrustHtml(this.loadingError)),this.errorIcon&&(this.errorSvg=this._sanitizer.bypassSecurityTrustHtml(this.errorIcon))}static{this.\u0275fac=function(i){return new(i||t)(y(Kr))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-image"]],hostVars:1,hostBindings:function(i,r){i&2&&J("imageState",r.imageState)},inputs:{isThumbnail:"isThumbnail",index:"index",loadingAttr:"loadingAttr",alt:"alt",src:"src",loadingIcon:"loadingIcon",loadingError:"loadingError",errorIcon:"errorIcon"},outputs:{error:"error"},decls:6,vars:5,consts:[["main",""],["defaultError",""],["isLarge",""],["defaultLoader",""],[3,"ngSwitch"],[4,"ngIf","ngIfElse"],["class","g-image-error-message",4,"ngSwitchCase"],[4,"ngSwitchCase"],[1,"g-image-item",3,"load","error","src"],[1,"g-image-item",3,"load","error","galleryImage","src"],[1,"g-image-error-message"],[3,"innerHTML",4,"ngIf","ngIfElse"],[3,"innerHTML"],[1,"gallery-thumb-error",3,"innerHTML"],[1,"gallery-image-error",3,"innerHTML"],["class","g-loading",3,"innerHTML",4,"ngIf","ngIfElse"],[1,"g-loading",3,"innerHTML"],["class","g-thumb-loading",4,"ngIf"],[1,"g-thumb-loading"]],template:function(i,r){if(i&1&&(At(0,4),T(1,AW,2,6,"ng-container",5)(2,RW,1,7,"ng-template",null,0,Kn)(4,FW,4,2,"div",6)(5,BW,4,2,"ng-container",7),Rt()),i&2){let o=$t(3);g("ngSwitch",r.state),f(),g("ngIf",r.isThumbnail)("ngIfElse",o),f(3),g("ngSwitchCase","failed"),f(),g("ngSwitchCase","loading")}},dependencies:[bi,pr,De,O5],styles:['[_nghost-%COMP%]{display:flex;width:100%;height:100%;max-height:100%;max-width:100%;transition:opacity .3s cubic-bezier(.5,0,.5,1);opacity:var(--g-thumb-opacity)}[imageState=success][_nghost-%COMP%]{align-self:center}[_nghost-%COMP%] svg{width:100%;height:100%}.gallery-image-error[_ngcontent-%COMP%]{width:100px;height:100px}.gallery-thumb-error[_ngcontent-%COMP%]{width:40px;height:40px}img.g-image-item[_ngcontent-%COMP%]{object-fit:var(--image-object-fit);width:100%;height:100%;pointer-events:none;max-height:100%;max-width:100%}.g-image-error-message[_ngcontent-%COMP%]{position:absolute;z-index:10;inset:0;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column}h2[_ngcontent-%COMP%], h4[_ngcontent-%COMP%]{color:coral;margin:0}h2[_ngcontent-%COMP%]{font-size:3.5em;margin-bottom:.3em}h4[_ngcontent-%COMP%]{font-size:1.6em}.g-loading[_ngcontent-%COMP%]{position:absolute;transform:translate3d(-50%,-50%,0);left:50%;top:50%;width:80px;height:80px}.g-active-thumb[_ngcontent-%COMP%] .g-thumb-loading[_ngcontent-%COMP%]{background-color:#464646}.g-thumb-loading[_ngcontent-%COMP%]{position:relative;overflow:hidden;width:100%;height:100%;background-color:#262626}.g-thumb-loading[_ngcontent-%COMP%]:before{content:"";position:absolute;inset:0 0 0 50%;z-index:1;width:500%;margin-left:-250%;animation:_ngcontent-%COMP%_phAnimation .8s linear infinite;background:linear-gradient(to right,#fff0 46%,#ffffff59,#fff0 54%) 50% 50%}@keyframes _ngcontent-%COMP%_phAnimation{0%{transform:translate3d(-30%,0,0)}to{transform:translate3d(30%,0,0)}}'],data:{animation:[no("fadeIn",[ni("* => success",[bt({opacity:0}),Dn("300ms ease-in",bt({opacity:1}))])])]},changeDetection:0})}}return t})(),km=(()=>{class t{get isActive(){return this.index===this.currIndex}get isIndexAttr(){return this.index}get itemState(){return this.state$.value}get imageContext(){return{$implicit:this.imageData,index:this.index,type:this.type,active:this.isActive,count:this.count,first:this.index===0,last:this.index===this.count-1}}get itemContext(){return{$implicit:this.data,index:this.index,type:this.type,active:this.isActive,count:this.count,first:this.index===0,last:this.index===this.count-1}}get nativeElement(){return this.el.nativeElement}get isAutoPlay(){if(this.isActive&&(this.type===Ri.Video||this.type===Ri.Youtube||this.type===Ri.Vimeo))return this.videoData.autoplay}get youtubeSrc(){let e=0;this.isActive&&this.type===Ri.Youtube&&this.data.autoplay&&(e=1);let i=new URL(this.data.src);return i.search=new URLSearchParams(W(E({wmode:"transparent"},this.data.params),{autoplay:e})).toString(),i.href}get vimeoSrc(){let e=0;this.isActive&&this.type===Ri.Vimeo&&this.data.autoplay&&(e=1);let i=new URL(this.data.src);return i.search=new URLSearchParams(W(E({},this.data.params),{autoplay:e})).toString(),i.href}get load(){switch(this.config.loadingStrategy){case Mm.Preload:return!0;case Mm.Lazy:return this.currIndex===this.index;default:return this.currIndex===this.index||this.currIndex===this.index-1||this.currIndex===this.index+1}}get imageData(){return this.data}get videoData(){return this.data}constructor(e){this.el=e,this.Types=Ri,this.state$=new Pe("loading"),this.error=new P}ngAfterViewInit(){this.isItemContainImage||this.state$.next("success")}static{this.\u0275fac=function(i){return new(i||t)(y($))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-item"]],hostVars:4,hostBindings:function(i,r){i&2&&(J("galleryIndex",r.isIndexAttr)("itemState",r.itemState),j("g-active-item",r.isActive))},inputs:{config:"config",index:"index",count:"count",currIndex:"currIndex",type:"type",data:"data"},outputs:{error:"error"},decls:1,vars:1,consts:[[3,"ngSwitch",4,"ngIf"],[3,"ngSwitch"],[4,"ngSwitchCase"],[3,"src","mute","poster","controls","controlsList","disablePictureInPicture","play","pause","error",4,"ngSwitchCase"],[3,"src","autoplay","loadingAttr","pause",4,"ngSwitchCase"],[3,"src","loadingAttr",4,"ngSwitchCase"],[4,"ngSwitchDefault"],[3,"error","src","alt","index","loadingAttr","loadingIcon","loadingError"],["class","g-template g-item-template",4,"ngIf"],[1,"g-template","g-item-template"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"error","src","mute","poster","controls","controlsList","disablePictureInPicture","play","pause"],[3,"src","autoplay","loadingAttr","pause"],[3,"src","loadingAttr"]],template:function(i,r){i&1&&T(0,JW,7,6,"ng-container",0),i&2&&g("ngIf",r.load)},dependencies:[ot,De,Ts,bi,pr,Qv,Mk,A5,k5],styles:["[_nghost-%COMP%]{cursor:var(--g-item-cursor);height:var(--g-item-height);width:var(--g-item-width);max-height:var(--g-item-max-height);max-width:var(--slider-width);z-index:10;position:relative;overflow:hidden;display:flex;flex-direction:column;flex:0 0 auto;scroll-snap-align:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:rgba(0,0,0,0)}[itemState=loading][_nghost-%COMP%]{width:var(--slider-width);height:var(--slider-height)}[_nghost-%COMP%] > *[_ngcontent-%COMP%]{height:100%}[_nghost-%COMP%] video, [_nghost-%COMP%] iframe{width:100%;height:100%}gallery-image[_ngcontent-%COMP%]{width:var(--g-item-width);height:var(--g-item-height)}.g-template[_ngcontent-%COMP%]{position:absolute;z-index:10;inset:0;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column}"],changeDetection:0})}}return t})(),P5=(()=>{class t{get _viewport(){return this._item.nativeElement.parentElement.parentElement}constructor(e,i){this._zone=e,this._item=i,this._sensor=new Im,this.activeIndexChange=new P}ngOnChanges(){this.config.itemAutosize&&!this.disabled?this._subscribe():this._unsubscribe()}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe(),this.adapter&&this._zone.runOutsideAngular(()=>{this._currentSubscription=go([xm(this._viewport),xm(this._item.nativeElement)]).pipe(vt(()=>this._item.state$),le(e=>e!=="loading"),vt(()=>{let e=this.adapter.getElementRootMargin(this._viewport,this._item.nativeElement);return this.config.debug&&this._item.nativeElement.style.setProperty("--item-intersection-margin",`"VIEWPORT(${this._viewport.clientWidth}x${this._viewport.clientHeight}) ITEM(${this._item.nativeElement.clientWidth}x${this._item.nativeElement.clientHeight}) INTERSECTION(${e})"`),this._sensor.observe(this._viewport,[this._item.nativeElement],e)})).subscribe(e=>{this._zone.run(()=>this.activeIndexChange.emit(e))})})}_unsubscribe(){this._currentSubscription?.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(y(Me),y(km))}}static{this.\u0275dir=H({type:t,selectors:[["","itemIntersectionObserver",""]],inputs:{adapter:"adapter",config:"config",disabled:[0,"itemIntersectionObserverDisabled","disabled"]},outputs:{activeIndexChange:"activeIndexChange"},features:[xe]})}}return t})(),N5=(()=>{class t{get _viewport(){return this._el.nativeElement}get _galleryCore(){return this._el.nativeElement.parentElement.parentElement.parentElement}get _isAutoHeight(){return this.config.autoHeight&&!this.config.itemAutosize&&this.config.orientation==="horizontal"&&(this.config.thumbPosition==="top"||this.config.thumbPosition==="bottom")}constructor(e,i,r,o){this._el=e,this._zone=i,this._gallery=r,this._imgManager=o,this.isResizingChange=new P}ngOnInit(){let e=this._gallery.ref(this.galleryId),i=getComputedStyle(this._viewport).getPropertyValue("transition-duration");parseFloat(i)===0?this._afterHeightChanged$=Q(null):this._afterHeightChanged$=ui(this._viewport,"transitionend"),this._zone.runOutsideAngular(()=>{this._resizeSubscription=xm(this._viewport,r=>this._resizeObserver=r).pipe(le(()=>!this._shouldSkip||!(this._shouldSkip=!1)),ct(()=>this.setResizingState()),th(this.config.resizeDebounceTime,wa),ct(r=>me(this,null,function*(){if(this.updateSliderSize(),this._isAutoHeight){let o=yield Qd(this._imgManager.getActiveItem(e.state));o.height===this._viewport.clientHeight?this.resetResizingState():(this.setResizingState({unobserve:!0}),this._galleryCore.style.setProperty("--slider-height",`${o.height}px`),yield Qd(this._afterHeightChanged$),this.resetResizingState({shouldSkip:r.contentRect.height===this._viewport.clientHeight,observe:!0}))}else requestAnimationFrame(()=>this.resetResizingState({shouldSkip:!0}))}))).subscribe()})}ngOnChanges(){this._isAutoHeight?this._subscribeAutoHeight():this._unsubscribeAutoHeight()}ngOnDestroy(){this._resizeSubscription?.unsubscribe(),this._unsubscribeAutoHeight()}ngAfterViewChecked(){this.updateSliderSize()}updateSliderSize(){this._galleryCore.style.setProperty("--slider-width",`${this._viewport.clientWidth}px`),this.config.autoHeight||this._galleryCore.style.setProperty("--slider-height",`${this._viewport.clientHeight}px`),this.updateCentralizeCSSVariables()}updateCentralizeCSSVariables(){this.config.itemAutosize&&(this._galleryCore.style.setProperty("--slider-centralize-start-size",`${this.adapter.getCentralizerStartSize()}px`),this._galleryCore.style.setProperty("--slider-centralize-end-size",`${this.adapter.getCentralizerEndSize()}px`))}_subscribeAutoHeight(){this._unsubscribeAutoHeight(),this._shouldSkip=!1,this._zone.runOutsideAngular(()=>{let i=this._gallery.ref(this.galleryId).state.pipe(Vr((r,o)=>r.currIndex===o.currIndex));this._autoHeightSubscription=this._imgManager.getActiveItem(i).pipe(vt(r=>(this.setResizingState({unobserve:!0}),this._galleryCore.style.setProperty("--slider-height",`${r.clientHeight}px`),r.height===this._viewport.clientHeight?(this.resetResizingState({shouldSkip:!0,observe:!0}),Mt):this._afterHeightChanged$.pipe(ct(()=>this.resetResizingState({shouldSkip:!0,observe:!0})),yt(1))))).subscribe()})}_unsubscribeAutoHeight(){this._autoHeightSubscription?.unsubscribe()}setResizingState({unobserve:e}={}){this._zone.run(()=>{this.isResizingChange.emit(!0)}),this._viewport.classList.add("g-resizing"),e&&this._resizeObserver.unobserve(this._viewport)}resetResizingState({shouldSkip:e,observe:i}={}){this._zone.run(()=>{this.isResizingChange.emit(!1)}),this._viewport.classList.remove("g-resizing"),this._shouldSkip=e,i&&this._resizeObserver.observe(this._viewport)}static{this.\u0275fac=function(i){return new(i||t)(y($),y(Me),y(Xl),y(Am))}}static{this.\u0275dir=H({type:t,selectors:[["","sliderResizeObserver",""]],inputs:{galleryId:"galleryId",adapter:"adapter",config:"config"},outputs:{isResizingChange:"isResizingChange"},features:[xe]})}}return t})(),L5=(()=>{class t{get slider(){return this.sliderEl.nativeElement}constructor(e){this._gallery=e,this.position$=new X,this.itemClick=new P,this.error=new P,this.items=new Ha}ngOnChanges(e){if(e.config){if(e.config.currentValue?.orientation!==e.config.previousValue?.orientation)switch(this.config.orientation){case sd.Horizontal:this.adapter=new Sm(this.slider,this.config);break;case sd.Vertical:this.adapter=new Em(this.slider,this.config);break}e.config.firstChange||requestAnimationFrame(()=>{this.scrollToIndex(this.state.currIndex,"auto")})}e.state&&e.state.currentValue?.currIndex!==e.state.previousValue?.currIndex&&requestAnimationFrame(()=>{this.scrollToIndex(this.state.currIndex,e.state.firstChange?"auto":this.state.behavior)})}ngAfterViewInit(){this.items.notifyOnChanges(),this.items$=this.items.changes.pipe(ds(null),G(()=>this.items.toArray()))}trackByFn(e,i){return i.type}onActiveIndexChange(e){e===-1?this.scrollToIndex(this.state.currIndex,"smooth"):this._gallery.ref(this.galleryId).set(e,"smooth")}scrollToIndex(e,i){let r=this.items.get(e)?.nativeElement;if(r){let o=this.adapter.getScrollToValue(r,i||this.config.scrollBehavior);this.position$.next(o)}}static{this.\u0275fac=function(i){return new(i||t)(y(Xl))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-slider"]],viewQuery:function(i,r){if(i&1&&(Ot(pk,7),Ot(km,5)),i&2){let o;Ge(o=qe())&&(r.sliderEl=o.first),Ge(o=qe())&&(r.items=o)}},inputs:{galleryId:"galleryId",state:"state",config:"config"},outputs:{itemClick:"itemClick",error:"error"},features:[xe],ngContentSelectors:XW,decls:8,vars:17,consts:[["slider",""],["sliderIntersectionObserver","","sliderResizeObserver","",1,"g-slider",3,"isScrollingChange","isSlidingChange","activeIndexChange","isResizingChange","smoothScroll","smoothScrollInterruptOnMousemove","sliderIntersectionObserverDisabled","hammerSliding","adapter","items","config","state","galleryId"],[1,"g-slider-content"],["itemIntersectionObserver","",3,"type","config","data","currIndex","index","count","itemIntersectionObserverDisabled","adapter","activeIndexChange","click","error",4,"ngFor","ngForOf","ngForTrackBy"],["class","g-slider-debug",4,"ngIf"],["itemIntersectionObserver","",3,"activeIndexChange","click","error","type","config","data","currIndex","index","count","itemIntersectionObserverDisabled","adapter"],[1,"g-slider-debug"],[1,"g-slider-resizing"],[1,"g-slider-scrolling"],[1,"g-slider-sliding"]],template:function(i,r){if(i&1){let o=N();Pn(),d(0,"div",1,0),te(2,"async"),te(3,"async"),D("isScrollingChange",function(a){return C(o),w(r.isScrolling=a)})("isSlidingChange",function(a){return C(o),w(r.isSliding=a)})("activeIndexChange",function(a){return C(o),w(r.onActiveIndexChange(a))})("isResizingChange",function(a){return C(o),w(r.isResizing=a)}),d(4,"div",2),T(5,e5,1,9,"gallery-item",3),h(),T(6,t5,7,0,"div",4),h(),Cn(7)}i&2&&(g("smoothScroll",pe(2,13,r.position$))("smoothScrollInterruptOnMousemove",!r.config.disableMouseScroll)("sliderIntersectionObserverDisabled",r.isScrolling||r.isSliding||r.isResizing)("hammerSliding",!r.config.disableMouseScroll)("adapter",r.adapter)("items",pe(3,15,r.items$))("config",r.config)("state",r.state)("galleryId",r.galleryId),J("centralised",r.config.itemAutosize),f(5),g("ngForOf",r.state.items)("ngForTrackBy",r.trackByFn),f(),g("ngIf",r.config.debug))},dependencies:[ot,rt,De,mr,km,wk,Dk,x5,P5,N5],styles:['[_nghost-%COMP%]{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;order:1;flex:1}.g-slider[_ngcontent-%COMP%]{display:flex;align-items:center;transition:var(--g-height-transition);min-height:100%;min-width:100%;max-height:100%;max-width:100%;height:var(--slider-height, 100%);width:var(--slider-width, 100%);overflow:var(--slider-overflow);scroll-snap-type:var(--slider-scroll-snap-type);flex-direction:var(--slider-flex-direction);scrollbar-width:none}.g-slider[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.g-slider.g-sliding[_ngcontent-%COMP%] .g-slider-content[_ngcontent-%COMP%], .g-slider.g-scrolling[_ngcontent-%COMP%] .g-slider-content[_ngcontent-%COMP%]{pointer-events:none}.g-slider[centralised=true][_ngcontent-%COMP%]:before, .g-slider[centralised=true][_ngcontent-%COMP%]:after{content:""}.g-slider[centralised=true][_ngcontent-%COMP%]:before{flex:0 0 var(--slider-centralize-start-size)}.g-slider[centralised=true][_ngcontent-%COMP%]:after{flex:0 0 var(--slider-centralize-end-size)}.g-slider-content[_ngcontent-%COMP%]{flex:0 0 auto;display:flex;align-items:center;gap:1px;width:var(--slider-content-width, unset);height:var(--slider-content-height, unset);flex-direction:var(--slider-flex-direction)}'],changeDetection:0})}}return t})(),fk=(()=>{class t{get isActive(){return this.index===this.currIndex}get isIndexAttr(){return this.index}get imageContext(){return{$implicit:this.data,index:this.index,type:this.type,active:this.isActive,count:this.count,first:this.index===0,last:this.index===this.count-1}}get nativeElement(){return this.el.nativeElement}constructor(e){this.el=e,this.error=new P}static{this.\u0275fac=function(i){return new(i||t)(y($))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-thumb"]],hostVars:3,hostBindings:function(i,r){i&2&&(J("galleryIndex",r.isIndexAttr),j("g-active-thumb",r.isActive))},inputs:{config:"config",index:"index",count:"count",currIndex:"currIndex",type:"type",data:"data"},outputs:{error:"error"},decls:2,vars:6,consts:[[3,"error","src","alt","isThumbnail","loadingIcon","loadingError"],["class","g-template g-thumb-template",4,"ngIf"],[1,"g-template","g-thumb-template"],[4,"ngTemplateOutlet","ngTemplateOutletContext"]],template:function(i,r){i&1&&(d(0,"gallery-image",0),D("error",function(s){return r.error.emit(s)}),h(),T(1,i5,2,2,"div",1)),i&2&&(g("src",r.data.thumb)("alt",r.data.alt+"-thumbnail")("isThumbnail",!0)("loadingIcon",r.config.thumbLoadingIcon)("loadingError",r.config.thumbLoadingError),f(),g("ngIf",r.config.thumbTemplate))},dependencies:[ot,De,Ts,Mk],styles:["[_nghost-%COMP%]{cursor:var(--g-thumb-cursor);height:var(--g-thumb-height);width:var(--g-thumb-width);max-height:var(--g-thumb-height);max-width:var(--g-thumb-width);align-self:center;background:#000;position:relative;display:flex;overflow:hidden;flex-direction:column;flex:0 0 auto;scroll-snap-align:center;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;-webkit-tap-highlight-color:rgba(0,0,0,0);--g-thumb-opacity: .5}.g-active-thumb[_nghost-%COMP%]{--g-thumb-opacity: 1}.g-template[_ngcontent-%COMP%]{position:absolute;z-index:10;inset:0;color:#fff;display:flex;align-items:center;justify-content:center;flex-direction:column}"],changeDetection:0})}}return t})(),F5=(()=>{class t{get _viewport(){return this._el.nativeElement}constructor(e,i){this._el=e,this._zone=i,this.resized=new P}ngOnInit(){this._zone.runOutsideAngular(()=>{this._resizeSubscription=xm(this._viewport).pipe(th(this.config.resizeDebounceTime,wa),ct(()=>{this.updateSliderSize(),this.resized.emit()})).subscribe()})}ngOnChanges(e){e.config.firstChange||this.updateSliderSize()}ngOnDestroy(){this._resizeSubscription?.unsubscribe()}updateSliderSize(){this._viewport.style.setProperty("--thumb-centralize-start-size",this.adapter.getCentralizerStartSize()+"px"),this._viewport.style.setProperty("--thumb-centralize-end-size",this.adapter.getCentralizerEndSize()+"px")}static{this.\u0275fac=function(i){return new(i||t)(y($),y(Me))}}static{this.\u0275dir=H({type:t,selectors:[["","thumbResizeObserver",""]],inputs:{config:"config",adapter:"adapter"},outputs:{resized:"thumbResizeObserver"},features:[xe]})}}return t})(),V5=(()=>{class t{constructor(){this.position$=new X,this.thumbClick=new P,this.error=new P,this.items=new Ha}get slider(){return this.sliderEl.nativeElement}ngOnChanges(e){if(e.config&&e.config.currentValue?.thumbPosition!==e.config.previousValue?.thumbPosition){switch(this.config.thumbPosition){case Jl.Right:case Jl.Left:this.adapter=new Em(this.slider,this.config);break;case Jl.Top:case Jl.Bottom:this.adapter=new Sm(this.slider,this.config);break}e.config.firstChange||requestAnimationFrame(()=>{this.scrollToIndex(this.state.currIndex,"auto")})}e.state&&(e.state.firstChange||!this.config.detachThumbs)&&e.state.currentValue?.currIndex!==e.state.previousValue?.currIndex&&requestAnimationFrame(()=>{this.scrollToIndex(this.state.currIndex,e.state?.firstChange?"auto":"smooth")})}ngAfterViewInit(){this.items.notifyOnChanges(),this.items$=this.items.changes.pipe(ds(null),G(()=>this.items.toArray()))}trackByFn(e,i){return i.type}onActiveIndexChange(e){e===-1?this.scrollToIndex(this.state.currIndex,"smooth"):this.scrollToIndex(e,"smooth")}scrollToIndex(e,i){let r=this.items.get(e)?.nativeElement;if(r){let o=this.adapter.getScrollToValue(r,i);this.position$.next(o)}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-thumbs"]],viewQuery:function(i,r){if(i&1&&(Ot(pk,7),Ot(fk,5)),i&2){let o;Ge(o=qe())&&(r.sliderEl=o.first),Ge(o=qe())&&(r.items=o)}},inputs:{galleryId:"galleryId",state:"state",config:"config"},outputs:{thumbClick:"thumbClick",error:"error"},features:[xe],decls:6,vars:15,consts:[["slider",""],[1,"g-slider",3,"thumbResizeObserver","activeIndexChange","smoothScroll","smoothScrollInterruptOnMousemove","hammerSliding","galleryId","items","state","config","adapter"],[1,"g-slider-content"],[3,"type","config","data","currIndex","index","count","click","error",4,"ngFor","ngForOf","ngForTrackBy"],[3,"click","error","type","config","data","currIndex","index","count"]],template:function(i,r){if(i&1){let o=N();d(0,"div",1,0),te(2,"async"),te(3,"async"),D("thumbResizeObserver",function(){return C(o),w(r.scrollToIndex(r.state.currIndex,"auto"))})("activeIndexChange",function(a){return C(o),w(r.onActiveIndexChange(a))}),d(4,"div",2),T(5,r5,1,7,"gallery-thumb",3),h()()}i&2&&(g("smoothScroll",pe(2,11,r.position$))("smoothScrollInterruptOnMousemove",!r.config.disableThumbMouseScroll)("hammerSliding",!r.config.disableThumbMouseScroll)("galleryId",r.galleryId)("items",pe(3,13,r.items$))("state",r.state)("config",r.config)("adapter",r.adapter),J("centralised",r.config.thumbCentralized||r.adapter.isContentLessThanContainer),f(5),g("ngForOf",r.state.items)("ngForTrackBy",r.trackByFn))},dependencies:[ot,rt,mr,fk,wk,Dk,F5],styles:['[_nghost-%COMP%]{max-height:100%;max-width:100%;display:block;z-index:100}.g-slider[_ngcontent-%COMP%]{display:flex;align-items:center;transition:var(--g-height-transition);max-height:100%;min-width:100%;height:var(--thumb-slider-height);width:var(--thumb-slider-width);top:var(--thumb-slider-top);left:var(--thumb-slider-left);overflow:var(--thumb-slider-overflow);scroll-snap-type:var(--slider-scroll-snap-type);flex-direction:var(--thumb-slider-flex-direction);scrollbar-width:none}.g-slider[_ngcontent-%COMP%]::-webkit-scrollbar{display:none}.g-slider.g-sliding[_ngcontent-%COMP%] .g-slider-content[_ngcontent-%COMP%]{pointer-events:none}.g-slider[centralised=true][_ngcontent-%COMP%]:before, .g-slider[centralised=true][_ngcontent-%COMP%]:after{content:""}.g-slider[centralised=true][_ngcontent-%COMP%]:before{flex:0 0 var(--thumb-centralize-start-size)}.g-slider[centralised=true][_ngcontent-%COMP%]:after{flex:0 0 var(--thumb-centralize-end-size)}.g-slider-content[_ngcontent-%COMP%]{flex:0 0 auto;display:flex;flex-direction:var(--thumb-slider-flex-direction);align-items:center;gap:1px}'],changeDetection:0})}}return t})(),j5=(()=>{class t{get thumbPosition(){return this.config.thumbPosition}get orientation(){return this.config.orientation}get disableThumb(){return this.config.disableThumbs}get bulletDisabled(){return this.config.disableBullets}get bulletPosition(){return this.config.bulletPosition}get imageSize(){return this.config.imageSize}get thumbImageSize(){return this.config.thumbImageSize}get counterPosition(){return this.config.counterPosition}get scrollDisabled(){return this.config.disableScroll}get thumbScrollDisabled(){return this.config.disableThumbScroll}get itemAutosize(){return this.config.itemAutosize}get autoHeight(){return this.config.autoHeight}get thumbAutosize(){return this.config.thumbAutosize}get direction(){return this.dir.value}get debug(){return this.config.debug}constructor(e,i){this.el=e,this.dir=i,this.itemClick=new P,this.thumbClick=new P,this.error=new P}ngOnChanges(e){e.config&&(e.config.currentValue?.thumbWidth!==e.config.previousValue?.thumbWidth&&this.el.nativeElement.style.setProperty("--g-thumb-width",vm(e.config.currentValue.thumbWidth)),e.config.currentValue?.thumbHeight!==e.config.previousValue?.thumbHeight&&this.el.nativeElement.style.setProperty("--g-thumb-height",vm(e.config.currentValue.thumbHeight)))}static{this.\u0275fac=function(i){return new(i||t)(y($),y(Kl))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery-core"]],hostVars:15,hostBindings:function(i,r){i&2&&J("thumbPosition",r.thumbPosition)("orientation",r.orientation)("thumbDisabled",r.disableThumb)("bulletDisabled",r.bulletDisabled)("bulletPosition",r.bulletPosition)("imageSize",r.imageSize)("thumbImageSize",r.thumbImageSize)("counterPosition",r.counterPosition)("scrollDisabled",r.scrollDisabled)("thumbScrollDisabled",r.thumbScrollDisabled)("itemAutosize",r.itemAutosize)("autoHeight",r.autoHeight)("thumbAutosize",r.thumbAutosize)("dir",r.direction)("debug",r.debug)},inputs:{galleryId:"galleryId",state:"state",config:"config"},outputs:{itemClick:"itemClick",thumbClick:"thumbClick",error:"error"},features:[xe],decls:8,vars:14,consts:[[3,"state","config","galleryId","thumbClick","error",4,"ngIf"],[1,"g-box"],[3,"itemClick","error","state","config","galleryId"],[3,"state","config","galleryId",4,"ngIf"],[3,"state",4,"ngIf"],[1,"g-box-template"],[4,"ngTemplateOutlet","ngTemplateOutletContext"],[3,"thumbClick","error","state","config","galleryId"],[3,"state","config","galleryId"],[3,"state"]],template:function(i,r){i&1&&(T(0,s5,1,3,"gallery-thumbs",0),d(1,"div",1)(2,"gallery-slider",2),D("itemClick",function(s){return r.itemClick.emit(s)})("error",function(s){return r.error.emit(s)}),T(3,a5,1,3,"gallery-nav",3),h(),T(4,l5,1,3,"gallery-bullets",3)(5,c5,1,1,"gallery-counter",4),d(6,"div",5),T(7,u5,1,0,"ng-container",6),h()()),i&2&&(g("ngIf",r.config.thumbs),f(2),j("g-debug",r.config.debug),g("state",r.state)("config",r.config)("galleryId",r.galleryId),f(),g("ngIf",r.config.nav&&r.state.items.length>1),f(),g("ngIf",r.config.bullets),f(),g("ngIf",r.config.counter),f(2),g("ngTemplateOutlet",r.config.boxTemplate)("ngTemplateOutletContext",Qr(11,o5,r.state,r.config)))},dependencies:[ot,De,Ts,V5,L5,p5,f5,h5],styles:["[_nghost-%COMP%]{position:relative;overflow:hidden;display:flex;gap:var(--g-gutter-size);width:100%;height:500px;min-height:100%;max-height:100%;--image-object-fit: unset;--slider-thumb-height: unset;--slider-thumb-width: unset;--thumb-slider-left: unset;--thumb-slider-overflow: unset;--thumb-slider-flex-direction: unset;--g-thumb-width: unset;--g-thumb-height: unset;--g-thumb-cursor: pointer;--slider-scroll-snap-type: unset;--slider-overflow: unset;--slider-flex-direction: unset;--slider-width: unset;--slider-height: unset;--slider-content-width: unset;--slider-content-height: unset;--g-item-width: unset;--g-item-height: unset;--g-item-max-height: var(--slider-height);--bullets-top: unset;--bullets-bottom: unset;--bullets-cursor: pointer;--bullets-opacity: .4;--bullets-hover-opacity: 1;--bullets-active-opacity: 1;--counter-top: unset;--counter-bottom: unset;--counter-border-radius: unset;--nav-space: 8px;--nav-hover-space: 6.4px;--nav-next-right: unset;--nav-next-hover-right: unset;--nav-next-left: unset;--nav-next-hover-left: unset}[thumbPosition=top][_nghost-%COMP%]{flex-direction:column}[thumbPosition=left][_nghost-%COMP%]{flex-direction:row}[thumbPosition=right][_nghost-%COMP%]{flex-direction:row-reverse}[thumbPosition=bottom][_nghost-%COMP%]{flex-direction:column-reverse}[autoHeight=true][itemAutoSize=false][orientation=horizontal][thumbPosition=top][_nghost-%COMP%], [autoHeight=true][itemAutoSize=false][orientation=horizontal][thumbPosition=bottom][_nghost-%COMP%]{height:fit-content;--g-item-height: auto !important;--g-item-max-height: auto}[imageSize=contain][_nghost-%COMP%] gallery-slider[_ngcontent-%COMP%], [thumbImageSize=contain][_nghost-%COMP%] gallery-thumbs[_ngcontent-%COMP%]{--image-object-fit: contain}[imageSize=cover][_nghost-%COMP%] gallery-slider[_ngcontent-%COMP%], [thumbImageSize=cover][_nghost-%COMP%] gallery-thumbs[_ngcontent-%COMP%]{--image-object-fit: cover}[thumbPosition=top][_nghost-%COMP%], [thumbPosition=bottom][_nghost-%COMP%]{--thumb-slider-top: 0;--thumb-slider-overflow: auto hidden;--thumb-slider-flex-direction: row;--g-thumb-height: 100%}[thumbPosition=top][thumbAutosize=true][_nghost-%COMP%], [thumbPosition=bottom][thumbAutosize=true][_nghost-%COMP%]{--g-thumb-width: auto !important}[thumbPosition=left][_nghost-%COMP%], [thumbPosition=right][_nghost-%COMP%]{--thumb-slider-left: 0;--thumb-slider-overflow: hidden auto;--thumb-slider-flex-direction: column;--g-thumb-width: 100%}[thumbPosition=left][thumbAutosize=true][_nghost-%COMP%], [thumbPosition=right][thumbAutosize=true][_nghost-%COMP%]{--g-thumb-height: auto !important}[thumbDisbled=true][_nghost-%COMP%]{--g-thumb-cursor: default}[thumbScrollDisabled=true][_nghost-%COMP%]{--thumb-slider-overflow: hidden !important}[orientation=horizontal][_nghost-%COMP%]{--slider-overflow: auto hidden;--slider-scroll-snap-type: x mandatory;--slider-flex-direction: row;--slider-content-height: 100%}[orientation=vertical][_nghost-%COMP%]{--slider-overflow: hidden auto;--slider-scroll-snap-type: y mandatory;--slider-flex-direction: column;--slider-content-width: 100%}[scrollDisabled=true][_nghost-%COMP%]{--slider-overflow: hidden !important}[orientation=horizontal][_nghost-%COMP%]{--g-item-width: var(--slider-width);--g-item-height: 100%}[orientation=horizontal][itemAutoSize=true][_nghost-%COMP%]{--g-item-width: auto}[orientation=vertical][_nghost-%COMP%]{--g-item-width: 100%;--g-item-height: var(--slider-height)}[orientation=vertical][itemAutoSize=true][_nghost-%COMP%]{--g-item-height: auto}[bulletPosition=top][_nghost-%COMP%]{--bullets-top: 15px}[bulletPosition=bottom][_nghost-%COMP%]{--bullets-bottom: 15px}[bulletDisabled=true][_nghost-%COMP%]{--bullets-cursor: default;--bullets-hover-opacity: var(--bullets-opacity)}[counterPosition=top][_nghost-%COMP%]{--counter-top: 0;--counter-border-radius: 0 0 4px 4px}[counterPosition=bottom][_nghost-%COMP%]{--counter-bottom: 0;--counter-border-radius: 4px 4px 0 0}[dir=ltr][_nghost-%COMP%]{--nav-next-transform: translateY(-50%) perspective(1px);--nav-next-right: var(--nav-space);--nav-next-hover-right: var(--nav-hover-space);--nav-prev-transform: translateY(-50%) perspective(1px) scale(-1, -1);--nav-prev-left: var(--nav-space);--nav-prev-hover-left: var(--nav-hover-space)}[dir=rtl][_nghost-%COMP%]{--nav-next-transform: translateY(-50%) perspective(1px) scale(-1, -1);--nav-next-left: var(--nav-space);--nav-next-hover-left: var(--nav-hover-space);--nav-prev-transform: translateY(-50%) perspective(1px);--nav-prev-right: var(--nav-space);--nav-prev-hover-right: var(--nav-hover-space)}.g-box[_ngcontent-%COMP%]{overflow:hidden;position:relative;display:flex;flex-direction:column;order:1;flex:1}.g-box-template[_ngcontent-%COMP%]{position:absolute;z-index:10}",'[debug=true][_nghost-%COMP%] .g-sliding gallery-item.g-item-highlight, [debug=true][_nghost-%COMP%] .g-resizing gallery-item.g-item-highlight, [debug=true][_nghost-%COMP%] .g-scrolling gallery-item.g-item-highlight{visibility:hidden}[debug=true][_nghost-%COMP%] gallery-slider:after, [debug=true][_nghost-%COMP%] gallery-slider:before{position:absolute;content:"";z-index:12}[debug=true][_nghost-%COMP%] gallery-slider:before{width:100%;height:0;border-top:1px dashed lime}[debug=true][_nghost-%COMP%] gallery-slider:after{height:100%;width:0;border-left:1px dashed lime}[debug=true][_nghost-%COMP%] gallery-slider gallery-item{outline:1px solid darkorange}[debug=true][_nghost-%COMP%] gallery-slider gallery-item.g-item-highlight:after{content:"";position:absolute;width:100%;height:100%;border:3px solid lime;box-sizing:border-box;z-index:10}[debug=true][_nghost-%COMP%] .g-sliding .g-slider-sliding{display:block}[debug=true][_nghost-%COMP%] .g-scrolling .g-slider-scrolling{display:block}[debug=true][_nghost-%COMP%] .g-resizing .g-slider-resizing{display:block}[debug=true][_nghost-%COMP%] .g-slider-debug{position:absolute;top:0;left:0;display:flex;gap:5px;padding:10px}[debug=true][_nghost-%COMP%] .g-slider-debug .g-slider-resizing{background:#f54c28}[debug=true][_nghost-%COMP%] .g-slider-debug .g-slider-scrolling{background:#ff8524}[debug=true][_nghost-%COMP%] .g-slider-debug .g-slider-sliding{background:#1f6cb9}[debug=true][_nghost-%COMP%] .g-slider-debug div, [debug=true][_nghost-%COMP%] .g-slider-debug:before{display:none;color:#fff;font-family:monospace;z-index:12;padding:2px 6px;border-radius:3px}[debug=true][itemAutoSize=false][_nghost-%COMP%] .g-slider-debug:before{content:var(--intersection-margin);background:#ecececd6;color:#363636;display:block}[debug=true][itemAutoSize=true][_nghost-%COMP%] gallery-item:before{position:absolute;margin:10px;content:var(--item-intersection-margin);background:#ecececd6;color:#363636;display:block;width:270px;font-family:monospace;z-index:12;padding:2px 6px;border-radius:3px}'],changeDetection:0})}}return t})(),H5=(()=>{class t{constructor(e){this.templateRef=e}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)(y(St))}}static{this.\u0275dir=H({type:t,selectors:[["","galleryImageDef",""]]})}}return t})(),B5=(()=>{class t{constructor(e){this.templateRef=e}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)(y(St))}}static{this.\u0275dir=H({type:t,selectors:[["","galleryThumbDef",""]]})}}return t})(),U5=(()=>{class t{constructor(e){this.templateRef=e}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)(y(St))}}static{this.\u0275dir=H({type:t,selectors:[["","galleryItemDef",""]]})}}return t})(),$5=(()=>{class t{constructor(e){this.templateRef=e}static ngTemplateContextGuard(e,i){return!0}static{this.\u0275fac=function(i){return new(i||t)(y(St))}}static{this.\u0275dir=H({type:t,selectors:[["","galleryBoxDef",""]]})}}return t})(),Y5=(()=>{class t{constructor(e,i){this._gallery=e,this._imgManager=i}ngAfterViewInit(){this._galleryRef=this._gallery.ref(this.galleryId),this._subscribe(),this.config.autoplay&&this._galleryRef.play()}ngOnChanges(e){this._galleryRef&&e.config?.currentValue.autoplay!==e.config?.previousValue.autoplay&&(this.config.autoplay?this._galleryRef.play():this._galleryRef.stop())}ngOnDestroy(){this._unsubscribe()}_subscribe(){this._unsubscribe(),this._currentSubscription=this._galleryRef.playingChanged.pipe(vt(e=>e.isPlaying?this._imgManager.getActiveItem(this._galleryRef.state).pipe(vt(()=>Q({}).pipe(_c(this.config.autoplayInterval),ct(()=>{this._galleryRef.stateSnapshot.hasNext?this._galleryRef.next(this.config.scrollBehavior):this._galleryRef.set(0,this.config.scrollBehavior)})))):Mt)).subscribe()}_unsubscribe(){this._currentSubscription?.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(y(Xl),y(Am))}}static{this.\u0275dir=H({type:t,selectors:[["gallery-core","autoplay",""]],inputs:{config:"config",galleryId:"galleryId"},features:[xe]})}}return t})(),NC=(()=>{class t{constructor(e){this._gallery=e,this.id="root",this.nav=this._gallery.config.nav,this.bullets=this._gallery.config.bullets,this.loop=this._gallery.config.loop,this.debug=this._gallery.config.debug,this.thumbs=this._gallery.config.thumbs,this.counter=this._gallery.config.counter,this.detachThumbs=this._gallery.config.detachThumbs,this.thumbAutosize=this._gallery.config.thumbAutosize,this.itemAutosize=this._gallery.config.itemAutosize,this.autoHeight=this._gallery.config.autoHeight,this.autoplay=this._gallery.config.autoplay,this.disableThumbs=this._gallery.config.disableThumbs,this.disableBullets=this._gallery.config.disableBullets,this.disableScroll=this._gallery.config.disableScroll,this.disableThumbScroll=this._gallery.config.disableThumbScroll,this.thumbCentralized=this._gallery.config.thumbCentralized,this.disableMouseScroll=this._gallery.config.disableMouseScroll,this.disableThumbMouseScroll=this._gallery.config.disableThumbMouseScroll,this.bulletSize=this._gallery.config.bulletSize,this.thumbWidth=this._gallery.config.thumbWidth,this.thumbHeight=this._gallery.config.thumbHeight,this.autoplayInterval=this._gallery.config.autoplayInterval,this.scrollDuration=this._gallery.config.scrollDuration,this.resizeDebounceTime=this._gallery.config.resizeDebounceTime,this.scrollBehavior=this._gallery.config.scrollBehavior,this.scrollEase=this._gallery.config.scrollEase,this.imageSize=this._gallery.config.imageSize,this.thumbImageSize=this._gallery.config.thumbImageSize,this.bulletPosition=this._gallery.config.bulletPosition,this.counterPosition=this._gallery.config.counterPosition,this.orientation=this._gallery.config.orientation,this.loadingAttr=this._gallery.config.loadingAttr,this.loadingStrategy=this._gallery.config.loadingStrategy,this.thumbPosition=this._gallery.config.thumbPosition,this.destroyRef=!0,this.skipInitConfig=!1,this.itemClick=new P,this.thumbClick=new P,this.playingChange=new P,this.indexChange=new P,this.itemsChange=new P,this.error=new P}getConfig(){return{nav:this.nav,bullets:this.bullets,loop:this.loop,debug:this.debug,thumbs:this.thumbs,counter:this.counter,autoplay:this.autoplay,bulletSize:this.bulletSize,imageSize:this.imageSize,thumbImageSize:this.thumbImageSize,scrollBehavior:this.scrollBehavior,thumbCentralized:this.thumbCentralized,thumbWidth:this.thumbWidth,thumbHeight:this.thumbHeight,scrollEase:this.scrollEase,bulletPosition:this.bulletPosition,loadingAttr:this.loadingAttr,detachThumbs:this.detachThumbs,thumbPosition:this.thumbPosition,autoplayInterval:this.autoplayInterval,counterPosition:this.counterPosition,loadingStrategy:this.loadingStrategy,scrollDuration:this.scrollDuration,orientation:this.orientation,resizeDebounceTime:this.resizeDebounceTime,disableBullets:this.disableBullets,disableThumbs:this.disableThumbs,disableScroll:this.disableScroll,disableThumbScroll:this.disableThumbScroll,disableMouseScroll:this.disableMouseScroll,disableThumbMouseScroll:this.disableThumbMouseScroll,thumbAutosize:this.thumbAutosize,itemAutosize:this.itemAutosize,autoHeight:this.autoHeight}}ngOnChanges(e){this.galleryRef&&(this.galleryRef.setConfig(this.getConfig()),e.items&&e.items.currentValue!==e.items.previousValue&&this.load(this.items))}ngOnInit(){this.skipInitConfig?this.galleryRef=this._gallery.ref(this.id):this.galleryRef=this._gallery.ref(this.id,this.getConfig()),this.load(this.items),this.indexChange.observed&&(this._indexChange$=this.galleryRef.indexChanged.subscribe(e=>this.indexChange.emit(e))),this.itemsChange.observed&&(this._itemChange$=this.galleryRef.itemsChanged.subscribe(e=>this.itemsChange.emit(e))),this.playingChange.observed&&(this._playingChange$=this.galleryRef.playingChanged.subscribe(e=>this.playingChange.emit(e)))}ngAfterContentInit(){let e={};this._galleryItemDef&&(e.itemTemplate=this._galleryItemDef.templateRef),this._galleryImageDef&&(e.imageTemplate=this._galleryImageDef.templateRef),this._galleryThumbDef&&(e.thumbTemplate=this._galleryThumbDef.templateRef),this._galleryBoxDef&&(e.boxTemplate=this._galleryBoxDef.templateRef),Object.keys(e).length&&this.galleryRef.setConfig(e)}ngOnDestroy(){this._itemClick$?.unsubscribe(),this._thumbClick$?.unsubscribe(),this._itemChange$?.unsubscribe(),this._indexChange$?.unsubscribe(),this._playingChange$?.unsubscribe(),this.destroyRef&&this.galleryRef?.destroy()}onItemClick(e){this.itemClick.emit(e),this.galleryRef.itemClick.next(e)}onThumbClick(e){this.galleryRef.set(e),this.thumbClick.emit(e),this.galleryRef.thumbClick.next(e)}onError(e){this.error.emit(e),this.galleryRef.error.next(e)}load(e){this.galleryRef.load(e)}add(e,i){this.galleryRef.add(e,i)}addImage(e,i){this.galleryRef.addImage(e,i)}addVideo(e,i){this.galleryRef.addVideo(e,i)}addIframe(e,i){this.galleryRef.addIframe(e,i)}addYoutube(e,i){this.galleryRef.addYoutube(e,i)}addVimeo(e,i){this.galleryRef.addVimeo(e,i)}remove(e){this.galleryRef.remove(e)}next(e,i){this.galleryRef.next(e,i)}prev(e,i){this.galleryRef.prev(e,i)}set(e,i){this.galleryRef.set(e,i)}reset(){this.galleryRef.reset()}play(e){this.galleryRef.play(e)}stop(){this.galleryRef.stop()}static{this.\u0275fac=function(i){return new(i||t)(y(Xl))}}static{this.\u0275cmp=L({type:t,selectors:[["gallery"]],contentQueries:function(i,r,o){if(i&1&&(xo(o,U5,5),xo(o,H5,5),xo(o,B5,5),xo(o,$5,5)),i&2){let s;Ge(s=qe())&&(r._galleryItemDef=s.first),Ge(s=qe())&&(r._galleryImageDef=s.first),Ge(s=qe())&&(r._galleryThumbDef=s.first),Ge(s=qe())&&(r._galleryBoxDef=s.first)}},inputs:{id:"id",items:"items",nav:[2,"nav","nav",Xe],bullets:[2,"bullets","bullets",Xe],loop:[2,"loop","loop",Xe],debug:[2,"debug","debug",Xe],thumbs:[2,"thumbs","thumbs",Xe],counter:[2,"counter","counter",Xe],detachThumbs:[2,"detachThumbs","detachThumbs",Xe],thumbAutosize:[2,"thumbAutosize","thumbAutosize",Xe],itemAutosize:[2,"itemAutosize","itemAutosize",Xe],autoHeight:[2,"autoHeight","autoHeight",Xe],autoplay:[2,"autoplay","autoplay",Xe],disableThumbs:[2,"disableThumbs","disableThumbs",Xe],disableBullets:[2,"disableBullets","disableBullets",Xe],disableScroll:[2,"disableScroll","disableScroll",Xe],disableThumbScroll:[2,"disableThumbScroll","disableThumbScroll",Xe],thumbCentralized:[2,"thumbCentralized","thumbCentralized",Xe],disableMouseScroll:[2,"disableMouseScroll","disableMouseScroll",Xe],disableThumbMouseScroll:[2,"disableThumbMouseScroll","disableThumbMouseScroll",Xe],bulletSize:[2,"bulletSize","bulletSize",Es],thumbWidth:[2,"thumbWidth","thumbWidth",Es],thumbHeight:[2,"thumbHeight","thumbHeight",Es],autoplayInterval:[2,"autoplayInterval","autoplayInterval",Es],scrollDuration:[2,"scrollDuration","scrollDuration",Es],resizeDebounceTime:[2,"resizeDebounceTime","resizeDebounceTime",Es],scrollBehavior:"scrollBehavior",scrollEase:"scrollEase",imageSize:"imageSize",thumbImageSize:"thumbImageSize",bulletPosition:"bulletPosition",counterPosition:"counterPosition",orientation:"orientation",loadingAttr:"loadingAttr",loadingStrategy:"loadingStrategy",thumbPosition:"thumbPosition",destroyRef:"destroyRef",skipInitConfig:"skipInitConfig"},outputs:{itemClick:"itemClick",thumbClick:"thumbClick",playingChange:"playingChange",indexChange:"indexChange",itemsChange:"itemsChange",error:"error"},features:[ce([Am]),xe],decls:3,vars:7,consts:[["autoplay","",3,"itemClick","thumbClick","error","galleryId","state","config"]],template:function(i,r){i&1&&(d(0,"gallery-core",0),te(1,"async"),te(2,"async"),D("itemClick",function(s){return r.onItemClick(s)})("thumbClick",function(s){return r.onThumbClick(s)})("error",function(s){return r.onError(s)}),h()),i&2&&g("galleryId",r.id)("state",pe(1,3,r.galleryRef.state))("config",pe(2,5,r.galleryRef.config))},dependencies:[ot,mr,j5,Y5],styles:["[_nghost-%COMP%]{position:relative;overflow:hidden;z-index:1;display:flex;justify-content:center;align-items:center;background-color:#000;--g-height-transition: height 468ms cubic-bezier(.42, 0, .58, 1);--g-nav-drop-shadow: drop-shadow(0 0 2px rgba(0, 0, 0, .6));--g-box-shadow: 0 0 3px rgba(0, 0, 0, .6);--g-font-color: #000;--g-overlay-color: #fff;--g-gutter-size: 1px}[gallerize][_nghost-%COMP%]{--g-item-cursor: pointer}"],changeDetection:0})}}return t})(),Sk=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({imports:[NC]})}}return t})();function W5(t){return typeof t<"u"&&t!==null}function G5(t){return t!=null&&`${t}`!="false"}function q5(t){let n=new Date(t);if(!Number.isNaN(n.valueOf()))return n;let e=String(t).match(/\d+/g);if(e===null||e.length<=2)return n;{let[i,r,...o]=e.map(s=>parseInt(s,10));return new Date(Date.UTC(i,r-1,...o))}}var ld=60,cd=ld*60,ec=cd*24,Ek=ec*7,Tk=ec*30,Ik=ec*365,Q5=(()=>{class t{constructor(){this.changes=new X}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac})}}return t})(),Z5=function(t){let n=Date.now(),e=Math.round(Math.abs(n-t)/1e3),i=t{class t extends tc{format(e){let{suffix:i,value:r,unit:o}=Z5(e);return this.parse(r,o,i)}parse(e,i,r){return e!==1&&(i+="s"),e+" "+i+" "+r}static{this.\u0275fac=(()=>{let e;return function(r){return(e||(e=bn(t)))(r||t)}})()}static{this.\u0275prov=x({token:t,factory:t.\u0275fac})}}return t})();var nc=class{},kk=(()=>{class t extends nc{tick(e){return Q(0).pipe(Ta(()=>{let i=Date.now(),r=Math.round(Math.abs(i-e)/1e3),o=r{let e;return function(r){return(e||(e=bn(t)))(r||t)}})()}static{this.\u0275prov=x({token:t,factory:t.\u0275fac})}}return t})();var Jo=(()=>{class t{constructor(e,i,r,o){this.clock=o,this.live=!0,this.stateChanges=new X,e&&(this.intlSubscription=e.changes.subscribe(()=>this.stateChanges.next())),this.stateChanges.subscribe(()=>{this.value=r.format(this.date),i.markForCheck()})}transform(e,...i){let r=q5(e).valueOf(),o;if(o=W5(i[0])?G5(i[0]):this.live,this.date===r&&this.live===o)return this.value;if(this.date=r,this.live=o,this.date)this.clockSubscription&&(this.clockSubscription.unsubscribe(),this.clockSubscription=void 0),this.clockSubscription=this.clock.tick(this.date).pipe(le(()=>this.live,this)).subscribe(()=>this.stateChanges.next()),this.stateChanges.next();else throw new SyntaxError(`Wrong parameter in TimeagoPipe. Expected a valid date, received: ${e}`);return this.value}ngOnDestroy(){this.intlSubscription&&(this.intlSubscription.unsubscribe(),this.intlSubscription=void 0),this.clockSubscription&&(this.clockSubscription.unsubscribe(),this.clockSubscription=void 0),this.stateChanges.complete()}static{this.\u0275fac=function(i){return new(i||t)(y(Q5,24),y(it,16),y(tc,16),y(nc,16))}}static{this.\u0275pipe=Eo({name:"timeago",type:t,pure:!1,standalone:!1})}static{this.\u0275prov=x({token:t,factory:t.\u0275fac})}}return t})(),Or=(()=>{class t{static forRoot(e={}){return{ngModule:t,providers:[e.clock||{provide:nc,useClass:kk},e.intl||[],e.formatter||{provide:tc,useClass:xk}]}}static forChild(e={}){return{ngModule:t,providers:[e.clock||{provide:nc,useClass:kk},e.intl||[],e.formatter||{provide:tc,useClass:xk}]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({})}}return t})();var Pr=class t{baseUrl=Yt.apiUrl;hubUrl=Yt.hubsUrl;http=S(Fn);hubConnection;paginatedResult=ht(null);messageThread=ht([]);getMessage(n,e,i){let r=vl(n,e);return r=r.append("Container",i),this.http.get(this.baseUrl+"messages",{observe:"response",params:r}).subscribe({next:o=>Vs(o,this.paginatedResult)})}getMessageThread(n){return this.http.get(this.baseUrl+"messages/thread/"+n)}sendMessage(n,e){return this.hubConnection?.invoke("SendMessage",{recipientUsername:n,content:e}).catch(i=>console.log(i))}deleteMessage(n){return this.http.delete(this.baseUrl+"messages/"+n)}createHubConnection(n,e){this.hubConnection=new Bs().withUrl(this.hubUrl+"message?user="+e,{accessTokenFactory:()=>n.token}).withAutomaticReconnect().build(),this.hubConnection.start().catch(i=>console.error(i)),this.hubConnection.on("ReceiveMessageThread",i=>{this.messageThread.set(i)}),this.hubConnection.on("NewMessage",i=>{this.messageThread.update(r=>[...r,i])}),this.hubConnection.on("UpdatedGroup",i=>{i.connections.some(r=>r.username===e)&&this.messageThread.update(r=>(r.forEach(o=>{o.dateRead||(o.dateRead=new Date(Date.now()))}),r))})}stopHubConnection(){this.hubConnection?.state===Be.Connected&&this.hubConnection.stop().catch(n=>console.log(n))}static \u0275fac=function(e){return new(e||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})};var K5=["messageForm"],J5=["scrollMe"],X5=(t,n)=>n.id;function e8(t,n){t&1&&(d(0,"p"),v(1,"No messages yet"),h())}function t8(t,n){t&1&&(d(0,"span",17),v(1,"(unread)"),h())}function n8(t,n){if(t&1&&(d(0,"span",18),v(1),te(2,"timeago"),h()),t&2){let e=p().$implicit;f(),Te("(read ",pe(2,1,e.dateRead),")")}}function i8(t,n){if(t&1&&(d(0,"li")(1,"div")(2,"span",11),A(3,"img",12),h(),d(4,"div",13)(5,"div",14)(6,"small",15)(7,"span",16),v(8),te(9,"timeago"),h(),T(10,t8,2,0,"span",17)(11,n8,3,3,"span",18),h()(),d(12,"p"),v(13),h()()()()),t&2){let e=n.$implicit,i=p(2);f(3),Dt("src",e.senderPhotoUrl||"./assets/user.png",ft),f(5),Te(" ",pe(9,5,e.messageSent)," "),f(2),Re(!e.dateRead&&e.senderUsername!==i.username()?10:-1),f(),Re(e.dateRead&&e.senderUsername!==i.username()?11:-1),f(2),U(e.content)}}function r8(t,n){if(t&1&&(d(0,"ul",4,1),Et(2,i8,14,7,"li",null,X5),h()),t&2){let e=p();f(2),Tt(e.messageThread())}}var Om=class t{messageForm;scrollContainer;messageService=S(Pr);username=Rn.required();messageContent="";loading=!1;ngAfterViewChecked(){this.scrollToBottom()}sendMessage(){this.messageService.sendMessage(this.username(),this.messageContent)?.then(()=>{this.messageForm?.reset(),this.scrollToBottom()})}scrollToBottom(){this.scrollContainer&&(this.scrollContainer.nativeElement.scrollTop=this.scrollContainer.nativeElement.scrollHeight)}messageThread(){return this.messageService.messageThread()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-messages"]],viewQuery:function(e,i){if(e&1&&(Ot(K5,5),Ot(J5,5)),e&2){let r;Ge(r=qe())&&(i.messageForm=r.first),Ge(r=qe())&&(i.scrollContainer=r.first)}},inputs:{username:[1,"username"]},decls:12,vars:3,consts:[["messageForm","ngForm"],["scrollMe",""],[1,"card"],[1,"car-body"],[1,"chat",2,"overflow-y","auto","overflow-x","hidden","max-height","535px","scroll-behavior","smooth","scrollbar-width","none","-ms-overflow-style","none"],[1,"card-footer"],[3,"ngSubmit"],[1,"input-group"],["name","messageContent","required","","type","text","placeholder","Send a private message",1,"form-control","input-sm",3,"ngModelChange","ngModel"],[1,"input-group-append"],["type","submit",1,"btn","btn-primary",3,"disabled"],[1,"chat-img","float-end"],["alt","Message sender",1,"rounded-circle",3,"src"],[1,"chat-body"],[1,"header"],[1,"text-muted"],[1,"fa","fa-clock-o"],[1,"text-danger"],[1,"text-success"]],template:function(e,i){if(e&1){let r=N();d(0,"div",2)(1,"div",3),T(2,e8,2,0,"p")(3,r8,4,0,"ul",4),h(),d(4,"div",5)(5,"form",6,0),D("ngSubmit",function(){return C(r),w(i.sendMessage())}),d(7,"div",7)(8,"input",8),Fe("ngModelChange",function(s){return C(r),Ve(i.messageContent,s)||(i.messageContent=s),w(s)}),h(),d(9,"div",9)(10,"button",10),v(11,"Send"),h()()()()()()}if(e&2){let r=$t(6);f(2),Re(i.messageThread().length===0?2:3),f(6),Le("ngModel",i.messageContent),f(2),g("disabled",!r.valid)}},dependencies:[Or,Jo,Hn,wr,en,Nt,Cr,tb,wn,to],styles:[".card[_ngcontent-%COMP%]{border:none}.chat[_ngcontent-%COMP%]{list-style:none;margin:0;padding:0}.chat[_ngcontent-%COMP%] li[_ngcontent-%COMP%]{margin-bottom:10px;padding-bottom:10px;border-bottom:1px dotted #B3A9A9}.rounded-circle[_ngcontent-%COMP%]{max-height:50px}"]})};var o8=["memberTabs"];function s8(t,n){t&1&&(d(0,"div",7)(1,"i",20),v(2," Online now "),h()())}function a8(t,n){if(t&1&&A(0,"gallery",17),t&2){let e=p();g("items",e.images)("items",e.images)("itemAutosize",!0)}}var Pm=class t{memberTabs;presenceService=S(Ho);messageService=S(Pr);route=S(Gi);router=S(sn);accountService=S(tt);member={};images=[];activeTab;ngOnInit(){this.route.data.subscribe({next:n=>{this.member=n.member,this.member&&this.member.photos.map(e=>{this.images.push(new ad({src:e.url,thumb:e.url}))})}}),this.route.paramMap.subscribe({next:n=>this.onRouteParamsChange()}),this.route.queryParams.subscribe({next:n=>{n.tab&&this.selectTab(n.tab)}})}selectTab(n){if(this.memberTabs){let e=this.memberTabs.tabs.find(i=>i.heading===n);e&&(e.active=!0)}}onRouteParamsChange(){let n=this.accountService.currentUser();n&&this.messageService.hubConnection?.state===Be.Connected&&this.activeTab?.heading==="Messages"&&this.messageService.hubConnection.stop().then(()=>{this.messageService.createHubConnection(n,this.member.username)})}onTabActivated(n){if(this.activeTab=n,this.router.navigate([],{relativeTo:this.route,queryParams:{tab:this.activeTab.heading},queryParamsHandling:"merge"}),this.activeTab.heading=="Messages"){let e=this.accountService.currentUser();if(!e)return;this.messageService.createHubConnection(e,this.member.username)}else this.messageService.stopHubConnection()}ngOnDestroy(){this.messageService.stopHubConnection()}onlineUsers(){return this.presenceService.onlineUsers()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-detail"]],viewQuery:function(e,i){if(e&1&&Ot(o8,7),e&2){let r;Ge(r=qe())&&(i.memberTabs=r.first)}},decls:56,vars:20,consts:[["memberTabs",""],["photoTab","tab"],[1,"row"],[1,"col-4"],[1,"card"],[1,"card-img","img-thumbnail",3,"src","alt"],[1,"card-body"],[1,"mb-2"],[1,"card-footer"],[1,"btn-group","d-flex"],[1,"btn","btn-primary"],[1,"btn","btn-primary",3,"click"],[1,"col-8"],[1,"member-tabset"],[3,"selectTab","heading"],["heading","Interests",3,"selectTab"],["heading","Photos",3,"selectTab"],[1,"gallery",3,"items","itemAutosize"],["heading","Messages",3,"selectTab"],[3,"username"],[1,"fa","fa-user-circle","text-success"]],template:function(e,i){if(e&1){let r=N();d(0,"div",2)(1,"div",3)(2,"div",4),A(3,"img",5),d(4,"div",6),T(5,s8,3,0,"div",7),d(6,"div")(7,"strong"),v(8,"Location:"),h(),d(9,"p"),v(10),h()(),d(11,"div")(12,"strong"),v(13,"Age:"),h(),d(14,"p"),v(15),h()(),d(16,"div")(17,"strong"),v(18,"Last Active:"),h(),d(19,"p"),v(20),te(21,"timeago"),h()(),d(22,"div")(23,"strong"),v(24,"Member since:"),h(),d(25,"p"),v(26),te(27,"date"),h()(),d(28,"div",8)(29,"div",9)(30,"button",10),v(31,"Like"),h(),d(32,"button",11),D("click",function(){return C(r),w(i.selectTab("Messages"))}),v(33,"Message"),h()()()()()(),d(34,"div",12)(35,"tabset",13,0)(37,"tab",14),D("selectTab",function(s){return C(r),w(i.onTabActivated(s))}),d(38,"h4"),v(39,"Description"),h(),d(40,"p"),v(41),h(),d(42,"h4"),v(43,"Looking for"),h(),d(44,"p"),v(45),h()(),d(46,"tab",15),D("selectTab",function(s){return C(r),w(i.onTabActivated(s))}),d(47,"h4"),v(48,"Interests"),h(),d(49,"p"),v(50),h()(),d(51,"tab",16,1),D("selectTab",function(s){return C(r),w(i.onTabActivated(s))}),T(53,a8,1,3,"gallery",17),h(),d(54,"tab",18),D("selectTab",function(s){return C(r),w(i.onTabActivated(s))}),A(55,"app-member-messages",19),h()()()()}if(e&2){let r=$t(52);f(3),Dt("src",i.member.photoUrl||"https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain",ft),Dt("alt",i.member.knownAs),f(2),Re(i.onlineUsers().includes(i.member.username)?5:-1),f(5),hr("",i.member.city,", ",i.member.country,""),f(5),U(i.member.age),f(5),U(pe(21,15,i.member.lastActive)),f(6),U(Ja(27,17,i.member.created,"dd MMM, yyyy")),f(11),Io("heading","About ",i.member.knownAs,""),f(4),U(i.member.introduction),f(4),U(i.member.lookingFor),f(5),U(i.member.interests),f(3),Re(r.active?53:-1),f(2),g("username",i.member.username)}},dependencies:[Zl,Ql,oa,Sk,NC,Or,Jo,qc,Om],styles:[".img-thumbnail[_ngcontent-%COMP%]{margin:25px;width:85%;height:85%}.card-body[_ngcontent-%COMP%]{padding:0 25px}.card-footer[_ngcontent-%COMP%]{padding:10px 15px;border-top:none}"]})};var l8=(t,n)=>n.id;function c8(t,n){if(t&1&&(d(0,"div",8),A(1,"app-member-card",10),h()),t&2){let e=n.$implicit;f(),g("member",e)}}function u8(t,n){if(t&1){let e=N();d(0,"div",9)(1,"pagination",11),D("pageChanged",function(r){C(e);let o=p();return w(o.pageChange(r))}),Fe("ngModelChange",function(r){let o;C(e);let s=p();return Ve((o=s.paginatedResult())==null?null:o.pagination.currentPage,r)||(((o=s.paginatedResult())==null?null:o.pagination).currentPage=r),w(r)}),h()()}if(t&2){let e,i,r,o=p();f(),g("boundaryLinks",!0)("totalItems",(e=o.paginatedResult())==null?null:e.pagination.totalItems)("itemsPerPage",(i=o.paginatedResult())==null?null:i.pagination.itemsPerPage),Le("ngModel",(r=o.paginatedResult())==null?null:r.pagination.currentPage),g("maxSize",10)}}var Nm=class t{likesService=S(Fo);predicate="liked";pageNumber=1;pageSize=5;ngOnInit(){this.loadLikes()}ngOnDestroy(){this.likesService.paginatedResult.set(null)}getTitle(){switch(this.predicate){case"liked":return"Members your like";case"likedBy":return"Members who like you";default:return""}}loadLikes(){this.likesService.getLikes(this.predicate,this.pageNumber,this.pageSize)}pageChange(n){this.pageNumber!=n.page&&(this.pageNumber=n.page,this.loadLikes())}paginatedResult(){return this.likesService.paginatedResult()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-lists"]],decls:16,vars:5,consts:[[1,"text-center","mt-3"],[1,"container","mt-3"],[1,"d-flex"],[1,"btn-group"],["btnRadio","liked",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],["btnRadio","likedBy",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],["btnRadio","mutual",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],[1,"row","mt-3"],[1,"col-2"],[1,"d-flex","justify-content-center"],[3,"member"],["previousText","\u2039","nextText","\u203A","firstText","\xAB","lastText","\xBB",3,"pageChanged","ngModelChange","boundaryLinks","totalItems","itemsPerPage","ngModel","maxSize"]],template:function(e,i){if(e&1&&(d(0,"div",0)(1,"h2"),v(2),h()(),d(3,"div",1)(4,"div",2)(5,"div",3)(6,"button",4),Fe("ngModelChange",function(o){return Ve(i.predicate,o)||(i.predicate=o),o}),D("click",function(){return i.loadLikes()}),v(7,"Members I like"),h(),d(8,"button",5),Fe("ngModelChange",function(o){return Ve(i.predicate,o)||(i.predicate=o),o}),D("click",function(){return i.loadLikes()}),v(9,"Members who like me"),h(),d(10,"button",6),Fe("ngModelChange",function(o){return Ve(i.predicate,o)||(i.predicate=o),o}),D("click",function(){return i.loadLikes()}),v(11,"Mutual"),h()()(),d(12,"div",7),Et(13,c8,2,1,"div",8,l8),h()(),T(15,u8,2,5,"div",9)),e&2){let r,o;f(2),U(i.getTitle()),f(4),Le("ngModel",i.predicate),f(2),Le("ngModel",i.predicate),f(2),Le("ngModel",i.predicate),f(3),Tt((r=i.paginatedResult())==null?null:r.items),f(2),Re((o=i.paginatedResult())!=null&&o.pagination?15:-1)}},dependencies:[ql,Ko,Hn,Nt,wn,Wl,Gl,ra],encapsulation:2})};var d8=()=>({tab:"Messages"}),h8=(t,n)=>n.id;function f8(t,n){t&1&&(d(0,"h3",6),v(1,"No messages"),h())}function p8(t,n){if(t&1){let e=N();d(0,"tr",12)(1,"td"),v(2),h(),d(3,"td")(4,"div"),A(5,"img",13),d(6,"strong",14),v(7),h()()(),d(8,"td"),v(9),te(10,"timeago"),h(),d(11,"td",15),D("click",function(r){return C(e),w(r.stopPropagation())}),d(12,"button",16),D("click",function(){let r=C(e).$implicit,o=p(2);return w(o.deleteMessage(r.id))}),v(13,"Delete"),h()()()}if(t&2){let e=n.$implicit,i=p(2);Dt("routerLink",i.getRoute(e)),g("queryParams",Gr(8,d8)),f(2),U(e.content),f(3),g("src",i.isOutbox?e.recipientPhotoUrl||"./assets/user.png":e.senderPhotoUrl||"./assets/user.png",ft),f(2),U(i.isOutbox?e.senderPhotoUrl:e.recipientUsername),f(2),U(pe(10,6,e.messageSent))}}function m8(t,n){if(t&1&&(d(0,"table",7)(1,"thead")(2,"tr")(3,"th",9),v(4,"Message"),h(),d(5,"th",10),v(6,"From / To"),h(),d(7,"th",10),v(8,"Sent / Recived"),h(),A(9,"th",10),h()(),d(10,"tbody",11),Et(11,p8,14,9,"tr",12,h8),h()()),t&2){let e,i=p();f(11),Tt((e=i.paginatedResult())==null?null:e.items)}}function g8(t,n){if(t&1){let e=N();d(0,"div",8)(1,"pagination",17),D("pageChanged",function(r){C(e);let o=p();return w(o.pageChange(r))}),Fe("ngModelChange",function(r){let o;C(e);let s=p();return Ve((o=s.paginatedResult())==null?null:o.pagination.currentPage,r)||(((o=s.paginatedResult())==null?null:o.pagination).currentPage=r),w(r)}),h()()}if(t&2){let e,i,r,o=p();f(),g("boundaryLinks",!0)("totalItems",(e=o.paginatedResult())==null?null:e.pagination.totalItems)("itemsPerPage",(i=o.paginatedResult())==null?null:i.pagination.itemsPerPage),Le("ngModel",(r=o.paginatedResult())==null?null:r.pagination.currentPage),g("maxSize",10)}}var Lm=class t{messageService=S(Pr);container="Inbox";pageNumber=1;pageSize=5;isOutbox=this.container==="Outbox";ngOnInit(){this.loadMessage()}loadMessage(){this.messageService.getMessage(this.pageNumber,this.pageSize,this.container)}getRoute(n){return this.container==="Outbox"?`/members/${n.recipientUsername}`:`/members/${n.senderUsername}`}pageChange(n){this.pageNumber!==n.page&&(this.pageNumber=n.page,this.loadMessage())}deleteMessage(n){this.messageService.deleteMessage(n).subscribe({next:e=>{this.messageService.paginatedResult.update(i=>(i&&i.items&&i.items.splice(i.items.findIndex(r=>r.id==n),1),i))}})}paginatedResult(){return this.messageService.paginatedResult()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-messages"]],decls:12,vars:5,consts:[[1,"container","mt-3"],[1,"d-flex"],[1,"btn-group"],["btnRadio","Unread",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],["btnRadio","Inbox",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],["btnRadio","Outbox",1,"btn","btn-primary",3,"ngModelChange","click","ngModel"],[1,"mt-3"],[1,"table","table-hover","mt-3",2,"cursor","pointer"],[1,"d-flex","justify-content-center"],[2,"width","40%"],[2,"width","20%"],[1,"align-middle"],[3,"routerLink","queryParams"],["alt","Image of user",1,"rounded-circle",3,"src"],[2,"margin-left","10px"],[3,"click"],[1,"btn","btn-danger",3,"click"],["previousText","\u2039","nextText","\u203A","firstText","\xAB","lastText","\xBB",3,"pageChanged","ngModelChange","boundaryLinks","totalItems","itemsPerPage","ngModel","maxSize"]],template:function(e,i){if(e&1&&(d(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),Fe("ngModelChange",function(o){return Ve(i.container,o)||(i.container=o),o}),D("click",function(){return i.loadMessage()}),v(4,"Unread"),h(),d(5,"button",4),Fe("ngModelChange",function(o){return Ve(i.container,o)||(i.container=o),o}),D("click",function(){return i.loadMessage()}),v(6,"Inbox"),h(),d(7,"button",5),Fe("ngModelChange",function(o){return Ve(i.container,o)||(i.container=o),o}),D("click",function(){return i.loadMessage()}),v(8,"Outbox"),h()()()(),T(9,f8,2,0,"h3",6)(10,m8,13,0,"table",7)(11,g8,2,5,"div",8)),e&2){let r,o;f(3),Le("ngModel",i.container),f(2),Le("ngModel",i.container),f(2),Le("ngModel",i.container),f(2),Re(!((r=i.paginatedResult())!=null&&r.items)||((r=i.paginatedResult())==null||r.items==null?null:r.items.length)===0?9:10),f(2),Re((o=i.paginatedResult())!=null&&o.pagination&&((o=i.paginatedResult())==null||o.pagination==null?null:o.pagination.totalItems)>0?11:-1)}},dependencies:[ql,Ko,Hn,Nt,wn,Or,Jo,br,Gl,ra],styles:[".rounded-circle[_ngcontent-%COMP%]{max-height:50px}"]})};var Ak=(t,n)=>{let e=S(tt),i=S(hn);return e.currentUser()?!0:(i.error("You are not logged in!"),!1)};function _8(t,n){if(t&1&&(d(0,"li"),v(1),h()),t&2){let e=n.$implicit;f(),U(e)}}function y8(t,n){if(t&1&&(d(0,"div",1)(1,"ul",2),Et(2,_8,2,1,"li",null,Ka),h()()),t&2){let e=p();f(2),Tt(e.validationErrors)}}var Fm=class t{baseUrl=Yt.apiUrl;http=S(Fn);validationErrors=[];get400Error(){this.http.get(this.baseUrl+"buggy/bad-request").subscribe({next:n=>console.log(n),error:n=>console.log(n)})}get401Error(){this.http.get(this.baseUrl+"buggy/auth").subscribe({next:n=>console.log(n),error:n=>console.log(n)})}get404Error(){this.http.get(this.baseUrl+"buggy/not-found").subscribe({next:n=>console.log(n),error:n=>console.log(n)})}get500Error(){this.http.get(this.baseUrl+"buggy/server-error").subscribe({next:n=>console.log(n),error:n=>console.log(n)})}get400ValidationError(){this.http.post(this.baseUrl+"account/register",{}).subscribe({next:n=>console.log(n),error:n=>{console.log(n),this.validationErrors=n}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-test-errors"]],decls:12,vars:1,consts:[[1,"btn","btn-outline-primary","m-3",3,"click"],[1,"row","mt-5"],[1,"text-danger"]],template:function(e,i){e&1&&(d(0,"div")(1,"button",0),D("click",function(){return i.get400Error()}),v(2,"Test 400 error"),h(),d(3,"button",0),D("click",function(){return i.get401Error()}),v(4,"Test 401 error"),h(),d(5,"button",0),D("click",function(){return i.get404Error()}),v(6,"Test 404 error"),h(),d(7,"button",0),D("click",function(){return i.get500Error()}),v(8,"Test 500 error"),h(),d(9,"button",0),D("click",function(){return i.get400ValidationError()}),v(10,"Test 400 validation error"),h(),T(11,y8,4,0,"div",1),h()),e&2&&(f(11),Re(i.validationErrors.length>0?11:-1))},encapsulation:2})};var Vm=class t{static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-not-found"]],decls:5,vars:0,consts:[[1,"container-fluid"],["routerLink","/",1,"btn","btn-info","btn-lg"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"h1"),v(2,"Not found"),h(),d(3,"button",1),v(4,"Return to home page"),h()())},dependencies:[br],encapsulation:2})};function v8(t,n){if(t&1&&(d(0,"h5",0),v(1),h(),d(2,"p",1),v(3,"Note: if you are seeing this error then angular is not to blame!"),h(),d(4,"p"),v(5,"What to do next"),h(),d(6,"ol")(7,"li"),v(8,"Open chrom dev tools and check the failing network nequest in the network tab"),h(),d(9,"li"),v(10,"Examine the URL of the failing request"),h(),d(11,"li"),v(12,"Reproduce the error in postman - if you can reporduce the error then angular is not to blame"),h()(),d(13,"p",1),v(14,"Followein the stack trace - check the first 2 lines this tells you exactly whichline of code caused the problem!"),h(),d(15,"code",2),v(16),h()),t&2){let e=p();f(),Te("Error: ",e.error.message,""),f(15),U(e.error.details)}}var jm=class t{constructor(n){this.router=n;let e=this.router.getCurrentNavigation();this.error=e?.extras?.state?.error}error;static \u0275fac=function(e){return new(e||t)(y(sn))};static \u0275cmp=L({type:t,selectors:[["app-server-error"]],decls:3,vars:1,consts:[[1,"text-danger"],[1,"font-weight-bold"],[1,"mt-5",2,"background-color","whitesmoke"]],template:function(e,i){e&1&&(d(0,"h4"),v(1,"Internal Server Error"),h(),T(2,v8,17,2)),e&2&&(f(2),Re(i.error?2:-1))},encapsulation:2})};var ud=class{constructor(n){this.rawFile=n;let e=n instanceof HTMLInputElement?n.value:n;this[`_createFrom${typeof e=="string"?"FakePath":"Object"}`](e)}_createFromFakePath(n){this.lastModifiedDate=void 0,this.size=void 0,this.type=`like/${n.slice(n.lastIndexOf(".")+1).toLowerCase()}`,this.name=n.slice(n.lastIndexOf("/")+n.lastIndexOf("\\")+2)}_createFromObject(n){this.size=n.size,this.type=n.type,this.name=n.name}},LC=class{constructor(n,e,i){this.url="/",this.headers=[],this.withCredentials=!0,this.formData=[],this.isReady=!1,this.isUploading=!1,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!1,this.isError=!1,this.progress=0,this.uploader=n,this.some=e,this.options=i,this.file=new ud(e),this._file=e,n.options&&(this.method=n.options.method||"POST",this.alias=n.options.itemAlias||"file"),this.url=n.options.url}upload(){try{this.uploader.uploadItem(this)}catch{this.uploader._onCompleteItem(this,"",0,{}),this.uploader._onErrorItem(this,"",0,{})}}cancel(){this.uploader.cancelItem(this)}remove(){this.uploader.removeFromQueue(this)}onBeforeUpload(){}onBuildForm(n){return{form:n}}onProgress(n){return{progress:n}}onSuccess(n,e,i){return{response:n,status:e,headers:i}}onError(n,e,i){return{response:n,status:e,headers:i}}onCancel(n,e,i){return{response:n,status:e,headers:i}}onComplete(n,e,i){return{response:n,status:e,headers:i}}_onBeforeUpload(){this.isReady=!0,this.isUploading=!0,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!1,this.isError=!1,this.progress=0,this.onBeforeUpload()}_onBuildForm(n){this.onBuildForm(n)}_onProgress(n){this.progress=n,this.onProgress(n)}_onSuccess(n,e,i){this.isReady=!1,this.isUploading=!1,this.isUploaded=!0,this.isSuccess=!0,this.isCancel=!1,this.isError=!1,this.progress=100,this.index=void 0,this.onSuccess(n,e,i)}_onError(n,e,i){this.isReady=!1,this.isUploading=!1,this.isUploaded=!0,this.isSuccess=!1,this.isCancel=!1,this.isError=!0,this.progress=0,this.index=void 0,this.onError(n,e,i)}_onCancel(n,e,i){this.isReady=!1,this.isUploading=!1,this.isUploaded=!1,this.isSuccess=!1,this.isCancel=!0,this.isError=!1,this.progress=0,this.index=void 0,this.onCancel(n,e,i)}_onComplete(n,e,i){this.onComplete(n,e,i),this.uploader.options.removeAfterUpload&&this.remove()}_prepareToUploading(){this.index=this.index||++this.uploader._nextIndex,this.isReady=!0}},b8=(()=>{class t{static{this.mime_doc=["application/msword","application/msword","application/vnd.openxmlformats-officedocument.wordprocessingml.document","application/vnd.openxmlformats-officedocument.wordprocessingml.template","application/vnd.ms-word.document.macroEnabled.12","application/vnd.ms-word.template.macroEnabled.12"]}static{this.mime_xsl=["application/vnd.ms-excel","application/vnd.ms-excel","application/vnd.ms-excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet","application/vnd.openxmlformats-officedocument.spreadsheetml.template","application/vnd.ms-excel.sheet.macroEnabled.12","application/vnd.ms-excel.template.macroEnabled.12","application/vnd.ms-excel.addin.macroEnabled.12","application/vnd.ms-excel.sheet.binary.macroEnabled.12"]}static{this.mime_ppt=["application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.ms-powerpoint","application/vnd.openxmlformats-officedocument.presentationml.presentation","application/vnd.openxmlformats-officedocument.presentationml.template","application/vnd.openxmlformats-officedocument.presentationml.slideshow","application/vnd.ms-powerpoint.addin.macroEnabled.12","application/vnd.ms-powerpoint.presentation.macroEnabled.12","application/vnd.ms-powerpoint.presentation.macroEnabled.12","application/vnd.ms-powerpoint.slideshow.macroEnabled.12"]}static{this.mime_psd=["image/photoshop","image/x-photoshop","image/psd","application/photoshop","application/psd","zz-application/zz-winassoc-psd"]}static{this.mime_compress=["application/x-gtar","application/x-gcompress","application/compress","application/x-tar","application/x-rar-compressed","application/octet-stream","application/x-zip-compressed","application/zip-compressed","application/x-7z-compressed","application/gzip","application/x-bzip2"]}static getMimeClass(e){let i="application";return e?.type&&this.mime_psd.indexOf(e.type)!==-1||e?.type?.match("image.*")?i="image":e?.type?.match("video.*")?i="video":e?.type?.match("audio.*")?i="audio":e?.type==="application/pdf"?i="pdf":e?.type&&this.mime_compress.indexOf(e.type)!==-1?i="compress":e?.type&&this.mime_doc.indexOf(e.type)!==-1?i="doc":e?.type&&this.mime_xsl.indexOf(e.type)!==-1?i="xls":e?.type&&this.mime_ppt.indexOf(e.type)!==-1&&(i="ppt"),i==="application"&&e?.name&&(i=this.fileTypeDetection(e.name)),i}static fileTypeDetection(e){let i={jpg:"image",jpeg:"image",tif:"image",psd:"image",bmp:"image",png:"image",nef:"image",tiff:"image",cr2:"image",dwg:"image",cdr:"image",ai:"image",indd:"image",pin:"image",cdp:"image",skp:"image",stp:"image","3dm":"image",mp3:"audio",wav:"audio",wma:"audio",mod:"audio",m4a:"audio",compress:"compress",zip:"compress",rar:"compress","7z":"compress",lz:"compress",z01:"compress",bz2:"compress",gz:"compress",pdf:"pdf",xls:"xls",xlsx:"xls",ods:"xls",mp4:"video",avi:"video",wmv:"video",mpg:"video",mts:"video",flv:"video","3gp":"video",vob:"video",m4v:"video",mpeg:"video",m2ts:"video",mov:"video",doc:"doc",docx:"doc",eps:"doc",txt:"doc",odt:"doc",rtf:"doc",ppt:"ppt",pptx:"ppt",pps:"ppt",ppsx:"ppt",odp:"ppt"},r=e.split(".");if(r.length<2)return"application";let o=r[r.length-1].toLowerCase();return i[o]===void 0?"application":i[o]}}return t})();function C8(t){return File&&t instanceof File}var Hm=class{constructor(n){this.isUploading=!1,this.queue=[],this.progress=0,this._nextIndex=0,this.options={autoUpload:!1,isHTML5:!0,filters:[],removeAfterUpload:!1,disableMultipart:!1,formatDataFunction:e=>e._file,formatDataFunctionIsAsync:!1,url:""},this.setOptions(n),this.response=new P}setOptions(n){this.options=Object.assign(this.options,n),this.authToken=this.options.authToken,this.authTokenHeader=this.options.authTokenHeader||"Authorization",this.autoUpload=this.options.autoUpload,this.options.filters?.unshift({name:"queueLimit",fn:this._queueLimitFilter}),this.options.maxFileSize&&this.options.filters?.unshift({name:"fileSize",fn:this._fileSizeFilter}),this.options.allowedFileType&&this.options.filters?.unshift({name:"fileType",fn:this._fileTypeFilter}),this.options.allowedMimeType&&this.options.filters?.unshift({name:"mimeType",fn:this._mimeTypeFilter});for(let e=0;e{r||(r=this.options);let u=new ud(c);if(this._isValidFile(u,s,r)){let m=new LC(this,c,r);l.push(m),this.queue.push(m),this._onAfterAddingFile(m)}else if(typeof this._failFilterIndex=="number"&&this._failFilterIndex>=0){let m=s[this._failFilterIndex];this._onWhenAddingFileFailed(u,m,r)}}),this.queue.length!==a&&(this._onAfterAddingAll(l),this.progress=this._getTotalProgress()),this._render(),this.options.autoUpload&&this.uploadAll()}removeFromQueue(n){let e=this.getIndexOfItem(n),i=this.queue[e];i.isUploading&&i.cancel(),this.queue.splice(e,1),this.progress=this._getTotalProgress()}clearQueue(){for(;this.queue.length;)this.queue[0].remove();this.progress=0}uploadItem(n){let e=this.getIndexOfItem(n),i=this.queue[e],r=this.options.isHTML5?"_xhrTransport":"_iframeTransport";i._prepareToUploading(),!this.isUploading&&(this.isUploading=!0,this[r](i))}cancelItem(n){let e=this.getIndexOfItem(n),i=this.queue[e],r=this.options.isHTML5?i._xhr:i._form;i&&i.isUploading&&r.abort()}uploadAll(){let n=this.getNotUploadedItems().filter(e=>!e.isUploading);n.length&&(n.map(e=>e._prepareToUploading()),n[0].upload())}cancelAll(){this.getNotUploadedItems().map(e=>e.cancel())}isFile(n){return C8(n)}isFileLikeObject(n){return n instanceof ud}getIndexOfItem(n){return typeof n=="number"?n:this.queue.indexOf(n)}getNotUploadedItems(){return this.queue.filter(n=>!n.isUploaded)}getReadyItems(){return this.queue.filter(n=>n.isReady&&!n.isUploading).sort((n,e)=>n.index-e.index)}onAfterAddingAll(n){return{fileItems:n}}onBuildItemForm(n,e){return{fileItem:n,form:e}}onAfterAddingFile(n){return{fileItem:n}}onWhenAddingFileFailed(n,e,i){return{item:n,filter:e,options:i}}onBeforeUploadItem(n){return{fileItem:n}}onProgressItem(n,e){return{fileItem:n,progress:e}}onProgressAll(n){return{progress:n}}onSuccessItem(n,e,i,r){return{item:n,response:e,status:i,headers:r}}onErrorItem(n,e,i,r){return{item:n,response:e,status:i,headers:r}}onCancelItem(n,e,i,r){return{item:n,response:e,status:i,headers:r}}onCompleteItem(n,e,i,r){return{item:n,response:e,status:i,headers:r}}onCompleteAll(){}_mimeTypeFilter(n){return!(n?.type&&this.options.allowedMimeType&&this.options.allowedMimeType?.indexOf(n.type)===-1)}_fileSizeFilter(n){return!(this.options.maxFileSize&&n.size>this.options.maxFileSize)}_fileTypeFilter(n){return!(this.options.allowedFileType&&this.options.allowedFileType.indexOf(b8.getMimeClass(n))===-1)}_onErrorItem(n,e,i,r){n._onError(e,i,r),this.onErrorItem(n,e,i,r)}_onCompleteItem(n,e,i,r){n._onComplete(e,i,r),this.onCompleteItem(n,e,i,r);let o=this.getReadyItems()[0];if(this.isUploading=!1,o){o.upload();return}this.onCompleteAll(),this.progress=this._getTotalProgress(),this._render()}_headersGetter(n){return e=>e?n[e.toLowerCase()]||void 0:n}_xhrTransport(n){let e=this,i=n._xhr=new XMLHttpRequest,r;if(this._onBeforeUploadItem(n),typeof n._file.size!="number")throw new TypeError("The file specified is no longer valid");if(this.options.disableMultipart)this.options.formatDataFunction&&(r=this.options.formatDataFunction(n));else{r=new FormData,this._onBuildItemForm(n,r);let o=()=>r.append(n.alias,n._file,n.file.name);this.options.parametersBeforeFiles||o(),this.options.additionalParameter!==void 0&&Object.keys(this.options.additionalParameter).forEach(s=>{let a=this.options.additionalParameter?.[s];typeof a=="string"&&a.indexOf("{{file_name}}")>=0&&n.file?.name&&(a=a.replace("{{file_name}}",n.file.name)),r.append(s,a)}),o&&this.options.parametersBeforeFiles&&o()}if(i.upload.onprogress=o=>{let s=Math.round(o.lengthComputable?o.loaded*100/o.total:0);this._onProgressItem(n,s)},i.onload=()=>{let o=this._parseHeaders(i.getAllResponseHeaders()),s=this._transformResponse(i.response),l=`_on${this._isSuccessCode(i.status)?"Success":"Error"}Item`;this[l](n,s,i.status,o),this._onCompleteItem(n,s,i.status,o)},i.onerror=()=>{let o=this._parseHeaders(i.getAllResponseHeaders()),s=this._transformResponse(i.response);this._onErrorItem(n,s,i.status,o),this._onCompleteItem(n,s,i.status,o)},i.onabort=()=>{let o=this._parseHeaders(i.getAllResponseHeaders()),s=this._transformResponse(i.response);this._onCancelItem(n,s,i.status,o),this._onCompleteItem(n,s,i.status,o)},n.method&&n.url&&i.open(n.method,n.url,!0),i.withCredentials=n.withCredentials,this.options.headers)for(let o of this.options.headers)i.setRequestHeader(o.name,o.value);if(n.headers.length)for(let o of n.headers)i.setRequestHeader(o.name,o.value);this.authToken&&this.authTokenHeader&&i.setRequestHeader(this.authTokenHeader,this.authToken),i.onreadystatechange=function(){i.readyState==XMLHttpRequest.DONE&&e.response.emit(i.responseText)},this.options.formatDataFunctionIsAsync?r.then(o=>i.send(JSON.stringify(o))):i.send(r),this._render()}_getTotalProgress(n=0){if(this.options.removeAfterUpload)return n;let e=this.getNotUploadedItems().length,i=e?this.queue.length-e:this.queue.length,r=100/this.queue.length,o=n*r/100;return Math.round(i*r+o)}_getFilters(n){if(!n)return this.options?.filters||[];if(Array.isArray(n))return n;if(typeof n=="string"){let e=n.match(/[^\s,]+/g);return this.options?.filters||[].filter(i=>e?.indexOf(i.name)!==-1)}return this.options?.filters||[]}_render(){}_queueLimitFilter(){return this.options.queueLimit===void 0||this.queue.length(typeof this._failFilterIndex=="number"&&this._failFilterIndex++,r.fn.call(this,n,i))):!0}_isSuccessCode(n){return n>=200&&n<300||n===304}_transformResponse(n){return n}_parseHeaders(n){let e={},i,r,o;return n&&n.split(` -`).map(s=>{o=s.indexOf(":"),i=s.slice(0,o).trim().toLowerCase(),r=s.slice(o+1).trim(),i&&(e[i]=e[i]?e[i]+", "+r:r)}),e}_onWhenAddingFileFailed(n,e,i){this.onWhenAddingFileFailed(n,e,i)}_onAfterAddingFile(n){this.onAfterAddingFile(n)}_onAfterAddingAll(n){this.onAfterAddingAll(n)}_onBeforeUploadItem(n){n._onBeforeUpload(),this.onBeforeUploadItem(n)}_onBuildItemForm(n,e){n._onBuildForm(e),this.onBuildItemForm(n,e)}_onProgressItem(n,e){let i=this._getTotalProgress(e);this.progress=i,n._onProgress(e),this.onProgressItem(n,e),this.onProgressAll(i),this._render()}_onSuccessItem(n,e,i,r){n._onSuccess(e,i,r),this.onSuccessItem(n,e,i,r)}_onCancelItem(n,e,i,r){n._onCancel(e,i,r),this.onCancelItem(n,e,i,r)}},Rk=(()=>{class t{constructor(e){this.fileOver=new P,this.onFileDrop=new P,this.element=e}getOptions(){return this.uploader?.options}getFilters(){return""}onDrop(e){let i=this._getTransfer(e);if(!i)return;let r=this.getOptions(),o=this.getFilters();this._preventAndStop(e),r&&this.uploader?.addToQueue(i.files,r,o),this.fileOver.emit(!1),this.onFileDrop.emit(i.files)}onDragOver(e){let i=this._getTransfer(e);this._haveFiles(i.types)&&(i.dropEffect="copy",this._preventAndStop(e),this.fileOver.emit(!0))}onDragLeave(e){this.element&&e.currentTarget===this.element[0]||(this._preventAndStop(e),this.fileOver.emit(!1))}_getTransfer(e){return e.dataTransfer?e.dataTransfer:e.originalEvent.dataTransfer}_preventAndStop(e){e.preventDefault(),e.stopPropagation()}_haveFiles(e){return e?e.indexOf?e.indexOf("Files")!==-1:e.contains?e.contains("Files"):!1:!1}static{this.\u0275fac=function(i){return new(i||t)(y($))}}static{this.\u0275dir=H({type:t,selectors:[["","ng2FileDrop",""]],hostBindings:function(i,r){i&1&&D("drop",function(s){return r.onDrop(s)})("dragover",function(s){return r.onDragOver(s)})("dragleave",function(s){return r.onDragLeave(s)})},inputs:{uploader:"uploader"},outputs:{fileOver:"fileOver",onFileDrop:"onFileDrop"},standalone:!1})}}return t})();var Ok=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({imports:[ot]})}}return t})();var D8=t=>({"nv-file-over":t}),M8=t=>({width:t}),S8=(t,n)=>n.id;function E8(t,n){if(t&1){let e=N();d(0,"div",8)(1,"button",10),D("click",function(){C(e);let r=p().$implicit,o=p();return w(o.setMainPhoto(r))}),v(2,"Main"),h(),d(3,"button",11),D("click",function(){C(e);let r=p().$implicit,o=p();return w(o.deletePhoto(r))}),A(4,"i",12),h()()}if(t&2){let e=p().$implicit;f(),g("disabled",e.isMain)("ngClass",e.isMain?"btn-success active":"btn-outline-success"),f(2),g("disabled",e.isMain)}}function T8(t,n){t&1&&(d(0,"div",9)(1,"span",13),v(2,"Waiting for approval!"),h()())}function I8(t,n){if(t&1&&(d(0,"div",1),A(1,"img",7),T(2,E8,5,3,"div",8)(3,T8,3,0,"div",9),h()),t&2){let e=n.$implicit;f(),j("not-approved",!e.isApproved),Dt("src",e.url,ft),f(),Re(e.isApproved?2:3)}}function x8(t,n){if(t&1&&(d(0,"td",26),v(1),te(2,"number"),h()),t&2){let e=p().$implicit;f(),Te("",Ja(2,1,(e==null||e.file==null?null:e.file.size)/1024/1024,".2")," MB")}}function k8(t,n){if(t&1&&(d(0,"tr")(1,"td")(2,"strong"),v(3),h()(),T(4,x8,3,4,"td",25),h()),t&2){let e=n.$implicit,i=p(2);f(3),U(e==null||e.file==null?null:e.file.name),f(),g("ngIf",i.uploader==null||i.uploader.options==null?null:i.uploader.options.isHTML5)}}function A8(t,n){if(t&1){let e=N();d(0,"div",14)(1,"h3"),v(2,"Upload queue"),h(),d(3,"p"),v(4),h(),d(5,"table",15)(6,"thead")(7,"tr")(8,"th",16),v(9,"Name"),h(),d(10,"th"),v(11,"Size"),h()()(),d(12,"tbody"),T(13,k8,5,2,"tr",17),h()(),d(14,"div")(15,"div"),v(16," Queue progress: "),d(17,"div",18),A(18,"div",19),h()(),d(19,"button",20),D("click",function(){C(e);let r=p();return w(r.uploader==null?null:r.uploader.uploadAll())}),A(20,"span",21),v(21," Upload all "),h(),d(22,"button",22),D("click",function(){C(e);let r=p();return w(r.uploader==null?null:r.uploader.cancelAll())}),A(23,"span",23),v(24," Cancel all "),h(),d(25,"button",24),D("click",function(){C(e);let r=p();return w(r.uploader==null?null:r.uploader.clearQueue())}),A(26,"span",12),v(27," Remove all "),h()()()}if(t&2){let e,i=p();f(4),Te("Queue length: ",i.uploader==null||i.uploader.queue==null?null:i.uploader.queue.length,""),f(9),g("ngForOf",i.uploader==null?null:i.uploader.queue),f(5),g("ngStyle",qr(6,M8,(i.uploader==null?null:i.uploader.progress)+"%")),f(),g("disabled",!(!(i.uploader==null||(e=i.uploader.getNotUploadedItems())==null)&&e.length)),f(3),g("disabled",!(i.uploader!=null&&i.uploader.isUploading)),f(3),g("disabled",!(!(i.uploader==null||i.uploader.queue==null)&&i.uploader.queue.length))}}var Bm=class t{memberService=S(Ar);accountService=S(tt);member=Rn.required();uploader;hasBaseDropZoneOver=!1;baseUrl=Yt.apiUrl;memberChange=Qh();ngOnInit(){this.member().photoUrl||(this.member().photoUrl="https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain"),this.initializeUploader()}fileOverBase(n){this.hasBaseDropZoneOver=n}deletePhoto(n){this.memberService.deletePhoto(n).subscribe({next:e=>{let i=E({},this.member());i.photos=i.photos.filter(r=>r.id!==n.id),this.memberChange.emit(i)}})}setMainPhoto(n){this.memberService.setMainPhoto(n).subscribe({next:e=>{let i=this.accountService.currentUser();i&&(i.photoUrl=n.url,this.accountService.setCurrentUser(i));let r=E({},this.member());r.photoUrl=n.url,r.photos.forEach(o=>{o.isMain&&(o.isMain=!1),o.id===n.id&&(o.isMain=!0)}),this.memberChange.emit(r)}})}initializeUploader(){this.uploader=new Hm({url:this.baseUrl+"users/add-photo",authToken:"Bearer "+this.accountService.currentUser()?.token,isHTML5:!0,allowedFileType:["image"],removeAfterUpload:!0,autoUpload:!1,maxFileSize:1*1024*1024}),this.uploader.onAfterAddingFile=n=>{n.withCredentials=!1},this.uploader.onSuccessItem=(n,e,i,r)=>{let o=JSON.parse(e),s=E({},this.member());if(s.photos.push(o),this.memberChange.emit(s),o.isMain){let a=this.accountService.currentUser();a&&(a.photoUrl=o.url,this.accountService.setCurrentUser(a)),s.photoUrl=o.url,s.photos.forEach(l=>{l.isMain&&(l.isMain=!1),l.id===o.id&&(l.isMain=!0)}),this.memberChange.emit(s)}}}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-photo-editor"]],inputs:{member:[1,"member"]},outputs:{memberChange:"memberChange"},decls:11,vars:5,consts:[[1,"row"],[1,"col-2"],[1,"row","mt-5"],[1,"col-md-4"],["ng2FileDrop","",1,"card","bg-faded","p-5","text-center","my-drop-zone",3,"fileOver","ngClass","uploader"],[1,"fa","fa-upload","fa-3x"],["class","col-md-8","style","margin-bottom: 40px;",4,"ngIf"],["alt","photo of user",1,"img-thumbnail","p-1",3,"src"],[1,"text-center"],[1,"text-center","img-text"],[1,"btn","btn-sm","me-1",3,"click","disabled","ngClass"],[1,"btn","btn-sm","btn-danger",3,"click","disabled"],[1,"fa","fa-trash"],[1,"text-danger"],[1,"col-md-8",2,"margin-bottom","40px"],[1,"table"],["width","50%"],[4,"ngFor","ngForOf"],[1,"progress"],["role","progressbar",1,"progress-bar",3,"ngStyle"],["type","button",1,"btn","btn-success","btn-s",3,"click","disabled"],[1,"fa","fa-upload"],["type","button",1,"btn","btn-warning","btn-s",3,"click","disabled"],[1,"fa","fa-ban"],["type","button",1,"btn","btn-danger","btn-s",3,"click","disabled"],["nowrap","",4,"ngIf"],["nowrap",""]],template:function(e,i){e&1&&(d(0,"div",0),Et(1,I8,4,4,"div",1,S8),h(),d(3,"div",2)(4,"div",3)(5,"h3"),v(6,"Add photos"),h(),d(7,"div",4),D("fileOver",function(o){return i.fileOverBase(o)}),A(8,"i",5),v(9," Drop photo here "),h()(),T(10,A8,28,8,"div",6),h()),e&2&&(f(),Tt(i.member().photos),f(6),g("ngClass",qr(3,D8,i.hasBaseDropZoneOver))("uploader",i.uploader),f(3),g("ngIf",i.uploader==null||i.uploader.queue==null?null:i.uploader.queue.length))},dependencies:[De,rt,Zv,on,Ok,Rk,Jv],styles:[".nv-file-over[_ngcontent-%COMP%]{border:dotted 3px red}"]})};var R8=["editForm"];function O8(t,n){t&1&&(d(0,"div",4)(1,"p")(2,"strong"),v(3,"Information: "),h(),v(4," You have made changes. Any unsaved changes will be lost "),h()())}function P8(t,n){if(t&1){let e=N();d(0,"div",1)(1,"div",2)(2,"h1"),v(3,"Your profile"),h()(),d(4,"div",3),T(5,O8,5,0,"div",4),h(),d(6,"div",2)(7,"div",5),A(8,"img",6),d(9,"div",7)(10,"div")(11,"strong"),v(12,"Location:"),h(),d(13,"p"),v(14),h()(),d(15,"div")(16,"strong"),v(17,"Age:"),h(),d(18,"p"),v(19),h()(),d(20,"div")(21,"strong"),v(22,"Last Active:"),h(),d(23,"p"),v(24),te(25,"timeago"),h()(),d(26,"div")(27,"strong"),v(28,"Member since:"),h(),d(29,"p"),v(30),te(31,"date"),h()(),d(32,"div",8)(33,"button",9),v(34,"Save changes "),h()()()()(),d(35,"div",3)(36,"tabset",10)(37,"tab",11)(38,"form",12,0),D("ngSubmit",function(){C(e);let r=p();return w(r.updateMember())}),d(40,"h4",13),v(41,"Description"),h(),d(42,"textarea",14),Fe("ngModelChange",function(r){C(e);let o=p();return Ve(o.member.introduction,r)||(o.member.introduction=r),w(r)}),v(43," "),h(),d(44,"h4",13),v(45,"Looking for"),h(),d(46,"textarea",15),Fe("ngModelChange",function(r){C(e);let o=p();return Ve(o.member.lookingFor,r)||(o.member.lookingFor=r),w(r)}),v(47," "),h(),d(48,"h4",13),v(49,"Interests"),h(),d(50,"textarea",16),Fe("ngModelChange",function(r){C(e);let o=p();return Ve(o.member.interests,r)||(o.member.interests=r),w(r)}),v(51," "),h(),d(52,"h4",13),v(53,"Location details"),h(),d(54,"div",17)(55,"label"),v(56,"City: "),h(),d(57,"input",18),Fe("ngModelChange",function(r){C(e);let o=p();return Ve(o.member.city,r)||(o.member.city=r),w(r)}),h(),d(58,"label"),v(59,"Country: "),h(),d(60,"input",19),Fe("ngModelChange",function(r){C(e);let o=p();return Ve(o.member.country,r)||(o.member.country=r),w(r)}),h()()()(),d(61,"tab",20)(62,"app-photo-editor",21),D("memberChange",function(r){C(e);let o=p();return w(o.onMemberChange(r))}),h()()()()()}if(t&2){let e=$t(39),i=p();f(5),Re(e.dirty?5:-1),f(3),Dt("src",i.member.photoUrl,ft),Dt("alt",i.member.knownAs),f(6),hr("",i.member.city,", ",i.member.country,""),f(5),U(i.member.age),f(5),Te("",pe(25,17,i.member.lastActive)," "),f(6),U(Ja(31,19,i.member.created,"dd MMM, yyyy")),f(3),g("disabled",!e.dirty),f(4),Io("heading","About ",i.member.knownAs,""),f(5),Le("ngModel",i.member.introduction),f(4),Le("ngModel",i.member.lookingFor),f(4),Le("ngModel",i.member.interests),f(7),Le("ngModel",i.member.city),f(3),Le("ngModel",i.member.country),f(2),g("member",i.member)}}var Um=class t{editForm;notify(n){this.editForm?.dirty&&(n.returnValue=!0)}member;accountService=S(tt);memberService=S(Ar);toastr=S(hn);ngOnInit(){this.loadMember()}loadMember(){let n=this.accountService.currentUser();n&&this.memberService.getMember(n.username).subscribe(e=>{this.member=e})}updateMember(){this.memberService.updateMember(this.editForm?.value).subscribe({next:()=>{this.toastr.success("Profile updated successfully!"),this.editForm?.reset(this.member)}}),this.toastr.success("Profile updated successfully!"),this.editForm?.reset(this.member)}onMemberChange(n){this.member=n}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-member-edit"]],viewQuery:function(e,i){if(e&1&&Ot(R8,5),e&2){let r;Ge(r=qe())&&(i.editForm=r.first)}},hostBindings:function(e,i){e&1&&D("beforeunload",function(o){return i.notify(o)},!1,Vc)},decls:1,vars:1,consts:[["editForm","ngForm"],[1,"row"],[1,"col-4"],[1,"col-8"],[1,"alert","pb-1","alert-info"],[1,"card"],[1,"card-img","img-thumbnail",3,"src","alt"],[1,"card-body"],[1,"card-footer"],["form","editForm","type","submit",1,"btn","btn-success","col-12",3,"disabled"],[1,"member-tabset"],[3,"heading"],["id","editForm",3,"ngSubmit"],[1,"mt-2",2,"color","black"],["name","introduction","rows","6",1,"form-control",3,"ngModelChange","ngModel"],["name","lookingFor","rows","6",1,"form-control",3,"ngModelChange","ngModel"],["name","interests","rows","6",1,"form-control",3,"ngModelChange","ngModel"],[1,"d-flex","align-items-center"],["type","text","name","city",1,"form-control","mx-2",3,"ngModelChange","ngModel"],["type","text","name","country",1,"form-control","mx-2",3,"ngModelChange","ngModel"],["heading","Edit photos"],[3,"memberChange","member"]],template:function(e,i){e&1&&T(0,P8,63,22,"div",1),e&2&&Re(i.member?0:-1)},dependencies:[Zl,Ql,oa,Hn,wr,en,Nt,Cr,wn,to,Bm,qc,Or,Jo],styles:[".img-thumbnail[_ngcontent-%COMP%]{margin:25px;width:85%;height:85%}.card-body[_ngcontent-%COMP%]{padding:0 25px}.card-footer[_ngcontent-%COMP%]{padding:10px 15px;border-top:none}"]})};function Pk(t){return t!=null&&`${t}`!="false"}var FC;try{FC=typeof Intl<"u"&&Intl.v8BreakIterator}catch{FC=!1}var Lk=(()=>{class t{constructor(e){this._platformId=e,this.isBrowser=this._platformId?xs(this._platformId):typeof document=="object"&&!!document,this.EDGE=this.isBrowser&&/(edge)/i.test(navigator.userAgent),this.TRIDENT=this.isBrowser&&/(msie|trident)/i.test(navigator.userAgent),this.BLINK=this.isBrowser&&!!(window.chrome||FC)&&typeof CSS<"u"&&!this.EDGE&&!this.TRIDENT,this.WEBKIT=this.isBrowser&&/AppleWebKit/i.test(navigator.userAgent)&&!this.BLINK&&!this.EDGE&&!this.TRIDENT,this.IOS=this.isBrowser&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&!("MSStream"in window),this.FIREFOX=this.isBrowser&&/(firefox|minefield)/i.test(navigator.userAgent),this.ANDROID=this.isBrowser&&/android/i.test(navigator.userAgent)&&!this.TRIDENT,this.SAFARI=this.isBrowser&&/safari/i.test(navigator.userAgent)&&this.WEBKIT}static{this.\u0275fac=function(i){return new(i||t)(F(qn))}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var Fk=(()=>{class t{constructor(e){this._platform=e}isDisabled(e){return e.hasAttribute("disabled")}isVisible(e){return L8(e)&&getComputedStyle(e).visibility==="visible"}isTabbable(e){if(!this._platform.isBrowser)return!1;let i=N8(Y8(e));if(i&&(Nk(i)===-1||!this.isVisible(i)))return!1;let r=e.nodeName.toLowerCase(),o=Nk(e);return e.hasAttribute("contenteditable")?o!==-1:r==="iframe"||r==="object"||this._platform.WEBKIT&&this._platform.IOS&&!U8(e)?!1:r==="audio"?e.hasAttribute("controls")?o!==-1:!1:r==="video"?o===-1?!1:o!==null?!0:this._platform.FIREFOX||e.hasAttribute("controls"):e.tabIndex>=0}isFocusable(e,i){return $8(e)&&!this.isDisabled(e)&&(i?.ignoreVisibility||this.isVisible(e))}static{this.\u0275fac=function(i){return new(i||t)(F(Lk))}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();function N8(t){try{return t.frameElement}catch{return null}}function L8(t){return!!(t.offsetWidth||t.offsetHeight||typeof t.getClientRects=="function"&&t.getClientRects().length)}function F8(t){let n=t.nodeName.toLowerCase();return n==="input"||n==="select"||n==="button"||n==="textarea"}function V8(t){return H8(t)&&t.type=="hidden"}function j8(t){return B8(t)&&t.hasAttribute("href")}function H8(t){return t.nodeName.toLowerCase()=="input"}function B8(t){return t.nodeName.toLowerCase()=="a"}function Vk(t){if(!t.hasAttribute("tabindex")||t.tabIndex===void 0)return!1;let n=t.getAttribute("tabindex");return n=="-32768"?!1:!!(n&&!isNaN(parseInt(n,10)))}function Nk(t){if(!Vk(t))return null;let n=parseInt(t.getAttribute("tabindex")||"",10);return isNaN(n)?-1:n}function U8(t){let n=t.nodeName.toLowerCase(),e=n==="input"&&t.type;return e==="text"||e==="password"||n==="select"||n==="textarea"}function $8(t){return V8(t)?!1:F8(t)||j8(t)||t.hasAttribute("contenteditable")||Vk(t)}function Y8(t){return t.ownerDocument&&t.ownerDocument.defaultView||window}var z8=(()=>{class t{constructor(){this._focusTrapStack=[]}register(e){this._focusTrapStack=this._focusTrapStack.filter(r=>r!==e);let i=this._focusTrapStack;i.length&&i[i.length-1]._disable(),i.push(e),e._enable()}deregister(e){e._disable();let i=this._focusTrapStack,r=i.indexOf(e);r!==-1&&(i.splice(r,1),i.length&&i[i.length-1]._enable())}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})();var VC=class{get enabled(){return this._enabled}set enabled(n){this._enabled=n,this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(n,this._startAnchor),this._toggleAnchorTabIndex(n,this._endAnchor))}constructor(n,e,i,r,o=!1){this._element=n,this._checker=e,this._ngZone=i,this._document=r,this._hasAttached=!1,this.startAnchorListener=()=>this.focusLastTabbableElement(),this.endAnchorListener=()=>this.focusFirstTabbableElement(),this._enabled=!0,o||this.attachAnchors()}destroy(){let n=this._startAnchor,e=this._endAnchor;n&&(n.removeEventListener("focus",this.startAnchorListener),n.parentNode&&n.parentNode.removeChild(n)),e&&(e.removeEventListener("focus",this.endAnchorListener),e.parentNode&&e.parentNode.removeChild(e)),this._startAnchor=this._endAnchor=null,this._hasAttached=!1}attachAnchors(){return this._hasAttached?!0:(this._ngZone.runOutsideAngular(()=>{this._startAnchor||(this._startAnchor=this._createAnchor(),this._startAnchor.addEventListener("focus",this.startAnchorListener)),this._endAnchor||(this._endAnchor=this._createAnchor(),this._endAnchor.addEventListener("focus",this.endAnchorListener))}),this._element.parentNode&&(this._element.parentNode.insertBefore(this._startAnchor,this._element),this._element.parentNode.insertBefore(this._endAnchor,this._element.nextSibling),this._hasAttached=!0),this._hasAttached)}focusInitialElementWhenReady(){return new Promise(n=>{this._executeOnStable(()=>n(this.focusInitialElement()))})}focusFirstTabbableElementWhenReady(){return new Promise(n=>{this._executeOnStable(()=>n(this.focusFirstTabbableElement()))})}focusLastTabbableElementWhenReady(){return new Promise(n=>{this._executeOnStable(()=>n(this.focusLastTabbableElement()))})}_getRegionBoundary(n){let e=this._element.querySelectorAll(`[cdk-focus-region-${n}], [cdkFocusRegion${n}], [cdk-focus-${n}]`);for(let i=0;i=0;i--){let r=e[i].nodeType===this._document.ELEMENT_NODE?this._getLastTabbableElement(e[i]):null;if(r)return r}return null}_createAnchor(){let n=this._document.createElement("div");return this._toggleAnchorTabIndex(this._enabled,n),n.classList.add("cdk-visually-hidden"),n.classList.add("cdk-focus-trap-anchor"),n.setAttribute("aria-hidden","true"),n}_toggleAnchorTabIndex(n,e){n?e.setAttribute("tabindex","0"):e.removeAttribute("tabindex")}toggleAnchors(n){this._startAnchor&&this._endAnchor&&(this._toggleAnchorTabIndex(n,this._startAnchor),this._toggleAnchorTabIndex(n,this._endAnchor))}_executeOnStable(n){this._ngZone.isStable?n():this._ngZone.onStable.pipe(yt(1)).subscribe(n)}},W8=(()=>{class t{constructor(e,i,r){this._checker=e,this._ngZone=i,this._document=r}create(e,i=!1){return new VC(e,this._checker,this._ngZone,this._document,i)}static{this.\u0275fac=function(i){return new(i||t)(F(Fk),F(Me),F(Ie))}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),jk=(()=>{class t{get enabled(){return this.focusTrap.enabled}set enabled(e){this.focusTrap.enabled=Pk(e)}get autoCapture(){return this._autoCapture}set autoCapture(e){this._autoCapture=Pk(e)}constructor(e,i,r){this._elementRef=e,this._focusTrapFactory=i,this._previouslyFocusedElement=null,this._autoCapture=!1,this._document=r,this.focusTrap=this._focusTrapFactory.create(this._elementRef.nativeElement,!0)}ngOnDestroy(){this.focusTrap.destroy(),this._previouslyFocusedElement&&(this._previouslyFocusedElement.focus(),this._previouslyFocusedElement=null)}ngAfterContentInit(){this.focusTrap.attachAnchors(),this.autoCapture&&this._captureFocus()}ngDoCheck(){this.focusTrap.hasAttached()||this.focusTrap.attachAnchors()}ngOnChanges(e){let i=e.autoCapture;i&&!i.firstChange&&this.autoCapture&&this.focusTrap.hasAttached()&&this._captureFocus()}_captureFocus(){this._previouslyFocusedElement=this._document.activeElement,this.focusTrap.focusInitialElementWhenReady()}static{this.\u0275fac=function(i){return new(i||t)(y($),y(W8),y(Ie))}}static{this.\u0275dir=H({type:t,selectors:[["","focusTrap",""]],inputs:{enabled:[0,"cdkTrapFocus","enabled"],autoCapture:[0,"cdkTrapFocusAutoCapture","autoCapture"]},exportAs:["focusTrap"],features:[ce([z8,Lk,Fk]),xe]})}}return t})(),Hk=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({imports:[ot]})}}return t})();var G8=["*"],Xo=(()=>{class t{constructor(){this.hide=()=>{},this.setClass=()=>{}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})();var Bk=(()=>{class t{static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),$m={backdrop:!0,keyboard:!0,focus:!0,show:!1,ignoreBackdropClick:!1,class:"",animated:!0,initialState:{},closeInterceptor:void 0},q8=new B("override-default-config"),Nr={SCROLLBAR_MEASURER:"modal-scrollbar-measure",BACKDROP:"modal-backdrop",OPEN:"modal-open",FADE:"fade",IN:"in",SHOW:"show"};var Ym={MODAL:300,BACKDROP:150},jC={BACKRDOP:"backdrop-click",ESC:"esc",BACK:"browser-back-navigation-clicked"},Q8=(()=>{class t{get isAnimated(){return this._isAnimated}set isAnimated(e){this._isAnimated=e}get isShown(){return this._isShown}set isShown(e){this._isShown=e,e?this.renderer.addClass(this.element.nativeElement,`${Nr.SHOW}`):this.renderer.removeClass(this.element.nativeElement,`${Nr.SHOW}`)}constructor(e,i){this._isAnimated=!1,this._isShown=!1,this.element=e,this.renderer=i}ngOnInit(){this.isAnimated&&(this.renderer.addClass(this.element.nativeElement,`${Nr.FADE}`),em.reflow(this.element.nativeElement)),this.isShown=!0}static{this.\u0275fac=function(i){return new(i||t)(y($),y(ke))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-modal-backdrop"]],hostAttrs:[1,"modal-backdrop"],decls:0,vars:0,template:function(i,r){},encapsulation:2})}}return t})(),Z8=1,sa=(()=>{class t{constructor(e,i,r){this.clf=i,this.modalDefaultOption=r,this.onShow=new P,this.onShown=new P,this.onHide=new P,this.onHidden=new P,this.isBodyOverflowing=!1,this.originalBodyPadding=0,this.scrollbarWidth=0,this.modalsCount=0,this.lastHiddenId=null,this.loaders=[],this._focusEl=null,this._backdropLoader=this.clf.createLoader(),this._renderer=e.createRenderer(null,null),this.config=r?Object.assign({},$m,r):$m}show(e,i){this._focusEl=jt.activeElement,this.modalsCount++,this.lastHiddenId=null,this._createLoaders();let r=i?.id||Z8++;return this.config=this.modalDefaultOption?Object.assign({},$m,this.modalDefaultOption,i):Object.assign({},$m,i),this.config.id=r,this._showBackdrop(),this.lastDismissReason=void 0,this._showModal(e)}hide(e){this.lastHiddenId!==e&&(this.lastHiddenId=e,(this.modalsCount===1||e==null)&&(this._hideBackdrop(),this.resetScrollbar()),this.modalsCount=this.modalsCount>=1&&e!=null?this.modalsCount-1:0,setTimeout(()=>{this._hideModal(e),this.removeLoaders(e)},this.config.animated?Ym.BACKDROP:0),this._focusEl&&this._focusEl.focus())}_showBackdrop(){let e=this.config.backdrop===!0||this.config.backdrop==="static",i=!this.backdropRef||!this.backdropRef.instance.isShown;this.modalsCount===1&&(this.removeBackdrop(),e&&i&&(this._backdropLoader.attach(Q8).to("body").show({isAnimated:this.config.animated}),this.backdropRef=this._backdropLoader._componentRef))}_hideBackdrop(){if(!this.backdropRef)return;this.backdropRef.instance.isShown=!1;let e=this.config.animated?Ym.BACKDROP:0;setTimeout(()=>this.removeBackdrop(),e)}_showModal(e){let i=this.loaders[this.loaders.length-1];if(this.config&&this.config.providers)for(let s of this.config.providers)i.provide(s);let r=new Xo,o=i.provide({provide:Bk,useValue:this.config}).provide({provide:Xo,useValue:r}).attach(K8).to("body");return r.hide=()=>o.instance?.hide(),r.setClass=s=>{o.instance&&(o.instance.config.class=s)},r.onHidden=new P,r.onHide=new P,this.copyEvent(i.onBeforeHide,r.onHide),this.copyEvent(i.onHidden,r.onHidden),o.show({content:e,isAnimated:this.config.animated,initialState:this.config.initialState,bsModalService:this,id:this.config.id}),o.instance&&(o.instance.level=this.getModalsCount(),r.content=i.getInnerComponent(),r.id=o.instance.config?.id),r}_hideModal(e){if(e!=null){let i=this.loaders.findIndex(o=>o.instance?.config.id===e),r=this.loaders[i];r&&r.hide(e)}else this.loaders.forEach(i=>{i.instance&&i.hide(i.instance.config.id)})}getModalsCount(){return this.modalsCount}setDismissReason(e){this.lastDismissReason=e}removeBackdrop(){this._renderer.removeClass(jt.body,Nr.OPEN),this._renderer.setStyle(jt.body,"overflow-y",""),this._backdropLoader.hide(),this.backdropRef=void 0}checkScrollbar(){this.isBodyOverflowing=jt.body.clientWidthr.instance?.config.id===e);i>=0&&(this.loaders.splice(i,1),this.loaders.forEach((r,o)=>{r.instance&&(r.instance.level=o+1)}))}else this.loaders.splice(0,this.loaders.length)}copyEvent(e,i){e.subscribe(r=>{i.emit(this.lastDismissReason||r)})}static{this.\u0275fac=function(i){return new(i||t)(F(xn),F(Qt),F(q8,8))}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),K8=(()=>{class t{constructor(e,i,r){this._element=i,this._renderer=r,this.isShown=!1,this.isAnimated=!1,this._focusEl=null,this.isModalHiding=!1,this.clickStartedInContent=!1,this.config=Object.assign({},e)}ngOnInit(){this._focusEl=jt.activeElement,this.isAnimated&&this._renderer.addClass(this._element.nativeElement,Nr.FADE),this._renderer.setStyle(this._element.nativeElement,"display","block"),setTimeout(()=>{this.isShown=!0,this._renderer.addClass(this._element.nativeElement,Nr.SHOW)},this.isAnimated?Ym.BACKDROP:0),jt&&jt.body&&(this.bsModalService&&this.bsModalService.getModalsCount()===1&&(this.bsModalService.checkScrollbar(),this.bsModalService.setScrollbar()),this._renderer.addClass(jt.body,Nr.OPEN),this._renderer.setStyle(jt.body,"overflow-y","hidden")),this._element.nativeElement&&this._element.nativeElement.focus()}onClickStarted(e){this.clickStartedInContent=e.target!==this._element.nativeElement}onClickStop(e){let i=e.target===this._element.nativeElement&&!this.clickStartedInContent;if(this.config.ignoreBackdropClick||this.config.backdrop==="static"||!i){this.clickStartedInContent=!1;return}this.bsModalService?.setDismissReason(jC.BACKRDOP),this.hide()}onPopState(){this.bsModalService?.setDismissReason(jC.BACK),this.hide()}onEsc(e){this.isShown&&((e.keyCode===27||e.key==="Escape")&&e.preventDefault(),this.config.keyboard&&this.level===this.bsModalService?.getModalsCount()&&(this.bsModalService?.setDismissReason(jC.ESC),this.hide()))}ngOnDestroy(){this.isShown&&this._hide()}hide(){if(!this.isModalHiding){if(this.config.closeInterceptor){this.config.closeInterceptor().then(()=>this._hide(),()=>{});return}this._hide()}}_hide(){this.isModalHiding=!0,this._renderer.removeClass(this._element.nativeElement,Nr.SHOW),setTimeout(()=>{this.isShown=!1,this.bsModalService?.hide(this.config.id),jt&&jt.body&&this.bsModalService?.getModalsCount()===0&&(this._renderer.removeClass(jt.body,Nr.OPEN),this._renderer.setStyle(jt.body,"overflow-y","")),this.bsModalService?.hide(this.config.id),this.isModalHiding=!1,this._focusEl&&this._focusEl.focus()},this.isAnimated?Ym.MODAL:0)}static{this.\u0275fac=function(i){return new(i||t)(y(Bk),y($),y(ke))}}static{this.\u0275cmp=L({type:t,selectors:[["modal-container"]],hostAttrs:["role","dialog","tabindex","-1",1,"modal"],hostVars:3,hostBindings:function(i,r){i&1&&D("mousedown",function(s){return r.onClickStarted(s)})("click",function(s){return r.onClickStop(s)})("popstate",function(){return r.onPopState()},!1,Vc)("keydown.esc",function(s){return r.onEsc(s)},!1,Vc),i&2&&J("aria-modal",!0)("aria-labelledby",r.config.ariaLabelledBy)("aria-describedby",r.config.ariaDescribedby)},features:[ce([sa])],ngContentSelectors:G8,decls:3,vars:2,consts:[["role","document","focusTrap",""],[1,"modal-content"]],template:function(i,r){i&1&&(Pn(),d(0,"div",0)(1,"div",1),Cn(2),h()()),i&2&&Jt("modal-dialog"+(r.config.class?" "+r.config.class:""))},dependencies:[jk],encapsulation:2})}}return t})();var Uk=(()=>{class t{static forRoot(){return{ngModule:t,providers:[sa,Qt,nn]}}static forChild(){return{ngModule:t,providers:[sa,Qt,nn]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({imports:[Hk]})}}return t})();var zm=class t{bsModalRef=S(Xo);title="";message="";btnOkText="";btnCancelText="";result=!1;confirm(){this.result=!0,this.bsModalRef.hide()}decline(){this.bsModalRef.hide()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-confirm-dialog"]],decls:11,vars:4,consts:[[1,"modal-header"],[1,"modal-title","pull-left"],[1,"modal-body"],[1,"modal-footer"],["type","button",1,"btn","btn-success",3,"click"],["type","button",1,"btn","btn-danger",3,"click"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"h4",1),v(2),h()(),d(3,"div",2)(4,"p"),v(5),h()(),d(6,"div",3)(7,"button",4),D("click",function(){return i.confirm()}),v(8),h(),d(9,"button",5),D("click",function(){return i.decline()}),v(10),h()()),e&2&&(f(2),U(i.title),f(3),U(i.message),f(3),U(i.btnOkText),f(2),U(i.btnCancelText))},encapsulation:2})};var Wm=class t{bsModalRef;modalService=S(sa);confirm(n="Confirmation",e="Are you sure you want to do this?",i="Ok",r="Cancel"){let o={initialState:{title:n,message:e,btnOkText:i,btnCancelText:r}};return this.bsModalRef=this.modalService.show(zm,o),this.bsModalRef.onHidden?.pipe(G(()=>this.bsModalRef?.content?this.bsModalRef.content.result:!1))}static \u0275fac=function(e){return new(e||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})};var $k=(t,n,e,i)=>{let r=S(Wm);return t.editForm?.dirty?r.confirm()??!1:!0};var Yk=(t,n)=>{let e=S(Ar),i=t.paramMap.get("username");return i?e.getMember(i):null};var ic=class t{baseUrl=Yt.apiUrl;http=S(Fn);getUserWithRoles(){return this.http.get(this.baseUrl+"admin/users-with-roles")}updateUserRoles(n,e){return this.http.post(this.baseUrl+"admin/edit-roles/"+n+"?roles="+e,{})}getPhotosForApproval(){return this.http.get(this.baseUrl+"admin/photos-to-moderate")}approvePhoto(n){return this.http.post(this.baseUrl+"admin/approve-photo/"+n,{})}rejectPhoto(n){return this.http.post(this.baseUrl+"admin/reject-photo/"+n,{})}static \u0275fac=function(e){return new(e||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})};function J8(t,n){if(t&1){let e=N();d(0,"div",5)(1,"input",8),D("change",function(){let r=C(e).$implicit,o=p();return w(o.updateChecked(r))}),h(),d(2,"label"),v(3),h()()}if(t&2){let e=n.$implicit,i=p();f(),g("checked",i.selectedRoles.includes(e))("disabled",e==="Admin"&&i.username==="admin"),f(2),U(e)}}var Gm=class t{bsModalRef=S(Xo);title="";availableRoles=[];selectedRoles=[];username="";rolesUpdated=!1;updateChecked(n){this.selectedRoles.includes(n)?this.selectedRoles=this.selectedRoles.filter(e=>e!==n):this.selectedRoles.push(n)}onSelectRoles(){this.rolesUpdated=!0,this.bsModalRef.hide()}hide(){this.bsModalRef.hide()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-roles-modal"]],decls:12,vars:2,consts:[[1,"modal-header"],[1,"modal-title","pull-left"],["type","button",1,"btn-close","close","pull-right",3,"click"],[1,"visually-hidden"],[1,"modal-body"],[1,"form-check"],[1,"modal-footer"],["type","button",1,"btn","btn-success",3,"click","disabled"],["type","checkbox","value","role",1,"form-check-input",3,"change","checked","disabled"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"h4",1),v(2),h(),d(3,"button",2),D("click",function(){return i.hide()}),d(4,"span",3),v(5,"\xD7"),h()()(),d(6,"div",4),Et(7,J8,4,3,"div",5,Ka),h(),d(9,"div",6)(10,"button",7),D("click",function(){return i.onSelectRoles()}),v(11,"Submit"),h()()),e&2&&(f(2),U(i.title),f(5),Tt(i.availableRoles),f(3),g("disabled",i.selectedRoles.length===0))},encapsulation:2})};var X8=(t,n)=>n.username;function eG(t,n){if(t&1){let e=N();d(0,"tr")(1,"td"),v(2),h(),d(3,"td"),v(4),h(),d(5,"td")(6,"button",4),D("click",function(){let r=C(e).$implicit,o=p();return w(o.openRolesModal(r))}),v(7,"Edit roles"),h()()()}if(t&2){let e=n.$implicit;f(2),U(e.username),f(2),U(e.roles)}}var qm=class t{adminService=S(ic);modalService=S(sa);bsModalRef=new Xo;users=[];ngOnInit(){this.getUserWithRoles()}getUserWithRoles(){this.adminService.getUserWithRoles().subscribe({next:n=>this.users=n})}openRolesModal(n){let e={class:"modal-lg",initialState:{title:"User roles",username:n.username,selectedRoles:[...n.roles],availableRoles:["Admin","Moderator","Member"],users:this.users,rolesUpdated:!1}};this.bsModalRef=this.modalService.show(Gm,e),this.bsModalRef.onHide?.subscribe({next:()=>{if(this.bsModalRef.content&&this.bsModalRef.content.rolesUpdated){let i=this.bsModalRef.content.selectedRoles;this.adminService.updateUserRoles(n.username,i).subscribe({next:r=>n.roles=r})}}})}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-user-management"]],decls:12,vars:0,consts:[[1,"row"],[1,"table"],[2,"width","30%"],[2,"width","40%"],[1,"btn","btn-info",3,"click"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"table",1)(2,"thead")(3,"tr")(4,"th",2),v(5,"Username"),h(),d(6,"th",3),v(7,"Active roles"),h(),A(8,"th",2),h()(),d(9,"tbody"),Et(10,eG,8,2,"tr",null,X8),h()()()),e&2&&(f(10),Tt(i.users))},encapsulation:2})};var rc=class t{appHasRole=[];accountService=S(tt);viewContainerRef=S(pt);templateRef=S(St);ngOnInit(){this.accountService.roles()?.some(n=>this.appHasRole.includes(n))?this.viewContainerRef.createEmbeddedView(this.templateRef):this.viewContainerRef.clear()}static \u0275fac=function(e){return new(e||t)};static \u0275dir=H({type:t,selectors:[["","appHasRole",""]],inputs:{appHasRole:"appHasRole"}})};var tG=(t,n)=>n.id;function nG(t,n){if(t&1){let e=N();d(0,"div",2)(1,"div",4)(2,"img",5),D("click",function(){let r=C(e).$implicit,o=p();return w(o.openPhotoModal(r))}),h(),d(3,"div",6)(4,"button",7),D("click",function(){let r=C(e).$implicit,o=p();return w(o.approvePhoto(r.id))}),A(5,"i",8),v(6," Approve "),h(),d(7,"button",9),D("click",function(){let r=C(e).$implicit,o=p();return w(o.rejectPhoto(r.id))}),A(8,"i",10),v(9," Reject "),h()()()()}if(t&2){let e=n.$implicit;f(2),Dt("src",e.url,ft)}}function iG(t,n){if(t&1){let e=N();d(0,"div",25)(1,"textarea",30),Fe("ngModelChange",function(r){C(e);let o=p(2);return Ve(o.adminMessage,r)||(o.adminMessage=r),w(r)}),h()()}if(t&2){let e=p(2);f(),Le("ngModel",e.adminMessage)}}function rG(t,n){if(t&1){let e=N();d(0,"div",11)(1,"div",12),D("click",function(){C(e);let r=p();return w(r.closePhotoModal())}),h(),d(2,"div",13)(3,"div",14)(4,"h5",15),v(5,"Photo Preview"),h(),d(6,"button",16),D("click",function(){C(e);let r=p();return w(r.closePhotoModal())}),h()(),d(7,"div",17),A(8,"img",18),h(),d(9,"div",19)(10,"div",20)(11,"div",21)(12,"input",22),Fe("ngModelChange",function(r){C(e);let o=p();return Ve(o.isAnonymous,r)||(o.isAnonymous=r),w(r)}),h(),d(13,"label",23),A(14,"i",24),v(15," Send message "),h()()(),T(16,iG,2,1,"div",25),d(17,"div",26)(18,"button",7),D("click",function(){C(e);let r=p();return r.approvePhoto(r.selectedPhoto.id),w(r.closePhotoModal())}),A(19,"i",8),v(20," Approve "),h(),d(21,"button",27),D("click",function(){C(e);let r=p();return r.rejectPhoto(r.selectedPhoto.id),w(r.closePhotoModal())}),A(22,"i",10),v(23," Reject "),h(),d(24,"button",28),D("click",function(){C(e);let r=p();return w(r.closePhotoModal())}),A(25,"i",29),v(26," Close "),h()()()()()}if(t&2){let e=p();j("show",e.isModalOpen),f(8),g("src",e.selectedPhoto.url,ft),f(4),Le("ngModel",e.isAnonymous),f(4),Re(e.isAnonymous?16:-1)}}var Qm=class t{adminservice=S(ic);toastrService=S(hn);messageService=S(Pr);accountService=S(tt);selectedPhoto=null;isModalOpen=!1;photos=[];isAnonymous=!1;adminMessage="";ngOnInit(){this.approvePhotosForApproval()}approvePhotosForApproval(){this.adminservice.getPhotosForApproval().subscribe({next:n=>this.photos=n,error:n=>{this.toastrService.error("Failed to load photos"),console.log(n)}})}approvePhoto(n){this.isAnonymous&&(this.adminMessage!=""?this.sendMessage():this.toastrService.error("Type in the message, that you have decided to send!")),this.adminservice.approvePhoto(n).subscribe({next:()=>this.photos.splice(this.photos.findIndex(e=>e.id===n),1),error:e=>{this.toastrService.error("Failed to approve photo"),console.log(e)}})}rejectPhoto(n){this.isAnonymous&&(this.adminMessage!=""?this.sendMessage():this.toastrService.error("Type in the message, that you have decided to send!")),this.adminservice.rejectPhoto(n).subscribe({next:()=>this.photos.splice(this.photos.findIndex(e=>e.id===n),1),error:e=>{this.toastrService.error("Failed to reject photo"),console.log(e)}})}sendMessage(){let n=`Regarding your photo: ${this.adminMessage}`;if(this.selectedPhoto?.username){if(!this.accountService.currentUser){this.toastrService.error("You must be logged in to send messages");return}this.messageService.sendMessage(this.selectedPhoto.username,n)?.then(()=>{console.log(`Anonymous message sent to ${this.selectedPhoto?.username}`)}).catch(i=>{console.error("Error sending message:",i),this.toastrService.error("Failed to send notification message")})}else this.toastrService.error("No username selected for the photo")}openPhotoModal(n){this.selectedPhoto=n,this.isModalOpen=!0,this.isAnonymous=!1,this.adminMessage="";let e=this.accountService.currentUser();e&&(this.messageService.createHubConnection(e,this.selectedPhoto.username),document.body.classList.add("modal-open"))}closePhotoModal(){this.messageService.stopHubConnection(),this.isModalOpen=!1,document.body.classList.remove("modal-open"),setTimeout(()=>{this.selectedPhoto=null,this.isAnonymous=!1,this.adminMessage=""},300)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-photo-management"]],decls:5,vars:1,consts:[[1,"photo-gallery-container"],[1,"row","g-3"],[1,"col-sm-6","col-md-4","col-lg-3","mb-3"],[1,"photo-modal",3,"show"],[1,"photo-card"],["alt","photo waiting to be approved",1,"img-thumbnail","photo-image",3,"click","src"],[1,"action-buttons","mt-2"],[1,"btn","btn-success","me-2",3,"click"],[1,"bi","bi-check-lg"],[1,"btn","btn-danger",3,"click"],[1,"bi","bi-x-lg"],[1,"photo-modal"],[1,"modal-backdrop",3,"click"],[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button",1,"btn-close",3,"click"],[1,"modal-body"],["alt","enlarged photo",1,"modal-image",3,"src"],[1,"modal-footer"],[1,"anonymity-toggle","mb-3"],[1,"form-check","form-switch"],["type","checkbox","id","anonymitySwitch",1,"form-check-input",3,"ngModelChange","ngModel"],["for","anonymitySwitch",1,"form-check-label"],[1,"bi","bi-incognito","me-1"],[1,"admin-message","mb-3","w-100"],[1,"action-buttons"],[1,"btn","btn-danger","me-2",3,"click"],[1,"btn","btn-secondary",3,"click"],[1,"bi","bi-x"],["rows","3","placeholder","Enter message...",1,"form-control",3,"ngModelChange","ngModel"]],template:function(e,i){e&1&&(d(0,"div",0)(1,"div",1),Et(2,nG,10,1,"div",2,tG),h(),T(4,rG,27,5,"div",3),h()),e&2&&(f(2),Tt(i.photos),f(2),Re(i.selectedPhoto?4:-1))},dependencies:[rx,Hn,en,H0,Nt,wn],styles:['img.img-thumbnail[_ngcontent-%COMP%]{height:175px;min-width:175px!important;margin-bottom:2px}[_nghost-%COMP%]{--bg-color: #121212;--card-bg: #1e1e1e;--text-color: #e0e0e0;--border-color: #333;--btn-success-bg: #2e7d32;--btn-success-hover: #388e3c;--btn-danger-bg: #c62828;--btn-danger-hover: #d32f2f;--btn-secondary-bg: #424242;--btn-secondary-hover: #616161;--modal-bg: #212121;--input-bg: #2c2c2c;--input-border: #444;--switch-active: #2e7d32}.photo-gallery-container[_ngcontent-%COMP%]{background-color:var(--bg-color);color:var(--text-color);padding:1.5rem;min-height:100vh}.photo-card[_ngcontent-%COMP%]{background-color:var(--card-bg);border-radius:8px;overflow:hidden;box-shadow:0 4px 8px #0000004d;transition:transform .2s ease}.photo-card[_ngcontent-%COMP%]:hover{transform:translateY(-5px)}.photo-image[_ngcontent-%COMP%]{width:100%;height:200px;object-fit:cover;cursor:pointer;border:1px solid var(--border-color);background-color:var(--card-bg)}.action-buttons[_ngcontent-%COMP%]{display:flex;justify-content:center;padding:.75rem;gap:.5rem}.action-buttons[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%]{display:flex;align-items:center;justify-content:center;font-weight:500;border:none;border-radius:6px;transition:all .2s ease;padding:.5rem 1rem}.action-buttons[_ngcontent-%COMP%] .btn[_ngcontent-%COMP%] i[_ngcontent-%COMP%]{margin-right:5px}.action-buttons[_ngcontent-%COMP%] .btn-success[_ngcontent-%COMP%]{background-color:var(--btn-success-bg)}.action-buttons[_ngcontent-%COMP%] .btn-success[_ngcontent-%COMP%]:hover{background-color:var(--btn-success-hover)}.action-buttons[_ngcontent-%COMP%] .btn-danger[_ngcontent-%COMP%]{background-color:var(--btn-danger-bg)}.action-buttons[_ngcontent-%COMP%] .btn-danger[_ngcontent-%COMP%]:hover{background-color:var(--btn-danger-hover)}.action-buttons[_ngcontent-%COMP%] .btn-secondary[_ngcontent-%COMP%]{background-color:var(--btn-secondary-bg)}.action-buttons[_ngcontent-%COMP%] .btn-secondary[_ngcontent-%COMP%]:hover{background-color:var(--btn-secondary-hover)}.photo-modal[_ngcontent-%COMP%]{position:fixed;inset:0;z-index:1050;display:flex;justify-content:center;align-items:center;opacity:0;visibility:hidden;transition:opacity .3s ease,visibility .3s ease}.photo-modal.show[_ngcontent-%COMP%]{opacity:1;visibility:visible}.modal-backdrop[_ngcontent-%COMP%]{position:absolute;inset:0;background-color:#000c}.modal-content[_ngcontent-%COMP%]{position:relative;background-color:var(--modal-bg);border-radius:12px;width:90%;max-width:800px;box-shadow:0 10px 25px #00000080;max-height:90vh;display:flex;flex-direction:column;z-index:1051}.modal-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid var(--border-color)}.modal-header[_ngcontent-%COMP%] .modal-title[_ngcontent-%COMP%]{margin:0;color:var(--text-color);font-size:1.25rem}.modal-header[_ngcontent-%COMP%] .btn-close[_ngcontent-%COMP%]{color:var(--text-color);opacity:.7;background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.25rem}.modal-header[_ngcontent-%COMP%] .btn-close[_ngcontent-%COMP%]:hover{opacity:1}.modal-header[_ngcontent-%COMP%] .btn-close[_ngcontent-%COMP%]:after{content:"\\d7"}.modal-body[_ngcontent-%COMP%]{padding:1rem;overflow-y:auto;display:flex;justify-content:center;align-items:center}.modal-body[_ngcontent-%COMP%] .modal-image[_ngcontent-%COMP%]{max-width:100%;max-height:60vh;object-fit:contain;border-radius:4px}.modal-footer[_ngcontent-%COMP%]{padding:1rem;border-top:1px solid var(--border-color);display:flex;flex-direction:column;align-items:stretch}.anonymity-toggle[_ngcontent-%COMP%]{align-self:flex-start;margin-bottom:1rem}.form-check-input[_ngcontent-%COMP%]{background-color:var(--input-bg);border-color:var(--input-border);width:40px;height:20px;cursor:pointer}.form-check-input[_ngcontent-%COMP%]:checked{background-color:var(--switch-active);border-color:var(--switch-active)}.admin-message[_ngcontent-%COMP%]{margin-bottom:1rem;width:100%}.form-control[_ngcontent-%COMP%]{background-color:var(--input-bg);border-color:var(--input-border);color:var(--text-color);resize:vertical;border-radius:6px;padding:.75rem;transition:border-color .2s ease}.form-control[_ngcontent-%COMP%]:focus{border-color:#777;box-shadow:0 0 0 .2rem #54545440}.form-check-label[_ngcontent-%COMP%]{cursor:pointer;display:flex;align-items:center;-webkit-user-select:none;user-select:none}']})};var oG=()=>["Admin"],sG=()=>["Admin","Moderator"];function aG(t,n){t&1&&(d(0,"tab",4)(1,"div",5),A(2,"app-user-management"),h()())}function lG(t,n){t&1&&(d(0,"tab",6)(1,"div",5),A(2,"app-photo-management"),h()())}var Zm=class t{static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-admin-panel"]],decls:6,vars:4,consts:[[1,"tab-panel"],[1,"member-tabset"],["heading","User management",4,"appHasRole"],["heading","Photo management",4,"appHasRole"],["heading","User management"],[1,"container"],["heading","Photo management"]],template:function(e,i){e&1&&(d(0,"h2"),v(1,"Admin panel"),h(),d(2,"div",0)(3,"tabset",1),T(4,aG,3,0,"tab",2)(5,lG,3,0,"tab",3),h()()),e&2&&(f(4),g("appHasRole",Gr(2,oG)),f(),g("appHasRole",Gr(3,sG)))},dependencies:[Zl,Ql,oa,qm,rc,Qm],encapsulation:2})};var zk=(t,n)=>{let e=S(tt),i=S(hn);return e.roles().includes("Admin")||e.roles().includes("Moderator")?!0:(i.error("You cannot enter this area"),!1)};var Wk=[{path:"",component:id},{path:"",runGuardsAndResolvers:"always",canActivate:[Ak],children:[{path:"members",component:ym},{path:"members/:username",component:Pm,resolve:{member:Yk}},{path:"member/edit",component:Um,canDeactivate:[$k]},{path:"lists",component:Nm},{path:"messages",component:Lm},{path:"admin",component:Zm,canActivate:[zk]}]},{path:"errors",component:Fm},{path:"not-found",component:Vm},{path:"server-error",component:jm},{path:"**",component:id,pathMatch:"full"}];function Gk(t){return new R(3e3,!1)}function cG(){return new R(3100,!1)}function uG(){return new R(3101,!1)}function dG(t){return new R(3001,!1)}function hG(t){return new R(3003,!1)}function fG(t){return new R(3004,!1)}function Qk(t,n){return new R(3005,!1)}function Zk(){return new R(3006,!1)}function Kk(){return new R(3007,!1)}function Jk(t,n){return new R(3008,!1)}function Xk(t){return new R(3002,!1)}function eA(t,n,e,i,r){return new R(3010,!1)}function tA(){return new R(3011,!1)}function nA(){return new R(3012,!1)}function iA(){return new R(3200,!1)}function rA(){return new R(3202,!1)}function oA(){return new R(3013,!1)}function sA(t){return new R(3014,!1)}function aA(t){return new R(3015,!1)}function lA(t){return new R(3016,!1)}function cA(t,n){return new R(3404,!1)}function pG(t){return new R(3502,!1)}function uA(t){return new R(3503,!1)}function dA(){return new R(3300,!1)}function hA(t){return new R(3504,!1)}function fA(t){return new R(3301,!1)}function pA(t,n){return new R(3302,!1)}function mA(t){return new R(3303,!1)}function gA(t,n){return new R(3400,!1)}function _A(t){return new R(3401,!1)}function yA(t){return new R(3402,!1)}function vA(t,n){return new R(3505,!1)}function uo(t){switch(t.length){case 0:return new Tr;case 1:return t[0];default:return new Us(t)}}function $C(t,n,e=new Map,i=new Map){let r=[],o=[],s=-1,a=null;if(n.forEach(l=>{let c=l.get("offset"),u=c==s,m=u&&a||new Map;l.forEach((b,_)=>{let M=_,I=b;if(_!=="offset")switch(M=t.normalizePropertyName(M,r),I){case wl:I=e.get(_);break;case wi:I=i.get(_);break;default:I=t.normalizeStyleValue(_,M,I,r);break}m.set(M,I)}),u||o.push(m),a=m,s=c}),r.length)throw pG(r);return o}function Km(t,n,e,i){switch(n){case"start":t.onStart(()=>i(e&&HC(e,"start",t)));break;case"done":t.onDone(()=>i(e&&HC(e,"done",t)));break;case"destroy":t.onDestroy(()=>i(e&&HC(e,"destroy",t)));break}}function HC(t,n,e){let i=e.totalTime,r=!!e.disabled,o=Jm(t.element,t.triggerName,t.fromState,t.toState,n||t.phaseName,i??t.totalTime,r),s=t._data;return s!=null&&(o._data=s),o}function Jm(t,n,e,i,r="",o=0,s){return{element:t,triggerName:n,fromState:e,toState:i,phaseName:r,totalTime:o,disabled:!!s}}function Un(t,n,e){let i=t.get(n);return i||t.set(n,i=e),i}function YC(t){let n=t.indexOf(":"),e=t.substring(1,n),i=t.slice(n+1);return[e,i]}var mG=typeof document>"u"?null:document.documentElement;function Xm(t){let n=t.parentNode||t.host||null;return n===mG?null:n}function gG(t){return t.substring(1,6)=="ebkit"}var aa=null,qk=!1;function bA(t){aa||(aa=_G()||{},qk=aa.style?"WebkitAppearance"in aa.style:!1);let n=!0;return aa.style&&!gG(t)&&(n=t in aa.style,!n&&qk&&(n="Webkit"+t.charAt(0).toUpperCase()+t.slice(1)in aa.style)),n}function _G(){return typeof document<"u"?document.body:null}function zC(t,n){for(;n;){if(n===t)return!0;n=Xm(n)}return!1}function WC(t,n,e){if(e)return Array.from(t.querySelectorAll(n));let i=t.querySelector(n);return i?[i]:[]}var yG=1e3,GC="{{",vG="}}",qC="ng-enter",eg="ng-leave",dd="ng-trigger",hd=".ng-trigger",QC="ng-animating",tg=".ng-animating";function Lr(t){if(typeof t=="number")return t;let n=t.match(/^(-?[\.\d]+)(m?s)/);return!n||n.length<2?0:BC(parseFloat(n[1]),n[2])}function BC(t,n){switch(n){case"s":return t*yG;default:return t}}function fd(t,n,e){return t.hasOwnProperty("duration")?t:bG(t,n,e)}function bG(t,n,e){let i=/^(-?[\.\d]+)(m?s)(?:\s+(-?[\.\d]+)(m?s))?(?:\s+([-a-z]+(?:\(.+?\))?))?$/i,r,o=0,s="";if(typeof t=="string"){let a=t.match(i);if(a===null)return n.push(Gk(t)),{duration:0,delay:0,easing:""};r=BC(parseFloat(a[1]),a[2]);let l=a[3];l!=null&&(o=BC(parseFloat(l),a[4]));let c=a[5];c&&(s=c)}else r=t;if(!e){let a=!1,l=n.length;r<0&&(n.push(cG()),a=!0),o<0&&(n.push(uG()),a=!0),a&&n.splice(l,0,Gk(t))}return{duration:r,delay:o,easing:s}}function CA(t){return t.length?t[0]instanceof Map?t:t.map(n=>new Map(Object.entries(n))):[]}function er(t,n,e){n.forEach((i,r)=>{let o=ng(r);e&&!e.has(r)&&e.set(r,t.style[o]),t.style[o]=i})}function es(t,n){n.forEach((e,i)=>{let r=ng(i);t.style[r]=""})}function oc(t){return Array.isArray(t)?t.length==1?t[0]:Fp(t):t}function wA(t,n,e){let i=n.params||{},r=ZC(t);r.length&&r.forEach(o=>{i.hasOwnProperty(o)||e.push(dG(o))})}var UC=new RegExp(`${GC}\\s*(.+?)\\s*${vG}`,"g");function ZC(t){let n=[];if(typeof t=="string"){let e;for(;e=UC.exec(t);)n.push(e[1]);UC.lastIndex=0}return n}function sc(t,n,e){let i=`${t}`,r=i.replace(UC,(o,s)=>{let a=n[s];return a==null&&(e.push(hG(s)),a=""),a.toString()});return r==i?t:r}var CG=/-+([a-z0-9])/g;function ng(t){return t.replace(CG,(...n)=>n[1].toUpperCase())}function DA(t,n){return t===0||n===0}function MA(t,n,e){if(e.size&&n.length){let i=n[0],r=[];if(e.forEach((o,s)=>{i.has(s)||r.push(s),i.set(s,o)}),r.length)for(let o=1;os.set(a,ig(t,a)))}}return n}function $n(t,n,e){switch(n.type){case ue.Trigger:return t.visitTrigger(n,e);case ue.State:return t.visitState(n,e);case ue.Transition:return t.visitTransition(n,e);case ue.Sequence:return t.visitSequence(n,e);case ue.Group:return t.visitGroup(n,e);case ue.Animate:return t.visitAnimate(n,e);case ue.Keyframes:return t.visitKeyframes(n,e);case ue.Style:return t.visitStyle(n,e);case ue.Reference:return t.visitReference(n,e);case ue.AnimateChild:return t.visitAnimateChild(n,e);case ue.AnimateRef:return t.visitAnimateRef(n,e);case ue.Query:return t.visitQuery(n,e);case ue.Stagger:return t.visitStagger(n,e);default:throw fG(n.type)}}function ig(t,n){return window.getComputedStyle(t)[n]}var fw=(()=>{class t{validateStyleProperty(e){return bA(e)}containsElement(e,i){return zC(e,i)}getParentElement(e){return Xm(e)}query(e,i,r){return WC(e,i,r)}computeStyle(e,i,r){return r||""}animate(e,i,r,o,s,a=[],l){return new Tr(r,o)}static \u0275fac=function(i){return new(i||t)};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})(),ca=class{static NOOP=new fw},ua=class{};var wG=new Set(["width","height","minWidth","minHeight","maxWidth","maxHeight","left","top","bottom","right","fontSize","outlineWidth","outlineOffset","paddingTop","paddingLeft","paddingBottom","paddingRight","marginTop","marginLeft","marginBottom","marginRight","borderRadius","borderWidth","borderTopWidth","borderLeftWidth","borderRightWidth","borderBottomWidth","textIndent","perspective"]),lg=class extends ua{normalizePropertyName(n,e){return ng(n)}normalizeStyleValue(n,e,i,r){let o="",s=i.toString().trim();if(wG.has(e)&&i!==0&&i!=="0")if(typeof i=="number")o="px";else{let a=i.match(/^[+-]?[\d\.]+([a-z]*)$/);a&&a[1].length==0&&r.push(Qk(n,i))}return s+o}};var cg="*";function DG(t,n){let e=[];return typeof t=="string"?t.split(/\s*,\s*/).forEach(i=>MG(i,e,n)):e.push(t),e}function MG(t,n,e){if(t[0]==":"){let l=SG(t,e);if(typeof l=="function"){n.push(l);return}t=l}let i=t.match(/^(\*|[-\w]+)\s*()\s*(\*|[-\w]+)$/);if(i==null||i.length<4)return e.push(aA(t)),n;let r=i[1],o=i[2],s=i[3];n.push(SA(r,s));let a=r==cg&&s==cg;o[0]=="<"&&!a&&n.push(SA(s,r))}function SG(t,n){switch(t){case":enter":return"void => *";case":leave":return"* => void";case":increment":return(e,i)=>parseFloat(i)>parseFloat(e);case":decrement":return(e,i)=>parseFloat(i) *"}}var rg=new Set(["true","1"]),og=new Set(["false","0"]);function SA(t,n){let e=rg.has(t)||og.has(t),i=rg.has(n)||og.has(n);return(r,o)=>{let s=t==cg||t==r,a=n==cg||n==o;return!s&&e&&typeof r=="boolean"&&(s=r?rg.has(t):og.has(t)),!a&&i&&typeof o=="boolean"&&(a=o?rg.has(n):og.has(n)),s&&a}}var NA=":self",EG=new RegExp(`s*${NA}s*,?`,"g");function LA(t,n,e,i){return new nw(t).build(n,e,i)}var EA="",nw=class{_driver;constructor(n){this._driver=n}build(n,e,i){let r=new iw(e);return this._resetContextStyleTimingState(r),$n(this,oc(n),r)}_resetContextStyleTimingState(n){n.currentQuerySelector=EA,n.collectedStyles=new Map,n.collectedStyles.set(EA,new Map),n.currentTime=0}visitTrigger(n,e){let i=e.queryCount=0,r=e.depCount=0,o=[],s=[];return n.name.charAt(0)=="@"&&e.errors.push(Zk()),n.definitions.forEach(a=>{if(this._resetContextStyleTimingState(e),a.type==ue.State){let l=a,c=l.name;c.toString().split(/\s*,\s*/).forEach(u=>{l.name=u,o.push(this.visitState(l,e))}),l.name=c}else if(a.type==ue.Transition){let l=this.visitTransition(a,e);i+=l.queryCount,r+=l.depCount,s.push(l)}else e.errors.push(Kk())}),{type:ue.Trigger,name:n.name,states:o,transitions:s,queryCount:i,depCount:r,options:null}}visitState(n,e){let i=this.visitStyle(n.styles,e),r=n.options&&n.options.params||null;if(i.containsDynamicStyles){let o=new Set,s=r||{};i.styles.forEach(a=>{a instanceof Map&&a.forEach(l=>{ZC(l).forEach(c=>{s.hasOwnProperty(c)||o.add(c)})})}),o.size&&e.errors.push(Jk(n.name,[...o.values()]))}return{type:ue.State,name:n.name,style:i,options:r?{params:r}:null}}visitTransition(n,e){e.queryCount=0,e.depCount=0;let i=$n(this,oc(n.animation),e),r=DG(n.expr,e.errors);return{type:ue.Transition,matchers:r,animation:i,queryCount:e.queryCount,depCount:e.depCount,options:la(n.options)}}visitSequence(n,e){return{type:ue.Sequence,steps:n.steps.map(i=>$n(this,i,e)),options:la(n.options)}}visitGroup(n,e){let i=e.currentTime,r=0,o=n.steps.map(s=>{e.currentTime=i;let a=$n(this,s,e);return r=Math.max(r,e.currentTime),a});return e.currentTime=r,{type:ue.Group,steps:o,options:la(n.options)}}visitAnimate(n,e){let i=kG(n.timings,e.errors);e.currentAnimateTimings=i;let r,o=n.styles?n.styles:bt({});if(o.type==ue.Keyframes)r=this.visitKeyframes(o,e);else{let s=n.styles,a=!1;if(!s){a=!0;let c={};i.easing&&(c.easing=i.easing),s=bt(c)}e.currentTime+=i.duration+i.delay;let l=this.visitStyle(s,e);l.isEmptyStep=a,r=l}return e.currentAnimateTimings=null,{type:ue.Animate,timings:i,style:r,options:null}}visitStyle(n,e){let i=this._makeStyleAst(n,e);return this._validateStyleAst(i,e),i}_makeStyleAst(n,e){let i=[],r=Array.isArray(n.styles)?n.styles:[n.styles];for(let a of r)typeof a=="string"?a===wi?i.push(a):e.errors.push(Xk(a)):i.push(new Map(Object.entries(a)));let o=!1,s=null;return i.forEach(a=>{if(a instanceof Map&&(a.has("easing")&&(s=a.get("easing"),a.delete("easing")),!o)){for(let l of a.values())if(l.toString().indexOf(GC)>=0){o=!0;break}}}),{type:ue.Style,styles:i,easing:s,offset:n.offset,containsDynamicStyles:o,options:null}}_validateStyleAst(n,e){let i=e.currentAnimateTimings,r=e.currentTime,o=e.currentTime;i&&o>0&&(o-=i.duration+i.delay),n.styles.forEach(s=>{typeof s!="string"&&s.forEach((a,l)=>{let c=e.collectedStyles.get(e.currentQuerySelector),u=c.get(l),m=!0;u&&(o!=r&&o>=u.startTime&&r<=u.endTime&&(e.errors.push(eA(l,u.startTime,u.endTime,o,r)),m=!1),o=u.startTime),m&&c.set(l,{startTime:o,endTime:r}),e.options&&wA(a,e.options,e.errors)})})}visitKeyframes(n,e){let i={type:ue.Keyframes,styles:[],options:null};if(!e.currentAnimateTimings)return e.errors.push(tA()),i;let r=1,o=0,s=[],a=!1,l=!1,c=0,u=n.steps.map(V=>{let de=this._makeStyleAst(V,e),we=de.offset!=null?de.offset:xG(de.styles),nt=0;return we!=null&&(o++,nt=de.offset=we),l=l||nt<0||nt>1,a=a||nt0&&o{let we=b>0?de==_?1:b*de:s[de],nt=we*O;e.currentTime=M+I.delay+nt,I.duration=nt,this._validateStyleAst(V,e),V.offset=we,i.styles.push(V)}),i}visitReference(n,e){return{type:ue.Reference,animation:$n(this,oc(n.animation),e),options:la(n.options)}}visitAnimateChild(n,e){return e.depCount++,{type:ue.AnimateChild,options:la(n.options)}}visitAnimateRef(n,e){return{type:ue.AnimateRef,animation:this.visitReference(n.animation,e),options:la(n.options)}}visitQuery(n,e){let i=e.currentQuerySelector,r=n.options||{};e.queryCount++,e.currentQuery=n;let[o,s]=TG(n.selector);e.currentQuerySelector=i.length?i+" "+o:o,Un(e.collectedStyles,e.currentQuerySelector,new Map);let a=$n(this,oc(n.animation),e);return e.currentQuery=null,e.currentQuerySelector=i,{type:ue.Query,selector:o,limit:r.limit||0,optional:!!r.optional,includeSelf:s,animation:a,originalSelector:n.selector,options:la(n.options)}}visitStagger(n,e){e.currentQuery||e.errors.push(oA());let i=n.timings==="full"?{duration:0,delay:0,easing:"full"}:fd(n.timings,e.errors,!0);return{type:ue.Stagger,animation:$n(this,oc(n.animation),e),timings:i,options:null}}};function TG(t){let n=!!t.split(/\s*,\s*/).find(e=>e==NA);return n&&(t=t.replace(EG,"")),t=t.replace(/@\*/g,hd).replace(/@\w+/g,e=>hd+"-"+e.slice(1)).replace(/:animating/g,tg),[t,n]}function IG(t){return t?E({},t):null}var iw=class{errors;queryCount=0;depCount=0;currentTransition=null;currentQuery=null;currentQuerySelector=null;currentAnimateTimings=null;currentTime=0;collectedStyles=new Map;options=null;unsupportedCSSPropertiesFound=new Set;constructor(n){this.errors=n}};function xG(t){if(typeof t=="string")return null;let n=null;if(Array.isArray(t))t.forEach(e=>{if(e instanceof Map&&e.has("offset")){let i=e;n=parseFloat(i.get("offset")),i.delete("offset")}});else if(t instanceof Map&&t.has("offset")){let e=t;n=parseFloat(e.get("offset")),e.delete("offset")}return n}function kG(t,n){if(t.hasOwnProperty("duration"))return t;if(typeof t=="number"){let o=fd(t,n).duration;return KC(o,0,"")}let e=t;if(e.split(/\s+/).some(o=>o.charAt(0)=="{"&&o.charAt(1)=="{")){let o=KC(0,0,"");return o.dynamic=!0,o.strValue=e,o}let r=fd(e,n);return KC(r.duration,r.delay,r.easing)}function la(t){return t?(t=E({},t),t.params&&(t.params=IG(t.params))):t={},t}function KC(t,n,e){return{duration:t,delay:n,easing:e}}function pw(t,n,e,i,r,o,s=null,a=!1){return{type:1,element:t,keyframes:n,preStyleProps:e,postStyleProps:i,duration:r,delay:o,totalTime:r+o,easing:s,subTimeline:a}}var md=class{_map=new Map;get(n){return this._map.get(n)||[]}append(n,e){let i=this._map.get(n);i||this._map.set(n,i=[]),i.push(...e)}has(n){return this._map.has(n)}clear(){this._map.clear()}},AG=1,RG=":enter",OG=new RegExp(RG,"g"),PG=":leave",NG=new RegExp(PG,"g");function FA(t,n,e,i,r,o=new Map,s=new Map,a,l,c=[]){return new rw().buildKeyframes(t,n,e,i,r,o,s,a,l,c)}var rw=class{buildKeyframes(n,e,i,r,o,s,a,l,c,u=[]){c=c||new md;let m=new ow(n,e,c,r,o,u,[]);m.options=l;let b=l.delay?Lr(l.delay):0;m.currentTimeline.delayNextStep(b),m.currentTimeline.setStyles([s],null,m.errors,l),$n(this,i,m);let _=m.timelines.filter(M=>M.containsAnimation());if(_.length&&a.size){let M;for(let I=_.length-1;I>=0;I--){let O=_[I];if(O.element===e){M=O;break}}M&&!M.allowOnlyTimelineStyles()&&M.setStyles([a],null,m.errors,l)}return _.length?_.map(M=>M.buildKeyframes()):[pw(e,[],[],[],0,b,"",!1)]}visitTrigger(n,e){}visitState(n,e){}visitTransition(n,e){}visitAnimateChild(n,e){let i=e.subInstructions.get(e.element);if(i){let r=e.createSubContext(n.options),o=e.currentTimeline.currentTime,s=this._visitSubInstructions(i,r,r.options);o!=s&&e.transformIntoNewTimeline(s)}e.previousNode=n}visitAnimateRef(n,e){let i=e.createSubContext(n.options);i.transformIntoNewTimeline(),this._applyAnimationRefDelays([n.options,n.animation.options],e,i),this.visitReference(n.animation,i),e.transformIntoNewTimeline(i.currentTimeline.currentTime),e.previousNode=n}_applyAnimationRefDelays(n,e,i){for(let r of n){let o=r?.delay;if(o){let s=typeof o=="number"?o:Lr(sc(o,r?.params??{},e.errors));i.delayNextStep(s)}}}_visitSubInstructions(n,e,i){let o=e.currentTimeline.currentTime,s=i.duration!=null?Lr(i.duration):null,a=i.delay!=null?Lr(i.delay):null;return s!==0&&n.forEach(l=>{let c=e.appendInstructionToTimeline(l,s,a);o=Math.max(o,c.duration+c.delay)}),o}visitReference(n,e){e.updateOptions(n.options,!0),$n(this,n.animation,e),e.previousNode=n}visitSequence(n,e){let i=e.subContextCount,r=e,o=n.options;if(o&&(o.params||o.delay)&&(r=e.createSubContext(o),r.transformIntoNewTimeline(),o.delay!=null)){r.previousNode.type==ue.Style&&(r.currentTimeline.snapshotCurrentStyles(),r.previousNode=ug);let s=Lr(o.delay);r.delayNextStep(s)}n.steps.length&&(n.steps.forEach(s=>$n(this,s,r)),r.currentTimeline.applyStylesToKeyframe(),r.subContextCount>i&&r.transformIntoNewTimeline()),e.previousNode=n}visitGroup(n,e){let i=[],r=e.currentTimeline.currentTime,o=n.options&&n.options.delay?Lr(n.options.delay):0;n.steps.forEach(s=>{let a=e.createSubContext(n.options);o&&a.delayNextStep(o),$n(this,s,a),r=Math.max(r,a.currentTimeline.currentTime),i.push(a.currentTimeline)}),i.forEach(s=>e.currentTimeline.mergeTimelineCollectedStyles(s)),e.transformIntoNewTimeline(r),e.previousNode=n}_visitTiming(n,e){if(n.dynamic){let i=n.strValue,r=e.params?sc(i,e.params,e.errors):i;return fd(r,e.errors)}else return{duration:n.duration,delay:n.delay,easing:n.easing}}visitAnimate(n,e){let i=e.currentAnimateTimings=this._visitTiming(n.timings,e),r=e.currentTimeline;i.delay&&(e.incrementTime(i.delay),r.snapshotCurrentStyles());let o=n.style;o.type==ue.Keyframes?this.visitKeyframes(o,e):(e.incrementTime(i.duration),this.visitStyle(o,e),r.applyStylesToKeyframe()),e.currentAnimateTimings=null,e.previousNode=n}visitStyle(n,e){let i=e.currentTimeline,r=e.currentAnimateTimings;!r&&i.hasCurrentStyleProperties()&&i.forwardFrame();let o=r&&r.easing||n.easing;n.isEmptyStep?i.applyEmptyStep(o):i.setStyles(n.styles,o,e.errors,e.options),e.previousNode=n}visitKeyframes(n,e){let i=e.currentAnimateTimings,r=e.currentTimeline.duration,o=i.duration,a=e.createSubContext().currentTimeline;a.easing=i.easing,n.styles.forEach(l=>{let c=l.offset||0;a.forwardTime(c*o),a.setStyles(l.styles,l.easing,e.errors,e.options),a.applyStylesToKeyframe()}),e.currentTimeline.mergeTimelineCollectedStyles(a),e.transformIntoNewTimeline(r+o),e.previousNode=n}visitQuery(n,e){let i=e.currentTimeline.currentTime,r=n.options||{},o=r.delay?Lr(r.delay):0;o&&(e.previousNode.type===ue.Style||i==0&&e.currentTimeline.hasCurrentStyleProperties())&&(e.currentTimeline.snapshotCurrentStyles(),e.previousNode=ug);let s=i,a=e.invokeQuery(n.selector,n.originalSelector,n.limit,n.includeSelf,!!r.optional,e.errors);e.currentQueryTotal=a.length;let l=null;a.forEach((c,u)=>{e.currentQueryIndex=u;let m=e.createSubContext(n.options,c);o&&m.delayNextStep(o),c===e.element&&(l=m.currentTimeline),$n(this,n.animation,m),m.currentTimeline.applyStylesToKeyframe();let b=m.currentTimeline.currentTime;s=Math.max(s,b)}),e.currentQueryIndex=0,e.currentQueryTotal=0,e.transformIntoNewTimeline(s),l&&(e.currentTimeline.mergeTimelineCollectedStyles(l),e.currentTimeline.snapshotCurrentStyles()),e.previousNode=n}visitStagger(n,e){let i=e.parentContext,r=e.currentTimeline,o=n.timings,s=Math.abs(o.duration),a=s*(e.currentQueryTotal-1),l=s*e.currentQueryIndex;switch(o.duration<0?"reverse":o.easing){case"reverse":l=a-l;break;case"full":l=i.currentStaggerTime;break}let u=e.currentTimeline;l&&u.delayNextStep(l);let m=u.currentTime;$n(this,n.animation,e),e.previousNode=n,i.currentStaggerTime=r.currentTime-m+(r.startTime-i.currentTimeline.startTime)}},ug={},ow=class t{_driver;element;subInstructions;_enterClassName;_leaveClassName;errors;timelines;parentContext=null;currentTimeline;currentAnimateTimings=null;previousNode=ug;subContextCount=0;options={};currentQueryIndex=0;currentQueryTotal=0;currentStaggerTime=0;constructor(n,e,i,r,o,s,a,l){this._driver=n,this.element=e,this.subInstructions=i,this._enterClassName=r,this._leaveClassName=o,this.errors=s,this.timelines=a,this.currentTimeline=l||new dg(this._driver,e,0),a.push(this.currentTimeline)}get params(){return this.options.params}updateOptions(n,e){if(!n)return;let i=n,r=this.options;i.duration!=null&&(r.duration=Lr(i.duration)),i.delay!=null&&(r.delay=Lr(i.delay));let o=i.params;if(o){let s=r.params;s||(s=this.options.params={}),Object.keys(o).forEach(a=>{(!e||!s.hasOwnProperty(a))&&(s[a]=sc(o[a],s,this.errors))})}}_copyOptions(){let n={};if(this.options){let e=this.options.params;if(e){let i=n.params={};Object.keys(e).forEach(r=>{i[r]=e[r]})}}return n}createSubContext(n=null,e,i){let r=e||this.element,o=new t(this._driver,r,this.subInstructions,this._enterClassName,this._leaveClassName,this.errors,this.timelines,this.currentTimeline.fork(r,i||0));return o.previousNode=this.previousNode,o.currentAnimateTimings=this.currentAnimateTimings,o.options=this._copyOptions(),o.updateOptions(n),o.currentQueryIndex=this.currentQueryIndex,o.currentQueryTotal=this.currentQueryTotal,o.parentContext=this,this.subContextCount++,o}transformIntoNewTimeline(n){return this.previousNode=ug,this.currentTimeline=this.currentTimeline.fork(this.element,n),this.timelines.push(this.currentTimeline),this.currentTimeline}appendInstructionToTimeline(n,e,i){let r={duration:e??n.duration,delay:this.currentTimeline.currentTime+(i??0)+n.delay,easing:""},o=new sw(this._driver,n.element,n.keyframes,n.preStyleProps,n.postStyleProps,r,n.stretchStartingKeyframe);return this.timelines.push(o),r}incrementTime(n){this.currentTimeline.forwardTime(this.currentTimeline.duration+n)}delayNextStep(n){n>0&&this.currentTimeline.delayNextStep(n)}invokeQuery(n,e,i,r,o,s){let a=[];if(r&&a.push(this.element),n.length>0){n=n.replace(OG,"."+this._enterClassName),n=n.replace(NG,"."+this._leaveClassName);let l=i!=1,c=this._driver.query(this.element,n,l);i!==0&&(c=i<0?c.slice(c.length+i,c.length):c.slice(0,i)),a.push(...c)}return!o&&a.length==0&&s.push(sA(e)),a}},dg=class t{_driver;element;startTime;_elementTimelineStylesLookup;duration=0;easing=null;_previousKeyframe=new Map;_currentKeyframe=new Map;_keyframes=new Map;_styleSummary=new Map;_localTimelineStyles=new Map;_globalTimelineStyles;_pendingStyles=new Map;_backFill=new Map;_currentEmptyStepKeyframe=null;constructor(n,e,i,r){this._driver=n,this.element=e,this.startTime=i,this._elementTimelineStylesLookup=r,this._elementTimelineStylesLookup||(this._elementTimelineStylesLookup=new Map),this._globalTimelineStyles=this._elementTimelineStylesLookup.get(e),this._globalTimelineStyles||(this._globalTimelineStyles=this._localTimelineStyles,this._elementTimelineStylesLookup.set(e,this._localTimelineStyles)),this._loadKeyframe()}containsAnimation(){switch(this._keyframes.size){case 0:return!1;case 1:return this.hasCurrentStyleProperties();default:return!0}}hasCurrentStyleProperties(){return this._currentKeyframe.size>0}get currentTime(){return this.startTime+this.duration}delayNextStep(n){let e=this._keyframes.size===1&&this._pendingStyles.size;this.duration||e?(this.forwardTime(this.currentTime+n),e&&this.snapshotCurrentStyles()):this.startTime+=n}fork(n,e){return this.applyStylesToKeyframe(),new t(this._driver,n,e||this.currentTime,this._elementTimelineStylesLookup)}_loadKeyframe(){this._currentKeyframe&&(this._previousKeyframe=this._currentKeyframe),this._currentKeyframe=this._keyframes.get(this.duration),this._currentKeyframe||(this._currentKeyframe=new Map,this._keyframes.set(this.duration,this._currentKeyframe))}forwardFrame(){this.duration+=AG,this._loadKeyframe()}forwardTime(n){this.applyStylesToKeyframe(),this.duration=n,this._loadKeyframe()}_updateStyle(n,e){this._localTimelineStyles.set(n,e),this._globalTimelineStyles.set(n,e),this._styleSummary.set(n,{time:this.currentTime,value:e})}allowOnlyTimelineStyles(){return this._currentEmptyStepKeyframe!==this._currentKeyframe}applyEmptyStep(n){n&&this._previousKeyframe.set("easing",n);for(let[e,i]of this._globalTimelineStyles)this._backFill.set(e,i||wi),this._currentKeyframe.set(e,wi);this._currentEmptyStepKeyframe=this._currentKeyframe}setStyles(n,e,i,r){e&&this._previousKeyframe.set("easing",e);let o=r&&r.params||{},s=LG(n,this._globalTimelineStyles);for(let[a,l]of s){let c=sc(l,o,i);this._pendingStyles.set(a,c),this._localTimelineStyles.has(a)||this._backFill.set(a,this._globalTimelineStyles.get(a)??wi),this._updateStyle(a,c)}}applyStylesToKeyframe(){this._pendingStyles.size!=0&&(this._pendingStyles.forEach((n,e)=>{this._currentKeyframe.set(e,n)}),this._pendingStyles.clear(),this._localTimelineStyles.forEach((n,e)=>{this._currentKeyframe.has(e)||this._currentKeyframe.set(e,n)}))}snapshotCurrentStyles(){for(let[n,e]of this._localTimelineStyles)this._pendingStyles.set(n,e),this._updateStyle(n,e)}getFinalKeyframe(){return this._keyframes.get(this.duration)}get properties(){let n=[];for(let e in this._currentKeyframe)n.push(e);return n}mergeTimelineCollectedStyles(n){n._styleSummary.forEach((e,i)=>{let r=this._styleSummary.get(i);(!r||e.time>r.time)&&this._updateStyle(i,e.value)})}buildKeyframes(){this.applyStylesToKeyframe();let n=new Set,e=new Set,i=this._keyframes.size===1&&this.duration===0,r=[];this._keyframes.forEach((a,l)=>{let c=new Map([...this._backFill,...a]);c.forEach((u,m)=>{u===wl?n.add(m):u===wi&&e.add(m)}),i||c.set("offset",l/this.duration),r.push(c)});let o=[...n.values()],s=[...e.values()];if(i){let a=r[0],l=new Map(a);a.set("offset",0),l.set("offset",1),r=[a,l]}return pw(this.element,r,o,s,this.duration,this.startTime,this.easing,!1)}},sw=class extends dg{keyframes;preStyleProps;postStyleProps;_stretchStartingKeyframe;timings;constructor(n,e,i,r,o,s,a=!1){super(n,e,s.delay),this.keyframes=i,this.preStyleProps=r,this.postStyleProps=o,this._stretchStartingKeyframe=a,this.timings={duration:s.duration,delay:s.delay,easing:s.easing}}containsAnimation(){return this.keyframes.length>1}buildKeyframes(){let n=this.keyframes,{delay:e,duration:i,easing:r}=this.timings;if(this._stretchStartingKeyframe&&e){let o=[],s=i+e,a=e/s,l=new Map(n[0]);l.set("offset",0),o.push(l);let c=new Map(n[0]);c.set("offset",TA(a)),o.push(c);let u=n.length-1;for(let m=1;m<=u;m++){let b=new Map(n[m]),_=b.get("offset"),M=e+_*i;b.set("offset",TA(M/s)),o.push(b)}i=s,e=0,r="",n=o}return pw(this.element,n,this.preStyleProps,this.postStyleProps,i,e,r,!0)}};function TA(t,n=3){let e=Math.pow(10,n-1);return Math.round(t*e)/e}function LG(t,n){let e=new Map,i;return t.forEach(r=>{if(r==="*"){i??=n.keys();for(let o of i)e.set(o,wi)}else for(let[o,s]of r)e.set(o,s)}),e}function IA(t,n,e,i,r,o,s,a,l,c,u,m,b){return{type:0,element:t,triggerName:n,isRemovalTransition:r,fromState:e,fromStyles:o,toState:i,toStyles:s,timelines:a,queriedElements:l,preStyleProps:c,postStyleProps:u,totalTime:m,errors:b}}var JC={},hg=class{_triggerName;ast;_stateStyles;constructor(n,e,i){this._triggerName=n,this.ast=e,this._stateStyles=i}match(n,e,i,r){return FG(this.ast.matchers,n,e,i,r)}buildStyles(n,e,i){let r=this._stateStyles.get("*");return n!==void 0&&(r=this._stateStyles.get(n?.toString())||r),r?r.buildStyles(e,i):new Map}build(n,e,i,r,o,s,a,l,c,u){let m=[],b=this.ast.options&&this.ast.options.params||JC,_=a&&a.params||JC,M=this.buildStyles(i,_,m),I=l&&l.params||JC,O=this.buildStyles(r,I,m),V=new Set,de=new Map,we=new Map,nt=r==="void",Pi={params:VA(I,b),delay:this.ast.options?.delay},ai=u?[]:FA(n,e,this.ast.animation,o,s,M,O,Pi,c,m),gn=0;return ai.forEach(Mn=>{gn=Math.max(Mn.duration+Mn.delay,gn)}),m.length?IA(e,this._triggerName,i,r,nt,M,O,[],[],de,we,gn,m):(ai.forEach(Mn=>{let ts=Mn.element,ha=Un(de,ts,new Set);Mn.preStyleProps.forEach(ns=>ha.add(ns));let vw=Un(we,ts,new Set);Mn.postStyleProps.forEach(ns=>vw.add(ns)),ts!==e&&V.add(ts)}),IA(e,this._triggerName,i,r,nt,M,O,ai,[...V.values()],de,we,gn))}};function FG(t,n,e,i,r){return t.some(o=>o(n,e,i,r))}function VA(t,n){let e=E({},n);return Object.entries(t).forEach(([i,r])=>{r!=null&&(e[i]=r)}),e}var aw=class{styles;defaultParams;normalizer;constructor(n,e,i){this.styles=n,this.defaultParams=e,this.normalizer=i}buildStyles(n,e){let i=new Map,r=VA(n,this.defaultParams);return this.styles.styles.forEach(o=>{typeof o!="string"&&o.forEach((s,a)=>{s&&(s=sc(s,r,e));let l=this.normalizer.normalizePropertyName(a,e);s=this.normalizer.normalizeStyleValue(a,l,s,e),i.set(a,s)})}),i}};function VG(t,n,e){return new lw(t,n,e)}var lw=class{name;ast;_normalizer;transitionFactories=[];fallbackTransition;states=new Map;constructor(n,e,i){this.name=n,this.ast=e,this._normalizer=i,e.states.forEach(r=>{let o=r.options&&r.options.params||{};this.states.set(r.name,new aw(r.style,o,i))}),xA(this.states,"true","1"),xA(this.states,"false","0"),e.transitions.forEach(r=>{this.transitionFactories.push(new hg(n,r,this.states))}),this.fallbackTransition=jG(n,this.states)}get containsQueries(){return this.ast.queryCount>0}matchTransition(n,e,i,r){return this.transitionFactories.find(s=>s.match(n,e,i,r))||null}matchStyles(n,e,i){return this.fallbackTransition.buildStyles(n,e,i)}};function jG(t,n,e){let i=[(s,a)=>!0],r={type:ue.Sequence,steps:[],options:null},o={type:ue.Transition,animation:r,matchers:i,options:null,queryCount:0,depCount:0};return new hg(t,o,n)}function xA(t,n,e){t.has(n)?t.has(e)||t.set(e,t.get(n)):t.has(e)&&t.set(n,t.get(e))}var HG=new md,cw=class{bodyNode;_driver;_normalizer;_animations=new Map;_playersById=new Map;players=[];constructor(n,e,i){this.bodyNode=n,this._driver=e,this._normalizer=i}register(n,e){let i=[],r=[],o=LA(this._driver,e,i,r);if(i.length)throw uA(i);this._animations.set(n,o)}_buildPlayer(n,e,i){let r=n.element,o=$C(this._normalizer,n.keyframes,e,i);return this._driver.animate(r,o,n.duration,n.delay,n.easing,[],!0)}create(n,e,i={}){let r=[],o=this._animations.get(n),s,a=new Map;if(o?(s=FA(this._driver,e,o,qC,eg,new Map,new Map,i,HG,r),s.forEach(u=>{let m=Un(a,u.element,new Map);u.postStyleProps.forEach(b=>m.set(b,null))})):(r.push(dA()),s=[]),r.length)throw hA(r);a.forEach((u,m)=>{u.forEach((b,_)=>{u.set(_,this._driver.computeStyle(m,_,wi))})});let l=s.map(u=>{let m=a.get(u.element);return this._buildPlayer(u,new Map,m)}),c=uo(l);return this._playersById.set(n,c),c.onDestroy(()=>this.destroy(n)),this.players.push(c),c}destroy(n){let e=this._getPlayer(n);e.destroy(),this._playersById.delete(n);let i=this.players.indexOf(e);i>=0&&this.players.splice(i,1)}_getPlayer(n){let e=this._playersById.get(n);if(!e)throw fA(n);return e}listen(n,e,i,r){let o=Jm(e,"","","");return Km(this._getPlayer(n),i,o,r),()=>{}}command(n,e,i,r){if(i=="register"){this.register(n,r[0]);return}if(i=="create"){let s=r[0]||{};this.create(n,e,s);return}let o=this._getPlayer(n);switch(i){case"play":o.play();break;case"pause":o.pause();break;case"reset":o.reset();break;case"restart":o.restart();break;case"finish":o.finish();break;case"init":o.init();break;case"setPosition":o.setPosition(parseFloat(r[0]));break;case"destroy":this.destroy(n);break}}},kA="ng-animate-queued",BG=".ng-animate-queued",XC="ng-animate-disabled",UG=".ng-animate-disabled",$G="ng-star-inserted",YG=".ng-star-inserted",zG=[],jA={namespaceId:"",setForRemoval:!1,setForMove:!1,hasAnimation:!1,removedBeforeQueried:!1},WG={namespaceId:"",setForMove:!1,setForRemoval:!1,hasAnimation:!1,removedBeforeQueried:!0},tr="__ng_removed",gd=class{namespaceId;value;options;get params(){return this.options.params}constructor(n,e=""){this.namespaceId=e;let i=n&&n.hasOwnProperty("value"),r=i?n.value:n;if(this.value=qG(r),i){let o=n,{value:s}=o,a=wg(o,["value"]);this.options=a}else this.options={};this.options.params||(this.options.params={})}absorbOptions(n){let e=n.params;if(e){let i=this.options.params;Object.keys(e).forEach(r=>{i[r]==null&&(i[r]=e[r])})}}},pd="void",ew=new gd(pd),uw=class{id;hostElement;_engine;players=[];_triggers=new Map;_queue=[];_elementListeners=new Map;_hostClassName;constructor(n,e,i){this.id=n,this.hostElement=e,this._engine=i,this._hostClassName="ng-tns-"+n,Oi(e,this._hostClassName)}listen(n,e,i,r){if(!this._triggers.has(e))throw pA(i,e);if(i==null||i.length==0)throw mA(e);if(!QG(i))throw gA(i,e);let o=Un(this._elementListeners,n,[]),s={name:e,phase:i,callback:r};o.push(s);let a=Un(this._engine.statesByElement,n,new Map);return a.has(e)||(Oi(n,dd),Oi(n,dd+"-"+e),a.set(e,ew)),()=>{this._engine.afterFlush(()=>{let l=o.indexOf(s);l>=0&&o.splice(l,1),this._triggers.has(e)||a.delete(e)})}}register(n,e){return this._triggers.has(n)?!1:(this._triggers.set(n,e),!0)}_getTrigger(n){let e=this._triggers.get(n);if(!e)throw _A(n);return e}trigger(n,e,i,r=!0){let o=this._getTrigger(e),s=new _d(this.id,e,n),a=this._engine.statesByElement.get(n);a||(Oi(n,dd),Oi(n,dd+"-"+e),this._engine.statesByElement.set(n,a=new Map));let l=a.get(e),c=new gd(i,this.id);if(!(i&&i.hasOwnProperty("value"))&&l&&c.absorbOptions(l.options),a.set(e,c),l||(l=ew),!(c.value===pd)&&l.value===c.value){if(!JG(l.params,c.params)){let I=[],O=o.matchStyles(l.value,l.params,I),V=o.matchStyles(c.value,c.params,I);I.length?this._engine.reportError(I):this._engine.afterFlush(()=>{es(n,O),er(n,V)})}return}let b=Un(this._engine.playersByElement,n,[]);b.forEach(I=>{I.namespaceId==this.id&&I.triggerName==e&&I.queued&&I.destroy()});let _=o.matchTransition(l.value,c.value,n,c.params),M=!1;if(!_){if(!r)return;_=o.fallbackTransition,M=!0}return this._engine.totalQueuedPlayers++,this._queue.push({element:n,triggerName:e,transition:_,fromState:l,toState:c,player:s,isFallbackTransition:M}),M||(Oi(n,kA),s.onStart(()=>{ac(n,kA)})),s.onDone(()=>{let I=this.players.indexOf(s);I>=0&&this.players.splice(I,1);let O=this._engine.playersByElement.get(n);if(O){let V=O.indexOf(s);V>=0&&O.splice(V,1)}}),this.players.push(s),b.push(s),s}deregister(n){this._triggers.delete(n),this._engine.statesByElement.forEach(e=>e.delete(n)),this._elementListeners.forEach((e,i)=>{this._elementListeners.set(i,e.filter(r=>r.name!=n))})}clearElementCache(n){this._engine.statesByElement.delete(n),this._elementListeners.delete(n);let e=this._engine.playersByElement.get(n);e&&(e.forEach(i=>i.destroy()),this._engine.playersByElement.delete(n))}_signalRemovalForInnerTriggers(n,e){let i=this._engine.driver.query(n,hd,!0);i.forEach(r=>{if(r[tr])return;let o=this._engine.fetchNamespacesByElement(r);o.size?o.forEach(s=>s.triggerLeaveAnimation(r,e,!1,!0)):this.clearElementCache(r)}),this._engine.afterFlushAnimationsDone(()=>i.forEach(r=>this.clearElementCache(r)))}triggerLeaveAnimation(n,e,i,r){let o=this._engine.statesByElement.get(n),s=new Map;if(o){let a=[];if(o.forEach((l,c)=>{if(s.set(c,l.value),this._triggers.has(c)){let u=this.trigger(n,c,pd,r);u&&a.push(u)}}),a.length)return this._engine.markElementAsRemoved(this.id,n,!0,e,s),i&&uo(a).onDone(()=>this._engine.processLeaveNode(n)),!0}return!1}prepareLeaveAnimationListeners(n){let e=this._elementListeners.get(n),i=this._engine.statesByElement.get(n);if(e&&i){let r=new Set;e.forEach(o=>{let s=o.name;if(r.has(s))return;r.add(s);let l=this._triggers.get(s).fallbackTransition,c=i.get(s)||ew,u=new gd(pd),m=new _d(this.id,s,n);this._engine.totalQueuedPlayers++,this._queue.push({element:n,triggerName:s,transition:l,fromState:c,toState:u,player:m,isFallbackTransition:!0})})}}removeNode(n,e){let i=this._engine;if(n.childElementCount&&this._signalRemovalForInnerTriggers(n,e),this.triggerLeaveAnimation(n,e,!0))return;let r=!1;if(i.totalAnimations){let o=i.players.length?i.playersByQueriedElement.get(n):[];if(o&&o.length)r=!0;else{let s=n;for(;s=s.parentNode;)if(i.statesByElement.get(s)){r=!0;break}}}if(this.prepareLeaveAnimationListeners(n),r)i.markElementAsRemoved(this.id,n,!1,e);else{let o=n[tr];(!o||o===jA)&&(i.afterFlush(()=>this.clearElementCache(n)),i.destroyInnerAnimations(n),i._onRemovalComplete(n,e))}}insertNode(n,e){Oi(n,this._hostClassName)}drainQueuedTransitions(n){let e=[];return this._queue.forEach(i=>{let r=i.player;if(r.destroyed)return;let o=i.element,s=this._elementListeners.get(o);s&&s.forEach(a=>{if(a.name==i.triggerName){let l=Jm(o,i.triggerName,i.fromState.value,i.toState.value);l._data=n,Km(i.player,a.phase,l,a.callback)}}),r.markedForDestroy?this._engine.afterFlush(()=>{r.destroy()}):e.push(i)}),this._queue=[],e.sort((i,r)=>{let o=i.transition.ast.depCount,s=r.transition.ast.depCount;return o==0||s==0?o-s:this._engine.driver.containsElement(i.element,r.element)?1:-1})}destroy(n){this.players.forEach(e=>e.destroy()),this._signalRemovalForInnerTriggers(this.hostElement,n)}},dw=class{bodyNode;driver;_normalizer;players=[];newHostElements=new Map;playersByElement=new Map;playersByQueriedElement=new Map;statesByElement=new Map;disabledNodes=new Set;totalAnimations=0;totalQueuedPlayers=0;_namespaceLookup={};_namespaceList=[];_flushFns=[];_whenQuietFns=[];namespacesByHostElement=new Map;collectedEnterElements=[];collectedLeaveElements=[];onRemovalComplete=(n,e)=>{};_onRemovalComplete(n,e){this.onRemovalComplete(n,e)}constructor(n,e,i){this.bodyNode=n,this.driver=e,this._normalizer=i}get queuedPlayers(){let n=[];return this._namespaceList.forEach(e=>{e.players.forEach(i=>{i.queued&&n.push(i)})}),n}createNamespace(n,e){let i=new uw(n,e,this);return this.bodyNode&&this.driver.containsElement(this.bodyNode,e)?this._balanceNamespaceList(i,e):(this.newHostElements.set(e,i),this.collectEnterElement(e)),this._namespaceLookup[n]=i}_balanceNamespaceList(n,e){let i=this._namespaceList,r=this.namespacesByHostElement;if(i.length-1>=0){let s=!1,a=this.driver.getParentElement(e);for(;a;){let l=r.get(a);if(l){let c=i.indexOf(l);i.splice(c+1,0,n),s=!0;break}a=this.driver.getParentElement(a)}s||i.unshift(n)}else i.push(n);return r.set(e,n),n}register(n,e){let i=this._namespaceLookup[n];return i||(i=this.createNamespace(n,e)),i}registerTrigger(n,e,i){let r=this._namespaceLookup[n];r&&r.register(e,i)&&this.totalAnimations++}destroy(n,e){n&&(this.afterFlush(()=>{}),this.afterFlushAnimationsDone(()=>{let i=this._fetchNamespace(n);this.namespacesByHostElement.delete(i.hostElement);let r=this._namespaceList.indexOf(i);r>=0&&this._namespaceList.splice(r,1),i.destroy(e),delete this._namespaceLookup[n]}))}_fetchNamespace(n){return this._namespaceLookup[n]}fetchNamespacesByElement(n){let e=new Set,i=this.statesByElement.get(n);if(i){for(let r of i.values())if(r.namespaceId){let o=this._fetchNamespace(r.namespaceId);o&&e.add(o)}}return e}trigger(n,e,i,r){if(sg(e)){let o=this._fetchNamespace(n);if(o)return o.trigger(e,i,r),!0}return!1}insertNode(n,e,i,r){if(!sg(e))return;let o=e[tr];if(o&&o.setForRemoval){o.setForRemoval=!1,o.setForMove=!0;let s=this.collectedLeaveElements.indexOf(e);s>=0&&this.collectedLeaveElements.splice(s,1)}if(n){let s=this._fetchNamespace(n);s&&s.insertNode(e,i)}r&&this.collectEnterElement(e)}collectEnterElement(n){this.collectedEnterElements.push(n)}markElementAsDisabled(n,e){e?this.disabledNodes.has(n)||(this.disabledNodes.add(n),Oi(n,XC)):this.disabledNodes.has(n)&&(this.disabledNodes.delete(n),ac(n,XC))}removeNode(n,e,i){if(sg(e)){let r=n?this._fetchNamespace(n):null;r?r.removeNode(e,i):this.markElementAsRemoved(n,e,!1,i);let o=this.namespacesByHostElement.get(e);o&&o.id!==n&&o.removeNode(e,i)}else this._onRemovalComplete(e,i)}markElementAsRemoved(n,e,i,r,o){this.collectedLeaveElements.push(e),e[tr]={namespaceId:n,setForRemoval:r,hasAnimation:i,removedBeforeQueried:!1,previousTriggersValues:o}}listen(n,e,i,r,o){return sg(e)?this._fetchNamespace(n).listen(e,i,r,o):()=>{}}_buildInstruction(n,e,i,r,o){return n.transition.build(this.driver,n.element,n.fromState.value,n.toState.value,i,r,n.fromState.options,n.toState.options,e,o)}destroyInnerAnimations(n){let e=this.driver.query(n,hd,!0);e.forEach(i=>this.destroyActiveAnimationsForElement(i)),this.playersByQueriedElement.size!=0&&(e=this.driver.query(n,tg,!0),e.forEach(i=>this.finishActiveQueriedAnimationOnElement(i)))}destroyActiveAnimationsForElement(n){let e=this.playersByElement.get(n);e&&e.forEach(i=>{i.queued?i.markedForDestroy=!0:i.destroy()})}finishActiveQueriedAnimationOnElement(n){let e=this.playersByQueriedElement.get(n);e&&e.forEach(i=>i.finish())}whenRenderingDone(){return new Promise(n=>{if(this.players.length)return uo(this.players).onDone(()=>n());n()})}processLeaveNode(n){let e=n[tr];if(e&&e.setForRemoval){if(n[tr]=jA,e.namespaceId){this.destroyInnerAnimations(n);let i=this._fetchNamespace(e.namespaceId);i&&i.clearElementCache(n)}this._onRemovalComplete(n,e.setForRemoval)}n.classList?.contains(XC)&&this.markElementAsDisabled(n,!1),this.driver.query(n,UG,!0).forEach(i=>{this.markElementAsDisabled(i,!1)})}flush(n=-1){let e=[];if(this.newHostElements.size&&(this.newHostElements.forEach((i,r)=>this._balanceNamespaceList(i,r)),this.newHostElements.clear()),this.totalAnimations&&this.collectedEnterElements.length)for(let i=0;ii()),this._flushFns=[],this._whenQuietFns.length){let i=this._whenQuietFns;this._whenQuietFns=[],e.length?uo(e).onDone(()=>{i.forEach(r=>r())}):i.forEach(r=>r())}}reportError(n){throw yA(n)}_flushAnimations(n,e){let i=new md,r=[],o=new Map,s=[],a=new Map,l=new Map,c=new Map,u=new Set;this.disabledNodes.forEach(Y=>{u.add(Y);let Z=this.driver.query(Y,BG,!0);for(let ee=0;ee{let ee=qC+I++;M.set(Z,ee),Y.forEach(Oe=>Oi(Oe,ee))});let O=[],V=new Set,de=new Set;for(let Y=0;YV.add(Oe)):de.add(Z))}let we=new Map,nt=OA(b,Array.from(V));nt.forEach((Y,Z)=>{let ee=eg+I++;we.set(Z,ee),Y.forEach(Oe=>Oi(Oe,ee))}),n.push(()=>{_.forEach((Y,Z)=>{let ee=M.get(Z);Y.forEach(Oe=>ac(Oe,ee))}),nt.forEach((Y,Z)=>{let ee=we.get(Z);Y.forEach(Oe=>ac(Oe,ee))}),O.forEach(Y=>{this.processLeaveNode(Y)})});let Pi=[],ai=[];for(let Y=this._namespaceList.length-1;Y>=0;Y--)this._namespaceList[Y].drainQueuedTransitions(e).forEach(ee=>{let Oe=ee.player,Zt=ee.element;if(Pi.push(Oe),this.collectedEnterElements.length){let ln=Zt[tr];if(ln&&ln.setForMove){if(ln.previousTriggersValues&&ln.previousTriggersValues.has(ee.triggerName)){let is=ln.previousTriggersValues.get(ee.triggerName),li=this.statesByElement.get(ee.element);if(li&&li.has(ee.triggerName)){let yd=li.get(ee.triggerName);yd.value=is,li.set(ee.triggerName,yd)}}Oe.destroy();return}}let nr=!m||!this.driver.containsElement(m,Zt),Yn=we.get(Zt),ho=M.get(Zt),_t=this._buildInstruction(ee,i,ho,Yn,nr);if(_t.errors&&_t.errors.length){ai.push(_t);return}if(nr){Oe.onStart(()=>es(Zt,_t.fromStyles)),Oe.onDestroy(()=>er(Zt,_t.toStyles)),r.push(Oe);return}if(ee.isFallbackTransition){Oe.onStart(()=>es(Zt,_t.fromStyles)),Oe.onDestroy(()=>er(Zt,_t.toStyles)),r.push(Oe);return}let ww=[];_t.timelines.forEach(ln=>{ln.stretchStartingKeyframe=!0,this.disabledNodes.has(ln.element)||ww.push(ln)}),_t.timelines=ww,i.append(Zt,_t.timelines);let nR={instruction:_t,player:Oe,element:Zt};s.push(nR),_t.queriedElements.forEach(ln=>Un(a,ln,[]).push(Oe)),_t.preStyleProps.forEach((ln,is)=>{if(ln.size){let li=l.get(is);li||l.set(is,li=new Set),ln.forEach((yd,Cg)=>li.add(Cg))}}),_t.postStyleProps.forEach((ln,is)=>{let li=c.get(is);li||c.set(is,li=new Set),ln.forEach((yd,Cg)=>li.add(Cg))})});if(ai.length){let Y=[];ai.forEach(Z=>{Y.push(vA(Z.triggerName,Z.errors))}),Pi.forEach(Z=>Z.destroy()),this.reportError(Y)}let gn=new Map,Mn=new Map;s.forEach(Y=>{let Z=Y.element;i.has(Z)&&(Mn.set(Z,Z),this._beforeAnimationBuild(Y.player.namespaceId,Y.instruction,gn))}),r.forEach(Y=>{let Z=Y.element;this._getPreviousPlayers(Z,!1,Y.namespaceId,Y.triggerName,null).forEach(Oe=>{Un(gn,Z,[]).push(Oe),Oe.destroy()})});let ts=O.filter(Y=>PA(Y,l,c)),ha=new Map;RA(ha,this.driver,de,c,wi).forEach(Y=>{PA(Y,l,c)&&ts.push(Y)});let ns=new Map;_.forEach((Y,Z)=>{RA(ns,this.driver,new Set(Y),l,wl)}),ts.forEach(Y=>{let Z=ha.get(Y),ee=ns.get(Y);ha.set(Y,new Map([...Z?.entries()??[],...ee?.entries()??[]]))});let bg=[],bw=[],Cw={};s.forEach(Y=>{let{element:Z,player:ee,instruction:Oe}=Y;if(i.has(Z)){if(u.has(Z)){ee.onDestroy(()=>er(Z,Oe.toStyles)),ee.disabled=!0,ee.overrideTotalTime(Oe.totalTime),r.push(ee);return}let Zt=Cw;if(Mn.size>1){let Yn=Z,ho=[];for(;Yn=Yn.parentNode;){let _t=Mn.get(Yn);if(_t){Zt=_t;break}ho.push(Yn)}ho.forEach(_t=>Mn.set(_t,Zt))}let nr=this._buildAnimation(ee.namespaceId,Oe,gn,o,ns,ha);if(ee.setRealPlayer(nr),Zt===Cw)bg.push(ee);else{let Yn=this.playersByElement.get(Zt);Yn&&Yn.length&&(ee.parentPlayer=uo(Yn)),r.push(ee)}}else es(Z,Oe.fromStyles),ee.onDestroy(()=>er(Z,Oe.toStyles)),bw.push(ee),u.has(Z)&&r.push(ee)}),bw.forEach(Y=>{let Z=o.get(Y.element);if(Z&&Z.length){let ee=uo(Z);Y.setRealPlayer(ee)}}),r.forEach(Y=>{Y.parentPlayer?Y.syncPlayerEvents(Y.parentPlayer):Y.destroy()});for(let Y=0;Y!nr.destroyed);Zt.length?ZG(this,Z,Zt):this.processLeaveNode(Z)}return O.length=0,bg.forEach(Y=>{this.players.push(Y),Y.onDone(()=>{Y.destroy();let Z=this.players.indexOf(Y);this.players.splice(Z,1)}),Y.play()}),bg}afterFlush(n){this._flushFns.push(n)}afterFlushAnimationsDone(n){this._whenQuietFns.push(n)}_getPreviousPlayers(n,e,i,r,o){let s=[];if(e){let a=this.playersByQueriedElement.get(n);a&&(s=a)}else{let a=this.playersByElement.get(n);if(a){let l=!o||o==pd;a.forEach(c=>{c.queued||!l&&c.triggerName!=r||s.push(c)})}}return(i||r)&&(s=s.filter(a=>!(i&&i!=a.namespaceId||r&&r!=a.triggerName))),s}_beforeAnimationBuild(n,e,i){let r=e.triggerName,o=e.element,s=e.isRemovalTransition?void 0:n,a=e.isRemovalTransition?void 0:r;for(let l of e.timelines){let c=l.element,u=c!==o,m=Un(i,c,[]);this._getPreviousPlayers(c,u,s,a,e.toState).forEach(_=>{let M=_.getRealPlayer();M.beforeDestroy&&M.beforeDestroy(),_.destroy(),m.push(_)})}es(o,e.fromStyles)}_buildAnimation(n,e,i,r,o,s){let a=e.triggerName,l=e.element,c=[],u=new Set,m=new Set,b=e.timelines.map(M=>{let I=M.element;u.add(I);let O=I[tr];if(O&&O.removedBeforeQueried)return new Tr(M.duration,M.delay);let V=I!==l,de=KG((i.get(I)||zG).map(gn=>gn.getRealPlayer())).filter(gn=>{let Mn=gn;return Mn.element?Mn.element===I:!1}),we=o.get(I),nt=s.get(I),Pi=$C(this._normalizer,M.keyframes,we,nt),ai=this._buildPlayer(M,Pi,de);if(M.subTimeline&&r&&m.add(I),V){let gn=new _d(n,a,I);gn.setRealPlayer(ai),c.push(gn)}return ai});c.forEach(M=>{Un(this.playersByQueriedElement,M.element,[]).push(M),M.onDone(()=>GG(this.playersByQueriedElement,M.element,M))}),u.forEach(M=>Oi(M,QC));let _=uo(b);return _.onDestroy(()=>{u.forEach(M=>ac(M,QC)),er(l,e.toStyles)}),m.forEach(M=>{Un(r,M,[]).push(_)}),_}_buildPlayer(n,e,i){return e.length>0?this.driver.animate(n.element,e,n.duration,n.delay,n.easing,i):new Tr(n.duration,n.delay)}},_d=class{namespaceId;triggerName;element;_player=new Tr;_containsRealPlayer=!1;_queuedCallbacks=new Map;destroyed=!1;parentPlayer=null;markedForDestroy=!1;disabled=!1;queued=!0;totalTime=0;constructor(n,e,i){this.namespaceId=n,this.triggerName=e,this.element=i}setRealPlayer(n){this._containsRealPlayer||(this._player=n,this._queuedCallbacks.forEach((e,i)=>{e.forEach(r=>Km(n,i,void 0,r))}),this._queuedCallbacks.clear(),this._containsRealPlayer=!0,this.overrideTotalTime(n.totalTime),this.queued=!1)}getRealPlayer(){return this._player}overrideTotalTime(n){this.totalTime=n}syncPlayerEvents(n){let e=this._player;e.triggerCallback&&n.onStart(()=>e.triggerCallback("start")),n.onDone(()=>this.finish()),n.onDestroy(()=>this.destroy())}_queueEvent(n,e){Un(this._queuedCallbacks,n,[]).push(e)}onDone(n){this.queued&&this._queueEvent("done",n),this._player.onDone(n)}onStart(n){this.queued&&this._queueEvent("start",n),this._player.onStart(n)}onDestroy(n){this.queued&&this._queueEvent("destroy",n),this._player.onDestroy(n)}init(){this._player.init()}hasStarted(){return this.queued?!1:this._player.hasStarted()}play(){!this.queued&&this._player.play()}pause(){!this.queued&&this._player.pause()}restart(){!this.queued&&this._player.restart()}finish(){this._player.finish()}destroy(){this.destroyed=!0,this._player.destroy()}reset(){!this.queued&&this._player.reset()}setPosition(n){this.queued||this._player.setPosition(n)}getPosition(){return this.queued?0:this._player.getPosition()}triggerCallback(n){let e=this._player;e.triggerCallback&&e.triggerCallback(n)}};function GG(t,n,e){let i=t.get(n);if(i){if(i.length){let r=i.indexOf(e);i.splice(r,1)}i.length==0&&t.delete(n)}return i}function qG(t){return t??null}function sg(t){return t&&t.nodeType===1}function QG(t){return t=="start"||t=="done"}function AA(t,n){let e=t.style.display;return t.style.display=n??"none",e}function RA(t,n,e,i,r){let o=[];e.forEach(l=>o.push(AA(l)));let s=[];i.forEach((l,c)=>{let u=new Map;l.forEach(m=>{let b=n.computeStyle(c,m,r);u.set(m,b),(!b||b.length==0)&&(c[tr]=WG,s.push(c))}),t.set(c,u)});let a=0;return e.forEach(l=>AA(l,o[a++])),s}function OA(t,n){let e=new Map;if(t.forEach(a=>e.set(a,[])),n.length==0)return e;let i=1,r=new Set(n),o=new Map;function s(a){if(!a)return i;let l=o.get(a);if(l)return l;let c=a.parentNode;return e.has(c)?l=c:r.has(c)?l=i:l=s(c),o.set(a,l),l}return n.forEach(a=>{let l=s(a);l!==i&&e.get(l).push(a)}),e}function Oi(t,n){t.classList?.add(n)}function ac(t,n){t.classList?.remove(n)}function ZG(t,n,e){uo(e).onDone(()=>t.processLeaveNode(n))}function KG(t){let n=[];return HA(t,n),n}function HA(t,n){for(let e=0;er.add(o)):n.set(t,i),e.delete(t),!0}var lc=class{_driver;_normalizer;_transitionEngine;_timelineEngine;_triggerCache={};onRemovalComplete=(n,e)=>{};constructor(n,e,i){this._driver=e,this._normalizer=i,this._transitionEngine=new dw(n.body,e,i),this._timelineEngine=new cw(n.body,e,i),this._transitionEngine.onRemovalComplete=(r,o)=>this.onRemovalComplete(r,o)}registerTrigger(n,e,i,r,o){let s=n+"-"+r,a=this._triggerCache[s];if(!a){let l=[],c=[],u=LA(this._driver,o,l,c);if(l.length)throw cA(r,l);a=VG(r,u,this._normalizer),this._triggerCache[s]=a}this._transitionEngine.registerTrigger(e,r,a)}register(n,e){this._transitionEngine.register(n,e)}destroy(n,e){this._transitionEngine.destroy(n,e)}onInsert(n,e,i,r){this._transitionEngine.insertNode(n,e,i,r)}onRemove(n,e,i){this._transitionEngine.removeNode(n,e,i)}disableAnimations(n,e){this._transitionEngine.markElementAsDisabled(n,e)}process(n,e,i,r){if(i.charAt(0)=="@"){let[o,s]=YC(i),a=r;this._timelineEngine.command(o,e,s,a)}else this._transitionEngine.trigger(n,e,i,r)}listen(n,e,i,r,o){if(i.charAt(0)=="@"){let[s,a]=YC(i);return this._timelineEngine.listen(s,e,a,o)}return this._transitionEngine.listen(n,e,i,r,o)}flush(n=-1){this._transitionEngine.flush(n)}get players(){return[...this._transitionEngine.players,...this._timelineEngine.players]}whenRenderingDone(){return this._transitionEngine.whenRenderingDone()}afterFlushAnimationsDone(n){this._transitionEngine.afterFlushAnimationsDone(n)}};function XG(t,n){let e=null,i=null;return Array.isArray(n)&&n.length?(e=tw(n[0]),n.length>1&&(i=tw(n[n.length-1]))):n instanceof Map&&(e=tw(n)),e||i?new e6(t,e,i):null}var e6=(()=>{class t{_element;_startStyles;_endStyles;static initialStylesByElement=new WeakMap;_state=0;_initialStyles;constructor(e,i,r){this._element=e,this._startStyles=i,this._endStyles=r;let o=t.initialStylesByElement.get(e);o||t.initialStylesByElement.set(e,o=new Map),this._initialStyles=o}start(){this._state<1&&(this._startStyles&&er(this._element,this._startStyles,this._initialStyles),this._state=1)}finish(){this.start(),this._state<2&&(er(this._element,this._initialStyles),this._endStyles&&(er(this._element,this._endStyles),this._endStyles=null),this._state=1)}destroy(){this.finish(),this._state<3&&(t.initialStylesByElement.delete(this._element),this._startStyles&&(es(this._element,this._startStyles),this._endStyles=null),this._endStyles&&(es(this._element,this._endStyles),this._endStyles=null),er(this._element,this._initialStyles),this._state=3)}}return t})();function tw(t){let n=null;return t.forEach((e,i)=>{t6(i)&&(n=n||new Map,n.set(i,e))}),n}function t6(t){return t==="display"||t==="position"}var fg=class{element;keyframes;options;_specialStyles;_onDoneFns=[];_onStartFns=[];_onDestroyFns=[];_duration;_delay;_initialized=!1;_finished=!1;_started=!1;_destroyed=!1;_finalKeyframe;_originalOnDoneFns=[];_originalOnStartFns=[];domPlayer;time=0;parentPlayer=null;currentSnapshot=new Map;constructor(n,e,i,r){this.element=n,this.keyframes=e,this.options=i,this._specialStyles=r,this._duration=i.duration,this._delay=i.delay||0,this.time=this._duration+this._delay}_onFinish(){this._finished||(this._finished=!0,this._onDoneFns.forEach(n=>n()),this._onDoneFns=[])}init(){this._buildPlayer(),this._preparePlayerBeforeStart()}_buildPlayer(){if(this._initialized)return;this._initialized=!0;let n=this.keyframes;this.domPlayer=this._triggerWebAnimation(this.element,n,this.options),this._finalKeyframe=n.length?n[n.length-1]:new Map;let e=()=>this._onFinish();this.domPlayer.addEventListener("finish",e),this.onDestroy(()=>{this.domPlayer.removeEventListener("finish",e)})}_preparePlayerBeforeStart(){this._delay?this._resetDomPlayerState():this.domPlayer.pause()}_convertKeyframesToObject(n){let e=[];return n.forEach(i=>{e.push(Object.fromEntries(i))}),e}_triggerWebAnimation(n,e,i){return n.animate(this._convertKeyframesToObject(e),i)}onStart(n){this._originalOnStartFns.push(n),this._onStartFns.push(n)}onDone(n){this._originalOnDoneFns.push(n),this._onDoneFns.push(n)}onDestroy(n){this._onDestroyFns.push(n)}play(){this._buildPlayer(),this.hasStarted()||(this._onStartFns.forEach(n=>n()),this._onStartFns=[],this._started=!0,this._specialStyles&&this._specialStyles.start()),this.domPlayer.play()}pause(){this.init(),this.domPlayer.pause()}finish(){this.init(),this._specialStyles&&this._specialStyles.finish(),this._onFinish(),this.domPlayer.finish()}reset(){this._resetDomPlayerState(),this._destroyed=!1,this._finished=!1,this._started=!1,this._onStartFns=this._originalOnStartFns,this._onDoneFns=this._originalOnDoneFns}_resetDomPlayerState(){this.domPlayer&&this.domPlayer.cancel()}restart(){this.reset(),this.play()}hasStarted(){return this._started}destroy(){this._destroyed||(this._destroyed=!0,this._resetDomPlayerState(),this._onFinish(),this._specialStyles&&this._specialStyles.destroy(),this._onDestroyFns.forEach(n=>n()),this._onDestroyFns=[])}setPosition(n){this.domPlayer===void 0&&this.init(),this.domPlayer.currentTime=n*this.time}getPosition(){return+(this.domPlayer.currentTime??0)/this.time}get totalTime(){return this._delay+this._duration}beforeDestroy(){let n=new Map;this.hasStarted()&&this._finalKeyframe.forEach((i,r)=>{r!=="offset"&&n.set(r,this._finished?i:ig(this.element,r))}),this.currentSnapshot=n}triggerCallback(n){let e=n==="start"?this._onStartFns:this._onDoneFns;e.forEach(i=>i()),e.length=0}},pg=class{validateStyleProperty(n){return!0}validateAnimatableStyleProperty(n){return!0}containsElement(n,e){return zC(n,e)}getParentElement(n){return Xm(n)}query(n,e,i){return WC(n,e,i)}computeStyle(n,e,i){return ig(n,e)}animate(n,e,i,r,o,s=[]){let a=r==0?"both":"forwards",l={duration:i,delay:r,fill:a};o&&(l.easing=o);let c=new Map,u=s.filter(_=>_ instanceof fg);DA(i,r)&&u.forEach(_=>{_.currentSnapshot.forEach((M,I)=>c.set(I,M))});let m=CA(e).map(_=>new Map(_));m=MA(n,m,c);let b=XG(n,m);return new fg(n,m,l,b)}};var ag="@",BA="@.disabled",mg=class{namespaceId;delegate;engine;_onDestroy;\u0275type=0;constructor(n,e,i,r){this.namespaceId=n,this.delegate=e,this.engine=i,this._onDestroy=r}get data(){return this.delegate.data}destroyNode(n){this.delegate.destroyNode?.(n)}destroy(){this.engine.destroy(this.namespaceId,this.delegate),this.engine.afterFlushAnimationsDone(()=>{queueMicrotask(()=>{this.delegate.destroy()})}),this._onDestroy?.()}createElement(n,e){return this.delegate.createElement(n,e)}createComment(n){return this.delegate.createComment(n)}createText(n){return this.delegate.createText(n)}appendChild(n,e){this.delegate.appendChild(n,e),this.engine.onInsert(this.namespaceId,e,n,!1)}insertBefore(n,e,i,r=!0){this.delegate.insertBefore(n,e,i),this.engine.onInsert(this.namespaceId,e,n,r)}removeChild(n,e,i){this.parentNode(e)&&this.engine.onRemove(this.namespaceId,e,this.delegate)}selectRootElement(n,e){return this.delegate.selectRootElement(n,e)}parentNode(n){return this.delegate.parentNode(n)}nextSibling(n){return this.delegate.nextSibling(n)}setAttribute(n,e,i,r){this.delegate.setAttribute(n,e,i,r)}removeAttribute(n,e,i){this.delegate.removeAttribute(n,e,i)}addClass(n,e){this.delegate.addClass(n,e)}removeClass(n,e){this.delegate.removeClass(n,e)}setStyle(n,e,i,r){this.delegate.setStyle(n,e,i,r)}removeStyle(n,e,i){this.delegate.removeStyle(n,e,i)}setProperty(n,e,i){e.charAt(0)==ag&&e==BA?this.disableAnimations(n,!!i):this.delegate.setProperty(n,e,i)}setValue(n,e){this.delegate.setValue(n,e)}listen(n,e,i,r){return this.delegate.listen(n,e,i,r)}disableAnimations(n,e){this.engine.disableAnimations(n,e)}},hw=class extends mg{factory;constructor(n,e,i,r,o){super(e,i,r,o),this.factory=n,this.namespaceId=e}setProperty(n,e,i){e.charAt(0)==ag?e.charAt(1)=="."&&e==BA?(i=i===void 0?!0:!!i,this.disableAnimations(n,i)):this.engine.process(this.namespaceId,n,e.slice(1),i):this.delegate.setProperty(n,e,i)}listen(n,e,i,r){if(e.charAt(0)==ag){let o=n6(n),s=e.slice(1),a="";return s.charAt(0)!=ag&&([s,a]=i6(s)),this.engine.listen(this.namespaceId,o,s,a,l=>{let c=l._data||-1;this.factory.scheduleListenerCallback(c,i,l)})}return this.delegate.listen(n,e,i,r)}};function n6(t){switch(t){case"body":return document.body;case"document":return document;case"window":return window;default:return t}}function i6(t){let n=t.indexOf("."),e=t.substring(0,n),i=t.slice(n+1);return[e,i]}var gg=class{delegate;engine;_zone;_currentId=0;_microtaskId=1;_animationCallbacksBuffer=[];_rendererCache=new Map;_cdRecurDepth=0;constructor(n,e,i){this.delegate=n,this.engine=e,this._zone=i,e.onRemovalComplete=(r,o)=>{o?.removeChild(null,r)}}createRenderer(n,e){let i="",r=this.delegate.createRenderer(n,e);if(!n||!e?.data?.animation){let c=this._rendererCache,u=c.get(r);if(!u){let m=()=>c.delete(r);u=new mg(i,r,this.engine,m),c.set(r,u)}return u}let o=e.id,s=e.id+"-"+this._currentId;this._currentId++,this.engine.register(s,n);let a=c=>{Array.isArray(c)?c.forEach(a):this.engine.registerTrigger(o,s,n,c.name,c)};return e.data.animation.forEach(a),new hw(this,s,r,this.engine)}begin(){this._cdRecurDepth++,this.delegate.begin&&this.delegate.begin()}_scheduleCountTask(){queueMicrotask(()=>{this._microtaskId++})}scheduleListenerCallback(n,e,i){if(n>=0&&ne(i));return}let r=this._animationCallbacksBuffer;r.length==0&&queueMicrotask(()=>{this._zone.run(()=>{r.forEach(o=>{let[s,a]=o;s(a)}),this._animationCallbacksBuffer=[]})}),r.push([e,i])}end(){this._cdRecurDepth--,this._cdRecurDepth==0&&this._zone.runOutsideAngular(()=>{this._scheduleCountTask(),this.engine.flush(this._microtaskId)}),this.delegate.end&&this.delegate.end()}whenRenderingDone(){return this.engine.whenRenderingDone()}componentReplaced(n){this.engine.flush(),this.delegate.componentReplaced?.(n)}};var o6=(()=>{class t extends lc{constructor(e,i,r){super(e,i,r)}ngOnDestroy(){this.flush()}static \u0275fac=function(i){return new(i||t)(F(Ie),F(ca),F(ua))};static \u0275prov=x({token:t,factory:t.\u0275fac})}return t})();function s6(){return new lg}function a6(t,n,e){return new gg(t,n,e)}var UA=[{provide:ua,useFactory:s6},{provide:lc,useClass:o6},{provide:xn,useFactory:a6,deps:[Xc,lc,Me]}],Mme=[{provide:ca,useClass:fw},{provide:Lc,useValue:"NoopAnimations"},...UA],l6=[{provide:ca,useFactory:()=>new pg},{provide:Lc,useFactory:()=>"BrowserAnimations"},...UA];function $A(){return Za("NgEagerAnimations"),[...l6]}var c6=["overlay"],u6=["*"];function d6(t,n){t&1&&A(0,"div")}function h6(t,n){if(t&1&&(d(0,"div"),T(1,d6,1,0,"div",6),h()),t&2){let e=p(2);Jt(e.spinner.class),rn("color",e.spinner.color),f(),g("ngForOf",e.spinner.divArray)}}function f6(t,n){if(t&1&&(A(0,"div",7),te(1,"safeHtml")),t&2){let e=p(2);g("innerHTML",pe(1,1,e.template),mi)}}function p6(t,n){if(t&1&&(d(0,"div",2,0),T(2,h6,2,5,"div",3)(3,f6,2,3,"div",4),d(4,"div",5),Cn(5),h()()),t&2){let e=p();rn("background-color",e.spinner.bdColor)("z-index",e.spinner.zIndex)("position",e.spinner.fullScreen?"fixed":"absolute"),g("@.disabled",e.disableAnimation)("@fadeIn","in"),f(2),g("ngIf",!e.template),f(),g("ngIf",e.template),f(),rn("z-index",e.spinner.zIndex)}}var m6={"ball-8bits":16,"ball-atom":4,"ball-beat":3,"ball-circus":5,"ball-climbing-dot":4,"ball-clip-rotate":1,"ball-clip-rotate-multiple":2,"ball-clip-rotate-pulse":2,"ball-elastic-dots":5,"ball-fall":3,"ball-fussion":4,"ball-grid-beat":9,"ball-grid-pulse":9,"ball-newton-cradle":4,"ball-pulse":3,"ball-pulse-rise":5,"ball-pulse-sync":3,"ball-rotate":1,"ball-running-dots":5,"ball-scale":1,"ball-scale-multiple":3,"ball-scale-pulse":2,"ball-scale-ripple":1,"ball-scale-ripple-multiple":3,"ball-spin":8,"ball-spin-clockwise":8,"ball-spin-clockwise-fade":8,"ball-spin-clockwise-fade-rotating":8,"ball-spin-fade":8,"ball-spin-fade-rotating":8,"ball-spin-rotate":2,"ball-square-clockwise-spin":8,"ball-square-spin":8,"ball-triangle-path":3,"ball-zig-zag":2,"ball-zig-zag-deflect":2,cog:1,"cube-transition":2,fire:3,"line-scale":5,"line-scale-party":5,"line-scale-pulse-out":5,"line-scale-pulse-out-rapid":5,"line-spin-clockwise-fade":8,"line-spin-clockwise-fade-rotating":8,"line-spin-fade":8,"line-spin-fade-rotating":8,pacman:6,"square-jelly-box":2,"square-loader":1,"square-spin":1,timer:1,"triangle-skew-spin":1},mw={BD_COLOR:"rgba(51,51,51,0.8)",SPINNER_COLOR:"#fff",Z_INDEX:99999},gw="primary",da=class t{constructor(n){Object.assign(this,n)}static create(n){return!n?.template&&!n?.type&&console.warn(`[ngx-spinner]: Property "type" is missed. Please, provide animation type to component - and ensure css is added to angular.json file`),new t(n)}},_w=(()=>{class t{constructor(){this.spinnerObservable=new Pe(null)}getSpinner(e){return this.spinnerObservable.asObservable().pipe(le(i=>i&&i.name===e))}show(e=gw,i){return new Promise((r,o)=>{setTimeout(()=>{i&&Object.keys(i).length?(i.name=e,this.spinnerObservable.next(new da(W(E({},i),{show:!0}))),r(!0)):(this.spinnerObservable.next(new da({name:e,show:!0})),r(!0))},10)})}hide(e=gw,i=10){return new Promise((r,o)=>{setTimeout(()=>{this.spinnerObservable.next(new da({name:e,show:!1})),r(!0)},i)})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),YA=new B("NGX_SPINNER_CONFIG"),g6=(()=>{class t{constructor(e){this.sanitizer=e}transform(e){return e?this.sanitizer.bypassSecurityTrustHtml(e):""}static{this.\u0275fac=function(i){return new(i||t)(y(Kr,16))}}static{this.\u0275pipe=Eo({name:"safeHtml",type:t,pure:!0})}}return t})(),zA=(()=>{class t{constructor(e,i,r,o){this.spinnerService=e,this.changeDetector=i,this.elementRef=r,this.globalConfig=o,this.disableAnimation=!1,this.spinner=new da,this.ngUnsubscribe=new X,this.setDefaultOptions=()=>{let{type:s}=this.globalConfig??{};this.spinner=da.create({name:this.name,bdColor:this.bdColor,size:this.size,color:this.color,type:this.type??s,fullScreen:this.fullScreen,divArray:this.divArray,divCount:this.divCount,show:this.show,zIndex:this.zIndex,template:this.template,showSpinner:this.showSpinner})},this.bdColor=mw.BD_COLOR,this.zIndex=mw.Z_INDEX,this.color=mw.SPINNER_COLOR,this.size="large",this.fullScreen=!0,this.name=gw,this.template=null,this.showSpinner=!1,this.divArray=[],this.divCount=0,this.show=!1}initObservable(){this.spinnerService.getSpinner(this.name).pipe(hi(this.ngUnsubscribe)).subscribe(e=>{this.setDefaultOptions(),Object.assign(this.spinner,e),e.show&&this.onInputChange(),this.changeDetector.detectChanges()})}ngOnInit(){this.setDefaultOptions(),this.initObservable()}isSpinnerZone(e){return e===this.elementRef.nativeElement.parentElement?!0:e.parentNode&&this.isSpinnerZone(e.parentNode)}ngOnChanges(e){for(let i in e)if(i){let r=e[i];if(r.isFirstChange())return;typeof r.currentValue<"u"&&r.currentValue!==r.previousValue&&r.currentValue!==""&&(this.spinner[i]=r.currentValue,i==="showSpinner"&&(r.currentValue?this.spinnerService.show(this.spinner.name,this.spinner):this.spinnerService.hide(this.spinner.name)),i==="name"&&this.initObservable())}}getClass(e,i){this.spinner.divCount=m6[e],this.spinner.divArray=Array(this.spinner.divCount).fill(0).map((o,s)=>s);let r="";switch(i.toLowerCase()){case"small":r="la-sm";break;case"medium":r="la-2x";break;case"large":r="la-3x";break;default:break}return"la-"+e+" "+r}onInputChange(){this.spinner.class=this.getClass(this.spinner.type,this.spinner.size)}ngOnDestroy(){this.ngUnsubscribe.next(),this.ngUnsubscribe.complete()}static{this.\u0275fac=function(i){return new(i||t)(y(_w),y(it),y($),y(YA,8))}}static{this.\u0275cmp=L({type:t,selectors:[["ngx-spinner"]],viewQuery:function(i,r){if(i&1&&Ot(c6,5),i&2){let o;Ge(o=qe())&&(r.spinnerDOM=o.first)}},inputs:{bdColor:"bdColor",size:"size",color:"color",type:"type",fullScreen:"fullScreen",name:"name",zIndex:"zIndex",template:"template",showSpinner:"showSpinner",disableAnimation:"disableAnimation"},features:[xe],ngContentSelectors:u6,decls:1,vars:1,consts:[["overlay",""],["class","ngx-spinner-overlay",3,"background-color","z-index","position",4,"ngIf"],[1,"ngx-spinner-overlay"],[3,"class","color",4,"ngIf"],[3,"innerHTML",4,"ngIf"],[1,"loading-text"],[4,"ngFor","ngForOf"],[3,"innerHTML"]],template:function(i,r){i&1&&(Pn(),T(0,p6,6,12,"div",1)),i&2&&g("ngIf",r.spinner.show)},dependencies:[g6,De,rt],styles:[".ngx-spinner-overlay[_ngcontent-%COMP%]{position:fixed;top:0;left:0;width:100%;height:100%}.ngx-spinner-overlay[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]:not(.loading-text){top:50%;left:50%;margin:0;position:absolute;transform:translate(-50%,-50%)}.loading-text[_ngcontent-%COMP%]{position:absolute;top:60%;left:50%;transform:translate(-50%,-60%)}"],data:{animation:[no("fadeIn",[Ir("in",bt({opacity:1})),ni(":enter",[bt({opacity:0}),Dn(300)]),ni(":leave",Dn(200,bt({opacity:0})))])]},changeDetection:0})}}return t})(),WA=(()=>{class t{static forRoot(e){return{ngModule:t,providers:[{provide:YA,useValue:e}]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({})}}return t})();var GA=(t,n)=>{let e=S(sn),i=S(hn);return n(t).pipe(Fi(r=>{if(r)switch(r.status){case 400:if(r.error.errors){if(r.error.errors){let s=[];for(let a in r.error.errors)r.error.errors[a]&&s.push(r.error.errors[a]);throw s.flat()}}else i.error(r.error,r.status);break;case 401:i.error("Unauthorised",r.status);break;case 404:e.navigateByUrl("/not-found");break;case 500:let o={state:{error:r.error}};e.navigateByUrl("/server-error",o);break;default:i.error("Something unexpected went wrong"),console.log(r);break}throw r}))};var qA=(t,n)=>{let e=S(tt);return e.currentUser()&&(t=t.clone({setHeaders:{Authorization:`Bearer ${e.currentUser()?.token}`}})),n(t)};var _g=class t{busyRequestCount=0;spinnerService=S(_w);busy(){this.busyRequestCount++,this.spinnerService.show(void 0,{type:"line-scale-pulse-out-rapid",size:"medium",bdColor:"rgba(247,228,177,0.5)",color:"#008080"})}idle(){this.busyRequestCount--,this.busyRequestCount<=0&&(this.busyRequestCount=0,this.spinnerService.hide())}static \u0275fac=function(e){return new(e||t)};static \u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})};var QA=(t,n)=>{let e=S(_g);return e.busy(),n(t).pipe(Yt.production?Kt:_c(500),di(()=>{e.idle()}))};var ZA={providers:[L0(Wk),d0(h0([GA,qA,QA])),$A(),hb({positionClass:"toast-bottom-right"}),Vy(WA,Or.forRoot(),Uk.forRoot())]};var _6=["*"],y6=t=>({dropdown:t}),KA=(()=>{class t{constructor(){this.autoClose=!0,this.insideClick=!1,this.isAnimated=!1,this.stopOnClickPropagation=!1}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"root"})}}return t})(),cc=(()=>{class t{constructor(){this.direction="down",this.autoClose=!0,this.insideClick=!1,this.isAnimated=!1,this.stopOnClickPropagation=!1,this.isOpenChange=new P,this.isDisabledChange=new P,this.toggleClick=new P,this.counts=0,this.dropdownMenu=new Promise(e=>{this.resolveDropdownMenu=e})}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275prov=x({token:t,factory:t.\u0275fac,providedIn:"platform"})}}return t})(),v6="220ms cubic-bezier(0, 0, 0.2, 1)",JA=[bt({height:0,overflow:"hidden"}),Dn(v6,bt({height:"*",overflow:"hidden"}))],b6=(()=>{class t{get direction(){return this._state.direction}constructor(e,i,r,o,s){this._state=e,this.cd=i,this._renderer=r,this._element=o,this.isOpen=!1,this._factoryDropDownAnimation=s.build(JA),this._subscription=e.isOpenChange.subscribe(a=>{this.isOpen=a;let l=this._element.nativeElement.querySelector(".dropdown-menu");this._renderer.addClass(this._element.nativeElement.querySelector("div"),"open"),l&&(this._renderer.addClass(l,"show"),(l.classList.contains("dropdown-menu-right")||l.classList.contains("dropdown-menu-end"))&&(this._renderer.setStyle(l,"left","auto"),this._renderer.setStyle(l,"right","0")),this.direction==="up"&&(this._renderer.setStyle(l,"top","auto"),this._renderer.setStyle(l,"transform","translateY(-101%)"))),l&&this._state.isAnimated&&this._factoryDropDownAnimation.create(l).play(),this.cd.markForCheck(),this.cd.detectChanges()})}_contains(e){return this._element.nativeElement.contains(e)}ngOnDestroy(){this._subscription.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(y(cc),y(it),y(ke),y($),y(Vp))}}static{this.\u0275cmp=L({type:t,selectors:[["bs-dropdown-container"]],hostAttrs:[2,"display","block","position","absolute","z-index","1040"],ngContentSelectors:_6,decls:2,vars:9,consts:[[3,"ngClass"]],template:function(i,r){i&1&&(Pn(),d(0,"div",0),Cn(1),h()),i&2&&(j("dropup",r.direction==="up")("show",r.isOpen)("open",r.isOpen),g("ngClass",qr(7,y6,r.direction==="down")))},dependencies:[on],encapsulation:2,changeDetection:0})}}return t})(),yw=(()=>{class t{set autoClose(e){this._state.autoClose=e}get autoClose(){return this._state.autoClose}set isAnimated(e){this._state.isAnimated=e}get isAnimated(){return this._state.isAnimated}set insideClick(e){this._state.insideClick=e}get insideClick(){return this._state.insideClick}set isDisabled(e){this._isDisabled=e,this._state.isDisabledChange.emit(e),e&&this.hide()}get isDisabled(){return this._isDisabled}get isOpen(){return this._showInline?this._isInlineOpen:this._dropdown.isShown}set isOpen(e){e?this.show():this.hide()}get _showInline(){return!this.container}constructor(e,i,r,o,s,a,l){this._elementRef=e,this._renderer=i,this._viewContainerRef=r,this._cis=o,this._state=s,this._config=a,this.dropup=!1,this._isInlineOpen=!1,this._isDisabled=!1,this._subscriptions=[],this._isInited=!1,this._state.autoClose=this._config.autoClose,this._state.insideClick=this._config.insideClick,this._state.isAnimated=this._config.isAnimated,this._state.stopOnClickPropagation=this._config.stopOnClickPropagation,this._factoryDropDownAnimation=l.build(JA),this._dropdown=this._cis.createLoader(this._elementRef,this._viewContainerRef,this._renderer).provide({provide:cc,useValue:this._state}),this.onShown=this._dropdown.onShown,this.onHidden=this._dropdown.onHidden,this.isOpenChange=this._state.isOpenChange}ngOnInit(){this._isInited||(this._isInited=!0,this._dropdown.listen({outsideClick:!1,triggers:this.triggers,show:()=>this.show()}),this._subscriptions.push(this._state.toggleClick.subscribe(e=>this.toggle(e))),this._subscriptions.push(this._state.isDisabledChange.pipe(le(e=>e)).subscribe(()=>this.hide())))}show(){if(!(this.isOpen||this.isDisabled)){if(this._showInline){this._inlinedMenu||this._state.dropdownMenu.then(e=>{this._dropdown.attachInline(e.viewContainer,e.templateRef),this._inlinedMenu=this._dropdown._inlineViewRef,this.addBs4Polyfills(),this._inlinedMenu&&this._renderer.addClass(this._inlinedMenu.rootNodes[0].parentNode,"open"),this.playAnimation()}).catch(),this.addBs4Polyfills(),this._isInlineOpen=!0,this.onShown.emit(!0),this._state.isOpenChange.emit(!0),this.playAnimation();return}this._state.dropdownMenu.then(e=>{let i=this.dropup||typeof this.dropup<"u"&&this.dropup;this._state.direction=i?"up":"down";let r=this.placement||(i?"top start":"bottom start");this._dropdown.attach(b6).to(this.container).position({attachment:r}).show({content:e.templateRef,placement:r}),this._state.isOpenChange.emit(!0)}).catch()}}hide(){this.isOpen&&(this._showInline?(this.removeShowClass(),this.removeDropupStyles(),this._isInlineOpen=!1,this.onHidden.emit(!0)):this._dropdown.hide(),this._state.isOpenChange.emit(!1))}toggle(e){return this.isOpen||!e?this.hide():this.show()}_contains(e){return this._elementRef.nativeElement.contains(e.target)||this._dropdown.instance&&this._dropdown.instance._contains(e.target)}navigationClick(e){let i=this._elementRef.nativeElement.querySelector(".dropdown-menu");if(!i)return;let r=this._elementRef.nativeElement.ownerDocument.activeElement,o=i.querySelectorAll(".dropdown-item");switch(e.keyCode){case 38:this._state.counts>0&&o[--this._state.counts].focus();break;case 40:this._state.counts+1{this._inlinedMenu&&this._factoryDropDownAnimation.create(this._inlinedMenu.rootNodes[0]).play()})}addShowClass(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&this._renderer.addClass(this._inlinedMenu.rootNodes[0],"show")}removeShowClass(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&this._renderer.removeClass(this._inlinedMenu.rootNodes[0],"show")}checkRightAlignment(){if(this._inlinedMenu&&this._inlinedMenu.rootNodes[0]){let e=this._inlinedMenu.rootNodes[0].classList.contains("dropdown-menu-right")||this._inlinedMenu.rootNodes[0].classList.contains("dropdown-menu-end");this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"left",e?"auto":"0"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"right",e?"0":"auto")}}addDropupStyles(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&(this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"top",this.dropup?"auto":"100%"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"transform",this.dropup?"translateY(-101%)":"translateY(0)"),this._renderer.setStyle(this._inlinedMenu.rootNodes[0],"bottom","auto"))}removeDropupStyles(){this._inlinedMenu&&this._inlinedMenu.rootNodes[0]&&(this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"top"),this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"transform"),this._renderer.removeStyle(this._inlinedMenu.rootNodes[0],"bottom"))}static{this.\u0275fac=function(i){return new(i||t)(y($),y(ke),y(pt),y(Qt),y(cc),y(KA),y(Vp))}}static{this.\u0275dir=H({type:t,selectors:[["","bsDropdown",""],["","dropdown",""]],hostVars:6,hostBindings:function(i,r){i&1&&D("keydown.arrowDown",function(s){return r.navigationClick(s)})("keydown.arrowUp",function(s){return r.navigationClick(s)}),i&2&&j("dropup",r.dropup)("open",r.isOpen)("show",r.isOpen)},inputs:{placement:"placement",triggers:"triggers",container:"container",dropup:"dropup",autoClose:"autoClose",isAnimated:"isAnimated",insideClick:"insideClick",isDisabled:"isDisabled",isOpen:"isOpen"},outputs:{isOpenChange:"isOpenChange",onShown:"onShown",onHidden:"onHidden"},exportAs:["bs-dropdown"],features:[ce([cc,Qt,KA])]})}}return t})(),XA=(()=>{class t{constructor(e,i,r){e.resolveDropdownMenu({templateRef:r,viewContainer:i})}static{this.\u0275fac=function(i){return new(i||t)(y(cc),y(pt),y(St))}}static{this.\u0275dir=H({type:t,selectors:[["","bsDropdownMenu",""],["","dropdownMenu",""]],exportAs:["bs-dropdown-menu"]})}}return t})(),eR=(()=>{class t{constructor(e,i,r,o,s){this._changeDetectorRef=e,this._dropdown=i,this._element=r,this._renderer=o,this._state=s,this.isOpen=!1,this._subscriptions=[],this._subscriptions.push(this._state.isOpenChange.subscribe(a=>{this.isOpen=a,a?(this._documentClickListener=this._renderer.listen("document","click",l=>{this._state.autoClose&&l.button!==2&&!this._element.nativeElement.contains(l.target)&&!(this._state.insideClick&&this._dropdown._contains(l))&&(this._state.toggleClick.emit(!1),this._changeDetectorRef.detectChanges())}),this._escKeyUpListener=this._renderer.listen(this._element.nativeElement,"keyup.esc",()=>{this._state.autoClose&&(this._state.toggleClick.emit(!1),this._changeDetectorRef.detectChanges())})):(this._documentClickListener&&this._documentClickListener(),this._escKeyUpListener&&this._escKeyUpListener())})),this._subscriptions.push(this._state.isDisabledChange.subscribe(a=>this.isDisabled=a||void 0))}onClick(e){this._state.stopOnClickPropagation&&e.stopPropagation(),!this.isDisabled&&this._state.toggleClick.emit(!0)}ngOnDestroy(){this._documentClickListener&&this._documentClickListener(),this._escKeyUpListener&&this._escKeyUpListener();for(let e of this._subscriptions)e.unsubscribe()}static{this.\u0275fac=function(i){return new(i||t)(y(it),y(yw),y($),y(ke),y(cc))}}static{this.\u0275dir=H({type:t,selectors:[["","bsDropdownToggle",""],["","dropdownToggle",""]],hostVars:3,hostBindings:function(i,r){i&1&&D("click",function(s){return r.onClick(s)}),i&2&&J("aria-haspopup",!0)("disabled",r.isDisabled)("aria-expanded",r.isOpen)},exportAs:["bs-dropdown-toggle"]})}}return t})(),tR=(()=>{class t{static forRoot(){return{ngModule:t,providers:[]}}static{this.\u0275fac=function(i){return new(i||t)}}static{this.\u0275mod=be({type:t})}static{this.\u0275inj=ve({})}}return t})();var w6=t=>({collapse:t}),D6=()=>["Admin","Moderator"];function M6(t,n){t&1&&(d(0,"li",12)(1,"a",17),v(2,"Admin"),h()())}function S6(t,n){t&1&&(d(0,"li",12)(1,"a",13),v(2,"Matches"),h()(),d(3,"li",12)(4,"a",14),v(5,"Lists"),h()(),d(6,"li",12)(7,"a",15),v(8,"Messages"),h()(),T(9,M6,3,0,"li",16)),t&2&&(f(9),g("appHasRole",Gr(1,D6)))}function E6(t,n){if(t&1){let e=N();d(0,"div",21)(1,"a",22),v(2,"Edit profile"),h(),A(3,"div",23),d(4,"a",24),D("click",function(){C(e);let r=p(2);return w(r.logout())}),v(5,"Logout"),h()()}}function T6(t,n){if(t&1&&(d(0,"div",10),A(1,"img",18),d(2,"a",19),v(3),h(),T(4,E6,6,0,"div",20),h()),t&2){let e,i,r=p();f(),Dt("src",((e=r.currentUser())==null?null:e.photoUrl)||"https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain",ft),f(2),Te("Welcome ",(i=r.currentUser())==null?null:i.knownAs,"")}}function I6(t,n){if(t&1){let e=N();d(0,"form",25,0),D("ngSubmit",function(){C(e);let r=p();return w(r.login())}),d(2,"input",26),Fe("ngModelChange",function(r){C(e);let o=p();return Ve(o.model.username,r)||(o.model.username=r),w(r)}),h(),d(3,"input",27),Fe("ngModelChange",function(r){C(e);let o=p();return Ve(o.model.password,r)||(o.model.password=r),w(r)}),h(),d(4,"button",28),v(5,"Login"),h()()}if(t&2){let e=p();f(2),Le("ngModel",e.model.username),f(),Le("ngModel",e.model.password)}}var yg=class t{accountService=S(tt);router=S(sn);toastr=S(hn);isCollapsed=!0;model={};login(){this.accountService.login(this.model).subscribe({next:n=>this.router.navigateByUrl("/members"),error:n=>this.toastr.error(n.error)})}logout(){this.accountService.logout(),this.router.navigateByUrl("/")}toggleNavbar(){this.isCollapsed=!this.isCollapsed}currentUser(){return this.accountService.currentUser()}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-nav"]],decls:14,vars:6,consts:[["loginForm","ngForm"],[1,"navbar","navbar-expand-md","py-2","navbar-dark","bg-primary","floating-nav"],[1,"container"],["routerLinkActive","active","routerLink","/",1,"navbar-brand"],["type","button","aria-controls","navbarContent","aria-expanded","false","aria-label","Toggle navigation",1,"navbar-toggler",3,"click"],[1,"navbar-toggler-icon"],[1,"navbar-collapse",3,"ngClass"],[1,"navbar-nav","mr-auto"],[1,"nav-item","active"],["routerLink","/errors","routerLinkActive","active",1,"nav-link"],["dropdown","",1,"dropdown","ms-auto"],["autocomplete","off",1,"d-flex","mt-2","mt-md-0","ms-auto"],[1,"nav-item"],["routerLink","/members","routerLinkActive","active",1,"nav-link"],["routerLink","/lists","routerLinkActive","active",1,"nav-link"],["routerLink","/messages","routerLinkActive","active",1,"nav-link"],["class","nav-item",4,"appHasRole"],["routerLink","/admin","routerLinkActive","active",1,"nav-link"],["alt","User main image",1,"me-2",3,"src"],["dropdownToggle","",1,"dropdown-toggle","text-light","text-decoration-none"],["class","dropdown-menu",4,"dropdownMenu"],[1,"dropdown-menu"],["routerLink","/member/edit",1,"dropdown-item"],[1,"dropdown-divider"],[1,"dropdown-item",3,"click"],["autocomplete","off",1,"d-flex","mt-2","mt-md-0","ms-auto",3,"ngSubmit"],["name","username","type","text","placeholder","Username",1,"form-control","ms-2",3,"ngModelChange","ngModel"],["name","password","type","password","placeholder","Password",1,"form-control","ms-2",3,"ngModelChange","ngModel"],["type","submit",1,"btn","btn-success","ms-2"]],template:function(e,i){e&1&&(d(0,"nav",1)(1,"div",2)(2,"a",3),v(3,"Dating App"),h(),d(4,"button",4),D("click",function(){return i.toggleNavbar()}),A(5,"span",5),h(),d(6,"div",6)(7,"ul",7),T(8,S6,10,2),d(9,"li",8)(10,"a",9),v(11,"Errors"),h()()(),T(12,T6,5,2,"div",10)(13,I6,6,2,"form",11),h()()()),e&2&&(f(6),g("ngClass",qr(4,w6,i.isCollapsed)),f(2),Re(i.currentUser()?8:-1),f(4),Re(i.currentUser()?12:-1),f(),Re(i.currentUser()?-1:13))},dependencies:[Hn,wr,en,Nt,Cr,wn,to,tR,XA,eR,yw,br,rc,ot,on],styles:[".dropdown-toggle[_ngcontent-%COMP%], .dropdown-item[_ngcontent-%COMP%]{cursor:pointer}img[_ngcontent-%COMP%]{max-height:50px;border:2px solid #fff;display:inline;border-radius:50%}.floating-nav[_ngcontent-%COMP%]{margin:15px auto;border-radius:15px;box-shadow:0 4px 12px #00000026;width:95%;max-width:1400px;position:fixed;top:0;left:0;right:0;z-index:1030}body[_ngcontent-%COMP%]{padding-top:90px}@media (max-width: 767px){.navbar-collapse[_ngcontent-%COMP%]{padding:10px 0}.navbar-collapse.collapse[_ngcontent-%COMP%]{display:none}.navbar-collapse[_ngcontent-%COMP%]:not(.collapse){display:block}.navbar-nav[_ngcontent-%COMP%]{margin-top:10px;border-top:1px solid rgba(255,255,255,.2);padding-top:10px}.dropdown[_ngcontent-%COMP%], form[_ngcontent-%COMP%]{margin-top:15px;width:100%}form.d-flex[_ngcontent-%COMP%]{flex-wrap:wrap}form.d-flex[_ngcontent-%COMP%] input[_ngcontent-%COMP%], form.d-flex[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{margin:5px 0}}"]})};var vg=class t{accountService=S(tt);ngOnInit(){this.setCurrentUser()}setCurrentUser(){let n=localStorage.getItem("user");if(!n)return;let e=JSON.parse(n);this.accountService.setCurrentUser(e)}static \u0275fac=function(e){return new(e||t)};static \u0275cmp=L({type:t,selectors:[["app-root"]],decls:6,vars:0,consts:[["type","line-scale-pulse-out-rapid"],[1,"container",2,"margin-top","100px"]],template:function(e,i){e&1&&(d(0,"ngx-spinner",0)(1,"h3"),v(2,"Loading..."),h()(),A(3,"app-nav"),d(4,"div",1),A(5,"router-outlet"),h())},dependencies:[Cu,yg,zA],encapsulation:2})};s0(vg,ZA).catch(t=>console.error(t)); diff --git a/API/wwwroot/media/fa-brands-400-L56FXN36.ttf b/API/wwwroot/media/fa-brands-400-L56FXN36.ttf new file mode 100644 index 0000000..774d51a Binary files /dev/null and b/API/wwwroot/media/fa-brands-400-L56FXN36.ttf differ diff --git a/API/wwwroot/media/fa-brands-400-SIIAGDBB.woff2 b/API/wwwroot/media/fa-brands-400-SIIAGDBB.woff2 new file mode 100644 index 0000000..71e3185 Binary files /dev/null and b/API/wwwroot/media/fa-brands-400-SIIAGDBB.woff2 differ diff --git a/API/wwwroot/media/fa-regular-400-AKWU76I6.woff2 b/API/wwwroot/media/fa-regular-400-AKWU76I6.woff2 new file mode 100644 index 0000000..7f02168 Binary files /dev/null and b/API/wwwroot/media/fa-regular-400-AKWU76I6.woff2 differ diff --git a/API/wwwroot/media/fa-regular-400-K4FBMWYG.ttf b/API/wwwroot/media/fa-regular-400-K4FBMWYG.ttf new file mode 100644 index 0000000..8a9d634 Binary files /dev/null and b/API/wwwroot/media/fa-regular-400-K4FBMWYG.ttf differ diff --git a/API/wwwroot/media/fa-solid-900-BNOK755N.ttf b/API/wwwroot/media/fa-solid-900-BNOK755N.ttf new file mode 100644 index 0000000..993dbe1 Binary files /dev/null and b/API/wwwroot/media/fa-solid-900-BNOK755N.ttf differ diff --git a/API/wwwroot/media/fa-solid-900-H2XJQV6A.woff2 b/API/wwwroot/media/fa-solid-900-H2XJQV6A.woff2 new file mode 100644 index 0000000..5c16cd3 Binary files /dev/null and b/API/wwwroot/media/fa-solid-900-H2XJQV6A.woff2 differ diff --git a/API/wwwroot/media/fa-v4compatibility-MIE46ALS.woff2 b/API/wwwroot/media/fa-v4compatibility-MIE46ALS.woff2 new file mode 100644 index 0000000..9027e38 Binary files /dev/null and b/API/wwwroot/media/fa-v4compatibility-MIE46ALS.woff2 differ diff --git a/API/wwwroot/media/fa-v4compatibility-SLOOKL4I.ttf b/API/wwwroot/media/fa-v4compatibility-SLOOKL4I.ttf new file mode 100644 index 0000000..ab6ae22 Binary files /dev/null and b/API/wwwroot/media/fa-v4compatibility-SLOOKL4I.ttf differ diff --git a/API/wwwroot/styles-7PEX7IY6.css b/API/wwwroot/styles-7PEX7IY6.css new file mode 100644 index 0000000..06ec573 --- /dev/null +++ b/API/wwwroot/styles-7PEX7IY6.css @@ -0,0 +1 @@ +@charset "UTF-8";.bs-datepicker{display:flex;align-items:stretch;flex-flow:row wrap;background:#fff;box-shadow:0 0 10px #aaa;position:relative;z-index:1}.bs-datepicker:after{clear:both;content:"";display:block}.bs-datepicker bs-day-picker{float:left}.bs-datepicker button:hover,.bs-datepicker button:focus,.bs-datepicker button:active,.bs-datepicker input:hover,.bs-datepicker input:focus,.bs-datepicker input:active,.bs-datepicker-btns button:hover,.bs-datepicker-btns button:focus,.bs-datepicker-btns button:active,.bs-datepicker-predefined-btns button:active,.bs-datepicker-predefined-btns button:focus{outline:none}.bs-datepicker-head{min-width:270px;height:50px;padding:10px;border-radius:3px 3px 0 0;text-align:justify}.bs-datepicker-head:after{content:"";display:inline-block;vertical-align:top;width:100%}.bs-datepicker-head button{display:inline-block;vertical-align:top;padding:0;height:30px;line-height:30px;border:0;background:transparent;text-align:center;cursor:pointer;color:#fff;transition:.3s}.bs-datepicker-head button[disabled],.bs-datepicker-head button[disabled]:hover,.bs-datepicker-head button[disabled]:active{background:#dddddd4d;color:#f5f5f5;cursor:not-allowed}.bs-datepicker-head button.previous span{transform:translate(-1px,-1px)}.bs-datepicker-head button.next span{transform:translate(1px,-1px)}.bs-datepicker-head button.next,.bs-datepicker-head button.previous{border-radius:50%;width:30px;height:30px}.bs-datepicker-head button.next span,.bs-datepicker-head button.previous span{font-size:28px;line-height:1;display:inline-block;position:relative;height:100%;width:100%;border-radius:50%}.bs-datepicker-head button.current{border-radius:15px;max-width:155px;padding:0 13px}.bs-datepicker-head button:hover{background-color:#0000001a}.bs-datepicker-head button:active{background-color:#0003}.bs-datepicker-body{padding:10px;border-radius:0 0 3px 3px;min-height:232px;min-width:278px;border:1px solid #e9edf0}.bs-datepicker-body .days.weeks{position:relative;z-index:1}.bs-datepicker-body table{width:100%;border-collapse:separate;border-spacing:0}.bs-datepicker-body table th{font-size:13px;color:#9aaec1;font-weight:400;text-align:center}.bs-datepicker-body table td{color:#54708b;text-align:center;position:relative;padding:0}.bs-datepicker-body table td span{display:block;margin:0 auto;font-size:13px;border-radius:50%;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.bs-datepicker-body table td:not(.disabled):not(.week) span:not(.disabled):not(.is-other-month){cursor:pointer}.bs-datepicker-body table td.is-highlighted:not(.disabled):not(.selected) span,.bs-datepicker-body table td span.is-highlighted:not(.disabled):not(.selected){background-color:#e9edf0;transition:0s}.bs-datepicker-body table td.is-active-other-month:not(.disabled):not(.selected) span,.bs-datepicker-body table td span.is-active-other-month:not(.disabled):not(.selected){background-color:#e9edf0;transition:0s;cursor:pointer}.bs-datepicker-body table td span.disabled,.bs-datepicker-body table td.disabled span{color:#9aaec1}.bs-datepicker-body table td span.selected,.bs-datepicker-body table td.selected span{color:#fff}.bs-datepicker-body table td span.selected.disabled,.bs-datepicker-body table td.selected.disabled span{opacity:.3}.bs-datepicker-body table td span.is-other-month,.bs-datepicker-body table td.is-other-month span{color:#00000040}.bs-datepicker-body table td.active{position:relative}.bs-datepicker-body table td.active.select-start:before{left:35%}.bs-datepicker-body table td.active.select-end:before{left:-85%}.bs-datepicker-body table td span.active.select-start:after,.bs-datepicker-body table td span.active.select-end:after,.bs-datepicker-body table td.active.select-start span:after,.bs-datepicker-body table td.active.select-end span:after{content:"";display:block;position:absolute;z-index:-1;width:100%;height:100%;transition:.3s;top:0;border-radius:50%}.bs-datepicker-body table td:before,.bs-datepicker-body table td span:before{content:"";display:block;position:absolute;z-index:-1;inset:6px -2px 6px -3px;box-sizing:content-box;background:transparent}.bs-datepicker-body table td.active.select-start+td.active:before{left:-20%}.bs-datepicker-body table td:last-child.active:before{border-radius:0 3px 3px 0;width:125%;left:-25%}.bs-datepicker-body table td span[class*=select-],.bs-datepicker-body table td[class*=select-] span{border-radius:50%;color:#fff}.bs-datepicker-body table.days td.active:not(.select-start):not(.disabled):before,.bs-datepicker-body table.days td.in-range:not(.select-start):not(.disabled):before,.bs-datepicker-body table.days span.active:not(.select-start):not(.disabled):before,.bs-datepicker-body table.days span.in-range:not(.select-start):not(.disabled):before{background:#e9edf0}.bs-datepicker-body table.days span{width:32px;height:32px;line-height:32px}.bs-datepicker-body table.days span.select-start{z-index:2}.bs-datepicker-body table.days span.is-highlighted.in-range:before{right:3px;left:0}.bs-datepicker-body table.days span.in-range.select-end:before{right:4px;left:0}.bs-datepicker-body table.days td.select-start+td.select-end:before,.bs-datepicker-body table.days td.select-start+td.is-highlighted:before,.bs-datepicker-body table.days td.active+td.is-highlighted:before,.bs-datepicker-body table.days td.active+td.select-end:before,.bs-datepicker-body table.days td.in-range+td.is-highlighted:before,.bs-datepicker-body table.days td.in-range+td.select-end:before{background:#e9edf0;width:100%}.bs-datepicker-body table.weeks tr td:nth-child(2).active:before{border-radius:3px 0 0 3px;left:0;width:100%}.bs-datepicker-body table:not(.weeks) tr td:first-child:before{border-radius:3px 0 0 3px}.bs-datepicker-body table.years td span{width:46px;height:46px;line-height:45px;margin:0 auto}.bs-datepicker-body table.years tr:not(:last-child) td span{margin-bottom:8px}.bs-datepicker-body table.months td{height:52px}.bs-datepicker-body table.months td span{padding:6px;border-radius:15px}.bs-datepicker .current-timedate{color:#54708b;font-size:15px;text-align:center;height:30px;line-height:30px;border-radius:20px;border:1px solid #e9edf0;margin-bottom:10px;cursor:pointer;text-transform:uppercase;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.bs-datepicker .current-timedate span:not(:empty):before{content:"";width:15px;height:16px;display:inline-block;margin-right:4px;vertical-align:text-bottom;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAABMklEQVQoU9VTwW3CQBCcOUgBtEBKSAukAnBKME+wFCAlYIhk8sQlxFABtJAScAsuAPBEewYcxCP8ouxrPDsza61uiVN1o6RNHD4htSCmq49RfO71BvMJqBBkITRf1kmUW49nQRC9h1I5AZlBClaL8aP1fKgOOxCx8aSLs+Q19eZuNO8QmPqJRtDFguy7OAcDbJPs+/BKVPDIPrvD2ZJgWAmVe7O0rI0Vqs1seyWUXpuJoppYCa5L+U++NpNPkr5OE2oMdARsb3gykJT5ydZcL8Z9Ww60nxg2LhjON9li9OwXZzo+xLbp3nC2s9CL2RrueGyVrgwNm8HpsCzZ9EEW6kqXlo1GQe03FzP/7W8Hl0dBtu7Bf7zt6mIwvX1RvzDCm7+q3mAW0Dl/GPdUCeXrZLT9BrDrGkm4qlPvAAAAAElFTkSuQmCC)}.bs-datepicker-multiple{border-radius:4px 0 0 4px}.bs-datepicker-multiple+.bs-datepicker-multiple{margin-left:10px}.bs-datepicker-multiple .bs-datepicker{box-shadow:none;position:relative}.bs-datepicker-multiple .bs-datepicker:not(:last-child){padding-right:10px}.bs-datepicker-multiple .bs-datepicker+.bs-datepicker:after{content:"";display:block;width:14px;height:10px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAKCAYAAABrGwT5AAAA1ElEQVQoU42RsQrCUAxF77VuDu7O4oMWW//BURBBpZvgKk4uIrjoqKOTf+DopIO4uYggtFTfw3+pkQqCW1/G5J7kJiFy4m5MxUlxAzgIPHX+lzMPzupRYlYgxiR7vqsOP8YKzsTx0yxFMCUZ+q7aZzlr+OvgoWcAFyAHgat2jLWu48252DdqAihDJGSSJNUUxYmQjs3+hPQBlAh2rG2LCOPnaw3IiGDX99TRCs7ASJsNhUOA7d/LcuHvRG22FIZvsNXw1MX6VZExCilOQKEfeLXr/10+aC9Ho7arh7oAAAAASUVORK5CYII=);position:absolute;top:25px;left:-8px}.bs-datepicker-multiple .bs-datepicker .left{float:left}.bs-datepicker-multiple .bs-datepicker .right{float:right}.bs-datepicker-container{padding:15px}.bs-datepicker .bs-media-container{display:flex}@media (max-width: 768px){.bs-datepicker .bs-media-container{flex-direction:column}}.bs-datepicker .bs-timepicker-in-datepicker-container{display:flex;justify-content:space-around}.bs-datepicker-custom-range{padding:15px;background:#eee}.bs-datepicker-predefined-btns button{width:100%;display:block;height:30px;background-color:#9aaec1;border-radius:4px;color:#fff;border:0;margin-bottom:10px;padding:0 18px;text-align:left;transition:.3s}.bs-datepicker-predefined-btns button:hover{background-color:#54708b}.bs-datepicker-buttons{display:flex;flex-flow:row wrap;justify-content:flex-end;padding-top:10px;border-top:1px solid #e9edf0}.bs-datepicker-buttons .btn-default{margin-left:10px}.bs-datepicker-buttons .btn-today-wrapper{display:flex;flex-flow:row wrap}.bs-datepicker-buttons .clear-right,.bs-datepicker-buttons .today-right{flex-grow:0}.bs-datepicker-buttons .clear-left,.bs-datepicker-buttons .today-left{flex-grow:1}.bs-datepicker-buttons .clear-center,.bs-datepicker-buttons .today-center{flex-grow:.5}.bs-timepicker-container{padding:10px 0}.bs-timepicker-label{color:#54708b;margin-bottom:10px}.bs-timepicker-controls{display:inline-block;vertical-align:top;margin-right:10px}.bs-timepicker-controls button{width:20px;height:20px;border-radius:50%;border:0;background-color:#e9edf0;color:#54708b;font-size:16px;font-weight:700;vertical-align:middle;line-height:0;padding:0;transition:.3s}.bs-timepicker-controls button:hover{background-color:#d5dadd}.bs-timepicker-controls input{width:35px;height:25px;border-radius:13px;text-align:center;border:1px solid #e9edf0}.bs-timepicker .switch-time-format{text-transform:uppercase;min-width:54px;height:25px;border-radius:20px;border:1px solid #e9edf0;background:#fff;color:#54708b;font-size:13px}.bs-timepicker .switch-time-format img{vertical-align:initial;margin-left:4px}bs-datepicker-container,bs-daterangepicker-container{z-index:1080}@media (max-width: 768px){.bs-datepicker{width:min-content;justify-content:center}.bs-datepicker-multiple{display:flex}.bs-datepicker-multiple+.bs-datepicker-multiple{margin-top:10px;margin-left:0}}.theme-default .bs-datepicker-head{background-color:#777}.theme-default .btn-today-wrapper .btn-success,.theme-default .btn-clear-wrapper .btn-success{background-color:#777;border-color:#777}.theme-default .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-default .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-default .btn-today-wrapper .btn-success:focus,.theme-default .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-default .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-default .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#616161;border-color:#616161}.theme-default .btn-today-wrapper .btn-success:hover,.theme-default .btn-clear-wrapper .btn-success:hover{background-color:#6f6e6e;border-color:#6f6e6e}.theme-default .bs-datepicker-predefined-btns button.selected{background-color:#777}.theme-default .bs-datepicker-body table td span.selected,.theme-default .bs-datepicker-body table td.selected span,.theme-default .bs-datepicker-body table td span[class*=select-]:after,.theme-default .bs-datepicker-body table td[class*=select-] span:after{background-color:#777}.theme-default .bs-datepicker-body table td.week span{color:#777}.theme-default .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#777;color:#fff;opacity:.5;transition:0s}.theme-green .bs-datepicker-head{background-color:#5cb85c}.theme-green .btn-today-wrapper .btn-success,.theme-green .btn-clear-wrapper .btn-success{background-color:#5cb85c;border-color:#5cb85c}.theme-green .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-green .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-green .btn-today-wrapper .btn-success:focus,.theme-green .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-green .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-green .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#1e7e34;border-color:#1e7e34}.theme-green .btn-today-wrapper .btn-success:hover,.theme-green .btn-clear-wrapper .btn-success:hover{background-color:#218838;border-color:#218838}.theme-green .bs-datepicker-predefined-btns button.selected{background-color:#5cb85c}.theme-green .bs-datepicker-body table td span.selected,.theme-green .bs-datepicker-body table td.selected span,.theme-green .bs-datepicker-body table td span[class*=select-]:after,.theme-green .bs-datepicker-body table td[class*=select-] span:after{background-color:#5cb85c}.theme-green .bs-datepicker-body table td.week span{color:#5cb85c}.theme-green .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#5cb85c;color:#fff;opacity:.5;transition:0s}.theme-blue .bs-datepicker-head{background-color:#5bc0de}.theme-blue .btn-today-wrapper .btn-success,.theme-blue .btn-clear-wrapper .btn-success{background-color:#5bc0de;border-color:#5bc0de}.theme-blue .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-blue .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-blue .btn-today-wrapper .btn-success:focus,.theme-blue .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-blue .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-blue .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#2aa8cd;border-color:#2aa8cd}.theme-blue .btn-today-wrapper .btn-success:hover,.theme-blue .btn-clear-wrapper .btn-success:hover{background-color:#3ab3d7;border-color:#3ab3d7}.theme-blue .bs-datepicker-predefined-btns button.selected{background-color:#5bc0de}.theme-blue .bs-datepicker-body table td span.selected,.theme-blue .bs-datepicker-body table td.selected span,.theme-blue .bs-datepicker-body table td span[class*=select-]:after,.theme-blue .bs-datepicker-body table td[class*=select-] span:after{background-color:#5bc0de}.theme-blue .bs-datepicker-body table td.week span{color:#5bc0de}.theme-blue .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#5bc0de;color:#fff;opacity:.5;transition:0s}.theme-dark-blue .bs-datepicker-head{background-color:#337ab7}.theme-dark-blue .btn-today-wrapper .btn-success,.theme-dark-blue .btn-clear-wrapper .btn-success{background-color:#337ab7;border-color:#337ab7}.theme-dark-blue .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-dark-blue .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-dark-blue .btn-today-wrapper .btn-success:focus,.theme-dark-blue .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-dark-blue .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-dark-blue .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#266498;border-color:#266498}.theme-dark-blue .btn-today-wrapper .btn-success:hover,.theme-dark-blue .btn-clear-wrapper .btn-success:hover{background-color:#2c6fa9;border-color:#2c6fa9}.theme-dark-blue .bs-datepicker-predefined-btns button.selected{background-color:#337ab7}.theme-dark-blue .bs-datepicker-body table td span.selected,.theme-dark-blue .bs-datepicker-body table td.selected span,.theme-dark-blue .bs-datepicker-body table td span[class*=select-]:after,.theme-dark-blue .bs-datepicker-body table td[class*=select-] span:after{background-color:#337ab7}.theme-dark-blue .bs-datepicker-body table td.week span{color:#337ab7}.theme-dark-blue .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#337ab7;color:#fff;opacity:.5;transition:0s}.theme-red .bs-datepicker-head{background-color:#d9534f}.theme-red .btn-today-wrapper .btn-success,.theme-red .btn-clear-wrapper .btn-success{background-color:#d9534f;border-color:#d9534f}.theme-red .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-red .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-red .btn-today-wrapper .btn-success:focus,.theme-red .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-red .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-red .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#d23531;border-color:#d23531}.theme-red .btn-today-wrapper .btn-success:hover,.theme-red .btn-clear-wrapper .btn-success:hover{background-color:#e33732;border-color:#e33732}.theme-red .bs-datepicker-predefined-btns button.selected{background-color:#d9534f}.theme-red .bs-datepicker-body table td span.selected,.theme-red .bs-datepicker-body table td.selected span,.theme-red .bs-datepicker-body table td span[class*=select-]:after,.theme-red .bs-datepicker-body table td[class*=select-] span:after{background-color:#d9534f}.theme-red .bs-datepicker-body table td.week span{color:#d9534f}.theme-red .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#d9534f;color:#fff;opacity:.5;transition:0s}.theme-orange .bs-datepicker-head{background-color:#f0ad4e}.theme-orange .btn-today-wrapper .btn-success,.theme-orange .btn-clear-wrapper .btn-success{background-color:#f0ad4e;border-color:#f0ad4e}.theme-orange .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-orange .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-orange .btn-today-wrapper .btn-success:focus,.theme-orange .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-orange .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-orange .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#ed9c29;border-color:#ed9c29}.theme-orange .btn-today-wrapper .btn-success:hover,.theme-orange .btn-clear-wrapper .btn-success:hover{background-color:#ffac35;border-color:#ffac35}.theme-orange .bs-datepicker-predefined-btns button.selected{background-color:#f0ad4e}.theme-orange .bs-datepicker-body table td span.selected,.theme-orange .bs-datepicker-body table td.selected span,.theme-orange .bs-datepicker-body table td span[class*=select-]:after,.theme-orange .bs-datepicker-body table td[class*=select-] span:after{background-color:#f0ad4e}.theme-orange .bs-datepicker-body table td.week span{color:#f0ad4e}.theme-orange .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#f0ad4e;color:#fff;opacity:.5;transition:0s}.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-classic,.fa-regular,.fa-sharp,.fa-solid,.fab,.far,.fas{-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-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.fa-1x{font-size:1em}.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-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{-webkit-animation-name:fa-beat;animation-name:fa-beat;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{-webkit-animation-name:fa-bounce;animation-name:fa-bounce;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{-webkit-animation-name:fa-fade;animation-name:fa-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{-webkit-animation-name:fa-beat-fade;animation-name:fa-beat-fade;-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1));animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{-webkit-animation-name:fa-flip;animation-name:fa-flip;-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,ease-in-out);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{-webkit-animation-name:fa-shake;animation-name:fa-shake;-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{-webkit-animation-delay:var(--fa-animation-delay,0s);animation-delay:var(--fa-animation-delay,0s);-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-duration:var(--fa-animation-duration,2s);animation-duration:var(--fa-animation-duration,2s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,linear);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{-webkit-animation-name:fa-spin;animation-name:fa-spin;-webkit-animation-direction:var(--fa-animation-direction,normal);animation-direction:var(--fa-animation-direction,normal);-webkit-animation-duration:var(--fa-animation-duration,1s);animation-duration:var(--fa-animation-duration,1s);-webkit-animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-iteration-count:var(--fa-animation-iteration-count,infinite);-webkit-animation-timing-function:var(--fa-animation-timing,steps(8));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{-webkit-animation-delay:-1ms;animation-delay:-1ms;-webkit-animation-duration:1ms;animation-duration:1ms;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-transition-delay:0s;transition-delay:0s;-webkit-transition-duration:0s;transition-duration:0s}}@-webkit-keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-beat{0%,90%{-webkit-transform:scale(1);transform:scale(1)}45%{-webkit-transform:scale(var(--fa-beat-scale,1.25));transform:scale(var(--fa-beat-scale,1.25))}}@-webkit-keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@keyframes fa-bounce{0%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}10%{-webkit-transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0);transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{-webkit-transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em));transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{-webkit-transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0);transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{-webkit-transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em));transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}to{-webkit-transform:scale(1) translateY(0);transform:scale(1) translateY(0)}}@-webkit-keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@-webkit-keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);-webkit-transform:scale(1);transform:scale(1)}50%{opacity:1;-webkit-transform:scale(var(--fa-beat-fade-scale,1.125));transform:scale(var(--fa-beat-fade-scale,1.125))}}@-webkit-keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@keyframes fa-flip{50%{-webkit-transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg));transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@-webkit-keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0)}}@keyframes fa-shake{0%{-webkit-transform:rotate(-15deg);transform:rotate(-15deg)}4%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}8%,24%{-webkit-transform:rotate(-18deg);transform:rotate(-18deg)}12%,28%{-webkit-transform:rotate(18deg);transform:rotate(18deg)}16%{-webkit-transform:rotate(-22deg);transform:rotate(-22deg)}20%{-webkit-transform:rotate(22deg);transform:rotate(22deg)}32%{-webkit-transform:rotate(-12deg);transform:rotate(-12deg)}36%{-webkit-transform:rotate(12deg);transform:rotate(12deg)}40%,to{-webkit-transform:rotate(0deg);transform:rotate(0)}}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}.fa-rotate-by{-webkit-transform:rotate(var(--fa-rotate-angle,none));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-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-fill-drip:before{content:"\f576"}.fa-arrows-to-circle:before{content:"\e4bd"}.fa-chevron-circle-right:before,.fa-circle-chevron-right:before{content:"\f138"}.fa-at:before{content:"@"}.fa-trash-alt:before,.fa-trash-can:before{content:"\f2ed"}.fa-user-times:before,.fa-user-xmark:before{content:"\f235"}.fa-comment-alt:before,.fa-message:before{content:"\f27a"}.fa-compress-alt:before,.fa-down-left-and-up-right-to-center:before{content:"\f422"}.fa-explosion:before{content:"\e4e9"}.fa-file-alt:before,.fa-file-lines:before,.fa-file-text:before{content:"\f15c"}.fa-wave-square:before{content:"\f83e"}.fa-ring:before{content:"\f70b"}.fa-building-un:before{content:"\e4d9"}.fa-dice-three:before{content:"\f527"}.fa-calendar-alt:before,.fa-calendar-days:before{content:"\f073"}.fa-anchor-circle-check:before{content:"\e4aa"}.fa-building-circle-arrow-right:before{content:"\e4d1"}.fa-volleyball-ball:before,.fa-volleyball:before{content:"\f45f"}.fa-arrows-up-to-line:before{content:"\e4c2"}.fa-sort-desc:before,.fa-sort-down:before{content:"\f0dd"}.fa-circle-minus:before,.fa-minus-circle:before{content:"\f056"}.fa-door-open:before{content:"\f52b"}.fa-right-from-bracket:before,.fa-sign-out-alt:before{content:"\f2f5"}.fa-atom:before{content:"\f5d2"}.fa-soap:before{content:"\e06e"}.fa-heart-music-camera-bolt:before,.fa-icons:before{content:"\f86d"}.fa-microphone-alt-slash:before,.fa-microphone-lines-slash:before{content:"\f539"}.fa-bridge-circle-check:before{content:"\e4c9"}.fa-pump-medical:before{content:"\e06a"}.fa-fingerprint:before{content:"\f577"}.fa-hand-point-right:before{content:"\f0a4"}.fa-magnifying-glass-location:before,.fa-search-location:before{content:"\f689"}.fa-forward-step:before,.fa-step-forward:before{content:"\f051"}.fa-face-smile-beam:before,.fa-smile-beam:before{content:"\f5b8"}.fa-football-ball:before,.fa-football:before{content:"\f44e"}.fa-school-circle-exclamation:before{content:"\e56c"}.fa-angle-double-down:before,.fa-angles-down:before{content:"\f103"}.fa-users-rectangle:before{content:"\e594"}.fa-people-roof:before{content:"\e537"}.fa-people-line:before{content:"\e534"}.fa-beer-mug-empty:before,.fa-beer:before{content:"\f0fc"}.fa-diagram-predecessor:before{content:"\e477"}.fa-arrow-up-long:before,.fa-long-arrow-up:before{content:"\f176"}.fa-burn:before,.fa-fire-flame-simple:before{content:"\f46a"}.fa-male:before,.fa-person:before{content:"\f183"}.fa-file-csv:before{content:"\f6dd"}.fa-menorah:before{content:"\f676"}.fa-truck-plane:before{content:"\e58f"}.fa-record-vinyl:before{content:"\f8d9"}.fa-face-grin-stars:before,.fa-grin-stars:before{content:"\f587"}.fa-bong:before{content:"\f55c"}.fa-pastafarianism:before,.fa-spaghetti-monster-flying:before{content:"\f67b"}.fa-arrow-down-up-across-line:before{content:"\e4af"}.fa-spoon:before,.fa-utensil-spoon:before{content:"\f2e5"}.fa-jar-wheat:before{content:"\e517"}.fa-envelopes-bulk:before,.fa-mail-bulk:before{content:"\f674"}.fa-file-circle-exclamation:before{content:"\e4eb"}.fa-circle-h:before,.fa-hospital-symbol:before{content:"\f47e"}.fa-pager:before{content:"\f815"}.fa-address-book:before,.fa-contact-book:before{content:"\f2b9"}.fa-k:before{content:"K"}.fa-landmark-flag:before{content:"\e51c"}.fa-pencil-alt:before,.fa-pencil:before{content:"\f303"}.fa-file-clipboard:before,.fa-paste:before{content:"\f0ea"}.fa-code-pull-request:before{content:"\e13c"}.fa-clipboard-list:before{content:"\f46d"}.fa-truck-loading:before,.fa-truck-ramp-box:before{content:"\f4de"}.fa-user-check:before{content:"\f4fc"}.fa-vial-virus:before{content:"\e597"}.fa-sheet-plastic:before{content:"\e571"}.fa-blog:before{content:"\f781"}.fa-user-ninja:before{content:"\f504"}.fa-person-arrow-up-from-line:before{content:"\e539"}.fa-scroll-torah:before,.fa-torah:before{content:"\f6a0"}.fa-broom-ball:before,.fa-quidditch-broom-ball:before,.fa-quidditch:before{content:"\f458"}.fa-archive:before,.fa-box-archive:before{content:"\f187"}.fa-person-drowning:before{content:"\e545"}.fa-arrow-down-9-1:before,.fa-sort-numeric-desc:before,.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-face-grin-tongue-squint:before,.fa-grin-tongue-squint:before{content:"\f58a"}.fa-spray-can:before{content:"\f5bd"}.fa-truck-monster:before{content:"\f63b"}.fa-w:before{content:"W"}.fa-earth-africa:before,.fa-globe-africa:before{content:"\f57c"}.fa-rainbow:before{content:"\f75b"}.fa-circle-notch:before{content:"\f1ce"}.fa-tablet-alt:before,.fa-tablet-screen-button:before{content:"\f3fa"}.fa-trowel-bricks:before{content:"\e58a"}.fa-face-flushed:before,.fa-flushed:before{content:"\f579"}.fa-hospital-user:before{content:"\f80d"}.fa-tent-arrow-left-right:before{content:"\e57f"}.fa-gavel:before,.fa-legal:before{content:"\f0e3"}.fa-box-tissue:before{content:"\e05b"}.fa-bell-concierge:before,.fa-concierge-bell:before{content:"\f562"}.fa-pen-ruler:before,.fa-pencil-ruler:before{content:"\f5ae"}.fa-people-arrows-left-right:before,.fa-people-arrows:before{content:"\e068"}.fa-mars-and-venus-burst:before{content:"\e523"}.fa-caret-square-right:before,.fa-square-caret-right:before{content:"\f152"}.fa-sun-plant-wilt:before{content:"\e57a"}.fa-toilets-portable:before{content:"\e584"}.fa-hockey-puck:before{content:"\f453"}.fa-magnifying-glass-arrow-right:before{content:"\e521"}.fa-digital-tachograph:before,.fa-tachograph-digital:before{content:"\f566"}.fa-users-slash:before{content:"\e073"}.fa-clover:before{content:"\e139"}.fa-mail-reply:before,.fa-reply:before{content:"\f3e5"}.fa-star-and-crescent:before{content:"\f699"}.fa-house-fire:before{content:"\e50c"}.fa-minus-square:before,.fa-square-minus:before{content:"\f146"}.fa-helicopter:before{content:"\f533"}.fa-caret-square-down:before,.fa-square-caret-down:before{content:"\f150"}.fa-file-circle-question:before{content:"\e4ef"}.fa-laptop-code:before{content:"\f5fc"}.fa-swatchbook:before{content:"\f5c3"}.fa-prescription-bottle:before{content:"\f485"}.fa-bars:before,.fa-navicon:before{content:"\f0c9"}.fa-people-group:before{content:"\e533"}.fa-heart-broken:before,.fa-heart-crack:before{content:"\f7a9"}.fa-external-link-square-alt:before,.fa-square-up-right:before{content:"\f360"}.fa-face-kiss-beam:before,.fa-kiss-beam:before{content:"\f597"}.fa-ruler-horizontal:before{content:"\f547"}.fa-people-robbery:before{content:"\e536"}.fa-lightbulb:before{content:"\f0eb"}.fa-circle-exclamation:before,.fa-exclamation-circle:before{content:"\f06a"}.fa-school-circle-xmark:before{content:"\e56d"}.fa-arrow-right-from-bracket:before,.fa-sign-out:before{content:"\f08b"}.fa-chevron-circle-down:before,.fa-circle-chevron-down:before{content:"\f13a"}.fa-unlock-alt:before,.fa-unlock-keyhole:before{content:"\f13e"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-headphones-alt:before,.fa-headphones-simple:before{content:"\f58f"}.fa-circle-dollar-to-slot:before,.fa-donate:before{content:"\f4b9"}.fa-memory:before{content:"\f538"}.fa-road-spikes:before{content:"\e568"}.fa-fire-burner:before{content:"\e4f1"}.fa-hanukiah:before{content:"\f6e6"}.fa-feather:before{content:"\f52d"}.fa-volume-down:before,.fa-volume-low:before{content:"\f027"}.fa-comment-slash:before{content:"\f4b3"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-wheat-alt:before,.fa-wheat-awn:before{content:"\e2cd"}.fa-ankh:before{content:"\f644"}.fa-hands-holding-child:before{content:"\e4fa"}.fa-asterisk:before{content:"*"}.fa-check-square:before,.fa-square-check:before{content:"\f14a"}.fa-peseta-sign:before{content:"\e221"}.fa-header:before,.fa-heading:before{content:"\f1dc"}.fa-ghost:before{content:"\f6e2"}.fa-list-squares:before,.fa-list:before{content:"\f03a"}.fa-phone-square-alt:before,.fa-square-phone-flip:before{content:"\f87b"}.fa-circle-dot:before,.fa-dot-circle:before{content:"\f192"}.fa-dizzy:before,.fa-face-dizzy:before{content:"\f567"}.fa-egg:before{content:"\f7fb"}.fa-house-medical-circle-xmark:before{content:"\e513"}.fa-campground:before{content:"\f6bb"}.fa-folder-plus:before{content:"\f65e"}.fa-futbol-ball:before,.fa-futbol:before,.fa-soccer-ball:before{content:"\f1e3"}.fa-paint-brush:before,.fa-paintbrush:before{content:"\f1fc"}.fa-gas-pump:before{content:"\f52f"}.fa-hot-tub-person:before,.fa-hot-tub:before{content:"\f593"}.fa-map-location:before,.fa-map-marked:before{content:"\f59f"}.fa-house-flood-water:before{content:"\e50e"}.fa-bridge-lock:before{content:"\e4cc"}.fa-sack-dollar:before{content:"\f81d"}.fa-edit:before,.fa-pen-to-square:before{content:"\f044"}.fa-car-side:before{content:"\f5e4"}.fa-share-alt:before,.fa-share-nodes:before{content:"\f1e0"}.fa-heart-circle-minus:before{content:"\e4ff"}.fa-microscope:before{content:"\f610"}.fa-sink:before{content:"\e06d"}.fa-bag-shopping:before,.fa-shopping-bag:before{content:"\f290"}.fa-arrow-down-z-a:before,.fa-sort-alpha-desc:before,.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-mitten:before{content:"\f7b5"}.fa-person-rays:before{content:"\e54d"}.fa-users:before{content:"\f0c0"}.fa-flask-vial:before{content:"\e4f3"}.fa-hand-paper:before,.fa-hand:before{content:"\f256"}.fa-om:before{content:"\f679"}.fa-worm:before{content:"\e599"}.fa-house-circle-xmark:before{content:"\e50b"}.fa-hand-spock:before{content:"\f259"}.fa-stopwatch:before{content:"\f2f2"}.fa-face-kiss:before,.fa-kiss:before{content:"\f596"}.fa-bridge-circle-xmark:before{content:"\e4cb"}.fa-face-grin-tongue:before,.fa-grin-tongue:before{content:"\f589"}.fa-chess-bishop:before{content:"\f43a"}.fa-face-grin-wink:before,.fa-grin-wink:before{content:"\f58c"}.fa-deaf:before,.fa-deafness:before,.fa-ear-deaf:before,.fa-hard-of-hearing:before{content:"\f2a4"}.fa-road-circle-check:before{content:"\e564"}.fa-dice-five:before{content:"\f523"}.fa-rss-square:before,.fa-square-rss:before{content:"\f143"}.fa-land-mine-on:before{content:"\e51b"}.fa-stamp:before{content:"\f5bf"}.fa-stairs:before{content:"\e289"}.fa-i:before{content:"I"}.fa-hryvnia-sign:before,.fa-hryvnia:before{content:"\f6f2"}.fa-pills:before{content:"\f484"}.fa-face-grin-wide:before,.fa-grin-alt:before{content:"\f581"}.fa-tooth:before{content:"\f5c9"}.fa-v:before{content:"V"}.fa-bangladeshi-taka-sign:before{content:"\e2e6"}.fa-rod-asclepius:before,.fa-rod-snake:before,.fa-staff-aesculapius:before,.fa-staff-snake:before{content:"\e579"}.fa-head-side-cough-slash:before{content:"\e062"}.fa-ambulance:before,.fa-truck-medical:before{content:"\f0f9"}.fa-wheat-awn-circle-exclamation:before{content:"\e598"}.fa-snowman:before{content:"\f7d0"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-road-barrier:before{content:"\e562"}.fa-school:before{content:"\f549"}.fa-igloo:before{content:"\f7ae"}.fa-joint:before{content:"\f595"}.fa-horse:before{content:"\f6f0"}.fa-q:before{content:"Q"}.fa-g:before{content:"G"}.fa-notes-medical:before{content:"\f481"}.fa-temperature-2:before,.fa-temperature-half:before,.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-dong-sign:before{content:"\e169"}.fa-capsules:before{content:"\f46b"}.fa-poo-bolt:before,.fa-poo-storm:before{content:"\f75a"}.fa-face-frown-open:before,.fa-frown-open:before{content:"\f57a"}.fa-hand-point-up:before{content:"\f0a6"}.fa-money-bill:before{content:"\f0d6"}.fa-umbrella-beach:before{content:"\f5ca"}.fa-helmet-un:before{content:"\e503"}.fa-bacon:before{content:"\f7e5"}.fa-hand-point-down:before{content:"\f0a7"}.fa-arrow-up-from-bracket:before{content:"\e09a"}.fa-folder-blank:before,.fa-folder:before{content:"\f07b"}.fa-file-medical-alt:before,.fa-file-waveform:before{content:"\f478"}.fa-radiation:before{content:"\f7b9"}.fa-chart-simple:before{content:"\e473"}.fa-vial:before{content:"\f492"}.fa-dashboard:before,.fa-gauge-med:before,.fa-gauge:before,.fa-tachometer-alt-average:before{content:"\f624"}.fa-magic-wand-sparkles:before,.fa-wand-magic-sparkles:before{content:"\e2ca"}.fa-e:before{content:"E"}.fa-pen-alt:before,.fa-pen-clip:before{content:"\f305"}.fa-bridge-circle-exclamation:before{content:"\e4ca"}.fa-school-circle-check:before{content:"\e56b"}.fa-dumpster:before{content:"\f793"}.fa-shuttle-van:before,.fa-van-shuttle:before{content:"\f5b6"}.fa-building-user:before{content:"\e4da"}.fa-caret-square-left:before,.fa-square-caret-left:before{content:"\f191"}.fa-highlighter:before{content:"\f591"}.fa-synagogue:before{content:"\f69b"}.fa-person-half-dress:before{content:"\e548"}.fa-road-bridge:before{content:"\e563"}.fa-c:before{content:"C"}.fa-tablet-button:before{content:"\f10a"}.fa-building-lock:before{content:"\e4d6"}.fa-pizza-slice:before{content:"\f818"}.fa-money-bill-wave:before{content:"\f53a"}.fa-area-chart:before,.fa-chart-area:before{content:"\f1fe"}.fa-house-flag:before{content:"\e50d"}.fa-person-circle-minus:before{content:"\e540"}.fa-ban:before,.fa-cancel:before{content:"\f05e"}.fa-camera-rotate:before{content:"\e0d8"}.fa-air-freshener:before,.fa-spray-can-sparkles:before{content:"\f5d0"}.fa-repeat:before{content:"\f363"}.fa-cross:before{content:"\f654"}.fa-box:before{content:"\f466"}.fa-arrow-pointer:before,.fa-mouse-pointer:before{content:"\f245"}.fa-expand-arrows-alt:before,.fa-maximize:before{content:"\f31e"}.fa-charging-station:before{content:"\f5e7"}.fa-shapes:before,.fa-triangle-circle-square:before{content:"\f61f"}.fa-random:before,.fa-shuffle:before{content:"\f074"}.fa-person-running:before,.fa-running:before{content:"\f70c"}.fa-mobile-retro:before{content:"\e527"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-spider:before{content:"\f717"}.fa-hands-bound:before{content:"\e4f9"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-plane-circle-exclamation:before{content:"\e556"}.fa-x-ray:before{content:"\f497"}.fa-spell-check:before{content:"\f891"}.fa-slash:before{content:"\f715"}.fa-computer-mouse:before,.fa-mouse:before{content:"\f8cc"}.fa-arrow-right-to-bracket:before,.fa-sign-in:before{content:"\f090"}.fa-shop-slash:before,.fa-store-alt-slash:before{content:"\e070"}.fa-virus-covid-slash:before{content:"\e4a9"}.fa-shop-lock:before{content:"\e4a5"}.fa-blender-phone:before{content:"\f6b6"}.fa-building-wheat:before{content:"\e4db"}.fa-person-breastfeeding:before{content:"\e53a"}.fa-right-to-bracket:before,.fa-sign-in-alt:before{content:"\f2f6"}.fa-passport:before{content:"\f5ab"}.fa-heart-pulse:before,.fa-heartbeat:before{content:"\f21e"}.fa-people-carry-box:before,.fa-people-carry:before{content:"\f4ce"}.fa-temperature-high:before{content:"\f769"}.fa-crown:before{content:"\f521"}.fa-weight-hanging:before{content:"\f5cd"}.fa-xmarks-lines:before{content:"\e59a"}.fa-file-prescription:before{content:"\f572"}.fa-weight-scale:before,.fa-weight:before{content:"\f496"}.fa-user-friends:before,.fa-user-group:before{content:"\f500"}.fa-arrow-up-a-z:before,.fa-sort-alpha-up:before{content:"\f15e"}.fa-chess-knight:before{content:"\f441"}.fa-face-laugh-squint:before,.fa-laugh-squint:before{content:"\f59b"}.fa-arrow-circle-up:before,.fa-circle-arrow-up:before{content:"\f0aa"}.fa-person-walking:before,.fa-walking:before{content:"\f554"}.fa-l:before{content:"L"}.fa-bed-pulse:before,.fa-procedures:before{content:"\f487"}.fa-shuttle-space:before,.fa-space-shuttle:before{content:"\f197"}.fa-face-laugh:before,.fa-laugh:before{content:"\f599"}.fa-heart-circle-plus:before{content:"\e500"}.fa-code-fork:before{content:"\e13b"}.fa-city:before{content:"\f64f"}.fa-microphone-alt:before,.fa-microphone-lines:before{content:"\f3c9"}.fa-pepper-hot:before{content:"\f816"}.fa-colon-sign:before{content:"\e140"}.fa-headset:before{content:"\f590"}.fa-store-slash:before{content:"\e071"}.fa-road-circle-xmark:before{content:"\e566"}.fa-user-minus:before{content:"\f503"}.fa-mars-stroke-up:before,.fa-mars-stroke-v:before{content:"\f22a"}.fa-champagne-glasses:before,.fa-glass-cheers:before{content:"\f79f"}.fa-clipboard:before{content:"\f328"}.fa-house-circle-exclamation:before{content:"\e50a"}.fa-file-arrow-up:before,.fa-file-upload:before{content:"\f574"}.fa-wifi-3:before,.fa-wifi-strong:before,.fa-wifi:before{content:"\f1eb"}.fa-bath:before,.fa-bathtub:before{content:"\f2cd"}.fa-user-edit:before,.fa-user-pen:before{content:"\f4ff"}.fa-signature:before{content:"\f5b7"}.fa-stroopwafel:before{content:"\f551"}.fa-anchor-lock:before{content:"\e4ad"}.fa-building-ngo:before{content:"\e4d7"}.fa-manat-sign:before{content:"\e1d5"}.fa-not-equal:before{content:"\f53e"}.fa-border-style:before,.fa-border-top-left:before{content:"\f853"}.fa-map-location-dot:before,.fa-map-marked-alt:before{content:"\f5a0"}.fa-jedi:before{content:"\f669"}.fa-poll:before,.fa-square-poll-vertical:before{content:"\f681"}.fa-mug-hot:before{content:"\f7b6"}.fa-battery-car:before,.fa-car-battery:before{content:"\f5df"}.fa-dice-two:before{content:"\f528"}.fa-chess-queen:before{content:"\f445"}.fa-glasses:before{content:"\f530"}.fa-chess-board:before{content:"\f43c"}.fa-building-circle-check:before{content:"\e4d2"}.fa-person-chalkboard:before{content:"\e53d"}.fa-mars-stroke-h:before,.fa-mars-stroke-right:before{content:"\f22b"}.fa-hand-back-fist:before,.fa-hand-rock:before{content:"\f255"}.fa-caret-square-up:before,.fa-square-caret-up:before{content:"\f151"}.fa-cloud-showers-water:before{content:"\e4e4"}.fa-bar-chart:before,.fa-chart-bar:before{content:"\f080"}.fa-hands-bubbles:before,.fa-hands-wash:before{content:"\e05e"}.fa-less-than-equal:before{content:"\f537"}.fa-eye-low-vision:before,.fa-low-vision:before{content:"\f2a8"}.fa-crow:before{content:"\f520"}.fa-sailboat:before{content:"\e445"}.fa-plus-square:before,.fa-square-plus:before{content:"\f0fe"}.fa-torii-gate:before{content:"\f6a1"}.fa-frog:before{content:"\f52e"}.fa-bucket:before{content:"\e4cf"}.fa-image:before{content:"\f03e"}.fa-cow:before{content:"\f6c8"}.fa-screwdriver:before{content:"\f54a"}.fa-folder-closed:before{content:"\e185"}.fa-house-tsunami:before{content:"\e515"}.fa-square-nfi:before{content:"\e576"}.fa-arrow-up-from-ground-water:before{content:"\e4b5"}.fa-glass-martini-alt:before,.fa-martini-glass:before{content:"\f57b"}.fa-rotate-back:before,.fa-rotate-backward:before,.fa-rotate-left:before,.fa-undo-alt:before{content:"\f2ea"}.fa-columns:before,.fa-table-columns:before{content:"\f0db"}.fa-lemon:before{content:"\f094"}.fa-head-side-mask:before{content:"\e063"}.fa-handshake:before{content:"\f2b5"}.fa-gem:before{content:"\f3a5"}.fa-dolly-box:before,.fa-dolly:before{content:"\f472"}.fa-smoking:before{content:"\f48d"}.fa-compress-arrows-alt:before,.fa-minimize:before{content:"\f78c"}.fa-monument:before{content:"\f5a6"}.fa-snowplow:before{content:"\f7d2"}.fa-angle-double-right:before,.fa-angles-right:before{content:"\f101"}.fa-cannabis:before{content:"\f55f"}.fa-circle-play:before,.fa-play-circle:before{content:"\f144"}.fa-tablets:before{content:"\f490"}.fa-ethernet:before{content:"\f796"}.fa-eur:before,.fa-euro-sign:before,.fa-euro:before{content:"\f153"}.fa-chair:before{content:"\f6c0"}.fa-check-circle:before,.fa-circle-check:before{content:"\f058"}.fa-circle-stop:before,.fa-stop-circle:before{content:"\f28d"}.fa-compass-drafting:before,.fa-drafting-compass:before{content:"\f568"}.fa-plate-wheat:before{content:"\e55a"}.fa-icicles:before{content:"\f7ad"}.fa-person-shelter:before{content:"\e54f"}.fa-marker:before{content:"\f5a1"}.fa-face-laugh-beam:before,.fa-laugh-beam:before{content:"\f59a"}.fa-helicopter-symbol:before{content:"\e502"}.fa-chevron-circle-up:before,.fa-circle-chevron-up:before{content:"\f139"}.fa-lari-sign:before{content:"\e1c8"}.fa-volcano:before{content:"\f770"}.fa-person-walking-dashed-line-arrow-right:before{content:"\e553"}.fa-gbp:before,.fa-pound-sign:before,.fa-sterling-sign:before{content:"\f154"}.fa-viruses:before{content:"\e076"}.fa-square-person-confined:before{content:"\e577"}.fa-user-tie:before{content:"\f508"}.fa-arrow-down-long:before,.fa-long-arrow-down:before{content:"\f175"}.fa-tent-arrow-down-to-line:before{content:"\e57e"}.fa-person-skating:before,.fa-skating:before{content:"\f7c5"}.fa-filter-circle-dollar:before,.fa-funnel-dollar:before{content:"\f662"}.fa-arrow-circle-down:before,.fa-circle-arrow-down:before{content:"\f0ab"}.fa-arrow-right-to-file:before,.fa-file-import:before{content:"\f56f"}.fa-external-link-square:before,.fa-square-arrow-up-right:before{content:"\f14c"}.fa-box-open:before{content:"\f49e"}.fa-scroll:before{content:"\f70e"}.fa-spa:before{content:"\f5bb"}.fa-location-pin-lock:before{content:"\e51f"}.fa-hill-avalanche:before{content:"\e507"}.fa-temperature-0:before,.fa-temperature-empty:before,.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-address-card:before,.fa-contact-card:before,.fa-vcard:before{content:"\f2bb"}.fa-balance-scale-right:before,.fa-scale-unbalanced-flip:before{content:"\f516"}.fa-diamond-turn-right:before,.fa-directions:before{content:"\f5eb"}.fa-burst:before{content:"\e4dc"}.fa-house-laptop:before,.fa-laptop-house:before{content:"\e066"}.fa-face-tired:before,.fa-tired:before{content:"\f5c8"}.fa-money-bills:before{content:"\e1f3"}.fa-smog:before{content:"\f75f"}.fa-crutch:before{content:"\f7f7"}.fa-cloud-arrow-up:before,.fa-cloud-upload-alt:before,.fa-cloud-upload:before{content:"\f0ee"}.fa-palette:before{content:"\f53f"}.fa-arrows-turn-right:before{content:"\e4c0"}.fa-vest:before{content:"\e085"}.fa-ferry:before{content:"\e4ea"}.fa-arrows-down-to-people:before{content:"\e4b9"}.fa-seedling:before,.fa-sprout:before{content:"\f4d8"}.fa-arrows-alt-h:before,.fa-left-right:before{content:"\f337"}.fa-boxes-packing:before{content:"\e4c7"}.fa-arrow-circle-left:before,.fa-circle-arrow-left:before{content:"\f0a8"}.fa-group-arrows-rotate:before{content:"\e4f6"}.fa-bowl-food:before{content:"\e4c6"}.fa-candy-cane:before{content:"\f786"}.fa-arrow-down-wide-short:before,.fa-sort-amount-asc:before,.fa-sort-amount-down:before{content:"\f160"}.fa-cloud-bolt:before,.fa-thunderstorm:before{content:"\f76c"}.fa-remove-format:before,.fa-text-slash:before{content:"\f87d"}.fa-face-smile-wink:before,.fa-smile-wink:before{content:"\f4da"}.fa-file-word:before{content:"\f1c2"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-arrows-h:before,.fa-arrows-left-right:before{content:"\f07e"}.fa-house-lock:before{content:"\e510"}.fa-cloud-arrow-down:before,.fa-cloud-download-alt:before,.fa-cloud-download:before{content:"\f0ed"}.fa-children:before{content:"\e4e1"}.fa-blackboard:before,.fa-chalkboard:before{content:"\f51b"}.fa-user-alt-slash:before,.fa-user-large-slash:before{content:"\f4fa"}.fa-handshake-alt-slash:before,.fa-handshake-simple-slash:before{content:"\e05f"}.fa-mattress-pillow:before{content:"\e525"}.fa-guarani-sign:before{content:"\e19a"}.fa-arrows-rotate:before,.fa-refresh:before,.fa-sync:before{content:"\f021"}.fa-cruzeiro-sign:before{content:"\e152"}.fa-greater-than-equal:before{content:"\f532"}.fa-shield-alt:before,.fa-shield-halved:before{content:"\f3ed"}.fa-atlas:before,.fa-book-atlas:before{content:"\f558"}.fa-virus:before{content:"\e074"}.fa-envelope-circle-check:before{content:"\e4e8"}.fa-layer-group:before{content:"\f5fd"}.fa-arrows-to-dot:before{content:"\e4be"}.fa-archway:before{content:"\f557"}.fa-heart-circle-check:before{content:"\e4fd"}.fa-house-chimney-crack:before,.fa-house-damage:before{content:"\f6f1"}.fa-file-archive:before,.fa-file-zipper:before{content:"\f1c6"}.fa-glass-martini:before,.fa-martini-glass-empty:before{content:"\f000"}.fa-couch:before{content:"\f4b8"}.fa-cedi-sign:before{content:"\e0df"}.fa-church:before{content:"\f51d"}.fa-comments-dollar:before{content:"\f653"}.fa-democrat:before{content:"\f747"}.fa-z:before{content:"Z"}.fa-person-skiing:before,.fa-skiing:before{content:"\f7c9"}.fa-road-lock:before{content:"\e567"}.fa-a:before{content:"A"}.fa-temperature-arrow-down:before,.fa-temperature-down:before{content:"\e03f"}.fa-feather-alt:before,.fa-feather-pointed:before{content:"\f56b"}.fa-p:before{content:"P"}.fa-snowflake:before{content:"\f2dc"}.fa-newspaper:before{content:"\f1ea"}.fa-ad:before,.fa-rectangle-ad:before{content:"\f641"}.fa-arrow-circle-right:before,.fa-circle-arrow-right:before{content:"\f0a9"}.fa-filter-circle-xmark:before{content:"\e17b"}.fa-locust:before{content:"\e520"}.fa-sort:before,.fa-unsorted:before{content:"\f0dc"}.fa-list-1-2:before,.fa-list-numeric:before,.fa-list-ol:before{content:"\f0cb"}.fa-person-dress-burst:before{content:"\e544"}.fa-money-check-alt:before,.fa-money-check-dollar:before{content:"\f53d"}.fa-vector-square:before{content:"\f5cb"}.fa-bread-slice:before{content:"\f7ec"}.fa-face-kiss-wink-heart:before,.fa-kiss-wink-heart:before{content:"\f598"}.fa-question:before{content:"?"}.fa-file-signature:before{content:"\f573"}.fa-arrows-alt:before,.fa-up-down-left-right:before{content:"\f0b2"}.fa-house-chimney-user:before{content:"\e065"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-money-check:before{content:"\f53c"}.fa-star-half-alt:before,.fa-star-half-stroke:before{content:"\f5c0"}.fa-glass-whiskey:before,.fa-whiskey-glass:before{content:"\f7a0"}.fa-building-circle-exclamation:before{content:"\e4d3"}.fa-magnifying-glass-chart:before{content:"\e522"}.fa-arrow-up-right-from-square:before,.fa-external-link:before{content:"\f08e"}.fa-cubes-stacked:before{content:"\e4e6"}.fa-krw:before,.fa-won-sign:before,.fa-won:before{content:"\f159"}.fa-virus-covid:before{content:"\e4a8"}.fa-austral-sign:before{content:"\e0a9"}.fa-f:before{content:"F"}.fa-person-circle-plus:before{content:"\e541"}.fa-chart-pie:before,.fa-pie-chart:before{content:"\f200"}.fa-bolt-lightning:before{content:"\e0b7"}.fa-sack-xmark:before{content:"\e56a"}.fa-file-excel:before{content:"\f1c3"}.fa-file-contract:before{content:"\f56c"}.fa-fish-fins:before{content:"\e4f2"}.fa-building-flag:before{content:"\e4d5"}.fa-face-grin-beam:before,.fa-grin-beam:before{content:"\f582"}.fa-poop:before{content:"\f619"}.fa-location-pin:before,.fa-map-marker:before{content:"\f041"}.fa-kaaba:before{content:"\f66b"}.fa-toilet-paper:before{content:"\f71e"}.fa-hard-hat:before,.fa-hat-hard:before,.fa-helmet-safety:before{content:"\f807"}.fa-arrow-alt-circle-right:before,.fa-circle-right:before{content:"\f35a"}.fa-plane-circle-check:before{content:"\e555"}.fa-face-rolling-eyes:before,.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-chart-line:before,.fa-line-chart:before{content:"\f201"}.fa-mask-ventilator:before{content:"\e524"}.fa-map-signs:before,.fa-signs-post:before{content:"\f277"}.fa-cash-register:before{content:"\f788"}.fa-person-circle-question:before{content:"\e542"}.fa-h:before{content:"H"}.fa-tarp:before{content:"\e57b"}.fa-screwdriver-wrench:before,.fa-tools:before{content:"\f7d9"}.fa-arrows-to-eye:before{content:"\e4bf"}.fa-plug-circle-bolt:before{content:"\e55b"}.fa-mars-and-venus:before{content:"\f224"}.fa-home-user:before,.fa-house-user:before{content:"\e1b0"}.fa-dumpster-fire:before{content:"\f794"}.fa-house-crack:before{content:"\e3b1"}.fa-cocktail:before,.fa-martini-glass-citrus:before{content:"\f561"}.fa-face-surprise:before,.fa-surprise:before{content:"\f5c2"}.fa-bottle-water:before{content:"\e4c5"}.fa-circle-pause:before,.fa-pause-circle:before{content:"\f28b"}.fa-toilet-paper-slash:before{content:"\e072"}.fa-apple-alt:before,.fa-apple-whole:before{content:"\f5d1"}.fa-kitchen-set:before{content:"\e51a"}.fa-r:before{content:"R"}.fa-temperature-1:before,.fa-temperature-quarter:before,.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-bitcoin-sign:before{content:"\e0b4"}.fa-shield-dog:before{content:"\e573"}.fa-solar-panel:before{content:"\f5ba"}.fa-lock-open:before{content:"\f3c1"}.fa-elevator:before{content:"\e16d"}.fa-money-bill-transfer:before{content:"\e528"}.fa-money-bill-trend-up:before{content:"\e529"}.fa-house-flood-water-circle-arrow-right:before{content:"\e50f"}.fa-poll-h:before,.fa-square-poll-horizontal:before{content:"\f682"}.fa-backward-fast:before,.fa-fast-backward:before{content:"\f049"}.fa-user-astronaut:before{content:"\f4fb"}.fa-plane-slash:before{content:"\e069"}.fa-basketball-ball:before,.fa-basketball:before{content:"\f434"}.fa-satellite-dish:before{content:"\f7c0"}.fa-arrow-alt-circle-up:before,.fa-circle-up:before{content:"\f35b"}.fa-mobile-alt:before,.fa-mobile-screen-button:before{content:"\f3cd"}.fa-volume-high:before,.fa-volume-up:before{content:"\f028"}.fa-users-rays:before{content:"\e593"}.fa-wallet:before{content:"\f555"}.fa-clipboard-check:before{content:"\f46c"}.fa-file-audio:before{content:"\f1c7"}.fa-burger:before,.fa-hamburger:before{content:"\f805"}.fa-bugs:before{content:"\e4d0"}.fa-rupee-sign:before,.fa-rupee:before{content:"\f156"}.fa-file-image:before{content:"\f1c5"}.fa-circle-question:before,.fa-question-circle:before{content:"\f059"}.fa-plane-departure:before{content:"\f5b0"}.fa-handshake-slash:before{content:"\e060"}.fa-book-bookmark:before{content:"\e0bb"}.fa-code-branch:before{content:"\f126"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-bridge:before{content:"\e4c8"}.fa-phone-alt:before,.fa-phone-flip:before{content:"\f879"}.fa-truck-front:before{content:"\e2b7"}.fa-cat:before{content:"\f6be"}.fa-anchor-circle-exclamation:before{content:"\e4ab"}.fa-truck-field:before{content:"\e58d"}.fa-route:before{content:"\f4d7"}.fa-clipboard-question:before{content:"\e4e3"}.fa-panorama:before{content:"\e209"}.fa-comment-medical:before{content:"\f7f5"}.fa-teeth-open:before{content:"\f62f"}.fa-file-circle-minus:before{content:"\e4ed"}.fa-wine-glass:before{content:"\f4e3"}.fa-fast-forward:before,.fa-forward-fast:before{content:"\f050"}.fa-face-meh-blank:before,.fa-meh-blank:before{content:"\f5a4"}.fa-parking:before,.fa-square-parking:before{content:"\f540"}.fa-house-signal:before{content:"\e012"}.fa-bars-progress:before,.fa-tasks-alt:before{content:"\f828"}.fa-faucet-drip:before{content:"\e006"}.fa-cart-flatbed:before,.fa-dolly-flatbed:before{content:"\f474"}.fa-ban-smoking:before,.fa-smoking-ban:before{content:"\f54d"}.fa-mobile-button:before{content:"\f10b"}.fa-house-medical-flag:before{content:"\e514"}.fa-basket-shopping:before,.fa-shopping-basket:before{content:"\f291"}.fa-tape:before{content:"\f4db"}.fa-bus-alt:before,.fa-bus-simple:before{content:"\f55e"}.fa-face-sad-cry:before,.fa-sad-cry:before{content:"\f5b3"}.fa-person-military-to-person:before{content:"\e54c"}.fa-file-shield:before{content:"\e4f0"}.fa-user-slash:before{content:"\f506"}.fa-pen:before{content:"\f304"}.fa-tower-observation:before{content:"\e586"}.fa-file-code:before{content:"\f1c9"}.fa-signal-5:before,.fa-signal-perfect:before,.fa-signal:before{content:"\f012"}.fa-heart-circle-xmark:before{content:"\e501"}.fa-home-lg:before,.fa-house-chimney:before{content:"\e3af"}.fa-face-frown:before,.fa-frown:before{content:"\f119"}.fa-prescription:before{content:"\f5b1"}.fa-shop:before,.fa-store-alt:before{content:"\f54f"}.fa-floppy-disk:before,.fa-save:before{content:"\f0c7"}.fa-vihara:before{content:"\f6a7"}.fa-balance-scale-left:before,.fa-scale-unbalanced:before{content:"\f515"}.fa-sort-asc:before,.fa-sort-up:before{content:"\f0de"}.fa-comment-dots:before,.fa-commenting:before{content:"\f4ad"}.fa-plant-wilt:before{content:"\e5aa"}.fa-face-grin-squint:before,.fa-grin-squint:before{content:"\f585"}.fa-hand-holding-dollar:before,.fa-hand-holding-usd:before{content:"\f4c0"}.fa-bacterium:before{content:"\e05a"}.fa-hand-pointer:before{content:"\f25a"}.fa-drum-steelpan:before{content:"\f56a"}.fa-hand-scissors:before{content:"\f257"}.fa-hands-praying:before,.fa-praying-hands:before{content:"\f684"}.fa-arrow-right-rotate:before,.fa-arrow-rotate-forward:before,.fa-arrow-rotate-right:before,.fa-redo:before{content:"\f01e"}.fa-biohazard:before{content:"\f780"}.fa-location-crosshairs:before,.fa-location:before{content:"\f601"}.fa-child-dress:before{content:"\e59c"}.fa-users-between-lines:before{content:"\e591"}.fa-lungs-virus:before{content:"\e067"}.fa-face-grin-tears:before,.fa-grin-tears:before{content:"\f588"}.fa-calendar-times:before,.fa-calendar-xmark:before{content:"\f273"}.fa-child-reaching:before{content:"\e59d"}.fa-head-side-virus:before{content:"\e064"}.fa-user-cog:before,.fa-user-gear:before{content:"\f4fe"}.fa-arrow-up-1-9:before,.fa-sort-numeric-up:before{content:"\f163"}.fa-door-closed:before{content:"\f52a"}.fa-shield-virus:before{content:"\e06c"}.fa-dice-six:before{content:"\f526"}.fa-mosquito-net:before{content:"\e52c"}.fa-bridge-water:before{content:"\e4ce"}.fa-person-booth:before{content:"\f756"}.fa-hat-wizard:before{content:"\f6e8"}.fa-pen-fancy:before{content:"\f5ac"}.fa-digging:before,.fa-person-digging:before{content:"\f85e"}.fa-gauge-simple-med:before,.fa-gauge-simple:before,.fa-tachometer-average:before{content:"\f629"}.fa-book-medical:before{content:"\f7e6"}.fa-poo:before{content:"\f2fe"}.fa-quote-right-alt:before,.fa-quote-right:before{content:"\f10e"}.fa-shirt:before,.fa-t-shirt:before,.fa-tshirt:before{content:"\f553"}.fa-divide:before{content:"\f529"}.fa-tenge-sign:before,.fa-tenge:before{content:"\f7d7"}.fa-hands-holding:before{content:"\f4c2"}.fa-hands-clapping:before{content:"\e1a8"}.fa-republican:before{content:"\f75e"}.fa-person-circle-xmark:before{content:"\e543"}.fa-ruler:before{content:"\f545"}.fa-dice-d6:before{content:"\f6d1"}.fa-restroom:before{content:"\f7bd"}.fa-j:before{content:"J"}.fa-users-viewfinder:before{content:"\e595"}.fa-file-video:before{content:"\f1c8"}.fa-external-link-alt:before,.fa-up-right-from-square:before{content:"\f35d"}.fa-table-cells:before,.fa-th:before{content:"\f00a"}.fa-file-pdf:before{content:"\f1c1"}.fa-bible:before,.fa-book-bible:before{content:"\f647"}.fa-o:before{content:"O"}.fa-medkit:before,.fa-suitcase-medical:before{content:"\f0fa"}.fa-otter:before{content:"\f700"}.fa-female:before,.fa-person-dress:before{content:"\f182"}.fa-comment-dollar:before{content:"\f651"}.fa-briefcase-clock:before,.fa-business-time:before{content:"\f64a"}.fa-table-cells-large:before,.fa-th-large:before{content:"\f009"}.fa-book-tanakh:before,.fa-tanakh:before{content:"\f827"}.fa-phone-volume:before,.fa-volume-control-phone:before{content:"\f2a0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-clipboard-user:before{content:"\f7f3"}.fa-lira-sign:before{content:"\f195"}.fa-satellite:before{content:"\f7bf"}.fa-plane-lock:before{content:"\e558"}.fa-birthday-cake:before,.fa-cake-candles:before,.fa-cake:before{content:"\f1fd"}.fa-angle-double-up:before,.fa-angles-up:before{content:"\f102"}.fa-arrow-right-to-city:before{content:"\e4b3"}.fa-ribbon:before{content:"\f4d6"}.fa-lungs:before{content:"\f604"}.fa-arrow-up-9-1:before,.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-litecoin-sign:before{content:"\e1d3"}.fa-border-none:before{content:"\f850"}.fa-circle-nodes:before{content:"\e4e2"}.fa-parachute-box:before{content:"\f4cd"}.fa-truck-field-un:before{content:"\e58e"}.fa-hourglass-empty:before,.fa-hourglass:before{content:"\f254"}.fa-mountain:before{content:"\f6fc"}.fa-user-doctor:before,.fa-user-md:before{content:"\f0f0"}.fa-circle-info:before,.fa-info-circle:before{content:"\f05a"}.fa-cloud-meatball:before{content:"\f73b"}.fa-camera-alt:before,.fa-camera:before{content:"\f030"}.fa-square-virus:before{content:"\e578"}.fa-meteor:before{content:"\f753"}.fa-car-on:before{content:"\e4dd"}.fa-sleigh:before{content:"\f7cc"}.fa-arrow-down-1-9:before,.fa-sort-numeric-asc:before,.fa-sort-numeric-down:before{content:"\f162"}.fa-hand-holding-droplet:before,.fa-hand-holding-water:before{content:"\f4c1"}.fa-water:before{content:"\f773"}.fa-calendar-check:before{content:"\f274"}.fa-prescription-bottle-alt:before,.fa-prescription-bottle-medical:before{content:"\f486"}.fa-landmark:before{content:"\f66f"}.fa-person-cane:before{content:"\e53c"}.fa-tent:before{content:"\e57d"}.fa-vest-patches:before{content:"\e086"}.fa-check-double:before{content:"\f560"}.fa-arrow-down-a-z:before,.fa-sort-alpha-asc:before,.fa-sort-alpha-down:before{content:"\f15d"}.fa-money-bill-wheat:before{content:"\e52a"}.fa-cookie:before{content:"\f563"}.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-hard-drive:before,.fa-hdd:before{content:"\f0a0"}.fa-face-grin-squint-tears:before,.fa-grin-squint-tears:before{content:"\f586"}.fa-dumbbell:before{content:"\f44b"}.fa-list-alt:before,.fa-rectangle-list:before{content:"\f022"}.fa-tarp-droplet:before{content:"\e57c"}.fa-house-medical-circle-check:before{content:"\e511"}.fa-person-skiing-nordic:before,.fa-skiing-nordic:before{content:"\f7ca"}.fa-calendar-plus:before{content:"\f271"}.fa-plane-arrival:before{content:"\f5af"}.fa-arrow-alt-circle-left:before,.fa-circle-left:before{content:"\f359"}.fa-subway:before,.fa-train-subway:before{content:"\f239"}.fa-chart-gantt:before{content:"\e0e4"}.fa-indian-rupee-sign:before,.fa-indian-rupee:before,.fa-inr:before{content:"\e1bc"}.fa-crop-alt:before,.fa-crop-simple:before{content:"\f565"}.fa-money-bill-1:before,.fa-money-bill-alt:before{content:"\f3d1"}.fa-left-long:before,.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-dna:before{content:"\f471"}.fa-virus-slash:before{content:"\e075"}.fa-minus:before,.fa-subtract:before{content:"\f068"}.fa-chess:before{content:"\f439"}.fa-arrow-left-long:before,.fa-long-arrow-left:before{content:"\f177"}.fa-plug-circle-check:before{content:"\e55c"}.fa-franc-sign:before{content:"\e18f"}.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-cog:before,.fa-gear:before{content:"\f013"}.fa-droplet-slash:before,.fa-tint-slash:before{content:"\f5c7"}.fa-mosque:before{content:"\f678"}.fa-mosquito:before{content:"\e52b"}.fa-star-of-david:before{content:"\f69a"}.fa-person-military-rifle:before{content:"\e54b"}.fa-cart-shopping:before,.fa-shopping-cart:before{content:"\f07a"}.fa-vials:before{content:"\f493"}.fa-plug-circle-plus:before{content:"\e55f"}.fa-place-of-worship:before{content:"\f67f"}.fa-grip-vertical:before{content:"\f58e"}.fa-arrow-turn-up:before,.fa-level-up:before{content:"\f148"}.fa-u:before{content:"U"}.fa-square-root-alt:before,.fa-square-root-variable:before{content:"\f698"}.fa-clock-four:before,.fa-clock:before{content:"\f017"}.fa-backward-step:before,.fa-step-backward:before{content:"\f048"}.fa-pallet:before{content:"\f482"}.fa-faucet:before{content:"\e005"}.fa-baseball-bat-ball:before{content:"\f432"}.fa-s:before{content:"S"}.fa-timeline:before{content:"\e29c"}.fa-keyboard:before{content:"\f11c"}.fa-clinic-medical:before,.fa-house-chimney-medical:before{content:"\f7f2"}.fa-temperature-3:before,.fa-temperature-three-quarters:before,.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-mobile-android-alt:before,.fa-mobile-screen:before{content:"\f3cf"}.fa-plane-up:before{content:"\e22d"}.fa-piggy-bank:before{content:"\f4d3"}.fa-battery-3:before,.fa-battery-half:before{content:"\f242"}.fa-mountain-city:before{content:"\e52e"}.fa-coins:before{content:"\f51e"}.fa-khanda:before{content:"\f66d"}.fa-sliders-h:before,.fa-sliders:before{content:"\f1de"}.fa-folder-tree:before{content:"\f802"}.fa-network-wired:before{content:"\f6ff"}.fa-hamsa:before{content:"\f665"}.fa-cent-sign:before{content:"\e3f5"}.fa-person-pregnant:before{content:"\e31e"}.fa-wand-sparkles:before{content:"\f72b"}.fa-ellipsis-v:before,.fa-ellipsis-vertical:before{content:"\f142"}.fa-long-arrow-alt-right:before,.fa-right-long:before{content:"\f30b"}.fa-flag-usa:before{content:"\f74d"}.fa-laptop-file:before{content:"\e51d"}.fa-teletype:before,.fa-tty:before{content:"\f1e4"}.fa-diagram-next:before{content:"\e476"}.fa-person-rifle:before{content:"\e54e"}.fa-house-medical-circle-exclamation:before{content:"\e512"}.fa-closed-captioning:before{content:"\f20a"}.fa-hiking:before,.fa-person-hiking:before{content:"\f6ec"}.fa-images:before{content:"\f302"}.fa-people-pulling:before{content:"\e535"}.fa-n:before{content:"N"}.fa-cable-car:before,.fa-tram:before{content:"\f7da"}.fa-cloud-rain:before{content:"\f73d"}.fa-building-circle-xmark:before{content:"\e4d4"}.fa-arrows-down-to-line:before{content:"\e4b8"}.fa-face-grin:before,.fa-grin:before{content:"\f580"}.fa-backspace:before,.fa-delete-left:before{content:"\f55a"}.fa-eye-dropper-empty:before,.fa-eye-dropper:before,.fa-eyedropper:before{content:"\f1fb"}.fa-file-circle-check:before{content:"\e5a0"}.fa-mobile-android:before,.fa-mobile-phone:before,.fa-mobile:before{content:"\f3ce"}.fa-face-meh:before,.fa-meh:before{content:"\f11a"}.fa-book-dead:before,.fa-book-skull:before{content:"\f6b7"}.fa-heart-circle-exclamation:before{content:"\e4fe"}.fa-home-alt:before,.fa-home-lg-alt:before,.fa-home:before,.fa-house:before{content:"\f015"}.fa-calendar-week:before{content:"\f784"}.fa-laptop-medical:before{content:"\f812"}.fa-b:before{content:"B"}.fa-file-medical:before{content:"\f477"}.fa-dice-one:before{content:"\f525"}.fa-kiwi-bird:before{content:"\f535"}.fa-arrow-right-arrow-left:before,.fa-exchange:before{content:"\f0ec"}.fa-redo-alt:before,.fa-rotate-forward:before,.fa-rotate-right:before{content:"\f2f9"}.fa-cutlery:before,.fa-utensils:before{content:"\f2e7"}.fa-arrow-up-wide-short:before,.fa-sort-amount-up:before{content:"\f161"}.fa-mill-sign:before{content:"\e1ed"}.fa-bowl-rice:before{content:"\e2eb"}.fa-skull:before{content:"\f54c"}.fa-broadcast-tower:before,.fa-tower-broadcast:before{content:"\f519"}.fa-truck-pickup:before{content:"\f63c"}.fa-long-arrow-alt-up:before,.fa-up-long:before{content:"\f30c"}.fa-code-merge:before{content:"\f387"}.fa-hurricane:before{content:"\f751"}.fa-mound:before{content:"\e52d"}.fa-toilet-portable:before{content:"\e583"}.fa-compact-disc:before{content:"\f51f"}.fa-file-arrow-down:before,.fa-file-download:before{content:"\f56d"}.fa-caravan:before{content:"\f8ff"}.fa-shield-cat:before{content:"\e572"}.fa-bolt:before,.fa-zap:before{content:"\f0e7"}.fa-glass-water:before{content:"\e4f4"}.fa-oil-well:before{content:"\e532"}.fa-vault:before{content:"\e2c5"}.fa-toilet:before{content:"\f7d8"}.fa-plane-circle-xmark:before{content:"\e557"}.fa-cny:before,.fa-jpy:before,.fa-rmb:before,.fa-yen-sign:before,.fa-yen:before{content:"\f157"}.fa-rouble:before,.fa-rub:before,.fa-ruble-sign:before,.fa-ruble:before{content:"\f158"}.fa-sun:before{content:"\f185"}.fa-guitar:before{content:"\f7a6"}.fa-face-laugh-wink:before,.fa-laugh-wink:before{content:"\f59c"}.fa-horse-head:before{content:"\f7ab"}.fa-bore-hole:before{content:"\e4c3"}.fa-arrow-alt-circle-down:before,.fa-circle-down:before{content:"\f358"}.fa-arrows-turn-to-dots:before{content:"\e4c1"}.fa-florin-sign:before{content:"\e184"}.fa-arrow-down-short-wide:before,.fa-sort-amount-desc:before,.fa-sort-amount-down-alt:before{content:"\f884"}.fa-less-than:before{content:"<"}.fa-car-tunnel:before{content:"\e4de"}.fa-head-side-cough:before{content:"\e061"}.fa-grip-lines:before{content:"\f7a4"}.fa-user-lock:before{content:"\f502"}.fa-arrow-right-long:before,.fa-long-arrow-right:before{content:"\f178"}.fa-anchor-circle-xmark:before{content:"\e4ac"}.fa-ellipsis-h:before,.fa-ellipsis:before{content:"\f141"}.fa-chess-pawn:before{content:"\f443"}.fa-first-aid:before,.fa-kit-medical:before{content:"\f479"}.fa-person-through-window:before{content:"\e5a9"}.fa-toolbox:before{content:"\f552"}.fa-hands-holding-circle:before{content:"\e4fb"}.fa-credit-card-alt:before,.fa-credit-card:before{content:"\f09d"}.fa-hand-holding-hand:before{content:"\e4f7"}.fa-book-open-reader:before,.fa-book-reader:before{content:"\f5da"}.fa-mountain-sun:before{content:"\e52f"}.fa-arrows-left-right-to-line:before{content:"\e4ba"}.fa-dice-d20:before{content:"\f6cf"}.fa-truck-droplet:before{content:"\e58c"}.fa-file-circle-xmark:before{content:"\e5a1"}.fa-temperature-arrow-up:before,.fa-temperature-up:before{content:"\e040"}.fa-medal:before{content:"\f5a2"}.fa-bed:before{content:"\f236"}.fa-h-square:before,.fa-square-h:before{content:"\f0fd"}.fa-temperature-4:before,.fa-temperature-full:before,.fa-thermometer-4:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-plug-circle-xmark:before{content:"\e560"}.fa-star-of-life:before{content:"\f621"}.fa-phone-slash:before{content:"\f3dd"}.fa-paint-roller:before{content:"\f5aa"}.fa-hands-helping:before,.fa-handshake-angle:before{content:"\f4c4"}.fa-location-dot:before,.fa-map-marker-alt:before{content:"\f3c5"}.fa-greater-than:before{content:">"}.fa-person-swimming:before,.fa-swimmer:before{content:"\f5c4"}.fa-droplet:before,.fa-tint:before{content:"\f043"}.fa-earth-america:before,.fa-earth-americas:before,.fa-earth:before,.fa-globe-americas:before{content:"\f57d"}.fa-person-burst:before{content:"\e53b"}.fa-dove:before{content:"\f4ba"}.fa-socks:before{content:"\f696"}.fa-section:before{content:"\e447"}.fa-gauge-high:before,.fa-tachometer-alt-fast:before,.fa-tachometer-alt:before{content:"\f625"}.fa-envelope-open-text:before{content:"\f658"}.fa-hospital-alt:before,.fa-hospital-wide:before,.fa-hospital:before{content:"\f0f8"}.fa-wine-bottle:before{content:"\f72f"}.fa-chess-rook:before{content:"\f447"}.fa-bars-staggered:before,.fa-reorder:before,.fa-stream:before{content:"\f550"}.fa-dharmachakra:before{content:"\f655"}.fa-hotdog:before{content:"\f80f"}.fa-blind:before,.fa-person-walking-with-cane:before{content:"\f29d"}.fa-drum:before{content:"\f569"}.fa-ice-cream:before{content:"\f810"}.fa-heart-circle-bolt:before{content:"\e4fc"}.fa-check-to-slot:before,.fa-vote-yea:before{content:"\f772"}.fa-boxes-alt:before,.fa-boxes-stacked:before,.fa-boxes:before{content:"\f468"}.fa-assistive-listening-systems:before,.fa-ear-listen:before{content:"\f2a2"}.fa-tree-city:before{content:"\e587"}.fa-rupiah-sign:before{content:"\e23d"}.fa-magnifying-glass:before,.fa-search:before{content:"\f002"}.fa-ping-pong-paddle-ball:before,.fa-table-tennis-paddle-ball:before,.fa-table-tennis:before{content:"\f45d"}.fa-diagnoses:before,.fa-person-dots-from-line:before{content:"\f470"}.fa-trash-can-arrow-up:before,.fa-trash-restore-alt:before{content:"\f82a"}.fa-naira-sign:before{content:"\e1f6"}.fa-walkie-talkie:before{content:"\f8ef"}.fa-file-edit:before,.fa-file-pen:before{content:"\f31c"}.fa-receipt:before{content:"\f543"}.fa-pen-square:before,.fa-pencil-square:before,.fa-square-pen:before{content:"\f14b"}.fa-suitcase-rolling:before{content:"\f5c1"}.fa-person-circle-exclamation:before{content:"\e53f"}.fa-battery-5:before,.fa-battery-full:before,.fa-battery:before{content:"\f240"}.fa-skull-crossbones:before{content:"\f714"}.fa-code-compare:before{content:"\e13a"}.fa-list-dots:before,.fa-list-ul:before{content:"\f0ca"}.fa-school-lock:before{content:"\e56f"}.fa-tower-cell:before{content:"\e585"}.fa-down-long:before,.fa-long-arrow-alt-down:before{content:"\f309"}.fa-ranking-star:before{content:"\e561"}.fa-chess-king:before{content:"\f43f"}.fa-person-harassing:before{content:"\e549"}.fa-brazilian-real-sign:before{content:"\e46c"}.fa-landmark-alt:before,.fa-landmark-dome:before{content:"\f752"}.fa-television:before,.fa-tv-alt:before,.fa-tv:before{content:"\f26c"}.fa-shrimp:before{content:"\e448"}.fa-list-check:before,.fa-tasks:before{content:"\f0ae"}.fa-jug-detergent:before{content:"\e519"}.fa-circle-user:before,.fa-user-circle:before{content:"\f2bd"}.fa-user-shield:before{content:"\f505"}.fa-wind:before{content:"\f72e"}.fa-car-burst:before,.fa-car-crash:before{content:"\f5e1"}.fa-y:before{content:"Y"}.fa-person-snowboarding:before,.fa-snowboarding:before{content:"\f7ce"}.fa-shipping-fast:before,.fa-truck-fast:before{content:"\f48b"}.fa-fish:before{content:"\f578"}.fa-user-graduate:before{content:"\f501"}.fa-adjust:before,.fa-circle-half-stroke:before{content:"\f042"}.fa-clapperboard:before{content:"\e131"}.fa-circle-radiation:before,.fa-radiation-alt:before{content:"\f7ba"}.fa-baseball-ball:before,.fa-baseball:before{content:"\f433"}.fa-jet-fighter-up:before{content:"\e518"}.fa-diagram-project:before,.fa-project-diagram:before{content:"\f542"}.fa-copy:before{content:"\f0c5"}.fa-volume-mute:before,.fa-volume-times:before,.fa-volume-xmark:before{content:"\f6a9"}.fa-hand-sparkles:before{content:"\e05d"}.fa-grip-horizontal:before,.fa-grip:before{content:"\f58d"}.fa-share-from-square:before,.fa-share-square:before{content:"\f14d"}.fa-child-combatant:before,.fa-child-rifle:before{content:"\e4e0"}.fa-gun:before{content:"\e19b"}.fa-phone-square:before,.fa-square-phone:before{content:"\f098"}.fa-add:before,.fa-plus:before{content:"+"}.fa-computer:before{content:"\e4e5"}.fa-close:before,.fa-multiply:before,.fa-remove:before,.fa-times:before,.fa-xmark:before{content:"\f00d"}.fa-arrows-up-down-left-right:before,.fa-arrows:before{content:"\f047"}.fa-chalkboard-teacher:before,.fa-chalkboard-user:before{content:"\f51c"}.fa-peso-sign:before{content:"\e222"}.fa-building-shield:before{content:"\e4d8"}.fa-baby:before{content:"\f77c"}.fa-users-line:before{content:"\e592"}.fa-quote-left-alt:before,.fa-quote-left:before{content:"\f10d"}.fa-tractor:before{content:"\f722"}.fa-trash-arrow-up:before,.fa-trash-restore:before{content:"\f829"}.fa-arrow-down-up-lock:before{content:"\e4b0"}.fa-lines-leaning:before{content:"\e51e"}.fa-ruler-combined:before{content:"\f546"}.fa-equals:before{content:"="}.fa-blender:before{content:"\f517"}.fa-teeth:before{content:"\f62e"}.fa-ils:before,.fa-shekel-sign:before,.fa-shekel:before,.fa-sheqel-sign:before,.fa-sheqel:before{content:"\f20b"}.fa-photo-film:before,.fa-photo-video:before{content:"\f87c"}.fa-folder-minus:before{content:"\f65d"}.fa-store:before{content:"\f54e"}.fa-arrow-trend-up:before{content:"\e098"}.fa-plug-circle-minus:before{content:"\e55e"}.fa-sign-hanging:before,.fa-sign:before{content:"\f4d9"}.fa-bezier-curve:before{content:"\f55b"}.fa-tablet-android:before,.fa-tablet:before{content:"\f3fb"}.fa-school-flag:before{content:"\e56e"}.fa-fill:before{content:"\f575"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-holly-berry:before{content:"\f7aa"}.fa-bacteria:before{content:"\e059"}.fa-hand-lizard:before{content:"\f258"}.fa-notdef:before{content:"\e1fe"}.fa-disease:before{content:"\f7fa"}.fa-briefcase-medical:before{content:"\f469"}.fa-car-alt:before,.fa-car-rear:before{content:"\f5de"}.fa-pump-soap:before{content:"\e06b"}.fa-video-slash:before{content:"\f4e2"}.fa-battery-2:before,.fa-battery-quarter:before{content:"\f243"}.fa-radio:before{content:"\f8d7"}.fa-baby-carriage:before,.fa-carriage-baby:before{content:"\f77d"}.fa-traffic-light:before{content:"\f637"}.fa-thermometer:before{content:"\f491"}.fa-vr-cardboard:before{content:"\f729"}.fa-hand-middle-finger:before{content:"\f806"}.fa-percent:before,.fa-percentage:before{content:"%"}.fa-truck-moving:before{content:"\f4df"}.fa-glass-water-droplet:before{content:"\e4f5"}.fa-display:before{content:"\e163"}.fa-face-smile:before,.fa-smile:before{content:"\f118"}.fa-thumb-tack:before,.fa-thumbtack:before{content:"\f08d"}.fa-person-praying:before,.fa-pray:before{content:"\f683"}.fa-hammer:before{content:"\f6e3"}.fa-hand-peace:before{content:"\f25b"}.fa-rotate:before,.fa-sync-alt:before{content:"\f2f1"}.fa-robot:before{content:"\f544"}.fa-peace:before{content:"\f67c"}.fa-cogs:before,.fa-gears:before{content:"\f085"}.fa-warehouse:before{content:"\f494"}.fa-arrow-up-right-dots:before{content:"\e4b7"}.fa-splotch:before{content:"\f5bc"}.fa-face-grin-hearts:before,.fa-grin-hearts:before{content:"\f584"}.fa-dice-four:before{content:"\f524"}.fa-sim-card:before{content:"\f7c4"}.fa-transgender-alt:before,.fa-transgender:before{content:"\f225"}.fa-arrow-turn-down:before,.fa-level-down:before{content:"\f149"}.fa-person-falling-burst:before{content:"\e547"}.fa-award:before{content:"\f559"}.fa-ticket-alt:before,.fa-ticket-simple:before{content:"\f3ff"}.fa-angle-double-left:before,.fa-angles-left:before{content:"\f100"}.fa-clock-rotate-left:before,.fa-history:before{content:"\f1da"}.fa-face-grin-beam-sweat:before,.fa-grin-beam-sweat:before{content:"\f583"}.fa-arrow-right-from-file:before,.fa-file-export:before{content:"\f56e"}.fa-shield-blank:before,.fa-shield:before{content:"\f132"}.fa-arrow-up-short-wide:before,.fa-sort-amount-up-alt:before{content:"\f885"}.fa-house-medical:before{content:"\e3b2"}.fa-golf-ball-tee:before,.fa-golf-ball:before{content:"\f450"}.fa-chevron-circle-left:before,.fa-circle-chevron-left:before{content:"\f137"}.fa-house-chimney-window:before{content:"\e00d"}.fa-pen-nib:before{content:"\f5ad"}.fa-tent-arrow-turn-left:before{content:"\e580"}.fa-tents:before{content:"\e582"}.fa-magic:before,.fa-wand-magic:before{content:"\f0d0"}.fa-dog:before{content:"\f6d3"}.fa-carrot:before{content:"\f787"}.fa-moon:before{content:"\f186"}.fa-wine-glass-alt:before,.fa-wine-glass-empty:before{content:"\f5ce"}.fa-cheese:before{content:"\f7ef"}.fa-yin-yang:before{content:"\f6ad"}.fa-code-commit:before{content:"\f386"}.fa-temperature-low:before{content:"\f76b"}.fa-biking:before,.fa-person-biking:before{content:"\f84a"}.fa-broom:before{content:"\f51a"}.fa-shield-heart:before{content:"\e574"}.fa-gopuram:before{content:"\f664"}.fa-earth-oceania:before,.fa-globe-oceania:before{content:"\e47b"}.fa-square-xmark:before,.fa-times-square:before,.fa-xmark-square:before{content:"\f2d3"}.fa-hashtag:before{content:"#"}.fa-expand-alt:before,.fa-up-right-and-down-left-from-center:before{content:"\f424"}.fa-oil-can:before{content:"\f613"}.fa-t:before{content:"T"}.fa-hippo:before{content:"\f6ed"}.fa-chart-column:before{content:"\e0e3"}.fa-infinity:before{content:"\f534"}.fa-vial-circle-check:before{content:"\e596"}.fa-person-arrow-down-to-line:before{content:"\e538"}.fa-voicemail:before{content:"\f897"}.fa-fan:before{content:"\f863"}.fa-person-walking-luggage:before{content:"\e554"}.fa-arrows-alt-v:before,.fa-up-down:before{content:"\f338"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-calendar:before{content:"\f133"}.fa-trailer:before{content:"\e041"}.fa-bahai:before,.fa-haykal:before{content:"\f666"}.fa-sd-card:before{content:"\f7c2"}.fa-dragon:before{content:"\f6d5"}.fa-shoe-prints:before{content:"\f54b"}.fa-circle-plus:before,.fa-plus-circle:before{content:"\f055"}.fa-face-grin-tongue-wink:before,.fa-grin-tongue-wink:before{content:"\f58b"}.fa-hand-holding:before{content:"\f4bd"}.fa-plug-circle-exclamation:before{content:"\e55d"}.fa-chain-broken:before,.fa-chain-slash:before,.fa-link-slash:before,.fa-unlink:before{content:"\f127"}.fa-person-walking-arrow-loop-left:before{content:"\e551"}.fa-arrow-up-z-a:before,.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-fire-alt:before,.fa-fire-flame-curved:before{content:"\f7e4"}.fa-tornado:before{content:"\f76f"}.fa-file-circle-plus:before{content:"\e494"}.fa-book-quran:before,.fa-quran:before{content:"\f687"}.fa-border-all:before{content:"\f84c"}.fa-angry:before,.fa-face-angry:before{content:"\f556"}.fa-cookie-bite:before{content:"\f564"}.fa-arrow-trend-down:before{content:"\e097"}.fa-draw-polygon:before{content:"\f5ee"}.fa-balance-scale:before,.fa-scale-balanced:before{content:"\f24e"}.fa-gauge-simple-high:before,.fa-tachometer-fast:before,.fa-tachometer:before{content:"\f62a"}.fa-desktop-alt:before,.fa-desktop:before{content:"\f390"}.fa-m:before{content:"M"}.fa-table-list:before,.fa-th-list:before{content:"\f00b"}.fa-comment-sms:before,.fa-sms:before{content:"\f7cd"}.fa-battery-4:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-house-circle-check:before{content:"\e509"}.fa-diagram-successor:before{content:"\e47a"}.fa-truck-arrow-right:before{content:"\e58b"}.fa-arrows-split-up-and-left:before{content:"\e4bc"}.fa-fist-raised:before,.fa-hand-fist:before{content:"\f6de"}.fa-cloud-moon:before{content:"\f6c3"}.fa-person-falling:before{content:"\e546"}.fa-image-portrait:before,.fa-portrait:before{content:"\f3e0"}.fa-user-tag:before{content:"\f507"}.fa-rug:before{content:"\e569"}.fa-earth-europe:before,.fa-globe-europe:before{content:"\f7a2"}.fa-cart-flatbed-suitcase:before,.fa-luggage-cart:before{content:"\f59d"}.fa-rectangle-times:before,.fa-rectangle-xmark:before,.fa-times-rectangle:before,.fa-window-close:before{content:"\f410"}.fa-baht-sign:before{content:"\e0ac"}.fa-book-open:before{content:"\f518"}.fa-book-journal-whills:before,.fa-journal-whills:before{content:"\f66a"}.fa-handcuffs:before{content:"\e4f8"}.fa-exclamation-triangle:before,.fa-triangle-exclamation:before,.fa-warning:before{content:"\f071"}.fa-arrow-turn-right:before,.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-bottle-droplet:before{content:"\e4c4"}.fa-mask-face:before{content:"\e1d7"}.fa-hill-rockslide:before{content:"\e508"}.fa-exchange-alt:before,.fa-right-left:before{content:"\f362"}.fa-paper-plane:before{content:"\f1d8"}.fa-road-circle-exclamation:before{content:"\e565"}.fa-dungeon:before{content:"\f6d9"}.fa-money-bill-1-wave:before,.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-life-ring:before{content:"\f1cd"}.fa-hands:before,.fa-sign-language:before,.fa-signing:before{content:"\f2a7"}.fa-calendar-day:before{content:"\f783"}.fa-ladder-water:before,.fa-swimming-pool:before,.fa-water-ladder:before{content:"\f5c5"}.fa-arrows-up-down:before,.fa-arrows-v:before{content:"\f07d"}.fa-face-grimace:before,.fa-grimace:before{content:"\f57f"}.fa-wheelchair-alt:before,.fa-wheelchair-move:before{content:"\e2ce"}.fa-level-down-alt:before,.fa-turn-down:before{content:"\f3be"}.fa-person-walking-arrow-right:before{content:"\e552"}.fa-envelope-square:before,.fa-square-envelope:before{content:"\f199"}.fa-dice:before{content:"\f522"}.fa-bowling-ball:before{content:"\f436"}.fa-brain:before{content:"\f5dc"}.fa-band-aid:before,.fa-bandage:before{content:"\f462"}.fa-calendar-minus:before{content:"\f272"}.fa-circle-xmark:before,.fa-times-circle:before,.fa-xmark-circle:before{content:"\f057"}.fa-gifts:before{content:"\f79c"}.fa-hotel:before{content:"\f594"}.fa-earth-asia:before,.fa-globe-asia:before{content:"\f57e"}.fa-id-card-alt:before,.fa-id-card-clip:before{content:"\f47f"}.fa-magnifying-glass-plus:before,.fa-search-plus:before{content:"\f00e"}.fa-user-clock:before{content:"\f4fd"}.fa-allergies:before,.fa-hand-dots:before{content:"\f461"}.fa-file-invoice:before{content:"\f570"}.fa-coffee:before,.fa-mug-saucer:before{content:"\f0f4"}.fa-brush:before{content:"\f55d"}.fa-mask:before{content:"\f6fa"}.fa-magnifying-glass-minus:before,.fa-search-minus:before{content:"\f010"}.fa-ruler-vertical:before{content:"\f548"}.fa-user-alt:before,.fa-user-large:before{content:"\f406"}.fa-train-tram:before{content:"\e5b4"}.fa-user-nurse:before{content:"\f82f"}.fa-syringe:before{content:"\f48e"}.fa-cloud-sun:before{content:"\f6c4"}.fa-stopwatch-20:before{content:"\e06f"}.fa-square-full:before{content:"\f45c"}.fa-jar:before{content:"\e516"}.fa-note-sticky:before,.fa-sticky-note:before{content:"\f249"}.fa-bug-slash:before{content:"\e490"}.fa-arrow-up-from-water-pump:before{content:"\e4b6"}.fa-bone:before{content:"\f5d7"}.fa-user-injured:before{content:"\f728"}.fa-face-sad-tear:before,.fa-sad-tear:before{content:"\f5b4"}.fa-tent-arrows-down:before{content:"\e581"}.fa-exclamation:before{content:"!"}.fa-arrows-spin:before{content:"\e4bb"}.fa-try:before,.fa-turkish-lira-sign:before,.fa-turkish-lira:before{content:"\e2bb"}.fa-dollar-sign:before,.fa-dollar:before,.fa-usd:before{content:"$"}.fa-x:before{content:"X"}.fa-magnifying-glass-dollar:before,.fa-search-dollar:before{content:"\f688"}.fa-users-cog:before,.fa-users-gear:before{content:"\f509"}.fa-person-military-pointing:before{content:"\e54a"}.fa-bank:before,.fa-building-columns:before,.fa-institution:before,.fa-museum:before,.fa-university:before{content:"\f19c"}.fa-trowel:before{content:"\e589"}.fa-d:before{content:"D"}.fa-stapler:before{content:"\e5af"}.fa-masks-theater:before,.fa-theater-masks:before{content:"\f630"}.fa-kip-sign:before{content:"\e1c4"}.fa-hand-point-left:before{content:"\f0a5"}.fa-handshake-alt:before,.fa-handshake-simple:before{content:"\f4c6"}.fa-fighter-jet:before,.fa-jet-fighter:before{content:"\f0fb"}.fa-share-alt-square:before,.fa-square-share-nodes:before{content:"\f1e1"}.fa-plus-minus:before{content:"\e43c"}.fa-video-camera:before,.fa-video:before{content:"\f03d"}.fa-graduation-cap:before,.fa-mortar-board:before{content:"\f19d"}.fa-hand-holding-medical:before{content:"\e05c"}.fa-person-circle-check:before{content:"\e53e"}.fa-level-up-alt:before,.fa-turn-up:before{content:"\f3bf"}.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-style-family-brands:"Font Awesome 6 Brands";--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("./media/fa-brands-400-SIIAGDBB.woff2") format("woff2"),url("./media/fa-brands-400-L56FXN36.ttf") format("truetype")}.fa-brands,.fab{font-weight:400}.fa-monero:before{content:"\f3d0"}.fa-hooli:before{content:"\f427"}.fa-shopware:before{content:"\f5b5"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-aws:before{content:"\f375"}.fa-redhat:before{content:"\f7bc"}.fa-cloudflare:before{content:"\e07d"}.fa-ups:before{content:"\f7e0"}.fa-dyalog:before{content:"\f399"}.fa-bity:before{content:"\f37a"}.fa-stackpath:before{content:"\f842"}.fa-guilded:before{content:"\e07e"}.fa-vnv:before{content:"\f40b"}.fa-js-square:before,.fa-square-js:before{content:"\f3b9"}.fa-microsoft:before{content:"\f3ca"}.fa-orcid:before{content:"\f8d2"}.fa-java:before{content:"\f4e4"}.fa-invision:before{content:"\f7b0"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-centercode:before{content:"\f380"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-unity:before{content:"\e049"}.fa-whmcs:before{content:"\f40d"}.fa-rocketchat:before{content:"\f3e8"}.fa-untappd:before{content:"\f405"}.fa-mailchimp:before{content:"\f59e"}.fa-css3-alt:before{content:"\f38b"}.fa-reddit-square:before,.fa-square-reddit:before{content:"\f1a2"}.fa-vimeo-v:before{content:"\f27d"}.fa-square-font-awesome:before{content:"\e5ad"}.fa-deskpro:before{content:"\f38f"}.fa-sistrix:before{content:"\f3ee"}.fa-instagram-square:before,.fa-square-instagram:before{content:"\e055"}.fa-battle-net:before{content:"\f835"}.fa-the-red-yeti:before{content:"\f69d"}.fa-hacker-news-square:before,.fa-square-hacker-news:before{content:"\f3af"}.fa-napster:before{content:"\f3d2"}.fa-snapchat-square:before,.fa-square-snapchat:before{content:"\f2ad"}.fa-google-plus-g:before{content:"\f0d5"}.fa-artstation:before{content:"\f77a"}.fa-markdown:before{content:"\f60f"}.fa-sourcetree:before{content:"\f7d3"}.fa-google-plus:before{content:"\f2b3"}.fa-diaspora:before{content:"\f791"}.fa-phoenix-squadron:before{content:"\f511"}.fa-algolia:before{content:"\f36c"}.fa-red-river:before{content:"\f3e3"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-font-awesome-alt:before,.fa-square-font-awesome-stroke:before{content:"\f35c"}.fa-atlassian:before{content:"\f77b"}.fa-linkedin-in:before{content:"\f0e1"}.fa-digital-ocean:before{content:"\f391"}.fa-nimblr:before{content:"\f5a8"}.fa-chromecast:before{content:"\f838"}.fa-evernote:before{content:"\f839"}.fa-hacker-news:before{content:"\f1d4"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-adversal:before{content:"\f36a"}.fa-watchman-monitoring:before{content:"\e087"}.fa-weixin:before{content:"\f1d7"}.fa-git-alt:before{content:"\f841"}.fa-lyft:before{content:"\f3c3"}.fa-rev:before{content:"\f5b2"}.fa-wizards-of-the-coast:before{content:"\f730"}.fa-square-viadeo:before,.fa-viadeo-square:before{content:"\f2aa"}.fa-centos:before{content:"\f789"}.fa-cloudsmith:before{content:"\f384"}.fa-dribbble-square:before,.fa-square-dribbble:before{content:"\f397"}.fa-node:before{content:"\f419"}.fa-mix:before{content:"\f3cb"}.fa-cc-apple-pay:before{content:"\f416"}.fa-instalod:before{content:"\e081"}.fa-sellcast:before{content:"\f2da"}.fa-square-twitter:before,.fa-twitter-square:before{content:"\f081"}.fa-r-project:before{content:"\f4f7"}.fa-freebsd:before{content:"\f3a4"}.fa-vuejs:before{content:"\f41f"}.fa-accusoft:before{content:"\f369"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-app-store:before{content:"\f36f"}.fa-itunes-note:before{content:"\f3b5"}.fa-golang:before{content:"\e40f"}.fa-kickstarter:before{content:"\f3bb"}.fa-uncharted:before{content:"\e084"}.fa-firstdraft:before{content:"\f3a1"}.fa-square-youtube:before,.fa-youtube-square:before{content:"\f431"}.fa-rendact:before,.fa-wpressr:before{content:"\f3e4"}.fa-galactic-republic:before{content:"\f50c"}.fa-nfc-directional:before{content:"\e530"}.fa-joget:before{content:"\f3b7"}.fa-fedora:before{content:"\f798"}.fa-stripe-s:before{content:"\f42a"}.fa-meta:before{content:"\e49b"}.fa-laravel:before{content:"\f3bd"}.fa-hotjar:before{content:"\f3b1"}.fa-sticker-mule:before{content:"\f3f7"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-hips:before{content:"\f452"}.fa-discord:before{content:"\f392"}.fa-app-store-ios:before{content:"\f370"}.fa-confluence:before{content:"\f78d"}.fa-mdb:before{content:"\f8ca"}.fa-dochub:before{content:"\f394"}.fa-accessible-icon:before{content:"\f368"}.fa-ebay:before{content:"\f4f4"}.fa-unsplash:before{content:"\e07c"}.fa-yarn:before{content:"\f7e3"}.fa-square-steam:before,.fa-steam-square:before{content:"\f1b7"}.fa-square-vimeo:before,.fa-vimeo-square:before{content:"\f194"}.fa-asymmetrik:before{content:"\f372"}.fa-font-awesome-flag:before,.fa-font-awesome-logo-full:before,.fa-font-awesome:before{content:"\f2b4"}.fa-gratipay:before{content:"\f184"}.fa-hive:before{content:"\e07f"}.fa-gitkraken:before{content:"\f3a6"}.fa-keybase:before{content:"\f4f5"}.fa-apple-pay:before{content:"\f415"}.fa-padlet:before{content:"\e4a0"}.fa-amazon-pay:before{content:"\f42c"}.fa-github-square:before,.fa-square-github:before{content:"\f092"}.fa-fedex:before{content:"\f797"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-shopify:before{content:"\e057"}.fa-neos:before{content:"\f612"}.fa-hackerrank:before{content:"\f5f7"}.fa-researchgate:before{content:"\f4f8"}.fa-swift:before{content:"\f8e1"}.fa-angular:before{content:"\f420"}.fa-speakap:before{content:"\f3f3"}.fa-angrycreative:before{content:"\f36e"}.fa-y-combinator:before{content:"\f23b"}.fa-empire:before{content:"\f1d1"}.fa-gitlab-square:before,.fa-square-gitlab:before{content:"\e5ae"}.fa-studiovinari:before{content:"\f3f8"}.fa-goodreads:before{content:"\f3a8"}.fa-odnoklassniki-square:before,.fa-square-odnoklassniki:before{content:"\f264"}.fa-sith:before{content:"\f512"}.fa-page4:before{content:"\f3d7"}.fa-hashnode:before{content:"\e499"}.fa-react:before{content:"\f41b"}.fa-squarespace:before{content:"\f5be"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-bitcoin:before{content:"\f379"}.fa-keycdn:before{content:"\f3ba"}.fa-itch-io:before{content:"\f83a"}.fa-umbraco:before{content:"\f8e8"}.fa-galactic-senate:before{content:"\f50d"}.fa-ubuntu:before{content:"\f7df"}.fa-draft2digital:before{content:"\f396"}.fa-stripe:before{content:"\f429"}.fa-dhl:before{content:"\f790"}.fa-pinterest-square:before,.fa-square-pinterest:before{content:"\f0d3"}.fa-blackberry:before{content:"\f37b"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-playstation:before{content:"\f3df"}.fa-quinscape:before{content:"\f459"}.fa-less:before{content:"\f41d"}.fa-blogger-b:before{content:"\f37d"}.fa-typo3:before{content:"\f42b"}.fa-dailymotion:before{content:"\e052"}.fa-affiliatetheme:before{content:"\f36b"}.fa-bootstrap:before{content:"\f836"}.fa-nfc-symbol:before{content:"\e531"}.fa-ethereum:before{content:"\f42e"}.fa-speaker-deck:before{content:"\f83c"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-patreon:before{content:"\f3d9"}.fa-avianex:before{content:"\f374"}.fa-ello:before{content:"\f5f1"}.fa-gofore:before{content:"\f3a7"}.fa-bimobject:before{content:"\f378"}.fa-facebook-f:before{content:"\f39e"}.fa-google-plus-square:before,.fa-square-google-plus:before{content:"\f0d4"}.fa-mandalorian:before{content:"\f50f"}.fa-first-order-alt:before{content:"\f50a"}.fa-osi:before{content:"\f41a"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-periscope:before{content:"\f3da"}.fa-fulcrum:before{content:"\f50b"}.fa-cloudscale:before{content:"\f383"}.fa-mizuni:before{content:"\f3cc"}.fa-schlix:before{content:"\f3ea"}.fa-square-xing:before,.fa-xing-square:before{content:"\f169"}.fa-cloudversify:before{content:"\f385"}.fa-usps:before{content:"\f7e1"}.fa-megaport:before{content:"\f5a3"}.fa-magento:before{content:"\f3c4"}.fa-fly:before{content:"\f417"}.fa-aviato:before{content:"\f421"}.fa-itunes:before{content:"\f3b4"}.fa-cuttlefish:before{content:"\f38c"}.fa-blogger:before{content:"\f37c"}.fa-viber:before{content:"\f409"}.fa-symfony:before{content:"\f83d"}.fa-facebook-messenger:before{content:"\f39f"}.fa-audible:before{content:"\f373"}.fa-think-peaks:before{content:"\f731"}.fa-bilibili:before{content:"\e3d9"}.fa-erlang:before{content:"\f39d"}.fa-cotton-bureau:before{content:"\f89e"}.fa-42-group:before,.fa-innosoft:before{content:"\e080"}.fa-elementor:before{content:"\f430"}.fa-pied-piper-square:before,.fa-square-pied-piper:before{content:"\e01e"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-palfed:before{content:"\f3d8"}.fa-resolving:before{content:"\f3e7"}.fa-xbox:before{content:"\f412"}.fa-searchengin:before{content:"\f3eb"}.fa-tiktok:before{content:"\e07b"}.fa-facebook-square:before,.fa-square-facebook:before{content:"\f082"}.fa-linkedin:before{content:"\f08c"}.fa-hubspot:before{content:"\f3b2"}.fa-deploydog:before{content:"\f38e"}.fa-mixer:before{content:"\e056"}.fa-lastfm-square:before,.fa-square-lastfm:before{content:"\f203"}.fa-vimeo:before{content:"\f40a"}.fa-mendeley:before{content:"\f7b3"}.fa-uniregistry:before{content:"\f404"}.fa-figma:before{content:"\f799"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cmplid:before{content:"\e360"}.fa-facebook:before{content:"\f09a"}.fa-gripfire:before{content:"\f3ac"}.fa-jedi-order:before{content:"\f50e"}.fa-uikit:before{content:"\f403"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-phabricator:before{content:"\f3db"}.fa-ussunnah:before{content:"\f407"}.fa-earlybirds:before{content:"\f39a"}.fa-trade-federation:before{content:"\f513"}.fa-autoprefixer:before{content:"\f41c"}.fa-google-play:before{content:"\f3ab"}.fa-line:before{content:"\f3c0"}.fa-google-drive:before{content:"\f3aa"}.fa-servicestack:before{content:"\f3ec"}.fa-deezer:before{content:"\e077"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-jira:before{content:"\f7b1"}.fa-docker:before{content:"\f395"}.fa-screenpal:before{content:"\e570"}.fa-gitter:before{content:"\f426"}.fa-d-and-d:before{content:"\f38d"}.fa-microblog:before{content:"\e01a"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-yandex:before{content:"\f413"}.fa-readme:before{content:"\f4d5"}.fa-sass:before{content:"\f41e"}.fa-wirsindhandwerk:before,.fa-wsh:before{content:"\e2d0"}.fa-buromobelexperte:before{content:"\f37f"}.fa-salesforce:before{content:"\f83b"}.fa-octopus-deploy:before{content:"\e082"}.fa-medapps:before{content:"\f3c6"}.fa-ns8:before{content:"\f3d5"}.fa-apper:before{content:"\f371"}.fa-waze:before{content:"\f83f"}.fa-snapchat-ghost:before,.fa-snapchat:before{content:"\f2ab"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-rust:before{content:"\e07a"}.fa-wix:before{content:"\f5cf"}.fa-behance-square:before,.fa-square-behance:before{content:"\f1b5"}.fa-supple:before{content:"\f3f9"}.fa-rebel:before{content:"\f1d0"}.fa-staylinked:before{content:"\f3f5"}.fa-kaggle:before{content:"\f5fa"}.fa-space-awesome:before{content:"\e5ac"}.fa-cpanel:before{content:"\f388"}.fa-goodreads-g:before{content:"\f3a9"}.fa-git-square:before,.fa-square-git:before{content:"\f1d2"}.fa-square-tumblr:before,.fa-tumblr-square:before{content:"\f174"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-perbyte:before{content:"\e083"}.fa-grunt:before{content:"\f3ad"}.fa-weebly:before{content:"\f5cc"}.fa-themeco:before{content:"\f5c6"}.fa-python:before{content:"\f3e2"}.fa-bots:before{content:"\e340"}.fa-hornbill:before{content:"\f592"}.fa-js:before{content:"\f3b8"}.fa-ideal:before{content:"\e013"}.fa-dev:before{content:"\f6cc"}.fa-sketch:before{content:"\f7c6"}.fa-yandex-international:before{content:"\f414"}.fa-uber:before{content:"\f402"}.fa-php:before{content:"\f457"}.fa-alipay:before{content:"\f642"}.fa-firefox-browser:before{content:"\e007"}.fa-replyd:before{content:"\f3e6"}.fa-suse:before{content:"\f7d6"}.fa-jenkins:before{content:"\f3b6"}.fa-rockrms:before{content:"\f3e9"}.fa-buffer:before{content:"\f837"}.fa-npm:before{content:"\f3d4"}.fa-yammer:before{content:"\f840"}.fa-btc:before{content:"\f15a"}.fa-stubber:before{content:"\e5c7"}.fa-telegram-plane:before,.fa-telegram:before{content:"\f2c6"}.fa-old-republic:before{content:"\f510"}.fa-odysee:before{content:"\e5c6"}.fa-square-whatsapp:before,.fa-whatsapp-square:before{content:"\f40c"}.fa-node-js:before{content:"\f3d3"}.fa-edge-legacy:before{content:"\e078"}.fa-slack-hash:before,.fa-slack:before{content:"\f198"}.fa-medrt:before{content:"\f3c8"}.fa-vaadin:before{content:"\f408"}.fa-reacteurope:before{content:"\f75d"}.fa-medium-m:before,.fa-medium:before{content:"\f23a"}.fa-amilia:before{content:"\f36d"}.fa-flipboard:before{content:"\f44d"}.fa-critical-role:before{content:"\f6c9"}.fa-sitrox:before{content:"\e44a"}.fa-discourse:before{content:"\f393"}.fa-mastodon:before{content:"\f4f6"}.fa-airbnb:before{content:"\f834"}.fa-wolf-pack-battalion:before{content:"\f514"}.fa-buy-n-large:before{content:"\f8a6"}.fa-gulp:before{content:"\f3ae"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-strava:before{content:"\f428"}.fa-ember:before{content:"\f423"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-teamspeak:before{content:"\f4f9"}.fa-pushed:before{content:"\f3e1"}.fa-wordpress-simple:before{content:"\f411"}.fa-nutritionix:before{content:"\f3d6"}.fa-wodu:before{content:"\e088"}.fa-google-pay:before{content:"\e079"}.fa-intercom:before{content:"\f7af"}.fa-zhihu:before{content:"\f63f"}.fa-korvue:before{content:"\f42f"}.fa-pix:before{content:"\e43a"}.fa-steam-symbol:before{content:"\f3f6"}: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("./media/fa-regular-400-AKWU76I6.woff2") format("woff2"),url("./media/fa-regular-400-K4FBMWYG.ttf") format("truetype")}.fa-regular,.far{font-weight:400}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--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("./media/fa-solid-900-H2XJQV6A.woff2") format("woff2"),url("./media/fa-solid-900-BNOK755N.ttf") format("truetype")}.fa-solid,.fas{font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url("./media/fa-brands-400-SIIAGDBB.woff2") format("woff2"),url("./media/fa-brands-400-L56FXN36.ttf") format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url("./media/fa-solid-900-H2XJQV6A.woff2") format("woff2"),url("./media/fa-solid-900-BNOK755N.ttf") format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url("./media/fa-regular-400-AKWU76I6.woff2") format("woff2"),url("./media/fa-regular-400-K4FBMWYG.ttf") format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url("./media/fa-solid-900-H2XJQV6A.woff2") format("woff2"),url("./media/fa-solid-900-BNOK755N.ttf") format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url("./media/fa-brands-400-SIIAGDBB.woff2") format("woff2"),url("./media/fa-brands-400-L56FXN36.ttf") format("truetype")}@font-face{font-family:FontAwesome;font-display:block;src:url("./media/fa-regular-400-AKWU76I6.woff2") format("woff2"),url("./media/fa-regular-400-K4FBMWYG.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("./media/fa-v4compatibility-MIE46ALS.woff2") format("woff2"),url("./media/fa-v4compatibility-SLOOKL4I.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+f27a}:root,[data-bs-theme=light]{--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-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--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-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, .75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, .5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--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-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-box-shadow-sm:0 .125rem .25rem rgba(0, 0, 0, .075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, .175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, .075);--bs-focus-ring-width:.25rem;--bs-focus-ring-opacity:.25;--bs-focus-ring-color:rgba(13, 110, 253, .25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, .75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, .5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, .15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}.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}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-emphasis-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-emphasis-color);--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), .05);--bs-table-active-color:var(--bs-emphasis-color);--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), .1);--bs-table-hover-color:var(--bs-emphasis-color);--bs-table-hover-bg:rgba(var(--bs-emphasis-color-rgb), .075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#a6b5cc;--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:#b5b6b7;--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:#a7b9b1;--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:#a6c3ca;--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:#ccc2a4;--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:#c6acae;--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:#c6c7c8;--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:#4d5154;--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)}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);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}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--bs-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img: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");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.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:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-check-input{--bs-form-check-bg:var(--bs-body-bg);flex-shrink:0;width:1em;height:1em;margin-top:.25em;vertical-align:top;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}.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[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-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-switch .form-check-input:focus{--bs-form-switch-bg: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-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::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;-webkit-appearance:none;appearance:none;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}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-thumb{width:1rem;height:1rem;-moz-appearance:none;appearance:none;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}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;max-width:100%;height:100%;padding:1rem .75rem;overflow:hidden;color:rgba(var(--bs-body-color-rgb),.65);text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem;padding-left:.75rem}.form-floating>textarea:focus~label:after,.form-floating>textarea:not(:placeholder-shown)~label:after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>textarea:disabled~label:after{background-color:var(--bs-secondary-bg)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>.form-control:disabled~label,.form-floating>:disabled~label{color:#6c757d}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(-1 * var(--bs-border-width));border-top-left-radius:0;border-bottom-left-radius:0}.form-control.is-valid,.was-validated .form-control:valid{border-color:var(--bs-form-valid-border-color);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.1'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.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"]{--bs-form-select-bg-icon: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.1'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:var(--bs-form-invalid-border-color);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-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"]{--bs-form-select-bg-icon: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");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.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:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--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;-moz-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}.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:0 0 0 #000;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.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:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--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-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}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:var(--bs-border-color);--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color:var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg:var(--bs-body-bg);--bs-nav-tabs-link-active-border-color:var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-pills{--bs-nav-pills-border-radius:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:.125rem;--bs-nav-underline-link-active-color:var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb), .65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), .8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), .3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--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%2833, 37, 41, 0.75%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(var(--bs-emphasis-color-rgb), .15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--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-dark,.navbar[data-bs-theme=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-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y:.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb), .03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:var(--bs-body-bg);--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);color:var(--bs-body-color);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)}.accordion{--bs-accordion-color:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--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:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--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='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%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='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");--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:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}[data-bs-theme=dark] .accordion-button:after{--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%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-.708'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%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-.708'/%3e%3c/svg%3e")}.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:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);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)}.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:var(--bs-body-bg);--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:var(--bs-border-color);--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:var(--bs-tertiary-bg);--bs-pagination-hover-border-color:var(--bs-border-color);--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--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:var(--bs-secondary-color);--bs-pagination-disabled-bg:var(--bs-secondary-bg);--bs-pagination-disabled-border-color:var(--bs-border-color);display:flex;padding-left:0;list-style:none}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:.75rem;--bs-progress-bg:var(--bs-secondary-bg);--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--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)}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--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)}.btn-close{--bs-btn-close-color:#000;--bs-btn-close-bg: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.414'/%3e%3c/svg%3e");--bs-btn-close-opacity:.5;--bs-btn-close-hover-opacity:.75;--bs-btn-close-focus-shadow:0 0 0 .25rem rgba(13, 110, 253, .25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:.25;box-sizing:content-box;width:1em;height:1em;padding:.25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;filter:var(--bs-btn-close-filter);border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.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(var(--bs-body-bg-rgb), .85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb), .85);--bs-toast-header-border-color:var(--bs-border-color-translucent);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)}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:.5rem;--bs-modal-color:var(--bs-body-color);--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--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:var(--bs-border-width);--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:var(--bs-border-width);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}.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:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:.9;--bs-tooltip-arrow-width:.8rem;--bs-tooltip-arrow-height:.4rem;z-index:var(--bs-tooltip-zindex);display:block;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}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--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)}.text-bg-info{color:#000!important;background-color:RGBA(var(--bs-info-rgb),var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(var(--bs-light-rgb),var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(var(--bs-dark-rgb),var(--bs-bg-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(10,88,202,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(86,94,100,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(20,108,67,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(61,213,243,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(255,205,57,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(176,42,55,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(249,250,251,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(26,30,33,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!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}@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}}@font-face{font-family:FontAwesome;src:url("./media/fontawesome-webfont-FMJ3VJ65.eot?v=4.7.0");src:url("./media/fontawesome-webfont-FMJ3VJ65.eot?#iefix&v=4.7.0") format("embedded-opentype"),url("./media/fontawesome-webfont-5GKVPAEF.woff2?v=4.7.0") format("woff2"),url("./media/fontawesome-webfont-Z4ARLA73.woff?v=4.7.0") format("woff"),url("./media/fontawesome-webfont-RJ6LE7IU.ttf?v=4.7.0") format("truetype"),url("./media/fontawesome-webfont-3KIJVIEY.svg?v=4.7.0#fontawesomeregular") format("svg");font-weight:400;font-style:normal}.fa{display:inline-block;font: 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scaleY(-1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format("woff2");unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format("woff2");unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format("woff2");unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format("woff2");unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v48/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-bs-theme=light]{--bs-blue:#2a9fd6;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#e83e8c;--bs-red:#c00;--bs-orange:#fd7e14;--bs-yellow:#f80;--bs-green:#77b300;--bs-teal:#20c997;--bs-cyan:#93c;--bs-black:#000;--bs-white:#fff;--bs-gray:#555;--bs-gray-dark:#222;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#adafae;--bs-gray-500:#888;--bs-gray-600:#555;--bs-gray-700:#282828;--bs-gray-800:#222;--bs-gray-900:#212529;--bs-primary:#2a9fd6;--bs-secondary:#555;--bs-success:#77b300;--bs-info:#93c;--bs-warning:#f80;--bs-danger:#c00;--bs-light:#222;--bs-dark:#adafae;--bs-primary-rgb:42,159,214;--bs-secondary-rgb:85,85,85;--bs-success-rgb:119,179,0;--bs-info-rgb:153,51,204;--bs-warning-rgb:255,136,0;--bs-danger-rgb:204,0,0;--bs-light-rgb:34,34,34;--bs-dark-rgb:173,175,174;--bs-primary-text-emphasis:#114056;--bs-secondary-text-emphasis:#222222;--bs-success-text-emphasis:#304800;--bs-info-text-emphasis:#3d1452;--bs-warning-text-emphasis:#663600;--bs-danger-text-emphasis:#520000;--bs-light-text-emphasis:#282828;--bs-dark-text-emphasis:#282828;--bs-primary-bg-subtle:#d4ecf7;--bs-secondary-bg-subtle:#dddddd;--bs-success-bg-subtle:#e4f0cc;--bs-info-bg-subtle:#ebd6f5;--bs-warning-bg-subtle:#ffe7cc;--bs-danger-bg-subtle:#f5cccc;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#adafae;--bs-primary-border-subtle:#aad9ef;--bs-secondary-border-subtle:#bbbbbb;--bs-success-border-subtle:#c9e199;--bs-info-border-subtle:#d6adeb;--bs-warning-border-subtle:#ffcf99;--bs-danger-border-subtle:#eb9999;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#888;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;--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:#adafae;--bs-body-color-rgb:173,175,174;--bs-body-bg:#060606;--bs-body-bg-rgb:6,6,6;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(173, 175, 174, .75);--bs-secondary-color-rgb:173,175,174;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(173, 175, 174, .5);--bs-tertiary-color-rgb:173,175,174;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:#fff;--bs-link-color:#2a9fd6;--bs-link-color-rgb:42,159,214;--bs-link-decoration:underline;--bs-link-hover-color:#227fab;--bs-link-hover-color-rgb:34,127,171;--bs-code-color:#e83e8c;--bs-highlight-color:#adafae;--bs-highlight-bg:#ffe7cc;--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-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-box-shadow-sm:0 .125rem .25rem rgba(0, 0, 0, .075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, .175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, .075);--bs-focus-ring-width:.25rem;--bs-focus-ring-opacity:.25;--bs-focus-ring-color:rgba(42, 159, 214, .25);--bs-form-valid-color:#77b300;--bs-form-valid-border-color:#77b300;--bs-form-invalid-color:#c00;--bs-form-invalid-border-color:#c00}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, .75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#222;--bs-secondary-bg-rgb:34,34,34;--bs-tertiary-color:rgba(222, 226, 230, .5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#222426;--bs-tertiary-bg-rgb:34,36,38;--bs-primary-text-emphasis:#7fc5e6;--bs-secondary-text-emphasis:#999999;--bs-success-text-emphasis:#add166;--bs-info-text-emphasis:#c285e0;--bs-warning-text-emphasis:#ffb866;--bs-danger-text-emphasis:#e06666;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#08202b;--bs-secondary-bg-subtle:#111111;--bs-success-bg-subtle:#182400;--bs-info-bg-subtle:#1f0a29;--bs-warning-bg-subtle:#331b00;--bs-danger-bg-subtle:#290000;--bs-light-bg-subtle:#222;--bs-dark-bg-subtle:#111111;--bs-primary-border-subtle:#195f80;--bs-secondary-border-subtle:#333333;--bs-success-border-subtle:#476b00;--bs-info-border-subtle:#5c1f7a;--bs-warning-border-subtle:#995200;--bs-danger-border-subtle:#7a0000;--bs-light-border-subtle:#282828;--bs-dark-border-subtle:#222;--bs-heading-color:inherit;--bs-link-color:#7fc5e6;--bs-link-hover-color:#99d1eb;--bs-link-color-rgb:127,197,230;--bs-link-hover-color-rgb:153,209,235;--bs-code-color:#f18bba;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#663600;--bs-border-color:#282828;--bs-border-color-translucent:rgba(255, 255, 255, .15);--bs-form-valid-color:#add166;--bs-form-valid-border-color:#add166;--bs-form-invalid-color:#e06666;--bs-form-invalid-border-color:#e06666}*,: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:var(--bs-border-width) 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;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.525rem + 3.3vw)}@media (min-width:1200px){.h1,h1{font-size:4rem}}.h2,h2{font-size:calc(1.425rem + 2.1vw)}@media (min-width:1200px){.h2,h2{font-size:3rem}}.h3,h3{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h3,h3{font-size:2.5rem}}.h4,h4{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h4,h4{font-size:2rem}}.h5,h5{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h5,h5{font-size:1.5rem}}.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;color:var(--bs-highlight-color);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:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}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;color:inherit}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:var(--bs-secondary-color);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;line-height:inherit;font-size:calc(1.275rem + .3vw)}@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]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::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-weight:300;line-height:1.2;font-size:calc(1.625rem + 4.5vw)}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-weight:300;line-height:1.2;font-size:calc(1.575rem + 3.9vw)}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-weight:300;line-height:1.2;font-size:calc(1.525rem + 3.3vw)}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-weight:300;line-height:1.2;font-size:calc(1.475rem + 2.7vw)}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-weight:300;line-height:1.2;font-size:calc(1.425rem + 2.1vw)}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-weight:300;line-height:1.2;font-size:calc(1.375rem + 1.5vw)}@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:#555}.blockquote-footer:before{content:"\2014\a0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.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}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:initial;--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:#282828;--bs-table-accent-bg:rgba(255, 255, 255, .05);--bs-table-striped-color:initial;--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), .05);--bs-table-active-color:initial;--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), .1);--bs-table-hover-color:initial;--bs-table-hover-bg:rgba(255, 255, 255, .075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.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-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(2n){--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-active{--bs-table-color-state:var(--bs-table-active-color);--bs-table-bg-state:var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state:var(--bs-table-hover-color);--bs-table-bg-state:var(--bs-table-hover-bg)}.table-primary{--bs-table-color:#fff;--bs-table-bg:#2a9fd6;--bs-table-border-color:#55b2de;--bs-table-striped-bg:#35a4d8;--bs-table-striped-color:#fff;--bs-table-active-bg:#3fa9da;--bs-table-active-color:#fff;--bs-table-hover-bg:#3aa6d9;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#fff;--bs-table-bg:#555555;--bs-table-border-color:#777777;--bs-table-striped-bg:#5e5e5e;--bs-table-striped-color:#fff;--bs-table-active-bg:#666666;--bs-table-active-color:#fff;--bs-table-hover-bg:#626262;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color:#fff;--bs-table-bg:#77b300;--bs-table-border-color:#92c233;--bs-table-striped-bg:#7eb70d;--bs-table-striped-color:#fff;--bs-table-active-bg:#85bb1a;--bs-table-active-color:#fff;--bs-table-hover-bg:#81b913;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#fff;--bs-table-bg:#9933cc;--bs-table-border-color:#ad5cd6;--bs-table-striped-bg:#9e3dcf;--bs-table-striped-color:#fff;--bs-table-active-bg:#a347d1;--bs-table-active-color:#fff;--bs-table-hover-bg:#a142d0;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color:#fff;--bs-table-bg:#ff8800;--bs-table-border-color:#ffa033;--bs-table-striped-bg:#ff8e0d;--bs-table-striped-color:#fff;--bs-table-active-bg:#ff941a;--bs-table-active-color:#000;--bs-table-hover-bg:#ff9113;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#fff;--bs-table-bg:#cc0000;--bs-table-border-color:#d63333;--bs-table-striped-bg:#cf0d0d;--bs-table-striped-color:#fff;--bs-table-active-bg:#d11a1a;--bs-table-active-color:#fff;--bs-table-hover-bg:#d01313;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color:#fff;--bs-table-bg:#222;--bs-table-border-color:#4e4e4e;--bs-table-striped-bg:#2d2d2d;--bs-table-striped-color:#fff;--bs-table-active-bg:#383838;--bs-table-active-color:#fff;--bs-table-hover-bg:#333333;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#000;--bs-table-bg:#adafae;--bs-table-border-color:#8a8c8b;--bs-table-striped-bg:#a4a6a5;--bs-table-striped-color:#fff;--bs-table-active-bg:#9c9e9d;--bs-table-active-color:#fff;--bs-table-hover-bg:#a0a2a1;--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 + 0px);padding-bottom:calc(.375rem + 0px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 0px);padding-bottom:calc(.5rem + 0px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + 0px);padding-bottom:calc(.25rem + 0px);font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem 1rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-clip:padding-box;border:0 solid #fff;border-radius:var(--bs-border-radius);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:#95cfeb;outline:0;box-shadow:0 0 0 .25rem #2a9fd640}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-moz-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:#adafae;opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem 1rem;margin:-.375rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem;color:#fff;background-color:#282828;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:0px;border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem 1rem;margin:-.375rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem;color:#fff;background-color:#282828;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:0px;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::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#232323}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#232323}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:0 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 + 0px);padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 0px);padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + 0px)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + 0px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 0px)}.form-control-color{width:3rem;height:calc(1.5em + .75rem + 0px);padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + 0px)}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + 0px)}.form-select{--bs-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23222' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 3rem .375rem 1rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right 1rem center;background-size:16px 12px;border:0 solid #fff;border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#95cfeb;outline:0;box-shadow:0 0 0 .25rem #2a9fd640}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:1rem;background-image:none}.form-select:disabled{background-color:#adafae}.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:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.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{--bs-form-check-bg:#fff;flex-shrink:0;width:1em;height:1em;margin-top:.25em;vertical-align:top;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:none;-webkit-print-color-adjust:exact;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:#95cfeb;outline:0;box-shadow:0 0 0 .25rem #2a9fd640}.form-check-input:checked{background-color:#2a9fd6;border-color:#2a9fd6}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-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]{--bs-form-check-bg-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:#2a9fd6;border-color:#2a9fd6;--bs-form-check-bg-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{--bs-form-switch-bg: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");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);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{--bs-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2395cfeb'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: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}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #060606,0 0 0 .25rem #2a9fd640}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #060606,0 0 0 .25rem #2a9fd640}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;-webkit-appearance:none;appearance:none;background-color:#2a9fd6;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}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#bfe2f3}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;-moz-appearance:none;appearance:none;background-color:#2a9fd6;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}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#bfe2f3}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + 0px);min-height:calc(3.5rem + 0px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;max-width:100%;height:100%;padding:1rem;overflow:hidden;color:rgba(var(--bs-body-color-rgb),.65);text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:0 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}.form-floating>.form-control-plaintext::-moz-placeholder,.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.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;padding-left:1rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{transform:scale(.85) translateY(-.5rem) translate(.15rem)}.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{transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>.form-control:-webkit-autofill~label{transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>textarea:not(:-moz-placeholder-shown)~label:after{position:absolute;inset:1rem .5rem;z-index:-1;height:1.5em;content:"";background-color:#fff;border-radius:var(--bs-border-radius)}.form-floating>textarea:focus~label:after,.form-floating>textarea:not(:placeholder-shown)~label:after{position:absolute;inset:1rem .5rem;z-index:-1;height:1.5em;content:"";background-color:#fff;border-radius:var(--bs-border-radius)}.form-floating>textarea:disabled~label:after{background-color:#adafae}.form-floating>.form-control-plaintext~label{border-width:0 0}.form-floating>.form-control:disabled~label,.form-floating>:disabled~label{color:#555}.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 1rem;font-size:1rem;font-weight:400;line-height:1.5;color:#fff;text-align:center;white-space:nowrap;background-color:#282828;border:0 solid transparent;border-radius:var(--bs-border-radius)}.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:var(--bs-border-radius-lg)}.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:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:4rem}.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:-0px;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:var(--bs-form-valid-color)}.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:var(--bs-success);border-radius:var(--bs-border-radius)}.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:var(--bs-form-valid-border-color);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='%2377b300' 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.1'/%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:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.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:var(--bs-form-valid-border-color)}.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"]{--bs-form-select-bg-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2377b300' 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.1'/%3e%3c/svg%3e");padding-right:5.5rem;background-position:right 1rem center,center right 3rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.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:var(--bs-form-valid-border-color)}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:var(--bs-form-valid-color)}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:var(--bs-form-valid-color)}.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:var(--bs-form-invalid-color)}.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:var(--bs-danger);border-radius:var(--bs-border-radius)}.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:var(--bs-form-invalid-border-color);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='%23c00'%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='%23c00' 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:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.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:var(--bs-form-invalid-border-color)}.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"]{--bs-form-select-bg-icon: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='%23c00'%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='%23c00' stroke='none'/%3e%3c/svg%3e");padding-right:5.5rem;background-position:right 1rem center,center right 3rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.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:var(--bs-form-invalid-border-color)}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:var(--bs-form-invalid-color)}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:var(--bs-form-invalid-color)}.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:1rem;--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:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--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;-moz-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-check:checked:focus-visible+.btn{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:#2a9fd6;--bs-btn-border-color:#2a9fd6;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#2487b6;--bs-btn-hover-border-color:#227fab;--bs-btn-focus-shadow-rgb:74,173,220;--bs-btn-active-color:#fff;--bs-btn-active-bg:#227fab;--bs-btn-active-border-color:#2077a1;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#2a9fd6;--bs-btn-disabled-border-color:#2a9fd6}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#555;--bs-btn-border-color:#555;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#484848;--bs-btn-hover-border-color:#444444;--bs-btn-focus-shadow-rgb:111,111,111;--bs-btn-active-color:#fff;--bs-btn-active-bg:#444444;--bs-btn-active-border-color:#404040;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#555;--bs-btn-disabled-border-color:#555}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#77b300;--bs-btn-border-color:#77b300;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#659800;--bs-btn-hover-border-color:#5f8f00;--bs-btn-focus-shadow-rgb:139,190,38;--bs-btn-active-color:#fff;--bs-btn-active-bg:#5f8f00;--bs-btn-active-border-color:#598600;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#77b300;--bs-btn-disabled-border-color:#77b300}.btn-info{--bs-btn-color:#fff;--bs-btn-bg:#93c;--bs-btn-border-color:#93c;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#822bad;--bs-btn-hover-border-color:#7a29a3;--bs-btn-focus-shadow-rgb:168,82,212;--bs-btn-active-color:#fff;--bs-btn-active-bg:#7a29a3;--bs-btn-active-border-color:#732699;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#93c;--bs-btn-disabled-border-color:#93c}.btn-warning{--bs-btn-color:#fff;--bs-btn-bg:#f80;--bs-btn-border-color:#f80;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#d97400;--bs-btn-hover-border-color:#cc6d00;--bs-btn-focus-shadow-rgb:255,154,38;--bs-btn-active-color:#fff;--bs-btn-active-bg:#cc6d00;--bs-btn-active-border-color:#bf6600;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#f80;--bs-btn-disabled-border-color:#f80}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#c00;--bs-btn-border-color:#c00;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#ad0000;--bs-btn-hover-border-color:#a30000;--bs-btn-focus-shadow-rgb:212,38,38;--bs-btn-active-color:#fff;--bs-btn-active-bg:#a30000;--bs-btn-active-border-color:#990000;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#c00;--bs-btn-disabled-border-color:#c00}.btn-light{--bs-btn-color:#fff;--bs-btn-bg:#222;--bs-btn-border-color:#222;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#1d1d1d;--bs-btn-hover-border-color:#1b1b1b;--bs-btn-focus-shadow-rgb:67,67,67;--bs-btn-active-color:#fff;--bs-btn-active-bg:#1b1b1b;--bs-btn-active-border-color:#1a1a1a;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#222;--bs-btn-disabled-border-color:#222}.btn-dark{--bs-btn-color:#000;--bs-btn-bg:#adafae;--bs-btn-border-color:#adafae;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#b9bbba;--bs-btn-hover-border-color:#b5b7b6;--bs-btn-focus-shadow-rgb:147,149,148;--bs-btn-active-color:#000;--bs-btn-active-bg:#bdbfbe;--bs-btn-active-border-color:#b5b7b6;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#adafae;--bs-btn-disabled-border-color:#adafae}.btn-outline-primary{--bs-btn-color:#2a9fd6;--bs-btn-border-color:#2a9fd6;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#2a9fd6;--bs-btn-hover-border-color:#2a9fd6;--bs-btn-focus-shadow-rgb:42,159,214;--bs-btn-active-color:#fff;--bs-btn-active-bg:#2a9fd6;--bs-btn-active-border-color:#2a9fd6;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#2a9fd6;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#2a9fd6;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#555;--bs-btn-border-color:#555;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#555;--bs-btn-hover-border-color:#555;--bs-btn-focus-shadow-rgb:85,85,85;--bs-btn-active-color:#fff;--bs-btn-active-bg:#555;--bs-btn-active-border-color:#555;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#555;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#555;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#77b300;--bs-btn-border-color:#77b300;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#77b300;--bs-btn-hover-border-color:#77b300;--bs-btn-focus-shadow-rgb:119,179,0;--bs-btn-active-color:#fff;--bs-btn-active-bg:#77b300;--bs-btn-active-border-color:#77b300;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#77b300;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#77b300;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#93c;--bs-btn-border-color:#93c;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#93c;--bs-btn-hover-border-color:#93c;--bs-btn-focus-shadow-rgb:153,51,204;--bs-btn-active-color:#fff;--bs-btn-active-bg:#93c;--bs-btn-active-border-color:#93c;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#93c;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#93c;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#f80;--bs-btn-border-color:#f80;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#f80;--bs-btn-hover-border-color:#f80;--bs-btn-focus-shadow-rgb:255,136,0;--bs-btn-active-color:#fff;--bs-btn-active-bg:#f80;--bs-btn-active-border-color:#f80;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#f80;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f80;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#c00;--bs-btn-border-color:#c00;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#c00;--bs-btn-hover-border-color:#c00;--bs-btn-focus-shadow-rgb:204,0,0;--bs-btn-active-color:#fff;--bs-btn-active-bg:#c00;--bs-btn-active-border-color:#c00;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#c00;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#c00;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#222;--bs-btn-border-color:#222;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#222;--bs-btn-hover-border-color:#222;--bs-btn-focus-shadow-rgb:34,34,34;--bs-btn-active-color:#fff;--bs-btn-active-bg:#222;--bs-btn-active-border-color:#222;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#222;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#222;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#adafae;--bs-btn-border-color:#adafae;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#adafae;--bs-btn-hover-border-color:#adafae;--bs-btn-focus-shadow-rgb:173,175,174;--bs-btn-active-color:#000;--bs-btn-active-bg:#adafae;--bs-btn-active-border-color:#adafae;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#adafae;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#adafae;--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:#555;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:0 0 0 #000;--bs-btn-focus-shadow-rgb:74,173,220;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:var(--bs-border-radius-lg)}.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:var(--bs-border-radius-sm)}.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:var(--bs-body-color);--bs-dropdown-bg:#282828;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:#222;--bs-dropdown-divider-margin-y:.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:#fff;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-link-hover-bg:#2a9fd6;--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#2a9fd6;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:.25rem;--bs-dropdown-header-color:#555;--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;border-radius:var(--bs-dropdown-item-border-radius,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:#222;--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:#222;--bs-dropdown-link-hover-bg:rgba(255, 255, 255, .15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#2a9fd6;--bs-dropdown-link-disabled-color:#888;--bs-dropdown-header-color:#888}.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:var(--bs-border-radius)}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:calc(-1 * var(--bs-border-width))}.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:.75rem;padding-left:.75rem}.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:calc(-1 * var(--bs-border-width))}.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:nth-child(n+3),.btn-group-vertical>:not(.btn-check)+.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:var(--bs-secondary-color);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;background:0 0;border:0;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:focus-visible{outline:0;box-shadow:0 0 0 .25rem #2a9fd640}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:#282828;--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:#282828;--bs-nav-tabs-link-active-color:#fff;--bs-nav-tabs-link-active-bg:#282828;--bs-nav-tabs-link-active-border-color:#282828;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));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-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:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#2a9fd6}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.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-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:.125rem;--bs-nav-underline-link-active-color:#fff;gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:focus,.nav-underline .nav-link:hover{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-grow:1;flex-basis:0;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(var(--bs-emphasis-color-rgb), .65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), .8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), .3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--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%28173, 175, 174, 0.75%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(var(--bs-emphasis-color-rgb), .15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--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 .nav-link.show{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-grow:1;flex-basis:100%;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,.navbar[data-bs-theme=dark]{--bs-navbar-color:rgba(255, 255, 255, .55);--bs-navbar-hover-color:#fff;--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")}[data-bs-theme=dark] .navbar-toggler-icon{--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-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y:.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb), .03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:#282828;--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);color:var(--bs-body-color);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);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.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:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--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:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--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='none' stroke='%23adafae' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%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='none' stroke='%23114056' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");--bs-accordion-btn-focus-box-shadow:0 0 0 .25rem rgba(42, 159, 214, .25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}.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;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-header .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-header .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-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-collapse,.accordion-flush>.accordion-item>.accordion-header .accordion-button,.accordion-flush>.accordion-item>.accordion-header .accordion-button.collapsed{border-radius:0}[data-bs-theme=dark] .accordion-button:after{--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%237fc5e6'%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-.708'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%237fc5e6'%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-.708'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x:.75rem;--bs-breadcrumb-padding-y:.375rem;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-bg:#282828;--bs-breadcrumb-border-radius:.25rem;--bs-breadcrumb-divider-color:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);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:#fff;--bs-pagination-bg:#282828;--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:transparent;--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:#fff;--bs-pagination-hover-bg:#2a9fd6;--bs-pagination-hover-border-color:transparent;--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--bs-pagination-focus-box-shadow:0 0 0 .25rem rgba(42, 159, 214, .25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#2a9fd6;--bs-pagination-active-border-color:#2a9fd6;--bs-pagination-disabled-color:var(--bs-secondary-color);--bs-pagination-disabled-bg:#282828;--bs-pagination-disabled-border-color:transparent;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:calc(-1 * var(--bs-border-width))}.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:var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x:.5rem;--bs-pagination-padding-y:.25rem;--bs-pagination-font-size:.875rem;--bs-pagination-border-radius:var(--bs-border-radius-sm)}.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:var(--bs-border-radius);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:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;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;color:var(--bs-alert-link-color)}.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:var(--bs-primary-text-emphasis);--bs-alert-bg:var(--bs-primary-bg-subtle);--bs-alert-border-color:var(--bs-primary-border-subtle);--bs-alert-link-color:var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color:var(--bs-secondary-text-emphasis);--bs-alert-bg:var(--bs-secondary-bg-subtle);--bs-alert-border-color:var(--bs-secondary-border-subtle);--bs-alert-link-color:var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color:var(--bs-success-text-emphasis);--bs-alert-bg:var(--bs-success-bg-subtle);--bs-alert-border-color:var(--bs-success-border-subtle);--bs-alert-link-color:var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color:var(--bs-info-text-emphasis);--bs-alert-bg:var(--bs-info-bg-subtle);--bs-alert-border-color:var(--bs-info-border-subtle);--bs-alert-link-color:var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color:var(--bs-warning-text-emphasis);--bs-alert-bg:var(--bs-warning-bg-subtle);--bs-alert-border-color:var(--bs-warning-border-subtle);--bs-alert-link-color:var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color:var(--bs-danger-text-emphasis);--bs-alert-bg:var(--bs-danger-bg-subtle);--bs-alert-border-color:var(--bs-danger-border-subtle);--bs-alert-link-color:var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color:var(--bs-light-text-emphasis);--bs-alert-bg:var(--bs-light-bg-subtle);--bs-alert-border-color:var(--bs-light-border-subtle);--bs-alert-link-color:var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color:var(--bs-dark-text-emphasis);--bs-alert-bg:var(--bs-dark-bg-subtle);--bs-alert-border-color:var(--bs-dark-border-subtle);--bs-alert-link-color:var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:var(--bs-progress-height)}}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:.75rem;--bs-progress-bg:#282828;--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#2a9fd6;--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-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.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:#fff;--bs-list-group-bg:#222;--bs-list-group-border-color:#282828;--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:.5rem;--bs-list-group-action-color:#fff;--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:#2a9fd6;--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:#2a9fd6;--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:#282828;--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#2a9fd6;--bs-list-group-active-border-color:#2a9fd6;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{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-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:not(.active):focus,.list-group-item-action:not(.active):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:not(.active):active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.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{--bs-list-group-color:var(--bs-primary-text-emphasis);--bs-list-group-bg:var(--bs-primary-bg-subtle);--bs-list-group-border-color:var(--bs-primary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-primary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-primary-border-subtle);--bs-list-group-active-color:var(--bs-primary-bg-subtle);--bs-list-group-active-bg:var(--bs-primary-text-emphasis);--bs-list-group-active-border-color:var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color:var(--bs-secondary-text-emphasis);--bs-list-group-bg:var(--bs-secondary-bg-subtle);--bs-list-group-border-color:var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-secondary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-secondary-border-subtle);--bs-list-group-active-color:var(--bs-secondary-bg-subtle);--bs-list-group-active-bg:var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color:var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color:var(--bs-success-text-emphasis);--bs-list-group-bg:var(--bs-success-bg-subtle);--bs-list-group-border-color:var(--bs-success-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-success-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-success-border-subtle);--bs-list-group-active-color:var(--bs-success-bg-subtle);--bs-list-group-active-bg:var(--bs-success-text-emphasis);--bs-list-group-active-border-color:var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color:var(--bs-info-text-emphasis);--bs-list-group-bg:var(--bs-info-bg-subtle);--bs-list-group-border-color:var(--bs-info-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-info-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-info-border-subtle);--bs-list-group-active-color:var(--bs-info-bg-subtle);--bs-list-group-active-bg:var(--bs-info-text-emphasis);--bs-list-group-active-border-color:var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color:var(--bs-warning-text-emphasis);--bs-list-group-bg:var(--bs-warning-bg-subtle);--bs-list-group-border-color:var(--bs-warning-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-warning-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-warning-border-subtle);--bs-list-group-active-color:var(--bs-warning-bg-subtle);--bs-list-group-active-bg:var(--bs-warning-text-emphasis);--bs-list-group-active-border-color:var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color:var(--bs-danger-text-emphasis);--bs-list-group-bg:var(--bs-danger-bg-subtle);--bs-list-group-border-color:var(--bs-danger-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-danger-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-danger-border-subtle);--bs-list-group-active-color:var(--bs-danger-bg-subtle);--bs-list-group-active-bg:var(--bs-danger-text-emphasis);--bs-list-group-active-border-color:var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color:var(--bs-light-text-emphasis);--bs-list-group-bg:var(--bs-light-bg-subtle);--bs-list-group-border-color:var(--bs-light-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-light-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-light-border-subtle);--bs-list-group-active-color:var(--bs-light-bg-subtle);--bs-list-group-active-bg:var(--bs-light-text-emphasis);--bs-list-group-active-border-color:var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color:var(--bs-dark-text-emphasis);--bs-list-group-bg:var(--bs-dark-bg-subtle);--bs-list-group-border-color:var(--bs-dark-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-dark-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-dark-border-subtle);--bs-list-group-active-color:var(--bs-dark-bg-subtle);--bs-list-group-active-bg:var(--bs-dark-text-emphasis);--bs-list-group-active-border-color:var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color:#fff;--bs-btn-close-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%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.414'/%3e%3c/svg%3e");--bs-btn-close-opacity:.6;--bs-btn-close-hover-opacity:1;--bs-btn-close-focus-shadow:0 0 0 .25rem rgba(42, 159, 214, .25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:.25;box-sizing:content-box;width:1em;height:1em;padding:.25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;filter:var(--bs-btn-close-filter);border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{--bs-btn-close-filter:invert(1) grayscale(100%) brightness(200%)}:root,[data-bs-theme=light]{--bs-btn-close-filter: }[data-bs-theme=dark]{--bs-btn-close-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:#fff;--bs-toast-bg:#222;--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:#282828;--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:#adafae;--bs-toast-header-bg:#222;--bs-toast-header-border-color:#282828;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:-webkit-max-content;width:-moz-max-content;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:var(--bs-body-color);--bs-modal-bg:#222;--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:#282828;--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:#282828;--bs-modal-footer-border-width:var(--bs-border-width);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{transform:translateY(-50px);transition:transform .3s ease-out}@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;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-top:calc(-.5 * var(--bs-modal-header-padding-y));margin-right:calc(-.5 * var(--bs-modal-header-padding-x));margin-bottom:calc(-.5 * var(--bs-modal-header-padding-y));margin-left: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:var(--bs-box-shadow)}.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:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:1;--bs-tooltip-arrow-width:.8rem;--bs-tooltip-arrow-height:.4rem;z-index:var(--bs-tooltip-zindex);display:block;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:calc(-1 * var(--bs-tooltip-arrow-height))}.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:calc(-1 * var(--bs-tooltip-arrow-height));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:calc(-1 * var(--bs-tooltip-arrow-height))}.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:calc(-1 * var(--bs-tooltip-arrow-height));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:#282828;--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:#fff;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--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;filter:var(--bs-carousel-control-icon-filter);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 0'/%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-.708'/%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%}.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:var(--bs-carousel-indicator-active-bg);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:var(--bs-carousel-caption-color);text-align:center}.carousel-dark{--bs-carousel-indicator-active-bg:#000;--bs-carousel-caption-color:#000;--bs-carousel-control-icon-filter:invert(1) grayscale(100)}:root,[data-bs-theme=light]{--bs-carousel-indicator-active-bg:#fff;--bs-carousel-caption-color:#fff;--bs-carousel-control-icon-filter: }[data-bs-theme=dark]{--bs-carousel-indicator-active-bg:#000;--bs-carousel-caption-color:#000;--bs-carousel-control-icon-filter:invert(1) grayscale(100)}.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:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:var(--bs-box-shadow-sm);--bs-offcanvas-transition:transform .3s ease-in-out;--bs-offcanvas-title-line-height:1.5}@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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{transform:none}.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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{transform:none}.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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{transform:none}.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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{transform:none}.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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{transform:none}.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:var(--bs-offcanvas-transition)}@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;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));margin-left:auto}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.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%,#000c,#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(var(--bs-primary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(var(--bs-secondary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(var(--bs-success-rgb),var(--bs-bg-opacity,1))!important}.text-bg-info{color:#fff!important;background-color:RGBA(var(--bs-info-rgb),var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#fff!important;background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(var(--bs-danger-rgb),var(--bs-bg-opacity,1))!important}.text-bg-light{color:#fff!important;background-color:RGBA(var(--bs-light-rgb),var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#000!important;background-color:RGBA(var(--bs-dark-rgb),var(--bs-bg-opacity,1))!important}.link-primary{color:RGBA(var(--bs-primary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(34,127,171,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(34,127,171,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(34,127,171,var(--bs-link-underline-opacity,1))!important}.link-secondary{color:RGBA(var(--bs-secondary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(68,68,68,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(68,68,68,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(68,68,68,var(--bs-link-underline-opacity,1))!important}.link-success{color:RGBA(var(--bs-success-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(95,143,0,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(95,143,0,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(95,143,0,var(--bs-link-underline-opacity,1))!important}.link-info{color:RGBA(var(--bs-info-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(122,41,163,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(122,41,163,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(122,41,163,var(--bs-link-underline-opacity,1))!important}.link-warning{color:RGBA(var(--bs-warning-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(204,109,0,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(204,109,0,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(204,109,0,var(--bs-link-underline-opacity,1))!important}.link-danger{color:RGBA(var(--bs-danger-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(163,0,0,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(163,0,0,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(163,0,0,var(--bs-link-underline-opacity,1))!important}.link-light{color:RGBA(var(--bs-light-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(27,27,27,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(27,27,27,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(27,27,27,var(--bs-link-underline-opacity,1))!important}.link-dark{color:RGBA(var(--bs-dark-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(189,191,190,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(189,191,190,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(189,191,190,var(--bs-link-underline-opacity,1))!important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-body-emphasis:focus,.link-body-emphasis:hover{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,.75))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,.75))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,.75))!important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,.5));text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,.5));text-underline-offset:.25em;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media (prefers-reduced-motion:reduce){.icon-link>.bi{transition:none}}.icon-link-hover:focus-visible>.bi,.icon-link-hover:hover>.bi{transform:var(--bs-icon-link-transform,translate3d(.25em,0,0))}.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:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:-webkit-sticky;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){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}.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),.visually-hidden:not(caption){position:absolute!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:var(--bs-border-width);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}.object-fit-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-none{-o-object-fit:none!important;object-fit: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}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y: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-inline-grid{display:inline-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:var(--bs-box-shadow)!important}.shadow-sm{box-shadow:var(--bs-box-shadow-sm)!important}.shadow-lg{box-shadow:var(--bs-box-shadow-lg)!important}.shadow-none{box-shadow:none!important}.focus-ring-primary{--bs-focus-ring-color:rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color:rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color:rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color:rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color:rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color:rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color:rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color:rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;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-black{--bs-border-opacity:1;border-color:rgba(var(--bs-black-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-primary-subtle{border-color:var(--bs-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--bs-success-border-subtle)!important}.border-info-subtle{border-color:var(--bs-info-border-subtle)!important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle)!important}.border-light-subtle{border-color:var(--bs-light-border-subtle)!important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.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}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.25rem!important}.row-gap-2{row-gap:.5rem!important}.row-gap-3{row-gap:1rem!important}.row-gap-4{row-gap:1.5rem!important}.row-gap-5{row-gap:3rem!important}.column-gap-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.525rem + 3.3vw)!important}.fs-2{font-size:calc(1.425rem + 2.1vw)!important}.fs-3{font-size:calc(1.375rem + 1.5vw)!important}.fs-4{font-size:calc(1.325rem + .9vw)!important}.fs-5{font-size:calc(1.275rem + .3vw)!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!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:var(--bs-secondary-color)!important}.text-black-50{--bs-text-opacity:1;color:#00000080!important}.text-white-50{--bs-text-opacity:1;color:#ffffff80!important}.text-body-secondary{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-body-tertiary{--bs-text-opacity:1;color:var(--bs-tertiary-color)!important}.text-body-emphasis{--bs-text-opacity:1;color:var(--bs-emphasis-color)!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}.text-primary-emphasis{color:var(--bs-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--bs-success-text-emphasis)!important}.text-info-emphasis{color:var(--bs-info-text-emphasis)!important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis)!important}.text-light-emphasis{color:var(--bs-light-text-emphasis)!important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis)!important}.link-opacity-10,.link-opacity-10-hover:hover{--bs-link-opacity:.1}.link-opacity-25,.link-opacity-25-hover:hover{--bs-link-opacity:.25}.link-opacity-50,.link-opacity-50-hover:hover{--bs-link-opacity:.5}.link-opacity-75,.link-opacity-75-hover:hover{--bs-link-opacity:.75}.link-opacity-100,.link-opacity-100-hover:hover{--bs-link-opacity:1}.link-offset-1,.link-offset-1-hover:hover{text-underline-offset:.125em!important}.link-offset-2,.link-offset-2-hover:hover{text-underline-offset:.25em!important}.link-offset-3,.link-offset-3-hover:hover{text-underline-offset:.375em!important}.link-underline-primary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-secondary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-success{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important}.link-underline-info{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important}.link-underline-warning{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important}.link-underline-danger{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important}.link-underline-light{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important}.link-underline-dark{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important}.link-underline{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-underline-opacity-0,.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity:0}.link-underline-opacity-10,.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity:.1}.link-underline-opacity-25,.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity:.25}.link-underline-opacity-50,.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity:.5}.link-underline-opacity-75,.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity:.75}.link-underline-opacity-100,.link-underline-opacity-100-hover:hover{--bs-link-underline-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-body-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-bg-rgb),var(--bs-bg-opacity))!important}.bg-body-tertiary{--bs-bg-opacity:1;background-color:rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity))!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-primary-subtle{background-color:var(--bs-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle)!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-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-xxl)!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-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl)!important;border-top-right-radius:var(--bs-border-radius-xxl)!important}.rounded-top-circle{border-top-left-radius:50%!important;border-top-right-radius:50%!important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill)!important;border-top-right-radius:var(--bs-border-radius-pill)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-right-radius:var(--bs-border-radius-xxl)!important}.rounded-end-circle{border-top-right-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill)!important;border-bottom-right-radius:var(--bs-border-radius-pill)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-left-radius:var(--bs-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-right-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill)!important;border-bottom-left-radius:var(--bs-border-radius-pill)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl)!important;border-top-left-radius:var(--bs-border-radius-xxl)!important}.rounded-start-circle{border-bottom-left-radius:50%!important;border-top-left-radius:50%!important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill)!important;border-top-left-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.object-fit-sm-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-sm-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-sm-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-sm-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-sm-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.25rem!important}.row-gap-sm-2{row-gap:.5rem!important}.row-gap-sm-3{row-gap:1rem!important}.row-gap-sm-4{row-gap:1.5rem!important}.row-gap-sm-5{row-gap:3rem!important}.column-gap-sm-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-sm-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-sm-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-sm-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-sm-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-sm-5{-moz-column-gap:3rem!important;column-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}.object-fit-md-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-md-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-md-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-md-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-md-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.25rem!important}.row-gap-md-2{row-gap:.5rem!important}.row-gap-md-3{row-gap:1rem!important}.row-gap-md-4{row-gap:1.5rem!important}.row-gap-md-5{row-gap:3rem!important}.column-gap-md-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-md-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-md-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-md-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-md-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-md-5{-moz-column-gap:3rem!important;column-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}.object-fit-lg-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-lg-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-lg-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-lg-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-lg-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.25rem!important}.row-gap-lg-2{row-gap:.5rem!important}.row-gap-lg-3{row-gap:1rem!important}.row-gap-lg-4{row-gap:1.5rem!important}.row-gap-lg-5{row-gap:3rem!important}.column-gap-lg-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-lg-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-lg-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-lg-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-lg-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-lg-5{-moz-column-gap:3rem!important;column-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}.object-fit-xl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xl-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.25rem!important}.row-gap-xl-2{row-gap:.5rem!important}.row-gap-xl-3{row-gap:1rem!important}.row-gap-xl-4{row-gap:1.5rem!important}.row-gap-xl-5{row-gap:3rem!important}.column-gap-xl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xl-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-xl-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-xl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xl-5{-moz-column-gap:3rem!important;column-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}.object-fit-xxl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xxl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xxl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xxl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xxl-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.25rem!important}.row-gap-xxl-2{row-gap:.5rem!important}.row-gap-xxl-3{row-gap:1rem!important}.row-gap-xxl-4{row-gap:1.5rem!important}.row-gap-xxl-5{row-gap:3rem!important}.column-gap-xxl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xxl-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-xxl-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-xxl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xxl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xxl-5{-moz-column-gap:3rem!important;column-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:4rem!important}.fs-2{font-size:3rem!important}.fs-3{font-size:2.5rem!important}.fs-4{font-size:2rem!important}.fs-5{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-inline-grid{display:inline-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}}.navbar.bg-primary{border:1px solid #282828}.navbar.bg-dark{background-color:#060606!important;border:1px solid #282828}.navbar.bg-light{background-color:#888!important}.navbar.fixed-top{border-width:0 0 1px}.navbar.fixed-bottom{border-width:1px 0 0}.btn-primary{background-color:#2a9fd6}.btn-secondary{background-color:#555}.btn-success{background-color:#77b300}.btn-info{background-color:#93c}.btn-warning{background-color:#f80}.btn-danger{background-color:#c00}.btn-light{background-color:#222}.btn-dark{background-color:#adafae}legend{color:#fff}.form-control:disabled,.form-control[readonly]{border-color:transparent}.nav-pills .nav-link,.nav-tabs .nav-link{color:#fff}.nav-pills .nav-link:hover,.nav-tabs .nav-link:hover{background-color:#282828}.nav-pills .nav-link.disabled,.nav-pills .nav-link.disabled:hover,.nav-tabs .nav-link.disabled,.nav-tabs .nav-link.disabled:hover{color:var(--bs-secondary-color);background-color:transparent}.nav-pills .nav-link.active,.nav-tabs .nav-link.active{background-color:#2a9fd6}.breadcrumb a{color:#fff}.pagination a:hover{text-decoration:none}.alert{color:#fff;border:none}.alert .alert-link,.alert a{color:#fff;text-decoration:underline}.alert-primary{background-color:#2a9fd6}.alert-secondary{background-color:#555}.alert-success{background-color:#77b300}.alert-info{background-color:#93c}.alert-warning{background-color:#f80}.alert-danger{background-color:#c00}.alert-light{background-color:#222}.alert-dark{background-color:#adafae}.badge.bg-dark{color:#212529}.tooltip{--bs-tooltip-bg:var(--bs-tertiary-bg);--bs-tooltip-color:var(--bs-emphasis-color)}.list-group-item-action:hover{border-color:#2a9fd6}.popover-title{border-bottom:none}.toast-center-center{top:50%;left:50%;transform:translate(-50%,-50%)}.toast-top-center{top:0;right:0;width:100%}.toast-bottom-center{bottom:0;right:0;width:100%}.toast-top-full-width{top:0;right:0;width:100%}.toast-bottom-full-width{bottom:0;right:0;width:100%}.toast-top-left{top:12px;left:12px}.toast-top-right{top:12px;right:12px}.toast-bottom-right{right:12px;bottom:12px}.toast-bottom-left{bottom:12px;left:12px}.toast-title{font-weight:700}.toast-message{word-wrap:break-word}.toast-message a,.toast-message label{color:#fff}.toast-message a:hover{color:#ccc;text-decoration:none}.toast-close-button{position:relative;right:-.3em;top:-.3em;float:right;font-size:20px;font-weight:700;color:#fff;text-shadow:0 1px 0 #ffffff}.toast-close-button:hover,.toast-close-button:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4}button.toast-close-button{padding:0;cursor:pointer;background:transparent;border:0}.toast-container{pointer-events:none;position:fixed;z-index:999999}.toast-container *{box-sizing:border-box}.toast-container .ngx-toastr{position:relative;overflow:hidden;margin:0 0 6px;padding:15px 15px 15px 50px;width:300px;border-radius:3px;background-position:15px center;background-repeat:no-repeat;background-size:24px;box-shadow:0 0 12px #999;color:#fff}.toast-container .ngx-toastr:hover{box-shadow:0 0 12px #000;opacity:1;cursor:pointer}.toast-info{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOS4wNDMgOCA4IDExOS4wODMgOCAyNTZjMCAxMzYuOTk3IDExMS4wNDMgMjQ4IDI0OCAyNDhzMjQ4LTExMS4wMDMgMjQ4LTI0OEM1MDQgMTE5LjA4MyAzOTIuOTU3IDggMjU2IDh6bTAgMTEwYzIzLjE5NiAwIDQyIDE4LjgwNCA0MiA0MnMtMTguODA0IDQyLTQyIDQyLTQyLTE4LjgwNC00Mi00MiAxOC44MDQtNDIgNDItNDJ6bTU2IDI1NGMwIDYuNjI3LTUuMzczIDEyLTEyIDEyaC04OGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMjRjMC02LjYyNyA1LjM3My0xMiAxMi0xMmgxMnYtNjRoLTEyYy02LjYyNyAwLTEyLTUuMzczLTEyLTEydi0yNGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDY0YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MTAwaDEyYzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjR6Jy8+PC9zdmc+)}.toast-error{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOSA4IDggMTE5IDggMjU2czExMSAyNDggMjQ4IDI0OCAyNDgtMTExIDI0OC0yNDhTMzkzIDggMjU2IDh6bTEyMS42IDMxMy4xYzQuNyA0LjcgNC43IDEyLjMgMCAxN0wzMzggMzc3LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwyNTYgMzEybC02NS4xIDY1LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwxMzQuNCAzMzhjLTQuNy00LjctNC43LTEyLjMgMC0xN2w2NS42LTY1LTY1LjYtNjUuMWMtNC43LTQuNy00LjctMTIuMyAwLTE3bDM5LjYtMzkuNmM0LjctNC43IDEyLjMtNC43IDE3IDBsNjUgNjUuNyA2NS4xLTY1LjZjNC43LTQuNyAxMi4zLTQuNyAxNyAwbDM5LjYgMzkuNmM0LjcgNC43IDQuNyAxMi4zIDAgMTdMMzEyIDI1Nmw2NS42IDY1LjF6Jy8+PC9zdmc+)}.toast-success{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTE3My44OTggNDM5LjQwNGwtMTY2LjQtMTY2LjRjLTkuOTk3LTkuOTk3LTkuOTk3LTI2LjIwNiAwLTM2LjIwNGwzNi4yMDMtMzYuMjA0YzkuOTk3LTkuOTk4IDI2LjIwNy05Ljk5OCAzNi4yMDQgMEwxOTIgMzEyLjY5IDQzMi4wOTUgNzIuNTk2YzkuOTk3LTkuOTk3IDI2LjIwNy05Ljk5NyAzNi4yMDQgMGwzNi4yMDMgMzYuMjA0YzkuOTk3IDkuOTk3IDkuOTk3IDI2LjIwNiAwIDM2LjIwNGwtMjk0LjQgMjk0LjQwMWMtOS45OTggOS45OTctMjYuMjA3IDkuOTk3LTM2LjIwNC0uMDAxeicvPjwvc3ZnPg==)}.toast-warning{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1NzYgNTEyJyB3aWR0aD0nNTc2JyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTU2OS41MTcgNDQwLjAxM0M1ODcuOTc1IDQ3Mi4wMDcgNTY0LjgwNiA1MTIgNTI3Ljk0IDUxMkg0OC4wNTRjLTM2LjkzNyAwLTU5Ljk5OS00MC4wNTUtNDEuNTc3LTcxLjk4N0wyNDYuNDIzIDIzLjk4NWMxOC40NjctMzIuMDA5IDY0LjcyLTMxLjk1MSA4My4xNTQgMGwyMzkuOTQgNDE2LjAyOHpNMjg4IDM1NGMtMjUuNDA1IDAtNDYgMjAuNTk1LTQ2IDQ2czIwLjU5NSA0NiA0NiA0NiA0Ni0yMC41OTUgNDYtNDYtMjAuNTk1LTQ2LTQ2LTQ2em0tNDMuNjczLTE2NS4zNDZsNy40MTggMTM2Yy4zNDcgNi4zNjQgNS42MDkgMTEuMzQ2IDExLjk4MiAxMS4zNDZoNDguNTQ2YzYuMzczIDAgMTEuNjM1LTQuOTgyIDExLjk4Mi0xMS4zNDZsNy40MTgtMTM2Yy4zNzUtNi44NzQtNS4wOTgtMTIuNjU0LTExLjk4Mi0xMi42NTRoLTYzLjM4M2MtNi44ODQgMC0xMi4zNTYgNS43OC0xMS45ODEgMTIuNjU0eicvPjwvc3ZnPg==)}.toast-container.toast-top-center .ngx-toastr,.toast-container.toast-bottom-center .ngx-toastr{width:300px;margin-left:auto;margin-right:auto}.toast-container.toast-top-full-width .ngx-toastr,.toast-container.toast-bottom-full-width .ngx-toastr{width:96%;margin-left:auto;margin-right:auto}.ngx-toastr{background-color:#030303;pointer-events:auto}.toast-success{background-color:#51a351}.toast-error{background-color:#bd362f}.toast-info{background-color:#2f96b4}.toast-warning{background-color:#f89406}.toast-progress{position:absolute;left:0;bottom:0;height:4px;background-color:#000;opacity:.4}@media all and (max-width: 240px){.toast-container .ngx-toastr.div{padding:8px 8px 8px 50px;width:11em}.toast-container .toast-close-button{right:-.2em;top:-.2em}}@media all and (min-width: 241px) and (max-width: 480px){.toast-container .ngx-toastr.div{padding:8px 8px 8px 50px;width:18em}.toast-container .toast-close-button{right:-.2em;top:-.2em}}@media all and (min-width: 481px) and (max-width: 768px){.toast-container .ngx-toastr.div{padding:15px 15px 15px 50px;width:25em}}.la-line-scale-pulse-out-rapid,.la-line-scale-pulse-out-rapid>div{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.la-line-scale-pulse-out-rapid{display:block;font-size:0;color:#fff}.la-line-scale-pulse-out-rapid.la-dark{color:#333}.la-line-scale-pulse-out-rapid>div{display:inline-block;float:none;background-color:currentColor;border:0 solid currentColor}.la-line-scale-pulse-out-rapid{width:40px;height:32px}.la-line-scale-pulse-out-rapid>div{width:4px;height:32px;margin:0 2px;border-radius:0;-webkit-animation:line-scale-pulse-out-rapid .9s infinite cubic-bezier(.11,.49,.38,.78);-moz-animation:line-scale-pulse-out-rapid .9s infinite cubic-bezier(.11,.49,.38,.78);-o-animation:line-scale-pulse-out-rapid .9s infinite cubic-bezier(.11,.49,.38,.78);animation:line-scale-pulse-out-rapid .9s infinite cubic-bezier(.11,.49,.38,.78)}.la-line-scale-pulse-out-rapid>div:nth-child(3){-webkit-animation-delay:-.9s;-moz-animation-delay:-.9s;-o-animation-delay:-.9s;animation-delay:-.9s}.la-line-scale-pulse-out-rapid>div:nth-child(2),.la-line-scale-pulse-out-rapid>div:nth-child(4){-webkit-animation-delay:-.65s;-moz-animation-delay:-.65s;-o-animation-delay:-.65s;animation-delay:-.65s}.la-line-scale-pulse-out-rapid>div:nth-child(1),.la-line-scale-pulse-out-rapid>div:nth-child(5){-webkit-animation-delay:-.4s;-moz-animation-delay:-.4s;-o-animation-delay:-.4s;animation-delay:-.4s}.la-line-scale-pulse-out-rapid.la-sm{width:20px;height:16px}.la-line-scale-pulse-out-rapid.la-sm>div{width:2px;height:16px;margin:0 1px}.la-line-scale-pulse-out-rapid.la-2x{width:80px;height:64px}.la-line-scale-pulse-out-rapid.la-2x>div{width:8px;height:64px;margin:0 4px}.la-line-scale-pulse-out-rapid.la-3x{width:120px;height:96px}.la-line-scale-pulse-out-rapid.la-3x>div{width:12px;height:96px;margin:0 6px}@-webkit-keyframes line-scale-pulse-out-rapid{0%{-webkit-transform:scaley(1);transform:scaley(1)}80%{-webkit-transform:scaley(.3);transform:scaley(.3)}90%{-webkit-transform:scaley(1);transform:scaley(1)}}@-moz-keyframes line-scale-pulse-out-rapid{0%{-moz-transform:scaley(1);transform:scaley(1)}80%{-moz-transform:scaley(.3);transform:scaley(.3)}90%{-moz-transform:scaley(1);transform:scaley(1)}}@-o-keyframes line-scale-pulse-out-rapid{0%{-o-transform:scaley(1);transform:scaley(1)}80%{-o-transform:scaley(.3);transform:scaley(.3)}90%{-o-transform:scaley(1);transform:scaley(1)}}@keyframes line-scale-pulse-out-rapid{0%{-webkit-transform:scaley(1);-moz-transform:scaley(1);-o-transform:scaley(1);transform:scaley(1)}80%{-webkit-transform:scaley(.3);-moz-transform:scaley(.3);-o-transform:scaley(.3);transform:scaley(.3)}90%{-webkit-transform:scaley(1);-moz-transform:scaley(1);-o-transform:scaley(1);transform:scaley(1)}}.tab-panel{border:1px solid #ddd;padding:10px;border-radius:4px}.nav-tabs>li.open,.member-tabset>.nav-tabs>li:hover{border-bottom:4px solid #fbcdcf}.member-tabset>.nav-tabs>li.open>a,.member-tabset>.nav-tabs>li:hover>a{border:0;background:none!important;color:#333}.member-tabset>.nav-tabs>li.open>a>i,.member-tabset>.nav-tabs>li:hover>a>i{color:#a6a6a6}.member-tabset>.nav-tabs>li.open .dropdown-menu,.member-tabset>.nav-tabs>li:hover .dropdown-menu{margin-top:0}.member-tabset>.nav-tabs>li.active{border-bottom:4px solid #E95420;position:relative}.member-tabset>.nav-tabs>li.active>a{border:0!important;color:#333}.member-tabset>.nav-tabs>li.active>a>i{color:#404040}.member-tabset>.tab-content{margin-top:-3px;background-color:#000;border:0;border-top:1px solid black} diff --git a/API/wwwroot/styles-E46YTXNM.css b/API/wwwroot/styles-E46YTXNM.css deleted file mode 100644 index 2d1bb68..0000000 --- a/API/wwwroot/styles-E46YTXNM.css +++ /dev/null @@ -1 +0,0 @@ -@charset "UTF-8";.bs-datepicker{display:flex;align-items:stretch;flex-flow:row wrap;background:#fff;box-shadow:0 0 10px #aaa;position:relative;z-index:1}.bs-datepicker:after{clear:both;content:"";display:block}.bs-datepicker bs-day-picker{float:left}.bs-datepicker button:hover,.bs-datepicker button:focus,.bs-datepicker button:active,.bs-datepicker input:hover,.bs-datepicker input:focus,.bs-datepicker input:active,.bs-datepicker-btns button:hover,.bs-datepicker-btns button:focus,.bs-datepicker-btns button:active,.bs-datepicker-predefined-btns button:active,.bs-datepicker-predefined-btns button:focus{outline:none}.bs-datepicker-head{min-width:270px;height:50px;padding:10px;border-radius:3px 3px 0 0;text-align:justify}.bs-datepicker-head:after{content:"";display:inline-block;vertical-align:top;width:100%}.bs-datepicker-head button{display:inline-block;vertical-align:top;padding:0;height:30px;line-height:30px;border:0;background:transparent;text-align:center;cursor:pointer;color:#fff;transition:.3s}.bs-datepicker-head button[disabled],.bs-datepicker-head button[disabled]:hover,.bs-datepicker-head button[disabled]:active{background:#dddddd4d;color:#f5f5f5;cursor:not-allowed}.bs-datepicker-head button.previous span{transform:translate(-1px,-1px)}.bs-datepicker-head button.next span{transform:translate(1px,-1px)}.bs-datepicker-head button.next,.bs-datepicker-head button.previous{border-radius:50%;width:30px;height:30px}.bs-datepicker-head button.next span,.bs-datepicker-head button.previous span{font-size:28px;line-height:1;display:inline-block;position:relative;height:100%;width:100%;border-radius:50%}.bs-datepicker-head button.current{border-radius:15px;max-width:155px;padding:0 13px}.bs-datepicker-head button:hover{background-color:#0000001a}.bs-datepicker-head button:active{background-color:#0003}.bs-datepicker-body{padding:10px;border-radius:0 0 3px 3px;min-height:232px;min-width:278px;border:1px solid #e9edf0}.bs-datepicker-body .days.weeks{position:relative;z-index:1}.bs-datepicker-body table{width:100%;border-collapse:separate;border-spacing:0}.bs-datepicker-body table th{font-size:13px;color:#9aaec1;font-weight:400;text-align:center}.bs-datepicker-body table td{color:#54708b;text-align:center;position:relative;padding:0}.bs-datepicker-body table td span{display:block;margin:0 auto;font-size:13px;border-radius:50%;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.bs-datepicker-body table td:not(.disabled):not(.week) span:not(.disabled):not(.is-other-month){cursor:pointer}.bs-datepicker-body table td.is-highlighted:not(.disabled):not(.selected) span,.bs-datepicker-body table td span.is-highlighted:not(.disabled):not(.selected){background-color:#e9edf0;transition:0s}.bs-datepicker-body table td.is-active-other-month:not(.disabled):not(.selected) span,.bs-datepicker-body table td span.is-active-other-month:not(.disabled):not(.selected){background-color:#e9edf0;transition:0s;cursor:pointer}.bs-datepicker-body table td span.disabled,.bs-datepicker-body table td.disabled span{color:#9aaec1}.bs-datepicker-body table td span.selected,.bs-datepicker-body table td.selected span{color:#fff}.bs-datepicker-body table td span.selected.disabled,.bs-datepicker-body table td.selected.disabled span{opacity:.3}.bs-datepicker-body table td span.is-other-month,.bs-datepicker-body table td.is-other-month span{color:#00000040}.bs-datepicker-body table td.active{position:relative}.bs-datepicker-body table td.active.select-start:before{left:35%}.bs-datepicker-body table td.active.select-end:before{left:-85%}.bs-datepicker-body table td span.active.select-start:after,.bs-datepicker-body table td span.active.select-end:after,.bs-datepicker-body table td.active.select-start span:after,.bs-datepicker-body table td.active.select-end span:after{content:"";display:block;position:absolute;z-index:-1;width:100%;height:100%;transition:.3s;top:0;border-radius:50%}.bs-datepicker-body table td:before,.bs-datepicker-body table td span:before{content:"";display:block;position:absolute;z-index:-1;inset:6px -2px 6px -3px;box-sizing:content-box;background:transparent}.bs-datepicker-body table td.active.select-start+td.active:before{left:-20%}.bs-datepicker-body table td:last-child.active:before{border-radius:0 3px 3px 0;width:125%;left:-25%}.bs-datepicker-body table td span[class*=select-],.bs-datepicker-body table td[class*=select-] span{border-radius:50%;color:#fff}.bs-datepicker-body table.days td.active:not(.select-start):not(.disabled):before,.bs-datepicker-body table.days td.in-range:not(.select-start):not(.disabled):before,.bs-datepicker-body table.days span.active:not(.select-start):not(.disabled):before,.bs-datepicker-body table.days span.in-range:not(.select-start):not(.disabled):before{background:#e9edf0}.bs-datepicker-body table.days span{width:32px;height:32px;line-height:32px}.bs-datepicker-body table.days span.select-start{z-index:2}.bs-datepicker-body table.days span.is-highlighted.in-range:before{right:3px;left:0}.bs-datepicker-body table.days span.in-range.select-end:before{right:4px;left:0}.bs-datepicker-body table.days td.select-start+td.select-end:before,.bs-datepicker-body table.days td.select-start+td.is-highlighted:before,.bs-datepicker-body table.days td.active+td.is-highlighted:before,.bs-datepicker-body table.days td.active+td.select-end:before,.bs-datepicker-body table.days td.in-range+td.is-highlighted:before,.bs-datepicker-body table.days td.in-range+td.select-end:before{background:#e9edf0;width:100%}.bs-datepicker-body table.weeks tr td:nth-child(2).active:before{border-radius:3px 0 0 3px;left:0;width:100%}.bs-datepicker-body table:not(.weeks) tr td:first-child:before{border-radius:3px 0 0 3px}.bs-datepicker-body table.years td span{width:46px;height:46px;line-height:45px;margin:0 auto}.bs-datepicker-body table.years tr:not(:last-child) td span{margin-bottom:8px}.bs-datepicker-body table.months td{height:52px}.bs-datepicker-body table.months td span{padding:6px;border-radius:15px}.bs-datepicker .current-timedate{color:#54708b;font-size:15px;text-align:center;height:30px;line-height:30px;border-radius:20px;border:1px solid #e9edf0;margin-bottom:10px;cursor:pointer;text-transform:uppercase;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.bs-datepicker .current-timedate span:not(:empty):before{content:"";width:15px;height:16px;display:inline-block;margin-right:4px;vertical-align:text-bottom;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAQCAYAAADJViUEAAABMklEQVQoU9VTwW3CQBCcOUgBtEBKSAukAnBKME+wFCAlYIhk8sQlxFABtJAScAsuAPBEewYcxCP8ouxrPDsza61uiVN1o6RNHD4htSCmq49RfO71BvMJqBBkITRf1kmUW49nQRC9h1I5AZlBClaL8aP1fKgOOxCx8aSLs+Q19eZuNO8QmPqJRtDFguy7OAcDbJPs+/BKVPDIPrvD2ZJgWAmVe7O0rI0Vqs1seyWUXpuJoppYCa5L+U++NpNPkr5OE2oMdARsb3gykJT5ydZcL8Z9Ww60nxg2LhjON9li9OwXZzo+xLbp3nC2s9CL2RrueGyVrgwNm8HpsCzZ9EEW6kqXlo1GQe03FzP/7W8Hl0dBtu7Bf7zt6mIwvX1RvzDCm7+q3mAW0Dl/GPdUCeXrZLT9BrDrGkm4qlPvAAAAAElFTkSuQmCC)}.bs-datepicker-multiple{border-radius:4px 0 0 4px}.bs-datepicker-multiple+.bs-datepicker-multiple{margin-left:10px}.bs-datepicker-multiple .bs-datepicker{box-shadow:none;position:relative}.bs-datepicker-multiple .bs-datepicker:not(:last-child){padding-right:10px}.bs-datepicker-multiple .bs-datepicker+.bs-datepicker:after{content:"";display:block;width:14px;height:10px;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA8AAAAKCAYAAABrGwT5AAAA1ElEQVQoU42RsQrCUAxF77VuDu7O4oMWW//BURBBpZvgKk4uIrjoqKOTf+DopIO4uYggtFTfw3+pkQqCW1/G5J7kJiFy4m5MxUlxAzgIPHX+lzMPzupRYlYgxiR7vqsOP8YKzsTx0yxFMCUZ+q7aZzlr+OvgoWcAFyAHgat2jLWu48252DdqAihDJGSSJNUUxYmQjs3+hPQBlAh2rG2LCOPnaw3IiGDX99TRCs7ASJsNhUOA7d/LcuHvRG22FIZvsNXw1MX6VZExCilOQKEfeLXr/10+aC9Ho7arh7oAAAAASUVORK5CYII=);position:absolute;top:25px;left:-8px}.bs-datepicker-multiple .bs-datepicker .left{float:left}.bs-datepicker-multiple .bs-datepicker .right{float:right}.bs-datepicker-container{padding:15px}.bs-datepicker .bs-media-container{display:flex}@media (max-width: 768px){.bs-datepicker .bs-media-container{flex-direction:column}}.bs-datepicker .bs-timepicker-in-datepicker-container{display:flex;justify-content:space-around}.bs-datepicker-custom-range{padding:15px;background:#eee}.bs-datepicker-predefined-btns button{width:100%;display:block;height:30px;background-color:#9aaec1;border-radius:4px;color:#fff;border:0;margin-bottom:10px;padding:0 18px;text-align:left;transition:.3s}.bs-datepicker-predefined-btns button:hover{background-color:#54708b}.bs-datepicker-buttons{display:flex;flex-flow:row wrap;justify-content:flex-end;padding-top:10px;border-top:1px solid #e9edf0}.bs-datepicker-buttons .btn-default{margin-left:10px}.bs-datepicker-buttons .btn-today-wrapper{display:flex;flex-flow:row wrap}.bs-datepicker-buttons .clear-right,.bs-datepicker-buttons .today-right{flex-grow:0}.bs-datepicker-buttons .clear-left,.bs-datepicker-buttons .today-left{flex-grow:1}.bs-datepicker-buttons .clear-center,.bs-datepicker-buttons .today-center{flex-grow:.5}.bs-timepicker-container{padding:10px 0}.bs-timepicker-label{color:#54708b;margin-bottom:10px}.bs-timepicker-controls{display:inline-block;vertical-align:top;margin-right:10px}.bs-timepicker-controls button{width:20px;height:20px;border-radius:50%;border:0;background-color:#e9edf0;color:#54708b;font-size:16px;font-weight:700;vertical-align:middle;line-height:0;padding:0;transition:.3s}.bs-timepicker-controls button:hover{background-color:#d5dadd}.bs-timepicker-controls input{width:35px;height:25px;border-radius:13px;text-align:center;border:1px solid #e9edf0}.bs-timepicker .switch-time-format{text-transform:uppercase;min-width:54px;height:25px;border-radius:20px;border:1px solid #e9edf0;background:#fff;color:#54708b;font-size:13px}.bs-timepicker .switch-time-format img{vertical-align:initial;margin-left:4px}bs-datepicker-container,bs-daterangepicker-container{z-index:1080}@media (max-width: 768px){.bs-datepicker{width:min-content;justify-content:center}.bs-datepicker-multiple{display:flex}.bs-datepicker-multiple+.bs-datepicker-multiple{margin-top:10px;margin-left:0}}.theme-default .bs-datepicker-head{background-color:#777}.theme-default .btn-today-wrapper .btn-success,.theme-default .btn-clear-wrapper .btn-success{background-color:#777;border-color:#777}.theme-default .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-default .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-default .btn-today-wrapper .btn-success:focus,.theme-default .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-default .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-default .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#616161;border-color:#616161}.theme-default .btn-today-wrapper .btn-success:hover,.theme-default .btn-clear-wrapper .btn-success:hover{background-color:#6f6e6e;border-color:#6f6e6e}.theme-default .bs-datepicker-predefined-btns button.selected{background-color:#777}.theme-default .bs-datepicker-body table td span.selected,.theme-default .bs-datepicker-body table td.selected span,.theme-default .bs-datepicker-body table td span[class*=select-]:after,.theme-default .bs-datepicker-body table td[class*=select-] span:after{background-color:#777}.theme-default .bs-datepicker-body table td.week span{color:#777}.theme-default .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#777;color:#fff;opacity:.5;transition:0s}.theme-green .bs-datepicker-head{background-color:#5cb85c}.theme-green .btn-today-wrapper .btn-success,.theme-green .btn-clear-wrapper .btn-success{background-color:#5cb85c;border-color:#5cb85c}.theme-green .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-green .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-green .btn-today-wrapper .btn-success:focus,.theme-green .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-green .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-green .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#1e7e34;border-color:#1e7e34}.theme-green .btn-today-wrapper .btn-success:hover,.theme-green .btn-clear-wrapper .btn-success:hover{background-color:#218838;border-color:#218838}.theme-green .bs-datepicker-predefined-btns button.selected{background-color:#5cb85c}.theme-green .bs-datepicker-body table td span.selected,.theme-green .bs-datepicker-body table td.selected span,.theme-green .bs-datepicker-body table td span[class*=select-]:after,.theme-green .bs-datepicker-body table td[class*=select-] span:after{background-color:#5cb85c}.theme-green .bs-datepicker-body table td.week span{color:#5cb85c}.theme-green .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#5cb85c;color:#fff;opacity:.5;transition:0s}.theme-blue .bs-datepicker-head{background-color:#5bc0de}.theme-blue .btn-today-wrapper .btn-success,.theme-blue .btn-clear-wrapper .btn-success{background-color:#5bc0de;border-color:#5bc0de}.theme-blue .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-blue .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-blue .btn-today-wrapper .btn-success:focus,.theme-blue .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-blue .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-blue .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#2aa8cd;border-color:#2aa8cd}.theme-blue .btn-today-wrapper .btn-success:hover,.theme-blue .btn-clear-wrapper .btn-success:hover{background-color:#3ab3d7;border-color:#3ab3d7}.theme-blue .bs-datepicker-predefined-btns button.selected{background-color:#5bc0de}.theme-blue .bs-datepicker-body table td span.selected,.theme-blue .bs-datepicker-body table td.selected span,.theme-blue .bs-datepicker-body table td span[class*=select-]:after,.theme-blue .bs-datepicker-body table td[class*=select-] span:after{background-color:#5bc0de}.theme-blue .bs-datepicker-body table td.week span{color:#5bc0de}.theme-blue .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#5bc0de;color:#fff;opacity:.5;transition:0s}.theme-dark-blue .bs-datepicker-head{background-color:#337ab7}.theme-dark-blue .btn-today-wrapper .btn-success,.theme-dark-blue .btn-clear-wrapper .btn-success{background-color:#337ab7;border-color:#337ab7}.theme-dark-blue .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-dark-blue .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-dark-blue .btn-today-wrapper .btn-success:focus,.theme-dark-blue .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-dark-blue .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-dark-blue .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#266498;border-color:#266498}.theme-dark-blue .btn-today-wrapper .btn-success:hover,.theme-dark-blue .btn-clear-wrapper .btn-success:hover{background-color:#2c6fa9;border-color:#2c6fa9}.theme-dark-blue .bs-datepicker-predefined-btns button.selected{background-color:#337ab7}.theme-dark-blue .bs-datepicker-body table td span.selected,.theme-dark-blue .bs-datepicker-body table td.selected span,.theme-dark-blue .bs-datepicker-body table td span[class*=select-]:after,.theme-dark-blue .bs-datepicker-body table td[class*=select-] span:after{background-color:#337ab7}.theme-dark-blue .bs-datepicker-body table td.week span{color:#337ab7}.theme-dark-blue .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#337ab7;color:#fff;opacity:.5;transition:0s}.theme-red .bs-datepicker-head{background-color:#d9534f}.theme-red .btn-today-wrapper .btn-success,.theme-red .btn-clear-wrapper .btn-success{background-color:#d9534f;border-color:#d9534f}.theme-red .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-red .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-red .btn-today-wrapper .btn-success:focus,.theme-red .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-red .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-red .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#d23531;border-color:#d23531}.theme-red .btn-today-wrapper .btn-success:hover,.theme-red .btn-clear-wrapper .btn-success:hover{background-color:#e33732;border-color:#e33732}.theme-red .bs-datepicker-predefined-btns button.selected{background-color:#d9534f}.theme-red .bs-datepicker-body table td span.selected,.theme-red .bs-datepicker-body table td.selected span,.theme-red .bs-datepicker-body table td span[class*=select-]:after,.theme-red .bs-datepicker-body table td[class*=select-] span:after{background-color:#d9534f}.theme-red .bs-datepicker-body table td.week span{color:#d9534f}.theme-red .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#d9534f;color:#fff;opacity:.5;transition:0s}.theme-orange .bs-datepicker-head{background-color:#f0ad4e}.theme-orange .btn-today-wrapper .btn-success,.theme-orange .btn-clear-wrapper .btn-success{background-color:#f0ad4e;border-color:#f0ad4e}.theme-orange .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active:focus,.theme-orange .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active:focus{box-shadow:none}.theme-orange .btn-today-wrapper .btn-success:focus,.theme-orange .btn-clear-wrapper .btn-success:focus{box-shadow:none}.theme-orange .btn-today-wrapper .btn-success:not(:disabled):not(.disabled):active,.theme-orange .btn-clear-wrapper .btn-success:not(:disabled):not(.disabled):active{background-color:#ed9c29;border-color:#ed9c29}.theme-orange .btn-today-wrapper .btn-success:hover,.theme-orange .btn-clear-wrapper .btn-success:hover{background-color:#ffac35;border-color:#ffac35}.theme-orange .bs-datepicker-predefined-btns button.selected{background-color:#f0ad4e}.theme-orange .bs-datepicker-body table td span.selected,.theme-orange .bs-datepicker-body table td.selected span,.theme-orange .bs-datepicker-body table td span[class*=select-]:after,.theme-orange .bs-datepicker-body table td[class*=select-] span:after{background-color:#f0ad4e}.theme-orange .bs-datepicker-body table td.week span{color:#f0ad4e}.theme-orange .bs-datepicker-body table td.active-week span:hover{cursor:pointer;background-color:#f0ad4e;color:#fff;opacity:.5;transition:0s}:root,[data-bs-theme=light]{--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-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--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-color-rgb:33,37,41;--bs-body-bg:#fff;--bs-body-bg-rgb:255,255,255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(33, 37, 41, .75);--bs-secondary-color-rgb:33,37,41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(33, 37, 41, .5);--bs-tertiary-color-rgb:33,37,41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13,110,253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10,88,202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--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-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-box-shadow-sm:0 .125rem .25rem rgba(0, 0, 0, .075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, .175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, .075);--bs-focus-ring-width:.25rem;--bs-focus-ring-opacity:.25;--bs-focus-ring-color:rgba(13, 110, 253, .25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, .75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52,58,64;--bs-tertiary-color:rgba(222, 226, 230, .5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43,48,53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110,168,254;--bs-link-hover-color-rgb:139,185,254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, .15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}.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}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.table{--bs-table-color-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:var(--bs-emphasis-color);--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:var(--bs-border-color);--bs-table-accent-bg:transparent;--bs-table-striped-color:var(--bs-emphasis-color);--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), .05);--bs-table-active-color:var(--bs-emphasis-color);--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), .1);--bs-table-hover-color:var(--bs-emphasis-color);--bs-table-hover-bg:rgba(var(--bs-emphasis-color-rgb), .075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table-primary{--bs-table-color:#000;--bs-table-bg:#cfe2ff;--bs-table-border-color:#a6b5cc;--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:#b5b6b7;--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:#a7b9b1;--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:#a6c3ca;--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:#ccc2a4;--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:#c6acae;--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:#c6c7c8;--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:#4d5154;--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)}.col-form-label{padding-top:calc(.375rem + var(--bs-border-width));padding-bottom:calc(.375rem + var(--bs-border-width));margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + var(--bs-border-width));padding-bottom:calc(.5rem + var(--bs-border-width));font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + var(--bs-border-width));padding-bottom:calc(.25rem + var(--bs-border-width));font-size:.875rem}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-clip:padding-box;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control:focus{color:var(--bs-body-color);background-color:var(--bs-body-bg);border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.form-control:disabled{background-color:var(--bs-secondary-bg);opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:var(--bs-body-color);background-color:var(--bs-tertiary-bg);pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:var(--bs-border-width);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}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:var(--bs-secondary-bg)}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:var(--bs-secondary-bg)}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:var(--bs-border-width) 0}.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2));padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2));padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}textarea.form-control{min-height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2))}textarea.form-control-sm{min-height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}textarea.form-control-lg{min-height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-control-color{width:3rem;height:calc(1.5em + .75rem + calc(var(--bs-border-width) * 2));padding:.375rem}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + calc(var(--bs-border-width) * 2))}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + calc(var(--bs-border-width) * 2))}.form-select{--bs-form-select-bg-img: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");display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-body-bg);background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.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:var(--bs-secondary-bg)}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 var(--bs-body-color)}.form-check-input{--bs-form-check-bg:var(--bs-body-bg);flex-shrink:0;width:1em;height:1em;margin-top:.25em;vertical-align:top;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:var(--bs-border-width) solid var(--bs-border-color);-webkit-print-color-adjust:exact;color-adjust:exact;print-color-adjust:exact}.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[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;--bs-form-check-bg-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-switch .form-check-input:focus{--bs-form-switch-bg: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-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::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;-webkit-appearance:none;appearance:none;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}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-thumb{width:1rem;height:1rem;-moz-appearance:none;appearance:none;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}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + calc(var(--bs-border-width) * 2));min-height:calc(3.5rem + calc(var(--bs-border-width) * 2));line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;max-width:100%;height:100%;padding:1rem .75rem;overflow:hidden;color:rgba(var(--bs-body-color-rgb),.65);text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:var(--bs-border-width) solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}.form-floating>.form-control,.form-floating>.form-control-plaintext{padding:1rem .75rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem;padding-left:.75rem}.form-floating>textarea:focus~label:after,.form-floating>textarea:not(:placeholder-shown)~label:after{position:absolute;inset:1rem .375rem;z-index:-1;height:1.5em;content:"";background-color:var(--bs-body-bg);border-radius:var(--bs-border-radius)}.form-floating>textarea:disabled~label:after{background-color:var(--bs-secondary-bg)}.form-floating>.form-control-plaintext~label{border-width:var(--bs-border-width) 0}.form-floating>.form-control:disabled~label,.form-floating>:disabled~label{color:#6c757d}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:var(--bs-body-color);text-align:center;white-space:nowrap;background-color:var(--bs-tertiary-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:calc(-1 * var(--bs-border-width));border-top-left-radius:0;border-bottom-left-radius:0}.form-control.is-valid,.was-validated .form-control:valid{border-color:var(--bs-form-valid-border-color);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.1'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.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"]{--bs-form-select-bg-icon: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.1'/%3e%3c/svg%3e");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:var(--bs-form-invalid-border-color);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-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"]{--bs-form-select-bg-icon: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");padding-right:4.125rem;background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.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:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--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;-moz-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}.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:0 0 0 #000;--bs-btn-focus-shadow-rgb:49,132,253;text-decoration:underline}.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:var(--bs-body-color);--bs-dropdown-bg:var(--bs-body-bg);--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:var(--bs-border-color-translucent);--bs-dropdown-divider-margin-y:.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:var(--bs-body-color);--bs-dropdown-link-hover-color:var(--bs-body-color);--bs-dropdown-link-hover-bg:var(--bs-tertiary-bg);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#0d6efd;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--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-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}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.nav-link:focus-visible{outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:var(--bs-border-color);--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:var(--bs-secondary-bg) var(--bs-secondary-bg) var(--bs-border-color);--bs-nav-tabs-link-active-color:var(--bs-emphasis-color);--bs-nav-tabs-link-active-bg:var(--bs-body-bg);--bs-nav-tabs-link-active-border-color:var(--bs-border-color) var(--bs-border-color) var(--bs-body-bg);border-bottom:var(--bs-nav-tabs-border-width) solid var(--bs-nav-tabs-border-color)}.nav-pills{--bs-nav-pills-border-radius:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#0d6efd}.nav-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:.125rem;--bs-nav-underline-link-active-color:var(--bs-emphasis-color);gap:var(--bs-nav-underline-gap)}.navbar{--bs-navbar-padding-x:0;--bs-navbar-padding-y:.5rem;--bs-navbar-color:rgba(var(--bs-emphasis-color-rgb), .65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), .8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), .3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--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%2833, 37, 41, 0.75%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(var(--bs-emphasis-color-rgb), .15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--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-dark,.navbar[data-bs-theme=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-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y:.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb), .03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:var(--bs-body-bg);--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);color:var(--bs-body-color);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)}.accordion{--bs-accordion-color:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--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:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--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='none' stroke='%23212529' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%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='none' stroke='%23052c65' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");--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:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}[data-bs-theme=dark] .accordion-button:after{--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%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-.708'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%236ea8fe'%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-.708'/%3e%3c/svg%3e")}.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:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);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)}.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:var(--bs-body-bg);--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:var(--bs-border-color);--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:var(--bs-link-hover-color);--bs-pagination-hover-bg:var(--bs-tertiary-bg);--bs-pagination-hover-border-color:var(--bs-border-color);--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--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:var(--bs-secondary-color);--bs-pagination-disabled-bg:var(--bs-secondary-bg);--bs-pagination-disabled-border-color:var(--bs-border-color);display:flex;padding-left:0;list-style:none}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:.75rem;--bs-progress-bg:var(--bs-secondary-bg);--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--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)}.list-group{--bs-list-group-color:var(--bs-body-color);--bs-list-group-bg:var(--bs-body-bg);--bs-list-group-border-color:var(--bs-border-color);--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:.5rem;--bs-list-group-action-color:var(--bs-secondary-color);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-tertiary-bg);--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:var(--bs-secondary-bg);--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:var(--bs-body-bg);--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)}.btn-close{--bs-btn-close-color:#000;--bs-btn-close-bg: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.414'/%3e%3c/svg%3e");--bs-btn-close-opacity:.5;--bs-btn-close-hover-opacity:.75;--bs-btn-close-focus-shadow:0 0 0 .25rem rgba(13, 110, 253, .25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:.25;box-sizing:content-box;width:1em;height:1em;padding:.25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;filter:var(--bs-btn-close-filter);border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.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(var(--bs-body-bg-rgb), .85);--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:var(--bs-border-color-translucent);--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:var(--bs-secondary-color);--bs-toast-header-bg:rgba(var(--bs-body-bg-rgb), .85);--bs-toast-header-border-color:var(--bs-border-color-translucent);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)}.modal{--bs-modal-zindex:1055;--bs-modal-width:500px;--bs-modal-padding:1rem;--bs-modal-margin:.5rem;--bs-modal-color:var(--bs-body-color);--bs-modal-bg:var(--bs-body-bg);--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--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:var(--bs-border-width);--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:var(--bs-border-width);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}.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:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:.9;--bs-tooltip-arrow-width:.8rem;--bs-tooltip-arrow-height:.4rem;z-index:var(--bs-tooltip-zindex);display:block;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}.popover{--bs-popover-zindex:1070;--bs-popover-max-width:276px;--bs-popover-font-size:.875rem;--bs-popover-bg:var(--bs-body-bg);--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:inherit;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--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)}.text-bg-info{color:#000!important;background-color:RGBA(var(--bs-info-rgb),var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#000!important;background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity,1))!important}.text-bg-light{color:#000!important;background-color:RGBA(var(--bs-light-rgb),var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#fff!important;background-color:RGBA(var(--bs-dark-rgb),var(--bs-bg-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(10,88,202,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(10,88,202,var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(86,94,100,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(86,94,100,var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(20,108,67,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(20,108,67,var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(61,213,243,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(61,213,243,var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(255,205,57,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(255,205,57,var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(176,42,55,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(176,42,55,var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(249,250,251,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(249,250,251,var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(26,30,33,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(26,30,33,var(--bs-link-underline-opacity,1))!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}@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}}@font-face{font-family:FontAwesome;src:url("./media/fontawesome-webfont-FMJ3VJ65.eot?v=4.7.0");src:url("./media/fontawesome-webfont-FMJ3VJ65.eot?#iefix&v=4.7.0") format("embedded-opentype"),url("./media/fontawesome-webfont-5GKVPAEF.woff2?v=4.7.0") format("woff2"),url("./media/fontawesome-webfont-Z4ARLA73.woff?v=4.7.0") format("woff"),url("./media/fontawesome-webfont-RJ6LE7IU.ttf?v=4.7.0") format("truetype"),url("./media/fontawesome-webfont-3KIJVIEY.svg?v=4.7.0#fontawesomeregular") format("svg");font-weight:400;font-style:normal}.fa{display:inline-block;font: 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.33333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.28571429em;text-align:center}.fa-ul{padding-left:0;margin-left:2.14285714em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.14285714em;width:2.14285714em;top:.14285714em;text-align:center}.fa-li.fa-lg{left:-1.85714286em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left{margin-right:.3em}.fa.fa-pull-right{margin-left:.3em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s infinite linear;animation:fa-spin 2s infinite linear}.fa-pulse{-webkit-animation:fa-spin 1s infinite steps(8);animation:fa-spin 1s infinite steps(8)}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);-ms-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scale(-1,1);-ms-transform:scale(-1,1);transform:scaleX(-1)}.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";-webkit-transform:scale(1,-1);-ms-transform:scale(1,-1);transform:scaleY(-1)}:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270,:root .fa-flip-horizontal,:root .fa-flip-vertical{filter:none}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-remove:before,.fa-close:before,.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-photo:before,.fa-image:before,.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before,.fa-bar-chart:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook-f:before,.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-feed:before,.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-navicon:before,.fa-reorder:before,.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-desc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-asc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-mail-reply-all:before,.fa-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before,.fa-gratipay:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"}.fa-space-shuttle:before{content:"\f197"}.fa-slack:before{content:"\f198"}.fa-envelope-square:before{content:"\f199"}.fa-wordpress:before{content:"\f19a"}.fa-openid:before{content:"\f19b"}.fa-institution:before,.fa-bank:before,.fa-university:before{content:"\f19c"}.fa-mortar-board:before,.fa-graduation-cap:before{content:"\f19d"}.fa-yahoo:before{content:"\f19e"}.fa-google:before{content:"\f1a0"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-square:before{content:"\f1a2"}.fa-stumbleupon-circle:before{content:"\f1a3"}.fa-stumbleupon:before{content:"\f1a4"}.fa-delicious:before{content:"\f1a5"}.fa-digg:before{content:"\f1a6"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-drupal:before{content:"\f1a9"}.fa-joomla:before{content:"\f1aa"}.fa-language:before{content:"\f1ab"}.fa-fax:before{content:"\f1ac"}.fa-building:before{content:"\f1ad"}.fa-child:before{content:"\f1ae"}.fa-paw:before{content:"\f1b0"}.fa-spoon:before{content:"\f1b1"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-recycle:before{content:"\f1b8"}.fa-automobile:before,.fa-car:before{content:"\f1b9"}.fa-cab:before,.fa-taxi:before{content:"\f1ba"}.fa-tree:before{content:"\f1bb"}.fa-spotify:before{content:"\f1bc"}.fa-deviantart:before{content:"\f1bd"}.fa-soundcloud:before{content:"\f1be"}.fa-database:before{content:"\f1c0"}.fa-file-pdf-o:before{content:"\f1c1"}.fa-file-word-o:before{content:"\f1c2"}.fa-file-excel-o:before{content:"\f1c3"}.fa-file-powerpoint-o:before{content:"\f1c4"}.fa-file-photo-o:before,.fa-file-picture-o:before,.fa-file-image-o:before{content:"\f1c5"}.fa-file-zip-o:before,.fa-file-archive-o:before{content:"\f1c6"}.fa-file-sound-o:before,.fa-file-audio-o:before{content:"\f1c7"}.fa-file-movie-o:before,.fa-file-video-o:before{content:"\f1c8"}.fa-file-code-o:before{content:"\f1c9"}.fa-vine:before{content:"\f1ca"}.fa-codepen:before{content:"\f1cb"}.fa-jsfiddle:before{content:"\f1cc"}.fa-life-bouy:before,.fa-life-buoy:before,.fa-life-saver:before,.fa-support:before,.fa-life-ring:before{content:"\f1cd"}.fa-circle-o-notch:before{content:"\f1ce"}.fa-ra:before,.fa-resistance:before,.fa-rebel:before{content:"\f1d0"}.fa-ge:before,.fa-empire:before{content:"\f1d1"}.fa-git-square:before{content:"\f1d2"}.fa-git:before{content:"\f1d3"}.fa-y-combinator-square:before,.fa-yc-square:before,.fa-hacker-news:before{content:"\f1d4"}.fa-tencent-weibo:before{content:"\f1d5"}.fa-qq:before{content:"\f1d6"}.fa-wechat:before,.fa-weixin:before{content:"\f1d7"}.fa-send:before,.fa-paper-plane:before{content:"\f1d8"}.fa-send-o:before,.fa-paper-plane-o:before{content:"\f1d9"}.fa-history:before{content:"\f1da"}.fa-circle-thin:before{content:"\f1db"}.fa-header:before{content:"\f1dc"}.fa-paragraph:before{content:"\f1dd"}.fa-sliders:before{content:"\f1de"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-bomb:before{content:"\f1e2"}.fa-soccer-ball-o:before,.fa-futbol-o:before{content:"\f1e3"}.fa-tty:before{content:"\f1e4"}.fa-binoculars:before{content:"\f1e5"}.fa-plug:before{content:"\f1e6"}.fa-slideshare:before{content:"\f1e7"}.fa-twitch:before{content:"\f1e8"}.fa-yelp:before{content:"\f1e9"}.fa-newspaper-o:before{content:"\f1ea"}.fa-wifi:before{content:"\f1eb"}.fa-calculator:before{content:"\f1ec"}.fa-paypal:before{content:"\f1ed"}.fa-google-wallet:before{content:"\f1ee"}.fa-cc-visa:before{content:"\f1f0"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-bell-slash:before{content:"\f1f6"}.fa-bell-slash-o:before{content:"\f1f7"}.fa-trash:before{content:"\f1f8"}.fa-copyright:before{content:"\f1f9"}.fa-at:before{content:"\f1fa"}.fa-eyedropper:before{content:"\f1fb"}.fa-paint-brush:before{content:"\f1fc"}.fa-birthday-cake:before{content:"\f1fd"}.fa-area-chart:before{content:"\f1fe"}.fa-pie-chart:before{content:"\f200"}.fa-line-chart:before{content:"\f201"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-toggle-off:before{content:"\f204"}.fa-toggle-on:before{content:"\f205"}.fa-bicycle:before{content:"\f206"}.fa-bus:before{content:"\f207"}.fa-ioxhost:before{content:"\f208"}.fa-angellist:before{content:"\f209"}.fa-cc:before{content:"\f20a"}.fa-shekel:before,.fa-sheqel:before,.fa-ils:before{content:"\f20b"}.fa-meanpath:before{content:"\f20c"}.fa-buysellads:before{content:"\f20d"}.fa-connectdevelop:before{content:"\f20e"}.fa-dashcube:before{content:"\f210"}.fa-forumbee:before{content:"\f211"}.fa-leanpub:before{content:"\f212"}.fa-sellsy:before{content:"\f213"}.fa-shirtsinbulk:before{content:"\f214"}.fa-simplybuilt:before{content:"\f215"}.fa-skyatlas:before{content:"\f216"}.fa-cart-plus:before{content:"\f217"}.fa-cart-arrow-down:before{content:"\f218"}.fa-diamond:before{content:"\f219"}.fa-ship:before{content:"\f21a"}.fa-user-secret:before{content:"\f21b"}.fa-motorcycle:before{content:"\f21c"}.fa-street-view:before{content:"\f21d"}.fa-heartbeat:before{content:"\f21e"}.fa-venus:before{content:"\f221"}.fa-mars:before{content:"\f222"}.fa-mercury:before{content:"\f223"}.fa-intersex:before,.fa-transgender:before{content:"\f224"}.fa-transgender-alt:before{content:"\f225"}.fa-venus-double:before{content:"\f226"}.fa-mars-double:before{content:"\f227"}.fa-venus-mars:before{content:"\f228"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-neuter:before{content:"\f22c"}.fa-genderless:before{content:"\f22d"}.fa-facebook-official:before{content:"\f230"}.fa-pinterest-p:before{content:"\f231"}.fa-whatsapp:before{content:"\f232"}.fa-server:before{content:"\f233"}.fa-user-plus:before{content:"\f234"}.fa-user-times:before{content:"\f235"}.fa-hotel:before,.fa-bed:before{content:"\f236"}.fa-viacoin:before{content:"\f237"}.fa-train:before{content:"\f238"}.fa-subway:before{content:"\f239"}.fa-medium:before{content:"\f23a"}.fa-yc:before,.fa-y-combinator:before{content:"\f23b"}.fa-optin-monster:before{content:"\f23c"}.fa-opencart:before{content:"\f23d"}.fa-expeditedssl:before{content:"\f23e"}.fa-battery-4:before,.fa-battery:before,.fa-battery-full:before{content:"\f240"}.fa-battery-3:before,.fa-battery-three-quarters:before{content:"\f241"}.fa-battery-2:before,.fa-battery-half:before{content:"\f242"}.fa-battery-1:before,.fa-battery-quarter:before{content:"\f243"}.fa-battery-0:before,.fa-battery-empty:before{content:"\f244"}.fa-mouse-pointer:before{content:"\f245"}.fa-i-cursor:before{content:"\f246"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-sticky-note:before{content:"\f249"}.fa-sticky-note-o:before{content:"\f24a"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-diners-club:before{content:"\f24c"}.fa-clone:before{content:"\f24d"}.fa-balance-scale:before{content:"\f24e"}.fa-hourglass-o:before{content:"\f250"}.fa-hourglass-1:before,.fa-hourglass-start:before{content:"\f251"}.fa-hourglass-2:before,.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-3:before,.fa-hourglass-end:before{content:"\f253"}.fa-hourglass:before{content:"\f254"}.fa-hand-grab-o:before,.fa-hand-rock-o:before{content:"\f255"}.fa-hand-stop-o:before,.fa-hand-paper-o:before{content:"\f256"}.fa-hand-scissors-o:before{content:"\f257"}.fa-hand-lizard-o:before{content:"\f258"}.fa-hand-spock-o:before{content:"\f259"}.fa-hand-pointer-o:before{content:"\f25a"}.fa-hand-peace-o:before{content:"\f25b"}.fa-trademark:before{content:"\f25c"}.fa-registered:before{content:"\f25d"}.fa-creative-commons:before{content:"\f25e"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-tripadvisor:before{content:"\f262"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-get-pocket:before{content:"\f265"}.fa-wikipedia-w:before{content:"\f266"}.fa-safari:before{content:"\f267"}.fa-chrome:before{content:"\f268"}.fa-firefox:before{content:"\f269"}.fa-opera:before{content:"\f26a"}.fa-internet-explorer:before{content:"\f26b"}.fa-tv:before,.fa-television:before{content:"\f26c"}.fa-contao:before{content:"\f26d"}.fa-500px:before{content:"\f26e"}.fa-amazon:before{content:"\f270"}.fa-calendar-plus-o:before{content:"\f271"}.fa-calendar-minus-o:before{content:"\f272"}.fa-calendar-times-o:before{content:"\f273"}.fa-calendar-check-o:before{content:"\f274"}.fa-industry:before{content:"\f275"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-map-o:before{content:"\f278"}.fa-map:before{content:"\f279"}.fa-commenting:before{content:"\f27a"}.fa-commenting-o:before{content:"\f27b"}.fa-houzz:before{content:"\f27c"}.fa-vimeo:before{content:"\f27d"}.fa-black-tie:before{content:"\f27e"}.fa-fonticons:before{content:"\f280"}.fa-reddit-alien:before{content:"\f281"}.fa-edge:before{content:"\f282"}.fa-credit-card-alt:before{content:"\f283"}.fa-codiepie:before{content:"\f284"}.fa-modx:before{content:"\f285"}.fa-fort-awesome:before{content:"\f286"}.fa-usb:before{content:"\f287"}.fa-product-hunt:before{content:"\f288"}.fa-mixcloud:before{content:"\f289"}.fa-scribd:before{content:"\f28a"}.fa-pause-circle:before{content:"\f28b"}.fa-pause-circle-o:before{content:"\f28c"}.fa-stop-circle:before{content:"\f28d"}.fa-stop-circle-o:before{content:"\f28e"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-hashtag:before{content:"\f292"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-percent:before{content:"\f295"}.fa-gitlab:before{content:"\f296"}.fa-wpbeginner:before{content:"\f297"}.fa-wpforms:before{content:"\f298"}.fa-envira:before{content:"\f299"}.fa-universal-access:before{content:"\f29a"}.fa-wheelchair-alt:before{content:"\f29b"}.fa-question-circle-o:before{content:"\f29c"}.fa-blind:before{content:"\f29d"}.fa-audio-description:before{content:"\f29e"}.fa-volume-control-phone:before{content:"\f2a0"}.fa-braille:before{content:"\f2a1"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asl-interpreting:before,.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-deafness:before,.fa-hard-of-hearing:before,.fa-deaf:before{content:"\f2a4"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-signing:before,.fa-sign-language:before{content:"\f2a7"}.fa-low-vision:before{content:"\f2a8"}.fa-viadeo:before{content:"\f2a9"}.fa-viadeo-square:before{content:"\f2aa"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-pied-piper:before{content:"\f2ae"}.fa-first-order:before{content:"\f2b0"}.fa-yoast:before{content:"\f2b1"}.fa-themeisle:before{content:"\f2b2"}.fa-google-plus-circle:before,.fa-google-plus-official:before{content:"\f2b3"}.fa-fa:before,.fa-font-awesome:before{content:"\f2b4"}.fa-handshake-o:before{content:"\f2b5"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-o:before{content:"\f2b7"}.fa-linode:before{content:"\f2b8"}.fa-address-book:before{content:"\f2b9"}.fa-address-book-o:before{content:"\f2ba"}.fa-vcard:before,.fa-address-card:before{content:"\f2bb"}.fa-vcard-o:before,.fa-address-card-o:before{content:"\f2bc"}.fa-user-circle:before{content:"\f2bd"}.fa-user-circle-o:before{content:"\f2be"}.fa-user-o:before{content:"\f2c0"}.fa-id-badge:before{content:"\f2c1"}.fa-drivers-license:before,.fa-id-card:before{content:"\f2c2"}.fa-drivers-license-o:before,.fa-id-card-o:before{content:"\f2c3"}.fa-quora:before{content:"\f2c4"}.fa-free-code-camp:before{content:"\f2c5"}.fa-telegram:before{content:"\f2c6"}.fa-thermometer-4:before,.fa-thermometer:before,.fa-thermometer-full:before{content:"\f2c7"}.fa-thermometer-3:before,.fa-thermometer-three-quarters:before{content:"\f2c8"}.fa-thermometer-2:before,.fa-thermometer-half:before{content:"\f2c9"}.fa-thermometer-1:before,.fa-thermometer-quarter:before{content:"\f2ca"}.fa-thermometer-0:before,.fa-thermometer-empty:before{content:"\f2cb"}.fa-shower:before{content:"\f2cc"}.fa-bathtub:before,.fa-s15:before,.fa-bath:before{content:"\f2cd"}.fa-podcast:before{content:"\f2ce"}.fa-window-maximize:before{content:"\f2d0"}.fa-window-minimize:before{content:"\f2d1"}.fa-window-restore:before{content:"\f2d2"}.fa-times-rectangle:before,.fa-window-close:before{content:"\f2d3"}.fa-times-rectangle-o:before,.fa-window-close-o:before{content:"\f2d4"}.fa-bandcamp:before{content:"\f2d5"}.fa-grav:before{content:"\f2d6"}.fa-etsy:before{content:"\f2d7"}.fa-imdb:before{content:"\f2d8"}.fa-ravelry:before{content:"\f2d9"}.fa-eercast:before{content:"\f2da"}.fa-microchip:before{content:"\f2db"}.fa-snowflake-o:before{content:"\f2dc"}.fa-superpowers:before{content:"\f2dd"}.fa-wpexplorer:before{content:"\f2de"}.fa-meetup:before{content:"\f2e0"}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format("woff2");unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format("woff2");unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3GUBGEe.woff2) format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3iUBGEe.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3CUBGEe.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3-UBGEe.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMawCUBGEe.woff2) format("woff2");unicode-range:U+0302-0303,U+0305,U+0307-0308,U+0310,U+0312,U+0315,U+031A,U+0326-0327,U+032C,U+032F-0330,U+0332-0333,U+0338,U+033A,U+0346,U+034D,U+0391-03A1,U+03A3-03A9,U+03B1-03C9,U+03D1,U+03D5-03D6,U+03F0-03F1,U+03F4-03F5,U+2016-2017,U+2034-2038,U+203C,U+2040,U+2043,U+2047,U+2050,U+2057,U+205F,U+2070-2071,U+2074-208E,U+2090-209C,U+20D0-20DC,U+20E1,U+20E5-20EF,U+2100-2112,U+2114-2115,U+2117-2121,U+2123-214F,U+2190,U+2192,U+2194-21AE,U+21B0-21E5,U+21F1-21F2,U+21F4-2211,U+2213-2214,U+2216-22FF,U+2308-230B,U+2310,U+2319,U+231C-2321,U+2336-237A,U+237C,U+2395,U+239B-23B7,U+23D0,U+23DC-23E1,U+2474-2475,U+25AF,U+25B3,U+25B7,U+25BD,U+25C1,U+25CA,U+25CC,U+25FB,U+266D-266F,U+27C0-27FF,U+2900-2AFF,U+2B0E-2B11,U+2B30-2B4C,U+2BFE,U+3030,U+FF5B,U+FF5D,U+1D400-1D7FF,U+1EE00-1EEFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMaxKUBGEe.woff2) format("woff2");unicode-range:U+0001-000C,U+000E-001F,U+007F-009F,U+20DD-20E0,U+20E2-20E4,U+2150-218F,U+2190,U+2192,U+2194-2199,U+21AF,U+21E6-21F0,U+21F3,U+2218-2219,U+2299,U+22C4-22C6,U+2300-243F,U+2440-244A,U+2460-24FF,U+25A0-27BF,U+2800-28FF,U+2921-2922,U+2981,U+29BF,U+29EB,U+2B00-2BFF,U+4DC0-4DFF,U+FFF9-FFFB,U+10140-1018E,U+10190-1019C,U+101A0,U+101D0-101FD,U+102E0-102FB,U+10E60-10E7E,U+1D2C0-1D2D3,U+1D2E0-1D37F,U+1F000-1F0FF,U+1F100-1F1AD,U+1F1E6-1F1FF,U+1F30D-1F30F,U+1F315,U+1F31C,U+1F31E,U+1F320-1F32C,U+1F336,U+1F378,U+1F37D,U+1F382,U+1F393-1F39F,U+1F3A7-1F3A8,U+1F3AC-1F3AF,U+1F3C2,U+1F3C4-1F3C6,U+1F3CA-1F3CE,U+1F3D4-1F3E0,U+1F3ED,U+1F3F1-1F3F3,U+1F3F5-1F3F7,U+1F408,U+1F415,U+1F41F,U+1F426,U+1F43F,U+1F441-1F442,U+1F444,U+1F446-1F449,U+1F44C-1F44E,U+1F453,U+1F46A,U+1F47D,U+1F4A3,U+1F4B0,U+1F4B3,U+1F4B9,U+1F4BB,U+1F4BF,U+1F4C8-1F4CB,U+1F4D6,U+1F4DA,U+1F4DF,U+1F4E3-1F4E6,U+1F4EA-1F4ED,U+1F4F7,U+1F4F9-1F4FB,U+1F4FD-1F4FE,U+1F503,U+1F507-1F50B,U+1F50D,U+1F512-1F513,U+1F53E-1F54A,U+1F54F-1F5FA,U+1F610,U+1F650-1F67F,U+1F687,U+1F68D,U+1F691,U+1F694,U+1F698,U+1F6AD,U+1F6B2,U+1F6B9-1F6BA,U+1F6BC,U+1F6C6-1F6CF,U+1F6D3-1F6D7,U+1F6E0-1F6EA,U+1F6F0-1F6F3,U+1F6F7-1F6FC,U+1F700-1F7FF,U+1F800-1F80B,U+1F810-1F847,U+1F850-1F859,U+1F860-1F887,U+1F890-1F8AD,U+1F8B0-1F8BB,U+1F8C0-1F8C1,U+1F900-1F90B,U+1F93B,U+1F946,U+1F984,U+1F996,U+1F9E9,U+1FA00-1FA6F,U+1FA70-1FA7C,U+1FA80-1FA89,U+1FA8F-1FAC6,U+1FACE-1FADC,U+1FADF-1FAE9,U+1FAF0-1FAF8,U+1FB00-1FBFF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3OUBGEe.woff2) format("woff2");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3KUBGEe.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(https://fonts.gstatic.com/s/roboto/v47/KFO7CnqEu92Fr1ME7kSn66aGLdTylUAMa3yUBA.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root,[data-bs-theme=light]{--bs-blue:#2a9fd6;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#e83e8c;--bs-red:#c00;--bs-orange:#fd7e14;--bs-yellow:#f80;--bs-green:#77b300;--bs-teal:#20c997;--bs-cyan:#93c;--bs-black:#000;--bs-white:#fff;--bs-gray:#555;--bs-gray-dark:#222;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#adafae;--bs-gray-500:#888;--bs-gray-600:#555;--bs-gray-700:#282828;--bs-gray-800:#222;--bs-gray-900:#212529;--bs-primary:#2a9fd6;--bs-secondary:#555;--bs-success:#77b300;--bs-info:#93c;--bs-warning:#f80;--bs-danger:#c00;--bs-light:#222;--bs-dark:#adafae;--bs-primary-rgb:42,159,214;--bs-secondary-rgb:85,85,85;--bs-success-rgb:119,179,0;--bs-info-rgb:153,51,204;--bs-warning-rgb:255,136,0;--bs-danger-rgb:204,0,0;--bs-light-rgb:34,34,34;--bs-dark-rgb:173,175,174;--bs-primary-text-emphasis:#114056;--bs-secondary-text-emphasis:#222222;--bs-success-text-emphasis:#304800;--bs-info-text-emphasis:#3d1452;--bs-warning-text-emphasis:#663600;--bs-danger-text-emphasis:#520000;--bs-light-text-emphasis:#282828;--bs-dark-text-emphasis:#282828;--bs-primary-bg-subtle:#d4ecf7;--bs-secondary-bg-subtle:#dddddd;--bs-success-bg-subtle:#e4f0cc;--bs-info-bg-subtle:#ebd6f5;--bs-warning-bg-subtle:#ffe7cc;--bs-danger-bg-subtle:#f5cccc;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#adafae;--bs-primary-border-subtle:#aad9ef;--bs-secondary-border-subtle:#bbbbbb;--bs-success-border-subtle:#c9e199;--bs-info-border-subtle:#d6adeb;--bs-warning-border-subtle:#ffcf99;--bs-danger-border-subtle:#eb9999;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#888;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-font-sans-serif:Roboto,-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;--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:#adafae;--bs-body-color-rgb:173,175,174;--bs-body-bg:#060606;--bs-body-bg-rgb:6,6,6;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0,0,0;--bs-secondary-color:rgba(173, 175, 174, .75);--bs-secondary-color-rgb:173,175,174;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233,236,239;--bs-tertiary-color:rgba(173, 175, 174, .5);--bs-tertiary-color-rgb:173,175,174;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248,249,250;--bs-heading-color:#fff;--bs-link-color:#2a9fd6;--bs-link-color-rgb:42,159,214;--bs-link-decoration:underline;--bs-link-hover-color:#227fab;--bs-link-hover-color-rgb:34,127,171;--bs-code-color:#e83e8c;--bs-highlight-color:#adafae;--bs-highlight-bg:#ffe7cc;--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-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 .5rem 1rem rgba(0, 0, 0, .15);--bs-box-shadow-sm:0 .125rem .25rem rgba(0, 0, 0, .075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, .175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, .075);--bs-focus-ring-width:.25rem;--bs-focus-ring-opacity:.25;--bs-focus-ring-color:rgba(42, 159, 214, .25);--bs-form-valid-color:#77b300;--bs-form-valid-border-color:#77b300;--bs-form-invalid-color:#c00;--bs-form-invalid-border-color:#c00}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222,226,230;--bs-body-bg:#212529;--bs-body-bg-rgb:33,37,41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255,255,255;--bs-secondary-color:rgba(222, 226, 230, .75);--bs-secondary-color-rgb:222,226,230;--bs-secondary-bg:#222;--bs-secondary-bg-rgb:34,34,34;--bs-tertiary-color:rgba(222, 226, 230, .5);--bs-tertiary-color-rgb:222,226,230;--bs-tertiary-bg:#222426;--bs-tertiary-bg-rgb:34,36,38;--bs-primary-text-emphasis:#7fc5e6;--bs-secondary-text-emphasis:#999999;--bs-success-text-emphasis:#add166;--bs-info-text-emphasis:#c285e0;--bs-warning-text-emphasis:#ffb866;--bs-danger-text-emphasis:#e06666;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#08202b;--bs-secondary-bg-subtle:#111111;--bs-success-bg-subtle:#182400;--bs-info-bg-subtle:#1f0a29;--bs-warning-bg-subtle:#331b00;--bs-danger-bg-subtle:#290000;--bs-light-bg-subtle:#222;--bs-dark-bg-subtle:#111111;--bs-primary-border-subtle:#195f80;--bs-secondary-border-subtle:#333333;--bs-success-border-subtle:#476b00;--bs-info-border-subtle:#5c1f7a;--bs-warning-border-subtle:#995200;--bs-danger-border-subtle:#7a0000;--bs-light-border-subtle:#282828;--bs-dark-border-subtle:#222;--bs-heading-color:inherit;--bs-link-color:#7fc5e6;--bs-link-hover-color:#99d1eb;--bs-link-color-rgb:127,197,230;--bs-link-hover-color-rgb:153,209,235;--bs-code-color:#f18bba;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#663600;--bs-border-color:#282828;--bs-border-color-translucent:rgba(255, 255, 255, .15);--bs-form-valid-color:#add166;--bs-form-valid-border-color:#add166;--bs-form-invalid-color:#e06666;--bs-form-invalid-border-color:#e06666}*,: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:var(--bs-border-width) 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;color:var(--bs-heading-color)}.h1,h1{font-size:calc(1.525rem + 3.3vw)}@media (min-width:1200px){.h1,h1{font-size:4rem}}.h2,h2{font-size:calc(1.425rem + 2.1vw)}@media (min-width:1200px){.h2,h2{font-size:3rem}}.h3,h3{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h3,h3{font-size:2.5rem}}.h4,h4{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h4,h4{font-size:2rem}}.h5,h5{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h5,h5{font-size:1.5rem}}.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;color:var(--bs-highlight-color);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:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,1));text-decoration:underline}a:hover{--bs-link-color-rgb:var(--bs-link-hover-color-rgb)}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;color:inherit}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:var(--bs-secondary-color);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;line-height:inherit;font-size:calc(1.275rem + .3vw)}@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]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}::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-weight:300;line-height:1.2;font-size:calc(1.625rem + 4.5vw)}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-weight:300;line-height:1.2;font-size:calc(1.575rem + 3.9vw)}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-weight:300;line-height:1.2;font-size:calc(1.525rem + 3.3vw)}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-weight:300;line-height:1.2;font-size:calc(1.475rem + 2.7vw)}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-weight:300;line-height:1.2;font-size:calc(1.425rem + 2.1vw)}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-weight:300;line-height:1.2;font-size:calc(1.375rem + 1.5vw)}@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:#555}.blockquote-footer:before{content:"\2014\a0"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:var(--bs-body-bg);border:var(--bs-border-width) solid var(--bs-border-color);border-radius:var(--bs-border-radius);max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:var(--bs-secondary-color)}.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}}:root{--bs-breakpoint-xs:0;--bs-breakpoint-sm:576px;--bs-breakpoint-md:768px;--bs-breakpoint-lg:992px;--bs-breakpoint-xl:1200px;--bs-breakpoint-xxl:1400px}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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.33333333%}.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.66666667%}.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-type:initial;--bs-table-bg-type:initial;--bs-table-color-state:initial;--bs-table-bg-state:initial;--bs-table-color:initial;--bs-table-bg:var(--bs-body-bg);--bs-table-border-color:#282828;--bs-table-accent-bg:rgba(255, 255, 255, .05);--bs-table-striped-color:initial;--bs-table-striped-bg:rgba(var(--bs-emphasis-color-rgb), .05);--bs-table-active-color:initial;--bs-table-active-bg:rgba(var(--bs-emphasis-color-rgb), .1);--bs-table-hover-color:initial;--bs-table-hover-bg:rgba(255, 255, 255, .075);width:100%;margin-bottom:1rem;vertical-align:top;border-color:var(--bs-table-border-color)}.table>:not(caption)>*>*{padding:.5rem;color:var(--bs-table-color-state,var(--bs-table-color-type,var(--bs-table-color)));background-color:var(--bs-table-bg);border-bottom-width:var(--bs-border-width);box-shadow:inset 0 0 0 9999px var(--bs-table-bg-state,var(--bs-table-bg-type,var(--bs-table-accent-bg)))}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table-group-divider{border-top:calc(var(--bs-border-width) * 2) solid currentcolor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem}.table-bordered>:not(caption)>*{border-width:var(--bs-border-width) 0}.table-bordered>:not(caption)>*>*{border-width:0 var(--bs-border-width)}.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-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-striped-columns>:not(caption)>tr>:nth-child(2n){--bs-table-color-type:var(--bs-table-striped-color);--bs-table-bg-type:var(--bs-table-striped-bg)}.table-active{--bs-table-color-state:var(--bs-table-active-color);--bs-table-bg-state:var(--bs-table-active-bg)}.table-hover>tbody>tr:hover>*{--bs-table-color-state:var(--bs-table-hover-color);--bs-table-bg-state:var(--bs-table-hover-bg)}.table-primary{--bs-table-color:#fff;--bs-table-bg:#2a9fd6;--bs-table-border-color:#55b2de;--bs-table-striped-bg:#35a4d8;--bs-table-striped-color:#fff;--bs-table-active-bg:#3fa9da;--bs-table-active-color:#fff;--bs-table-hover-bg:#3aa6d9;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-secondary{--bs-table-color:#fff;--bs-table-bg:#555555;--bs-table-border-color:#777777;--bs-table-striped-bg:#5e5e5e;--bs-table-striped-color:#fff;--bs-table-active-bg:#666666;--bs-table-active-color:#fff;--bs-table-hover-bg:#626262;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-success{--bs-table-color:#fff;--bs-table-bg:#77b300;--bs-table-border-color:#92c233;--bs-table-striped-bg:#7eb70d;--bs-table-striped-color:#fff;--bs-table-active-bg:#85bb1a;--bs-table-active-color:#fff;--bs-table-hover-bg:#81b913;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-info{--bs-table-color:#fff;--bs-table-bg:#9933cc;--bs-table-border-color:#ad5cd6;--bs-table-striped-bg:#9e3dcf;--bs-table-striped-color:#fff;--bs-table-active-bg:#a347d1;--bs-table-active-color:#fff;--bs-table-hover-bg:#a142d0;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-warning{--bs-table-color:#fff;--bs-table-bg:#ff8800;--bs-table-border-color:#ffa033;--bs-table-striped-bg:#ff8e0d;--bs-table-striped-color:#fff;--bs-table-active-bg:#ff941a;--bs-table-active-color:#000;--bs-table-hover-bg:#ff9113;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-danger{--bs-table-color:#fff;--bs-table-bg:#cc0000;--bs-table-border-color:#d63333;--bs-table-striped-bg:#cf0d0d;--bs-table-striped-color:#fff;--bs-table-active-bg:#d11a1a;--bs-table-active-color:#fff;--bs-table-hover-bg:#d01313;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-light{--bs-table-color:#fff;--bs-table-bg:#222;--bs-table-border-color:#4e4e4e;--bs-table-striped-bg:#2d2d2d;--bs-table-striped-color:#fff;--bs-table-active-bg:#383838;--bs-table-active-color:#fff;--bs-table-hover-bg:#333333;--bs-table-hover-color:#fff;color:var(--bs-table-color);border-color:var(--bs-table-border-color)}.table-dark{--bs-table-color:#000;--bs-table-bg:#adafae;--bs-table-border-color:#8a8c8b;--bs-table-striped-bg:#a4a6a5;--bs-table-striped-color:#fff;--bs-table-active-bg:#9c9e9d;--bs-table-active-color:#fff;--bs-table-hover-bg:#a0a2a1;--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 + 0px);padding-bottom:calc(.375rem + 0px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 0px);padding-bottom:calc(.5rem + 0px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + 0px);padding-bottom:calc(.25rem + 0px);font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:var(--bs-secondary-color)}.form-control{display:block;width:100%;padding:.375rem 1rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-clip:padding-box;border:0 solid #fff;border-radius:var(--bs-border-radius);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:#95cfeb;outline:0;box-shadow:0 0 0 .25rem #2a9fd640}.form-control::-webkit-date-and-time-value{min-width:85px;height:1.5em;margin:0}.form-control::-webkit-datetime-edit{display:block;padding:0}.form-control::-moz-placeholder{color:var(--bs-secondary-color);opacity:1}.form-control::placeholder{color:var(--bs-secondary-color);opacity:1}.form-control:disabled{background-color:#adafae;opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem 1rem;margin:-.375rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem;color:#fff;background-color:#282828;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:0px;border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem 1rem;margin:-.375rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem;color:#fff;background-color:#282828;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:0px;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::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#232323}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#232323}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:var(--bs-body-color);background-color:transparent;border:solid transparent;border-width:0 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 + 0px);padding:.25rem .5rem;font-size:.875rem;border-radius:var(--bs-border-radius-sm)}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 0px);padding:.5rem 1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + 0px)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + 0px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 0px)}.form-control-color{width:3rem;height:calc(1.5em + .75rem + 0px);padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color::-webkit-color-swatch{border:0!important;border-radius:var(--bs-border-radius)}.form-control-color.form-control-sm{height:calc(1.5em + .5rem + 0px)}.form-control-color.form-control-lg{height:calc(1.5em + 1rem + 0px)}.form-select{--bs-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23222' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");display:block;width:100%;padding:.375rem 3rem .375rem 1rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;background-image:var(--bs-form-select-bg-img),var(--bs-form-select-bg-icon,none);background-repeat:no-repeat;background-position:right 1rem center;background-size:16px 12px;border:0 solid #fff;border-radius:var(--bs-border-radius);transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#95cfeb;outline:0;box-shadow:0 0 0 .25rem #2a9fd640}.form-select[multiple],.form-select[size]:not([size="1"]){padding-right:1rem;background-image:none}.form-select:disabled{background-color:#adafae}.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:var(--bs-border-radius-sm)}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:var(--bs-border-radius-lg)}[data-bs-theme=dark] .form-select{--bs-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23dee2e6' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}.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{--bs-form-check-bg:#fff;flex-shrink:0;width:1em;height:1em;margin-top:.25em;vertical-align:top;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--bs-form-check-bg);background-image:var(--bs-form-check-bg-image);background-repeat:no-repeat;background-position:center;background-size:contain;border:none;-webkit-print-color-adjust:exact;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:#95cfeb;outline:0;box-shadow:0 0 0 .25rem #2a9fd640}.form-check-input:checked{background-color:#2a9fd6;border-color:#2a9fd6}.form-check-input:checked[type=checkbox]{--bs-form-check-bg-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]{--bs-form-check-bg-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:#2a9fd6;border-color:#2a9fd6;--bs-form-check-bg-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{--bs-form-switch-bg: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");width:2em;margin-left:-2.5em;background-image:var(--bs-form-switch-bg);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{--bs-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2395cfeb'/%3e%3c/svg%3e")}.form-switch .form-check-input:checked{background-position:right center;--bs-form-switch-bg: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}[data-bs-theme=dark] .form-switch .form-check-input:not(:checked):not(:focus){--bs-form-switch-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%28255, 255, 255, 0.25%29'/%3e%3c/svg%3e")}.form-range{width:100%;height:1.5rem;padding:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:transparent}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #060606,0 0 0 .25rem #2a9fd640}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #060606,0 0 0 .25rem #2a9fd640}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;-webkit-appearance:none;appearance:none;background-color:#2a9fd6;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}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#bfe2f3}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;-moz-appearance:none;appearance:none;background-color:#2a9fd6;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}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#bfe2f3}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:var(--bs-secondary-bg);border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:var(--bs-secondary-color)}.form-range:disabled::-moz-range-thumb{background-color:var(--bs-secondary-color)}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-control-plaintext,.form-floating>.form-select{height:calc(3.5rem + 0px);min-height:calc(3.5rem + 0px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;z-index:2;max-width:100%;height:100%;padding:1rem;overflow:hidden;color:rgba(var(--bs-body-color-rgb),.65);text-align:start;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;border:0 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}.form-floating>.form-control-plaintext::-moz-placeholder,.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control-plaintext::placeholder,.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control-plaintext:not(:-moz-placeholder-shown),.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.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;padding-left:1rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{transform:scale(.85) translateY(-.5rem) translate(.15rem)}.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{transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>.form-control:-webkit-autofill~label{transform:scale(.85) translateY(-.5rem) translate(.15rem)}.form-floating>textarea:not(:-moz-placeholder-shown)~label:after{position:absolute;inset:1rem .5rem;z-index:-1;height:1.5em;content:"";background-color:#fff;border-radius:var(--bs-border-radius)}.form-floating>textarea:focus~label:after,.form-floating>textarea:not(:placeholder-shown)~label:after{position:absolute;inset:1rem .5rem;z-index:-1;height:1.5em;content:"";background-color:#fff;border-radius:var(--bs-border-radius)}.form-floating>textarea:disabled~label:after{background-color:#adafae}.form-floating>.form-control-plaintext~label{border-width:0 0}.form-floating>.form-control:disabled~label,.form-floating>:disabled~label{color:#555}.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 1rem;font-size:1rem;font-weight:400;line-height:1.5;color:#fff;text-align:center;white-space:nowrap;background-color:#282828;border:0 solid transparent;border-radius:var(--bs-border-radius)}.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:var(--bs-border-radius-lg)}.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:var(--bs-border-radius-sm)}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:4rem}.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:-0px;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:var(--bs-form-valid-color)}.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:var(--bs-success);border-radius:var(--bs-border-radius)}.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:var(--bs-form-valid-border-color);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='%2377b300' 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.1'/%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:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.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:var(--bs-form-valid-border-color)}.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"]{--bs-form-select-bg-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%2377b300' 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.1'/%3e%3c/svg%3e");padding-right:5.5rem;background-position:right 1rem center,center right 3rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:var(--bs-form-valid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.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:var(--bs-form-valid-border-color)}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:var(--bs-form-valid-color)}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-success-rgb),.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:var(--bs-form-valid-color)}.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:var(--bs-form-invalid-color)}.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:var(--bs-danger);border-radius:var(--bs-border-radius)}.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:var(--bs-form-invalid-border-color);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='%23c00'%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='%23c00' 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:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.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:var(--bs-form-invalid-border-color)}.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"]{--bs-form-select-bg-icon: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='%23c00'%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='%23c00' stroke='none'/%3e%3c/svg%3e");padding-right:5.5rem;background-position:right 1rem center,center right 3rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:var(--bs-form-invalid-border-color);box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.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:var(--bs-form-invalid-border-color)}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:var(--bs-form-invalid-color)}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(var(--bs-danger-rgb),.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:var(--bs-form-invalid-color)}.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:1rem;--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:var(--bs-body-color);--bs-btn-bg:transparent;--bs-btn-border-width:var(--bs-border-width);--bs-btn-border-color:transparent;--bs-btn-border-radius:var(--bs-border-radius);--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;-moz-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-check:checked:focus-visible+.btn{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:#2a9fd6;--bs-btn-border-color:#2a9fd6;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#2487b6;--bs-btn-hover-border-color:#227fab;--bs-btn-focus-shadow-rgb:74,173,220;--bs-btn-active-color:#fff;--bs-btn-active-bg:#227fab;--bs-btn-active-border-color:#2077a1;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#2a9fd6;--bs-btn-disabled-border-color:#2a9fd6}.btn-secondary{--bs-btn-color:#fff;--bs-btn-bg:#555;--bs-btn-border-color:#555;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#484848;--bs-btn-hover-border-color:#444444;--bs-btn-focus-shadow-rgb:111,111,111;--bs-btn-active-color:#fff;--bs-btn-active-bg:#444444;--bs-btn-active-border-color:#404040;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#555;--bs-btn-disabled-border-color:#555}.btn-success{--bs-btn-color:#fff;--bs-btn-bg:#77b300;--bs-btn-border-color:#77b300;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#659800;--bs-btn-hover-border-color:#5f8f00;--bs-btn-focus-shadow-rgb:139,190,38;--bs-btn-active-color:#fff;--bs-btn-active-bg:#5f8f00;--bs-btn-active-border-color:#598600;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#77b300;--bs-btn-disabled-border-color:#77b300}.btn-info{--bs-btn-color:#fff;--bs-btn-bg:#93c;--bs-btn-border-color:#93c;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#822bad;--bs-btn-hover-border-color:#7a29a3;--bs-btn-focus-shadow-rgb:168,82,212;--bs-btn-active-color:#fff;--bs-btn-active-bg:#7a29a3;--bs-btn-active-border-color:#732699;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#93c;--bs-btn-disabled-border-color:#93c}.btn-warning{--bs-btn-color:#fff;--bs-btn-bg:#f80;--bs-btn-border-color:#f80;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#d97400;--bs-btn-hover-border-color:#cc6d00;--bs-btn-focus-shadow-rgb:255,154,38;--bs-btn-active-color:#fff;--bs-btn-active-bg:#cc6d00;--bs-btn-active-border-color:#bf6600;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#f80;--bs-btn-disabled-border-color:#f80}.btn-danger{--bs-btn-color:#fff;--bs-btn-bg:#c00;--bs-btn-border-color:#c00;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#ad0000;--bs-btn-hover-border-color:#a30000;--bs-btn-focus-shadow-rgb:212,38,38;--bs-btn-active-color:#fff;--bs-btn-active-bg:#a30000;--bs-btn-active-border-color:#990000;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#c00;--bs-btn-disabled-border-color:#c00}.btn-light{--bs-btn-color:#fff;--bs-btn-bg:#222;--bs-btn-border-color:#222;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#1d1d1d;--bs-btn-hover-border-color:#1b1b1b;--bs-btn-focus-shadow-rgb:67,67,67;--bs-btn-active-color:#fff;--bs-btn-active-bg:#1b1b1b;--bs-btn-active-border-color:#1a1a1a;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#fff;--bs-btn-disabled-bg:#222;--bs-btn-disabled-border-color:#222}.btn-dark{--bs-btn-color:#000;--bs-btn-bg:#adafae;--bs-btn-border-color:#adafae;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#b9bbba;--bs-btn-hover-border-color:#b5b7b6;--bs-btn-focus-shadow-rgb:147,149,148;--bs-btn-active-color:#000;--bs-btn-active-bg:#bdbfbe;--bs-btn-active-border-color:#b5b7b6;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#000;--bs-btn-disabled-bg:#adafae;--bs-btn-disabled-border-color:#adafae}.btn-outline-primary{--bs-btn-color:#2a9fd6;--bs-btn-border-color:#2a9fd6;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#2a9fd6;--bs-btn-hover-border-color:#2a9fd6;--bs-btn-focus-shadow-rgb:42,159,214;--bs-btn-active-color:#fff;--bs-btn-active-bg:#2a9fd6;--bs-btn-active-border-color:#2a9fd6;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#2a9fd6;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#2a9fd6;--bs-gradient:none}.btn-outline-secondary{--bs-btn-color:#555;--bs-btn-border-color:#555;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#555;--bs-btn-hover-border-color:#555;--bs-btn-focus-shadow-rgb:85,85,85;--bs-btn-active-color:#fff;--bs-btn-active-bg:#555;--bs-btn-active-border-color:#555;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#555;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#555;--bs-gradient:none}.btn-outline-success{--bs-btn-color:#77b300;--bs-btn-border-color:#77b300;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#77b300;--bs-btn-hover-border-color:#77b300;--bs-btn-focus-shadow-rgb:119,179,0;--bs-btn-active-color:#fff;--bs-btn-active-bg:#77b300;--bs-btn-active-border-color:#77b300;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#77b300;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#77b300;--bs-gradient:none}.btn-outline-info{--bs-btn-color:#93c;--bs-btn-border-color:#93c;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#93c;--bs-btn-hover-border-color:#93c;--bs-btn-focus-shadow-rgb:153,51,204;--bs-btn-active-color:#fff;--bs-btn-active-bg:#93c;--bs-btn-active-border-color:#93c;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#93c;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#93c;--bs-gradient:none}.btn-outline-warning{--bs-btn-color:#f80;--bs-btn-border-color:#f80;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#f80;--bs-btn-hover-border-color:#f80;--bs-btn-focus-shadow-rgb:255,136,0;--bs-btn-active-color:#fff;--bs-btn-active-bg:#f80;--bs-btn-active-border-color:#f80;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#f80;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#f80;--bs-gradient:none}.btn-outline-danger{--bs-btn-color:#c00;--bs-btn-border-color:#c00;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#c00;--bs-btn-hover-border-color:#c00;--bs-btn-focus-shadow-rgb:204,0,0;--bs-btn-active-color:#fff;--bs-btn-active-bg:#c00;--bs-btn-active-border-color:#c00;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#c00;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#c00;--bs-gradient:none}.btn-outline-light{--bs-btn-color:#222;--bs-btn-border-color:#222;--bs-btn-hover-color:#fff;--bs-btn-hover-bg:#222;--bs-btn-hover-border-color:#222;--bs-btn-focus-shadow-rgb:34,34,34;--bs-btn-active-color:#fff;--bs-btn-active-bg:#222;--bs-btn-active-border-color:#222;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#222;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#222;--bs-gradient:none}.btn-outline-dark{--bs-btn-color:#adafae;--bs-btn-border-color:#adafae;--bs-btn-hover-color:#000;--bs-btn-hover-bg:#adafae;--bs-btn-hover-border-color:#adafae;--bs-btn-focus-shadow-rgb:173,175,174;--bs-btn-active-color:#000;--bs-btn-active-bg:#adafae;--bs-btn-active-border-color:#adafae;--bs-btn-active-shadow:inset 0 3px 5px rgba(0, 0, 0, .125);--bs-btn-disabled-color:#adafae;--bs-btn-disabled-bg:transparent;--bs-btn-disabled-border-color:#adafae;--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:#555;--bs-btn-disabled-border-color:transparent;--bs-btn-box-shadow:0 0 0 #000;--bs-btn-focus-shadow-rgb:74,173,220;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:var(--bs-border-radius-lg)}.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:var(--bs-border-radius-sm)}.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:var(--bs-body-color);--bs-dropdown-bg:#282828;--bs-dropdown-border-color:var(--bs-border-color-translucent);--bs-dropdown-border-radius:var(--bs-border-radius);--bs-dropdown-border-width:var(--bs-border-width);--bs-dropdown-inner-border-radius:calc(var(--bs-border-radius) - var(--bs-border-width));--bs-dropdown-divider-bg:#222;--bs-dropdown-divider-margin-y:.5rem;--bs-dropdown-box-shadow:var(--bs-box-shadow);--bs-dropdown-link-color:#fff;--bs-dropdown-link-hover-color:#fff;--bs-dropdown-link-hover-bg:#2a9fd6;--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#2a9fd6;--bs-dropdown-link-disabled-color:var(--bs-tertiary-color);--bs-dropdown-item-padding-x:1rem;--bs-dropdown-item-padding-y:.25rem;--bs-dropdown-header-color:#555;--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;border-radius:var(--bs-dropdown-item-border-radius,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:#222;--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:#222;--bs-dropdown-link-hover-bg:rgba(255, 255, 255, .15);--bs-dropdown-link-active-color:#fff;--bs-dropdown-link-active-bg:#2a9fd6;--bs-dropdown-link-disabled-color:#888;--bs-dropdown-header-color:#888}.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:var(--bs-border-radius)}.btn-group>.btn-group:not(:first-child),.btn-group>:not(.btn-check:first-child)+.btn{margin-left:calc(-1 * var(--bs-border-width))}.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:.75rem;padding-left:.75rem}.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:calc(-1 * var(--bs-border-width))}.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:nth-child(n+3),.btn-group-vertical>:not(.btn-check)+.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:var(--bs-secondary-color);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;background:0 0;border:0;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:focus-visible{outline:0;box-shadow:0 0 0 .25rem #2a9fd640}.nav-link.disabled,.nav-link:disabled{color:var(--bs-nav-link-disabled-color);pointer-events:none;cursor:default}.nav-tabs{--bs-nav-tabs-border-width:var(--bs-border-width);--bs-nav-tabs-border-color:#282828;--bs-nav-tabs-border-radius:var(--bs-border-radius);--bs-nav-tabs-link-hover-border-color:#282828;--bs-nav-tabs-link-active-color:#fff;--bs-nav-tabs-link-active-bg:#282828;--bs-nav-tabs-link-active-border-color:#282828;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));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-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:var(--bs-border-radius);--bs-nav-pills-link-active-color:#fff;--bs-nav-pills-link-active-bg:#2a9fd6}.nav-pills .nav-link{border-radius:var(--bs-nav-pills-border-radius)}.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-underline{--bs-nav-underline-gap:1rem;--bs-nav-underline-border-width:.125rem;--bs-nav-underline-link-active-color:#fff;gap:var(--bs-nav-underline-gap)}.nav-underline .nav-link{padding-right:0;padding-left:0;border-bottom:var(--bs-nav-underline-border-width) solid transparent}.nav-underline .nav-link:focus,.nav-underline .nav-link:hover{border-bottom-color:currentcolor}.nav-underline .nav-link.active,.nav-underline .show>.nav-link{font-weight:700;color:var(--bs-nav-underline-link-active-color);border-bottom-color:currentcolor}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-grow:1;flex-basis:0;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(var(--bs-emphasis-color-rgb), .65);--bs-navbar-hover-color:rgba(var(--bs-emphasis-color-rgb), .8);--bs-navbar-disabled-color:rgba(var(--bs-emphasis-color-rgb), .3);--bs-navbar-active-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-padding-y:.3125rem;--bs-navbar-brand-margin-end:1rem;--bs-navbar-brand-font-size:1.25rem;--bs-navbar-brand-color:rgba(var(--bs-emphasis-color-rgb), 1);--bs-navbar-brand-hover-color:rgba(var(--bs-emphasis-color-rgb), 1);--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%28173, 175, 174, 0.75%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(var(--bs-emphasis-color-rgb), .15);--bs-navbar-toggler-border-radius:var(--bs-border-radius);--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 .nav-link.show{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-grow:1;flex-basis:100%;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,.navbar[data-bs-theme=dark]{--bs-navbar-color:rgba(255, 255, 255, .55);--bs-navbar-hover-color:#fff;--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")}[data-bs-theme=dark] .navbar-toggler-icon{--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-title-color: ;--bs-card-subtitle-color: ;--bs-card-border-width:var(--bs-border-width);--bs-card-border-color:var(--bs-border-color-translucent);--bs-card-border-radius:var(--bs-border-radius);--bs-card-box-shadow: ;--bs-card-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-card-cap-padding-y:.5rem;--bs-card-cap-padding-x:1rem;--bs-card-cap-bg:rgba(var(--bs-body-color-rgb), .03);--bs-card-cap-color: ;--bs-card-height: ;--bs-card-color: ;--bs-card-bg:#282828;--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);color:var(--bs-body-color);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);color:var(--bs-card-title-color)}.card-subtitle{margin-top:calc(-.5 * var(--bs-card-title-spacer-y));margin-bottom:0;color:var(--bs-card-subtitle-color)}.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:var(--bs-body-color);--bs-accordion-bg:var(--bs-body-bg);--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:var(--bs-border-width);--bs-accordion-border-radius:var(--bs-border-radius);--bs-accordion-inner-border-radius:calc(var(--bs-border-radius) - (var(--bs-border-width)));--bs-accordion-btn-padding-x:1.25rem;--bs-accordion-btn-padding-y:1rem;--bs-accordion-btn-color:var(--bs-body-color);--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='none' stroke='%23adafae' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%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='none' stroke='%23114056' stroke-linecap='round' stroke-linejoin='round'%3e%3cpath d='m2 5 6 6 6-6'/%3e%3c/svg%3e");--bs-accordion-btn-focus-box-shadow:0 0 0 .25rem rgba(42, 159, 214, .25);--bs-accordion-body-padding-x:1.25rem;--bs-accordion-body-padding-y:1rem;--bs-accordion-active-color:var(--bs-primary-text-emphasis);--bs-accordion-active-bg:var(--bs-primary-bg-subtle)}.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;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-header .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-header .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-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-collapse,.accordion-flush>.accordion-item>.accordion-header .accordion-button,.accordion-flush>.accordion-item>.accordion-header .accordion-button.collapsed{border-radius:0}[data-bs-theme=dark] .accordion-button:after{--bs-accordion-btn-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%237fc5e6'%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-.708'/%3e%3c/svg%3e");--bs-accordion-btn-active-icon:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%237fc5e6'%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-.708'/%3e%3c/svg%3e")}.breadcrumb{--bs-breadcrumb-padding-x:.75rem;--bs-breadcrumb-padding-y:.375rem;--bs-breadcrumb-margin-bottom:1rem;--bs-breadcrumb-bg:#282828;--bs-breadcrumb-border-radius:.25rem;--bs-breadcrumb-divider-color:var(--bs-secondary-color);--bs-breadcrumb-item-padding-x:.5rem;--bs-breadcrumb-item-active-color:var(--bs-secondary-color);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:#fff;--bs-pagination-bg:#282828;--bs-pagination-border-width:var(--bs-border-width);--bs-pagination-border-color:transparent;--bs-pagination-border-radius:var(--bs-border-radius);--bs-pagination-hover-color:#fff;--bs-pagination-hover-bg:#2a9fd6;--bs-pagination-hover-border-color:transparent;--bs-pagination-focus-color:var(--bs-link-hover-color);--bs-pagination-focus-bg:var(--bs-secondary-bg);--bs-pagination-focus-box-shadow:0 0 0 .25rem rgba(42, 159, 214, .25);--bs-pagination-active-color:#fff;--bs-pagination-active-bg:#2a9fd6;--bs-pagination-active-border-color:#2a9fd6;--bs-pagination-disabled-color:var(--bs-secondary-color);--bs-pagination-disabled-bg:#282828;--bs-pagination-disabled-border-color:transparent;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:calc(-1 * var(--bs-border-width))}.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:var(--bs-border-radius-lg)}.pagination-sm{--bs-pagination-padding-x:.5rem;--bs-pagination-padding-y:.25rem;--bs-pagination-font-size:.875rem;--bs-pagination-border-radius:var(--bs-border-radius-sm)}.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:var(--bs-border-radius);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:var(--bs-border-width) solid var(--bs-alert-border-color);--bs-alert-border-radius:var(--bs-border-radius);--bs-alert-link-color:inherit;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;color:var(--bs-alert-link-color)}.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:var(--bs-primary-text-emphasis);--bs-alert-bg:var(--bs-primary-bg-subtle);--bs-alert-border-color:var(--bs-primary-border-subtle);--bs-alert-link-color:var(--bs-primary-text-emphasis)}.alert-secondary{--bs-alert-color:var(--bs-secondary-text-emphasis);--bs-alert-bg:var(--bs-secondary-bg-subtle);--bs-alert-border-color:var(--bs-secondary-border-subtle);--bs-alert-link-color:var(--bs-secondary-text-emphasis)}.alert-success{--bs-alert-color:var(--bs-success-text-emphasis);--bs-alert-bg:var(--bs-success-bg-subtle);--bs-alert-border-color:var(--bs-success-border-subtle);--bs-alert-link-color:var(--bs-success-text-emphasis)}.alert-info{--bs-alert-color:var(--bs-info-text-emphasis);--bs-alert-bg:var(--bs-info-bg-subtle);--bs-alert-border-color:var(--bs-info-border-subtle);--bs-alert-link-color:var(--bs-info-text-emphasis)}.alert-warning{--bs-alert-color:var(--bs-warning-text-emphasis);--bs-alert-bg:var(--bs-warning-bg-subtle);--bs-alert-border-color:var(--bs-warning-border-subtle);--bs-alert-link-color:var(--bs-warning-text-emphasis)}.alert-danger{--bs-alert-color:var(--bs-danger-text-emphasis);--bs-alert-bg:var(--bs-danger-bg-subtle);--bs-alert-border-color:var(--bs-danger-border-subtle);--bs-alert-link-color:var(--bs-danger-text-emphasis)}.alert-light{--bs-alert-color:var(--bs-light-text-emphasis);--bs-alert-bg:var(--bs-light-bg-subtle);--bs-alert-border-color:var(--bs-light-border-subtle);--bs-alert-link-color:var(--bs-light-text-emphasis)}.alert-dark{--bs-alert-color:var(--bs-dark-text-emphasis);--bs-alert-bg:var(--bs-dark-bg-subtle);--bs-alert-border-color:var(--bs-dark-border-subtle);--bs-alert-link-color:var(--bs-dark-text-emphasis)}@keyframes progress-bar-stripes{0%{background-position-x:var(--bs-progress-height)}}.progress,.progress-stacked{--bs-progress-height:1rem;--bs-progress-font-size:.75rem;--bs-progress-bg:#282828;--bs-progress-border-radius:var(--bs-border-radius);--bs-progress-box-shadow:var(--bs-box-shadow-inset);--bs-progress-bar-color:#fff;--bs-progress-bar-bg:#2a9fd6;--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-stacked>.progress{overflow:visible}.progress-stacked>.progress>.progress-bar{width:100%}.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:#fff;--bs-list-group-bg:#222;--bs-list-group-border-color:#282828;--bs-list-group-border-width:var(--bs-border-width);--bs-list-group-border-radius:var(--bs-border-radius);--bs-list-group-item-padding-x:1rem;--bs-list-group-item-padding-y:.5rem;--bs-list-group-action-color:#fff;--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:#2a9fd6;--bs-list-group-action-active-color:var(--bs-body-color);--bs-list-group-action-active-bg:#2a9fd6;--bs-list-group-disabled-color:var(--bs-secondary-color);--bs-list-group-disabled-bg:#282828;--bs-list-group-active-color:#fff;--bs-list-group-active-bg:#2a9fd6;--bs-list-group-active-border-color:#2a9fd6;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{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-item-action{width:100%;color:var(--bs-list-group-action-color);text-align:inherit}.list-group-item-action:not(.active):focus,.list-group-item-action:not(.active):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:not(.active):active{color:var(--bs-list-group-action-active-color);background-color:var(--bs-list-group-action-active-bg)}.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{--bs-list-group-color:var(--bs-primary-text-emphasis);--bs-list-group-bg:var(--bs-primary-bg-subtle);--bs-list-group-border-color:var(--bs-primary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-primary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-primary-border-subtle);--bs-list-group-active-color:var(--bs-primary-bg-subtle);--bs-list-group-active-bg:var(--bs-primary-text-emphasis);--bs-list-group-active-border-color:var(--bs-primary-text-emphasis)}.list-group-item-secondary{--bs-list-group-color:var(--bs-secondary-text-emphasis);--bs-list-group-bg:var(--bs-secondary-bg-subtle);--bs-list-group-border-color:var(--bs-secondary-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-secondary-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-secondary-border-subtle);--bs-list-group-active-color:var(--bs-secondary-bg-subtle);--bs-list-group-active-bg:var(--bs-secondary-text-emphasis);--bs-list-group-active-border-color:var(--bs-secondary-text-emphasis)}.list-group-item-success{--bs-list-group-color:var(--bs-success-text-emphasis);--bs-list-group-bg:var(--bs-success-bg-subtle);--bs-list-group-border-color:var(--bs-success-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-success-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-success-border-subtle);--bs-list-group-active-color:var(--bs-success-bg-subtle);--bs-list-group-active-bg:var(--bs-success-text-emphasis);--bs-list-group-active-border-color:var(--bs-success-text-emphasis)}.list-group-item-info{--bs-list-group-color:var(--bs-info-text-emphasis);--bs-list-group-bg:var(--bs-info-bg-subtle);--bs-list-group-border-color:var(--bs-info-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-info-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-info-border-subtle);--bs-list-group-active-color:var(--bs-info-bg-subtle);--bs-list-group-active-bg:var(--bs-info-text-emphasis);--bs-list-group-active-border-color:var(--bs-info-text-emphasis)}.list-group-item-warning{--bs-list-group-color:var(--bs-warning-text-emphasis);--bs-list-group-bg:var(--bs-warning-bg-subtle);--bs-list-group-border-color:var(--bs-warning-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-warning-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-warning-border-subtle);--bs-list-group-active-color:var(--bs-warning-bg-subtle);--bs-list-group-active-bg:var(--bs-warning-text-emphasis);--bs-list-group-active-border-color:var(--bs-warning-text-emphasis)}.list-group-item-danger{--bs-list-group-color:var(--bs-danger-text-emphasis);--bs-list-group-bg:var(--bs-danger-bg-subtle);--bs-list-group-border-color:var(--bs-danger-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-danger-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-danger-border-subtle);--bs-list-group-active-color:var(--bs-danger-bg-subtle);--bs-list-group-active-bg:var(--bs-danger-text-emphasis);--bs-list-group-active-border-color:var(--bs-danger-text-emphasis)}.list-group-item-light{--bs-list-group-color:var(--bs-light-text-emphasis);--bs-list-group-bg:var(--bs-light-bg-subtle);--bs-list-group-border-color:var(--bs-light-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-light-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-light-border-subtle);--bs-list-group-active-color:var(--bs-light-bg-subtle);--bs-list-group-active-bg:var(--bs-light-text-emphasis);--bs-list-group-active-border-color:var(--bs-light-text-emphasis)}.list-group-item-dark{--bs-list-group-color:var(--bs-dark-text-emphasis);--bs-list-group-bg:var(--bs-dark-bg-subtle);--bs-list-group-border-color:var(--bs-dark-border-subtle);--bs-list-group-action-hover-color:var(--bs-emphasis-color);--bs-list-group-action-hover-bg:var(--bs-dark-border-subtle);--bs-list-group-action-active-color:var(--bs-emphasis-color);--bs-list-group-action-active-bg:var(--bs-dark-border-subtle);--bs-list-group-active-color:var(--bs-dark-bg-subtle);--bs-list-group-active-bg:var(--bs-dark-text-emphasis);--bs-list-group-active-border-color:var(--bs-dark-text-emphasis)}.btn-close{--bs-btn-close-color:#fff;--bs-btn-close-bg:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%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.414'/%3e%3c/svg%3e");--bs-btn-close-opacity:.6;--bs-btn-close-hover-opacity:1;--bs-btn-close-focus-shadow:0 0 0 .25rem rgba(42, 159, 214, .25);--bs-btn-close-focus-opacity:1;--bs-btn-close-disabled-opacity:.25;box-sizing:content-box;width:1em;height:1em;padding:.25em;color:var(--bs-btn-close-color);background:transparent var(--bs-btn-close-bg) center/1em auto no-repeat;filter:var(--bs-btn-close-filter);border:0;border-radius:.375rem;opacity:var(--bs-btn-close-opacity)}.btn-close:hover{color:var(--bs-btn-close-color);text-decoration:none;opacity:var(--bs-btn-close-hover-opacity)}.btn-close:focus{outline:0;box-shadow:var(--bs-btn-close-focus-shadow);opacity:var(--bs-btn-close-focus-opacity)}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:var(--bs-btn-close-disabled-opacity)}.btn-close-white{--bs-btn-close-filter:invert(1) grayscale(100%) brightness(200%)}:root,[data-bs-theme=light]{--bs-btn-close-filter: }[data-bs-theme=dark]{--bs-btn-close-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:#fff;--bs-toast-bg:#222;--bs-toast-border-width:var(--bs-border-width);--bs-toast-border-color:#282828;--bs-toast-border-radius:var(--bs-border-radius);--bs-toast-box-shadow:var(--bs-box-shadow);--bs-toast-header-color:#adafae;--bs-toast-header-bg:#222;--bs-toast-header-border-color:#282828;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:-webkit-max-content;width:-moz-max-content;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:var(--bs-body-color);--bs-modal-bg:#222;--bs-modal-border-color:var(--bs-border-color-translucent);--bs-modal-border-width:var(--bs-border-width);--bs-modal-border-radius:var(--bs-border-radius-lg);--bs-modal-box-shadow:var(--bs-box-shadow-sm);--bs-modal-inner-border-radius:calc(var(--bs-border-radius-lg) - (var(--bs-border-width)));--bs-modal-header-padding-x:1rem;--bs-modal-header-padding-y:1rem;--bs-modal-header-padding:1rem 1rem;--bs-modal-header-border-color:#282828;--bs-modal-header-border-width:var(--bs-border-width);--bs-modal-title-line-height:1.5;--bs-modal-footer-gap:.5rem;--bs-modal-footer-bg: ;--bs-modal-footer-border-color:#282828;--bs-modal-footer-border-width:var(--bs-border-width);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{transform:translateY(-50px);transition:transform .3s ease-out}@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;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-top:calc(-.5 * var(--bs-modal-header-padding-y));margin-right:calc(-.5 * var(--bs-modal-header-padding-x));margin-bottom:calc(-.5 * var(--bs-modal-header-padding-y));margin-left: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:var(--bs-box-shadow)}.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:var(--bs-body-bg);--bs-tooltip-bg:var(--bs-emphasis-color);--bs-tooltip-border-radius:var(--bs-border-radius);--bs-tooltip-opacity:1;--bs-tooltip-arrow-width:.8rem;--bs-tooltip-arrow-height:.4rem;z-index:var(--bs-tooltip-zindex);display:block;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:calc(-1 * var(--bs-tooltip-arrow-height))}.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:calc(-1 * var(--bs-tooltip-arrow-height));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:calc(-1 * var(--bs-tooltip-arrow-height))}.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:calc(-1 * var(--bs-tooltip-arrow-height));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:#282828;--bs-popover-border-width:var(--bs-border-width);--bs-popover-border-color:var(--bs-border-color-translucent);--bs-popover-border-radius:var(--bs-border-radius-lg);--bs-popover-inner-border-radius:calc(var(--bs-border-radius-lg) - var(--bs-border-width));--bs-popover-box-shadow:var(--bs-box-shadow);--bs-popover-header-padding-x:1rem;--bs-popover-header-padding-y:.5rem;--bs-popover-header-font-size:1rem;--bs-popover-header-color:#fff;--bs-popover-header-bg:var(--bs-secondary-bg);--bs-popover-body-padding-x:1rem;--bs-popover-body-padding-y:1rem;--bs-popover-body-color:var(--bs-body-color);--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;filter:var(--bs-carousel-control-icon-filter);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 0'/%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-.708'/%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%}.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:var(--bs-carousel-indicator-active-bg);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:var(--bs-carousel-caption-color);text-align:center}.carousel-dark{--bs-carousel-indicator-active-bg:#000;--bs-carousel-caption-color:#000;--bs-carousel-control-icon-filter:invert(1) grayscale(100)}:root,[data-bs-theme=light]{--bs-carousel-indicator-active-bg:#fff;--bs-carousel-caption-color:#fff;--bs-carousel-control-icon-filter: }[data-bs-theme=dark]{--bs-carousel-indicator-active-bg:#000;--bs-carousel-caption-color:#000;--bs-carousel-control-icon-filter:invert(1) grayscale(100)}.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:var(--bs-body-color);--bs-offcanvas-bg:var(--bs-body-bg);--bs-offcanvas-border-width:var(--bs-border-width);--bs-offcanvas-border-color:var(--bs-border-color-translucent);--bs-offcanvas-box-shadow:var(--bs-box-shadow-sm);--bs-offcanvas-transition:transform .3s ease-in-out;--bs-offcanvas-title-line-height:1.5}@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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-sm.show:not(.hiding),.offcanvas-sm.showing{transform:none}.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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-md.show:not(.hiding),.offcanvas-md.showing{transform:none}.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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-lg.show:not(.hiding),.offcanvas-lg.showing{transform:none}.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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-xl.show:not(.hiding),.offcanvas-xl.showing{transform:none}.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:var(--bs-offcanvas-transition)}}@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%)}.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%)}.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%)}.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%)}.offcanvas-xxl.show:not(.hiding),.offcanvas-xxl.showing{transform:none}.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:var(--bs-offcanvas-transition)}@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;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));margin-left:auto}.offcanvas-title{margin-bottom:0;line-height:var(--bs-offcanvas-title-line-height)}.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%,#000c,#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(var(--bs-primary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-secondary{color:#fff!important;background-color:RGBA(var(--bs-secondary-rgb),var(--bs-bg-opacity,1))!important}.text-bg-success{color:#fff!important;background-color:RGBA(var(--bs-success-rgb),var(--bs-bg-opacity,1))!important}.text-bg-info{color:#fff!important;background-color:RGBA(var(--bs-info-rgb),var(--bs-bg-opacity,1))!important}.text-bg-warning{color:#fff!important;background-color:RGBA(var(--bs-warning-rgb),var(--bs-bg-opacity,1))!important}.text-bg-danger{color:#fff!important;background-color:RGBA(var(--bs-danger-rgb),var(--bs-bg-opacity,1))!important}.text-bg-light{color:#fff!important;background-color:RGBA(var(--bs-light-rgb),var(--bs-bg-opacity,1))!important}.text-bg-dark{color:#000!important;background-color:RGBA(var(--bs-dark-rgb),var(--bs-bg-opacity,1))!important}.link-primary{color:RGBA(var(--bs-primary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-primary-rgb),var(--bs-link-underline-opacity,1))!important}.link-primary:focus,.link-primary:hover{color:RGBA(34,127,171,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(34,127,171,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(34,127,171,var(--bs-link-underline-opacity,1))!important}.link-secondary{color:RGBA(var(--bs-secondary-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-secondary-rgb),var(--bs-link-underline-opacity,1))!important}.link-secondary:focus,.link-secondary:hover{color:RGBA(68,68,68,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(68,68,68,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(68,68,68,var(--bs-link-underline-opacity,1))!important}.link-success{color:RGBA(var(--bs-success-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-success-rgb),var(--bs-link-underline-opacity,1))!important}.link-success:focus,.link-success:hover{color:RGBA(95,143,0,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(95,143,0,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(95,143,0,var(--bs-link-underline-opacity,1))!important}.link-info{color:RGBA(var(--bs-info-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-info-rgb),var(--bs-link-underline-opacity,1))!important}.link-info:focus,.link-info:hover{color:RGBA(122,41,163,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(122,41,163,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(122,41,163,var(--bs-link-underline-opacity,1))!important}.link-warning{color:RGBA(var(--bs-warning-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-warning-rgb),var(--bs-link-underline-opacity,1))!important}.link-warning:focus,.link-warning:hover{color:RGBA(204,109,0,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(204,109,0,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(204,109,0,var(--bs-link-underline-opacity,1))!important}.link-danger{color:RGBA(var(--bs-danger-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-danger-rgb),var(--bs-link-underline-opacity,1))!important}.link-danger:focus,.link-danger:hover{color:RGBA(163,0,0,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(163,0,0,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(163,0,0,var(--bs-link-underline-opacity,1))!important}.link-light{color:RGBA(var(--bs-light-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-light-rgb),var(--bs-link-underline-opacity,1))!important}.link-light:focus,.link-light:hover{color:RGBA(27,27,27,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(27,27,27,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(27,27,27,var(--bs-link-underline-opacity,1))!important}.link-dark{color:RGBA(var(--bs-dark-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-dark-rgb),var(--bs-link-underline-opacity,1))!important}.link-dark:focus,.link-dark:hover{color:RGBA(189,191,190,var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(189,191,190,var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(189,191,190,var(--bs-link-underline-opacity,1))!important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,1))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-body-emphasis:focus,.link-body-emphasis:hover{color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-opacity,.75))!important;-webkit-text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,.75))!important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb),var(--bs-link-underline-opacity,.75))!important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x,0) var(--bs-focus-ring-y,0) var(--bs-focus-ring-blur,0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:.375rem;align-items:center;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,.5));text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-opacity,.5));text-underline-offset:.25em;-webkit-backface-visibility:hidden;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:.2s ease-in-out transform}@media (prefers-reduced-motion:reduce){.icon-link>.bi{transition:none}}.icon-link-hover:focus-visible>.bi,.icon-link-hover:hover>.bi{transform:var(--bs-icon-link-transform,translate3d(.25em,0,0))}.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:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:-webkit-sticky;position:sticky;bottom:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:-webkit-sticky;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){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}.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption),.visually-hidden:not(caption){position:absolute!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:var(--bs-border-width);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}.object-fit-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-none{-o-object-fit:none!important;object-fit: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}.overflow-x-auto{overflow-x:auto!important}.overflow-x-hidden{overflow-x:hidden!important}.overflow-x-visible{overflow-x:visible!important}.overflow-x-scroll{overflow-x:scroll!important}.overflow-y-auto{overflow-y:auto!important}.overflow-y-hidden{overflow-y:hidden!important}.overflow-y-visible{overflow-y:visible!important}.overflow-y-scroll{overflow-y: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-inline-grid{display:inline-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:var(--bs-box-shadow)!important}.shadow-sm{box-shadow:var(--bs-box-shadow-sm)!important}.shadow-lg{box-shadow:var(--bs-box-shadow-lg)!important}.shadow-none{box-shadow:none!important}.focus-ring-primary{--bs-focus-ring-color:rgba(var(--bs-primary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-secondary{--bs-focus-ring-color:rgba(var(--bs-secondary-rgb), var(--bs-focus-ring-opacity))}.focus-ring-success{--bs-focus-ring-color:rgba(var(--bs-success-rgb), var(--bs-focus-ring-opacity))}.focus-ring-info{--bs-focus-ring-color:rgba(var(--bs-info-rgb), var(--bs-focus-ring-opacity))}.focus-ring-warning{--bs-focus-ring-color:rgba(var(--bs-warning-rgb), var(--bs-focus-ring-opacity))}.focus-ring-danger{--bs-focus-ring-color:rgba(var(--bs-danger-rgb), var(--bs-focus-ring-opacity))}.focus-ring-light{--bs-focus-ring-color:rgba(var(--bs-light-rgb), var(--bs-focus-ring-opacity))}.focus-ring-dark{--bs-focus-ring-color:rgba(var(--bs-dark-rgb), var(--bs-focus-ring-opacity))}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;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-black{--bs-border-opacity:1;border-color:rgba(var(--bs-black-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-primary-subtle{border-color:var(--bs-primary-border-subtle)!important}.border-secondary-subtle{border-color:var(--bs-secondary-border-subtle)!important}.border-success-subtle{border-color:var(--bs-success-border-subtle)!important}.border-info-subtle{border-color:var(--bs-info-border-subtle)!important}.border-warning-subtle{border-color:var(--bs-warning-border-subtle)!important}.border-danger-subtle{border-color:var(--bs-danger-border-subtle)!important}.border-light-subtle{border-color:var(--bs-light-border-subtle)!important}.border-dark-subtle{border-color:var(--bs-dark-border-subtle)!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.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}.row-gap-0{row-gap:0!important}.row-gap-1{row-gap:.25rem!important}.row-gap-2{row-gap:.5rem!important}.row-gap-3{row-gap:1rem!important}.row-gap-4{row-gap:1.5rem!important}.row-gap-5{row-gap:3rem!important}.column-gap-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-5{-moz-column-gap:3rem!important;column-gap:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.525rem + 3.3vw)!important}.fs-2{font-size:calc(1.425rem + 2.1vw)!important}.fs-3{font-size:calc(1.375rem + 1.5vw)!important}.fs-4{font-size:calc(1.325rem + .9vw)!important}.fs-5{font-size:calc(1.275rem + .3vw)!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-lighter{font-weight:lighter!important}.fw-light{font-weight:300!important}.fw-normal{font-weight:400!important}.fw-medium{font-weight:500!important}.fw-semibold{font-weight:600!important}.fw-bold{font-weight:700!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:var(--bs-secondary-color)!important}.text-black-50{--bs-text-opacity:1;color:#00000080!important}.text-white-50{--bs-text-opacity:1;color:#ffffff80!important}.text-body-secondary{--bs-text-opacity:1;color:var(--bs-secondary-color)!important}.text-body-tertiary{--bs-text-opacity:1;color:var(--bs-tertiary-color)!important}.text-body-emphasis{--bs-text-opacity:1;color:var(--bs-emphasis-color)!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}.text-primary-emphasis{color:var(--bs-primary-text-emphasis)!important}.text-secondary-emphasis{color:var(--bs-secondary-text-emphasis)!important}.text-success-emphasis{color:var(--bs-success-text-emphasis)!important}.text-info-emphasis{color:var(--bs-info-text-emphasis)!important}.text-warning-emphasis{color:var(--bs-warning-text-emphasis)!important}.text-danger-emphasis{color:var(--bs-danger-text-emphasis)!important}.text-light-emphasis{color:var(--bs-light-text-emphasis)!important}.text-dark-emphasis{color:var(--bs-dark-text-emphasis)!important}.link-opacity-10,.link-opacity-10-hover:hover{--bs-link-opacity:.1}.link-opacity-25,.link-opacity-25-hover:hover{--bs-link-opacity:.25}.link-opacity-50,.link-opacity-50-hover:hover{--bs-link-opacity:.5}.link-opacity-75,.link-opacity-75-hover:hover{--bs-link-opacity:.75}.link-opacity-100,.link-opacity-100-hover:hover{--bs-link-opacity:1}.link-offset-1,.link-offset-1-hover:hover{text-underline-offset:.125em!important}.link-offset-2,.link-offset-2-hover:hover{text-underline-offset:.25em!important}.link-offset-3,.link-offset-3-hover:hover{text-underline-offset:.375em!important}.link-underline-primary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-primary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-secondary{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-secondary-rgb),var(--bs-link-underline-opacity))!important}.link-underline-success{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-success-rgb),var(--bs-link-underline-opacity))!important}.link-underline-info{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-info-rgb),var(--bs-link-underline-opacity))!important}.link-underline-warning{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-warning-rgb),var(--bs-link-underline-opacity))!important}.link-underline-danger{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-danger-rgb),var(--bs-link-underline-opacity))!important}.link-underline-light{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-light-rgb),var(--bs-link-underline-opacity))!important}.link-underline-dark{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important;text-decoration-color:rgba(var(--bs-dark-rgb),var(--bs-link-underline-opacity))!important}.link-underline{--bs-link-underline-opacity:1;-webkit-text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important;text-decoration-color:rgba(var(--bs-link-color-rgb),var(--bs-link-underline-opacity,1))!important}.link-underline-opacity-0,.link-underline-opacity-0-hover:hover{--bs-link-underline-opacity:0}.link-underline-opacity-10,.link-underline-opacity-10-hover:hover{--bs-link-underline-opacity:.1}.link-underline-opacity-25,.link-underline-opacity-25-hover:hover{--bs-link-underline-opacity:.25}.link-underline-opacity-50,.link-underline-opacity-50-hover:hover{--bs-link-underline-opacity:.5}.link-underline-opacity-75,.link-underline-opacity-75-hover:hover{--bs-link-underline-opacity:.75}.link-underline-opacity-100,.link-underline-opacity-100-hover:hover{--bs-link-underline-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-body-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-bg-rgb),var(--bs-bg-opacity))!important}.bg-body-tertiary{--bs-bg-opacity:1;background-color:rgba(var(--bs-tertiary-bg-rgb),var(--bs-bg-opacity))!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-primary-subtle{background-color:var(--bs-primary-bg-subtle)!important}.bg-secondary-subtle{background-color:var(--bs-secondary-bg-subtle)!important}.bg-success-subtle{background-color:var(--bs-success-bg-subtle)!important}.bg-info-subtle{background-color:var(--bs-info-bg-subtle)!important}.bg-warning-subtle{background-color:var(--bs-warning-bg-subtle)!important}.bg-danger-subtle{background-color:var(--bs-danger-bg-subtle)!important}.bg-light-subtle{background-color:var(--bs-light-bg-subtle)!important}.bg-dark-subtle{background-color:var(--bs-dark-bg-subtle)!important}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-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-xxl)!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-top-0{border-top-left-radius:0!important;border-top-right-radius:0!important}.rounded-top-1{border-top-left-radius:var(--bs-border-radius-sm)!important;border-top-right-radius:var(--bs-border-radius-sm)!important}.rounded-top-2{border-top-left-radius:var(--bs-border-radius)!important;border-top-right-radius:var(--bs-border-radius)!important}.rounded-top-3{border-top-left-radius:var(--bs-border-radius-lg)!important;border-top-right-radius:var(--bs-border-radius-lg)!important}.rounded-top-4{border-top-left-radius:var(--bs-border-radius-xl)!important;border-top-right-radius:var(--bs-border-radius-xl)!important}.rounded-top-5{border-top-left-radius:var(--bs-border-radius-xxl)!important;border-top-right-radius:var(--bs-border-radius-xxl)!important}.rounded-top-circle{border-top-left-radius:50%!important;border-top-right-radius:50%!important}.rounded-top-pill{border-top-left-radius:var(--bs-border-radius-pill)!important;border-top-right-radius:var(--bs-border-radius-pill)!important}.rounded-end{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-0{border-top-right-radius:0!important;border-bottom-right-radius:0!important}.rounded-end-1{border-top-right-radius:var(--bs-border-radius-sm)!important;border-bottom-right-radius:var(--bs-border-radius-sm)!important}.rounded-end-2{border-top-right-radius:var(--bs-border-radius)!important;border-bottom-right-radius:var(--bs-border-radius)!important}.rounded-end-3{border-top-right-radius:var(--bs-border-radius-lg)!important;border-bottom-right-radius:var(--bs-border-radius-lg)!important}.rounded-end-4{border-top-right-radius:var(--bs-border-radius-xl)!important;border-bottom-right-radius:var(--bs-border-radius-xl)!important}.rounded-end-5{border-top-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-right-radius:var(--bs-border-radius-xxl)!important}.rounded-end-circle{border-top-right-radius:50%!important;border-bottom-right-radius:50%!important}.rounded-end-pill{border-top-right-radius:var(--bs-border-radius-pill)!important;border-bottom-right-radius:var(--bs-border-radius-pill)!important}.rounded-bottom{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-0{border-bottom-right-radius:0!important;border-bottom-left-radius:0!important}.rounded-bottom-1{border-bottom-right-radius:var(--bs-border-radius-sm)!important;border-bottom-left-radius:var(--bs-border-radius-sm)!important}.rounded-bottom-2{border-bottom-right-radius:var(--bs-border-radius)!important;border-bottom-left-radius:var(--bs-border-radius)!important}.rounded-bottom-3{border-bottom-right-radius:var(--bs-border-radius-lg)!important;border-bottom-left-radius:var(--bs-border-radius-lg)!important}.rounded-bottom-4{border-bottom-right-radius:var(--bs-border-radius-xl)!important;border-bottom-left-radius:var(--bs-border-radius-xl)!important}.rounded-bottom-5{border-bottom-right-radius:var(--bs-border-radius-xxl)!important;border-bottom-left-radius:var(--bs-border-radius-xxl)!important}.rounded-bottom-circle{border-bottom-right-radius:50%!important;border-bottom-left-radius:50%!important}.rounded-bottom-pill{border-bottom-right-radius:var(--bs-border-radius-pill)!important;border-bottom-left-radius:var(--bs-border-radius-pill)!important}.rounded-start{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-0{border-bottom-left-radius:0!important;border-top-left-radius:0!important}.rounded-start-1{border-bottom-left-radius:var(--bs-border-radius-sm)!important;border-top-left-radius:var(--bs-border-radius-sm)!important}.rounded-start-2{border-bottom-left-radius:var(--bs-border-radius)!important;border-top-left-radius:var(--bs-border-radius)!important}.rounded-start-3{border-bottom-left-radius:var(--bs-border-radius-lg)!important;border-top-left-radius:var(--bs-border-radius-lg)!important}.rounded-start-4{border-bottom-left-radius:var(--bs-border-radius-xl)!important;border-top-left-radius:var(--bs-border-radius-xl)!important}.rounded-start-5{border-bottom-left-radius:var(--bs-border-radius-xxl)!important;border-top-left-radius:var(--bs-border-radius-xxl)!important}.rounded-start-circle{border-bottom-left-radius:50%!important;border-top-left-radius:50%!important}.rounded-start-pill{border-bottom-left-radius:var(--bs-border-radius-pill)!important;border-top-left-radius:var(--bs-border-radius-pill)!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}.z-n1{z-index:-1!important}.z-0{z-index:0!important}.z-1{z-index:1!important}.z-2{z-index:2!important}.z-3{z-index:3!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.object-fit-sm-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-sm-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-sm-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-sm-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-sm-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-sm-0{row-gap:0!important}.row-gap-sm-1{row-gap:.25rem!important}.row-gap-sm-2{row-gap:.5rem!important}.row-gap-sm-3{row-gap:1rem!important}.row-gap-sm-4{row-gap:1.5rem!important}.row-gap-sm-5{row-gap:3rem!important}.column-gap-sm-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-sm-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-sm-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-sm-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-sm-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-sm-5{-moz-column-gap:3rem!important;column-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}.object-fit-md-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-md-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-md-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-md-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-md-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-md-0{row-gap:0!important}.row-gap-md-1{row-gap:.25rem!important}.row-gap-md-2{row-gap:.5rem!important}.row-gap-md-3{row-gap:1rem!important}.row-gap-md-4{row-gap:1.5rem!important}.row-gap-md-5{row-gap:3rem!important}.column-gap-md-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-md-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-md-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-md-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-md-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-md-5{-moz-column-gap:3rem!important;column-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}.object-fit-lg-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-lg-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-lg-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-lg-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-lg-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-lg-0{row-gap:0!important}.row-gap-lg-1{row-gap:.25rem!important}.row-gap-lg-2{row-gap:.5rem!important}.row-gap-lg-3{row-gap:1rem!important}.row-gap-lg-4{row-gap:1.5rem!important}.row-gap-lg-5{row-gap:3rem!important}.column-gap-lg-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-lg-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-lg-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-lg-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-lg-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-lg-5{-moz-column-gap:3rem!important;column-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}.object-fit-xl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xl-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-xl-0{row-gap:0!important}.row-gap-xl-1{row-gap:.25rem!important}.row-gap-xl-2{row-gap:.5rem!important}.row-gap-xl-3{row-gap:1rem!important}.row-gap-xl-4{row-gap:1.5rem!important}.row-gap-xl-5{row-gap:3rem!important}.column-gap-xl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xl-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-xl-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-xl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xl-5{-moz-column-gap:3rem!important;column-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}.object-fit-xxl-contain{-o-object-fit:contain!important;object-fit:contain!important}.object-fit-xxl-cover{-o-object-fit:cover!important;object-fit:cover!important}.object-fit-xxl-fill{-o-object-fit:fill!important;object-fit:fill!important}.object-fit-xxl-scale{-o-object-fit:scale-down!important;object-fit:scale-down!important}.object-fit-xxl-none{-o-object-fit:none!important;object-fit: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-inline-grid{display:inline-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}.row-gap-xxl-0{row-gap:0!important}.row-gap-xxl-1{row-gap:.25rem!important}.row-gap-xxl-2{row-gap:.5rem!important}.row-gap-xxl-3{row-gap:1rem!important}.row-gap-xxl-4{row-gap:1.5rem!important}.row-gap-xxl-5{row-gap:3rem!important}.column-gap-xxl-0{-moz-column-gap:0!important;column-gap:0!important}.column-gap-xxl-1{-moz-column-gap:.25rem!important;column-gap:.25rem!important}.column-gap-xxl-2{-moz-column-gap:.5rem!important;column-gap:.5rem!important}.column-gap-xxl-3{-moz-column-gap:1rem!important;column-gap:1rem!important}.column-gap-xxl-4{-moz-column-gap:1.5rem!important;column-gap:1.5rem!important}.column-gap-xxl-5{-moz-column-gap:3rem!important;column-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:4rem!important}.fs-2{font-size:3rem!important}.fs-3{font-size:2.5rem!important}.fs-4{font-size:2rem!important}.fs-5{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-inline-grid{display:inline-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}}.navbar.bg-primary{border:1px solid #282828}.navbar.bg-dark{background-color:#060606!important;border:1px solid #282828}.navbar.bg-light{background-color:#888!important}.navbar.fixed-top{border-width:0 0 1px}.navbar.fixed-bottom{border-width:1px 0 0}.btn-primary{background-color:#2a9fd6}.btn-secondary{background-color:#555}.btn-success{background-color:#77b300}.btn-info{background-color:#93c}.btn-warning{background-color:#f80}.btn-danger{background-color:#c00}.btn-light{background-color:#222}.btn-dark{background-color:#adafae}legend{color:#fff}.form-control:disabled,.form-control[readonly]{border-color:transparent}.nav-pills .nav-link,.nav-tabs .nav-link{color:#fff}.nav-pills .nav-link:hover,.nav-tabs .nav-link:hover{background-color:#282828}.nav-pills .nav-link.disabled,.nav-pills .nav-link.disabled:hover,.nav-tabs .nav-link.disabled,.nav-tabs .nav-link.disabled:hover{color:var(--bs-secondary-color);background-color:transparent}.nav-pills .nav-link.active,.nav-tabs .nav-link.active{background-color:#2a9fd6}.breadcrumb a{color:#fff}.pagination a:hover{text-decoration:none}.alert{color:#fff;border:none}.alert .alert-link,.alert a{color:#fff;text-decoration:underline}.alert-primary{background-color:#2a9fd6}.alert-secondary{background-color:#555}.alert-success{background-color:#77b300}.alert-info{background-color:#93c}.alert-warning{background-color:#f80}.alert-danger{background-color:#c00}.alert-light{background-color:#222}.alert-dark{background-color:#adafae}.badge.bg-dark{color:#212529}.tooltip{--bs-tooltip-bg:var(--bs-tertiary-bg);--bs-tooltip-color:var(--bs-emphasis-color)}.list-group-item-action:hover{border-color:#2a9fd6}.popover-title{border-bottom:none}.toast-center-center{top:50%;left:50%;transform:translate(-50%,-50%)}.toast-top-center{top:0;right:0;width:100%}.toast-bottom-center{bottom:0;right:0;width:100%}.toast-top-full-width{top:0;right:0;width:100%}.toast-bottom-full-width{bottom:0;right:0;width:100%}.toast-top-left{top:12px;left:12px}.toast-top-right{top:12px;right:12px}.toast-bottom-right{right:12px;bottom:12px}.toast-bottom-left{bottom:12px;left:12px}.toast-title{font-weight:700}.toast-message{word-wrap:break-word}.toast-message a,.toast-message label{color:#fff}.toast-message a:hover{color:#ccc;text-decoration:none}.toast-close-button{position:relative;right:-.3em;top:-.3em;float:right;font-size:20px;font-weight:700;color:#fff;text-shadow:0 1px 0 #ffffff}.toast-close-button:hover,.toast-close-button:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4}button.toast-close-button{padding:0;cursor:pointer;background:transparent;border:0}.toast-container{pointer-events:none;position:fixed;z-index:999999}.toast-container *{box-sizing:border-box}.toast-container .ngx-toastr{position:relative;overflow:hidden;margin:0 0 6px;padding:15px 15px 15px 50px;width:300px;border-radius:3px;background-position:15px center;background-repeat:no-repeat;background-size:24px;box-shadow:0 0 12px #999;color:#fff}.toast-container .ngx-toastr:hover{box-shadow:0 0 12px #000;opacity:1;cursor:pointer}.toast-info{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOS4wNDMgOCA4IDExOS4wODMgOCAyNTZjMCAxMzYuOTk3IDExMS4wNDMgMjQ4IDI0OCAyNDhzMjQ4LTExMS4wMDMgMjQ4LTI0OEM1MDQgMTE5LjA4MyAzOTIuOTU3IDggMjU2IDh6bTAgMTEwYzIzLjE5NiAwIDQyIDE4LjgwNCA0MiA0MnMtMTguODA0IDQyLTQyIDQyLTQyLTE4LjgwNC00Mi00MiAxOC44MDQtNDIgNDItNDJ6bTU2IDI1NGMwIDYuNjI3LTUuMzczIDEyLTEyIDEyaC04OGMtNi42MjcgMC0xMi01LjM3My0xMi0xMnYtMjRjMC02LjYyNyA1LjM3My0xMiAxMi0xMmgxMnYtNjRoLTEyYy02LjYyNyAwLTEyLTUuMzczLTEyLTEydi0yNGMwLTYuNjI3IDUuMzczLTEyIDEyLTEyaDY0YzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MTAwaDEyYzYuNjI3IDAgMTIgNS4zNzMgMTIgMTJ2MjR6Jy8+PC9zdmc+)}.toast-error{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTI1NiA4QzExOSA4IDggMTE5IDggMjU2czExMSAyNDggMjQ4IDI0OCAyNDgtMTExIDI0OC0yNDhTMzkzIDggMjU2IDh6bTEyMS42IDMxMy4xYzQuNyA0LjcgNC43IDEyLjMgMCAxN0wzMzggMzc3LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwyNTYgMzEybC02NS4xIDY1LjZjLTQuNyA0LjctMTIuMyA0LjctMTcgMEwxMzQuNCAzMzhjLTQuNy00LjctNC43LTEyLjMgMC0xN2w2NS42LTY1LTY1LjYtNjUuMWMtNC43LTQuNy00LjctMTIuMyAwLTE3bDM5LjYtMzkuNmM0LjctNC43IDEyLjMtNC43IDE3IDBsNjUgNjUuNyA2NS4xLTY1LjZjNC43LTQuNyAxMi4zLTQuNyAxNyAwbDM5LjYgMzkuNmM0LjcgNC43IDQuNyAxMi4zIDAgMTdMMzEyIDI1Nmw2NS42IDY1LjF6Jy8+PC9zdmc+)}.toast-success{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1MTIgNTEyJyB3aWR0aD0nNTEyJyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTE3My44OTggNDM5LjQwNGwtMTY2LjQtMTY2LjRjLTkuOTk3LTkuOTk3LTkuOTk3LTI2LjIwNiAwLTM2LjIwNGwzNi4yMDMtMzYuMjA0YzkuOTk3LTkuOTk4IDI2LjIwNy05Ljk5OCAzNi4yMDQgMEwxOTIgMzEyLjY5IDQzMi4wOTUgNzIuNTk2YzkuOTk3LTkuOTk3IDI2LjIwNy05Ljk5NyAzNi4yMDQgMGwzNi4yMDMgMzYuMjA0YzkuOTk3IDkuOTk3IDkuOTk3IDI2LjIwNiAwIDM2LjIwNGwtMjk0LjQgMjk0LjQwMWMtOS45OTggOS45OTctMjYuMjA3IDkuOTk3LTM2LjIwNC0uMDAxeicvPjwvc3ZnPg==)}.toast-warning{background-image:url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHZpZXdCb3g9JzAgMCA1NzYgNTEyJyB3aWR0aD0nNTc2JyBoZWlnaHQ9JzUxMic+PHBhdGggZmlsbD0ncmdiKDI1NSwyNTUsMjU1KScgZD0nTTU2OS41MTcgNDQwLjAxM0M1ODcuOTc1IDQ3Mi4wMDcgNTY0LjgwNiA1MTIgNTI3Ljk0IDUxMkg0OC4wNTRjLTM2LjkzNyAwLTU5Ljk5OS00MC4wNTUtNDEuNTc3LTcxLjk4N0wyNDYuNDIzIDIzLjk4NWMxOC40NjctMzIuMDA5IDY0LjcyLTMxLjk1MSA4My4xNTQgMGwyMzkuOTQgNDE2LjAyOHpNMjg4IDM1NGMtMjUuNDA1IDAtNDYgMjAuNTk1LTQ2IDQ2czIwLjU5NSA0NiA0NiA0NiA0Ni0yMC41OTUgNDYtNDYtMjAuNTk1LTQ2LTQ2LTQ2em0tNDMuNjczLTE2NS4zNDZsNy40MTggMTM2Yy4zNDcgNi4zNjQgNS42MDkgMTEuMzQ2IDExLjk4MiAxMS4zNDZoNDguNTQ2YzYuMzczIDAgMTEuNjM1LTQuOTgyIDExLjk4Mi0xMS4zNDZsNy40MTgtMTM2Yy4zNzUtNi44NzQtNS4wOTgtMTIuNjU0LTExLjk4Mi0xMi42NTRoLTYzLjM4M2MtNi44ODQgMC0xMi4zNTYgNS43OC0xMS45ODEgMTIuNjU0eicvPjwvc3ZnPg==)}.toast-container.toast-top-center .ngx-toastr,.toast-container.toast-bottom-center .ngx-toastr{width:300px;margin-left:auto;margin-right:auto}.toast-container.toast-top-full-width .ngx-toastr,.toast-container.toast-bottom-full-width .ngx-toastr{width:96%;margin-left:auto;margin-right:auto}.ngx-toastr{background-color:#030303;pointer-events:auto}.toast-success{background-color:#51a351}.toast-error{background-color:#bd362f}.toast-info{background-color:#2f96b4}.toast-warning{background-color:#f89406}.toast-progress{position:absolute;left:0;bottom:0;height:4px;background-color:#000;opacity:.4}@media all and (max-width: 240px){.toast-container .ngx-toastr.div{padding:8px 8px 8px 50px;width:11em}.toast-container .toast-close-button{right:-.2em;top:-.2em}}@media all and (min-width: 241px) and (max-width: 480px){.toast-container .ngx-toastr.div{padding:8px 8px 8px 50px;width:18em}.toast-container .toast-close-button{right:-.2em;top:-.2em}}@media all and (min-width: 481px) and (max-width: 768px){.toast-container .ngx-toastr.div{padding:15px 15px 15px 50px;width:25em}}.la-line-scale-pulse-out-rapid,.la-line-scale-pulse-out-rapid>div{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.la-line-scale-pulse-out-rapid{display:block;font-size:0;color:#fff}.la-line-scale-pulse-out-rapid.la-dark{color:#333}.la-line-scale-pulse-out-rapid>div{display:inline-block;float:none;background-color:currentColor;border:0 solid currentColor}.la-line-scale-pulse-out-rapid{width:40px;height:32px}.la-line-scale-pulse-out-rapid>div{width:4px;height:32px;margin:0 2px;border-radius:0;-webkit-animation:line-scale-pulse-out-rapid .9s infinite cubic-bezier(.11,.49,.38,.78);-moz-animation:line-scale-pulse-out-rapid .9s infinite cubic-bezier(.11,.49,.38,.78);-o-animation:line-scale-pulse-out-rapid .9s infinite cubic-bezier(.11,.49,.38,.78);animation:line-scale-pulse-out-rapid .9s infinite cubic-bezier(.11,.49,.38,.78)}.la-line-scale-pulse-out-rapid>div:nth-child(3){-webkit-animation-delay:-.9s;-moz-animation-delay:-.9s;-o-animation-delay:-.9s;animation-delay:-.9s}.la-line-scale-pulse-out-rapid>div:nth-child(2),.la-line-scale-pulse-out-rapid>div:nth-child(4){-webkit-animation-delay:-.65s;-moz-animation-delay:-.65s;-o-animation-delay:-.65s;animation-delay:-.65s}.la-line-scale-pulse-out-rapid>div:nth-child(1),.la-line-scale-pulse-out-rapid>div:nth-child(5){-webkit-animation-delay:-.4s;-moz-animation-delay:-.4s;-o-animation-delay:-.4s;animation-delay:-.4s}.la-line-scale-pulse-out-rapid.la-sm{width:20px;height:16px}.la-line-scale-pulse-out-rapid.la-sm>div{width:2px;height:16px;margin:0 1px}.la-line-scale-pulse-out-rapid.la-2x{width:80px;height:64px}.la-line-scale-pulse-out-rapid.la-2x>div{width:8px;height:64px;margin:0 4px}.la-line-scale-pulse-out-rapid.la-3x{width:120px;height:96px}.la-line-scale-pulse-out-rapid.la-3x>div{width:12px;height:96px;margin:0 6px}@-webkit-keyframes line-scale-pulse-out-rapid{0%{-webkit-transform:scaley(1);transform:scaley(1)}80%{-webkit-transform:scaley(.3);transform:scaley(.3)}90%{-webkit-transform:scaley(1);transform:scaley(1)}}@-moz-keyframes line-scale-pulse-out-rapid{0%{-moz-transform:scaley(1);transform:scaley(1)}80%{-moz-transform:scaley(.3);transform:scaley(.3)}90%{-moz-transform:scaley(1);transform:scaley(1)}}@-o-keyframes line-scale-pulse-out-rapid{0%{-o-transform:scaley(1);transform:scaley(1)}80%{-o-transform:scaley(.3);transform:scaley(.3)}90%{-o-transform:scaley(1);transform:scaley(1)}}@keyframes line-scale-pulse-out-rapid{0%{-webkit-transform:scaley(1);-moz-transform:scaley(1);-o-transform:scaley(1);transform:scaley(1)}80%{-webkit-transform:scaley(.3);-moz-transform:scaley(.3);-o-transform:scaley(.3);transform:scaley(.3)}90%{-webkit-transform:scaley(1);-moz-transform:scaley(1);-o-transform:scaley(1);transform:scaley(1)}}.tab-panel{border:1px solid #ddd;padding:10px;border-radius:4px}.nav-tabs>li.open,.member-tabset>.nav-tabs>li:hover{border-bottom:4px solid #fbcdcf}.member-tabset>.nav-tabs>li.open>a,.member-tabset>.nav-tabs>li:hover>a{border:0;background:none!important;color:#333}.member-tabset>.nav-tabs>li.open>a>i,.member-tabset>.nav-tabs>li:hover>a>i{color:#a6a6a6}.member-tabset>.nav-tabs>li.open .dropdown-menu,.member-tabset>.nav-tabs>li:hover .dropdown-menu{margin-top:0}.member-tabset>.nav-tabs>li.active{border-bottom:4px solid #E95420;position:relative}.member-tabset>.nav-tabs>li.active>a{border:0!important;color:#333}.member-tabset>.nav-tabs>li.active>a>i{color:#404040}.member-tabset>.tab-content{margin-top:-3px;background-color:#000;border:0;border-top:1px solid black} diff --git a/DatingApp.sln b/DatingApp.sln index 9f32dc4..186e27d 100644 --- a/DatingApp.sln +++ b/DatingApp.sln @@ -5,6 +5,8 @@ VisualStudioVersion = 17.0.31903.59 MinimumVisualStudioVersion = 10.0.40219.1 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "API", "API\API.csproj", "{A19BE453-2275-44ED-A78B-3BD972F92574}" EndProject +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "API.Tests", "API.Tests\API.Tests.csproj", "{F9BE5C4C-5A91-414E-A281-F7CB0AE73119}" +EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution Debug|Any CPU = Debug|Any CPU @@ -27,6 +29,18 @@ Global {A19BE453-2275-44ED-A78B-3BD972F92574}.Release|x64.Build.0 = Release|Any CPU {A19BE453-2275-44ED-A78B-3BD972F92574}.Release|x86.ActiveCfg = Release|Any CPU {A19BE453-2275-44ED-A78B-3BD972F92574}.Release|x86.Build.0 = Release|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Debug|Any CPU.Build.0 = Debug|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Debug|x64.ActiveCfg = Debug|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Debug|x64.Build.0 = Debug|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Debug|x86.ActiveCfg = Debug|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Debug|x86.Build.0 = Debug|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Release|Any CPU.ActiveCfg = Release|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Release|Any CPU.Build.0 = Release|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Release|x64.ActiveCfg = Release|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Release|x64.Build.0 = Release|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Release|x86.ActiveCfg = Release|Any CPU + {F9BE5C4C-5A91-414E-A281-F7CB0AE73119}.Release|x86.Build.0 = Release|Any CPU EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/client/angular.json b/client/angular.json index bc18f1f..dc166d3 100644 --- a/client/angular.json +++ b/client/angular.json @@ -24,6 +24,7 @@ ], "tsConfig": "tsconfig.app.json", "assets": [ + "src/assets", { "glob": "**/*", "input": "public" @@ -31,6 +32,7 @@ ], "styles": [ "node_modules/ngx-bootstrap/datepicker/bs-datepicker.css", + "node_modules/@fortawesome/fontawesome-free/css/all.min.css", "node_modules/bootstrap/dist/css/bootstrap.min.css", "node_modules/font-awesome/css/font-awesome.min.css", "node_modules/bootswatch/dist/cyborg/bootstrap.min.css", @@ -45,8 +47,8 @@ "budgets": [ { "type": "initial", - "maximumWarning": "1.5mb", - "maximumError": "2MB" + "maximumWarning": "2mb", + "maximumError": "2.5MB" }, { "type": "anyComponentStyle", diff --git a/client/package-lock.json b/client/package-lock.json index 6a2e12e..25158d1 100644 --- a/client/package-lock.json +++ b/client/package-lock.json @@ -15,6 +15,11 @@ "@angular/platform-browser": "^19.2.0", "@angular/platform-browser-dynamic": "^19.2.0", "@angular/router": "^19.2.0", + "@fortawesome/angular-fontawesome": "^1.0.0", + "@fortawesome/fontawesome-free": "^6.4.0", + "@fortawesome/fontawesome-svg-core": "^6.7.2", + "@fortawesome/free-brands-svg-icons": "^6.7.2", + "@fortawesome/free-solid-svg-icons": "^6.7.2", "@microsoft/signalr": "^8.0.7", "bootstrap": "^5.3.5", "bootswatch": "^5.3.5", @@ -2827,6 +2832,74 @@ "node": ">=18" } }, + "node_modules/@fortawesome/angular-fontawesome": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/@fortawesome/angular-fontawesome/-/angular-fontawesome-1.0.0.tgz", + "integrity": "sha512-EC2fYuXIuw2ld1kzJi+zysWus6OeGGfLQtbh0hW9zyyq5aBo8ZJkcJKBsVQ8E6Mg7nHyTWaXn+sdcXTPDWz+UQ==", + "license": "MIT", + "dependencies": { + "@fortawesome/fontawesome-svg-core": "^6.7.1", + "tslib": "^2.8.1" + }, + "peerDependencies": { + "@angular/core": "^19.0.0" + } + }, + "node_modules/@fortawesome/fontawesome-common-types": { + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-6.7.2.tgz", + "integrity": "sha512-Zs+YeHUC5fkt7Mg1l6XTniei3k4bwG/yo3iFUtZWd/pMx9g3fdvkSK9E0FOC+++phXOka78uJcYb8JaFkW52Xg==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-free": { + "version": "6.4.0", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-free/-/fontawesome-free-6.4.0.tgz", + "integrity": "sha512-0NyytTlPJwB/BF5LtRV8rrABDbe3TdTXqNB3PdZ+UUUZAEIrdOJdmABqKjt4AXwIoJNaRVVZEXxpNrqvE1GAYQ==", + "hasInstallScript": true, + "license": "(CC-BY-4.0 AND OFL-1.1 AND MIT)", + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/fontawesome-svg-core": { + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-6.7.2.tgz", + "integrity": "sha512-yxtOBWDrdi5DD5o1pmVdq3WMCvnobT0LU6R8RyyVXPvFRd2o79/0NCuQoCjNTeZz9EzA9xS3JxNWfv54RIHFEA==", + "license": "MIT", + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.7.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-brands-svg-icons": { + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@fortawesome/free-brands-svg-icons/-/free-brands-svg-icons-6.7.2.tgz", + "integrity": "sha512-zu0evbcRTgjKfrr77/2XX+bU+kuGfjm0LbajJHVIgBWNIDzrhpRxiCPNT8DW5AdmSsq7Mcf9D1bH0aSeSUSM+Q==", + "license": "(CC-BY-4.0 AND MIT)", + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.7.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@fortawesome/free-solid-svg-icons": { + "version": "6.7.2", + "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-6.7.2.tgz", + "integrity": "sha512-GsBrnOzU8uj0LECDfD5zomZJIjrPhIlWU82AHwa2s40FKH+kcxQaBvBo3Z4TxyZHIyX8XTDxsyA33/Vx9eFuQA==", + "license": "(CC-BY-4.0 AND MIT)", + "dependencies": { + "@fortawesome/fontawesome-common-types": "6.7.2" + }, + "engines": { + "node": ">=6" + } + }, "node_modules/@inquirer/checkbox": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/@inquirer/checkbox/-/checkbox-4.1.5.tgz", diff --git a/client/package.json b/client/package.json index 03ab9eb..e0ba165 100644 --- a/client/package.json +++ b/client/package.json @@ -17,6 +17,11 @@ "@angular/platform-browser": "^19.2.0", "@angular/platform-browser-dynamic": "^19.2.0", "@angular/router": "^19.2.0", + "@fortawesome/angular-fontawesome": "^1.0.0", + "@fortawesome/fontawesome-free": "^6.4.0", + "@fortawesome/fontawesome-svg-core": "^6.7.2", + "@fortawesome/free-brands-svg-icons": "^6.7.2", + "@fortawesome/free-solid-svg-icons": "^6.7.2", "@microsoft/signalr": "^8.0.7", "bootstrap": "^5.3.5", "bootswatch": "^5.3.5", diff --git a/client/src/app/_models/Photo.ts b/client/src/app/_models/Photo.ts index 9862ad0..1245203 100644 --- a/client/src/app/_models/Photo.ts +++ b/client/src/app/_models/Photo.ts @@ -1,3 +1,5 @@ +import { Tag } from "./Tag" + export interface Photo { id: number url: string @@ -5,4 +7,5 @@ export interface Photo { createdAt: string username: string isApproved: boolean + tags?: Tag[] } \ No newline at end of file diff --git a/client/src/app/_models/Tag.ts b/client/src/app/_models/Tag.ts new file mode 100644 index 0000000..1436052 --- /dev/null +++ b/client/src/app/_models/Tag.ts @@ -0,0 +1,4 @@ +export interface Tag { + id: number; + name: string; +} \ No newline at end of file diff --git a/client/src/app/_models/photoApprovalStats.ts b/client/src/app/_models/photoApprovalStats.ts new file mode 100644 index 0000000..98b3843 --- /dev/null +++ b/client/src/app/_models/photoApprovalStats.ts @@ -0,0 +1,5 @@ +export interface PhotoApprovalStats { + username: string; + approvedPhotos: number; + unapprovedPhotos: number; +} \ No newline at end of file diff --git a/client/src/app/_services/account.service.ts b/client/src/app/_services/account.service.ts index 782a35f..743e7e6 100644 --- a/client/src/app/_services/account.service.ts +++ b/client/src/app/_services/account.service.ts @@ -15,6 +15,7 @@ export class AccountService { private presenceSerivce = inject(PresenceService); baseUrl = environment.apiUrl; currentUser = signal(null); + roles = computed(() => { const user = this.currentUser(); if (user && user.token) { diff --git a/client/src/app/_services/admin.service.ts b/client/src/app/_services/admin.service.ts index e43230e..8c029cb 100644 --- a/client/src/app/_services/admin.service.ts +++ b/client/src/app/_services/admin.service.ts @@ -3,6 +3,8 @@ import { environment } from '../../environments/environment'; import { HttpClient } from '@angular/common/http'; import { User } from '../_models/user'; import { Photo } from '../_models/Photo'; +import { Tag } from '../_models/Tag'; +import { PhotoApprovalStats } from '../_models/photoApprovalStats'; @Injectable({ providedIn: 'root' @@ -11,6 +13,17 @@ export class AdminService { baseUrl = environment.apiUrl; private http = inject(HttpClient); + getTags() { + return this.http.get(this.baseUrl + 'admin/get-tags'); + } + addTag(tag: Tag) { + return this.http.post(this.baseUrl + 'admin/create-tag', tag); + } + removeTag(tagName: string) { + return this.http.delete(this.baseUrl + `admin/delete-tag/${tagName}`, { + responseType: 'text', + }); + } getUserWithRoles() { return this.http.get(this.baseUrl + 'admin/users-with-roles'); } @@ -27,4 +40,10 @@ export class AdminService { rejectPhoto(photoId: number) { return this.http.post(this.baseUrl + 'admin/reject-photo/' + photoId, {}); } + getUsersWithoutMainPhoto() { + return this.http.get(this.baseUrl + 'admin/users-without-main-photo'); + } + getPhotoStats() { + return this.http.get(this.baseUrl + 'admin/photo-stats'); + } } diff --git a/client/src/app/_services/members.service.ts b/client/src/app/_services/members.service.ts index 2c70f15..c18545a 100644 --- a/client/src/app/_services/members.service.ts +++ b/client/src/app/_services/members.service.ts @@ -9,6 +9,7 @@ import { ParseError } from '@angular/compiler'; import { UserParams } from '../_models/userParams'; import { AccountService } from './account.service'; import { setPaginatedResponse, setPaginationHeaders } from './paginationHelper'; +import { Tag } from '../_models/Tag'; @Injectable({ providedIn: 'root' @@ -55,39 +56,32 @@ export class MembersService { return this.http.get(this.baseUrl + 'users/' + username); } updateMember(member: Member) { - return this.http.put(this.baseUrl + 'users', member).pipe( - /* tap(() => { - this.members.update(memebers => - memebers.map(m => - m.username === member.username ? member : m - ) - ); - }) */ - ); + return this.http.put(this.baseUrl + 'users', member).pipe(); } setMainPhoto(photo: Photo) { - return this.http.put(this.baseUrl + 'users/set-main-photo/' + photo.id, {}).pipe( - /* tap(() => { - this.members.update(members => members.map(m => { - if (m.photos.includes(photo)) { - m.photoUrl = photo.url; - } - return m; - }) - )} - ) */ - ); + return this.http.put(this.baseUrl + 'users/set-main-photo/' + photo.id, {}).pipe(); } deletePhoto(photo: Photo) { - return this.http.delete(this.baseUrl + 'users/delete-photo/' + photo.id).pipe( - /* tap(() => { - this.members.update(members => members.map(m => { - if (m.photos.includes(photo)) { - m.photos = m.photos.filter(p => p.id !== photo.id); - } - return m; - })); - }) */ - ); + return this.http.delete(this.baseUrl + 'users/delete-photo/' + photo.id).pipe(); } + getTagsForPhoto(photoId: number) { + return this.http.get(this.baseUrl + 'users/tags/' + photoId); + } + getPhotosWithTags() { + return this.http.get(this.baseUrl + 'users/photos-tags'); + } + getAllTags() { + return this.http.get(this.baseUrl + 'users/tags'); + } + addTagToPhoto(photoId: number, tags: string[]) { + return this.http.post( + `${this.baseUrl}users/assign-tags/${photoId}`, + JSON.stringify(tags), + { + headers: { + 'Content-Type': 'application/json', + }, + } + ); + } } diff --git a/client/src/app/_services/message.service.ts b/client/src/app/_services/message.service.ts index f7343b0..7523f37 100644 --- a/client/src/app/_services/message.service.ts +++ b/client/src/app/_services/message.service.ts @@ -7,6 +7,7 @@ import { setPaginatedResponse, setPaginationHeaders } from './paginationHelper'; import { HubConnection, HubConnectionBuilder, HubConnectionState } from '@microsoft/signalr'; import { User } from '../_models/user'; import { Group } from '../_models/group'; +import { BusyService } from './busy.service'; @Injectable({ providedIn: 'root' @@ -15,6 +16,7 @@ export class MessageService { baseUrl = environment.apiUrl; hubUrl = environment.hubsUrl; private http = inject(HttpClient); + private busyService = inject(BusyService) hubConnection?: HubConnection; paginatedResult = signal | null>(null); messageThread = signal([]); @@ -38,13 +40,16 @@ export class MessageService { return this.http.delete(this.baseUrl + 'messages/' + id); } createHubConnection(user: User, otherUsername: string) { + this.busyService.busy(); this.hubConnection = new HubConnectionBuilder() .withUrl(this.hubUrl + 'message?user=' + otherUsername, { accessTokenFactory: () => user.token }) .withAutomaticReconnect() .build(); - this.hubConnection.start().catch(error => console.error(error)); + this.hubConnection.start() + .catch(error => console.error(error)) + .finally(() => this.busyService.idle()); this.hubConnection.on('ReceiveMessageThread', messages => { this.messageThread.set(messages) }); diff --git a/client/src/app/admin/admin-panel/admin-panel.component.html b/client/src/app/admin/admin-panel/admin-panel.component.html index 96828fc..46c4a71 100644 --- a/client/src/app/admin/admin-panel/admin-panel.component.html +++ b/client/src/app/admin/admin-panel/admin-panel.component.html @@ -4,13 +4,13 @@

Admin panel

- +
- +
diff --git a/client/src/app/admin/admin-panel/admin-panel.component.ts b/client/src/app/admin/admin-panel/admin-panel.component.ts index 8cb196c..d33fd61 100644 --- a/client/src/app/admin/admin-panel/admin-panel.component.ts +++ b/client/src/app/admin/admin-panel/admin-panel.component.ts @@ -1,16 +1,13 @@ import { Component, inject, OnDestroy, OnInit } from '@angular/core'; import { TabsModule } from 'ngx-bootstrap/tabs'; -import { UserManagementComponent } from "../user-management/user-management.component"; import { HasRoleDirective } from '../../_directives/has-role.directive'; -import { PhotoManagementComponent } from "../photo-management/photo-management.component"; -import { PresenceService } from '../../_services/presence.service'; -import { ActivatedRoute, Router } from '@angular/router'; -import { AccountService } from '../../_services/account.service'; -import { take } from 'rxjs'; + +import { AdminUserManagementComponent } from '../admin-user-management/admin-user-management.component'; +import { AdminPhotoManagementComponent } from '../admin-photo-management/admin-photo-management.component'; @Component({ selector: 'app-admin-panel', - imports: [TabsModule, UserManagementComponent, HasRoleDirective, PhotoManagementComponent], + imports: [TabsModule, HasRoleDirective, AdminUserManagementComponent, AdminPhotoManagementComponent], templateUrl: './admin-panel.component.html', styleUrl: './admin-panel.component.css' }) diff --git a/client/src/app/admin/photo-management/photo-management.component.css b/client/src/app/admin/admin-photo-management/admin-photo-management.component.css similarity index 100% rename from client/src/app/admin/photo-management/photo-management.component.css rename to client/src/app/admin/admin-photo-management/admin-photo-management.component.css diff --git a/client/src/app/admin/admin-photo-management/admin-photo-management.component.html b/client/src/app/admin/admin-photo-management/admin-photo-management.component.html new file mode 100644 index 0000000..c99beba --- /dev/null +++ b/client/src/app/admin/admin-photo-management/admin-photo-management.component.html @@ -0,0 +1,116 @@ +

+ User Photos Management +

+

+ Approve or reject photos as you like. +

+
+ + + + +
+ +
+ + + + + + + + + +
+

Photo Tags List

+

+ You can browse available photo tags here and also create new tags. +

+
+ @for (tag of tags; track tag.id) { +
+ {{ tag.name }} + +
+ } +
+
+ + +
+

Create New Photo Tag

+
+
+ + +
+
+ +
+
+
\ No newline at end of file diff --git a/client/src/app/admin/admin-photo-management/admin-photo-management.component.ts b/client/src/app/admin/admin-photo-management/admin-photo-management.component.ts new file mode 100644 index 0000000..b2aa8ab --- /dev/null +++ b/client/src/app/admin/admin-photo-management/admin-photo-management.component.ts @@ -0,0 +1,161 @@ +import { Component, inject, OnInit } from '@angular/core'; +import { AdminService } from '../../_services/admin.service'; +import { Photo } from '../../_models/Photo'; +import { ToastrModule, ToastrService } from 'ngx-toastr'; +import { FormsModule, NgForm } from '@angular/forms'; +import { Tag } from '../../_models/Tag'; +import { CommonModule } from '@angular/common'; +import { HasRoleDirective } from '../../_directives/has-role.directive'; +import { AdminPhotoStatsComponent } from '../admin-photo-stats/admin-photo-stats.component'; +import { PhotoModalComponent } from '../../modals/photo-modal/photo-modal.component'; + +@Component({ + selector: 'app-admin-photo-management', + imports: [ + ToastrModule, + FormsModule, + CommonModule, + HasRoleDirective, + AdminPhotoStatsComponent, + PhotoModalComponent + ], + templateUrl: './admin-photo-management.component.html', + styleUrl: './admin-photo-management.component.css', +}) +export class AdminPhotoManagementComponent implements OnInit { + private adminService = inject(AdminService); + private toastrService = inject(ToastrService); + + selectedPhoto: Photo | null = null; + isModalOpen = false; + photos: Photo[] = []; + tags: Tag[] = []; + newTag: Tag = {} as Tag; + selectedTag: Tag = {} as Tag; + filteredPhotos: any[] = []; + + ngOnInit(): void { + this.loadPhotosForApproval(); + this.getTags(); + } + + loadPhotosForApproval() { + this.adminService.getPhotosForApproval().subscribe({ + next: (response) => { + this.photos = response; + this.filterPhotosByTag(); + }, + error: (er) => { + this.toastrService.error('Failed to load photos'); + console.log(er); + }, + }); + } + + openPhotoModal(photo: Photo): void { + this.selectedPhoto = photo; + this.isModalOpen = true; + } + + closePhotoModal(): void { + this.isModalOpen = false; + setTimeout(() => { + this.selectedPhoto = null; + }, 300); + } + + onPhotoApproved(photoId: number): void { + this.photos = this.photos.filter(p => p.id !== photoId); + this.filterPhotosByTag(); + } + + onPhotoRejected(photoId: number): void { + this.photos = this.photos.filter(p => p.id !== photoId); + this.filterPhotosByTag(); + } + + approvePhoto(photoId: number) { + this.adminService.approvePhoto(photoId).subscribe({ + next: () => { + this.photos = this.photos.filter(p => p.id !== photoId); + this.filterPhotosByTag(); + }, + error: (er) => { + this.toastrService.error('Failed to approve photo'); + console.log(er); + }, + }); + } + + rejectPhoto(photoId: number) { + this.adminService.rejectPhoto(photoId).subscribe({ + next: () => { + this.photos = this.photos.filter(p => p.id !== photoId); + this.filterPhotosByTag(); + }, + error: (er) => { + this.toastrService.error('Failed to reject photo'); + console.log(er); + }, + }); + } + + createTag(form: NgForm) { + if (form.invalid) return; + this.adminService.addTag(this.newTag).subscribe({ + next: () => { + this.newTag.name = ''; + this.toastrService.success('Tag successfully created'); + this.getTags(); + form.resetForm(); + }, + error: (err) => { + if (err.status === 400) { + this.toastrService.error("You can't create duplicates!"); + } else { + this.toastrService.error('Something unexpected happened: ' + err); + } + }, + }); + } + + getTags() { + return this.adminService.getTags().subscribe({ + next: (response) => { + this.tags = response; + }, + error: (error) => + this.toastrService.error('Something unexpected happened: ' + error), + }); + } + + removeTag(tagName: string) { + if (!confirm(`Are you sure you want to delete the tag "${tagName}"?`)) + return; + this.adminService.removeTag(tagName).subscribe({ + next: () => { + this.toastrService.success('Tag successfully removed'); + this.getTags(); + this.loadPhotosForApproval(); + }, + error: (error) => { + if (error.status === 400) { + this.toastrService.error("You can't remove a tag that is in use!"); + } else { + this.toastrService.error('Something unexpected happened: ' + error); + } + }, + }); + } + + filterPhotosByTag() { + if (!this.selectedTag) { + this.filteredPhotos = this.photos; + } else { + this.filteredPhotos = this.photos.filter( + (photo) => + photo.tags && photo.tags.some((tag) => tag === this.selectedTag) + ); + } + } +} \ No newline at end of file diff --git a/client/src/app/admin/user-management/user-management.component.css b/client/src/app/admin/admin-photo-stats/admin-photo-stats.component.css similarity index 100% rename from client/src/app/admin/user-management/user-management.component.css rename to client/src/app/admin/admin-photo-stats/admin-photo-stats.component.css diff --git a/client/src/app/admin/admin-photo-stats/admin-photo-stats.component.html b/client/src/app/admin/admin-photo-stats/admin-photo-stats.component.html new file mode 100644 index 0000000..8cc1017 --- /dev/null +++ b/client/src/app/admin/admin-photo-stats/admin-photo-stats.component.html @@ -0,0 +1,27 @@ +
+
+
Users without main photo:
+
    +
  • {{ user }}
  • +
+
+
+
Photo approval stats:
+ + + + + + + + + + + + + + + +
UsernameApprovedUnapproved
{{ stat.username }}{{ stat.approvedPhotos }}{{ stat.unapprovedPhotos }}
+
+
\ No newline at end of file diff --git a/client/src/app/admin/admin-photo-stats/admin-photo-stats.component.ts b/client/src/app/admin/admin-photo-stats/admin-photo-stats.component.ts new file mode 100644 index 0000000..cd888a3 --- /dev/null +++ b/client/src/app/admin/admin-photo-stats/admin-photo-stats.component.ts @@ -0,0 +1,37 @@ +import { Component, OnInit, inject } from '@angular/core'; +import { AdminService } from '../../_services/admin.service'; +import { PhotoApprovalStats } from '../../_models/photoApprovalStats'; +import { CommonModule } from '@angular/common'; + +@Component({ + selector: 'app-admin-photo-stats', + templateUrl: './admin-photo-stats.component.html', + standalone: true, + imports: [CommonModule], +}) +export class AdminPhotoStatsComponent implements OnInit { + private adminService = inject(AdminService); + usersWithoutMainPhoto: string[] = []; + photoStats: PhotoApprovalStats[] = []; + + ngOnInit(): void { + this.getUsersWithoutMainPhoto(); + this.getPhotoStats(); + } + + getUsersWithoutMainPhoto() { + this.adminService.getUsersWithoutMainPhoto().subscribe({ + next: (users) => { + this.usersWithoutMainPhoto = users; + }, + }); + } + + getPhotoStats() { + this.adminService.getPhotoStats().subscribe({ + next: (stats) => { + this.photoStats = stats; + }, + }); + } +} diff --git a/client/src/app/admin/admin-user-management/admin-user-management.component.css b/client/src/app/admin/admin-user-management/admin-user-management.component.css new file mode 100644 index 0000000..e69de29 diff --git a/client/src/app/admin/admin-user-management/admin-user-management.component.html b/client/src/app/admin/admin-user-management/admin-user-management.component.html new file mode 100644 index 0000000..8c2c037 --- /dev/null +++ b/client/src/app/admin/admin-user-management/admin-user-management.component.html @@ -0,0 +1,24 @@ +
+ + + + + + + + + + @for (user of users; track user.username) { + + + + + + } + +
UsernameActive roles
{{ user.username }}{{ user.roles }} + +
+
\ No newline at end of file diff --git a/client/src/app/admin/user-management/user-management.component.ts b/client/src/app/admin/admin-user-management/admin-user-management.component.ts similarity index 84% rename from client/src/app/admin/user-management/user-management.component.ts rename to client/src/app/admin/admin-user-management/admin-user-management.component.ts index d4bab98..ae7e2dd 100644 --- a/client/src/app/admin/user-management/user-management.component.ts +++ b/client/src/app/admin/admin-user-management/admin-user-management.component.ts @@ -3,23 +3,24 @@ import { AdminService } from '../../_services/admin.service'; import { User } from '../../_models/user'; import { BsModalRef, BsModalService, ModalOptions } from 'ngx-bootstrap/modal'; import { RolesModalComponent } from '../../modals/roles-modal/roles-modal.component'; -import { Title } from '@angular/platform-browser'; +import { CommonModule } from '@angular/common'; @Component({ - selector: 'app-user-management', - imports: [], - templateUrl: './user-management.component.html', - styleUrl: './user-management.component.css' + selector: 'app-admin-user-management', + imports: [CommonModule], + templateUrl: './admin-user-management.component.html', + styleUrl: './admin-user-management.component.css' }) -export class UserManagementComponent implements OnInit{ +export class AdminUserManagementComponent implements OnInit{ private adminService = inject(AdminService); private modalService = inject(BsModalService) bsModalRef: BsModalRef = new BsModalRef(); users: User[] = []; - + ngOnInit(): void { this.getUserWithRoles(); } + getUserWithRoles() { this.adminService.getUserWithRoles().subscribe({ next: users => this.users = users diff --git a/client/src/app/admin/photo-management/photo-management.component.html b/client/src/app/admin/photo-management/photo-management.component.html deleted file mode 100644 index 64eb680..0000000 --- a/client/src/app/admin/photo-management/photo-management.component.html +++ /dev/null @@ -1,93 +0,0 @@ - \ No newline at end of file diff --git a/client/src/app/admin/photo-management/photo-management.component.ts b/client/src/app/admin/photo-management/photo-management.component.ts deleted file mode 100644 index 18e2c37..0000000 --- a/client/src/app/admin/photo-management/photo-management.component.ts +++ /dev/null @@ -1,113 +0,0 @@ -import { Component, inject, OnInit } from '@angular/core'; -import { AdminService } from '../../_services/admin.service'; -import { Photo } from '../../_models/Photo'; -import { ToastrModule, ToastrService } from 'ngx-toastr'; -import { MessageService } from '../../_services/message.service'; -import { FormsModule } from '@angular/forms'; -import { AccountService } from '../../_services/account.service'; -import { take } from 'rxjs'; - -@Component({ - selector: 'app-photo-management', - imports: [ToastrModule, ToastrModule, FormsModule], - templateUrl: './photo-management.component.html', - styleUrl: './photo-management.component.css' -}) -export class PhotoManagementComponent implements OnInit { - private adminservice = inject(AdminService); - private toastrService = inject(ToastrService); - private messageService = inject(MessageService); - private accountService = inject(AccountService); - selectedPhoto: Photo | null = null; - isModalOpen = false; - photos: Photo[] = []; - isAnonymous: boolean = false; - adminMessage: string = ''; - - - ngOnInit(): void { - this.approvePhotosForApproval(); - } - approvePhotosForApproval() { - this.adminservice.getPhotosForApproval().subscribe({ - next: p => this.photos = p, - error: er => { - this.toastrService.error('Failed to load photos'); - console.log(er); - } - }); - } - approvePhoto(photoId: number) { - if(this.isAnonymous){ - if(this.adminMessage != "") { - this.sendMessage(); - } else { - this.toastrService.error("Type in the message, that you have decided to send!"); - } - } - this.adminservice.approvePhoto(photoId).subscribe({ - next: () => this.photos.splice(this.photos.findIndex(p => p.id === photoId), 1), - error: er => { - this.toastrService.error('Failed to approve photo'); - console.log(er); - } - }); - } - rejectPhoto(photoId: number) { - if(this.isAnonymous){ - if(this.adminMessage != "") { - this.sendMessage(); - } else { - this.toastrService.error("Type in the message, that you have decided to send!"); - } - } - this.adminservice.rejectPhoto(photoId).subscribe({ - next: () => this.photos.splice(this.photos.findIndex(p => p.id === photoId), 1), - error: er => { - this.toastrService.error('Failed to reject photo'); - console.log(er); - } - }); - } - sendMessage(){ - const formattedMessage = `Regarding your photo: ${this.adminMessage}`; - if (this.selectedPhoto?.username) { - const user = this.accountService.currentUser; - if (!user) { - this.toastrService.error('You must be logged in to send messages'); - return; - } - this.messageService.sendMessage(this.selectedPhoto.username, formattedMessage) - ?.then(() => { - console.log(`Anonymous message sent to ${this.selectedPhoto?.username}`); - }) - .catch(error => { - console.error('Error sending message:', error); - this.toastrService.error('Failed to send notification message'); - }); - } else { - this.toastrService.error('No username selected for the photo'); - } - } - openPhotoModal(photo: Photo): void { - this.selectedPhoto = photo; - this.isModalOpen = true; - this.isAnonymous = false; - this.adminMessage = ""; - const user = this.accountService.currentUser(); - if (!user) return; - this.messageService.createHubConnection(user, this.selectedPhoto.username); - document.body.classList.add('modal-open'); - } - - closePhotoModal(): void { - this.messageService.stopHubConnection(); - this.isModalOpen = false; - document.body.classList.remove('modal-open'); - setTimeout(() => { - this.selectedPhoto = null; - this.isAnonymous = false; - this.adminMessage = ""; - }, 300); - } -} diff --git a/client/src/app/admin/user-management/user-management.component.html b/client/src/app/admin/user-management/user-management.component.html deleted file mode 100644 index e724f7f..0000000 --- a/client/src/app/admin/user-management/user-management.component.html +++ /dev/null @@ -1,20 +0,0 @@ -
- - - - - - - - - - @for (user of users; track user.username) { - - - - - - } - -
UsernameActive roles
{{user.username}}{{user.roles}}
-
\ No newline at end of file diff --git a/client/src/app/app.component.ts b/client/src/app/app.component.ts index fa21c2b..0d7f1f0 100644 --- a/client/src/app/app.component.ts +++ b/client/src/app/app.component.ts @@ -3,10 +3,11 @@ import { RouterOutlet } from '@angular/router'; import { NavComponent } from "./nav/nav.component"; import { AccountService } from './_services/account.service'; import { NgxSpinnerComponent } from 'ngx-spinner'; +import { FontAwesomeModule } from '@fortawesome/angular-fontawesome'; @Component({ selector: 'app-root', - imports: [RouterOutlet, NavComponent, NgxSpinnerComponent], + imports: [RouterOutlet, NavComponent, NgxSpinnerComponent, FontAwesomeModule], templateUrl: './app.component.html', styleUrl: './app.component.css' }) diff --git a/client/src/app/members/member-messages/member-messages.component.html b/client/src/app/members/member-messages/member-messages.component.html index 7eaba2e..2cf9d23 100644 --- a/client/src/app/members/member-messages/member-messages.component.html +++ b/client/src/app/members/member-messages/member-messages.component.html @@ -57,7 +57,12 @@ class="form-control input-sm" placeholder="Send a private message">
- +
diff --git a/client/src/app/members/member-messages/member-messages.component.ts b/client/src/app/members/member-messages/member-messages.component.ts index a62c7c7..cf8a6a2 100644 --- a/client/src/app/members/member-messages/member-messages.component.ts +++ b/client/src/app/members/member-messages/member-messages.component.ts @@ -21,10 +21,11 @@ export class MemberMessagesComponent implements AfterViewChecked { this.scrollToBottom(); } sendMessage(){ + this.loading = true; this.messageService.sendMessage(this.username(), this.messageContent)?.then(() => { this.messageForm?.reset(); this.scrollToBottom(); - }); + }).finally(() => this.loading = false); } private scrollToBottom() { diff --git a/client/src/app/members/photo-editor/photo-editor.component.css b/client/src/app/members/photo-editor/photo-editor.component.css index af29096..8b25c9a 100644 --- a/client/src/app/members/photo-editor/photo-editor.component.css +++ b/client/src/app/members/photo-editor/photo-editor.component.css @@ -1,3 +1,213 @@ .nv-file-over { border: dotted 3px red } +/* Photo Card Styles */ +.photo-card { + transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out; + border: none; + border-radius: 15px; + overflow: hidden; +} + +.photo-card:hover { + transform: translateY(-5px); + box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15) !important; +} + +.photo-img { + transition: filter 0.3s ease; + border-radius: 15px 15px 0 0; +} + +.photo-card:hover .photo-img { + filter: brightness(1.05); +} + +/* Drop Zone Styles */ +.drop-zone { + min-height: 200px; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + cursor: pointer; + transition: all 0.3s ease; + background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%); +} + +.drop-zone:hover { + background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%); + border-color: #2196f3 !important; +} + +.drop-zone.border-primary { + background: linear-gradient(135deg, #e3f2fd 0%, #bbdefb 100%); + transform: scale(1.02); +} + +/* Upload Queue Styles */ +.upload-queue { + background: #f8f9fa; + border-radius: 10px; + padding: 15px; +} + +/* Badge Styles */ +.badge { + font-size: 0.75em; + padding: 0.5em 0.75em; +} + +.badge .btn-close { + margin-left: 0.25rem; + padding: 0; + font-size: 0.6em; +} + +/* Button Styles */ +.btn { + border-radius: 8px; + font-weight: 500; + transition: all 0.2s ease; +} + +.btn:hover { + transform: translateY(-1px); +} + +.btn-sm { + padding: 0.4rem 0.8rem; + font-size: 0.85rem; +} + +/* Form Check Styles */ +.form-check { + padding: 0.75rem; + margin: 0; + border-radius: 8px; + transition: background-color 0.2s ease; +} + +.form-check:hover { + background-color: #f8f9fa; +} + +.form-check-input:checked { + background-color: #0d6efd; + border-color: #0d6efd; +} + +.form-check-label { + cursor: pointer; + font-weight: 500; +} + +/* Progress Bar Styles */ +.progress { + height: 8px; + border-radius: 10px; + background-color: #e9ecef; + overflow: hidden; +} + +.progress-bar { + border-radius: 10px; + transition: width 0.3s ease; +} + +/* Card Header Styles */ +.card-header { + border-radius: 15px 15px 0 0 !important; + border-bottom: none; + padding: 20px 25px; +} + +.card-body { + padding: 25px; +} + +/* Spinner Styles */ +.spinner-border { + width: 3rem; + height: 3rem; +} + +/* Custom scrollbar for upload queue */ +.upload-queue::-webkit-scrollbar { + width: 6px; +} + +.upload-queue::-webkit-scrollbar-track { + background: #f1f1f1; + border-radius: 10px; +} + +.upload-queue::-webkit-scrollbar-thumb { + background: #c1c1c1; + border-radius: 10px; +} + +.upload-queue::-webkit-scrollbar-thumb:hover { + background: #a8a8a8; +} + +/* Responsive adjustments */ +@media (max-width: 768px) { + .photo-card { + margin-bottom: 1rem; + } + + .modal-dialog { + margin: 1rem; + } + + .card-body { + padding: 15px; + } + + .modal-body { + padding: 15px; + } +} + +/* Animation for modal backdrop */ +.modal-backdrop { + animation: fadeIn 0.3s ease; +} + +@keyframes fadeIn { + from { + opacity: 0; + } + to { + opacity: 0.5; + } +} + +/* Tag preview section styling */ +.bg-light { + background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%) !important; + border: 1px solid #dee2e6; +} + +/* Success and error states */ +.alert { + border-radius: 10px; + border: none; +} + +/* Loading state */ +.text-center .spinner-border { + color: #0d6efd; +} + +/* Custom modal backdrop */ +.custom-modal-backdrop { + position: fixed; + inset: 0; + background: rgba(0, 0, 0, 0.9); /* tamna poluprovidna pozadina */ + z-index: 1050; + display: flex; + align-items: center; + justify-content: center; +} \ No newline at end of file diff --git a/client/src/app/members/photo-editor/photo-editor.component.html b/client/src/app/members/photo-editor/photo-editor.component.html index ac5f616..78064a8 100644 --- a/client/src/app/members/photo-editor/photo-editor.component.html +++ b/client/src/app/members/photo-editor/photo-editor.component.html @@ -1,83 +1,220 @@ -
- @for (photo of member().photos; track photo.id) { -
- photo of user - @if (photo.isApproved) { -
- - -
- } @else { -
- Waiting for approval! -
- } -
- } -
+
+ +
+
+
+ +
+ User photo + + +
+ + + Awaiting Approval + +
+ + +
+ + + Main Photo + +
+
- + +
+ +
+
+ + Tags +
+
+ + {{ tag.name }} + + + + No tags added + +
+
-
- -
-

Add photos

-
- - Drop photo here + +
+
+ + + +
+ + +
+
+
+ + +
+
+
+
+

+ + Add New Photos +

+
+
+
+ +
+
+ +
Drop Photos Here
+

or click to browse

+ Max size: 1MB +
+
- -
-

Upload queue

-

Queue length: {{ uploader?.queue?.length }}

+ +
+
+ + Upload Queue ({{ uploader?.queue?.length }} files) +
- - - - - - - - - - - - - -
NameSize
{{ item?.file?.name }}{{ item?.file?.size/1024/1024 | number:'.2' }} MB
+ +
+
+
+ +
+
{{ item?.file?.name }}
+ + {{ (item?.file?.size / 1024 / 1024) | number:'1.2-2' }} MB + +
+
+
+
-
-
- Queue progress: + +
+
+ Upload Progress + {{ uploader?.progress }}% +
-
+
+
+ + +
+ + + +
- - - +
+
+
+ + \ No newline at end of file diff --git a/client/src/app/members/photo-editor/photo-editor.component.ts b/client/src/app/members/photo-editor/photo-editor.component.ts index 2da371c..c847473 100644 --- a/client/src/app/members/photo-editor/photo-editor.component.ts +++ b/client/src/app/members/photo-editor/photo-editor.component.ts @@ -6,53 +6,128 @@ import { AccountService } from '../../_services/account.service'; import { environment } from '../../../environments/environment'; import { Photo } from '../../_models/Photo'; import { MembersService } from '../../_services/members.service'; +import { ToastrService } from 'ngx-toastr'; +import { Tag } from '../../_models/Tag'; +import { TagModalComponent } from '../../modals/tag-modal/tag-modal.component'; + @Component({ selector: 'app-photo-editor', - imports: [NgIf, NgFor, NgStyle, NgClass, FileUploadModule, DecimalPipe], + imports: [NgIf, NgFor, NgStyle, NgClass, FileUploadModule, DecimalPipe, TagModalComponent], templateUrl: './photo-editor.component.html', styleUrl: './photo-editor.component.css' }) export class PhotoEditorComponent implements OnInit { private memberService = inject(MembersService); private accountService = inject(AccountService); + private toastService = inject(ToastrService); + member = input.required(); + userPhotos: Photo[] = []; uploader?: FileUploader; hasBaseDropZoneOver = false; baseUrl = environment.apiUrl; memberChange = output(); + + // Modal properties + showTagModal = false; + selectedPhoto: Photo | null = null; + ngOnInit(): void { if (!this.member().photoUrl) { this.member().photoUrl = 'https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain'; } this.initializeUploader(); + this.getUserPhotos(); } + fileOverBase(e: any) { this.hasBaseDropZoneOver = e; } + deletePhoto(photo: Photo) { - this.memberService.deletePhoto(photo).subscribe({ - next: _ => { - const updatedMember = { ...this.member() }; - updatedMember.photos = updatedMember.photos.filter(p => p.id !== photo.id); - this.memberChange.emit(updatedMember); + if (confirm('Are you sure you want to delete this photo?')) { + this.memberService.deletePhoto(photo).subscribe({ + next: _ => { + // Remove from userPhotos array + this.userPhotos = this.userPhotos.filter(p => p.id !== photo.id); + + // Update member object + const updatedMember = { ...this.member() }; + updatedMember.photos = updatedMember.photos.filter(p => p.id !== photo.id); + + // If deleted photo was main, set first available photo as main + if (photo.isMain && updatedMember.photos.length > 0) { + updatedMember.photos[0].isMain = true; + updatedMember.photoUrl = updatedMember.photos[0].url; + + // Update current user photo if needed + const user = this.accountService.currentUser(); + if (user) { + user.photoUrl = updatedMember.photos[0].url; + this.accountService.setCurrentUser(user); + } + } else if (photo.isMain && updatedMember.photos.length === 0) { + // If no photos left, set default photo + updatedMember.photoUrl = 'https://th.bing.com/th/id/OIP.PoS7waY4-VeqgNuBSxVUogAAAA?rs=1&pid=ImgDetMain'; + + const user = this.accountService.currentUser(); + if (user) { + user.photoUrl = updatedMember.photoUrl; + this.accountService.setCurrentUser(user); + } + } + + this.memberChange.emit(updatedMember); + this.toastService.success('Photo deleted successfully'); + }, + error: err => { + console.error('Error deleting photo:', err); + this.toastService.error('Failed to delete photo'); + } + }); + } + } + + getUserPhotos() { + this.memberService.getPhotosWithTags().subscribe({ + next: photos => { + this.userPhotos = photos; + }, + error: err => { + console.error('Error loading photos:', err); + this.toastService.error('Failed to load photos'); } }); } + setMainPhoto(photo: Photo) { this.memberService.setMainPhoto(photo).subscribe({ next: _ => { + // Update current user photo const user = this.accountService.currentUser(); if (user) { user.photoUrl = photo.url; this.accountService.setCurrentUser(user); } + + // Update member object const updatedMember = { ...this.member() }; updatedMember.photoUrl = photo.url; updatedMember.photos.forEach(p => { - if (p.isMain) p.isMain = false; - if (p.id === photo.id) p.isMain = true; + p.isMain = p.id === photo.id; + }); + + // Update userPhotos array + this.userPhotos.forEach(p => { + p.isMain = p.id === photo.id; }); + this.memberChange.emit(updatedMember); + this.toastService.success('Main photo updated successfully'); + }, + error: err => { + console.error('Error setting main photo:', err); + this.toastService.error('Failed to set main photo'); } }); } @@ -71,25 +146,91 @@ export class PhotoEditorComponent implements OnInit { this.uploader.onAfterAddingFile = (file) => { file.withCredentials = false; }; + this.uploader.onSuccessItem = (item, response, status, headers) => { const photo = JSON.parse(response); + + // Add to userPhotos array + this.userPhotos.push(photo); + + // Update member object const updatedMember = {...this.member()} updatedMember.photos.push(photo); - this.memberChange.emit(updatedMember); + if (photo.isMain){ const user = this.accountService.currentUser(); if (user) { user.photoUrl = photo.url; this.accountService.setCurrentUser(user); } + updatedMember.photoUrl = photo.url; updatedMember.photos.forEach(p => { - if (p.isMain) p.isMain = false; - if (p.id === photo.id) p.isMain = true; + p.isMain = p.id === photo.id; + }); + + // Update userPhotos array + this.userPhotos.forEach(p => { + p.isMain = p.id === photo.id; }); - this.memberChange.emit(updatedMember); } - } + + this.memberChange.emit(updatedMember); + this.toastService.success('Photo uploaded successfully'); + }; + + this.uploader.onErrorItem = (item, response, status, headers) => { + console.error('Upload error:', response); + this.toastService.error('Failed to upload photo'); + }; + } + + trackPhoto(index: number, photo: Photo) { + return photo.id; + } + + // Modal methods + openTagModal(photo: Photo) { + this.selectedPhoto = photo; + this.showTagModal = true; + } + closeTagModal() { + this.showTagModal = false; + this.selectedPhoto = null; + } + + removeTagFromPhoto(photo: Photo, tagName: string) { + if (confirm(`Are you sure you want to remove the tag "${tagName}" from this photo?`)) { + const updatedTags = photo.tags?.filter(t => t.name !== tagName).map(t => t.name) || []; + this.memberService.addTagToPhoto(photo.id, updatedTags).subscribe({ + next: () => { + this.toastService.success('Tag removed successfully'); + const photoIndex = this.userPhotos.findIndex(p => p.id === photo.id); + if (photoIndex > -1) { + this.userPhotos[photoIndex].tags = updatedTags.map(name => ({ name } as Tag)); + } + }, + error: err => { + console.error('Error removing tag:', err); + this.toastService.error('Failed to remove tag'); + } + }); + } + } + onPhotoUpdated(updatedPhoto: Photo) { + // Update userPhotos array + const photoIndex = this.userPhotos.findIndex(p => p.id === updatedPhoto.id); + if (photoIndex > -1) { + this.userPhotos[photoIndex] = updatedPhoto; + } + + // Update member's photos array + const memberPhotoIndex = this.member().photos.findIndex(p => p.id === updatedPhoto.id); + if (memberPhotoIndex > -1) { + const updatedMember = { ...this.member() }; + updatedMember.photos[memberPhotoIndex] = updatedPhoto; + this.memberChange.emit(updatedMember); + } } -} +} \ No newline at end of file diff --git a/client/src/app/modals/photo-modal/photo-modal.component.css b/client/src/app/modals/photo-modal/photo-modal.component.css new file mode 100644 index 0000000..1f4d477 --- /dev/null +++ b/client/src/app/modals/photo-modal/photo-modal.component.css @@ -0,0 +1,283 @@ +/* Custom modal backdrop with blur and dark overlay */ +.photo-modal { + position: fixed; + inset: 0; + background: rgba(30, 30, 30, 0.7); + backdrop-filter: blur(8px); + z-index: 1050; + display: flex; + align-items: center; + justify-content: center; + opacity: 0; + visibility: hidden; + transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); +} + +.photo-modal.show { + opacity: 1; + visibility: visible; +} + +.modal-backdrop { + position: absolute; + inset: 0; + background: transparent; + z-index: 1; +} + +/* Modal dialog */ +.modal-dialog { + max-width: 500px; + width: 90%; + margin: 2rem auto; + z-index: 1060; + position: relative; +} + +/* Modal content: blago transparentan, tamno siva */ +.modal-content { + background: rgba(40, 40, 40, 0.92); + border-radius: 14px; + overflow: hidden; + color: #fff; + box-shadow: 0 20px 40px rgba(0,0,0,0.7); + transform: scale(0.8) translateY(-50px); + transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); + border: 1px solid rgba(255, 255, 255, 0.1); +} + +.photo-modal.show .modal-content { + transform: scale(1) translateY(0); +} + +/* Modal header/footer */ +.modal-header, +.modal-footer { + border: none; + background: transparent; + padding: 1.5rem; +} + +.modal-header { + display: flex; + justify-content: space-between; + align-items: center; + border-bottom: 1px solid rgba(255, 255, 255, 0.1); +} + +.modal-title { + margin: 0; + font-size: 1.4rem; + font-weight: 600; + color: #fff; + text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); +} + +.btn-close { + background: rgba(255, 255, 255, 0.1); + border: 1px solid rgba(255, 255, 255, 0.2); + border-radius: 50%; + width: 35px; + height: 35px; + display: flex; + align-items: center; + justify-content: center; + color: #fff; + font-size: 1.2rem; + cursor: pointer; + transition: all 0.2s ease; + opacity: 0.8; +} + +.btn-close:hover { + background: rgba(255, 255, 255, 0.2); + opacity: 1; + transform: scale(1.1); +} + +.btn-close::before { + content: "×"; + font-weight: bold; +} + +/* Modal body */ +.modal-body { + padding: 25px; + text-align: center; +} + +.modal-image { + border-radius: 12px; + object-fit: contain; + max-width: 100%; + max-height: 400px; + box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4); + transition: transform 0.2s ease; +} + +.modal-image:hover { + transform: scale(1.02); +} + +.modal-footer { + border-top: 1px solid rgba(255, 255, 255, 0.1); +} + +/* Tag badge styling */ +.badge { + font-size: 1rem; + padding: 0.5em 0.9em; + background: rgba(108, 117, 125, 0.8) !important; + border: 1px solid rgba(255, 255, 255, 0.2); + backdrop-filter: blur(4px); + transition: all 0.2s ease; +} + +.badge:hover { + background: rgba(108, 117, 125, 1) !important; + transform: translateY(-1px); +} + +/* Form controls */ +.form-check { + user-select: none; +} + +.form-check-label { + color: #fff; + font-weight: 500; + cursor: pointer; + transition: color 0.2s ease; +} + +.form-check-label:hover { + color: #e9ecef; +} + +.form-check-input:checked { + background-color: #0d6efd; + border-color: #0d6efd; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +/* Textarea styling */ +.admin-message textarea { + resize: vertical; + min-height: 80px; + background: rgba(255, 255, 255, 0.05); + border: 1px solid rgba(255, 255, 255, 0.2); + color: #fff; + border-radius: 8px; + transition: all 0.2s ease; +} + +.admin-message textarea:focus { + background: rgba(255, 255, 255, 0.1); + border-color: #0d6efd; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); + color: #fff; +} + +.admin-message textarea::placeholder { + color: rgba(255, 255, 255, 0.6); +} + +/* Button styling */ +.action-buttons button { + min-width: 100px; + padding: 0.6rem 1.2rem; + border-radius: 8px; + font-weight: 500; + border: none; + transition: all 0.2s ease; + position: relative; + overflow: hidden; +} + +.action-buttons button:hover { + transform: translateY(-2px); + box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3); +} + +.btn-success { + background: linear-gradient(135deg, #28a745, #20c997); +} + +.btn-success:hover { + background: linear-gradient(135deg, #218838, #1ea085); +} + +.btn-danger { + background: linear-gradient(135deg, #dc3545, #e83e8c); +} + +.btn-danger:hover { + background: linear-gradient(135deg, #c82333, #d91a72); +} + +.btn-secondary { + background: linear-gradient(135deg, #6c757d, #8e9ba8); +} + +.btn-secondary:hover { + background: linear-gradient(135deg, #5a6268, #7c8a96); +} + +/* Responsive adjustments */ +@media (max-width: 768px) { + .modal-dialog { + margin: 1rem; + max-width: calc(100% - 2rem); + width: calc(100% - 2rem); + } + + .modal-body { + padding: 15px; + } + + .modal-header, + .modal-footer { + padding: 1rem; + } + + .modal-title { + font-size: 1.2rem; + } + + .action-buttons { + flex-direction: column; + gap: 0.5rem !important; + } + + .action-buttons button { + width: 100%; + min-width: auto; + } +} + +@media (min-width: 769px) { + .modal-dialog { + max-width: 450px; + } +} + +/* Loading animation */ +@keyframes fadeInUp { + from { + opacity: 0; + transform: translateY(30px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +.modal-body > * { + animation: fadeInUp 0.4s ease-out; + animation-fill-mode: both; +} + +.modal-body > *:nth-child(1) { animation-delay: 0.1s; } +.modal-body > *:nth-child(2) { animation-delay: 0.2s; } +.modal-body > *:nth-child(3) { animation-delay: 0.3s; } \ No newline at end of file diff --git a/client/src/app/modals/photo-modal/photo-modal.component.html b/client/src/app/modals/photo-modal/photo-modal.component.html new file mode 100644 index 0000000..092cd86 --- /dev/null +++ b/client/src/app/modals/photo-modal/photo-modal.component.html @@ -0,0 +1,70 @@ +@if (selectedPhoto && isModalOpen) { +
+ + +
+} diff --git a/client/src/app/modals/photo-modal/photo-modal.component.ts b/client/src/app/modals/photo-modal/photo-modal.component.ts new file mode 100644 index 0000000..5745343 --- /dev/null +++ b/client/src/app/modals/photo-modal/photo-modal.component.ts @@ -0,0 +1,130 @@ +import { Component, EventEmitter, inject, Input, OnChanges, Output, SimpleChanges } from '@angular/core'; +import { CommonModule } from '@angular/common'; +import { FormsModule } from '@angular/forms'; +import { Photo } from '../../_models/Photo'; +import { AdminService } from '../../_services/admin.service'; +import { MessageService } from '../../_services/message.service'; +import { AccountService } from '../../_services/account.service'; +import { ToastrService } from 'ngx-toastr'; + +@Component({ + selector: 'app-photo-modal', + imports: [CommonModule, FormsModule], + templateUrl: './photo-modal.component.html', + styleUrl: './photo-modal.component.css' +}) +export class PhotoModalComponent implements OnChanges { + @Input() selectedPhoto: Photo | null = null; + @Input() isModalOpen: boolean = false; + @Output() closeModal = new EventEmitter(); + @Output() photoApproved = new EventEmitter(); + @Output() photoRejected = new EventEmitter(); + + private adminService = inject(AdminService); + private messageService = inject(MessageService); + private accountService = inject(AccountService); + private toastrService = inject(ToastrService); + + isAnonymous: boolean = false; + adminMessage: string = ''; + + ngOnChanges(changes: SimpleChanges): void { + if (changes['isModalOpen'] && this.isModalOpen && this.selectedPhoto) { + this.openModal(); + } else if (changes['isModalOpen'] && !this.isModalOpen) { + this.closeModalInternal(); + } + } + + private openModal(): void { + this.isAnonymous = false; + this.adminMessage = ''; + const user = this.accountService.currentUser(); + if (!user || !this.selectedPhoto) return; + this.messageService.createHubConnection(user, this.selectedPhoto.username); + document.body.classList.add('modal-open'); + } + + closePhotoModal(): void { + this.closeModal.emit(); + } + + private closeModalInternal(): void { + this.messageService.stopHubConnection(); + document.body.classList.remove('modal-open'); + setTimeout(() => { + this.isAnonymous = false; + this.adminMessage = ''; + }, 300); + } + + approvePhoto(): void { + if (!this.selectedPhoto) return; + + if (this.isAnonymous) { + if (this.adminMessage !== '') { + this.sendMessage(); + } else { + this.toastrService.error('Type in the message, that you have decided to send!'); + return; + } + } + + this.adminService.approvePhoto(this.selectedPhoto.id).subscribe({ + next: () => { + this.photoApproved.emit(this.selectedPhoto!.id); + this.closePhotoModal(); + }, + error: (er) => { + this.toastrService.error('Failed to approve photo'); + console.log(er); + } + }); + } + + rejectPhoto(): void { + if (!this.selectedPhoto) return; + + if (this.isAnonymous) { + if (this.adminMessage !== '') { + this.sendMessage(); + } else { + this.toastrService.error('Type in the message, that you have decided to send!'); + return; + } + } + + this.adminService.rejectPhoto(this.selectedPhoto.id).subscribe({ + next: () => { + this.photoRejected.emit(this.selectedPhoto!.id); + this.closePhotoModal(); + }, + error: (er) => { + this.toastrService.error('Failed to reject photo'); + console.log(er); + } + }); + } + + private sendMessage(): void { + const formattedMessage = `Regarding your photo: ${this.adminMessage}`; + if (this.selectedPhoto?.username) { + const user = this.accountService.currentUser(); + if (!user) { + this.toastrService.error('You must be logged in to send messages'); + return; + } + this.messageService + .sendMessage(this.selectedPhoto.username, formattedMessage) + ?.then(() => { + console.log(`Anonymous message sent to ${this.selectedPhoto?.username}`); + }) + .catch((error) => { + console.error('Error sending message:', error); + this.toastrService.error('Failed to send notification message'); + }); + } else { + this.toastrService.error('No username selected for the photo'); + } + } +} \ No newline at end of file diff --git a/client/src/app/modals/tag-modal/tag-modal.component.css b/client/src/app/modals/tag-modal/tag-modal.component.css new file mode 100644 index 0000000..8d08256 --- /dev/null +++ b/client/src/app/modals/tag-modal/tag-modal.component.css @@ -0,0 +1,280 @@ +/* Custom modal backdrop with blur and dark overlay */ +.photo-modal { + position: fixed; + inset: 0; + background: rgba(30, 30, 30, 0.7); + backdrop-filter: blur(8px); + z-index: 1050; + display: flex; + align-items: center; + justify-content: center; + opacity: 0; + visibility: hidden; + transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); +} + +.photo-modal.show { + opacity: 1; + visibility: visible; +} + +.modal-backdrop { + position: absolute; + inset: 0; + background: transparent; + z-index: 1; +} + +/* Modal dialog */ +.modal-dialog { + max-width: 600px; + width: 90%; + margin: 2rem auto; + z-index: 1060; + position: relative; +} + +/* Modal content: blago transparentan, tamno siva */ +.modal-content { + background: rgba(40, 40, 40, 0.92); + border-radius: 14px; + overflow: hidden; + color: #fff; + box-shadow: 0 20px 40px rgba(0,0,0,0.7); + transform: scale(0.8) translateY(-50px); + transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94); + border: 1px solid rgba(255, 255, 255, 0.1); +} + +.photo-modal.show .modal-content { + transform: scale(1) translateY(0); +} + +/* Modal header/footer */ +.modal-header, +.modal-footer { + border: none; + background: transparent; + padding: 1.5rem; +} + +.modal-header { + display: flex; + justify-content: space-between; + align-items: center; + border-bottom: 1px solid rgba(255, 255, 255, 0.1); +} + +.modal-title { + margin: 0; + font-size: 1.4rem; + font-weight: 600; + color: #fff; + text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3); +} + +.btn-close { + background: rgba(255, 255, 255, 0.1); + border: 1px solid rgba(255, 255, 255, 0.2); + border-radius: 50%; + width: 35px; + height: 35px; + display: flex; + align-items: center; + justify-content: center; + color: #fff; + font-size: 1.2rem; + cursor: pointer; + transition: all 0.2s ease; + opacity: 0.8; +} + +.btn-close:hover { + background: rgba(255, 255, 255, 0.2); + opacity: 1; + transform: scale(1.1); +} + +.btn-close::before { + content: "×"; + font-weight: bold; +} + +/* Modal body */ +.modal-body { + padding: 25px; +} + +.modal-image { + border-radius: 12px; + object-fit: contain; + max-width: 200px; + max-height: 150px; + box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4); + transition: transform 0.2s ease; +} + +.modal-image:hover { + transform: scale(1.02); +} + +.modal-footer { + border-top: 1px solid rgba(255, 255, 255, 0.1); +} + +/* Tag badge styling */ +.badge { + font-size: 1rem; + padding: 0.5em 0.9em; + background: rgba(13, 110, 253, 0.8) !important; + border: 1px solid rgba(255, 255, 255, 0.2); + backdrop-filter: blur(4px); + transition: all 0.2s ease; + color: #fff !important; +} + +.badge:hover { + background: rgba(13, 110, 253, 1) !important; + transform: translateY(-1px); +} + +/* Form controls */ +.form-check { + user-select: none; +} + +.form-check-label { + color: #fff; + font-weight: 500; + cursor: pointer; + transition: color 0.2s ease; +} + +.form-check-label:hover { + color: #e9ecef; +} + +.form-check-input:checked { + background-color: #0d6efd; + border-color: #0d6efd; + box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25); +} + +/* Selected tags container */ +.selected-tags-container { + background: rgba(255, 255, 255, 0.05); + border: 1px solid rgba(255, 255, 255, 0.1); + border-radius: 12px; + padding: 1rem; + margin-top: 1rem; +} + +.selected-tags-container h6 { + color: #fff; + margin-bottom: 0.75rem; +} + +/* Loading spinner styling */ +.spinner-border { + color: #0d6efd; +} + +.text-center .spinner-border { + margin: 0 auto; +} + +/* Button styling */ +.action-buttons button { + min-width: 100px; + padding: 0.6rem 1.2rem; + border-radius: 8px; + font-weight: 500; + border: none; + transition: all 0.2s ease; + position: relative; + overflow: hidden; +} + +.action-buttons button:hover:not(:disabled) { + transform: translateY(-2px); + box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3); +} + +.btn-primary { + background: linear-gradient(135deg, #0d6efd, #4c7eff); +} + +.btn-primary:hover:not(:disabled) { + background: linear-gradient(135deg, #0b5ed7, #426bdc); +} + +.btn-outline-secondary { + background: rgba(108, 117, 125, 0.2); + border: 1px solid rgba(255, 255, 255, 0.3); + color: #fff; +} + +.btn-outline-secondary:hover:not(:disabled) { + background: rgba(108, 117, 125, 0.4); + border-color: rgba(255, 255, 255, 0.5); + color: #fff; +} + +/* Responsive adjustments */ +@media (max-width: 768px) { + .modal-dialog { + margin: 1rem; + max-width: calc(100% - 2rem); + width: calc(100% - 2rem); + } + + .modal-body { + padding: 15px; + } + + .modal-header, + .modal-footer { + padding: 1rem; + } + + .modal-title { + font-size: 1.2rem; + } + + .action-buttons { + flex-direction: column; + gap: 0.5rem !important; + } + + .action-buttons button { + width: 100%; + min-width: auto; + } +} + +@media (min-width: 769px) { + .modal-dialog { + max-width: 600px; + } +} + +/* Loading animation */ +@keyframes fadeInUp { + from { + opacity: 0; + transform: translateY(30px); + } + to { + opacity: 1; + transform: translateY(0); + } +} + +.modal-body > * { + animation: fadeInUp 0.4s ease-out; + animation-fill-mode: both; +} + +.modal-body > *:nth-child(1) { animation-delay: 0.1s; } +.modal-body > *:nth-child(2) { animation-delay: 0.2s; } +.modal-body > *:nth-child(3) { animation-delay: 0.3s; } \ No newline at end of file diff --git a/client/src/app/modals/tag-modal/tag-modal.component.html b/client/src/app/modals/tag-modal/tag-modal.component.html new file mode 100644 index 0000000..ec25f0a --- /dev/null +++ b/client/src/app/modals/tag-modal/tag-modal.component.html @@ -0,0 +1,112 @@ +
+ + +
\ No newline at end of file diff --git a/client/src/app/modals/tag-modal/tag-modal.component.ts b/client/src/app/modals/tag-modal/tag-modal.component.ts new file mode 100644 index 0000000..33be632 --- /dev/null +++ b/client/src/app/modals/tag-modal/tag-modal.component.ts @@ -0,0 +1,139 @@ +import { NgFor, NgIf } from '@angular/common'; +import { Component, inject, OnInit, signal, input, output } from '@angular/core'; +import { MembersService } from '../../_services/members.service'; +import { ToastrService } from 'ngx-toastr'; +import { Photo } from '../../_models/Photo'; +import { Tag } from '../../_models/Tag'; + +@Component({ + selector: 'app-tag-modal', + imports: [NgIf, NgFor], + templateUrl: './tag-modal.component.html', + styleUrls: ['./tag-modal.component.css'], + standalone: true +}) +export class TagModalComponent implements OnInit { + private memberService = inject(MembersService); + private toastrService = inject(ToastrService); + + // Inputs + photo = input(null); + isVisible = input(false); + + // Outputs + modalClosed = output(); + photoUpdated = output(); + + // Internal state + availableTags = signal([]); + selectedTagNames = signal([]); + isLoading = signal(false); + originalSelectedTags: string[] = []; + + ngOnInit(): void { + this.loadAvailableTags(); + } + + ngOnChanges(): void { + // Reset modal state when photo changes + if (this.photo()) { + this.initializeSelectedTags(); + } + } + + private initializeSelectedTags(): void { + const currentPhoto = this.photo(); + if (currentPhoto?.tags) { + const tagNames = currentPhoto.tags.map(t => t.name); + this.selectedTagNames.set([...tagNames]); + this.originalSelectedTags = [...tagNames]; + } else { + this.selectedTagNames.set([]); + this.originalSelectedTags = []; + } + } + + private loadAvailableTags(): void { + this.memberService.getAllTags().subscribe({ + next: (tags) => { + this.availableTags.set(tags); + }, + error: (err) => { + console.error('Failed to load tags', err); + this.toastrService.error('Failed to load available tags'); + } + }); + } + + toggleTagSelection(tagName: string): void { + const currentTags = this.selectedTagNames(); + const index = currentTags.indexOf(tagName); + + if (index > -1) { + // Remove tag + const updatedTags = currentTags.filter(t => t !== tagName); + this.selectedTagNames.set(updatedTags); + } else { + // Add tag + this.selectedTagNames.set([...currentTags, tagName]); + } + } + + isTagSelected(tagName: string): boolean { + return this.selectedTagNames().includes(tagName); + } + + hasChanges(): boolean { + const current = [...this.selectedTagNames()].sort(); + const original = [...this.originalSelectedTags].sort(); + return JSON.stringify(current) !== JSON.stringify(original); + } + + closeModal(): void { + this.resetModalState(); + this.modalClosed.emit(); + } + + saveChanges(): void { + const currentPhoto = this.photo(); + if (!currentPhoto) { + this.toastrService.error('No photo selected'); + return; + } + + if (!this.hasChanges()) { + this.closeModal(); + return; + } + + this.isLoading.set(true); + + this.memberService.addTagToPhoto(currentPhoto.id, this.selectedTagNames()).subscribe({ + next: () => { + this.toastrService.success('Tags updated successfully'); + + // Create updated photo object + const updatedPhoto: Photo = { + ...currentPhoto, + tags: this.selectedTagNames().map(name => ({ name } as Tag)) + }; + + this.photoUpdated.emit(updatedPhoto); + this.closeModal(); + }, + error: (err) => { + console.error('Error updating tags:', err); + this.toastrService.error('Failed to update tags'); + }, + complete: () => { + this.isLoading.set(false); + } + }); + } + + private resetModalState(): void { + this.selectedTagNames.set([]); + this.originalSelectedTags = []; + this.isLoading.set(false); + } +} \ No newline at end of file diff --git a/client/src/app/nav/nav.component.ts b/client/src/app/nav/nav.component.ts index 69d8f66..b6bfa0a 100644 --- a/client/src/app/nav/nav.component.ts +++ b/client/src/app/nav/nav.component.ts @@ -24,7 +24,9 @@ export class NavComponent { login() { this.accountService.login(this.model).subscribe({ next: _ => this.router.navigateByUrl('/members'), - error: error => this.toastr.error(error.error), + error: error => { + this.toastr.error(error.error.message); + } }); } logout() {