From d32c927cfca2b577773719449403aaaeda909b9a Mon Sep 17 00:00:00 2001 From: iamshen Date: Mon, 20 May 2024 10:42:12 +0800 Subject: [PATCH 1/3] Adjust the proxy service routing configuration to forward system application requests directly instead of through the dapr cli. --- .../DaprAppExtensions.cs | 20 ++++ build/DaprTool.Solution.AppHost/Program.cs | 93 +++++-------------- .../Abstractions/Actors/DomainActor.cs | 2 +- .../Abstractions/EventBus/DaprEventBus.cs | 4 +- .../ApiExtensions/WebApplicationExtensions.cs | 4 +- .../WebApplicationBuilderExtensions.cs | 2 +- .../{ApplicationConstants.cs => Constants.cs} | 27 ++++-- src/BuildingBlocks/Utils/Utils.xml | 49 +++++----- .../Utils/ValueObjects/DaprApp.cs | 6 +- src/ProxyServer/ProxyServer.xml | 3 +- ...ReverseProxyServiceCollectionExtensions.cs | 50 +++++----- .../DaprTransformProvider.cs | 8 +- .../AppDataConnectionExtensions.cs | 2 +- .../PurchaseOrder/SubscriptionController.cs | 4 +- .../Presentation/Ordering.Api/Program.cs | 6 +- 15 files changed, 133 insertions(+), 147 deletions(-) create mode 100644 build/DaprTool.Solution.AppHost/DaprAppExtensions.cs rename src/BuildingBlocks/Utils/Constant/{ApplicationConstants.cs => Constants.cs} (80%) diff --git a/build/DaprTool.Solution.AppHost/DaprAppExtensions.cs b/build/DaprTool.Solution.AppHost/DaprAppExtensions.cs new file mode 100644 index 0000000..8250eeb --- /dev/null +++ b/build/DaprTool.Solution.AppHost/DaprAppExtensions.cs @@ -0,0 +1,20 @@ + +using Aspire.Hosting.Dapr; +using System.Collections.Immutable; +using DaprTool.BuildingBlocks.Utils.ValueObjects; +using DaprTool.BuildingBlocks.Utils.Constant; + +public static class DaprAppExtensions +{ + private static int? DaprHttpMaxRequestSize = 60; + private static int? DaprHttpReadBufferSize = 128; + + public static DaprSidecarOptions GetSideCarOptions(this DaprApp app) => new DaprSidecarOptions + { + AppId = app.AppId, + DaprHttpPort = app.DaprHttpPort, + ResourcesPaths = ImmutableHashSet.Empty.Add(Constants.ResourcesPath), + DaprHttpMaxRequestSize = DaprHttpMaxRequestSize, + DaprHttpReadBufferSize = DaprHttpReadBufferSize, + }; +} diff --git a/build/DaprTool.Solution.AppHost/Program.cs b/build/DaprTool.Solution.AppHost/Program.cs index 03a80c9..328e891 100644 --- a/build/DaprTool.Solution.AppHost/Program.cs +++ b/build/DaprTool.Solution.AppHost/Program.cs @@ -1,90 +1,41 @@ - -using Aspire.Hosting; -using Aspire.Hosting.Dapr; using DaprTool.BuildingBlocks.Utils.Constant; -using k8s.Models; using Microsoft.Extensions.DependencyInjection; -using System.Collections.Immutable; - var builder = DistributedApplication.CreateBuilder(args); builder.Services.AddProblemDetails(); // web admin -var webAdmin = builder.AddProject(ApplicationConstants.WebAdmin.AppId) - .WithDaprSidecar(new DaprSidecarOptions - { - AppId = ApplicationConstants.WebAdmin.AppId, - DaprHttpPort = ApplicationConstants.WebAdmin.DaprHttpPort, - ResourcesPaths = ImmutableHashSet.Empty.Add(ApplicationConstants.ResourcesPath), - DaprHttpMaxRequestSize = 60, - DaprHttpReadBufferSize = 128, - }) - .WithHttpEndpoint(port: ApplicationConstants.WebAdmin.ResourceHttpPort) - ; - -// auth server -var authSts = builder.AddProject(ApplicationConstants.AuthSts.AppId) - .WithDaprSidecar(new DaprSidecarOptions() - { - AppId = ApplicationConstants.AuthSts.AppId, - DaprHttpPort = ApplicationConstants.AuthSts.DaprHttpPort, - ResourcesPaths = ImmutableHashSet.Empty.Add(ApplicationConstants.ResourcesPath), - DaprHttpMaxRequestSize = 60, - DaprHttpReadBufferSize = 128, - }) - .WithHttpEndpoint(port: ApplicationConstants.AuthSts.ResourceHttpPort) - ; +var webAdmin = builder.AddProject(Constants.WebAdmin.AppId) + .WithDaprSidecar(Constants.WebAdmin.GetSideCarOptions()) + .WithHttpEndpoint(port: Constants.WebAdmin.ResourceHttpPort); -var authAdmin = builder.AddProject(ApplicationConstants.AuthAdmin.AppId) - .WithDaprSidecar(new DaprSidecarOptions() - { - AppId = ApplicationConstants.AuthAdmin.AppId, - DaprHttpPort = ApplicationConstants.AuthAdmin.DaprHttpPort, - ResourcesPaths = ImmutableHashSet.Empty.Add(ApplicationConstants.ResourcesPath), - }) - .WithHttpEndpoint(port: ApplicationConstants.AuthAdmin.ResourceHttpPort) - ; +// auth-server +var authSts = builder.AddProject(Constants.AuthSts.AppId) + .WithDaprSidecar(Constants.AuthSts.GetSideCarOptions()) + .WithHttpEndpoint(port: Constants.AuthSts.ResourceHttpPort); -var authApi = builder.AddProject(ApplicationConstants.AuthApi.AppId) - .WithDaprSidecar(new DaprSidecarOptions() - { - AppId = ApplicationConstants.AuthApi.AppId, - DaprHttpPort = ApplicationConstants.AuthApi.DaprHttpPort, - ResourcesPaths = ImmutableHashSet.Empty.Add(ApplicationConstants.ResourcesPath), - DaprHttpMaxRequestSize = 60, - DaprHttpReadBufferSize = 128, - }) - .WithHttpEndpoint(port: ApplicationConstants.AuthApi.ResourceHttpPort) - ; +var authAdmin = builder.AddProject(Constants.AuthAdmin.AppId) + .WithDaprSidecar(Constants.AuthAdmin.GetSideCarOptions()) + .WithHttpEndpoint(port: Constants.AuthAdmin.ResourceHttpPort); +var authApi = builder.AddProject(Constants.AuthApi.AppId) + .WithDaprSidecar(Constants.AuthApi.GetSideCarOptions()) + .WithHttpEndpoint(port: Constants.AuthApi.ResourceHttpPort); // api services - -var orderApi = builder.AddProject(ApplicationConstants.Ordering.AppId) - .WithDaprSidecar(new DaprSidecarOptions() - { - AppId = ApplicationConstants.Ordering.AppId, - DaprHttpPort = ApplicationConstants.Ordering.DaprHttpPort, - ResourcesPaths = ImmutableHashSet.Empty.Add(ApplicationConstants.ResourcesPath), - DaprHttpMaxRequestSize = 60, - DaprHttpReadBufferSize = 128, - }) - .WithHttpEndpoint(port: ApplicationConstants.Ordering.ResourceHttpPort) - ; +var orderApi = builder.AddProject(Constants.Ordering.AppId) + .WithDaprSidecar(Constants.Ordering.GetSideCarOptions()) + .WithHttpEndpoint(port: Constants.Ordering.ResourceHttpPort); // proxy server -builder.AddProject(ApplicationConstants.ProxyServer.AppId) -.WithReference(webAdmin) -//.WithReference(authAdmin) -//.WithReference(authSts) -//.WithReference(authApi) -//.WithReference(orderApi) -; - +builder.AddProject(Constants.ProxyServer.AppId) + .WithReference(webAdmin) + .WithReference(authAdmin) + .WithReference(authSts) + .WithReference(authApi) + .WithReference(orderApi); var app = builder.Build(); - app.Run(); diff --git a/src/BuildingBlocks/Abstractions/Actors/DomainActor.cs b/src/BuildingBlocks/Abstractions/Actors/DomainActor.cs index 20bb5e4..6da8cfa 100644 --- a/src/BuildingBlocks/Abstractions/Actors/DomainActor.cs +++ b/src/BuildingBlocks/Abstractions/Actors/DomainActor.cs @@ -115,7 +115,7 @@ public abstract class DomainActor : Actor /// public ISerialNumberActor GetSerialNumberService() { - var orderNumberActorId = new ActorId(ApplicationConstants.DefaultActorId); + var orderNumberActorId = new ActorId(Constants.DefaultActorId); var orderNumberProxy = ProxyFactory.CreateActorProxy(orderNumberActorId, nameof(SerialNumberActor)); diff --git a/src/BuildingBlocks/Abstractions/EventBus/DaprEventBus.cs b/src/BuildingBlocks/Abstractions/EventBus/DaprEventBus.cs index 2e7cee4..faa6ad6 100644 --- a/src/BuildingBlocks/Abstractions/EventBus/DaprEventBus.cs +++ b/src/BuildingBlocks/Abstractions/EventBus/DaprEventBus.cs @@ -23,14 +23,14 @@ public class DaprEventBus(DaprClient dapr, ILogger logger) : IEven logger.LogDebug( "发布事件 {@Event} 到 {PubsubName}.{TopicName}", integrationEvent, - ApplicationConstants.PubSubName, + Constants.PubSubName, topicName); // 通过将事件转换为动态, // 并将具体类型传给 PublishEventAsync // 这样能确保所有事件的字段都能正确序列化。 await dapr.PublishEventAsync( - ApplicationConstants.PubSubName, + Constants.PubSubName, topicName, (object)integrationEvent); } diff --git a/src/BuildingBlocks/ApiExtensions/WebApplicationExtensions.cs b/src/BuildingBlocks/ApiExtensions/WebApplicationExtensions.cs index 0ce2275..5010217 100644 --- a/src/BuildingBlocks/ApiExtensions/WebApplicationExtensions.cs +++ b/src/BuildingBlocks/ApiExtensions/WebApplicationExtensions.cs @@ -24,7 +24,7 @@ public static class WebApplicationExtensions public static void AddAppServices(this WebApplicationBuilder builder) { // 注册 Serilog - builder.AddAppSerilog(ApplicationConstants.Ordering.AppId); + builder.AddAppSerilog(DaprTool.BuildingBlocks.Utils.Constant.Constants.Ordering.AppId); // 注册 Api 资源 builder.AddAppApiResource(); // 注册 Swagger @@ -34,7 +34,7 @@ public static class WebApplicationExtensions { // 注册过滤器 // options.Filters.Add(); - options.Filters.Add(new ResultFilter(AppConstants.ResponseJsonContentType)); + options.Filters.Add(new ResultFilter(AspNetCore.Mvc.AppConstants.ResponseJsonContentType)); }); // 注册 自动依赖注入 builder.Services.AddAutoInject(); diff --git a/src/BuildingBlocks/DaprActorExtensions/WebApplicationBuilderExtensions.cs b/src/BuildingBlocks/DaprActorExtensions/WebApplicationBuilderExtensions.cs index 0385bc7..da888d5 100644 --- a/src/BuildingBlocks/DaprActorExtensions/WebApplicationBuilderExtensions.cs +++ b/src/BuildingBlocks/DaprActorExtensions/WebApplicationBuilderExtensions.cs @@ -24,7 +24,7 @@ public static class WebApplicationBuilderExtensions // 配置 Dapr 客户端 var client = new DaprClientBuilder().Build(); // 注册 Dapr 配置 - builder.Configuration.AddDaprConfigurationStore(ApplicationConstants.ConfigurationStore, Array.Empty(), client, TimeSpan.FromMinutes(30)); + builder.Configuration.AddDaprConfigurationStore(Constants.ConfigurationStore, Array.Empty(), client, TimeSpan.FromMinutes(30)); // 注册 Dapr 事件总线 builder.Services.AddScoped(); // 注册 Dapr Actor diff --git a/src/BuildingBlocks/Utils/Constant/ApplicationConstants.cs b/src/BuildingBlocks/Utils/Constant/Constants.cs similarity index 80% rename from src/BuildingBlocks/Utils/Constant/ApplicationConstants.cs rename to src/BuildingBlocks/Utils/Constant/Constants.cs index b635512..a1fe226 100644 --- a/src/BuildingBlocks/Utils/Constant/ApplicationConstants.cs +++ b/src/BuildingBlocks/Utils/Constant/Constants.cs @@ -3,7 +3,7 @@ namespace DaprTool.BuildingBlocks.Utils.Constant; /// -public static class ApplicationConstants +public static class Constants { /// public const string ResourcesPath = "../../dapr/components"; @@ -42,19 +42,30 @@ public static class ApplicationConstants /// public static DaprApp Catalog = new("catalog-api", 12070, 33441, 33442); - /// - public static IEnumerable AllRoutes + /// + /// api 服务应用 ,Yarp 转发到 dapr cli 通过 dapr service invoke 调用 应用服务 + /// + public static IEnumerable ApiApps { get { - //yield return ProxyServer;// - //yield return WebAdmin; - yield return AuthSts; - yield return AuthAdmin; - yield return AuthApi; yield return Ordering; yield return Identity; yield return Catalog; } } + + /// + /// 系统 app , Yarp 直接转发到应用,不通过 dapr cli 调用 应用服务 + /// + public static IEnumerable SystemApps + { + get + { + yield return WebAdmin; + yield return AuthAdmin; + yield return AuthApi; + yield return AuthSts; + } + } } diff --git a/src/BuildingBlocks/Utils/Utils.xml b/src/BuildingBlocks/Utils/Utils.xml index ce13247..953903c 100644 --- a/src/BuildingBlocks/Utils/Utils.xml +++ b/src/BuildingBlocks/Utils/Utils.xml @@ -14,65 +14,72 @@ 要返回的默认的结果 - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - + - - + + + api 服务应用 ,Yarp 转发到 dapr cli 通过 dapr service invoke 调用 应用服务 + + + + + 系统 app , Yarp 直接转发到应用,不通过 dapr cli 调用 应用服务 + diff --git a/src/BuildingBlocks/Utils/ValueObjects/DaprApp.cs b/src/BuildingBlocks/Utils/ValueObjects/DaprApp.cs index 0728602..83ad60f 100644 --- a/src/BuildingBlocks/Utils/ValueObjects/DaprApp.cs +++ b/src/BuildingBlocks/Utils/ValueObjects/DaprApp.cs @@ -8,8 +8,8 @@ public record DaprApp(string AppId, int? DaprHttpPort, int? ResourceHttpPort, in public string? ResourceHttpEndpoint => string.Concat(AppId, "-http"); public string MatchPath => string.IsNullOrWhiteSpace(BasePath) ? - $"{ApplicationConstants.ApiPathPrefix}/{AppId}{ApplicationConstants.RoutePattern}" : - $"{BasePath}{ApplicationConstants.RoutePattern}"; + $"{Constants.ApiPathPrefix}/{AppId}{Constants.RoutePattern}" : + $"{BasePath}{Constants.RoutePattern}"; - public string ClusterId => string.Concat(AppId, ApplicationConstants.ClusterSuffix); + public string ClusterId => string.Concat(AppId, Constants.ClusterSuffix); } \ No newline at end of file diff --git a/src/ProxyServer/ProxyServer.xml b/src/ProxyServer/ProxyServer.xml index e60b9ea..a6beb47 100644 --- a/src/ProxyServer/ProxyServer.xml +++ b/src/ProxyServer/ProxyServer.xml @@ -7,7 +7,8 @@ 添加 常量配置 - 把 /api/{appid}/{*remainder} 路由转换为 /v1.0/invoke/{appid}/method/{remainder} + 1. 把 /admin /auth/admin /api/auth 分别直接转发到对应的应用服务 + 2. 把 /api/{appid}/{*remainder} 路由转换为 /v1.0/invoke/{appid}/method/{remainder} diff --git a/src/ProxyServer/ReverseProxyServiceCollectionExtensions.cs b/src/ProxyServer/ReverseProxyServiceCollectionExtensions.cs index 60e6c54..96de5e9 100644 --- a/src/ProxyServer/ReverseProxyServiceCollectionExtensions.cs +++ b/src/ProxyServer/ReverseProxyServiceCollectionExtensions.cs @@ -15,7 +15,7 @@ internal static class ReverseProxyServiceCollectionExtensions new Dictionary { {"RequestHeader", "X-Forwarded-Prefix"}, - {"Set", ApplicationConstants.WebAdmin.BasePath ?? ""} + {"Set", Constants.WebAdmin.BasePath ?? ""} }, new Dictionary { @@ -29,7 +29,8 @@ internal static class ReverseProxyServiceCollectionExtensions /// /// 添加 常量配置 - /// 把 /api/{appid}/{*remainder} 路由转换为 /v1.0/invoke/{appid}/method/{remainder} + /// 1. 把 /admin /auth/admin /api/auth 分别直接转发到对应的应用服务 + /// 2. 把 /api/{appid}/{*remainder} 路由转换为 /v1.0/invoke/{appid}/method/{remainder} /// /// /// @@ -43,37 +44,32 @@ internal static class ReverseProxyServiceCollectionExtensions } /// - internal static IEnumerable SystemRoutes => - [ - new RouteConfig() + internal static IEnumerable SystemRoutes => Constants.SystemApps.Select(x => new RouteConfig() + { + RouteId = x.AppId, + ClusterId = x.ClusterId, + Order = x.Order, + Match = new RouteMatch() { - RouteId = ApplicationConstants.WebAdmin.AppId, - ClusterId = ApplicationConstants.WebAdmin.ClusterId, - Order = ApplicationConstants.WebAdmin.Order, - Match = new RouteMatch() - { - Path = ApplicationConstants.WebAdmin.MatchPath, - }, - Transforms = DefaultTransform - } - ]; + Path = x.MatchPath, + }, + Transforms = DefaultTransform + }); /// - internal static IEnumerable SystemClusters => - [ - new ClusterConfig() + internal static IEnumerable SystemClusters => Constants.SystemApps.Select(x => new ClusterConfig() + { + ClusterId = x.ClusterId, + Destinations = new Dictionary(StringComparer.OrdinalIgnoreCase) { - ClusterId = ApplicationConstants.WebAdmin.ClusterId, - Destinations = new Dictionary(StringComparer.OrdinalIgnoreCase) - { - { "destination1", new DestinationConfig() { Address = string.Concat("http://", ApplicationConstants.WebAdmin.AppId) } }, - { "destination2", new DestinationConfig() { Address = string.Concat("http://localhost:", ApplicationConstants.WebAdmin.ResourceHttpPort) } }, - } + { "destination1", new DestinationConfig() { Address = string.Concat("http://", x.AppId) } }, + { "destination2", new DestinationConfig() { Address = string.Concat("http://localhost:", x.ResourceHttpPort) } }, } - ]; + + }); /// - internal static IEnumerable Routes => ApplicationConstants.AllRoutes.Select(x => new RouteConfig() + internal static IEnumerable Routes => Constants.ApiApps.Select(x => new RouteConfig() { RouteId = x.AppId, ClusterId = x.ClusterId, @@ -86,7 +82,7 @@ internal static class ReverseProxyServiceCollectionExtensions }); /// - internal static IEnumerable Clusters => ApplicationConstants.AllRoutes.Select(x => new ClusterConfig() + internal static IEnumerable Clusters => Constants.ApiApps.Select(x => new ClusterConfig() { ClusterId = x.ClusterId, Destinations = new Dictionary(StringComparer.OrdinalIgnoreCase) diff --git a/src/ProxyServer/TransformProviders/DaprTransformProvider.cs b/src/ProxyServer/TransformProviders/DaprTransformProvider.cs index e0bfa06..7b05473 100644 --- a/src/ProxyServer/TransformProviders/DaprTransformProvider.cs +++ b/src/ProxyServer/TransformProviders/DaprTransformProvider.cs @@ -9,7 +9,7 @@ public class DaprTransformProvider: ITransformProvider { public void Apply(TransformBuilderContext context) { - var route = ApplicationConstants.AllRoutes.FirstOrDefault(x => x.AppId.Equals(context.Route.RouteId, StringComparison.OrdinalIgnoreCase)); + var route = Constants.ApiApps.FirstOrDefault(x => x.AppId.Equals(context.Route.RouteId, StringComparison.OrdinalIgnoreCase)); if (route is not null) { context.AddRequestTransform((RequestTransformContext transformContext) => @@ -17,9 +17,9 @@ public class DaprTransformProvider: ITransformProvider string catchAll = string.Empty; var requestPath = transformContext.Path.Value!; - if (string.IsNullOrWhiteSpace(route.BasePath) && requestPath.StartsWith(ApplicationConstants.ApiPathPrefix)) + if (string.IsNullOrWhiteSpace(route.BasePath) && requestPath.StartsWith(Constants.ApiPathPrefix)) { - catchAll = requestPath[$"{ApplicationConstants.ApiPathPrefix}/{route.AppId}".Length..]; + catchAll = requestPath[$"{Constants.ApiPathPrefix}/{route.AppId}".Length..]; } else { @@ -30,7 +30,7 @@ public class DaprTransformProvider: ITransformProvider var newPathUri = RequestUtilities.MakeDestinationAddress( transformContext.DestinationPrefix, - new PathString(string.Format(ApplicationConstants.DaprServiceInvocation, context.Route.RouteId, catchAll)), + new PathString(string.Format(Constants.DaprServiceInvocation, context.Route.RouteId, catchAll)), queryContext.QueryString); transformContext.ProxyRequest.RequestUri = newPathUri; diff --git a/src/Services/Ordering/Infrastructure/Ordering.Infrastructure.Repository/AppDataConnectionExtensions.cs b/src/Services/Ordering/Infrastructure/Ordering.Infrastructure.Repository/AppDataConnectionExtensions.cs index 237d6fd..fc1ccad 100644 --- a/src/Services/Ordering/Infrastructure/Ordering.Infrastructure.Repository/AppDataConnectionExtensions.cs +++ b/src/Services/Ordering/Infrastructure/Ordering.Infrastructure.Repository/AppDataConnectionExtensions.cs @@ -55,6 +55,6 @@ public static class AppDataConnectionExtensions /// public static void AddOrderAppDataConnection(this IServiceCollection services, IConfiguration configuration) { - services.AddOrderAppDataConnection(configuration.GetConnectionString(ApplicationConstants.Ordering.AppId)!); + services.AddOrderAppDataConnection(configuration.GetConnectionString(Constants.Ordering.AppId)!); } } \ No newline at end of file diff --git a/src/Services/Ordering/Presentation/Ordering.Api/Controllers/PurchaseOrder/SubscriptionController.cs b/src/Services/Ordering/Presentation/Ordering.Api/Controllers/PurchaseOrder/SubscriptionController.cs index 31fbf16..a098cfa 100644 --- a/src/Services/Ordering/Presentation/Ordering.Api/Controllers/PurchaseOrder/SubscriptionController.cs +++ b/src/Services/Ordering/Presentation/Ordering.Api/Controllers/PurchaseOrder/SubscriptionController.cs @@ -15,10 +15,10 @@ namespace Ordering.Api.Controllers.PurchaseOrder; public class SubscriptionController(IPublisher dispatcher) : Controller { [HttpPost(nameof(OrderSubmittedEvent))] - [Topic(ApplicationConstants.PubSubName, nameof(OrderSubmittedEvent))] + [Topic(DaprTool.BuildingBlocks.Utils.Constant.Constants.PubSubName, nameof(Domain.Interfaces.Events.PurchaseOrder.OrderSubmittedEvent))] public Task HandleAsync(OrderSubmittedEvent @event) => dispatcher.Publish(@event); [HttpPost(nameof(OrderStatusChangeToCancelEvent))] - [Topic(ApplicationConstants.PubSubName, nameof(OrderStatusChangeToCancelEvent))] + [Topic(DaprTool.BuildingBlocks.Utils.Constant.Constants.PubSubName, nameof(Domain.Interfaces.Events.PurchaseOrder.OrderStatusChangeToCancelEvent))] public Task HandleAsync(OrderStatusChangeToCancelEvent @event) => dispatcher.Publish(@event); } \ No newline at end of file diff --git a/src/Services/Ordering/Presentation/Ordering.Api/Program.cs b/src/Services/Ordering/Presentation/Ordering.Api/Program.cs index 5fdf74f..2016cdb 100644 --- a/src/Services/Ordering/Presentation/Ordering.Api/Program.cs +++ b/src/Services/Ordering/Presentation/Ordering.Api/Program.cs @@ -30,15 +30,15 @@ app.MapActorsHandlers(); try { - app.Logger.LogInformation("Starting web api ({ApplicationName})...", ApplicationConstants.Ordering.AppId); + app.Logger.LogInformation("Starting web api ({ApplicationName})...", Constants.Ordering.AppId); await app.RunAsync(); } catch (Exception ex) { - app.Logger.LogCritical(ex, "Api ({ApplicationName}) 意外终止...", ApplicationConstants.Ordering.AppId); + app.Logger.LogCritical(ex, "Api ({ApplicationName}) 意外终止...", Constants.Ordering.AppId); } finally { - app.Logger.LogCritical("stop finally web api ({ApplicationName})... ", ApplicationConstants.Ordering.AppId); + app.Logger.LogCritical("stop finally web api ({ApplicationName})... ", Constants.Ordering.AppId); Log.CloseAndFlush(); } \ No newline at end of file -- Gitee From c430139afe4bd34cd202af5dc8c61c96cd78a8d1 Mon Sep 17 00:00:00 2001 From: iamshen Date: Mon, 20 May 2024 10:43:18 +0800 Subject: [PATCH 2/3] Add ignored files like source code --- .../Areas/AdminUI/Views/Log/AuditLog.cshtml | 161 ++++++++++++++++++ .../Areas/AdminUI/Views/Log/ErrorsLog.cshtml | 116 +++++++++++++ 2 files changed, 277 insertions(+) create mode 100644 src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Log/AuditLog.cshtml create mode 100644 src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Log/ErrorsLog.cshtml diff --git a/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Log/AuditLog.cshtml b/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Log/AuditLog.cshtml new file mode 100644 index 0000000..789f6a0 --- /dev/null +++ b/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Log/AuditLog.cshtml @@ -0,0 +1,161 @@ +@using Microsoft.AspNetCore.Mvc.Localization +@using Idsrv4.Admin.BusinessLogic.Shared.Dtos.Common +@using Idsrv4.Admin.UI.Configuration.Constants +@model Idsrv4.Admin.BusinessLogic.Dtos.Log.AuditLogsDto +@inject IViewLocalizer Localizer +@{ + ViewData["Title"] = Localizer["Audit Log"]; +} + +
+ +
+
+

+ @ViewData["Title"] +

+
+
+ +
+
+ +
+ +
+ +
+ + + +
+
+
+
+ + + +
+ +
+
+
+
+
+ +
+
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
+ +
+
+ +
+
+
+
+
+ +
+
+
+ + + + + + + + + + + + + @foreach (var auditLog in Model.Logs) + { + + + + + + + + + + + + } + +
@Localizer["Event"]@Localizer["Source"]@Localizer["Subject"]@Localizer["Action"]@Localizer["Created"]
+ @Localizer["Detail"] + @auditLog.Event@auditLog.Source + + + + + @auditLog.Created +
+
+
+
+ +
+
+ @await Html.PartialAsync("Common/PagerDynamic", new Pager { Action = Url.Action("AuditLog", "Log", new { Area = CommonConsts.AdminUIArea }), PageSize = Model.PageSize, TotalCount = Model.TotalCount, EnableSearch = true, Search = ViewBag.Search }) +
+
+ + +
\ No newline at end of file diff --git a/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Log/ErrorsLog.cshtml b/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Log/ErrorsLog.cshtml new file mode 100644 index 0000000..4b7446a --- /dev/null +++ b/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Log/ErrorsLog.cshtml @@ -0,0 +1,116 @@ +@using Microsoft.AspNetCore.Mvc.Localization +@using Idsrv4.Admin.BusinessLogic.Shared.Dtos.Common +@using Idsrv4.Admin.UI.Configuration.Constants +@using Idsrv4.Admin.UI.Helpers +@model Idsrv4.Admin.BusinessLogic.Dtos.Log.LogsDto +@inject IViewLocalizer Localizer + +@{ + ViewBag.Title = Localizer["PageTitle"]; + Layout = "_Layout"; +} + +
+
+

+ @Localizer["PageTitle"] +

+
+
+ + +
+
+
+ +
+
+ +
+ +
+ +
+ + + +
+
+
+
+ + + +
+ +
+
+ @await Html.PartialAsync("Common/Search", new Search { Action = "ErrorsLog", Controller = "Log" }) +
+
+ +
+
+
+ + + + + + + + + + + @foreach (var log in Model.Logs) + { + + + + + + + + + + } + +
@Localizer["TableLevel"]@Localizer["TableLogged"]@Localizer["TableMessage"]
+ @Localizer["TableShowDetail"] + @log.Level + + @log.TimeStamp + + + @log.Message
+
+
+
+ +
+
+ @await Html.PartialAsync("Common/Pager", new Pager { Action = "ErrorsLog", PageSize = Model.PageSize, TotalCount = Model.TotalCount, EnableSearch = true, Search = ViewBag.Search }) +
+
\ No newline at end of file -- Gitee From 89b4201e0c6c1d89ba2d9a0f0bbeeed0ea0362a5 Mon Sep 17 00:00:00 2001 From: iamshen Date: Mon, 20 May 2024 12:30:22 +0800 Subject: [PATCH 3/3] Update auth admin client configuratio page javascripts and add cookiesessionStore with memoryCache and setup systemclusters loadBalancing policy --- .../Utils/Constant/Constants.cs | 14 +- .../Utils/ValueObjects/DaprApp.cs | 2 +- .../Areas/AdminUI/Views/Shared/_Layout.cshtml | 2 +- .../Helpers/CookieSessionStore.cs | 42 +- .../Idsrv4.Admin.UI/Helpers/StartupHelpers.cs | 2 + .../Idsrv4.Admin.UI/Idsrv4.Admin.UI.csproj | 6 +- .../Idsrv4.Admin.UI/wwwroot/dist/js/bundle.js | 26153 ++++++++++++++++ .../wwwroot/dist/js/bundle.min.js | 2 +- .../src/Idsrv4.Admin/appsettings.json | 4 +- ...ReverseProxyServiceCollectionExtensions.cs | 7 +- .../Properties/launchSettings.json | 2 +- 11 files changed, 26213 insertions(+), 23 deletions(-) create mode 100644 src/IdentityServer4/src/Idsrv4.Admin.UI/wwwroot/dist/js/bundle.js diff --git a/src/BuildingBlocks/Utils/Constant/Constants.cs b/src/BuildingBlocks/Utils/Constant/Constants.cs index a1fe226..9c52cc9 100644 --- a/src/BuildingBlocks/Utils/Constant/Constants.cs +++ b/src/BuildingBlocks/Utils/Constant/Constants.cs @@ -28,19 +28,19 @@ public static class Constants /// public static DaprApp ProxyServer = new("proxy-server", 12001, 44440, 44444); /// - public static DaprApp WebAdmin = new("admin", 12010, 51871, 51873, "/admin"); + public static DaprApp WebAdmin = new("admin", 12010, 51871, 7273, "/admin"); /// - public static DaprApp AuthAdmin = new("auth-admin", 12030, 53871, 53873, "/auth/admin", 90); + public static DaprApp AuthAdmin = new("auth-admin", 12030, 53871, 44303, "/auth/admin", 90); /// - public static DaprApp AuthApi = new("auth-api", 12040, 54871, 54873, "/api/auth", 95); + public static DaprApp AuthApi = new("auth-api", 12040, 54871, 44302, "/api/auth", 95); /// - public static DaprApp AuthSts = new("auth-sts", 12020, 52871, 52873, "/auth"); + public static DaprApp AuthSts = new("auth-sts", 12020, 52871, 44310, "/auth"); /// - public static DaprApp Ordering = new("order-api", 12050, 31441, 31442); + public static DaprApp Ordering = new("order-api", 12050, 31441, 5510); /// - public static DaprApp Identity = new("identity-api", 12060, 32441, 32442); + public static DaprApp Identity = new("identity-api", 12060, 32441, 5520); /// - public static DaprApp Catalog = new("catalog-api", 12070, 33441, 33442); + public static DaprApp Catalog = new("catalog-api", 12070, 33441, 5530); /// /// api 服务应用 ,Yarp 转发到 dapr cli 通过 dapr service invoke 调用 应用服务 diff --git a/src/BuildingBlocks/Utils/ValueObjects/DaprApp.cs b/src/BuildingBlocks/Utils/ValueObjects/DaprApp.cs index 83ad60f..911efda 100644 --- a/src/BuildingBlocks/Utils/ValueObjects/DaprApp.cs +++ b/src/BuildingBlocks/Utils/ValueObjects/DaprApp.cs @@ -2,7 +2,7 @@ namespace DaprTool.BuildingBlocks.Utils.ValueObjects; -public record DaprApp(string AppId, int? DaprHttpPort, int? ResourceHttpPort, int? ResourceHttpsPort, string? BasePath = "", int? Order = 100) +public record DaprApp(string AppId, int? DaprHttpPort, int? ResourceHttpPort, int? AppHttpsPort, string? BasePath = "", int? Order = 100) { public string? ResourceHttpsEndpoint => string.Concat(AppId, "-https"); public string? ResourceHttpEndpoint => string.Concat(AppId, "-http"); diff --git a/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Shared/_Layout.cshtml b/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Shared/_Layout.cshtml index eae5db6..903fe67 100644 --- a/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Shared/_Layout.cshtml +++ b/src/IdentityServer4/src/Idsrv4.Admin.UI/Areas/AdminUI/Views/Shared/_Layout.cshtml @@ -122,7 +122,7 @@ - + diff --git a/src/IdentityServer4/src/Idsrv4.Admin.UI/Helpers/CookieSessionStore.cs b/src/IdentityServer4/src/Idsrv4.Admin.UI/Helpers/CookieSessionStore.cs index 5150c55..b047955 100644 --- a/src/IdentityServer4/src/Idsrv4.Admin.UI/Helpers/CookieSessionStore.cs +++ b/src/IdentityServer4/src/Idsrv4.Admin.UI/Helpers/CookieSessionStore.cs @@ -4,6 +4,7 @@ using System.Threading.Tasks; using Dapr.Client; using Microsoft.AspNetCore.Authentication; using Microsoft.AspNetCore.Authentication.Cookies; +using Microsoft.Extensions.Caching.Memory; #nullable enable @@ -15,26 +16,55 @@ namespace Idsrv4.Admin.UI.Helpers string DAPR_STORE_NAME = "dt-statestore"; string KeyPrefix = "auth-session-store-"; private DaprClient _client = new DaprClientBuilder().Build(); + private IMemoryCache _memoryCache = new MemoryCache(new MemoryCacheOptions()); public async Task RemoveAsync(string key) { - await _client.DeleteStateAsync(DAPR_STORE_NAME, string.Concat(KeyPrefix, key)); + if (_client is null) + { + _memoryCache.Remove(key); + + await Task.CompletedTask; + } + else + { + await _client.DeleteStateAsync(DAPR_STORE_NAME, string.Concat(KeyPrefix, key)); + } } public async Task RenewAsync(string key, AuthenticationTicket ticket) { byte[] value = SerializeToBytes(ticket); - await _client.SaveStateAsync(DAPR_STORE_NAME, key, value, metadata: new Dictionary() - { - {"ttlInSeconds", (60 * 1 * 60).ToString()}, - }); + if (_client is null) + { + _memoryCache.Set(key, value); + } + else + { + await _client.SaveStateAsync(DAPR_STORE_NAME, key, value, metadata: new Dictionary() + { + {"ttlInSeconds", (60 * 1 * 60).ToString()}, + }); + } } public async Task RetrieveAsync(string key) { - var bytes = await _client.GetStateAsync(DAPR_STORE_NAME, key); + byte[]? bytes; + + if (_client is null) + { + _memoryCache.TryGetValue(key, out bytes); + } + else + { + bytes = await _client.GetStateAsync(DAPR_STORE_NAME, key); + } + + if (bytes is null) return default; + var value = DeserializeFromBytes(bytes); return value; } diff --git a/src/IdentityServer4/src/Idsrv4.Admin.UI/Helpers/StartupHelpers.cs b/src/IdentityServer4/src/Idsrv4.Admin.UI/Helpers/StartupHelpers.cs index 08d5194..6b743ff 100644 --- a/src/IdentityServer4/src/Idsrv4.Admin.UI/Helpers/StartupHelpers.cs +++ b/src/IdentityServer4/src/Idsrv4.Admin.UI/Helpers/StartupHelpers.cs @@ -345,6 +345,8 @@ public static class StartupHelpers .AddEntityFrameworkStores() .AddDefaultTokenProviders(); + services.AddDistributedMemoryCache(); + var authenticationBuilder = services.AddAuthentication(options => { options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme; diff --git a/src/IdentityServer4/src/Idsrv4.Admin.UI/Idsrv4.Admin.UI.csproj b/src/IdentityServer4/src/Idsrv4.Admin.UI/Idsrv4.Admin.UI.csproj index 489304b..657a31b 100644 --- a/src/IdentityServer4/src/Idsrv4.Admin.UI/Idsrv4.Admin.UI.csproj +++ b/src/IdentityServer4/src/Idsrv4.Admin.UI/Idsrv4.Admin.UI.csproj @@ -5,6 +5,9 @@ true / + + + @@ -84,9 +87,10 @@ + - + diff --git a/src/IdentityServer4/src/Idsrv4.Admin.UI/wwwroot/dist/js/bundle.js b/src/IdentityServer4/src/Idsrv4.Admin.UI/wwwroot/dist/js/bundle.js new file mode 100644 index 0000000..468b92c --- /dev/null +++ b/src/IdentityServer4/src/Idsrv4.Admin.UI/wwwroot/dist/js/bundle.js @@ -0,0 +1,26153 @@ +if ( + ((function (e, t) { + "use strict"; + "object" == typeof module && "object" == typeof module.exports + ? (module.exports = e.document + ? t(e, !0) + : function (e) { + if (!e.document) + throw new Error("jQuery requires a window with a document"); + return t(e); + }) + : t(e); + })("undefined" != typeof window ? window : this, function (D, e) { + "use strict"; + function m(e) { + return null != e && e === e.window; + } + var t = [], + i = Object.getPrototypeOf, + s = t.slice, + g = t.flat + ? function (e) { + return t.flat.call(e); + } + : function (e) { + return t.concat.apply([], e); + }, + l = t.push, + r = t.indexOf, + n = {}, + a = n.toString, + v = n.hasOwnProperty, + o = v.toString, + u = o.call(Object), + y = {}, + b = function (e) { + return "function" == typeof e && "number" != typeof e.nodeType; + }, + k = D.document, + c = { type: !0, src: !0, nonce: !0, noModule: !0 }; + function _(e, t, n) { + var i, + r, + a = (n = n || k).createElement("script"); + if (((a.text = e), t)) + for (i in c) + (r = t[i] || (t.getAttribute && t.getAttribute(i))) && + a.setAttribute(i, r); + n.head.appendChild(a).parentNode.removeChild(a); + } + function w(e) { + return null == e + ? e + "" + : "object" == typeof e || "function" == typeof e + ? n[a.call(e)] || "object" + : typeof e; + } + var d = "3.5.1", + C = function (e, t) { + return new C.fn.init(e, t); + }; + function h(e) { + var t = !!e && "length" in e && e.length, + n = w(e); + return ( + !b(e) && + !m(e) && + ("array" === n || + 0 === t || + ("number" == typeof t && 0 < t && t - 1 in e)) + ); + } + (C.fn = C.prototype = + { + jquery: d, + constructor: C, + length: 0, + toArray: function () { + return s.call(this); + }, + get: function (e) { + return null == e + ? s.call(this) + : e < 0 + ? this[e + this.length] + : this[e]; + }, + pushStack: function (e) { + var t = C.merge(this.constructor(), e); + return (t.prevObject = this), t; + }, + each: function (e) { + return C.each(this, e); + }, + map: function (n) { + return this.pushStack( + C.map(this, function (e, t) { + return n.call(e, t, e); + }), + ); + }, + slice: function () { + return this.pushStack(s.apply(this, arguments)); + }, + first: function () { + return this.eq(0); + }, + last: function () { + return this.eq(-1); + }, + even: function () { + return this.pushStack( + C.grep(this, function (e, t) { + return (t + 1) % 2; + }), + ); + }, + odd: function () { + return this.pushStack( + C.grep(this, function (e, t) { + return t % 2; + }), + ); + }, + eq: function (e) { + var t = this.length, + n = +e + (e < 0 ? t : 0); + return this.pushStack(0 <= n && n < t ? [this[n]] : []); + }, + end: function () { + return this.prevObject || this.constructor(); + }, + push: l, + sort: t.sort, + splice: t.splice, + }), + (C.extend = C.fn.extend = + function () { + var e, + t, + n, + i, + r, + a, + o = arguments[0] || {}, + s = 1, + l = arguments.length, + u = !1; + for ( + "boolean" == typeof o && ((u = o), (o = arguments[s] || {}), s++), + "object" == typeof o || b(o) || (o = {}), + s === l && ((o = this), s--); + s < l; + s++ + ) + if (null != (e = arguments[s])) + for (t in e) + (i = e[t]), + "__proto__" !== t && + o !== i && + (u && i && (C.isPlainObject(i) || (r = Array.isArray(i))) + ? ((n = o[t]), + (a = + r && !Array.isArray(n) + ? [] + : r || C.isPlainObject(n) + ? n + : {}), + (r = !1), + (o[t] = C.extend(u, a, i))) + : void 0 !== i && (o[t] = i)); + return o; + }), + C.extend({ + expando: "jQuery" + (d + Math.random()).replace(/\D/g, ""), + isReady: !0, + error: function (e) { + throw new Error(e); + }, + noop: function () { }, + isPlainObject: function (e) { + var t, n; + return ( + !(!e || "[object Object]" !== a.call(e)) && + (!(t = i(e)) || + ("function" == + typeof (n = v.call(t, "constructor") && t.constructor) && + o.call(n) === u)) + ); + }, + isEmptyObject: function (e) { + var t; + for (t in e) return !1; + return !0; + }, + globalEval: function (e, t, n) { + _(e, { nonce: t && t.nonce }, n); + }, + each: function (e, t) { + var n, + i = 0; + if (h(e)) + for (n = e.length; i < n && !1 !== t.call(e[i], i, e[i]); i++); + else for (i in e) if (!1 === t.call(e[i], i, e[i])) break; + return e; + }, + makeArray: function (e, t) { + var n = t || []; + return ( + null != e && + (h(Object(e)) + ? C.merge(n, "string" == typeof e ? [e] : e) + : l.call(n, e)), + n + ); + }, + inArray: function (e, t, n) { + return null == t ? -1 : r.call(t, e, n); + }, + merge: function (e, t) { + for (var n = +t.length, i = 0, r = e.length; i < n; i++) + e[r++] = t[i]; + return (e.length = r), e; + }, + grep: function (e, t, n) { + for (var i = [], r = 0, a = e.length, o = !n; r < a; r++) + !t(e[r], r) != o && i.push(e[r]); + return i; + }, + map: function (e, t, n) { + var i, + r, + a = 0, + o = []; + if (h(e)) + for (i = e.length; a < i; a++) + null != (r = t(e[a], a, n)) && o.push(r); + else for (a in e) null != (r = t(e[a], a, n)) && o.push(r); + return g(o); + }, + guid: 1, + support: y, + }), + "function" == typeof Symbol && + (C.fn[Symbol.iterator] = t[Symbol.iterator]), + C.each( + "Boolean Number String Function Array Date RegExp Object Error Symbol".split( + " ", + ), + function (e, t) { + n["[object " + t + "]"] = t.toLowerCase(); + }, + ); + var f = (function (n) { + function d(e, t) { + var n = "0x" + e.slice(1) - 65536; + return ( + t || + (n < 0 + ? String.fromCharCode(65536 + n) + : String.fromCharCode((n >> 10) | 55296, (1023 & n) | 56320)) + ); + } + function r() { + x(); + } + var e, + f, + _, + a, + o, + p, + h, + m, + w, + l, + u, + x, + D, + s, + k, + g, + c, + v, + y, + C = "sizzle" + 1 * new Date(), + b = n.document, + T = 0, + i = 0, + S = le(), + E = le(), + M = le(), + N = le(), + O = function (e, t) { + return e === t && (u = !0), 0; + }, + A = {}.hasOwnProperty, + t = [], + j = t.pop, + I = t.push, + P = t.push, + L = t.slice, + F = function (e, t) { + for (var n = 0, i = e.length; n < i; n++) if (e[n] === t) return n; + return -1; + }, + R = + "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", + H = "[\ \\t\\r\\n\\f]", + Y = + "(?:\\\\[\\da-fA-F]{1,6}" + + H + + "?|\\\\[^\\r\\n\\f]|[\\w-]|[^\0-\])+", + V = + "\\[" + + H + + "*(" + + Y + + ")(?:" + + H + + "*([*^$|!~]?=)" + + H + + "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + + Y + + "))|)" + + H + + "*\\]", + U = + ":(" + + Y + + ")(?:\\((('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|((?:\\\\.|[^\\\\()[\\]]|" + + V + + ")*)|.*)\\)|)", + W = new RegExp(H + "+", "g"), + q = new RegExp("^" + H + "+|((?:^|[^\\\\])(?:\\\\.)*)" + H + "+$", "g"), + B = new RegExp("^" + H + "*," + H + "*"), + $ = new RegExp("^" + H + "*([>+~]|" + H + ")" + H + "*"), + z = new RegExp(H + "|>"), + G = new RegExp(U), + Q = new RegExp("^" + Y + "$"), + J = { + ID: new RegExp("^#(" + Y + ")"), + CLASS: new RegExp("^\\.(" + Y + ")"), + TAG: new RegExp("^(" + Y + "|[*])"), + ATTR: new RegExp("^" + V), + PSEUDO: new RegExp("^" + U), + CHILD: new RegExp( + "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + + H + + "*(even|odd|(([+-]|)(\\d*)n|)" + + H + + "*(?:([+-]|)" + + H + + "*(\\d+)|))" + + H + + "*\\)|)", + "i", + ), + bool: new RegExp("^(?:" + R + ")$", "i"), + needsContext: new RegExp( + "^" + + H + + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + + H + + "*((?:-\\d)?\\d*)" + + H + + "*\\)|)(?=[^-]|$)", + "i", + ), + }, + Z = /HTML$/i, + X = /^(?:input|select|textarea|button)$/i, + K = /^h\d$/i, + ee = /^[^{]+\{\s*\[native \w/, + te = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, + ne = /[+~]/, + ie = new RegExp( + "\\\\[\\da-fA-F]{1,6}" + H + "?|\\\\([^\\r\\n\\f])", + "g", + ), + re = /([\0-]|^-?\d)|^-$|[^\0--￿\w-]/g, + ae = function (e, t) { + return t + ? "\0" === e + ? "�" + : e.slice(0, -1) + + "\\" + + e.charCodeAt(e.length - 1).toString(16) + + " " + : "\\" + e; + }, + oe = _e( + function (e) { + return !0 === e.disabled && "fieldset" === e.nodeName.toLowerCase(); + }, + { dir: "parentNode", next: "legend" }, + ); + try { + P.apply((t = L.call(b.childNodes)), b.childNodes), + t[b.childNodes.length].nodeType; + } catch (e) { + P = { + apply: t.length + ? function (e, t) { + I.apply(e, L.call(t)); + } + : function (e, t) { + for (var n = e.length, i = 0; (e[n++] = t[i++]);); + e.length = n - 1; + }, + }; + } + function se(t, e, n, i) { + var r, + a, + o, + s, + l, + u, + c, + d = e && e.ownerDocument, + h = e ? e.nodeType : 9; + if ( + ((n = n || []), + "string" != typeof t || !t || (1 !== h && 9 !== h && 11 !== h)) + ) + return n; + if (!i && (x(e), (e = e || D), k)) { + if (11 !== h && (l = te.exec(t))) + if ((r = l[1])) { + if (9 === h) { + if (!(o = e.getElementById(r))) return n; + if (o.id === r) return n.push(o), n; + } else if ( + d && + (o = d.getElementById(r)) && + y(e, o) && + o.id === r + ) + return n.push(o), n; + } else { + if (l[2]) return P.apply(n, e.getElementsByTagName(t)), n; + if ( + (r = l[3]) && + f.getElementsByClassName && + e.getElementsByClassName + ) + return P.apply(n, e.getElementsByClassName(r)), n; + } + if ( + f.qsa && + !N[t + " "] && + (!g || !g.test(t)) && + (1 !== h || "object" !== e.nodeName.toLowerCase()) + ) { + if (((c = t), (d = e), 1 === h && (z.test(t) || $.test(t)))) { + for ( + ((d = (ne.test(t) && ve(e.parentNode)) || e) === e && + f.scope) || + ((s = e.getAttribute("id")) + ? (s = s.replace(re, ae)) + : e.setAttribute("id", (s = C))), + a = (u = p(t)).length; + a--; + + ) + u[a] = (s ? "#" + s : ":scope") + " " + be(u[a]); + c = u.join(","); + } + try { + return P.apply(n, d.querySelectorAll(c)), n; + } catch (e) { + N(t, !0); + } finally { + s === C && e.removeAttribute("id"); + } + } + } + return m(t.replace(q, "$1"), e, n, i); + } + function le() { + var i = []; + return function e(t, n) { + return ( + i.push(t + " ") > _.cacheLength && delete e[i.shift()], + (e[t + " "] = n) + ); + }; + } + function ue(e) { + return (e[C] = !0), e; + } + function ce(e) { + var t = D.createElement("fieldset"); + try { + return !!e(t); + } catch (e) { + return !1; + } finally { + t.parentNode && t.parentNode.removeChild(t), (t = null); + } + } + function de(e, t) { + for (var n = e.split("|"), i = n.length; i--;) _.attrHandle[n[i]] = t; + } + function he(e, t) { + var n = t && e, + i = + n && + 1 === e.nodeType && + 1 === t.nodeType && + e.sourceIndex - t.sourceIndex; + if (i) return i; + if (n) for (; (n = n.nextSibling);) if (n === t) return -1; + return e ? 1 : -1; + } + function fe(t) { + return function (e) { + return "input" === e.nodeName.toLowerCase() && e.type === t; + }; + } + function pe(n) { + return function (e) { + var t = e.nodeName.toLowerCase(); + return ("input" === t || "button" === t) && e.type === n; + }; + } + function me(t) { + return function (e) { + return "form" in e + ? e.parentNode && !1 === e.disabled + ? "label" in e + ? "label" in e.parentNode + ? e.parentNode.disabled === t + : e.disabled === t + : e.isDisabled === t || (e.isDisabled !== !t && oe(e) === t) + : e.disabled === t + : "label" in e && e.disabled === t; + }; + } + function ge(o) { + return ue(function (a) { + return ( + (a = +a), + ue(function (e, t) { + for (var n, i = o([], e.length, a), r = i.length; r--;) + e[(n = i[r])] && (e[n] = !(t[n] = e[n])); + }) + ); + }); + } + function ve(e) { + return e && void 0 !== e.getElementsByTagName && e; + } + for (e in ((f = se.support = {}), + (o = se.isXML = + function (e) { + var t = e.namespaceURI, + n = (e.ownerDocument || e).documentElement; + return !Z.test(t || (n && n.nodeName) || "HTML"); + }), + (x = se.setDocument = + function (e) { + var t, + n, + i = e ? e.ownerDocument || e : b; + return ( + i != D && + 9 === i.nodeType && + i.documentElement && + ((s = (D = i).documentElement), + (k = !o(D)), + b != D && + (n = D.defaultView) && + n.top !== n && + (n.addEventListener + ? n.addEventListener("unload", r, !1) + : n.attachEvent && n.attachEvent("onunload", r)), + (f.scope = ce(function (e) { + return ( + s.appendChild(e).appendChild(D.createElement("div")), + void 0 !== e.querySelectorAll && + !e.querySelectorAll(":scope fieldset div").length + ); + })), + (f.attributes = ce(function (e) { + return (e.className = "i"), !e.getAttribute("className"); + })), + (f.getElementsByTagName = ce(function (e) { + return ( + e.appendChild(D.createComment("")), + !e.getElementsByTagName("*").length + ); + })), + (f.getElementsByClassName = ee.test(D.getElementsByClassName)), + (f.getById = ce(function (e) { + return ( + (s.appendChild(e).id = C), + !D.getElementsByName || !D.getElementsByName(C).length + ); + })), + f.getById + ? ((_.filter.ID = function (e) { + var t = e.replace(ie, d); + return function (e) { + return e.getAttribute("id") === t; + }; + }), + (_.find.ID = function (e, t) { + if (void 0 !== t.getElementById && k) { + var n = t.getElementById(e); + return n ? [n] : []; + } + })) + : ((_.filter.ID = function (e) { + var n = e.replace(ie, d); + return function (e) { + var t = + void 0 !== e.getAttributeNode && + e.getAttributeNode("id"); + return t && t.value === n; + }; + }), + (_.find.ID = function (e, t) { + if (void 0 !== t.getElementById && k) { + var n, + i, + r, + a = t.getElementById(e); + if (a) { + if ((n = a.getAttributeNode("id")) && n.value === e) + return [a]; + for (r = t.getElementsByName(e), i = 0; (a = r[i++]);) + if ((n = a.getAttributeNode("id")) && n.value === e) + return [a]; + } + return []; + } + })), + (_.find.TAG = f.getElementsByTagName + ? function (e, t) { + return void 0 !== t.getElementsByTagName + ? t.getElementsByTagName(e) + : f.qsa + ? t.querySelectorAll(e) + : void 0; + } + : function (e, t) { + var n, + i = [], + r = 0, + a = t.getElementsByTagName(e); + if ("*" !== e) return a; + for (; (n = a[r++]);) 1 === n.nodeType && i.push(n); + return i; + }), + (_.find.CLASS = + f.getElementsByClassName && + function (e, t) { + if (void 0 !== t.getElementsByClassName && k) + return t.getElementsByClassName(e); + }), + (c = []), + (g = []), + (f.qsa = ee.test(D.querySelectorAll)) && + (ce(function (e) { + var t; + (s.appendChild(e).innerHTML = + ""), + e.querySelectorAll("[msallowcapture^='']").length && + g.push("[*^$]=" + H + "*(?:''|\"\")"), + e.querySelectorAll("[selected]").length || + g.push("\\[" + H + "*(?:value|" + R + ")"), + e.querySelectorAll("[id~=" + C + "-]").length || + g.push("~="), + (t = D.createElement("input")).setAttribute("name", ""), + e.appendChild(t), + e.querySelectorAll("[name='']").length || + g.push( + "\\[" + H + "*name" + H + "*=" + H + "*(?:''|\"\")", + ), + e.querySelectorAll(":checked").length || g.push(":checked"), + e.querySelectorAll("a#" + C + "+*").length || + g.push(".#.+[+~]"), + e.querySelectorAll("\\\f"), + g.push("[\\r\\n\\f]"); + }), + ce(function (e) { + e.innerHTML = + ""; + var t = D.createElement("input"); + t.setAttribute("type", "hidden"), + e.appendChild(t).setAttribute("name", "D"), + e.querySelectorAll("[name=d]").length && + g.push("name" + H + "*[*^$|!~]?="), + 2 !== e.querySelectorAll(":enabled").length && + g.push(":enabled", ":disabled"), + (s.appendChild(e).disabled = !0), + 2 !== e.querySelectorAll(":disabled").length && + g.push(":enabled", ":disabled"), + e.querySelectorAll("*,:x"), + g.push(",.*:"); + })), + (f.matchesSelector = ee.test( + (v = + s.matches || + s.webkitMatchesSelector || + s.mozMatchesSelector || + s.oMatchesSelector || + s.msMatchesSelector), + )) && + ce(function (e) { + (f.disconnectedMatch = v.call(e, "*")), + v.call(e, "[s!='']:x"), + c.push("!=", U); + }), + (g = g.length && new RegExp(g.join("|"))), + (c = c.length && new RegExp(c.join("|"))), + (t = ee.test(s.compareDocumentPosition)), + (y = + t || ee.test(s.contains) + ? function (e, t) { + var n = 9 === e.nodeType ? e.documentElement : e, + i = t && t.parentNode; + return ( + e === i || + !( + !i || + 1 !== i.nodeType || + !(n.contains + ? n.contains(i) + : e.compareDocumentPosition && + 16 & e.compareDocumentPosition(i)) + ) + ); + } + : function (e, t) { + if (t) + for (; (t = t.parentNode);) if (t === e) return !0; + return !1; + }), + (O = t + ? function (e, t) { + if (e === t) return (u = !0), 0; + var n = + !e.compareDocumentPosition - !t.compareDocumentPosition; + return ( + n || + (1 & + (n = + (e.ownerDocument || e) == (t.ownerDocument || t) + ? e.compareDocumentPosition(t) + : 1) || + (!f.sortDetached && t.compareDocumentPosition(e) === n) + ? e == D || (e.ownerDocument == b && y(b, e)) + ? -1 + : t == D || (t.ownerDocument == b && y(b, t)) + ? 1 + : l + ? F(l, e) - F(l, t) + : 0 + : 4 & n + ? -1 + : 1) + ); + } + : function (e, t) { + if (e === t) return (u = !0), 0; + var n, + i = 0, + r = e.parentNode, + a = t.parentNode, + o = [e], + s = [t]; + if (!r || !a) + return e == D + ? -1 + : t == D + ? 1 + : r + ? -1 + : a + ? 1 + : l + ? F(l, e) - F(l, t) + : 0; + if (r === a) return he(e, t); + for (n = e; (n = n.parentNode);) o.unshift(n); + for (n = t; (n = n.parentNode);) s.unshift(n); + for (; o[i] === s[i];) i++; + return i + ? he(o[i], s[i]) + : o[i] == b + ? -1 + : s[i] == b + ? 1 + : 0; + })), + D + ); + }), + (se.matches = function (e, t) { + return se(e, null, null, t); + }), + (se.matchesSelector = function (e, t) { + if ( + (x(e), + f.matchesSelector && + k && + !N[t + " "] && + (!c || !c.test(t)) && + (!g || !g.test(t))) + ) + try { + var n = v.call(e, t); + if ( + n || + f.disconnectedMatch || + (e.document && 11 !== e.document.nodeType) + ) + return n; + } catch (e) { + N(t, !0); + } + return 0 < se(t, D, null, [e]).length; + }), + (se.contains = function (e, t) { + return (e.ownerDocument || e) != D && x(e), y(e, t); + }), + (se.attr = function (e, t) { + (e.ownerDocument || e) != D && x(e); + var n = _.attrHandle[t.toLowerCase()], + i = n && A.call(_.attrHandle, t.toLowerCase()) ? n(e, t, !k) : void 0; + return void 0 !== i + ? i + : f.attributes || !k + ? e.getAttribute(t) + : (i = e.getAttributeNode(t)) && i.specified + ? i.value + : null; + }), + (se.escape = function (e) { + return (e + "").replace(re, ae); + }), + (se.error = function (e) { + throw new Error("Syntax error, unrecognized expression: " + e); + }), + (se.uniqueSort = function (e) { + var t, + n = [], + i = 0, + r = 0; + if ( + ((u = !f.detectDuplicates), + (l = !f.sortStable && e.slice(0)), + e.sort(O), + u) + ) { + for (; (t = e[r++]);) t === e[r] && (i = n.push(r)); + for (; i--;) e.splice(n[i], 1); + } + return (l = null), e; + }), + (a = se.getText = + function (e) { + var t, + n = "", + i = 0, + r = e.nodeType; + if (r) { + if (1 === r || 9 === r || 11 === r) { + if ("string" == typeof e.textContent) return e.textContent; + for (e = e.firstChild; e; e = e.nextSibling) n += a(e); + } else if (3 === r || 4 === r) return e.nodeValue; + } else for (; (t = e[i++]);) n += a(t); + return n; + }), + ((_ = se.selectors = + { + cacheLength: 50, + createPseudo: ue, + match: J, + attrHandle: {}, + find: {}, + relative: { + ">": { dir: "parentNode", first: !0 }, + " ": { dir: "parentNode" }, + "+": { dir: "previousSibling", first: !0 }, + "~": { dir: "previousSibling" }, + }, + preFilter: { + ATTR: function (e) { + return ( + (e[1] = e[1].replace(ie, d)), + (e[3] = (e[3] || e[4] || e[5] || "").replace(ie, d)), + "~=" === e[2] && (e[3] = " " + e[3] + " "), + e.slice(0, 4) + ); + }, + CHILD: function (e) { + return ( + (e[1] = e[1].toLowerCase()), + "nth" === e[1].slice(0, 3) + ? (e[3] || se.error(e[0]), + (e[4] = +(e[4] + ? e[5] + (e[6] || 1) + : 2 * ("even" === e[3] || "odd" === e[3]))), + (e[5] = +(e[7] + e[8] || "odd" === e[3]))) + : e[3] && se.error(e[0]), + e + ); + }, + PSEUDO: function (e) { + var t, + n = !e[6] && e[2]; + return J.CHILD.test(e[0]) + ? null + : (e[3] + ? (e[2] = e[4] || e[5] || "") + : n && + G.test(n) && + (t = p(n, !0)) && + (t = n.indexOf(")", n.length - t) - n.length) && + ((e[0] = e[0].slice(0, t)), (e[2] = n.slice(0, t))), + e.slice(0, 3)); + }, + }, + filter: { + TAG: function (e) { + var t = e.replace(ie, d).toLowerCase(); + return "*" === e + ? function () { + return !0; + } + : function (e) { + return e.nodeName && e.nodeName.toLowerCase() === t; + }; + }, + CLASS: function (e) { + var t = S[e + " "]; + return ( + t || + ((t = new RegExp("(^|" + H + ")" + e + "(" + H + "|$)")) && + S(e, function (e) { + return t.test( + ("string" == typeof e.className && e.className) || + (void 0 !== e.getAttribute && + e.getAttribute("class")) || + "", + ); + })) + ); + }, + ATTR: function (n, i, r) { + return function (e) { + var t = se.attr(e, n); + return null == t + ? "!=" === i + : !i || + ((t += ""), + "=" === i + ? t === r + : "!=" === i + ? t !== r + : "^=" === i + ? r && 0 === t.indexOf(r) + : "*=" === i + ? r && -1 < t.indexOf(r) + : "$=" === i + ? r && t.slice(-r.length) === r + : "~=" === i + ? -1 < + (" " + t.replace(W, " ") + " ").indexOf(r) + : "|=" === i && + (t === r || + t.slice(0, r.length + 1) === r + "-")); + }; + }, + CHILD: function (p, e, t, m, g) { + var v = "nth" !== p.slice(0, 3), + y = "last" !== p.slice(-4), + b = "of-type" === e; + return 1 === m && 0 === g + ? function (e) { + return !!e.parentNode; + } + : function (e, t, n) { + var i, + r, + a, + o, + s, + l, + u = v != y ? "nextSibling" : "previousSibling", + c = e.parentNode, + d = b && e.nodeName.toLowerCase(), + h = !n && !b, + f = !1; + if (c) { + if (v) { + for (; u;) { + for (o = e; (o = o[u]);) + if ( + b + ? o.nodeName.toLowerCase() === d + : 1 === o.nodeType + ) + return !1; + l = u = "only" === p && !l && "nextSibling"; + } + return !0; + } + if (((l = [y ? c.firstChild : c.lastChild]), y && h)) { + for ( + f = + (s = + (i = + (r = + (a = (o = c)[C] || (o[C] = {}))[o.uniqueID] || + (a[o.uniqueID] = {}))[p] || [])[0] === T && + i[1]) && i[2], + o = s && c.childNodes[s]; + (o = (++s && o && o[u]) || (f = s = 0) || l.pop()); + + ) + if (1 === o.nodeType && ++f && o === e) { + r[p] = [T, s, f]; + break; + } + } else if ( + (h && + (f = s = + (i = + (r = + (a = (o = e)[C] || (o[C] = {}))[o.uniqueID] || + (a[o.uniqueID] = {}))[p] || [])[0] === T && + i[1]), + !1 === f) + ) + for ( + ; + (o = (++s && o && o[u]) || (f = s = 0) || l.pop()) && + ((b + ? o.nodeName.toLowerCase() !== d + : 1 !== o.nodeType) || + !++f || + (h && + ((r = + (a = o[C] || (o[C] = {}))[o.uniqueID] || + (a[o.uniqueID] = {}))[p] = [T, f]), + o !== e)); + + ); + return (f -= g) === m || (f % m == 0 && 0 <= f / m); + } + }; + }, + PSEUDO: function (e, a) { + var t, + o = + _.pseudos[e] || + _.setFilters[e.toLowerCase()] || + se.error("unsupported pseudo: " + e); + return o[C] + ? o(a) + : 1 < o.length + ? ((t = [e, e, "", a]), + _.setFilters.hasOwnProperty(e.toLowerCase()) + ? ue(function (e, t) { + for (var n, i = o(e, a), r = i.length; r--;) + e[(n = F(e, i[r]))] = !(t[n] = i[r]); + }) + : function (e) { + return o(e, 0, t); + }) + : o; + }, + }, + pseudos: { + not: ue(function (e) { + var i = [], + r = [], + s = h(e.replace(q, "$1")); + return s[C] + ? ue(function (e, t, n, i) { + for (var r, a = s(e, null, i, []), o = e.length; o--;) + (r = a[o]) && (e[o] = !(t[o] = r)); + }) + : function (e, t, n) { + return ( + (i[0] = e), s(i, null, n, r), (i[0] = null), !r.pop() + ); + }; + }), + has: ue(function (t) { + return function (e) { + return 0 < se(t, e).length; + }; + }), + contains: ue(function (t) { + return ( + (t = t.replace(ie, d)), + function (e) { + return -1 < (e.textContent || a(e)).indexOf(t); + } + ); + }), + lang: ue(function (n) { + return ( + Q.test(n || "") || se.error("unsupported lang: " + n), + (n = n.replace(ie, d).toLowerCase()), + function (e) { + var t; + do { + if ( + (t = k + ? e.lang + : e.getAttribute("xml:lang") || e.getAttribute("lang")) + ) + return ( + (t = t.toLowerCase()) === n || 0 === t.indexOf(n + "-") + ); + } while ((e = e.parentNode) && 1 === e.nodeType); + return !1; + } + ); + }), + target: function (e) { + var t = n.location && n.location.hash; + return t && t.slice(1) === e.id; + }, + root: function (e) { + return e === s; + }, + focus: function (e) { + return ( + e === D.activeElement && + (!D.hasFocus || D.hasFocus()) && + !!(e.type || e.href || ~e.tabIndex) + ); + }, + enabled: me(!1), + disabled: me(!0), + checked: function (e) { + var t = e.nodeName.toLowerCase(); + return ( + ("input" === t && !!e.checked) || + ("option" === t && !!e.selected) + ); + }, + selected: function (e) { + return ( + e.parentNode && e.parentNode.selectedIndex, !0 === e.selected + ); + }, + empty: function (e) { + for (e = e.firstChild; e; e = e.nextSibling) + if (e.nodeType < 6) return !1; + return !0; + }, + parent: function (e) { + return !_.pseudos.empty(e); + }, + header: function (e) { + return K.test(e.nodeName); + }, + input: function (e) { + return X.test(e.nodeName); + }, + button: function (e) { + var t = e.nodeName.toLowerCase(); + return ("input" === t && "button" === e.type) || "button" === t; + }, + text: function (e) { + var t; + return ( + "input" === e.nodeName.toLowerCase() && + "text" === e.type && + (null == (t = e.getAttribute("type")) || + "text" === t.toLowerCase()) + ); + }, + first: ge(function () { + return [0]; + }), + last: ge(function (e, t) { + return [t - 1]; + }), + eq: ge(function (e, t, n) { + return [n < 0 ? n + t : n]; + }), + even: ge(function (e, t) { + for (var n = 0; n < t; n += 2) e.push(n); + return e; + }), + odd: ge(function (e, t) { + for (var n = 1; n < t; n += 2) e.push(n); + return e; + }), + lt: ge(function (e, t, n) { + for (var i = n < 0 ? n + t : t < n ? t : n; 0 <= --i;) e.push(i); + return e; + }), + gt: ge(function (e, t, n) { + for (var i = n < 0 ? n + t : n; ++i < t;) e.push(i); + return e; + }), + }, + }).pseudos.nth = _.pseudos.eq), + { radio: !0, checkbox: !0, file: !0, password: !0, image: !0 })) + _.pseudos[e] = fe(e); + for (e in { submit: !0, reset: !0 }) _.pseudos[e] = pe(e); + function ye() { } + function be(e) { + for (var t = 0, n = e.length, i = ""; t < n; t++) i += e[t].value; + return i; + } + function _e(s, e, t) { + var l = e.dir, + u = e.next, + c = u || l, + d = t && "parentNode" === c, + h = i++; + return e.first + ? function (e, t, n) { + for (; (e = e[l]);) if (1 === e.nodeType || d) return s(e, t, n); + return !1; + } + : function (e, t, n) { + var i, + r, + a, + o = [T, h]; + if (n) { + for (; (e = e[l]);) + if ((1 === e.nodeType || d) && s(e, t, n)) return !0; + } else + for (; (e = e[l]);) + if (1 === e.nodeType || d) + if ( + ((r = + (a = e[C] || (e[C] = {}))[e.uniqueID] || + (a[e.uniqueID] = {})), + u && u === e.nodeName.toLowerCase()) + ) + e = e[l] || e; + else { + if ((i = r[c]) && i[0] === T && i[1] === h) + return (o[2] = i[2]); + if (((r[c] = o)[2] = s(e, t, n))) return !0; + } + return !1; + }; + } + function we(r) { + return 1 < r.length + ? function (e, t, n) { + for (var i = r.length; i--;) if (!r[i](e, t, n)) return !1; + return !0; + } + : r[0]; + } + function xe(e, t, n, i, r) { + for (var a, o = [], s = 0, l = e.length, u = null != t; s < l; s++) + (a = e[s]) && ((n && !n(a, i, r)) || (o.push(a), u && t.push(s))); + return o; + } + function De(f, p, m, g, v, e) { + return ( + g && !g[C] && (g = De(g)), + v && !v[C] && (v = De(v, e)), + ue(function (e, t, n, i) { + var r, + a, + o, + s = [], + l = [], + u = t.length, + c = + e || + (function (e, t, n) { + for (var i = 0, r = t.length; i < r; i++) se(e, t[i], n); + return n; + })(p || "*", n.nodeType ? [n] : n, []), + d = !f || (!e && p) ? c : xe(c, s, f, n, i), + h = m ? (v || (e ? f : u || g) ? [] : t) : d; + if ((m && m(d, h, n, i), g)) + for (r = xe(h, l), g(r, [], n, i), a = r.length; a--;) + (o = r[a]) && (h[l[a]] = !(d[l[a]] = o)); + if (e) { + if (v || f) { + if (v) { + for (r = [], a = h.length; a--;) + (o = h[a]) && r.push((d[a] = o)); + v(null, (h = []), r, i); + } + for (a = h.length; a--;) + (o = h[a]) && + -1 < (r = v ? F(e, o) : s[a]) && + (e[r] = !(t[r] = o)); + } + } else + (h = xe(h === t ? h.splice(u, h.length) : h)), + v ? v(null, t, h, i) : P.apply(t, h); + }) + ); + } + function ke(e) { + for ( + var r, + t, + n, + i = e.length, + a = _.relative[e[0].type], + o = a || _.relative[" "], + s = a ? 1 : 0, + l = _e( + function (e) { + return e === r; + }, + o, + !0, + ), + u = _e( + function (e) { + return -1 < F(r, e); + }, + o, + !0, + ), + c = [ + function (e, t, n) { + var i = + (!a && (n || t !== w)) || + ((r = t).nodeType ? l(e, t, n) : u(e, t, n)); + return (r = null), i; + }, + ]; + s < i; + s++ + ) + if ((t = _.relative[e[s].type])) c = [_e(we(c), t)]; + else { + if ((t = _.filter[e[s].type].apply(null, e[s].matches))[C]) { + for (n = ++s; n < i && !_.relative[e[n].type]; n++); + return De( + 1 < s && we(c), + 1 < s && + be( + e + .slice(0, s - 1) + .concat({ value: " " === e[s - 2].type ? "*" : "" }), + ).replace(q, "$1"), + t, + s < n && ke(e.slice(s, n)), + n < i && ke((e = e.slice(n))), + n < i && be(e), + ); + } + c.push(t); + } + return we(c); + } + return ( + (ye.prototype = _.filters = _.pseudos), + (_.setFilters = new ye()), + (p = se.tokenize = + function (e, t) { + var n, + i, + r, + a, + o, + s, + l, + u = E[e + " "]; + if (u) return t ? 0 : u.slice(0); + for (o = e, s = [], l = _.preFilter; o;) { + for (a in ((n && !(i = B.exec(o))) || + (i && (o = o.slice(i[0].length) || o), s.push((r = []))), + (n = !1), + (i = $.exec(o)) && + ((n = i.shift()), + r.push({ value: n, type: i[0].replace(q, " ") }), + (o = o.slice(n.length))), + _.filter)) + !(i = J[a].exec(o)) || + (l[a] && !(i = l[a](i))) || + ((n = i.shift()), + r.push({ value: n, type: a, matches: i }), + (o = o.slice(n.length))); + if (!n) break; + } + return t ? o.length : o ? se.error(e) : E(e, s).slice(0); + }), + (h = se.compile = + function (e, t) { + var n, + i = [], + r = [], + a = M[e + " "]; + if (!a) { + for (n = (t = t || p(e)).length; n--;) + (a = ke(t[n]))[C] ? i.push(a) : r.push(a); + (a = M( + e, + (function (g, v) { + function e(e, t, n, i, r) { + var a, + o, + s, + l = 0, + u = "0", + c = e && [], + d = [], + h = w, + f = e || (b && _.find.TAG("*", r)), + p = (T += null == h ? 1 : Math.random() || 0.1), + m = f.length; + for ( + r && (w = t == D || t || r); + u !== m && null != (a = f[u]); + u++ + ) { + if (b && a) { + for ( + o = 0, t || a.ownerDocument == D || (x(a), (n = !k)); + (s = g[o++]); + + ) + if (s(a, t || D, n)) { + i.push(a); + break; + } + r && (T = p); + } + y && ((a = !s && a) && l--, e && c.push(a)); + } + if (((l += u), y && u !== l)) { + for (o = 0; (s = v[o++]);) s(c, d, t, n); + if (e) { + if (0 < l) + for (; u--;) c[u] || d[u] || (d[u] = j.call(i)); + d = xe(d); + } + P.apply(i, d), + r && + !e && + 0 < d.length && + 1 < l + v.length && + se.uniqueSort(i); + } + return r && ((T = p), (w = h)), c; + } + var y = 0 < v.length, + b = 0 < g.length; + return y ? ue(e) : e; + })(r, i), + )).selector = e; + } + return a; + }), + (m = se.select = + function (e, t, n, i) { + var r, + a, + o, + s, + l, + u = "function" == typeof e && e, + c = !i && p((e = u.selector || e)); + if (((n = n || []), 1 === c.length)) { + if ( + 2 < (a = c[0] = c[0].slice(0)).length && + "ID" === (o = a[0]).type && + 9 === t.nodeType && + k && + _.relative[a[1].type] + ) { + if (!(t = (_.find.ID(o.matches[0].replace(ie, d), t) || [])[0])) + return n; + u && (t = t.parentNode), (e = e.slice(a.shift().value.length)); + } + for ( + r = J.needsContext.test(e) ? 0 : a.length; + r-- && ((o = a[r]), !_.relative[(s = o.type)]); + + ) + if ( + (l = _.find[s]) && + (i = l( + o.matches[0].replace(ie, d), + (ne.test(a[0].type) && ve(t.parentNode)) || t, + )) + ) { + if ((a.splice(r, 1), !(e = i.length && be(a)))) + return P.apply(n, i), n; + break; + } + } + return ( + (u || h(e, c))( + i, + t, + !k, + n, + !t || (ne.test(e) && ve(t.parentNode)) || t, + ), + n + ); + }), + (f.sortStable = C.split("").sort(O).join("") === C), + (f.detectDuplicates = !!u), + x(), + (f.sortDetached = ce(function (e) { + return 1 & e.compareDocumentPosition(D.createElement("fieldset")); + })), + ce(function (e) { + return ( + (e.innerHTML = ""), + "#" === e.firstChild.getAttribute("href") + ); + }) || + de("type|href|height|width", function (e, t, n) { + if (!n) + return e.getAttribute(t, "type" === t.toLowerCase() ? 1 : 2); + }), + (f.attributes && + ce(function (e) { + return ( + (e.innerHTML = ""), + e.firstChild.setAttribute("value", ""), + "" === e.firstChild.getAttribute("value") + ); + })) || + de("value", function (e, t, n) { + if (!n && "input" === e.nodeName.toLowerCase()) + return e.defaultValue; + }), + ce(function (e) { + return null == e.getAttribute("disabled"); + }) || + de(R, function (e, t, n) { + var i; + if (!n) + return !0 === e[t] + ? t.toLowerCase() + : (i = e.getAttributeNode(t)) && i.specified + ? i.value + : null; + }), + se + ); + })(D); + (C.find = f), + (C.expr = f.selectors), + (C.expr[":"] = C.expr.pseudos), + (C.uniqueSort = C.unique = f.uniqueSort), + (C.text = f.getText), + (C.isXMLDoc = f.isXML), + (C.contains = f.contains), + (C.escapeSelector = f.escape); + function p(e, t, n) { + for (var i = [], r = void 0 !== n; (e = e[t]) && 9 !== e.nodeType;) + if (1 === e.nodeType) { + if (r && C(e).is(n)) break; + i.push(e); + } + return i; + } + function x(e, t) { + for (var n = []; e; e = e.nextSibling) + 1 === e.nodeType && e !== t && n.push(e); + return n; + } + var T = C.expr.match.needsContext; + function S(e, t) { + return e.nodeName && e.nodeName.toLowerCase() === t.toLowerCase(); + } + var E = /^<([a-z][^\/\0>: \t\r\n\f]*)[ \t\r\n\f]*\/?>(?:<\/\1>|)$/i; + function M(e, n, i) { + return b(n) + ? C.grep(e, function (e, t) { + return !!n.call(e, t, e) !== i; + }) + : n.nodeType + ? C.grep(e, function (e) { + return (e === n) !== i; + }) + : "string" != typeof n + ? C.grep(e, function (e) { + return -1 < r.call(n, e) !== i; + }) + : C.filter(n, e, i); + } + (C.filter = function (e, t, n) { + var i = t[0]; + return ( + n && (e = ":not(" + e + ")"), + 1 === t.length && 1 === i.nodeType + ? C.find.matchesSelector(i, e) + ? [i] + : [] + : C.find.matches( + e, + C.grep(t, function (e) { + return 1 === e.nodeType; + }), + ) + ); + }), + C.fn.extend({ + find: function (e) { + var t, + n, + i = this.length, + r = this; + if ("string" != typeof e) + return this.pushStack( + C(e).filter(function () { + for (t = 0; t < i; t++) if (C.contains(r[t], this)) return !0; + }), + ); + for (n = this.pushStack([]), t = 0; t < i; t++) C.find(e, r[t], n); + return 1 < i ? C.uniqueSort(n) : n; + }, + filter: function (e) { + return this.pushStack(M(this, e || [], !1)); + }, + not: function (e) { + return this.pushStack(M(this, e || [], !0)); + }, + is: function (e) { + return !!M( + this, + "string" == typeof e && T.test(e) ? C(e) : e || [], + !1, + ).length; + }, + }); + var N, + O = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/; + ((C.fn.init = function (e, t, n) { + var i, r; + if (!e) return this; + if (((n = n || N), "string" != typeof e)) + return e.nodeType + ? ((this[0] = e), (this.length = 1), this) + : b(e) + ? void 0 !== n.ready + ? n.ready(e) + : e(C) + : C.makeArray(e, this); + if ( + !(i = + "<" === e[0] && ">" === e[e.length - 1] && 3 <= e.length + ? [null, e, null] + : O.exec(e)) || + (!i[1] && t) + ) + return !t || t.jquery ? (t || n).find(e) : this.constructor(t).find(e); + if (i[1]) { + if ( + ((t = t instanceof C ? t[0] : t), + C.merge( + this, + C.parseHTML(i[1], t && t.nodeType ? t.ownerDocument || t : k, !0), + ), + E.test(i[1]) && C.isPlainObject(t)) + ) + for (i in t) b(this[i]) ? this[i](t[i]) : this.attr(i, t[i]); + return this; + } + return ( + (r = k.getElementById(i[2])) && ((this[0] = r), (this.length = 1)), this + ); + }).prototype = C.fn), + (N = C(k)); + var A = /^(?:parents|prev(?:Until|All))/, + j = { children: !0, contents: !0, next: !0, prev: !0 }; + function I(e, t) { + for (; (e = e[t]) && 1 !== e.nodeType;); + return e; + } + C.fn.extend({ + has: function (e) { + var t = C(e, this), + n = t.length; + return this.filter(function () { + for (var e = 0; e < n; e++) if (C.contains(this, t[e])) return !0; + }); + }, + closest: function (e, t) { + var n, + i = 0, + r = this.length, + a = [], + o = "string" != typeof e && C(e); + if (!T.test(e)) + for (; i < r; i++) + for (n = this[i]; n && n !== t; n = n.parentNode) + if ( + n.nodeType < 11 && + (o + ? -1 < o.index(n) + : 1 === n.nodeType && C.find.matchesSelector(n, e)) + ) { + a.push(n); + break; + } + return this.pushStack(1 < a.length ? C.uniqueSort(a) : a); + }, + index: function (e) { + return e + ? "string" == typeof e + ? r.call(C(e), this[0]) + : r.call(this, e.jquery ? e[0] : e) + : this[0] && this[0].parentNode + ? this.first().prevAll().length + : -1; + }, + add: function (e, t) { + return this.pushStack(C.uniqueSort(C.merge(this.get(), C(e, t)))); + }, + addBack: function (e) { + return this.add( + null == e ? this.prevObject : this.prevObject.filter(e), + ); + }, + }), + C.each( + { + parent: function (e) { + var t = e.parentNode; + return t && 11 !== t.nodeType ? t : null; + }, + parents: function (e) { + return p(e, "parentNode"); + }, + parentsUntil: function (e, t, n) { + return p(e, "parentNode", n); + }, + next: function (e) { + return I(e, "nextSibling"); + }, + prev: function (e) { + return I(e, "previousSibling"); + }, + nextAll: function (e) { + return p(e, "nextSibling"); + }, + prevAll: function (e) { + return p(e, "previousSibling"); + }, + nextUntil: function (e, t, n) { + return p(e, "nextSibling", n); + }, + prevUntil: function (e, t, n) { + return p(e, "previousSibling", n); + }, + siblings: function (e) { + return x((e.parentNode || {}).firstChild, e); + }, + children: function (e) { + return x(e.firstChild); + }, + contents: function (e) { + return null != e.contentDocument && i(e.contentDocument) + ? e.contentDocument + : (S(e, "template") && (e = e.content || e), + C.merge([], e.childNodes)); + }, + }, + function (i, r) { + C.fn[i] = function (e, t) { + var n = C.map(this, r, e); + return ( + "Until" !== i.slice(-5) && (t = e), + t && "string" == typeof t && (n = C.filter(t, n)), + 1 < this.length && + (j[i] || C.uniqueSort(n), A.test(i) && n.reverse()), + this.pushStack(n) + ); + }; + }, + ); + var P = /[^ \t\r\n\f]+/g; + function L(e) { + return e; + } + function F(e) { + throw e; + } + function R(e, t, n, i) { + var r; + try { + e && b((r = e.promise)) + ? r.call(e).done(t).fail(n) + : e && b((r = e.then)) + ? r.call(e, t, n) + : t.apply(void 0, [e].slice(i)); + } catch (e) { + n.apply(void 0, [e]); + } + } + (C.Callbacks = function (i) { + i = + "string" == typeof i + ? (function (e) { + var n = {}; + return ( + C.each(e.match(P) || [], function (e, t) { + n[t] = !0; + }), + n + ); + })(i) + : C.extend({}, i); + function n() { + for (a = a || i.once, t = r = !0; s.length; l = -1) + for (e = s.shift(); ++l < o.length;) + !1 === o[l].apply(e[0], e[1]) && + i.stopOnFalse && + ((l = o.length), (e = !1)); + i.memory || (e = !1), (r = !1), a && (o = e ? [] : ""); + } + var r, + e, + t, + a, + o = [], + s = [], + l = -1, + u = { + add: function () { + return ( + o && + (e && !r && ((l = o.length - 1), s.push(e)), + (function n(e) { + C.each(e, function (e, t) { + b(t) + ? (i.unique && u.has(t)) || o.push(t) + : t && t.length && "string" !== w(t) && n(t); + }); + })(arguments), + e && !r && n()), + this + ); + }, + remove: function () { + return ( + C.each(arguments, function (e, t) { + for (var n; -1 < (n = C.inArray(t, o, n));) + o.splice(n, 1), n <= l && l--; + }), + this + ); + }, + has: function (e) { + return e ? -1 < C.inArray(e, o) : 0 < o.length; + }, + empty: function () { + return (o = o && []), this; + }, + disable: function () { + return (a = s = []), (o = e = ""), this; + }, + disabled: function () { + return !o; + }, + lock: function () { + return (a = s = []), e || r || (o = e = ""), this; + }, + locked: function () { + return !!a; + }, + fireWith: function (e, t) { + return ( + a || + ((t = [e, (t = t || []).slice ? t.slice() : t]), + s.push(t), + r || n()), + this + ); + }, + fire: function () { + return u.fireWith(this, arguments), this; + }, + fired: function () { + return !!t; + }, + }; + return u; + }), + C.extend({ + Deferred: function (e) { + var a = [ + [ + "notify", + "progress", + C.Callbacks("memory"), + C.Callbacks("memory"), + 2, + ], + [ + "resolve", + "done", + C.Callbacks("once memory"), + C.Callbacks("once memory"), + 0, + "resolved", + ], + [ + "reject", + "fail", + C.Callbacks("once memory"), + C.Callbacks("once memory"), + 1, + "rejected", + ], + ], + r = "pending", + o = { + state: function () { + return r; + }, + always: function () { + return s.done(arguments).fail(arguments), this; + }, + catch: function (e) { + return o.then(null, e); + }, + pipe: function () { + var r = arguments; + return C.Deferred(function (i) { + C.each(a, function (e, t) { + var n = b(r[t[4]]) && r[t[4]]; + s[t[1]](function () { + var e = n && n.apply(this, arguments); + e && b(e.promise) + ? e + .promise() + .progress(i.notify) + .done(i.resolve) + .fail(i.reject) + : i[t[0] + "With"](this, n ? [e] : arguments); + }); + }), + (r = null); + }).promise(); + }, + then: function (t, n, i) { + var l = 0; + function u(r, a, o, s) { + return function () { + function e() { + var e, t; + if (!(r < l)) { + if ((e = o.apply(n, i)) === a.promise()) + throw new TypeError("Thenable self-resolution"); + (t = + e && + ("object" == typeof e || "function" == typeof e) && + e.then), + b(t) + ? s + ? t.call(e, u(l, a, L, s), u(l, a, F, s)) + : (l++, + t.call( + e, + u(l, a, L, s), + u(l, a, F, s), + u(l, a, L, a.notifyWith), + )) + : (o !== L && ((n = void 0), (i = [e])), + (s || a.resolveWith)(n, i)); + } + } + var n = this, + i = arguments, + t = s + ? e + : function () { + try { + e(); + } catch (e) { + C.Deferred.exceptionHook && + C.Deferred.exceptionHook(e, t.stackTrace), + l <= r + 1 && + (o !== F && ((n = void 0), (i = [e])), + a.rejectWith(n, i)); + } + }; + r + ? t() + : (C.Deferred.getStackHook && + (t.stackTrace = C.Deferred.getStackHook()), + D.setTimeout(t)); + }; + } + return C.Deferred(function (e) { + a[0][3].add(u(0, e, b(i) ? i : L, e.notifyWith)), + a[1][3].add(u(0, e, b(t) ? t : L)), + a[2][3].add(u(0, e, b(n) ? n : F)); + }).promise(); + }, + promise: function (e) { + return null != e ? C.extend(e, o) : o; + }, + }, + s = {}; + return ( + C.each(a, function (e, t) { + var n = t[2], + i = t[5]; + (o[t[1]] = n.add), + i && + n.add( + function () { + r = i; + }, + a[3 - e][2].disable, + a[3 - e][3].disable, + a[0][2].lock, + a[0][3].lock, + ), + n.add(t[3].fire), + (s[t[0]] = function () { + return ( + s[t[0] + "With"](this === s ? void 0 : this, arguments), + this + ); + }), + (s[t[0] + "With"] = n.fireWith); + }), + o.promise(s), + e && e.call(s, s), + s + ); + }, + when: function (e) { + function t(t) { + return function (e) { + (r[t] = this), + (a[t] = 1 < arguments.length ? s.call(arguments) : e), + --n || o.resolveWith(r, a); + }; + } + var n = arguments.length, + i = n, + r = Array(i), + a = s.call(arguments), + o = C.Deferred(); + if ( + n <= 1 && + (R(e, o.done(t(i)).resolve, o.reject, !n), + "pending" === o.state() || b(a[i] && a[i].then)) + ) + return o.then(); + for (; i--;) R(a[i], t(i), o.reject); + return o.promise(); + }, + }); + var H = /^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/; + (C.Deferred.exceptionHook = function (e, t) { + D.console && + D.console.warn && + e && + H.test(e.name) && + D.console.warn("jQuery.Deferred exception: " + e.message, e.stack, t); + }), + (C.readyException = function (e) { + D.setTimeout(function () { + throw e; + }); + }); + var Y = C.Deferred(); + function V() { + k.removeEventListener("DOMContentLoaded", V), + D.removeEventListener("load", V), + C.ready(); + } + (C.fn.ready = function (e) { + return ( + Y.then(e).catch(function (e) { + C.readyException(e); + }), + this + ); + }), + C.extend({ + isReady: !1, + readyWait: 1, + ready: function (e) { + (!0 === e ? --C.readyWait : C.isReady) || + ((C.isReady = !0) !== e && 0 < --C.readyWait) || + Y.resolveWith(k, [C]); + }, + }), + (C.ready.then = Y.then), + "complete" === k.readyState || + ("loading" !== k.readyState && !k.documentElement.doScroll) + ? D.setTimeout(C.ready) + : (k.addEventListener("DOMContentLoaded", V), + D.addEventListener("load", V)); + var U = function (e, t, n, i, r, a, o) { + var s = 0, + l = e.length, + u = null == n; + if ("object" === w(n)) + for (s in ((r = !0), n)) U(e, t, s, n[s], !0, a, o); + else if ( + void 0 !== i && + ((r = !0), + b(i) || (o = !0), + u && + (t = o + ? (t.call(e, i), null) + : ((u = t), + function (e, t, n) { + return u.call(C(e), n); + })), + t) + ) + for (; s < l; s++) t(e[s], n, o ? i : i.call(e[s], s, t(e[s], n))); + return r ? e : u ? t.call(e) : l ? t(e[0], n) : a; + }, + W = /^-ms-/, + q = /-([a-z])/g; + function B(e, t) { + return t.toUpperCase(); + } + function $(e) { + return e.replace(W, "ms-").replace(q, B); + } + function z(e) { + return 1 === e.nodeType || 9 === e.nodeType || !+e.nodeType; + } + function G() { + this.expando = C.expando + G.uid++; + } + (G.uid = 1), + (G.prototype = { + cache: function (e) { + var t = e[this.expando]; + return ( + t || + ((t = {}), + z(e) && + (e.nodeType + ? (e[this.expando] = t) + : Object.defineProperty(e, this.expando, { + value: t, + configurable: !0, + }))), + t + ); + }, + set: function (e, t, n) { + var i, + r = this.cache(e); + if ("string" == typeof t) r[$(t)] = n; + else for (i in t) r[$(i)] = t[i]; + return r; + }, + get: function (e, t) { + return void 0 === t + ? this.cache(e) + : e[this.expando] && e[this.expando][$(t)]; + }, + access: function (e, t, n) { + return void 0 === t || (t && "string" == typeof t && void 0 === n) + ? this.get(e, t) + : (this.set(e, t, n), void 0 !== n ? n : t); + }, + remove: function (e, t) { + var n, + i = e[this.expando]; + if (void 0 !== i) { + if (void 0 !== t) { + n = (t = Array.isArray(t) + ? t.map($) + : (t = $(t)) in i + ? [t] + : t.match(P) || []).length; + for (; n--;) delete i[t[n]]; + } + (void 0 !== t && !C.isEmptyObject(i)) || + (e.nodeType + ? (e[this.expando] = void 0) + : delete e[this.expando]); + } + }, + hasData: function (e) { + var t = e[this.expando]; + return void 0 !== t && !C.isEmptyObject(t); + }, + }); + var Q = new G(), + J = new G(), + Z = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, + X = /[A-Z]/g; + function K(e, t, n) { + var i; + if (void 0 === n && 1 === e.nodeType) + if ( + ((i = "data-" + t.replace(X, "-$&").toLowerCase()), + "string" == typeof (n = e.getAttribute(i))) + ) { + try { + n = (function (e) { + return ( + "true" === e || + ("false" !== e && + ("null" === e + ? null + : e === +e + "" + ? +e + : Z.test(e) + ? JSON.parse(e) + : e)) + ); + })(n); + } catch (e) { } + J.set(e, t, n); + } else n = void 0; + return n; + } + C.extend({ + hasData: function (e) { + return J.hasData(e) || Q.hasData(e); + }, + data: function (e, t, n) { + return J.access(e, t, n); + }, + removeData: function (e, t) { + J.remove(e, t); + }, + _data: function (e, t, n) { + return Q.access(e, t, n); + }, + _removeData: function (e, t) { + Q.remove(e, t); + }, + }), + C.fn.extend({ + data: function (n, e) { + var t, + i, + r, + a = this[0], + o = a && a.attributes; + if (void 0 !== n) + return "object" == typeof n + ? this.each(function () { + J.set(this, n); + }) + : U( + this, + function (e) { + var t; + if (a && void 0 === e) + return void 0 !== (t = J.get(a, n)) + ? t + : void 0 !== (t = K(a, n)) + ? t + : void 0; + this.each(function () { + J.set(this, n, e); + }); + }, + null, + e, + 1 < arguments.length, + null, + !0, + ); + if ( + this.length && + ((r = J.get(a)), 1 === a.nodeType && !Q.get(a, "hasDataAttrs")) + ) { + for (t = o.length; t--;) + o[t] && + 0 === (i = o[t].name).indexOf("data-") && + ((i = $(i.slice(5))), K(a, i, r[i])); + Q.set(a, "hasDataAttrs", !0); + } + return r; + }, + removeData: function (e) { + return this.each(function () { + J.remove(this, e); + }); + }, + }), + C.extend({ + queue: function (e, t, n) { + var i; + if (e) + return ( + (t = (t || "fx") + "queue"), + (i = Q.get(e, t)), + n && + (!i || Array.isArray(n) + ? (i = Q.access(e, t, C.makeArray(n))) + : i.push(n)), + i || [] + ); + }, + dequeue: function (e, t) { + t = t || "fx"; + var n = C.queue(e, t), + i = n.length, + r = n.shift(), + a = C._queueHooks(e, t); + "inprogress" === r && ((r = n.shift()), i--), + r && + ("fx" === t && n.unshift("inprogress"), + delete a.stop, + r.call( + e, + function () { + C.dequeue(e, t); + }, + a, + )), + !i && a && a.empty.fire(); + }, + _queueHooks: function (e, t) { + var n = t + "queueHooks"; + return ( + Q.get(e, n) || + Q.access(e, n, { + empty: C.Callbacks("once memory").add(function () { + Q.remove(e, [t + "queue", n]); + }), + }) + ); + }, + }), + C.fn.extend({ + queue: function (t, n) { + var e = 2; + return ( + "string" != typeof t && ((n = t), (t = "fx"), e--), + arguments.length < e + ? C.queue(this[0], t) + : void 0 === n + ? this + : this.each(function () { + var e = C.queue(this, t, n); + C._queueHooks(this, t), + "fx" === t && "inprogress" !== e[0] && C.dequeue(this, t); + }) + ); + }, + dequeue: function (e) { + return this.each(function () { + C.dequeue(this, e); + }); + }, + clearQueue: function (e) { + return this.queue(e || "fx", []); + }, + promise: function (e, t) { + function n() { + --r || a.resolveWith(o, [o]); + } + var i, + r = 1, + a = C.Deferred(), + o = this, + s = this.length; + for ( + "string" != typeof e && ((t = e), (e = void 0)), e = e || "fx"; + s--; + + ) + (i = Q.get(o[s], e + "queueHooks")) && + i.empty && + (r++, i.empty.add(n)); + return n(), a.promise(t); + }, + }); + var ee = /[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/.source, + te = new RegExp("^(?:([+-])=|)(" + ee + ")([a-z%]*)$", "i"), + ne = ["Top", "Right", "Bottom", "Left"], + ie = k.documentElement, + re = function (e) { + return C.contains(e.ownerDocument, e); + }, + ae = { composed: !0 }; + ie.getRootNode && + (re = function (e) { + return ( + C.contains(e.ownerDocument, e) || + e.getRootNode(ae) === e.ownerDocument + ); + }); + var oe = function (e, t) { + return ( + "none" === (e = t || e).style.display || + ("" === e.style.display && re(e) && "none" === C.css(e, "display")) + ); + }; + function se(e, t, n, i) { + var r, + a, + o = 20, + s = i + ? function () { + return i.cur(); + } + : function () { + return C.css(e, t, ""); + }, + l = s(), + u = (n && n[3]) || (C.cssNumber[t] ? "" : "px"), + c = + e.nodeType && + (C.cssNumber[t] || ("px" !== u && +l)) && + te.exec(C.css(e, t)); + if (c && c[3] !== u) { + for (l /= 2, u = u || c[3], c = +l || 1; o--;) + C.style(e, t, c + u), + (1 - a) * (1 - (a = s() / l || 0.5)) <= 0 && (o = 0), + (c /= a); + (c *= 2), C.style(e, t, c + u), (n = n || []); + } + return ( + n && + ((c = +c || +l || 0), + (r = n[1] ? c + (n[1] + 1) * n[2] : +n[2]), + i && ((i.unit = u), (i.start = c), (i.end = r))), + r + ); + } + var le = {}; + function ue(e, t) { + for (var n, i, r, a, o, s, l, u = [], c = 0, d = e.length; c < d; c++) + (i = e[c]).style && + ((n = i.style.display), + t + ? ("none" === n && + ((u[c] = Q.get(i, "display") || null), + u[c] || (i.style.display = "")), + "" === i.style.display && + oe(i) && + (u[c] = + ((l = o = a = void 0), + (o = (r = i).ownerDocument), + (s = r.nodeName), + (l = le[s]) || + ((a = o.body.appendChild(o.createElement(s))), + (l = C.css(a, "display")), + a.parentNode.removeChild(a), + "none" === l && (l = "block"), + (le[s] = l))))) + : "none" !== n && ((u[c] = "none"), Q.set(i, "display", n))); + for (c = 0; c < d; c++) null != u[c] && (e[c].style.display = u[c]); + return e; + } + C.fn.extend({ + show: function () { + return ue(this, !0); + }, + hide: function () { + return ue(this); + }, + toggle: function (e) { + return "boolean" == typeof e + ? e + ? this.show() + : this.hide() + : this.each(function () { + oe(this) ? C(this).show() : C(this).hide(); + }); + }, + }); + var ce, + de, + he = /^(?:checkbox|radio)$/i, + fe = /<([a-z][^\/\0> \t\r\n\f]*)/i, + pe = /^$|^module$|\/(?:java|ecma)script/i; + (ce = k.createDocumentFragment().appendChild(k.createElement("div"))), + (de = k.createElement("input")).setAttribute("type", "radio"), + de.setAttribute("checked", "checked"), + de.setAttribute("name", "t"), + ce.appendChild(de), + (y.checkClone = ce.cloneNode(!0).cloneNode(!0).lastChild.checked), + (ce.innerHTML = ""), + (y.noCloneChecked = !!ce.cloneNode(!0).lastChild.defaultValue), + (ce.innerHTML = ""), + (y.option = !!ce.lastChild); + var me = { + thead: [1, "", "
"], + col: [2, "", "
"], + tr: [2, "", "
"], + td: [3, "", "
"], + _default: [0, "", ""], + }; + function ge(e, t) { + var n; + return ( + (n = + void 0 !== e.getElementsByTagName + ? e.getElementsByTagName(t || "*") + : void 0 !== e.querySelectorAll + ? e.querySelectorAll(t || "*") + : []), + void 0 === t || (t && S(e, t)) ? C.merge([e], n) : n + ); + } + function ve(e, t) { + for (var n = 0, i = e.length; n < i; n++) + Q.set(e[n], "globalEval", !t || Q.get(t[n], "globalEval")); + } + (me.tbody = me.tfoot = me.colgroup = me.caption = me.thead), + (me.th = me.td), + y.option || + (me.optgroup = me.option = + [1, ""]); + var ye = /<|&#?\w+;/; + function be(e, t, n, i, r) { + for ( + var a, + o, + s, + l, + u, + c, + d = t.createDocumentFragment(), + h = [], + f = 0, + p = e.length; + f < p; + f++ + ) + if ((a = e[f]) || 0 === a) + if ("object" === w(a)) C.merge(h, a.nodeType ? [a] : a); + else if (ye.test(a)) { + for ( + o = o || d.appendChild(t.createElement("div")), + s = (fe.exec(a) || ["", ""])[1].toLowerCase(), + l = me[s] || me._default, + o.innerHTML = l[1] + C.htmlPrefilter(a) + l[2], + c = l[0]; + c--; + + ) + o = o.lastChild; + C.merge(h, o.childNodes), ((o = d.firstChild).textContent = ""); + } else h.push(t.createTextNode(a)); + for (d.textContent = "", f = 0; (a = h[f++]);) + if (i && -1 < C.inArray(a, i)) r && r.push(a); + else if ( + ((u = re(a)), (o = ge(d.appendChild(a), "script")), u && ve(o), n) + ) + for (c = 0; (a = o[c++]);) pe.test(a.type || "") && n.push(a); + return d; + } + var _e = /^key/, + we = /^(?:mouse|pointer|contextmenu|drag|drop)|click/, + xe = /^([^.]*)(?:\.(.+)|)/; + function De() { + return !0; + } + function ke() { + return !1; + } + function Ce(e, t) { + return ( + (e === + (function () { + try { + return k.activeElement; + } catch (e) { } + })()) == + ("focus" === t) + ); + } + function Te(e, t, n, i, r, a) { + var o, s; + if ("object" == typeof t) { + for (s in ("string" != typeof n && ((i = i || n), (n = void 0)), t)) + Te(e, s, n, i, t[s], a); + return e; + } + if ( + (null == i && null == r + ? ((r = n), (i = n = void 0)) + : null == r && + ("string" == typeof n + ? ((r = i), (i = void 0)) + : ((r = i), (i = n), (n = void 0))), + !1 === r) + ) + r = ke; + else if (!r) return e; + return ( + 1 === a && + ((o = r), + ((r = function (e) { + return C().off(e), o.apply(this, arguments); + }).guid = o.guid || (o.guid = C.guid++))), + e.each(function () { + C.event.add(this, t, r, i, n); + }) + ); + } + function Se(e, r, a) { + a + ? (Q.set(e, r, !1), + C.event.add(e, r, { + namespace: !1, + handler: function (e) { + var t, + n, + i = Q.get(this, r); + if (1 & e.isTrigger && this[r]) { + if (i.length) + (C.event.special[r] || {}).delegateType && + e.stopPropagation(); + else if ( + ((i = s.call(arguments)), + Q.set(this, r, i), + (t = a(this, r)), + this[r](), + i !== (n = Q.get(this, r)) || t + ? Q.set(this, r, !1) + : (n = {}), + i !== n) + ) + return ( + e.stopImmediatePropagation(), e.preventDefault(), n.value + ); + } else + i.length && + (Q.set(this, r, { + value: C.event.trigger( + C.extend(i[0], C.Event.prototype), + i.slice(1), + this, + ), + }), + e.stopImmediatePropagation()); + }, + })) + : void 0 === Q.get(e, r) && C.event.add(e, r, De); + } + (C.event = { + global: {}, + add: function (t, e, n, i, r) { + var a, + o, + s, + l, + u, + c, + d, + h, + f, + p, + m, + g = Q.get(t); + if (z(t)) + for ( + n.handler && ((n = (a = n).handler), (r = a.selector)), + r && C.find.matchesSelector(ie, r), + n.guid || (n.guid = C.guid++), + (l = g.events) || (l = g.events = Object.create(null)), + (o = g.handle) || + (o = g.handle = + function (e) { + return void 0 !== C && C.event.triggered !== e.type + ? C.event.dispatch.apply(t, arguments) + : void 0; + }), + u = (e = (e || "").match(P) || [""]).length; + u--; + + ) + (f = m = (s = xe.exec(e[u]) || [])[1]), + (p = (s[2] || "").split(".").sort()), + f && + ((d = C.event.special[f] || {}), + (f = (r ? d.delegateType : d.bindType) || f), + (d = C.event.special[f] || {}), + (c = C.extend( + { + type: f, + origType: m, + data: i, + handler: n, + guid: n.guid, + selector: r, + needsContext: r && C.expr.match.needsContext.test(r), + namespace: p.join("."), + }, + a, + )), + (h = l[f]) || + (((h = l[f] = []).delegateCount = 0), + (d.setup && !1 !== d.setup.call(t, i, p, o)) || + (t.addEventListener && t.addEventListener(f, o))), + d.add && + (d.add.call(t, c), + c.handler.guid || (c.handler.guid = n.guid)), + r ? h.splice(h.delegateCount++, 0, c) : h.push(c), + (C.event.global[f] = !0)); + }, + remove: function (e, t, n, i, r) { + var a, + o, + s, + l, + u, + c, + d, + h, + f, + p, + m, + g = Q.hasData(e) && Q.get(e); + if (g && (l = g.events)) { + for (u = (t = (t || "").match(P) || [""]).length; u--;) + if ( + ((f = m = (s = xe.exec(t[u]) || [])[1]), + (p = (s[2] || "").split(".").sort()), + f) + ) { + for ( + d = C.event.special[f] || {}, + h = l[(f = (i ? d.delegateType : d.bindType) || f)] || [], + s = + s[2] && + new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)"), + o = a = h.length; + a--; + + ) + (c = h[a]), + (!r && m !== c.origType) || + (n && n.guid !== c.guid) || + (s && !s.test(c.namespace)) || + (i && i !== c.selector && ("**" !== i || !c.selector)) || + (h.splice(a, 1), + c.selector && h.delegateCount--, + d.remove && d.remove.call(e, c)); + o && + !h.length && + ((d.teardown && !1 !== d.teardown.call(e, p, g.handle)) || + C.removeEvent(e, f, g.handle), + delete l[f]); + } else for (f in l) C.event.remove(e, f + t[u], n, i, !0); + C.isEmptyObject(l) && Q.remove(e, "handle events"); + } + }, + dispatch: function (e) { + var t, + n, + i, + r, + a, + o, + s = new Array(arguments.length), + l = C.event.fix(e), + u = (Q.get(this, "events") || Object.create(null))[l.type] || [], + c = C.event.special[l.type] || {}; + for (s[0] = l, t = 1; t < arguments.length; t++) s[t] = arguments[t]; + if ( + ((l.delegateTarget = this), + !c.preDispatch || !1 !== c.preDispatch.call(this, l)) + ) { + for ( + o = C.event.handlers.call(this, l, u), t = 0; + (r = o[t++]) && !l.isPropagationStopped(); + + ) + for ( + l.currentTarget = r.elem, n = 0; + (a = r.handlers[n++]) && !l.isImmediatePropagationStopped(); + + ) + (l.rnamespace && + !1 !== a.namespace && + !l.rnamespace.test(a.namespace)) || + ((l.handleObj = a), + (l.data = a.data), + void 0 !== + (i = ( + (C.event.special[a.origType] || {}).handle || a.handler + ).apply(r.elem, s)) && + !1 === (l.result = i) && + (l.preventDefault(), l.stopPropagation())); + return c.postDispatch && c.postDispatch.call(this, l), l.result; + } + }, + handlers: function (e, t) { + var n, + i, + r, + a, + o, + s = [], + l = t.delegateCount, + u = e.target; + if (l && u.nodeType && !("click" === e.type && 1 <= e.button)) + for (; u !== this; u = u.parentNode || this) + if (1 === u.nodeType && ("click" !== e.type || !0 !== u.disabled)) { + for (a = [], o = {}, n = 0; n < l; n++) + void 0 === o[(r = (i = t[n]).selector + " ")] && + (o[r] = i.needsContext + ? -1 < C(r, this).index(u) + : C.find(r, this, null, [u]).length), + o[r] && a.push(i); + a.length && s.push({ elem: u, handlers: a }); + } + return ( + (u = this), + l < t.length && s.push({ elem: u, handlers: t.slice(l) }), + s + ); + }, + addProp: function (t, e) { + Object.defineProperty(C.Event.prototype, t, { + enumerable: !0, + configurable: !0, + get: b(e) + ? function () { + if (this.originalEvent) return e(this.originalEvent); + } + : function () { + if (this.originalEvent) return this.originalEvent[t]; + }, + set: function (e) { + Object.defineProperty(this, t, { + enumerable: !0, + configurable: !0, + writable: !0, + value: e, + }); + }, + }); + }, + fix: function (e) { + return e[C.expando] ? e : new C.Event(e); + }, + special: { + load: { noBubble: !0 }, + click: { + setup: function (e) { + var t = this || e; + return ( + he.test(t.type) && t.click && S(t, "input") && Se(t, "click", De), + !1 + ); + }, + trigger: function (e) { + var t = this || e; + return ( + he.test(t.type) && t.click && S(t, "input") && Se(t, "click"), !0 + ); + }, + _default: function (e) { + var t = e.target; + return ( + (he.test(t.type) && + t.click && + S(t, "input") && + Q.get(t, "click")) || + S(t, "a") + ); + }, + }, + beforeunload: { + postDispatch: function (e) { + void 0 !== e.result && + e.originalEvent && + (e.originalEvent.returnValue = e.result); + }, + }, + }, + }), + (C.removeEvent = function (e, t, n) { + e.removeEventListener && e.removeEventListener(t, n); + }), + (C.Event = function (e, t) { + if (!(this instanceof C.Event)) return new C.Event(e, t); + e && e.type + ? ((this.originalEvent = e), + (this.type = e.type), + (this.isDefaultPrevented = + e.defaultPrevented || + (void 0 === e.defaultPrevented && !1 === e.returnValue) + ? De + : ke), + (this.target = + e.target && 3 === e.target.nodeType + ? e.target.parentNode + : e.target), + (this.currentTarget = e.currentTarget), + (this.relatedTarget = e.relatedTarget)) + : (this.type = e), + t && C.extend(this, t), + (this.timeStamp = (e && e.timeStamp) || Date.now()), + (this[C.expando] = !0); + }), + (C.Event.prototype = { + constructor: C.Event, + isDefaultPrevented: ke, + isPropagationStopped: ke, + isImmediatePropagationStopped: ke, + isSimulated: !1, + preventDefault: function () { + var e = this.originalEvent; + (this.isDefaultPrevented = De), + e && !this.isSimulated && e.preventDefault(); + }, + stopPropagation: function () { + var e = this.originalEvent; + (this.isPropagationStopped = De), + e && !this.isSimulated && e.stopPropagation(); + }, + stopImmediatePropagation: function () { + var e = this.originalEvent; + (this.isImmediatePropagationStopped = De), + e && !this.isSimulated && e.stopImmediatePropagation(), + this.stopPropagation(); + }, + }), + C.each( + { + altKey: !0, + bubbles: !0, + cancelable: !0, + changedTouches: !0, + ctrlKey: !0, + detail: !0, + eventPhase: !0, + metaKey: !0, + pageX: !0, + pageY: !0, + shiftKey: !0, + view: !0, + char: !0, + code: !0, + charCode: !0, + key: !0, + keyCode: !0, + button: !0, + buttons: !0, + clientX: !0, + clientY: !0, + offsetX: !0, + offsetY: !0, + pointerId: !0, + pointerType: !0, + screenX: !0, + screenY: !0, + targetTouches: !0, + toElement: !0, + touches: !0, + which: function (e) { + var t = e.button; + return null == e.which && _e.test(e.type) + ? null != e.charCode + ? e.charCode + : e.keyCode + : !e.which && void 0 !== t && we.test(e.type) + ? 1 & t + ? 1 + : 2 & t + ? 3 + : 4 & t + ? 2 + : 0 + : e.which; + }, + }, + C.event.addProp, + ), + C.each({ focus: "focusin", blur: "focusout" }, function (e, t) { + C.event.special[e] = { + setup: function () { + return Se(this, e, Ce), !1; + }, + trigger: function () { + return Se(this, e), !0; + }, + delegateType: t, + }; + }), + C.each( + { + mouseenter: "mouseover", + mouseleave: "mouseout", + pointerenter: "pointerover", + pointerleave: "pointerout", + }, + function (e, r) { + C.event.special[e] = { + delegateType: r, + bindType: r, + handle: function (e) { + var t, + n = e.relatedTarget, + i = e.handleObj; + return ( + (n && (n === this || C.contains(this, n))) || + ((e.type = i.origType), + (t = i.handler.apply(this, arguments)), + (e.type = r)), + t + ); + }, + }; + }, + ), + C.fn.extend({ + on: function (e, t, n, i) { + return Te(this, e, t, n, i); + }, + one: function (e, t, n, i) { + return Te(this, e, t, n, i, 1); + }, + off: function (e, t, n) { + var i, r; + if (e && e.preventDefault && e.handleObj) + return ( + (i = e.handleObj), + C(e.delegateTarget).off( + i.namespace ? i.origType + "." + i.namespace : i.origType, + i.selector, + i.handler, + ), + this + ); + if ("object" != typeof e) + return ( + (!1 !== t && "function" != typeof t) || ((n = t), (t = void 0)), + !1 === n && (n = ke), + this.each(function () { + C.event.remove(this, e, n, t); + }) + ); + for (r in e) this.off(r, t, e[r]); + return this; + }, + }); + var Ee = /\s*$/g; + function Oe(e, t) { + return ( + (S(e, "table") && + S(11 !== t.nodeType ? t : t.firstChild, "tr") && + C(e).children("tbody")[0]) || + e + ); + } + function Ae(e) { + return (e.type = (null !== e.getAttribute("type")) + "/" + e.type), e; + } + function je(e) { + return ( + "true/" === (e.type || "").slice(0, 5) + ? (e.type = e.type.slice(5)) + : e.removeAttribute("type"), + e + ); + } + function Ie(e, t) { + var n, i, r, a, o, s; + if (1 === t.nodeType) { + if (Q.hasData(e) && (s = Q.get(e).events)) + for (r in (Q.remove(t, "handle events"), s)) + for (n = 0, i = s[r].length; n < i; n++) C.event.add(t, r, s[r][n]); + J.hasData(e) && ((a = J.access(e)), (o = C.extend({}, a)), J.set(t, o)); + } + } + function Pe(n, i, r, a) { + i = g(i); + var e, + t, + o, + s, + l, + u, + c = 0, + d = n.length, + h = d - 1, + f = i[0], + p = b(f); + if (p || (1 < d && "string" == typeof f && !y.checkClone && Me.test(f))) + return n.each(function (e) { + var t = n.eq(e); + p && (i[0] = f.call(this, e, t.html())), Pe(t, i, r, a); + }); + if ( + d && + ((t = (e = be(i, n[0].ownerDocument, !1, n, a)).firstChild), + 1 === e.childNodes.length && (e = t), + t || a) + ) { + for (s = (o = C.map(ge(e, "script"), Ae)).length; c < d; c++) + (l = e), + c !== h && + ((l = C.clone(l, !0, !0)), s && C.merge(o, ge(l, "script"))), + r.call(n[c], l, c); + if (s) + for ( + u = o[o.length - 1].ownerDocument, C.map(o, je), c = 0; + c < s; + c++ + ) + (l = o[c]), + pe.test(l.type || "") && + !Q.access(l, "globalEval") && + C.contains(u, l) && + (l.src && "module" !== (l.type || "").toLowerCase() + ? C._evalUrl && + !l.noModule && + C._evalUrl( + l.src, + { nonce: l.nonce || l.getAttribute("nonce") }, + u, + ) + : _(l.textContent.replace(Ne, ""), l, u)); + } + return n; + } + function Le(e, t, n) { + for (var i, r = t ? C.filter(t, e) : e, a = 0; null != (i = r[a]); a++) + n || 1 !== i.nodeType || C.cleanData(ge(i)), + i.parentNode && + (n && re(i) && ve(ge(i, "script")), i.parentNode.removeChild(i)); + return e; + } + C.extend({ + htmlPrefilter: function (e) { + return e; + }, + clone: function (e, t, n) { + var i, + r, + a, + o, + s, + l, + u, + c = e.cloneNode(!0), + d = re(e); + if ( + !( + y.noCloneChecked || + (1 !== e.nodeType && 11 !== e.nodeType) || + C.isXMLDoc(e) + ) + ) + for (o = ge(c), i = 0, r = (a = ge(e)).length; i < r; i++) + (s = a[i]), + (l = o[i]), + void 0, + "input" === (u = l.nodeName.toLowerCase()) && he.test(s.type) + ? (l.checked = s.checked) + : ("input" !== u && "textarea" !== u) || + (l.defaultValue = s.defaultValue); + if (t) + if (n) + for ( + a = a || ge(e), o = o || ge(c), i = 0, r = a.length; + i < r; + i++ + ) + Ie(a[i], o[i]); + else Ie(e, c); + return ( + 0 < (o = ge(c, "script")).length && ve(o, !d && ge(e, "script")), c + ); + }, + cleanData: function (e) { + for ( + var t, n, i, r = C.event.special, a = 0; + void 0 !== (n = e[a]); + a++ + ) + if (z(n)) { + if ((t = n[Q.expando])) { + if (t.events) + for (i in t.events) + r[i] ? C.event.remove(n, i) : C.removeEvent(n, i, t.handle); + n[Q.expando] = void 0; + } + n[J.expando] && (n[J.expando] = void 0); + } + }, + }), + C.fn.extend({ + detach: function (e) { + return Le(this, e, !0); + }, + remove: function (e) { + return Le(this, e); + }, + text: function (e) { + return U( + this, + function (e) { + return void 0 === e + ? C.text(this) + : this.empty().each(function () { + (1 !== this.nodeType && + 11 !== this.nodeType && + 9 !== this.nodeType) || + (this.textContent = e); + }); + }, + null, + e, + arguments.length, + ); + }, + append: function () { + return Pe(this, arguments, function (e) { + (1 !== this.nodeType && + 11 !== this.nodeType && + 9 !== this.nodeType) || + Oe(this, e).appendChild(e); + }); + }, + prepend: function () { + return Pe(this, arguments, function (e) { + if ( + 1 === this.nodeType || + 11 === this.nodeType || + 9 === this.nodeType + ) { + var t = Oe(this, e); + t.insertBefore(e, t.firstChild); + } + }); + }, + before: function () { + return Pe(this, arguments, function (e) { + this.parentNode && this.parentNode.insertBefore(e, this); + }); + }, + after: function () { + return Pe(this, arguments, function (e) { + this.parentNode && + this.parentNode.insertBefore(e, this.nextSibling); + }); + }, + empty: function () { + for (var e, t = 0; null != (e = this[t]); t++) + 1 === e.nodeType && (C.cleanData(ge(e, !1)), (e.textContent = "")); + return this; + }, + clone: function (e, t) { + return ( + (e = null != e && e), + (t = null == t ? e : t), + this.map(function () { + return C.clone(this, e, t); + }) + ); + }, + html: function (e) { + return U( + this, + function (e) { + var t = this[0] || {}, + n = 0, + i = this.length; + if (void 0 === e && 1 === t.nodeType) return t.innerHTML; + if ( + "string" == typeof e && + !Ee.test(e) && + !me[(fe.exec(e) || ["", ""])[1].toLowerCase()] + ) { + e = C.htmlPrefilter(e); + try { + for (; n < i; n++) + 1 === (t = this[n] || {}).nodeType && + (C.cleanData(ge(t, !1)), (t.innerHTML = e)); + t = 0; + } catch (e) { } + } + t && this.empty().append(e); + }, + null, + e, + arguments.length, + ); + }, + replaceWith: function () { + var n = []; + return Pe( + this, + arguments, + function (e) { + var t = this.parentNode; + C.inArray(this, n) < 0 && + (C.cleanData(ge(this)), t && t.replaceChild(e, this)); + }, + n, + ); + }, + }), + C.each( + { + appendTo: "append", + prependTo: "prepend", + insertBefore: "before", + insertAfter: "after", + replaceAll: "replaceWith", + }, + function (e, o) { + C.fn[e] = function (e) { + for (var t, n = [], i = C(e), r = i.length - 1, a = 0; a <= r; a++) + (t = a === r ? this : this.clone(!0)), + C(i[a])[o](t), + l.apply(n, t.get()); + return this.pushStack(n); + }; + }, + ); + function Fe(e, t, n) { + var i, + r, + a = {}; + for (r in t) (a[r] = e.style[r]), (e.style[r] = t[r]); + for (r in ((i = n.call(e)), t)) e.style[r] = a[r]; + return i; + } + var Re, + He, + Ye, + Ve, + Ue, + We, + qe, + Be, + $e = new RegExp("^(" + ee + ")(?!px)[a-z%]+$", "i"), + ze = function (e) { + var t = e.ownerDocument.defaultView; + return (t && t.opener) || (t = D), t.getComputedStyle(e); + }, + Ge = new RegExp(ne.join("|"), "i"); + function Qe() { + if (Be) { + (qe.style.cssText = + "position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0"), + (Be.style.cssText = + "position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%"), + ie.appendChild(qe).appendChild(Be); + var e = D.getComputedStyle(Be); + (Re = "1%" !== e.top), + (We = 12 === Je(e.marginLeft)), + (Be.style.right = "60%"), + (Ve = 36 === Je(e.right)), + (He = 36 === Je(e.width)), + (Be.style.position = "absolute"), + (Ye = 12 === Je(Be.offsetWidth / 3)), + ie.removeChild(qe), + (Be = null); + } + } + function Je(e) { + return Math.round(parseFloat(e)); + } + function Ze(e, t, n) { + var i, + r, + a, + o, + s = e.style; + return ( + (n = n || ze(e)) && + ("" !== (o = n.getPropertyValue(t) || n[t]) || + re(e) || + (o = C.style(e, t)), + !y.pixelBoxStyles() && + $e.test(o) && + Ge.test(t) && + ((i = s.width), + (r = s.minWidth), + (a = s.maxWidth), + (s.minWidth = s.maxWidth = s.width = o), + (o = n.width), + (s.width = i), + (s.minWidth = r), + (s.maxWidth = a))), + void 0 !== o ? o + "" : o + ); + } + function Xe(e, t) { + return { + get: function () { + if (!e()) return (this.get = t).apply(this, arguments); + delete this.get; + }, + }; + } + (qe = k.createElement("div")), + (Be = k.createElement("div")).style && + ((Be.style.backgroundClip = "content-box"), + (Be.cloneNode(!0).style.backgroundClip = ""), + (y.clearCloneStyle = "content-box" === Be.style.backgroundClip), + C.extend(y, { + boxSizingReliable: function () { + return Qe(), He; + }, + pixelBoxStyles: function () { + return Qe(), Ve; + }, + pixelPosition: function () { + return Qe(), Re; + }, + reliableMarginLeft: function () { + return Qe(), We; + }, + scrollboxSize: function () { + return Qe(), Ye; + }, + reliableTrDimensions: function () { + var e, t, n, i; + return ( + null == Ue && + ((e = k.createElement("table")), + (t = k.createElement("tr")), + (n = k.createElement("div")), + (e.style.cssText = "position:absolute;left:-11111px"), + (t.style.height = "1px"), + (n.style.height = "9px"), + ie.appendChild(e).appendChild(t).appendChild(n), + (i = D.getComputedStyle(t)), + (Ue = 3 < parseInt(i.height)), + ie.removeChild(e)), + Ue + ); + }, + })); + var Ke = ["Webkit", "Moz", "ms"], + et = k.createElement("div").style, + tt = {}; + function nt(e) { + var t = C.cssProps[e] || tt[e]; + return ( + t || + (e in et + ? e + : (tt[e] = + (function (e) { + for ( + var t = e[0].toUpperCase() + e.slice(1), n = Ke.length; + n--; + + ) + if ((e = Ke[n] + t) in et) return e; + })(e) || e)) + ); + } + var it = /^(none|table(?!-c[ea]).+)/, + rt = /^--/, + at = { position: "absolute", visibility: "hidden", display: "block" }, + ot = { letterSpacing: "0", fontWeight: "400" }; + function st(e, t, n) { + var i = te.exec(t); + return i ? Math.max(0, i[2] - (n || 0)) + (i[3] || "px") : t; + } + function lt(e, t, n, i, r, a) { + var o = "width" === t ? 1 : 0, + s = 0, + l = 0; + if (n === (i ? "border" : "content")) return 0; + for (; o < 4; o += 2) + "margin" === n && (l += C.css(e, n + ne[o], !0, r)), + i + ? ("content" === n && (l -= C.css(e, "padding" + ne[o], !0, r)), + "margin" !== n && + (l -= C.css(e, "border" + ne[o] + "Width", !0, r))) + : ((l += C.css(e, "padding" + ne[o], !0, r)), + "padding" !== n + ? (l += C.css(e, "border" + ne[o] + "Width", !0, r)) + : (s += C.css(e, "border" + ne[o] + "Width", !0, r))); + return ( + !i && + 0 <= a && + (l += + Math.max( + 0, + Math.ceil( + e["offset" + t[0].toUpperCase() + t.slice(1)] - a - l - s - 0.5, + ), + ) || 0), + l + ); + } + function ut(e, t, n) { + var i = ze(e), + r = + (!y.boxSizingReliable() || n) && + "border-box" === C.css(e, "boxSizing", !1, i), + a = r, + o = Ze(e, t, i), + s = "offset" + t[0].toUpperCase() + t.slice(1); + if ($e.test(o)) { + if (!n) return o; + o = "auto"; + } + return ( + ((!y.boxSizingReliable() && r) || + (!y.reliableTrDimensions() && S(e, "tr")) || + "auto" === o || + (!parseFloat(o) && "inline" === C.css(e, "display", !1, i))) && + e.getClientRects().length && + ((r = "border-box" === C.css(e, "boxSizing", !1, i)), + (a = s in e) && (o = e[s])), + (o = parseFloat(o) || 0) + + lt(e, t, n || (r ? "border" : "content"), a, i, o) + + "px" + ); + } + function ct(e, t, n, i, r) { + return new ct.prototype.init(e, t, n, i, r); + } + C.extend({ + cssHooks: { + opacity: { + get: function (e, t) { + if (t) { + var n = Ze(e, "opacity"); + return "" === n ? "1" : n; + } + }, + }, + }, + cssNumber: { + animationIterationCount: !0, + columnCount: !0, + fillOpacity: !0, + flexGrow: !0, + flexShrink: !0, + fontWeight: !0, + gridArea: !0, + gridColumn: !0, + gridColumnEnd: !0, + gridColumnStart: !0, + gridRow: !0, + gridRowEnd: !0, + gridRowStart: !0, + lineHeight: !0, + opacity: !0, + order: !0, + orphans: !0, + widows: !0, + zIndex: !0, + zoom: !0, + }, + cssProps: {}, + style: function (e, t, n, i) { + if (e && 3 !== e.nodeType && 8 !== e.nodeType && e.style) { + var r, + a, + o, + s = $(t), + l = rt.test(t), + u = e.style; + if ( + (l || (t = nt(s)), + (o = C.cssHooks[t] || C.cssHooks[s]), + void 0 === n) + ) + return o && "get" in o && void 0 !== (r = o.get(e, !1, i)) + ? r + : u[t]; + "string" === (a = typeof n) && + (r = te.exec(n)) && + r[1] && + ((n = se(e, t, r)), (a = "number")), + null != n && + n == n && + ("number" !== a || + l || + (n += (r && r[3]) || (C.cssNumber[s] ? "" : "px")), + y.clearCloneStyle || + "" !== n || + 0 !== t.indexOf("background") || + (u[t] = "inherit"), + (o && "set" in o && void 0 === (n = o.set(e, n, i))) || + (l ? u.setProperty(t, n) : (u[t] = n))); + } + }, + css: function (e, t, n, i) { + var r, + a, + o, + s = $(t); + return ( + rt.test(t) || (t = nt(s)), + (o = C.cssHooks[t] || C.cssHooks[s]) && + "get" in o && + (r = o.get(e, !0, n)), + void 0 === r && (r = Ze(e, t, i)), + "normal" === r && t in ot && (r = ot[t]), + "" === n || n + ? ((a = parseFloat(r)), !0 === n || isFinite(a) ? a || 0 : r) + : r + ); + }, + }), + C.each(["height", "width"], function (e, l) { + C.cssHooks[l] = { + get: function (e, t, n) { + if (t) + return !it.test(C.css(e, "display")) || + (e.getClientRects().length && e.getBoundingClientRect().width) + ? ut(e, l, n) + : Fe(e, at, function () { + return ut(e, l, n); + }); + }, + set: function (e, t, n) { + var i, + r = ze(e), + a = !y.scrollboxSize() && "absolute" === r.position, + o = (a || n) && "border-box" === C.css(e, "boxSizing", !1, r), + s = n ? lt(e, l, n, o, r) : 0; + return ( + o && + a && + (s -= Math.ceil( + e["offset" + l[0].toUpperCase() + l.slice(1)] - + parseFloat(r[l]) - + lt(e, l, "border", !1, r) - + 0.5, + )), + s && + (i = te.exec(t)) && + "px" !== (i[3] || "px") && + ((e.style[l] = t), (t = C.css(e, l))), + st(0, t, s) + ); + }, + }; + }), + (C.cssHooks.marginLeft = Xe(y.reliableMarginLeft, function (e, t) { + if (t) + return ( + (parseFloat(Ze(e, "marginLeft")) || + e.getBoundingClientRect().left - + Fe(e, { marginLeft: 0 }, function () { + return e.getBoundingClientRect().left; + })) + "px" + ); + })), + C.each({ margin: "", padding: "", border: "Width" }, function (r, a) { + (C.cssHooks[r + a] = { + expand: function (e) { + for ( + var t = 0, n = {}, i = "string" == typeof e ? e.split(" ") : [e]; + t < 4; + t++ + ) + n[r + ne[t] + a] = i[t] || i[t - 2] || i[0]; + return n; + }, + }), + "margin" !== r && (C.cssHooks[r + a].set = st); + }), + C.fn.extend({ + css: function (e, t) { + return U( + this, + function (e, t, n) { + var i, + r, + a = {}, + o = 0; + if (Array.isArray(t)) { + for (i = ze(e), r = t.length; o < r; o++) + a[t[o]] = C.css(e, t[o], !1, i); + return a; + } + return void 0 !== n ? C.style(e, t, n) : C.css(e, t); + }, + e, + t, + 1 < arguments.length, + ); + }, + }), + (((C.Tween = ct).prototype = { + constructor: ct, + init: function (e, t, n, i, r, a) { + (this.elem = e), + (this.prop = n), + (this.easing = r || C.easing._default), + (this.options = t), + (this.start = this.now = this.cur()), + (this.end = i), + (this.unit = a || (C.cssNumber[n] ? "" : "px")); + }, + cur: function () { + var e = ct.propHooks[this.prop]; + return e && e.get ? e.get(this) : ct.propHooks._default.get(this); + }, + run: function (e) { + var t, + n = ct.propHooks[this.prop]; + return ( + this.options.duration + ? (this.pos = t = + C.easing[this.easing]( + e, + this.options.duration * e, + 0, + 1, + this.options.duration, + )) + : (this.pos = t = e), + (this.now = (this.end - this.start) * t + this.start), + this.options.step && + this.options.step.call(this.elem, this.now, this), + n && n.set ? n.set(this) : ct.propHooks._default.set(this), + this + ); + }, + }).init.prototype = ct.prototype), + ((ct.propHooks = { + _default: { + get: function (e) { + var t; + return 1 !== e.elem.nodeType || + (null != e.elem[e.prop] && null == e.elem.style[e.prop]) + ? e.elem[e.prop] + : (t = C.css(e.elem, e.prop, "")) && "auto" !== t + ? t + : 0; + }, + set: function (e) { + C.fx.step[e.prop] + ? C.fx.step[e.prop](e) + : 1 !== e.elem.nodeType || + (!C.cssHooks[e.prop] && null == e.elem.style[nt(e.prop)]) + ? (e.elem[e.prop] = e.now) + : C.style(e.elem, e.prop, e.now + e.unit); + }, + }, + }).scrollTop = ct.propHooks.scrollLeft = + { + set: function (e) { + e.elem.nodeType && e.elem.parentNode && (e.elem[e.prop] = e.now); + }, + }), + (C.easing = { + linear: function (e) { + return e; + }, + swing: function (e) { + return 0.5 - Math.cos(e * Math.PI) / 2; + }, + _default: "swing", + }), + (C.fx = ct.prototype.init), + (C.fx.step = {}); + var dt, + ht, + ft, + pt, + mt = /^(?:toggle|show|hide)$/, + gt = /queueHooks$/; + function vt() { + ht && + (!1 === k.hidden && D.requestAnimationFrame + ? D.requestAnimationFrame(vt) + : D.setTimeout(vt, C.fx.interval), + C.fx.tick()); + } + function yt() { + return ( + D.setTimeout(function () { + dt = void 0; + }), + (dt = Date.now()) + ); + } + function bt(e, t) { + var n, + i = 0, + r = { height: e }; + for (t = t ? 1 : 0; i < 4; i += 2 - t) + r["margin" + (n = ne[i])] = r["padding" + n] = e; + return t && (r.opacity = r.width = e), r; + } + function _t(e, t, n) { + for ( + var i, + r = (wt.tweeners[t] || []).concat(wt.tweeners["*"]), + a = 0, + o = r.length; + a < o; + a++ + ) + if ((i = r[a].call(n, t, e))) return i; + } + function wt(a, e, t) { + var n, + o, + i = 0, + r = wt.prefilters.length, + s = C.Deferred().always(function () { + delete l.elem; + }), + l = function () { + if (o) return !1; + for ( + var e = dt || yt(), + t = Math.max(0, u.startTime + u.duration - e), + n = 1 - (t / u.duration || 0), + i = 0, + r = u.tweens.length; + i < r; + i++ + ) + u.tweens[i].run(n); + return ( + s.notifyWith(a, [u, n, t]), + n < 1 && r + ? t + : (r || s.notifyWith(a, [u, 1, 0]), s.resolveWith(a, [u]), !1) + ); + }, + u = s.promise({ + elem: a, + props: C.extend({}, e), + opts: C.extend( + !0, + { specialEasing: {}, easing: C.easing._default }, + t, + ), + originalProperties: e, + originalOptions: t, + startTime: dt || yt(), + duration: t.duration, + tweens: [], + createTween: function (e, t) { + var n = C.Tween( + a, + u.opts, + e, + t, + u.opts.specialEasing[e] || u.opts.easing, + ); + return u.tweens.push(n), n; + }, + stop: function (e) { + var t = 0, + n = e ? u.tweens.length : 0; + if (o) return this; + for (o = !0; t < n; t++) u.tweens[t].run(1); + return ( + e + ? (s.notifyWith(a, [u, 1, 0]), s.resolveWith(a, [u, e])) + : s.rejectWith(a, [u, e]), + this + ); + }, + }), + c = u.props; + for ( + !(function (e, t) { + var n, i, r, a, o; + for (n in e) + if ( + ((r = t[(i = $(n))]), + (a = e[n]), + Array.isArray(a) && ((r = a[1]), (a = e[n] = a[0])), + n !== i && ((e[i] = a), delete e[n]), + (o = C.cssHooks[i]) && ("expand" in o)) + ) + for (n in ((a = o.expand(a)), delete e[i], a)) + (n in e) || ((e[n] = a[n]), (t[n] = r)); + else t[i] = r; + })(c, u.opts.specialEasing); + i < r; + i++ + ) + if ((n = wt.prefilters[i].call(u, a, c, u.opts))) + return ( + b(n.stop) && + (C._queueHooks(u.elem, u.opts.queue).stop = n.stop.bind(n)), + n + ); + return ( + C.map(c, _t, u), + b(u.opts.start) && u.opts.start.call(a, u), + u + .progress(u.opts.progress) + .done(u.opts.done, u.opts.complete) + .fail(u.opts.fail) + .always(u.opts.always), + C.fx.timer(C.extend(l, { elem: a, anim: u, queue: u.opts.queue })), + u + ); + } + (C.Animation = C.extend(wt, { + tweeners: { + "*": [ + function (e, t) { + var n = this.createTween(e, t); + return se(n.elem, e, te.exec(t), n), n; + }, + ], + }, + tweener: function (e, t) { + for ( + var n, i = 0, r = (e = b(e) ? ((t = e), ["*"]) : e.match(P)).length; + i < r; + i++ + ) + (n = e[i]), + (wt.tweeners[n] = wt.tweeners[n] || []), + wt.tweeners[n].unshift(t); + }, + prefilters: [ + function (e, t, n) { + var i, + r, + a, + o, + s, + l, + u, + c, + d = "width" in t || "height" in t, + h = this, + f = {}, + p = e.style, + m = e.nodeType && oe(e), + g = Q.get(e, "fxshow"); + for (i in (n.queue || + (null == (o = C._queueHooks(e, "fx")).unqueued && + ((o.unqueued = 0), + (s = o.empty.fire), + (o.empty.fire = function () { + o.unqueued || s(); + })), + o.unqueued++, + h.always(function () { + h.always(function () { + o.unqueued--, C.queue(e, "fx").length || o.empty.fire(); + }); + })), + t)) + if (((r = t[i]), mt.test(r))) { + if ( + (delete t[i], + (a = a || "toggle" === r), + r === (m ? "hide" : "show")) + ) { + if ("show" !== r || !g || void 0 === g[i]) continue; + m = !0; + } + f[i] = (g && g[i]) || C.style(e, i); + } + if ((l = !C.isEmptyObject(t)) || !C.isEmptyObject(f)) + for (i in (d && + 1 === e.nodeType && + ((n.overflow = [p.overflow, p.overflowX, p.overflowY]), + null == (u = g && g.display) && (u = Q.get(e, "display")), + "none" === (c = C.css(e, "display")) && + (u + ? (c = u) + : (ue([e], !0), + (u = e.style.display || u), + (c = C.css(e, "display")), + ue([e]))), + ("inline" === c || ("inline-block" === c && null != u)) && + "none" === C.css(e, "float") && + (l || + (h.done(function () { + p.display = u; + }), + null == u && ((c = p.display), (u = "none" === c ? "" : c))), + (p.display = "inline-block"))), + n.overflow && + ((p.overflow = "hidden"), + h.always(function () { + (p.overflow = n.overflow[0]), + (p.overflowX = n.overflow[1]), + (p.overflowY = n.overflow[2]); + })), + (l = !1), + f)) + l || + (g + ? "hidden" in g && (m = g.hidden) + : (g = Q.access(e, "fxshow", { display: u })), + a && (g.hidden = !m), + m && ue([e], !0), + h.done(function () { + for (i in (m || ue([e]), Q.remove(e, "fxshow"), f)) + C.style(e, i, f[i]); + })), + (l = _t(m ? g[i] : 0, i, h)), + i in g || + ((g[i] = l.start), m && ((l.end = l.start), (l.start = 0))); + }, + ], + prefilter: function (e, t) { + t ? wt.prefilters.unshift(e) : wt.prefilters.push(e); + }, + })), + (C.speed = function (e, t, n) { + var i = + e && "object" == typeof e + ? C.extend({}, e) + : { + complete: n || (!n && t) || (b(e) && e), + duration: e, + easing: (n && t) || (t && !b(t) && t), + }; + return ( + C.fx.off + ? (i.duration = 0) + : "number" != typeof i.duration && + (i.duration in C.fx.speeds + ? (i.duration = C.fx.speeds[i.duration]) + : (i.duration = C.fx.speeds._default)), + (null != i.queue && !0 !== i.queue) || (i.queue = "fx"), + (i.old = i.complete), + (i.complete = function () { + b(i.old) && i.old.call(this), i.queue && C.dequeue(this, i.queue); + }), + i + ); + }), + C.fn.extend({ + fadeTo: function (e, t, n, i) { + return this.filter(oe) + .css("opacity", 0) + .show() + .end() + .animate({ opacity: t }, e, n, i); + }, + animate: function (t, e, n, i) { + function r() { + var e = wt(this, C.extend({}, t), o); + (a || Q.get(this, "finish")) && e.stop(!0); + } + var a = C.isEmptyObject(t), + o = C.speed(e, n, i); + return ( + (r.finish = r), + a || !1 === o.queue ? this.each(r) : this.queue(o.queue, r) + ); + }, + stop: function (r, e, a) { + function o(e) { + var t = e.stop; + delete e.stop, t(a); + } + return ( + "string" != typeof r && ((a = e), (e = r), (r = void 0)), + e && this.queue(r || "fx", []), + this.each(function () { + var e = !0, + t = null != r && r + "queueHooks", + n = C.timers, + i = Q.get(this); + if (t) i[t] && i[t].stop && o(i[t]); + else for (t in i) i[t] && i[t].stop && gt.test(t) && o(i[t]); + for (t = n.length; t--;) + n[t].elem !== this || + (null != r && n[t].queue !== r) || + (n[t].anim.stop(a), (e = !1), n.splice(t, 1)); + (!e && a) || C.dequeue(this, r); + }) + ); + }, + finish: function (o) { + return ( + !1 !== o && (o = o || "fx"), + this.each(function () { + var e, + t = Q.get(this), + n = t[o + "queue"], + i = t[o + "queueHooks"], + r = C.timers, + a = n ? n.length : 0; + for ( + t.finish = !0, + C.queue(this, o, []), + i && i.stop && i.stop.call(this, !0), + e = r.length; + e--; + + ) + r[e].elem === this && + r[e].queue === o && + (r[e].anim.stop(!0), r.splice(e, 1)); + for (e = 0; e < a; e++) + n[e] && n[e].finish && n[e].finish.call(this); + delete t.finish; + }) + ); + }, + }), + C.each(["toggle", "show", "hide"], function (e, i) { + var r = C.fn[i]; + C.fn[i] = function (e, t, n) { + return null == e || "boolean" == typeof e + ? r.apply(this, arguments) + : this.animate(bt(i, !0), e, t, n); + }; + }), + C.each( + { + slideDown: bt("show"), + slideUp: bt("hide"), + slideToggle: bt("toggle"), + fadeIn: { opacity: "show" }, + fadeOut: { opacity: "hide" }, + fadeToggle: { opacity: "toggle" }, + }, + function (e, i) { + C.fn[e] = function (e, t, n) { + return this.animate(i, e, t, n); + }; + }, + ), + (C.timers = []), + (C.fx.tick = function () { + var e, + t = 0, + n = C.timers; + for (dt = Date.now(); t < n.length; t++) + (e = n[t])() || n[t] !== e || n.splice(t--, 1); + n.length || C.fx.stop(), (dt = void 0); + }), + (C.fx.timer = function (e) { + C.timers.push(e), C.fx.start(); + }), + (C.fx.interval = 13), + (C.fx.start = function () { + ht || ((ht = !0), vt()); + }), + (C.fx.stop = function () { + ht = null; + }), + (C.fx.speeds = { slow: 600, fast: 200, _default: 400 }), + (C.fn.delay = function (i, e) { + return ( + (i = (C.fx && C.fx.speeds[i]) || i), + (e = e || "fx"), + this.queue(e, function (e, t) { + var n = D.setTimeout(e, i); + t.stop = function () { + D.clearTimeout(n); + }; + }) + ); + }), + (ft = k.createElement("input")), + (pt = k.createElement("select").appendChild(k.createElement("option"))), + (ft.type = "checkbox"), + (y.checkOn = "" !== ft.value), + (y.optSelected = pt.selected), + ((ft = k.createElement("input")).value = "t"), + (ft.type = "radio"), + (y.radioValue = "t" === ft.value); + var xt, + Dt = C.expr.attrHandle; + C.fn.extend({ + attr: function (e, t) { + return U(this, C.attr, e, t, 1 < arguments.length); + }, + removeAttr: function (e) { + return this.each(function () { + C.removeAttr(this, e); + }); + }, + }), + C.extend({ + attr: function (e, t, n) { + var i, + r, + a = e.nodeType; + if (3 !== a && 8 !== a && 2 !== a) + return void 0 === e.getAttribute + ? C.prop(e, t, n) + : ((1 === a && C.isXMLDoc(e)) || + (r = + C.attrHooks[t.toLowerCase()] || + (C.expr.match.bool.test(t) ? xt : void 0)), + void 0 !== n + ? null === n + ? void C.removeAttr(e, t) + : r && "set" in r && void 0 !== (i = r.set(e, n, t)) + ? i + : (e.setAttribute(t, n + ""), n) + : r && "get" in r && null !== (i = r.get(e, t)) + ? i + : null == (i = C.find.attr(e, t)) + ? void 0 + : i); + }, + attrHooks: { + type: { + set: function (e, t) { + if (!y.radioValue && "radio" === t && S(e, "input")) { + var n = e.value; + return e.setAttribute("type", t), n && (e.value = n), t; + } + }, + }, + }, + removeAttr: function (e, t) { + var n, + i = 0, + r = t && t.match(P); + if (r && 1 === e.nodeType) + for (; (n = r[i++]);) e.removeAttribute(n); + }, + }), + (xt = { + set: function (e, t, n) { + return !1 === t ? C.removeAttr(e, n) : e.setAttribute(n, n), n; + }, + }), + C.each(C.expr.match.bool.source.match(/\w+/g), function (e, t) { + var o = Dt[t] || C.find.attr; + Dt[t] = function (e, t, n) { + var i, + r, + a = t.toLowerCase(); + return ( + n || + ((r = Dt[a]), + (Dt[a] = i), + (i = null != o(e, t, n) ? a : null), + (Dt[a] = r)), + i + ); + }; + }); + var kt = /^(?:input|select|textarea|button)$/i, + Ct = /^(?:a|area)$/i; + function Tt(e) { + return (e.match(P) || []).join(" "); + } + function St(e) { + return (e.getAttribute && e.getAttribute("class")) || ""; + } + function Et(e) { + return Array.isArray(e) ? e : ("string" == typeof e && e.match(P)) || []; + } + C.fn.extend({ + prop: function (e, t) { + return U(this, C.prop, e, t, 1 < arguments.length); + }, + removeProp: function (e) { + return this.each(function () { + delete this[C.propFix[e] || e]; + }); + }, + }), + C.extend({ + prop: function (e, t, n) { + var i, + r, + a = e.nodeType; + if (3 !== a && 8 !== a && 2 !== a) + return ( + (1 === a && C.isXMLDoc(e)) || + ((t = C.propFix[t] || t), (r = C.propHooks[t])), + void 0 !== n + ? r && "set" in r && void 0 !== (i = r.set(e, n, t)) + ? i + : (e[t] = n) + : r && "get" in r && null !== (i = r.get(e, t)) + ? i + : e[t] + ); + }, + propHooks: { + tabIndex: { + get: function (e) { + var t = C.find.attr(e, "tabindex"); + return t + ? parseInt(t, 10) + : kt.test(e.nodeName) || (Ct.test(e.nodeName) && e.href) + ? 0 + : -1; + }, + }, + }, + propFix: { for: "htmlFor", class: "className" }, + }), + y.optSelected || + (C.propHooks.selected = { + get: function (e) { + var t = e.parentNode; + return t && t.parentNode && t.parentNode.selectedIndex, null; + }, + set: function (e) { + var t = e.parentNode; + t && (t.selectedIndex, t.parentNode && t.parentNode.selectedIndex); + }, + }), + C.each( + [ + "tabIndex", + "readOnly", + "maxLength", + "cellSpacing", + "cellPadding", + "rowSpan", + "colSpan", + "useMap", + "frameBorder", + "contentEditable", + ], + function () { + C.propFix[this.toLowerCase()] = this; + }, + ), + C.fn.extend({ + addClass: function (t) { + var e, + n, + i, + r, + a, + o, + s, + l = 0; + if (b(t)) + return this.each(function (e) { + C(this).addClass(t.call(this, e, St(this))); + }); + if ((e = Et(t)).length) + for (; (n = this[l++]);) + if (((r = St(n)), (i = 1 === n.nodeType && " " + Tt(r) + " "))) { + for (o = 0; (a = e[o++]);) + i.indexOf(" " + a + " ") < 0 && (i += a + " "); + r !== (s = Tt(i)) && n.setAttribute("class", s); + } + return this; + }, + removeClass: function (t) { + var e, + n, + i, + r, + a, + o, + s, + l = 0; + if (b(t)) + return this.each(function (e) { + C(this).removeClass(t.call(this, e, St(this))); + }); + if (!arguments.length) return this.attr("class", ""); + if ((e = Et(t)).length) + for (; (n = this[l++]);) + if (((r = St(n)), (i = 1 === n.nodeType && " " + Tt(r) + " "))) { + for (o = 0; (a = e[o++]);) + for (; -1 < i.indexOf(" " + a + " ");) + i = i.replace(" " + a + " ", " "); + r !== (s = Tt(i)) && n.setAttribute("class", s); + } + return this; + }, + toggleClass: function (r, t) { + var a = typeof r, + o = "string" == a || Array.isArray(r); + return "boolean" == typeof t && o + ? t + ? this.addClass(r) + : this.removeClass(r) + : b(r) + ? this.each(function (e) { + C(this).toggleClass(r.call(this, e, St(this), t), t); + }) + : this.each(function () { + var e, t, n, i; + if (o) + for (t = 0, n = C(this), i = Et(r); (e = i[t++]);) + n.hasClass(e) ? n.removeClass(e) : n.addClass(e); + else + (void 0 !== r && "boolean" != a) || + ((e = St(this)) && Q.set(this, "__className__", e), + this.setAttribute && + this.setAttribute( + "class", + e || !1 === r + ? "" + : Q.get(this, "__className__") || "", + )); + }); + }, + hasClass: function (e) { + var t, + n, + i = 0; + for (t = " " + e + " "; (n = this[i++]);) + if (1 === n.nodeType && -1 < (" " + Tt(St(n)) + " ").indexOf(t)) + return !0; + return !1; + }, + }); + var Mt = /\r/g; + C.fn.extend({ + val: function (n) { + var i, + e, + r, + t = this[0]; + return arguments.length + ? ((r = b(n)), + this.each(function (e) { + var t; + 1 === this.nodeType && + (null == (t = r ? n.call(this, e, C(this).val()) : n) + ? (t = "") + : "number" == typeof t + ? (t += "") + : Array.isArray(t) && + (t = C.map(t, function (e) { + return null == e ? "" : e + ""; + })), + ((i = + C.valHooks[this.type] || + C.valHooks[this.nodeName.toLowerCase()]) && + "set" in i && + void 0 !== i.set(this, t, "value")) || + (this.value = t)); + })) + : t + ? (i = + C.valHooks[t.type] || C.valHooks[t.nodeName.toLowerCase()]) && + "get" in i && + void 0 !== (e = i.get(t, "value")) + ? e + : "string" == typeof (e = t.value) + ? e.replace(Mt, "") + : null == e + ? "" + : e + : void 0; + }, + }), + C.extend({ + valHooks: { + option: { + get: function (e) { + var t = C.find.attr(e, "value"); + return null != t ? t : Tt(C.text(e)); + }, + }, + select: { + get: function (e) { + var t, + n, + i, + r = e.options, + a = e.selectedIndex, + o = "select-one" === e.type, + s = o ? null : [], + l = o ? a + 1 : r.length; + for (i = a < 0 ? l : o ? a : 0; i < l; i++) + if ( + ((n = r[i]).selected || i === a) && + !n.disabled && + (!n.parentNode.disabled || !S(n.parentNode, "optgroup")) + ) { + if (((t = C(n).val()), o)) return t; + s.push(t); + } + return s; + }, + set: function (e, t) { + for ( + var n, i, r = e.options, a = C.makeArray(t), o = r.length; + o--; + + ) + ((i = r[o]).selected = + -1 < C.inArray(C.valHooks.option.get(i), a)) && (n = !0); + return n || (e.selectedIndex = -1), a; + }, + }, + }, + }), + C.each(["radio", "checkbox"], function () { + (C.valHooks[this] = { + set: function (e, t) { + if (Array.isArray(t)) + return (e.checked = -1 < C.inArray(C(e).val(), t)); + }, + }), + y.checkOn || + (C.valHooks[this].get = function (e) { + return null === e.getAttribute("value") ? "on" : e.value; + }); + }), + (y.focusin = "onfocusin" in D); + function Nt(e) { + e.stopPropagation(); + } + var Ot = /^(?:focusinfocus|focusoutblur)$/; + C.extend(C.event, { + trigger: function (e, t, n, i) { + var r, + a, + o, + s, + l, + u, + c, + d, + h = [n || k], + f = v.call(e, "type") ? e.type : e, + p = v.call(e, "namespace") ? e.namespace.split(".") : []; + if ( + ((a = d = o = n = n || k), + 3 !== n.nodeType && + 8 !== n.nodeType && + !Ot.test(f + C.event.triggered) && + (-1 < f.indexOf(".") && + ((f = (p = f.split(".")).shift()), p.sort()), + (l = f.indexOf(":") < 0 && "on" + f), + ((e = e[C.expando] + ? e + : new C.Event(f, "object" == typeof e && e)).isTrigger = i + ? 2 + : 3), + (e.namespace = p.join(".")), + (e.rnamespace = e.namespace + ? new RegExp("(^|\\.)" + p.join("\\.(?:.*\\.|)") + "(\\.|$)") + : null), + (e.result = void 0), + e.target || (e.target = n), + (t = null == t ? [e] : C.makeArray(t, [e])), + (c = C.event.special[f] || {}), + i || !c.trigger || !1 !== c.trigger.apply(n, t))) + ) { + if (!i && !c.noBubble && !m(n)) { + for ( + s = c.delegateType || f, Ot.test(s + f) || (a = a.parentNode); + a; + a = a.parentNode + ) + h.push(a), (o = a); + o === (n.ownerDocument || k) && + h.push(o.defaultView || o.parentWindow || D); + } + for (r = 0; (a = h[r++]) && !e.isPropagationStopped();) + (d = a), + (e.type = 1 < r ? s : c.bindType || f), + (u = + (Q.get(a, "events") || Object.create(null))[e.type] && + Q.get(a, "handle")) && u.apply(a, t), + (u = l && a[l]) && + u.apply && + z(a) && + ((e.result = u.apply(a, t)), + !1 === e.result && e.preventDefault()); + return ( + (e.type = f), + i || + e.isDefaultPrevented() || + (c._default && !1 !== c._default.apply(h.pop(), t)) || + !z(n) || + (l && + b(n[f]) && + !m(n) && + ((o = n[l]) && (n[l] = null), + (C.event.triggered = f), + e.isPropagationStopped() && d.addEventListener(f, Nt), + n[f](), + e.isPropagationStopped() && d.removeEventListener(f, Nt), + (C.event.triggered = void 0), + o && (n[l] = o))), + e.result + ); + } + }, + simulate: function (e, t, n) { + var i = C.extend(new C.Event(), n, { type: e, isSimulated: !0 }); + C.event.trigger(i, null, t); + }, + }), + C.fn.extend({ + trigger: function (e, t) { + return this.each(function () { + C.event.trigger(e, t, this); + }); + }, + triggerHandler: function (e, t) { + var n = this[0]; + if (n) return C.event.trigger(e, t, n, !0); + }, + }), + y.focusin || + C.each({ focus: "focusin", blur: "focusout" }, function (n, i) { + function r(e) { + C.event.simulate(i, e.target, C.event.fix(e)); + } + C.event.special[i] = { + setup: function () { + var e = this.ownerDocument || this.document || this, + t = Q.access(e, i); + t || e.addEventListener(n, r, !0), Q.access(e, i, (t || 0) + 1); + }, + teardown: function () { + var e = this.ownerDocument || this.document || this, + t = Q.access(e, i) - 1; + t + ? Q.access(e, i, t) + : (e.removeEventListener(n, r, !0), Q.remove(e, i)); + }, + }; + }); + var At = D.location, + jt = { guid: Date.now() }, + It = /\?/; + C.parseXML = function (e) { + var t; + if (!e || "string" != typeof e) return null; + try { + t = new D.DOMParser().parseFromString(e, "text/xml"); + } catch (e) { + t = void 0; + } + return ( + (t && !t.getElementsByTagName("parsererror").length) || + C.error("Invalid XML: " + e), + t + ); + }; + var Pt = /\[\]$/, + Lt = /\r?\n/g, + Ft = /^(?:submit|button|image|reset|file)$/i, + Rt = /^(?:input|select|textarea|keygen)/i; + function Ht(n, e, i, r) { + var t; + if (Array.isArray(e)) + C.each(e, function (e, t) { + i || Pt.test(n) + ? r(n, t) + : Ht( + n + "[" + ("object" == typeof t && null != t ? e : "") + "]", + t, + i, + r, + ); + }); + else if (i || "object" !== w(e)) r(n, e); + else for (t in e) Ht(n + "[" + t + "]", e[t], i, r); + } + (C.param = function (e, t) { + function n(e, t) { + var n = b(t) ? t() : t; + r[r.length] = + encodeURIComponent(e) + "=" + encodeURIComponent(null == n ? "" : n); + } + var i, + r = []; + if (null == e) return ""; + if (Array.isArray(e) || (e.jquery && !C.isPlainObject(e))) + C.each(e, function () { + n(this.name, this.value); + }); + else for (i in e) Ht(i, e[i], t, n); + return r.join("&"); + }), + C.fn.extend({ + serialize: function () { + return C.param(this.serializeArray()); + }, + serializeArray: function () { + return this.map(function () { + var e = C.prop(this, "elements"); + return e ? C.makeArray(e) : this; + }) + .filter(function () { + var e = this.type; + return ( + this.name && + !C(this).is(":disabled") && + Rt.test(this.nodeName) && + !Ft.test(e) && + (this.checked || !he.test(e)) + ); + }) + .map(function (e, t) { + var n = C(this).val(); + return null == n + ? null + : Array.isArray(n) + ? C.map(n, function (e) { + return { name: t.name, value: e.replace(Lt, "\r\n") }; + }) + : { name: t.name, value: n.replace(Lt, "\r\n") }; + }) + .get(); + }, + }); + var Yt = /%20/g, + Vt = /#.*$/, + Ut = /([?&])_=[^&]*/, + Wt = /^(.*?):[ \t]*([^\r\n]*)$/gm, + qt = /^(?:GET|HEAD)$/, + Bt = /^\/\//, + $t = {}, + zt = {}, + Gt = "*/".concat("*"), + Qt = k.createElement("a"); + function Jt(a) { + return function (e, t) { + "string" != typeof e && ((t = e), (e = "*")); + var n, + i = 0, + r = e.toLowerCase().match(P) || []; + if (b(t)) + for (; (n = r[i++]);) + "+" === n[0] + ? ((n = n.slice(1) || "*"), (a[n] = a[n] || []).unshift(t)) + : (a[n] = a[n] || []).push(t); + }; + } + function Zt(t, r, a, o) { + var s = {}, + l = t === zt; + function u(e) { + var i; + return ( + (s[e] = !0), + C.each(t[e] || [], function (e, t) { + var n = t(r, a, o); + return "string" != typeof n || l || s[n] + ? l + ? !(i = n) + : void 0 + : (r.dataTypes.unshift(n), u(n), !1); + }), + i + ); + } + return u(r.dataTypes[0]) || (!s["*"] && u("*")); + } + function Xt(e, t) { + var n, + i, + r = C.ajaxSettings.flatOptions || {}; + for (n in t) void 0 !== t[n] && ((r[n] ? e : (i = i || {}))[n] = t[n]); + return i && C.extend(!0, e, i), e; + } + (Qt.href = At.href), + C.extend({ + active: 0, + lastModified: {}, + etag: {}, + ajaxSettings: { + url: At.href, + type: "GET", + isLocal: + /^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test( + At.protocol, + ), + global: !0, + processData: !0, + async: !0, + contentType: "application/x-www-form-urlencoded; charset=UTF-8", + accepts: { + "*": Gt, + text: "text/plain", + html: "text/html", + xml: "application/xml, text/xml", + json: "application/json, text/javascript", + }, + contents: { xml: /\bxml\b/, html: /\bhtml/, json: /\bjson\b/ }, + responseFields: { + xml: "responseXML", + text: "responseText", + json: "responseJSON", + }, + converters: { + "* text": String, + "text html": !0, + "text json": JSON.parse, + "text xml": C.parseXML, + }, + flatOptions: { url: !0, context: !0 }, + }, + ajaxSetup: function (e, t) { + return t ? Xt(Xt(e, C.ajaxSettings), t) : Xt(C.ajaxSettings, e); + }, + ajaxPrefilter: Jt($t), + ajaxTransport: Jt(zt), + ajax: function (e, t) { + "object" == typeof e && ((t = e), (e = void 0)), (t = t || {}); + var c, + d, + h, + n, + f, + i, + p, + m, + r, + a, + g = C.ajaxSetup({}, t), + v = g.context || g, + y = g.context && (v.nodeType || v.jquery) ? C(v) : C.event, + b = C.Deferred(), + _ = C.Callbacks("once memory"), + w = g.statusCode || {}, + o = {}, + s = {}, + l = "canceled", + x = { + readyState: 0, + getResponseHeader: function (e) { + var t; + if (p) { + if (!n) + for (n = {}; (t = Wt.exec(h));) + n[t[1].toLowerCase() + " "] = ( + n[t[1].toLowerCase() + " "] || [] + ).concat(t[2]); + t = n[e.toLowerCase() + " "]; + } + return null == t ? null : t.join(", "); + }, + getAllResponseHeaders: function () { + return p ? h : null; + }, + setRequestHeader: function (e, t) { + return ( + null == p && + ((e = s[e.toLowerCase()] = s[e.toLowerCase()] || e), + (o[e] = t)), + this + ); + }, + overrideMimeType: function (e) { + return null == p && (g.mimeType = e), this; + }, + statusCode: function (e) { + var t; + if (e) + if (p) x.always(e[x.status]); + else for (t in e) w[t] = [w[t], e[t]]; + return this; + }, + abort: function (e) { + var t = e || l; + return c && c.abort(t), u(0, t), this; + }, + }; + if ( + (b.promise(x), + (g.url = ((e || g.url || At.href) + "").replace( + Bt, + At.protocol + "//", + )), + (g.type = t.method || t.type || g.method || g.type), + (g.dataTypes = (g.dataType || "*").toLowerCase().match(P) || [""]), + null == g.crossDomain) + ) { + i = k.createElement("a"); + try { + (i.href = g.url), + (i.href = i.href), + (g.crossDomain = + Qt.protocol + "//" + Qt.host != i.protocol + "//" + i.host); + } catch (e) { + g.crossDomain = !0; + } + } + if ( + (g.data && + g.processData && + "string" != typeof g.data && + (g.data = C.param(g.data, g.traditional)), + Zt($t, g, t, x), + p) + ) + return x; + for (r in ((m = C.event && g.global) && + 0 == C.active++ && + C.event.trigger("ajaxStart"), + (g.type = g.type.toUpperCase()), + (g.hasContent = !qt.test(g.type)), + (d = g.url.replace(Vt, "")), + g.hasContent + ? g.data && + g.processData && + 0 === + (g.contentType || "").indexOf( + "application/x-www-form-urlencoded", + ) && + (g.data = g.data.replace(Yt, "+")) + : ((a = g.url.slice(d.length)), + g.data && + (g.processData || "string" == typeof g.data) && + ((d += (It.test(d) ? "&" : "?") + g.data), delete g.data), + !1 === g.cache && + ((d = d.replace(Ut, "$1")), + (a = (It.test(d) ? "&" : "?") + "_=" + jt.guid++ + a)), + (g.url = d + a)), + g.ifModified && + (C.lastModified[d] && + x.setRequestHeader("If-Modified-Since", C.lastModified[d]), + C.etag[d] && x.setRequestHeader("If-None-Match", C.etag[d])), + ((g.data && g.hasContent && !1 !== g.contentType) || t.contentType) && + x.setRequestHeader("Content-Type", g.contentType), + x.setRequestHeader( + "Accept", + g.dataTypes[0] && g.accepts[g.dataTypes[0]] + ? g.accepts[g.dataTypes[0]] + + ("*" !== g.dataTypes[0] ? ", " + Gt + "; q=0.01" : "") + : g.accepts["*"], + ), + g.headers)) + x.setRequestHeader(r, g.headers[r]); + if (g.beforeSend && (!1 === g.beforeSend.call(v, x, g) || p)) + return x.abort(); + if ( + ((l = "abort"), + _.add(g.complete), + x.done(g.success), + x.fail(g.error), + (c = Zt(zt, g, t, x))) + ) { + if (((x.readyState = 1), m && y.trigger("ajaxSend", [x, g]), p)) + return x; + g.async && + 0 < g.timeout && + (f = D.setTimeout(function () { + x.abort("timeout"); + }, g.timeout)); + try { + (p = !1), c.send(o, u); + } catch (e) { + if (p) throw e; + u(-1, e); + } + } else u(-1, "No Transport"); + function u(e, t, n, i) { + var r, + a, + o, + s, + l, + u = t; + p || + ((p = !0), + f && D.clearTimeout(f), + (c = void 0), + (h = i || ""), + (x.readyState = 0 < e ? 4 : 0), + (r = (200 <= e && e < 300) || 304 === e), + n && + (s = (function (e, t, n) { + for ( + var i, r, a, o, s = e.contents, l = e.dataTypes; + "*" === l[0]; + + ) + l.shift(), + void 0 === i && + (i = e.mimeType || t.getResponseHeader("Content-Type")); + if (i) + for (r in s) + if (s[r] && s[r].test(i)) { + l.unshift(r); + break; + } + if (l[0] in n) a = l[0]; + else { + for (r in n) { + if (!l[0] || e.converters[r + " " + l[0]]) { + a = r; + break; + } + o = o || r; + } + a = a || o; + } + if (a) return a !== l[0] && l.unshift(a), n[a]; + })(g, x, n)), + !r && + -1 < C.inArray("script", g.dataTypes) && + (g.converters["text script"] = function () { }), + (s = (function (e, t, n, i) { + var r, + a, + o, + s, + l, + u = {}, + c = e.dataTypes.slice(); + if (c[1]) + for (o in e.converters) u[o.toLowerCase()] = e.converters[o]; + for (a = c.shift(); a;) + if ( + (e.responseFields[a] && (n[e.responseFields[a]] = t), + !l && + i && + e.dataFilter && + (t = e.dataFilter(t, e.dataType)), + (l = a), + (a = c.shift())) + ) + if ("*" === a) a = l; + else if ("*" !== l && l !== a) { + if (!(o = u[l + " " + a] || u["* " + a])) + for (r in u) + if ( + (s = r.split(" "))[1] === a && + (o = u[l + " " + s[0]] || u["* " + s[0]]) + ) { + !0 === o + ? (o = u[r]) + : !0 !== u[r] && ((a = s[0]), c.unshift(s[1])); + break; + } + if (!0 !== o) + if (o && e.throws) t = o(t); + else + try { + t = o(t); + } catch (e) { + return { + state: "parsererror", + error: o + ? e + : "No conversion from " + l + " to " + a, + }; + } + } + return { state: "success", data: t }; + })(g, s, x, r)), + r + ? (g.ifModified && + ((l = x.getResponseHeader("Last-Modified")) && + (C.lastModified[d] = l), + (l = x.getResponseHeader("etag")) && (C.etag[d] = l)), + 204 === e || "HEAD" === g.type + ? (u = "nocontent") + : 304 === e + ? (u = "notmodified") + : ((u = s.state), (a = s.data), (r = !(o = s.error)))) + : ((o = u), (!e && u) || ((u = "error"), e < 0 && (e = 0))), + (x.status = e), + (x.statusText = (t || u) + ""), + r ? b.resolveWith(v, [a, u, x]) : b.rejectWith(v, [x, u, o]), + x.statusCode(w), + (w = void 0), + m && + y.trigger(r ? "ajaxSuccess" : "ajaxError", [x, g, r ? a : o]), + _.fireWith(v, [x, u]), + m && + (y.trigger("ajaxComplete", [x, g]), + --C.active || C.event.trigger("ajaxStop"))); + } + return x; + }, + getJSON: function (e, t, n) { + return C.get(e, t, n, "json"); + }, + getScript: function (e, t) { + return C.get(e, void 0, t, "script"); + }, + }), + C.each(["get", "post"], function (e, r) { + C[r] = function (e, t, n, i) { + return ( + b(t) && ((i = i || n), (n = t), (t = void 0)), + C.ajax( + C.extend( + { url: e, type: r, dataType: i, data: t, success: n }, + C.isPlainObject(e) && e, + ), + ) + ); + }; + }), + C.ajaxPrefilter(function (e) { + var t; + for (t in e.headers) + "content-type" === t.toLowerCase() && + (e.contentType = e.headers[t] || ""); + }), + (C._evalUrl = function (e, t, n) { + return C.ajax({ + url: e, + type: "GET", + dataType: "script", + cache: !0, + async: !1, + global: !1, + converters: { "text script": function () { } }, + dataFilter: function (e) { + C.globalEval(e, t, n); + }, + }); + }), + C.fn.extend({ + wrapAll: function (e) { + var t; + return ( + this[0] && + (b(e) && (e = e.call(this[0])), + (t = C(e, this[0].ownerDocument).eq(0).clone(!0)), + this[0].parentNode && t.insertBefore(this[0]), + t + .map(function () { + for (var e = this; e.firstElementChild;) + e = e.firstElementChild; + return e; + }) + .append(this)), + this + ); + }, + wrapInner: function (n) { + return b(n) + ? this.each(function (e) { + C(this).wrapInner(n.call(this, e)); + }) + : this.each(function () { + var e = C(this), + t = e.contents(); + t.length ? t.wrapAll(n) : e.append(n); + }); + }, + wrap: function (t) { + var n = b(t); + return this.each(function (e) { + C(this).wrapAll(n ? t.call(this, e) : t); + }); + }, + unwrap: function (e) { + return ( + this.parent(e) + .not("body") + .each(function () { + C(this).replaceWith(this.childNodes); + }), + this + ); + }, + }), + (C.expr.pseudos.hidden = function (e) { + return !C.expr.pseudos.visible(e); + }), + (C.expr.pseudos.visible = function (e) { + return !!(e.offsetWidth || e.offsetHeight || e.getClientRects().length); + }), + (C.ajaxSettings.xhr = function () { + try { + return new D.XMLHttpRequest(); + } catch (e) { } + }); + var Kt = { 0: 200, 1223: 204 }, + en = C.ajaxSettings.xhr(); + (y.cors = !!en && "withCredentials" in en), + (y.ajax = en = !!en), + C.ajaxTransport(function (r) { + var a, o; + if (y.cors || (en && !r.crossDomain)) + return { + send: function (e, t) { + var n, + i = r.xhr(); + if ( + (i.open(r.type, r.url, r.async, r.username, r.password), + r.xhrFields) + ) + for (n in r.xhrFields) i[n] = r.xhrFields[n]; + for (n in (r.mimeType && + i.overrideMimeType && + i.overrideMimeType(r.mimeType), + r.crossDomain || + e["X-Requested-With"] || + (e["X-Requested-With"] = "XMLHttpRequest"), + e)) + i.setRequestHeader(n, e[n]); + (a = function (e) { + return function () { + a && + ((a = + o = + i.onload = + i.onerror = + i.onabort = + i.ontimeout = + i.onreadystatechange = + null), + "abort" === e + ? i.abort() + : "error" === e + ? "number" != typeof i.status + ? t(0, "error") + : t(i.status, i.statusText) + : t( + Kt[i.status] || i.status, + i.statusText, + "text" !== (i.responseType || "text") || + "string" != typeof i.responseText + ? { binary: i.response } + : { text: i.responseText }, + i.getAllResponseHeaders(), + )); + }; + }), + (i.onload = a()), + (o = i.onerror = i.ontimeout = a("error")), + void 0 !== i.onabort + ? (i.onabort = o) + : (i.onreadystatechange = function () { + 4 === i.readyState && + D.setTimeout(function () { + a && o(); + }); + }), + (a = a("abort")); + try { + i.send((r.hasContent && r.data) || null); + } catch (e) { + if (a) throw e; + } + }, + abort: function () { + a && a(); + }, + }; + }), + C.ajaxPrefilter(function (e) { + e.crossDomain && (e.contents.script = !1); + }), + C.ajaxSetup({ + accepts: { + script: + "text/javascript, application/javascript, application/ecmascript, application/x-ecmascript", + }, + contents: { script: /\b(?:java|ecma)script\b/ }, + converters: { + "text script": function (e) { + return C.globalEval(e), e; + }, + }, + }), + C.ajaxPrefilter("script", function (e) { + void 0 === e.cache && (e.cache = !1), e.crossDomain && (e.type = "GET"); + }), + C.ajaxTransport("script", function (n) { + var i, r; + if (n.crossDomain || n.scriptAttrs) + return { + send: function (e, t) { + (i = C("", + ); + }), + 0 < a && + ((Wra.tmpl.tag.ko_code = { open: "__.push($1 || '');" }), + (Wra.tmpl.tag.ko_with = { open: "with($1) {", close: "} " })); + }), + (E.$a.prototype = new E.ca()), + (E.$a.prototype.constructor = E.$a); + var e = new E.$a(); + 0 < e.Hd && E.gc(e), E.b("jqueryTmplTemplateEngine", E.$a); + })(); + }), + "function" == typeof define && define.amd + ? define(["exports", "require"], Yra) + : "object" == typeof exports && "object" == typeof module + ? Yra(module.exports || exports) + : Yra((Tra.ko = {})); + })(), + ("function" == typeof define && define.amd + ? define + : function (e, t) { + "undefined" != typeof module && module.exports + ? (module.exports = t(require("jquery"))) + : (window.toastr = t(window.jQuery)); + })(["jquery"], function (g) { + return ( + (D = 0), + (a = "error"), + (o = "info"), + (s = "success"), + (l = "warning"), + (e = { + clear: function (e, t) { + var n = b(); + w || v(n), + i(e, n, t) || + (function (e) { + for (var t = w.children(), n = t.length - 1; 0 <= n; n--) + i(g(t[n]), e); + })(n); + }, + remove: function (e) { + var t = b(); + w || v(t), + e && 0 === g(":focus", e).length + ? _(e) + : w.children().length && w.remove(); + }, + error: function (e, t, n) { + return r({ + type: a, + iconClass: b().iconClasses.error, + message: e, + optionsOverride: n, + title: t, + }); + }, + getContainer: v, + info: function (e, t, n) { + return r({ + type: o, + iconClass: b().iconClasses.info, + message: e, + optionsOverride: n, + title: t, + }); + }, + options: {}, + subscribe: function (e) { + t = e; + }, + success: function (e, t, n) { + return r({ + type: s, + iconClass: b().iconClasses.success, + message: e, + optionsOverride: n, + title: t, + }); + }, + version: "2.1.4", + warning: function (e, t, n) { + return r({ + type: l, + iconClass: b().iconClasses.warning, + message: e, + optionsOverride: n, + title: t, + }); + }, + }) + ); + function v(e, t) { + return ( + (e = e || b()), + (w = g("#" + e.containerId)).length || + (t && + (w = (function (e) { + return ( + (w = g("
") + .attr("id", e.containerId) + .addClass(e.positionClass)).appendTo(g(e.target)), + w + ); + })(e))), + w + ); + } + function i(e, t, n) { + var i = !(!n || !n.force) && n.force; + return !( + !e || + (!i && 0 !== g(":focus", e).length) || + (e[t.hideMethod]({ + duration: t.hideDuration, + easing: t.hideEasing, + complete: function () { + _(e); + }, + }), + 0) + ); + } + function y(e) { + t && t(e); + } + function r(t) { + var r = b(), + e = t.iconClass || r.iconClass; + if ( + (void 0 !== t.optionsOverride && + ((r = g.extend(r, t.optionsOverride)), + (e = t.optionsOverride.iconClass || e)), + !(function (e, t) { + if (e.preventDuplicates) { + if (t.message === x) return !0; + x = t.message; + } + return !1; + })(r, t)) + ) { + D++, (w = v(r, !0)); + var a = null, + o = g("
"), + n = g("
"), + i = g("
"), + s = g("
"), + l = g(r.closeHtml), + u = { intervalId: null, hideEta: null, maxHideTime: null }, + c = { + toastId: D, + state: "visible", + startTime: new Date(), + options: r, + map: t, + }; + return ( + t.iconClass && o.addClass(r.toastClass).addClass(e), + (function () { + if (t.title) { + var e = t.title; + r.escapeHtml && (e = d(t.title)), + n.append(e).addClass(r.titleClass), + o.append(n); + } + })(), + (function () { + if (t.message) { + var e = t.message; + r.escapeHtml && (e = d(t.message)), + i.append(e).addClass(r.messageClass), + o.append(i); + } + })(), + r.closeButton && + (l.addClass(r.closeClass).attr("role", "button"), o.prepend(l)), + r.progressBar && (s.addClass(r.progressClass), o.prepend(s)), + r.rtl && o.addClass("rtl"), + r.newestOnTop ? w.prepend(o) : w.append(o), + (function () { + var e = ""; + switch (t.iconClass) { + case "toast-success": + case "toast-info": + e = "polite"; + break; + default: + e = "assertive"; + } + o.attr("aria-live", e); + })(), + o.hide(), + o[r.showMethod]({ + duration: r.showDuration, + easing: r.showEasing, + complete: r.onShown, + }), + 0 < r.timeOut && + ((a = setTimeout(h, r.timeOut)), + (u.maxHideTime = parseFloat(r.timeOut)), + (u.hideEta = new Date().getTime() + u.maxHideTime), + r.progressBar && (u.intervalId = setInterval(m, 10))), + r.closeOnHover && o.hover(p, f), + !r.onclick && r.tapToDismiss && o.click(h), + r.closeButton && + l && + l.click(function (e) { + e.stopPropagation + ? e.stopPropagation() + : void 0 !== e.cancelBubble && + !0 !== e.cancelBubble && + (e.cancelBubble = !0), + r.onCloseClick && r.onCloseClick(e), + h(!0); + }), + r.onclick && + o.click(function (e) { + r.onclick(e), h(); + }), + y(c), + r.debug && console && console.log(c), + o + ); + } + function d(e) { + return ( + null == e && (e = ""), + e + .replace(/&/g, "&") + .replace(/"/g, """) + .replace(/'/g, "'") + .replace(//g, ">") + ); + } + function h(e) { + var t = e && !1 !== r.closeMethod ? r.closeMethod : r.hideMethod, + n = e && !1 !== r.closeDuration ? r.closeDuration : r.hideDuration, + i = e && !1 !== r.closeEasing ? r.closeEasing : r.hideEasing; + if (!g(":focus", o).length || e) + return ( + clearTimeout(u.intervalId), + o[t]({ + duration: n, + easing: i, + complete: function () { + _(o), + clearTimeout(a), + r.onHidden && "hidden" !== c.state && r.onHidden(), + (c.state = "hidden"), + (c.endTime = new Date()), + y(c); + }, + }) + ); + } + function f() { + (0 < r.timeOut || 0 < r.extendedTimeOut) && + ((a = setTimeout(h, r.extendedTimeOut)), + (u.maxHideTime = parseFloat(r.extendedTimeOut)), + (u.hideEta = new Date().getTime() + u.maxHideTime)); + } + function p() { + clearTimeout(a), + (u.hideEta = 0), + o + .stop(!0, !0) + [r.showMethod]({ duration: r.showDuration, easing: r.showEasing }); + } + function m() { + var e = ((u.hideEta - new Date().getTime()) / u.maxHideTime) * 100; + s.width(e + "%"); + } + } + function b() { + return g.extend( + {}, + { + tapToDismiss: !0, + toastClass: "toast", + containerId: "toast-container", + debug: !1, + showMethod: "fadeIn", + showDuration: 300, + showEasing: "swing", + onShown: void 0, + hideMethod: "fadeOut", + hideDuration: 1e3, + hideEasing: "swing", + onHidden: void 0, + closeMethod: !1, + closeDuration: !1, + closeEasing: !1, + closeOnHover: !0, + extendedTimeOut: 1e3, + iconClasses: { + error: "toast-error", + info: "toast-info", + success: "toast-success", + warning: "toast-warning", + }, + iconClass: "toast-info", + positionClass: "toast-top-right", + timeOut: 5e3, + titleClass: "toast-title", + messageClass: "toast-message", + escapeHtml: !1, + target: "body", + closeHtml: '', + closeClass: "toast-close-button", + newestOnTop: !0, + preventDuplicates: !1, + progressBar: !1, + progressClass: "toast-progress", + rtl: !1, + }, + e.options, + ); + } + function _(e) { + (w = w || v()), + e.is(":visible") || + (e.remove(), + (e = null), + 0 === w.children().length && (w.remove(), (x = void 0))); + } + var w, t, x, D, a, o, s, l, e; + }), + (function (e, t) { + "object" == typeof exports && "undefined" != typeof module + ? (module.exports = t()) + : "function" == typeof define && define.amd + ? define(t) + : (e.moment = t()); + })(this, function () { + "use strict"; + var e, r; + function b() { + return e.apply(null, arguments); + } + function c(e) { + return ( + e instanceof Array || + "[object Array]" === Object.prototype.toString.call(e) + ); + } + function d(e) { + return ( + null != e && "[object Object]" === Object.prototype.toString.call(e) + ); + } + function _(e, t) { + return Object.prototype.hasOwnProperty.call(e, t); + } + function s(e) { + if (Object.getOwnPropertyNames) + return 0 === Object.getOwnPropertyNames(e).length; + var t; + for (t in e) if (_(e, t)) return; + return 1; + } + function h(e) { + return void 0 === e; + } + function f(e) { + return ( + "number" == typeof e || + "[object Number]" === Object.prototype.toString.call(e) + ); + } + function p(e) { + return ( + e instanceof Date || + "[object Date]" === Object.prototype.toString.call(e) + ); + } + function m(e, t) { + for (var n = [], i = 0; i < e.length; ++i) n.push(t(e[i], i)); + return n; + } + function g(e, t) { + for (var n in t) _(t, n) && (e[n] = t[n]); + return ( + _(t, "toString") && (e.toString = t.toString), + _(t, "valueOf") && (e.valueOf = t.valueOf), + e + ); + } + function v(e, t, n, i) { + return Ct(e, t, n, i, !0).utc(); + } + function w(e) { + return ( + null == e._pf && + (e._pf = { + empty: !1, + unusedTokens: [], + unusedInput: [], + overflow: -2, + charsLeftOver: 0, + nullInput: !1, + invalidEra: null, + invalidMonth: null, + invalidFormat: !1, + userInvalidated: !1, + iso: !1, + parsedDateParts: [], + era: null, + meridiem: null, + rfc2822: !1, + weekdayMismatch: !1, + }), + e._pf + ); + } + function y(e) { + if (null == e._isValid) { + var t = w(e), + n = r.call(t.parsedDateParts, function (e) { + return null != e; + }), + i = + !isNaN(e._d.getTime()) && + t.overflow < 0 && + !t.empty && + !t.invalidEra && + !t.invalidMonth && + !t.invalidWeekday && + !t.weekdayMismatch && + !t.nullInput && + !t.invalidFormat && + !t.userInvalidated && + (!t.meridiem || (t.meridiem && n)); + if ( + (e._strict && + (i = + i && + 0 === t.charsLeftOver && + 0 === t.unusedTokens.length && + void 0 === t.bigHour), + null != Object.isFrozen && Object.isFrozen(e)) + ) + return i; + e._isValid = i; + } + return e._isValid; + } + function x(e) { + var t = v(NaN); + return null != e ? g(w(t), e) : (w(t).userInvalidated = !0), t; + } + r = Array.prototype.some + ? Array.prototype.some + : function (e) { + for (var t = Object(this), n = t.length >>> 0, i = 0; i < n; i++) + if (i in t && e.call(this, t[i], i, t)) return !0; + return !1; + }; + var a = (b.momentProperties = []), + t = !1; + function D(e, t) { + var n, i, r; + if ( + (h(t._isAMomentObject) || (e._isAMomentObject = t._isAMomentObject), + h(t._i) || (e._i = t._i), + h(t._f) || (e._f = t._f), + h(t._l) || (e._l = t._l), + h(t._strict) || (e._strict = t._strict), + h(t._tzm) || (e._tzm = t._tzm), + h(t._isUTC) || (e._isUTC = t._isUTC), + h(t._offset) || (e._offset = t._offset), + h(t._pf) || (e._pf = w(t)), + h(t._locale) || (e._locale = t._locale), + 0 < a.length) + ) + for (n = 0; n < a.length; n++) h((r = t[(i = a[n])])) || (e[i] = r); + return e; + } + function k(e) { + D(this, e), + (this._d = new Date(null != e._d ? e._d.getTime() : NaN)), + this.isValid() || (this._d = new Date(NaN)), + !1 === t && ((t = !0), b.updateOffset(this), (t = !1)); + } + function C(e) { + return e instanceof k || (null != e && null != e._isAMomentObject); + } + function l(e) { + !1 === b.suppressDeprecationWarnings && + "undefined" != typeof console && + console.warn && + console.warn("Deprecation warning: " + e); + } + function n(r, a) { + var o = !0; + return g(function () { + if ( + (null != b.deprecationHandler && b.deprecationHandler(null, r), o) + ) { + for (var e, t, n = [], i = 0; i < arguments.length; i++) { + if (((e = ""), "object" == typeof arguments[i])) { + for (t in ((e += "\n[" + i + "] "), arguments[0])) + _(arguments[0], t) && (e += t + ": " + arguments[0][t] + ", "); + e = e.slice(0, -2); + } else e = arguments[i]; + n.push(e); + } + l( + r + + "\nArguments: " + + Array.prototype.slice.call(n).join("") + + "\n" + + new Error().stack, + ), + (o = !1); + } + return a.apply(this, arguments); + }, a); + } + var i, + o = {}; + function u(e, t) { + null != b.deprecationHandler && b.deprecationHandler(e, t), + o[e] || (l(t), (o[e] = !0)); + } + function T(e) { + return ( + ("undefined" != typeof Function && e instanceof Function) || + "[object Function]" === Object.prototype.toString.call(e) + ); + } + function S(e, t) { + var n, + i = g({}, e); + for (n in t) + _(t, n) && + (d(e[n]) && d(t[n]) + ? ((i[n] = {}), g(i[n], e[n]), g(i[n], t[n])) + : null != t[n] + ? (i[n] = t[n]) + : delete i[n]); + for (n in e) _(e, n) && !_(t, n) && d(e[n]) && (i[n] = g({}, i[n])); + return i; + } + function E(e) { + null != e && this.set(e); + } + function M(e, t, n) { + var i = "" + Math.abs(e), + r = t - i.length; + return ( + (0 <= e ? (n ? "+" : "") : "-") + + Math.pow(10, Math.max(0, r)).toString().substr(1) + + i + ); + } + (b.suppressDeprecationWarnings = !1), + (b.deprecationHandler = null), + (i = Object.keys + ? Object.keys + : function (e) { + var t, + n = []; + for (t in e) _(e, t) && n.push(t); + return n; + }); + var N = + /(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g, + O = /(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, + A = {}, + j = {}; + function I(e, t, n, i) { + var r = + "string" == typeof i + ? function () { + return this[i](); + } + : i; + e && (j[e] = r), + t && + (j[t[0]] = function () { + return M(r.apply(this, arguments), t[1], t[2]); + }), + n && + (j[n] = function () { + return this.localeData().ordinal(r.apply(this, arguments), e); + }); + } + function P(e, t) { + return e.isValid() + ? ((t = L(t, e.localeData())), + (A[t] = + A[t] || + (function (i) { + for (var e, r = i.match(N), t = 0, a = r.length; t < a; t++) + j[r[t]] + ? (r[t] = j[r[t]]) + : (r[t] = (e = r[t]).match(/\[[\s\S]/) + ? e.replace(/^\[|\]$/g, "") + : e.replace(/\\/g, "")); + return function (e) { + for (var t = "", n = 0; n < a; n++) + t += T(r[n]) ? r[n].call(e, i) : r[n]; + return t; + }; + })(t)), + A[t](e)) + : e.localeData().invalidDate(); + } + function L(e, t) { + var n = 5; + function i(e) { + return t.longDateFormat(e) || e; + } + for (O.lastIndex = 0; 0 <= n && O.test(e);) + (e = e.replace(O, i)), (O.lastIndex = 0), --n; + return e; + } + var F = {}; + function R(e, t) { + var n = e.toLowerCase(); + F[n] = F[n + "s"] = F[t] = e; + } + function H(e) { + return "string" == typeof e ? F[e] || F[e.toLowerCase()] : void 0; + } + function Y(e) { + var t, + n, + i = {}; + for (n in e) _(e, n) && (t = H(n)) && (i[t] = e[n]); + return i; + } + var V = {}; + function U(e, t) { + V[e] = t; + } + function W(e) { + return (e % 4 == 0 && e % 100 != 0) || e % 400 == 0; + } + function q(e) { + return e < 0 ? Math.ceil(e) || 0 : Math.floor(e); + } + function B(e) { + var t = +e, + n = 0; + return 0 != t && isFinite(t) && (n = q(t)), n; + } + function $(t, n) { + return function (e) { + return null != e + ? (G(this, t, e), b.updateOffset(this, n), this) + : z(this, t); + }; + } + function z(e, t) { + return e.isValid() ? e._d["get" + (e._isUTC ? "UTC" : "") + t]() : NaN; + } + function G(e, t, n) { + e.isValid() && + !isNaN(n) && + ("FullYear" === t && W(e.year()) && 1 === e.month() && 29 === e.date() + ? ((n = B(n)), + e._d["set" + (e._isUTC ? "UTC" : "") + t]( + n, + e.month(), + Se(n, e.month()), + )) + : e._d["set" + (e._isUTC ? "UTC" : "") + t](n)); + } + var Q, + J = /\d/, + Z = /\d\d/, + X = /\d{3}/, + K = /\d{4}/, + ee = /[+-]?\d{6}/, + te = /\d\d?/, + ne = /\d\d\d\d?/, + ie = /\d\d\d\d\d\d?/, + re = /\d{1,3}/, + ae = /\d{1,4}/, + oe = /[+-]?\d{1,6}/, + se = /\d+/, + le = /[+-]?\d+/, + ue = /Z|[+-]\d\d:?\d\d/gi, + ce = /Z|[+-]\d\d(?::?\d\d)?/gi, + de = + /[0-9]{0,256}['a-z -׿܀-퟿豈-﷏ﷰ-'0-￯]{1,256}|[؀-ۿ\/]{1,256}(\s*?[؀-ۿ]{1,256}){1,2}/i; + function he(e, n, i) { + Q[e] = T(n) + ? n + : function (e, t) { + return e && i ? i : n; + }; + } + function fe(e) { + return e.replace(/[-\/\\^$*+?.()|[\]{}]/g, "\\$&"); + } + Q = {}; + var pe = {}; + function me(e, n) { + var t, + i = n; + for ( + "string" == typeof e && (e = [e]), + f(n) && + (i = function (e, t) { + t[n] = B(e); + }), + t = 0; + t < e.length; + t++ + ) + pe[e[t]] = i; + } + function ge(e, r) { + me(e, function (e, t, n, i) { + (n._w = n._w || {}), r(e, n._w, n, i); + }); + } + var ve, + ye = 0, + be = 1, + _e = 2, + we = 3, + xe = 4, + De = 5, + ke = 6, + Ce = 7, + Te = 8; + function Se(e, t) { + if (isNaN(e) || isNaN(t)) return NaN; + var n = ((t % 12) + 12) % 12; + return ( + (e += (t - n) / 12), 1 == n ? (W(e) ? 29 : 28) : 31 - ((n % 7) % 2) + ); + } + (ve = Array.prototype.indexOf + ? Array.prototype.indexOf + : function (e) { + for (var t = 0; t < this.length; ++t) if (this[t] === e) return t; + return -1; + }), + I("M", ["MM", 2], "Mo", function () { + return this.month() + 1; + }), + I("MMM", 0, 0, function (e) { + return this.localeData().monthsShort(this, e); + }), + I("MMMM", 0, 0, function (e) { + return this.localeData().months(this, e); + }), + R("month", "M"), + U("month", 8), + he("M", te), + he("MM", te, Z), + he("MMM", function (e, t) { + return t.monthsShortRegex(e); + }), + he("MMMM", function (e, t) { + return t.monthsRegex(e); + }), + me(["M", "MM"], function (e, t) { + t[be] = B(e) - 1; + }), + me(["MMM", "MMMM"], function (e, t, n, i) { + var r = n._locale.monthsParse(e, i, n._strict); + null != r ? (t[be] = r) : (w(n).invalidMonth = e); + }); + var Ee = + "January_February_March_April_May_June_July_August_September_October_November_December".split( + "_", + ), + Me = "Jan_Feb_Mar_Apr_May_Jun_Jul_Aug_Sep_Oct_Nov_Dec".split("_"), + Ne = /D[oD]?(\[[^\[\]]*\]|\s)+MMMM?/, + Oe = de, + Ae = de; + function je(e, t) { + var n; + if (!e.isValid()) return e; + if ("string" == typeof t) + if (/^\d+$/.test(t)) t = B(t); + else if (!f((t = e.localeData().monthsParse(t)))) return e; + return ( + (n = Math.min(e.date(), Se(e.year(), t))), + e._d["set" + (e._isUTC ? "UTC" : "") + "Month"](t, n), + e + ); + } + function Ie(e) { + return null != e + ? (je(this, e), b.updateOffset(this, !0), this) + : z(this, "Month"); + } + function Pe() { + function e(e, t) { + return t.length - e.length; + } + for (var t, n = [], i = [], r = [], a = 0; a < 12; a++) + (t = v([2e3, a])), + n.push(this.monthsShort(t, "")), + i.push(this.months(t, "")), + r.push(this.months(t, "")), + r.push(this.monthsShort(t, "")); + for (n.sort(e), i.sort(e), r.sort(e), a = 0; a < 12; a++) + (n[a] = fe(n[a])), (i[a] = fe(i[a])); + for (a = 0; a < 24; a++) r[a] = fe(r[a]); + (this._monthsRegex = new RegExp("^(" + r.join("|") + ")", "i")), + (this._monthsShortRegex = this._monthsRegex), + (this._monthsStrictRegex = new RegExp("^(" + i.join("|") + ")", "i")), + (this._monthsShortStrictRegex = new RegExp( + "^(" + n.join("|") + ")", + "i", + )); + } + function Le(e) { + return W(e) ? 366 : 365; + } + I("Y", 0, 0, function () { + var e = this.year(); + return e <= 9999 ? M(e, 4) : "+" + e; + }), + I(0, ["YY", 2], 0, function () { + return this.year() % 100; + }), + I(0, ["YYYY", 4], 0, "year"), + I(0, ["YYYYY", 5], 0, "year"), + I(0, ["YYYYYY", 6, !0], 0, "year"), + R("year", "y"), + U("year", 1), + he("Y", le), + he("YY", te, Z), + he("YYYY", ae, K), + he("YYYYY", oe, ee), + he("YYYYYY", oe, ee), + me(["YYYYY", "YYYYYY"], ye), + me("YYYY", function (e, t) { + t[ye] = 2 === e.length ? b.parseTwoDigitYear(e) : B(e); + }), + me("YY", function (e, t) { + t[ye] = b.parseTwoDigitYear(e); + }), + me("Y", function (e, t) { + t[ye] = parseInt(e, 10); + }), + (b.parseTwoDigitYear = function (e) { + return B(e) + (68 < B(e) ? 1900 : 2e3); + }); + var Fe = $("FullYear", !0); + function Re(e) { + var t, n; + return ( + e < 100 && 0 <= e + ? (((n = Array.prototype.slice.call(arguments))[0] = e + 400), + (t = new Date(Date.UTC.apply(null, n))), + isFinite(t.getUTCFullYear()) && t.setUTCFullYear(e)) + : (t = new Date(Date.UTC.apply(null, arguments))), + t + ); + } + function He(e, t, n) { + var i = 7 + t - n; + return i - ((7 + Re(e, 0, i).getUTCDay() - t) % 7) - 1; + } + function Ye(e, t, n, i, r) { + var a, + o = 1 + 7 * (t - 1) + ((7 + n - i) % 7) + He(e, i, r), + s = + o <= 0 + ? Le((a = e - 1)) + o + : o > Le(e) + ? ((a = e + 1), o - Le(e)) + : ((a = e), o); + return { year: a, dayOfYear: s }; + } + function Ve(e, t, n) { + var i, + r, + a = He(e.year(), t, n), + o = Math.floor((e.dayOfYear() - a - 1) / 7) + 1; + return ( + o < 1 + ? (i = o + Ue((r = e.year() - 1), t, n)) + : o > Ue(e.year(), t, n) + ? ((i = o - Ue(e.year(), t, n)), (r = e.year() + 1)) + : ((r = e.year()), (i = o)), + { week: i, year: r } + ); + } + function Ue(e, t, n) { + var i = He(e, t, n), + r = He(e + 1, t, n); + return (Le(e) - i + r) / 7; + } + function We(e, t) { + return e.slice(t, 7).concat(e.slice(0, t)); + } + I("w", ["ww", 2], "wo", "week"), + I("W", ["WW", 2], "Wo", "isoWeek"), + R("week", "w"), + R("isoWeek", "W"), + U("week", 5), + U("isoWeek", 5), + he("w", te), + he("ww", te, Z), + he("W", te), + he("WW", te, Z), + ge(["w", "ww", "W", "WW"], function (e, t, n, i) { + t[i.substr(0, 1)] = B(e); + }), + I("d", 0, "do", "day"), + I("dd", 0, 0, function (e) { + return this.localeData().weekdaysMin(this, e); + }), + I("ddd", 0, 0, function (e) { + return this.localeData().weekdaysShort(this, e); + }), + I("dddd", 0, 0, function (e) { + return this.localeData().weekdays(this, e); + }), + I("e", 0, 0, "weekday"), + I("E", 0, 0, "isoWeekday"), + R("day", "d"), + R("weekday", "e"), + R("isoWeekday", "E"), + U("day", 11), + U("weekday", 11), + U("isoWeekday", 11), + he("d", te), + he("e", te), + he("E", te), + he("dd", function (e, t) { + return t.weekdaysMinRegex(e); + }), + he("ddd", function (e, t) { + return t.weekdaysShortRegex(e); + }), + he("dddd", function (e, t) { + return t.weekdaysRegex(e); + }), + ge(["dd", "ddd", "dddd"], function (e, t, n, i) { + var r = n._locale.weekdaysParse(e, i, n._strict); + null != r ? (t.d = r) : (w(n).invalidWeekday = e); + }), + ge(["d", "e", "E"], function (e, t, n, i) { + t[i] = B(e); + }); + var qe = "Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split( + "_", + ), + Be = "Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"), + $e = "Su_Mo_Tu_We_Th_Fr_Sa".split("_"), + ze = de, + Ge = de, + Qe = de; + function Je() { + function e(e, t) { + return t.length - e.length; + } + for (var t, n, i, r, a = [], o = [], s = [], l = [], u = 0; u < 7; u++) + (t = v([2e3, 1]).day(u)), + (n = fe(this.weekdaysMin(t, ""))), + (i = fe(this.weekdaysShort(t, ""))), + (r = fe(this.weekdays(t, ""))), + a.push(n), + o.push(i), + s.push(r), + l.push(n), + l.push(i), + l.push(r); + a.sort(e), + o.sort(e), + s.sort(e), + l.sort(e), + (this._weekdaysRegex = new RegExp("^(" + l.join("|") + ")", "i")), + (this._weekdaysShortRegex = this._weekdaysRegex), + (this._weekdaysMinRegex = this._weekdaysRegex), + (this._weekdaysStrictRegex = new RegExp("^(" + s.join("|") + ")", "i")), + (this._weekdaysShortStrictRegex = new RegExp( + "^(" + o.join("|") + ")", + "i", + )), + (this._weekdaysMinStrictRegex = new RegExp( + "^(" + a.join("|") + ")", + "i", + )); + } + function Ze() { + return this.hours() % 12 || 12; + } + function Xe(e, t) { + I(e, 0, 0, function () { + return this.localeData().meridiem(this.hours(), this.minutes(), t); + }); + } + function Ke(e, t) { + return t._meridiemParse; + } + I("H", ["HH", 2], 0, "hour"), + I("h", ["hh", 2], 0, Ze), + I("k", ["kk", 2], 0, function () { + return this.hours() || 24; + }), + I("hmm", 0, 0, function () { + return "" + Ze.apply(this) + M(this.minutes(), 2); + }), + I("hmmss", 0, 0, function () { + return ( + "" + Ze.apply(this) + M(this.minutes(), 2) + M(this.seconds(), 2) + ); + }), + I("Hmm", 0, 0, function () { + return "" + this.hours() + M(this.minutes(), 2); + }), + I("Hmmss", 0, 0, function () { + return "" + this.hours() + M(this.minutes(), 2) + M(this.seconds(), 2); + }), + Xe("a", !0), + Xe("A", !1), + R("hour", "h"), + U("hour", 13), + he("a", Ke), + he("A", Ke), + he("H", te), + he("h", te), + he("k", te), + he("HH", te, Z), + he("hh", te, Z), + he("kk", te, Z), + he("hmm", ne), + he("hmmss", ie), + he("Hmm", ne), + he("Hmmss", ie), + me(["H", "HH"], we), + me(["k", "kk"], function (e, t, n) { + var i = B(e); + t[we] = 24 === i ? 0 : i; + }), + me(["a", "A"], function (e, t, n) { + (n._isPm = n._locale.isPM(e)), (n._meridiem = e); + }), + me(["h", "hh"], function (e, t, n) { + (t[we] = B(e)), (w(n).bigHour = !0); + }), + me("hmm", function (e, t, n) { + var i = e.length - 2; + (t[we] = B(e.substr(0, i))), + (t[xe] = B(e.substr(i))), + (w(n).bigHour = !0); + }), + me("hmmss", function (e, t, n) { + var i = e.length - 4, + r = e.length - 2; + (t[we] = B(e.substr(0, i))), + (t[xe] = B(e.substr(i, 2))), + (t[De] = B(e.substr(r))), + (w(n).bigHour = !0); + }), + me("Hmm", function (e, t, n) { + var i = e.length - 2; + (t[we] = B(e.substr(0, i))), (t[xe] = B(e.substr(i))); + }), + me("Hmmss", function (e, t, n) { + var i = e.length - 4, + r = e.length - 2; + (t[we] = B(e.substr(0, i))), + (t[xe] = B(e.substr(i, 2))), + (t[De] = B(e.substr(r))); + }); + var et, + tt = $("Hours", !0), + nt = { + calendar: { + sameDay: "[Today at] LT", + nextDay: "[Tomorrow at] LT", + nextWeek: "dddd [at] LT", + lastDay: "[Yesterday at] LT", + lastWeek: "[Last] dddd [at] LT", + sameElse: "L", + }, + longDateFormat: { + 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", + }, + invalidDate: "Invalid date", + ordinal: "%d", + dayOfMonthOrdinalParse: /\d{1,2}/, + 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", + w: "a week", + ww: "%d weeks", + M: "a month", + MM: "%d months", + y: "a year", + yy: "%d years", + }, + months: Ee, + monthsShort: Me, + week: { dow: 0, doy: 6 }, + weekdays: qe, + weekdaysMin: $e, + weekdaysShort: Be, + meridiemParse: /[ap]\.?m?\.?/i, + }, + it = {}, + rt = {}; + function at(e) { + return e ? e.toLowerCase().replace("_", "-") : e; + } + function ot(e) { + var t = null; + if ( + void 0 === it[e] && + "undefined" != typeof module && + module && + module.exports + ) + try { + (t = et._abbr), require("./locale/" + e), st(t); + } catch (t) { + it[e] = null; + } + return it[e]; + } + function st(e, t) { + var n; + return ( + e && + ((n = h(t) ? ut(e) : lt(e, t)) + ? (et = n) + : "undefined" != typeof console && + console.warn && + console.warn( + "Locale " + e + " not found. Did you forget to load it?", + )), + et._abbr + ); + } + function lt(e, t) { + if (null === t) return delete it[e], null; + var n, + i = nt; + if (((t.abbr = e), null != it[e])) + u( + "defineLocaleOverride", + "use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info.", + ), + (i = it[e]._config); + else if (null != t.parentLocale) + if (null != it[t.parentLocale]) i = it[t.parentLocale]._config; + else { + if (null == (n = ot(t.parentLocale))) + return ( + rt[t.parentLocale] || (rt[t.parentLocale] = []), + rt[t.parentLocale].push({ name: e, config: t }), + null + ); + i = n._config; + } + return ( + (it[e] = new E(S(i, t))), + rt[e] && + rt[e].forEach(function (e) { + lt(e.name, e.config); + }), + st(e), + it[e] + ); + } + function ut(e) { + var t; + if ((e && e._locale && e._locale._abbr && (e = e._locale._abbr), !e)) + return et; + if (!c(e)) { + if ((t = ot(e))) return t; + e = [e]; + } + return (function (e) { + for (var t, n, i, r, a = 0; a < e.length;) { + for ( + t = (r = at(e[a]).split("-")).length, + n = (n = at(e[a + 1])) ? n.split("-") : null; + 0 < t; + + ) { + if ((i = ot(r.slice(0, t).join("-")))) return i; + if ( + n && + n.length >= t && + (function (e, t) { + for (var n = Math.min(e.length, t.length), i = 0; i < n; i += 1) + if (e[i] !== t[i]) return i; + return n; + })(r, n) >= + t - 1 + ) + break; + t--; + } + a++; + } + return et; + })(e); + } + function ct(e) { + var t, + n = e._a; + return ( + n && + -2 === w(e).overflow && + ((t = + n[be] < 0 || 11 < n[be] + ? be + : n[_e] < 1 || n[_e] > Se(n[ye], n[be]) + ? _e + : n[we] < 0 || + 24 < n[we] || + (24 === n[we] && + (0 !== n[xe] || 0 !== n[De] || 0 !== n[ke])) + ? we + : n[xe] < 0 || 59 < n[xe] + ? xe + : n[De] < 0 || 59 < n[De] + ? De + : n[ke] < 0 || 999 < n[ke] + ? ke + : -1), + w(e)._overflowDayOfYear && (t < ye || _e < t) && (t = _e), + w(e)._overflowWeeks && -1 === t && (t = Ce), + w(e)._overflowWeekday && -1 === t && (t = Te), + (w(e).overflow = t)), + e + ); + } + var dt = + /^\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)?)?$/, + ht = + /^\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)?)?$/, + ft = /Z|[+-]\d\d(?::?\d\d)?/, + pt = [ + ["YYYYYY-MM-DD", /[+-]\d{6}-\d\d-\d\d/], + ["YYYY-MM-DD", /\d{4}-\d\d-\d\d/], + ["GGGG-[W]WW-E", /\d{4}-W\d\d-\d/], + ["GGGG-[W]WW", /\d{4}-W\d\d/, !1], + ["YYYY-DDD", /\d{4}-\d{3}/], + ["YYYY-MM", /\d{4}-\d\d/, !1], + ["YYYYYYMMDD", /[+-]\d{10}/], + ["YYYYMMDD", /\d{8}/], + ["GGGG[W]WWE", /\d{4}W\d{3}/], + ["GGGG[W]WW", /\d{4}W\d{2}/, !1], + ["YYYYDDD", /\d{7}/], + ["YYYYMM", /\d{6}/, !1], + ["YYYY", /\d{4}/, !1], + ], + mt = [ + ["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/], + ], + gt = /^\/?Date\((-?\d+)/i, + vt = + /^(?:(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}))$/, + yt = { + UT: 0, + GMT: 0, + EDT: -240, + EST: -300, + CDT: -300, + CST: -360, + MDT: -360, + MST: -420, + PDT: -420, + PST: -480, + }; + function bt(e) { + var t, + n, + i, + r, + a, + o, + s = e._i, + l = dt.exec(s) || ht.exec(s); + if (l) { + for (w(e).iso = !0, t = 0, n = pt.length; t < n; t++) + if (pt[t][1].exec(l[1])) { + (r = pt[t][0]), (i = !1 !== pt[t][2]); + break; + } + if (null == r) return void (e._isValid = !1); + if (l[3]) { + for (t = 0, n = mt.length; t < n; t++) + if (mt[t][1].exec(l[3])) { + a = (l[2] || " ") + mt[t][0]; + break; + } + if (null == a) return void (e._isValid = !1); + } + if (!i && null != a) return void (e._isValid = !1); + if (l[4]) { + if (!ft.exec(l[4])) return void (e._isValid = !1); + o = "Z"; + } + (e._f = r + (a || "") + (o || "")), Dt(e); + } else e._isValid = !1; + } + function _t(e) { + var t, + n, + i, + r, + a = vt.exec( + e._i + .replace(/\([^)]*\)|[\n\t]/g, " ") + .replace(/(\s\s+)/g, " ") + .replace(/^\s\s*/, "") + .replace(/\s\s*$/, ""), + ); + if (a) { + if ( + ((i = t = + (function (e, t, n, i, r, a) { + var o, + s = [ + ((o = parseInt(e, 10)), + o <= 49 ? 2e3 + o : o <= 999 ? 1900 + o : o), + Me.indexOf(t), + parseInt(n, 10), + parseInt(i, 10), + parseInt(r, 10), + ]; + return a && s.push(parseInt(a, 10)), s; + })(a[4], a[3], a[2], a[5], a[6], a[7])), + (r = e), + (n = a[1]) && + Be.indexOf(n) !== new Date(i[0], i[1], i[2]).getDay() && + ((w(r).weekdayMismatch = !0), !void (r._isValid = !1))) + ) + return; + (e._a = t), + (e._tzm = (function (e, t, n) { + if (e) return yt[e]; + if (t) return 0; + var i = parseInt(n, 10), + r = i % 100; + return ((i - r) / 100) * 60 + r; + })(a[8], a[9], a[10])), + (e._d = Re.apply(null, e._a)), + e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm), + (w(e).rfc2822 = !0); + } else e._isValid = !1; + } + function wt(e, t, n) { + return null != e ? e : null != t ? t : n; + } + function xt(e) { + var t, + n, + i, + r, + a, + o, + s, + l, + u, + c, + d, + h, + f, + p, + m, + g, + v, + y = []; + if (!e._d) { + for ( + o = e, + s = new Date(b.now()), + i = o._useUTC + ? [s.getUTCFullYear(), s.getUTCMonth(), s.getUTCDate()] + : [s.getFullYear(), s.getMonth(), s.getDate()], + e._w && + null == e._a[_e] && + null == e._a[be] && + ((v = g = m = p = f = h = d = c = u = void 0), + null != (u = (l = e)._w).GG || null != u.W || null != u.E + ? ((f = 1), + (p = 4), + (c = wt(u.GG, l._a[ye], Ve(Tt(), 1, 4).year)), + (d = wt(u.W, 1)), + ((h = wt(u.E, 1)) < 1 || 7 < h) && (g = !0)) + : ((f = l._locale._week.dow), + (p = l._locale._week.doy), + (v = Ve(Tt(), f, p)), + (c = wt(u.gg, l._a[ye], v.year)), + (d = wt(u.w, v.week)), + null != u.d + ? ((h = u.d) < 0 || 6 < h) && (g = !0) + : null != u.e + ? ((h = u.e + f), (u.e < 0 || 6 < u.e) && (g = !0)) + : (h = f)), + d < 1 || d > Ue(c, f, p) + ? (w(l)._overflowWeeks = !0) + : null != g + ? (w(l)._overflowWeekday = !0) + : ((m = Ye(c, d, h, f, p)), + (l._a[ye] = m.year), + (l._dayOfYear = m.dayOfYear))), + null != e._dayOfYear && + ((a = wt(e._a[ye], i[ye])), + (e._dayOfYear > Le(a) || 0 === e._dayOfYear) && + (w(e)._overflowDayOfYear = !0), + (n = Re(a, 0, e._dayOfYear)), + (e._a[be] = n.getUTCMonth()), + (e._a[_e] = n.getUTCDate())), + t = 0; + t < 3 && null == e._a[t]; + ++t + ) + e._a[t] = y[t] = i[t]; + for (; t < 7; t++) + e._a[t] = y[t] = null == e._a[t] ? (2 === t ? 1 : 0) : e._a[t]; + 24 === e._a[we] && + 0 === e._a[xe] && + 0 === e._a[De] && + 0 === e._a[ke] && + ((e._nextDay = !0), (e._a[we] = 0)), + (e._d = ( + e._useUTC + ? Re + : function (e, t, n, i, r, a, o) { + var s; + return ( + e < 100 && 0 <= e + ? ((s = new Date(e + 400, t, n, i, r, a, o)), + isFinite(s.getFullYear()) && s.setFullYear(e)) + : (s = new Date(e, t, n, i, r, a, o)), + s + ); + } + ).apply(null, y)), + (r = e._useUTC ? e._d.getUTCDay() : e._d.getDay()), + null != e._tzm && e._d.setUTCMinutes(e._d.getUTCMinutes() - e._tzm), + e._nextDay && (e._a[we] = 24), + e._w && + void 0 !== e._w.d && + e._w.d !== r && + (w(e).weekdayMismatch = !0); + } + } + function Dt(e) { + if (e._f !== b.ISO_8601) + if (e._f !== b.RFC_2822) { + (e._a = []), (w(e).empty = !0); + for ( + var t, + n, + i, + r, + a, + o, + s, + l = "" + e._i, + u = l.length, + c = 0, + d = L(e._f, e._locale).match(N) || [], + h = 0; + h < d.length; + h++ + ) + (n = d[h]), + (t = (l.match( + ((y = e), + _(Q, (v = n)) + ? Q[v](y._strict, y._locale) + : new RegExp( + fe( + v + .replace("\\", "") + .replace( + /\\(\[)|\\(\])|\[([^\]\[]*)\]|\\(.)/g, + function (e, t, n, i, r) { + return t || n || i || r; + }, + ), + ), + )), + ) || [])[0]) && + (0 < (i = l.substr(0, l.indexOf(t))).length && + w(e).unusedInput.push(i), + (l = l.slice(l.indexOf(t) + t.length)), + (c += t.length)), + j[n] + ? (t ? (w(e).empty = !1) : w(e).unusedTokens.push(n), + (a = n), + (s = e), + null != (o = t) && _(pe, a) && pe[a](o, s._a, s, a)) + : e._strict && !t && w(e).unusedTokens.push(n); + (w(e).charsLeftOver = u - c), + 0 < l.length && w(e).unusedInput.push(l), + e._a[we] <= 12 && + !0 === w(e).bigHour && + 0 < e._a[we] && + (w(e).bigHour = void 0), + (w(e).parsedDateParts = e._a.slice(0)), + (w(e).meridiem = e._meridiem), + (e._a[we] = + ((f = e._locale), + (p = e._a[we]), + null == (m = e._meridiem) + ? p + : null != f.meridiemHour + ? f.meridiemHour(p, m) + : (null != f.isPM && + ((g = f.isPM(m)) && p < 12 && (p += 12), + g || 12 !== p || (p = 0)), + p))), + null !== (r = w(e).era) && + (e._a[ye] = e._locale.erasConvertYear(r, e._a[ye])), + xt(e), + ct(e); + } else _t(e); + else bt(e); + var f, p, m, g, v, y; + } + function kt(e) { + var t, + n, + i, + r, + a, + o, + s, + l = e._i, + u = e._f; + return ( + (e._locale = e._locale || ut(e._l)), + null === l || (void 0 === u && "" === l) + ? x({ nullInput: !0 }) + : ("string" == typeof l && (e._i = l = e._locale.preparse(l)), + C(l) + ? new k(ct(l)) + : (p(l) + ? (e._d = l) + : c(u) + ? (function (e) { + var t, + n, + i, + r, + a, + o, + s = !1; + if (0 === e._f.length) + return ( + (w(e).invalidFormat = !0), (e._d = new Date(NaN)) + ); + for (r = 0; r < e._f.length; r++) + (a = 0), + (o = !1), + (t = D({}, e)), + null != e._useUTC && (t._useUTC = e._useUTC), + (t._f = e._f[r]), + Dt(t), + y(t) && (o = !0), + (a += w(t).charsLeftOver), + (a += 10 * w(t).unusedTokens.length), + (w(t).score = a), + s + ? a < i && ((i = a), (n = t)) + : (null == i || a < i || o) && + ((i = a), (n = t), o && (s = !0)); + g(e, n || t); + })(e) + : u + ? Dt(e) + : h((n = (t = e)._i)) + ? (t._d = new Date(b.now())) + : p(n) + ? (t._d = new Date(n.valueOf())) + : "string" == typeof n + ? ((o = t), + null === (s = gt.exec(o._i)) + ? (bt(o), + !1 === o._isValid && + (delete o._isValid, + _t(o), + !1 === o._isValid && + (delete o._isValid, + o._strict + ? (o._isValid = !1) + : b.createFromInputFallback(o)))) + : (o._d = new Date(+s[1]))) + : c(n) + ? ((t._a = m(n.slice(0), function (e) { + return parseInt(e, 10); + })), + xt(t)) + : d(n) + ? (i = t)._d || + ((a = + void 0 === (r = Y(i._i)).day + ? r.date + : r.day), + (i._a = m( + [ + r.year, + r.month, + a, + r.hour, + r.minute, + r.second, + r.millisecond, + ], + function (e) { + return e && parseInt(e, 10); + }, + )), + xt(i)) + : f(n) + ? (t._d = new Date(n)) + : b.createFromInputFallback(t), + y(e) || (e._d = null), + e)) + ); + } + function Ct(e, t, n, i, r) { + var a, + o = {}; + return ( + (!0 !== t && !1 !== t) || ((i = t), (t = void 0)), + (!0 !== n && !1 !== n) || ((i = n), (n = void 0)), + ((d(e) && s(e)) || (c(e) && 0 === e.length)) && (e = void 0), + (o._isAMomentObject = !0), + (o._useUTC = o._isUTC = r), + (o._l = n), + (o._i = e), + (o._f = t), + (o._strict = i), + (a = new k(ct(kt(o))))._nextDay && + (a.add(1, "d"), (a._nextDay = void 0)), + a + ); + } + function Tt(e, t, n, i) { + return Ct(e, t, n, i, !1); + } + (b.createFromInputFallback = n( + "value provided is not in a recognized RFC2822 or ISO format. moment construction falls back to js Date(), which is not reliable across all browsers and versions. Non RFC2822/ISO date formats are discouraged and will be removed in an upcoming major release. Please refer to http://momentjs.com/guides/#/warnings/js-date/ for more info.", + function (e) { + e._d = new Date(e._i + (e._useUTC ? " UTC" : "")); + }, + )), + (b.ISO_8601 = function () { }), + (b.RFC_2822 = function () { }); + var St = n( + "moment().min is deprecated, use moment.max instead. http://momentjs.com/guides/#/warnings/min-max/", + function () { + var e = Tt.apply(null, arguments); + return this.isValid() && e.isValid() ? (e < this ? this : e) : x(); + }, + ), + Et = n( + "moment().max is deprecated, use moment.min instead. http://momentjs.com/guides/#/warnings/min-max/", + function () { + var e = Tt.apply(null, arguments); + return this.isValid() && e.isValid() ? (this < e ? this : e) : x(); + }, + ); + function Mt(e, t) { + var n, i; + if ((1 === t.length && c(t[0]) && (t = t[0]), !t.length)) return Tt(); + for (n = t[0], i = 1; i < t.length; ++i) + (t[i].isValid() && !t[i][e](n)) || (n = t[i]); + return n; + } + var Nt = [ + "year", + "quarter", + "month", + "week", + "day", + "hour", + "minute", + "second", + "millisecond", + ]; + function Ot(e) { + var t = Y(e), + n = t.year || 0, + i = t.quarter || 0, + r = t.month || 0, + a = t.week || t.isoWeek || 0, + o = t.day || 0, + s = t.hour || 0, + l = t.minute || 0, + u = t.second || 0, + c = t.millisecond || 0; + (this._isValid = (function (e) { + var t, + n, + i = !1; + for (t in e) + if ( + _(e, t) && + (-1 === ve.call(Nt, t) || (null != e[t] && isNaN(e[t]))) + ) + return !1; + for (n = 0; n < Nt.length; ++n) + if (e[Nt[n]]) { + if (i) return !1; + parseFloat(e[Nt[n]]) !== B(e[Nt[n]]) && (i = !0); + } + return !0; + })(t)), + (this._milliseconds = +c + 1e3 * u + 6e4 * l + 1e3 * s * 60 * 60), + (this._days = +o + 7 * a), + (this._months = +r + 3 * i + 12 * n), + (this._data = {}), + (this._locale = ut()), + this._bubble(); + } + function At(e) { + return e instanceof Ot; + } + function jt(e) { + return e < 0 ? -1 * Math.round(-1 * e) : Math.round(e); + } + function It(e, n) { + I(e, 0, 0, function () { + var e = this.utcOffset(), + t = "+"; + return ( + e < 0 && ((e = -e), (t = "-")), + t + M(~~(e / 60), 2) + n + M(~~e % 60, 2) + ); + }); + } + It("Z", ":"), + It("ZZ", ""), + he("Z", ce), + he("ZZ", ce), + me(["Z", "ZZ"], function (e, t, n) { + (n._useUTC = !0), (n._tzm = Lt(ce, e)); + }); + var Pt = /([\+\-]|\d\d)/gi; + function Lt(e, t) { + var n, + i, + r = (t || "").match(e); + return null === r + ? null + : 0 === + (i = + 60 * + (n = ((r[r.length - 1] || []) + "").match(Pt) || [ + "-", + 0, + 0, + ])[1] + + B(n[2])) + ? 0 + : "+" === n[0] + ? i + : -i; + } + function Ft(e, t) { + var n, i; + return t._isUTC + ? ((n = t.clone()), + (i = (C(e) || p(e) ? e.valueOf() : Tt(e).valueOf()) - n.valueOf()), + n._d.setTime(n._d.valueOf() + i), + b.updateOffset(n, !1), + n) + : Tt(e).local(); + } + function Rt(e) { + return -Math.round(e._d.getTimezoneOffset()); + } + function Ht() { + return !!this.isValid() && this._isUTC && 0 === this._offset; + } + b.updateOffset = function () { }; + var Yt = /^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/, + Vt = + /^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/; + function Ut(e, t) { + var n, + i, + r, + a, + o, + s, + l = e, + u = null; + return ( + At(e) + ? (l = { ms: e._milliseconds, d: e._days, M: e._months }) + : f(e) || !isNaN(+e) + ? ((l = {}), t ? (l[t] = +e) : (l.milliseconds = +e)) + : (u = Yt.exec(e)) + ? ((n = "-" === u[1] ? -1 : 1), + (l = { + y: 0, + d: B(u[_e]) * n, + h: B(u[we]) * n, + m: B(u[xe]) * n, + s: B(u[De]) * n, + ms: B(jt(1e3 * u[ke])) * n, + })) + : (u = Vt.exec(e)) + ? ((n = "-" === u[1] ? -1 : 1), + (l = { + y: Wt(u[2], n), + M: Wt(u[3], n), + w: Wt(u[4], n), + d: Wt(u[5], n), + h: Wt(u[6], n), + m: Wt(u[7], n), + s: Wt(u[8], n), + })) + : null == l + ? (l = {}) + : "object" == typeof l && + ("from" in l || "to" in l) && + ((a = Tt(l.from)), + (o = Tt(l.to)), + (r = + a.isValid() && o.isValid() + ? ((o = Ft(o, a)), + a.isBefore(o) + ? (s = qt(a, o)) + : (((s = qt(o, a)).milliseconds = -s.milliseconds), + (s.months = -s.months)), + s) + : { milliseconds: 0, months: 0 }), + ((l = {}).ms = r.milliseconds), + (l.M = r.months)), + (i = new Ot(l)), + At(e) && _(e, "_locale") && (i._locale = e._locale), + At(e) && _(e, "_isValid") && (i._isValid = e._isValid), + i + ); + } + function Wt(e, t) { + var n = e && parseFloat(e.replace(",", ".")); + return (isNaN(n) ? 0 : n) * t; + } + function qt(e, t) { + var n = {}; + return ( + (n.months = t.month() - e.month() + 12 * (t.year() - e.year())), + e.clone().add(n.months, "M").isAfter(t) && --n.months, + (n.milliseconds = t - e.clone().add(n.months, "M")), + n + ); + } + function Bt(i, r) { + return function (e, t) { + var n; + return ( + null === t || + isNaN(+t) || + (u( + r, + "moment()." + + r + + "(period, number) is deprecated. Please use moment()." + + r + + "(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info.", + ), + (n = e), + (e = t), + (t = n)), + $t(this, Ut(e, t), i), + this + ); + }; + } + function $t(e, t, n, i) { + var r = t._milliseconds, + a = jt(t._days), + o = jt(t._months); + e.isValid() && + ((i = null == i || i), + o && je(e, z(e, "Month") + o * n), + a && G(e, "Date", z(e, "Date") + a * n), + r && e._d.setTime(e._d.valueOf() + r * n), + i && b.updateOffset(e, a || o)); + } + (Ut.fn = Ot.prototype), + (Ut.invalid = function () { + return Ut(NaN); + }); + var zt = Bt(1, "add"), + Gt = Bt(-1, "subtract"); + function Qt(e) { + return "string" == typeof e || e instanceof String; + } + function Jt(e, t) { + if (e.date() < t.date()) return -Jt(t, e); + var n = 12 * (t.year() - e.year()) + (t.month() - e.month()), + i = e.clone().add(n, "months"); + return ( + -( + n + + (t - i < 0 + ? (t - i) / (i - e.clone().add(n - 1, "months")) + : (t - i) / (e.clone().add(1 + n, "months") - i)) + ) || 0 + ); + } + function Zt(e) { + var t; + return void 0 === e + ? this._locale._abbr + : (null != (t = ut(e)) && (this._locale = t), this); + } + (b.defaultFormat = "YYYY-MM-DDTHH:mm:ssZ"), + (b.defaultFormatUtc = "YYYY-MM-DDTHH:mm:ss[Z]"); + var Xt = n( + "moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.", + function (e) { + return void 0 === e ? this.localeData() : this.locale(e); + }, + ); + function Kt() { + return this._locale; + } + function en(e, t) { + return ((e % t) + t) % t; + } + function tn(e, t, n) { + return e < 100 && 0 <= e + ? new Date(e + 400, t, n) - 126227808e5 + : new Date(e, t, n).valueOf(); + } + function nn(e, t, n) { + return e < 100 && 0 <= e + ? Date.UTC(e + 400, t, n) - 126227808e5 + : Date.UTC(e, t, n); + } + function rn(e, t) { + return t.erasAbbrRegex(e); + } + function an() { + for ( + var e = [], + t = [], + n = [], + i = [], + r = this.eras(), + a = 0, + o = r.length; + a < o; + ++a + ) + t.push(fe(r[a].name)), + e.push(fe(r[a].abbr)), + n.push(fe(r[a].narrow)), + i.push(fe(r[a].name)), + i.push(fe(r[a].abbr)), + i.push(fe(r[a].narrow)); + (this._erasRegex = new RegExp("^(" + i.join("|") + ")", "i")), + (this._erasNameRegex = new RegExp("^(" + t.join("|") + ")", "i")), + (this._erasAbbrRegex = new RegExp("^(" + e.join("|") + ")", "i")), + (this._erasNarrowRegex = new RegExp("^(" + n.join("|") + ")", "i")); + } + function on(e, t) { + I(0, [e, e.length], 0, t); + } + function sn(e, t, n, i, r) { + var a; + return null == e + ? Ve(this, i, r).year + : ((a = Ue(e, i, r)) < t && (t = a), + function (e, t, n, i, r) { + var a = Ye(e, t, n, i, r), + o = Re(a.year, 0, a.dayOfYear); + return ( + this.year(o.getUTCFullYear()), + this.month(o.getUTCMonth()), + this.date(o.getUTCDate()), + this + ); + }.call(this, e, t, n, i, r)); + } + I("N", 0, 0, "eraAbbr"), + I("NN", 0, 0, "eraAbbr"), + I("NNN", 0, 0, "eraAbbr"), + I("NNNN", 0, 0, "eraName"), + I("NNNNN", 0, 0, "eraNarrow"), + I("y", ["y", 1], "yo", "eraYear"), + I("y", ["yy", 2], 0, "eraYear"), + I("y", ["yyy", 3], 0, "eraYear"), + I("y", ["yyyy", 4], 0, "eraYear"), + he("N", rn), + he("NN", rn), + he("NNN", rn), + he("NNNN", function (e, t) { + return t.erasNameRegex(e); + }), + he("NNNNN", function (e, t) { + return t.erasNarrowRegex(e); + }), + me(["N", "NN", "NNN", "NNNN", "NNNNN"], function (e, t, n, i) { + var r = n._locale.erasParse(e, i, n._strict); + r ? (w(n).era = r) : (w(n).invalidEra = e); + }), + he("y", se), + he("yy", se), + he("yyy", se), + he("yyyy", se), + he("yo", function (e, t) { + return t._eraYearOrdinalRegex || se; + }), + me(["y", "yy", "yyy", "yyyy"], ye), + me(["yo"], function (e, t, n, i) { + var r; + n._locale._eraYearOrdinalRegex && + (r = e.match(n._locale._eraYearOrdinalRegex)), + n._locale.eraYearOrdinalParse + ? (t[ye] = n._locale.eraYearOrdinalParse(e, r)) + : (t[ye] = parseInt(e, 10)); + }), + I(0, ["gg", 2], 0, function () { + return this.weekYear() % 100; + }), + I(0, ["GG", 2], 0, function () { + return this.isoWeekYear() % 100; + }), + on("gggg", "weekYear"), + on("ggggg", "weekYear"), + on("GGGG", "isoWeekYear"), + on("GGGGG", "isoWeekYear"), + R("weekYear", "gg"), + R("isoWeekYear", "GG"), + U("weekYear", 1), + U("isoWeekYear", 1), + he("G", le), + he("g", le), + he("GG", te, Z), + he("gg", te, Z), + he("GGGG", ae, K), + he("gggg", ae, K), + he("GGGGG", oe, ee), + he("ggggg", oe, ee), + ge(["gggg", "ggggg", "GGGG", "GGGGG"], function (e, t, n, i) { + t[i.substr(0, 2)] = B(e); + }), + ge(["gg", "GG"], function (e, t, n, i) { + t[i] = b.parseTwoDigitYear(e); + }), + I("Q", 0, "Qo", "quarter"), + R("quarter", "Q"), + U("quarter", 7), + he("Q", J), + me("Q", function (e, t) { + t[be] = 3 * (B(e) - 1); + }), + I("D", ["DD", 2], "Do", "date"), + R("date", "D"), + U("date", 9), + he("D", te), + he("DD", te, Z), + he("Do", function (e, t) { + return e + ? t._dayOfMonthOrdinalParse || t._ordinalParse + : t._dayOfMonthOrdinalParseLenient; + }), + me(["D", "DD"], _e), + me("Do", function (e, t) { + t[_e] = B(e.match(te)[0]); + }); + var ln = $("Date", !0); + I("DDD", ["DDDD", 3], "DDDo", "dayOfYear"), + R("dayOfYear", "DDD"), + U("dayOfYear", 4), + he("DDD", re), + he("DDDD", X), + me(["DDD", "DDDD"], function (e, t, n) { + n._dayOfYear = B(e); + }), + I("m", ["mm", 2], 0, "minute"), + R("minute", "m"), + U("minute", 14), + he("m", te), + he("mm", te, Z), + me(["m", "mm"], xe); + var un = $("Minutes", !1); + I("s", ["ss", 2], 0, "second"), + R("second", "s"), + U("second", 15), + he("s", te), + he("ss", te, Z), + me(["s", "ss"], De); + var cn, + dn, + hn = $("Seconds", !1); + for ( + I("S", 0, 0, function () { + return ~~(this.millisecond() / 100); + }), + I(0, ["SS", 2], 0, function () { + return ~~(this.millisecond() / 10); + }), + I(0, ["SSS", 3], 0, "millisecond"), + I(0, ["SSSS", 4], 0, function () { + return 10 * this.millisecond(); + }), + I(0, ["SSSSS", 5], 0, function () { + return 100 * this.millisecond(); + }), + I(0, ["SSSSSS", 6], 0, function () { + return 1e3 * this.millisecond(); + }), + I(0, ["SSSSSSS", 7], 0, function () { + return 1e4 * this.millisecond(); + }), + I(0, ["SSSSSSSS", 8], 0, function () { + return 1e5 * this.millisecond(); + }), + I(0, ["SSSSSSSSS", 9], 0, function () { + return 1e6 * this.millisecond(); + }), + R("millisecond", "ms"), + U("millisecond", 16), + he("S", re, J), + he("SS", re, Z), + he("SSS", re, X), + cn = "SSSS"; + cn.length <= 9; + cn += "S" + ) + he(cn, se); + function fn(e, t) { + t[ke] = B(1e3 * ("0." + e)); + } + for (cn = "S"; cn.length <= 9; cn += "S") me(cn, fn); + (dn = $("Milliseconds", !1)), + I("z", 0, 0, "zoneAbbr"), + I("zz", 0, 0, "zoneName"); + var pn = k.prototype; + function mn(e) { + return e; + } + (pn.add = zt), + (pn.calendar = function (e, t) { + 1 === arguments.length && + ((function (e) { + return ( + C(e) || + p(e) || + Qt(e) || + f(e) || + ((n = c((t = e))), + (i = !1), + n && + (i = + 0 === + t.filter(function (e) { + return !f(e) && Qt(t); + }).length), + n && i) || + (function (e) { + var t, + n = d(e) && !s(e), + i = !1, + r = [ + "years", + "year", + "y", + "months", + "month", + "M", + "days", + "day", + "d", + "dates", + "date", + "D", + "hours", + "hour", + "h", + "minutes", + "minute", + "m", + "seconds", + "second", + "s", + "milliseconds", + "millisecond", + "ms", + ]; + for (t = 0; t < r.length; t += 1) i = i || _(e, r[t]); + return n && i; + })(e) || + null == e + ); + var t, n, i; + })(arguments[0]) + ? ((e = arguments[0]), (t = void 0)) + : (function (e) { + for ( + var t = d(e) && !s(e), + n = !1, + i = [ + "sameDay", + "nextDay", + "lastDay", + "nextWeek", + "lastWeek", + "sameElse", + ], + r = 0; + r < i.length; + r += 1 + ) + n = n || _(e, i[r]); + return t && n; + })(arguments[0]) && ((t = arguments[0]), (e = void 0))); + var n = e || Tt(), + i = Ft(n, this).startOf("day"), + r = b.calendarFormat(this, i) || "sameElse", + a = t && (T(t[r]) ? t[r].call(this, n) : t[r]); + return this.format(a || this.localeData().calendar(r, this, Tt(n))); + }), + (pn.clone = function () { + return new k(this); + }), + (pn.diff = function (e, t, n) { + var i, r, a; + if (!this.isValid()) return NaN; + if (!(i = Ft(e, this)).isValid()) return NaN; + switch (((r = 6e4 * (i.utcOffset() - this.utcOffset())), (t = H(t)))) { + case "year": + a = Jt(this, i) / 12; + break; + case "month": + a = Jt(this, i); + break; + case "quarter": + a = Jt(this, i) / 3; + break; + case "second": + a = (this - i) / 1e3; + break; + case "minute": + a = (this - i) / 6e4; + break; + case "hour": + a = (this - i) / 36e5; + break; + case "day": + a = (this - i - r) / 864e5; + break; + case "week": + a = (this - i - r) / 6048e5; + break; + default: + a = this - i; + } + return n ? a : q(a); + }), + (pn.endOf = function (e) { + var t, n; + if (void 0 === (e = H(e)) || "millisecond" === e || !this.isValid()) + return this; + switch (((n = this._isUTC ? nn : tn), e)) { + case "year": + t = n(this.year() + 1, 0, 1) - 1; + break; + case "quarter": + t = n(this.year(), this.month() - (this.month() % 3) + 3, 1) - 1; + break; + case "month": + t = n(this.year(), this.month() + 1, 1) - 1; + break; + case "week": + t = + n(this.year(), this.month(), this.date() - this.weekday() + 7) - + 1; + break; + case "isoWeek": + t = + n( + this.year(), + this.month(), + this.date() - (this.isoWeekday() - 1) + 7, + ) - 1; + break; + case "day": + case "date": + t = n(this.year(), this.month(), this.date() + 1) - 1; + break; + case "hour": + (t = this._d.valueOf()), + (t += + 36e5 - + en(t + (this._isUTC ? 0 : 6e4 * this.utcOffset()), 36e5) - + 1); + break; + case "minute": + (t = this._d.valueOf()), (t += 6e4 - en(t, 6e4) - 1); + break; + case "second": + (t = this._d.valueOf()), (t += 1e3 - en(t, 1e3) - 1); + } + return this._d.setTime(t), b.updateOffset(this, !0), this; + }), + (pn.format = function (e) { + e = e || (this.isUtc() ? b.defaultFormatUtc : b.defaultFormat); + var t = P(this, e); + return this.localeData().postformat(t); + }), + (pn.from = function (e, t) { + return this.isValid() && ((C(e) && e.isValid()) || Tt(e).isValid()) + ? Ut({ to: this, from: e }).locale(this.locale()).humanize(!t) + : this.localeData().invalidDate(); + }), + (pn.fromNow = function (e) { + return this.from(Tt(), e); + }), + (pn.to = function (e, t) { + return this.isValid() && ((C(e) && e.isValid()) || Tt(e).isValid()) + ? Ut({ from: this, to: e }).locale(this.locale()).humanize(!t) + : this.localeData().invalidDate(); + }), + (pn.toNow = function (e) { + return this.to(Tt(), e); + }), + (pn.get = function (e) { + return T(this[(e = H(e))]) ? this[e]() : this; + }), + (pn.invalidAt = function () { + return w(this).overflow; + }), + (pn.isAfter = function (e, t) { + var n = C(e) ? e : Tt(e); + return ( + !(!this.isValid() || !n.isValid()) && + ("millisecond" === (t = H(t) || "millisecond") + ? this.valueOf() > n.valueOf() + : n.valueOf() < this.clone().startOf(t).valueOf()) + ); + }), + (pn.isBefore = function (e, t) { + var n = C(e) ? e : Tt(e); + return ( + !(!this.isValid() || !n.isValid()) && + ("millisecond" === (t = H(t) || "millisecond") + ? this.valueOf() < n.valueOf() + : this.clone().endOf(t).valueOf() < n.valueOf()) + ); + }), + (pn.isBetween = function (e, t, n, i) { + var r = C(e) ? e : Tt(e), + a = C(t) ? t : Tt(t); + return ( + !!(this.isValid() && r.isValid() && a.isValid()) && + ("(" === (i = i || "()")[0] + ? this.isAfter(r, n) + : !this.isBefore(r, n)) && + (")" === i[1] ? this.isBefore(a, n) : !this.isAfter(a, n)) + ); + }), + (pn.isSame = function (e, t) { + var n, + i = C(e) ? e : Tt(e); + return ( + !(!this.isValid() || !i.isValid()) && + ("millisecond" === (t = H(t) || "millisecond") + ? this.valueOf() === i.valueOf() + : ((n = i.valueOf()), + this.clone().startOf(t).valueOf() <= n && + n <= this.clone().endOf(t).valueOf())) + ); + }), + (pn.isSameOrAfter = function (e, t) { + return this.isSame(e, t) || this.isAfter(e, t); + }), + (pn.isSameOrBefore = function (e, t) { + return this.isSame(e, t) || this.isBefore(e, t); + }), + (pn.isValid = function () { + return y(this); + }), + (pn.lang = Xt), + (pn.locale = Zt), + (pn.localeData = Kt), + (pn.max = Et), + (pn.min = St), + (pn.parsingFlags = function () { + return g({}, w(this)); + }), + (pn.set = function (e, t) { + if ("object" == typeof e) + for ( + var n = (function (e) { + var t, + n = []; + for (t in e) _(e, t) && n.push({ unit: t, priority: V[t] }); + return ( + n.sort(function (e, t) { + return e.priority - t.priority; + }), + n + ); + })((e = Y(e))), + i = 0; + i < n.length; + i++ + ) + this[n[i].unit](e[n[i].unit]); + else if (T(this[(e = H(e))])) return this[e](t); + return this; + }), + (pn.startOf = function (e) { + var t, n; + if (void 0 === (e = H(e)) || "millisecond" === e || !this.isValid()) + return this; + switch (((n = this._isUTC ? nn : tn), e)) { + case "year": + t = n(this.year(), 0, 1); + break; + case "quarter": + t = n(this.year(), this.month() - (this.month() % 3), 1); + break; + case "month": + t = n(this.year(), this.month(), 1); + break; + case "week": + t = n(this.year(), this.month(), this.date() - this.weekday()); + break; + case "isoWeek": + t = n( + this.year(), + this.month(), + this.date() - (this.isoWeekday() - 1), + ); + break; + case "day": + case "date": + t = n(this.year(), this.month(), this.date()); + break; + case "hour": + (t = this._d.valueOf()), + (t -= en(t + (this._isUTC ? 0 : 6e4 * this.utcOffset()), 36e5)); + break; + case "minute": + (t = this._d.valueOf()), (t -= en(t, 6e4)); + break; + case "second": + (t = this._d.valueOf()), (t -= en(t, 1e3)); + } + return this._d.setTime(t), b.updateOffset(this, !0), this; + }), + (pn.subtract = Gt), + (pn.toArray = function () { + return [ + this.year(), + this.month(), + this.date(), + this.hour(), + this.minute(), + this.second(), + this.millisecond(), + ]; + }), + (pn.toObject = function () { + return { + years: this.year(), + months: this.month(), + date: this.date(), + hours: this.hours(), + minutes: this.minutes(), + seconds: this.seconds(), + milliseconds: this.milliseconds(), + }; + }), + (pn.toDate = function () { + return new Date(this.valueOf()); + }), + (pn.toISOString = function (e) { + if (!this.isValid()) return null; + var t = !0 !== e, + n = t ? this.clone().utc() : this; + return n.year() < 0 || 9999 < n.year() + ? P( + n, + t + ? "YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]" + : "YYYYYY-MM-DD[T]HH:mm:ss.SSSZ", + ) + : T(Date.prototype.toISOString) + ? t + ? this.toDate().toISOString() + : new Date(this.valueOf() + 60 * this.utcOffset() * 1e3) + .toISOString() + .replace("Z", P(n, "Z")) + : P( + n, + t + ? "YYYY-MM-DD[T]HH:mm:ss.SSS[Z]" + : "YYYY-MM-DD[T]HH:mm:ss.SSSZ", + ); + }), + (pn.inspect = function () { + if (!this.isValid()) return "moment.invalid(/* " + this._i + " */)"; + var e, + t, + n, + i = "moment", + r = ""; + return ( + this.isLocal() || + ((i = 0 === this.utcOffset() ? "moment.utc" : "moment.parseZone"), + (r = "Z")), + (e = "[" + i + '("]'), + (t = 0 <= this.year() && this.year() <= 9999 ? "YYYY" : "YYYYYY"), + (n = r + '[")]'), + this.format(e + t + "-MM-DD[T]HH:mm:ss.SSS" + n) + ); + }), + "undefined" != typeof Symbol && + null != Symbol.for && + (pn[Symbol.for("nodejs.util.inspect.custom")] = function () { + return "Moment<" + this.format() + ">"; + }), + (pn.toJSON = function () { + return this.isValid() ? this.toISOString() : null; + }), + (pn.toString = function () { + return this.clone() + .locale("en") + .format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ"); + }), + (pn.unix = function () { + return Math.floor(this.valueOf() / 1e3); + }), + (pn.valueOf = function () { + return this._d.valueOf() - 6e4 * (this._offset || 0); + }), + (pn.creationData = function () { + return { + input: this._i, + format: this._f, + locale: this._locale, + isUTC: this._isUTC, + strict: this._strict, + }; + }), + (pn.eraName = function () { + for ( + var e, t = this.localeData().eras(), n = 0, i = t.length; + n < i; + ++n + ) { + if ( + ((e = this.startOf("day").valueOf()), + t[n].since <= e && e <= t[n].until) + ) + return t[n].name; + if (t[n].until <= e && e <= t[n].since) return t[n].name; + } + return ""; + }), + (pn.eraNarrow = function () { + for ( + var e, t = this.localeData().eras(), n = 0, i = t.length; + n < i; + ++n + ) { + if ( + ((e = this.startOf("day").valueOf()), + t[n].since <= e && e <= t[n].until) + ) + return t[n].narrow; + if (t[n].until <= e && e <= t[n].since) return t[n].narrow; + } + return ""; + }), + (pn.eraAbbr = function () { + for ( + var e, t = this.localeData().eras(), n = 0, i = t.length; + n < i; + ++n + ) { + if ( + ((e = this.startOf("day").valueOf()), + t[n].since <= e && e <= t[n].until) + ) + return t[n].abbr; + if (t[n].until <= e && e <= t[n].since) return t[n].abbr; + } + return ""; + }), + (pn.eraYear = function () { + for ( + var e, t, n = this.localeData().eras(), i = 0, r = n.length; + i < r; + ++i + ) + if ( + ((e = n[i].since <= n[i].until ? 1 : -1), + (t = this.startOf("day").valueOf()), + (n[i].since <= t && t <= n[i].until) || + (n[i].until <= t && t <= n[i].since)) + ) + return (this.year() - b(n[i].since).year()) * e + n[i].offset; + return this.year(); + }), + (pn.year = Fe), + (pn.isLeapYear = function () { + return W(this.year()); + }), + (pn.weekYear = function (e) { + return sn.call( + this, + e, + this.week(), + this.weekday(), + this.localeData()._week.dow, + this.localeData()._week.doy, + ); + }), + (pn.isoWeekYear = function (e) { + return sn.call(this, e, this.isoWeek(), this.isoWeekday(), 1, 4); + }), + (pn.quarter = pn.quarters = + function (e) { + return null == e + ? Math.ceil((this.month() + 1) / 3) + : this.month(3 * (e - 1) + (this.month() % 3)); + }), + (pn.month = Ie), + (pn.daysInMonth = function () { + return Se(this.year(), this.month()); + }), + (pn.week = pn.weeks = + function (e) { + var t = this.localeData().week(this); + return null == e ? t : this.add(7 * (e - t), "d"); + }), + (pn.isoWeek = pn.isoWeeks = + function (e) { + var t = Ve(this, 1, 4).week; + return null == e ? t : this.add(7 * (e - t), "d"); + }), + (pn.weeksInYear = function () { + var e = this.localeData()._week; + return Ue(this.year(), e.dow, e.doy); + }), + (pn.weeksInWeekYear = function () { + var e = this.localeData()._week; + return Ue(this.weekYear(), e.dow, e.doy); + }), + (pn.isoWeeksInYear = function () { + return Ue(this.year(), 1, 4); + }), + (pn.isoWeeksInISOWeekYear = function () { + return Ue(this.isoWeekYear(), 1, 4); + }), + (pn.date = ln), + (pn.day = pn.days = + function (e) { + if (!this.isValid()) return null != e ? this : NaN; + var t, + n, + i = this._isUTC ? this._d.getUTCDay() : this._d.getDay(); + return null != e + ? ((t = e), + (n = this.localeData()), + (e = + "string" != typeof t + ? t + : isNaN(t) + ? "number" == typeof (t = n.weekdaysParse(t)) + ? t + : null + : parseInt(t, 10)), + this.add(e - i, "d")) + : i; + }), + (pn.weekday = function (e) { + if (!this.isValid()) return null != e ? this : NaN; + var t = (this.day() + 7 - this.localeData()._week.dow) % 7; + return null == e ? t : this.add(e - t, "d"); + }), + (pn.isoWeekday = function (e) { + if (!this.isValid()) return null != e ? this : NaN; + if (null == e) return this.day() || 7; + var t, + n, + i = + ((t = e), + (n = this.localeData()), + "string" == typeof t + ? n.weekdaysParse(t) % 7 || 7 + : isNaN(t) + ? null + : t); + return this.day(this.day() % 7 ? i : i - 7); + }), + (pn.dayOfYear = function (e) { + var t = + Math.round( + (this.clone().startOf("day") - this.clone().startOf("year")) / + 864e5, + ) + 1; + return null == e ? t : this.add(e - t, "d"); + }), + (pn.hour = pn.hours = tt), + (pn.minute = pn.minutes = un), + (pn.second = pn.seconds = hn), + (pn.millisecond = pn.milliseconds = dn), + (pn.utcOffset = function (e, t, n) { + var i, + r = this._offset || 0; + if (!this.isValid()) return null != e ? this : NaN; + if (null == e) return this._isUTC ? r : Rt(this); + if ("string" == typeof e) { + if (null === (e = Lt(ce, e))) return this; + } else Math.abs(e) < 16 && !n && (e *= 60); + return ( + !this._isUTC && t && (i = Rt(this)), + (this._offset = e), + (this._isUTC = !0), + null != i && this.add(i, "m"), + r !== e && + (!t || this._changeInProgress + ? $t(this, Ut(e - r, "m"), 1, !1) + : this._changeInProgress || + ((this._changeInProgress = !0), + b.updateOffset(this, !0), + (this._changeInProgress = null))), + this + ); + }), + (pn.utc = function (e) { + return this.utcOffset(0, e); + }), + (pn.local = function (e) { + return ( + this._isUTC && + (this.utcOffset(0, e), + (this._isUTC = !1), + e && this.subtract(Rt(this), "m")), + this + ); + }), + (pn.parseZone = function () { + var e; + return ( + null != this._tzm + ? this.utcOffset(this._tzm, !1, !0) + : "string" == typeof this._i && + (null != (e = Lt(ue, this._i)) + ? this.utcOffset(e) + : this.utcOffset(0, !0)), + this + ); + }), + (pn.hasAlignedHourOffset = function (e) { + return ( + !!this.isValid() && + ((e = e ? Tt(e).utcOffset() : 0), (this.utcOffset() - e) % 60 == 0) + ); + }), + (pn.isDST = function () { + return ( + this.utcOffset() > this.clone().month(0).utcOffset() || + this.utcOffset() > this.clone().month(5).utcOffset() + ); + }), + (pn.isLocal = function () { + return !!this.isValid() && !this._isUTC; + }), + (pn.isUtcOffset = function () { + return !!this.isValid() && this._isUTC; + }), + (pn.isUtc = Ht), + (pn.isUTC = Ht), + (pn.zoneAbbr = function () { + return this._isUTC ? "UTC" : ""; + }), + (pn.zoneName = function () { + return this._isUTC ? "Coordinated Universal Time" : ""; + }), + (pn.dates = n("dates accessor is deprecated. Use date instead.", ln)), + (pn.months = n("months accessor is deprecated. Use month instead", Ie)), + (pn.years = n("years accessor is deprecated. Use year instead", Fe)), + (pn.zone = n( + "moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/", + function (e, t) { + return null != e + ? ("string" != typeof e && (e = -e), this.utcOffset(e, t), this) + : -this.utcOffset(); + }, + )), + (pn.isDSTShifted = n( + "isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information", + function () { + if (!h(this._isDSTShifted)) return this._isDSTShifted; + var e, + t = {}; + return ( + D(t, this), + (t = kt(t))._a + ? ((e = (t._isUTC ? v : Tt)(t._a)), + (this._isDSTShifted = + this.isValid() && + 0 < + (function (e, t) { + for ( + var n = Math.min(e.length, t.length), + i = Math.abs(e.length - t.length), + r = 0, + a = 0; + a < n; + a++ + ) + B(e[a]) !== B(t[a]) && r++; + return r + i; + })(t._a, e.toArray()))) + : (this._isDSTShifted = !1), + this._isDSTShifted + ); + }, + )); + var gn = E.prototype; + function vn(e, t, n, i) { + var r = ut(), + a = v().set(i, t); + return r[n](a, e); + } + function yn(e, t, n) { + if ((f(e) && ((t = e), (e = void 0)), (e = e || ""), null != t)) + return vn(e, t, n, "month"); + for (var i = [], r = 0; r < 12; r++) i[r] = vn(e, r, n, "month"); + return i; + } + function bn(e, t, n, i) { + "boolean" == typeof e + ? f(t) && ((n = t), (t = void 0)) + : ((t = e), (e = !1), f((n = t)) && ((n = t), (t = void 0))), + (t = t || ""); + var r, + a = ut(), + o = e ? a._week.dow : 0, + s = []; + if (null != n) return vn(t, (n + o) % 7, i, "day"); + for (r = 0; r < 7; r++) s[r] = vn(t, (r + o) % 7, i, "day"); + return s; + } + (gn.calendar = function (e, t, n) { + var i = this._calendar[e] || this._calendar.sameElse; + return T(i) ? i.call(t, n) : i; + }), + (gn.longDateFormat = function (e) { + var t = this._longDateFormat[e], + n = this._longDateFormat[e.toUpperCase()]; + return t || !n + ? t + : ((this._longDateFormat[e] = n + .match(N) + .map(function (e) { + return "MMMM" === e || "MM" === e || "DD" === e || "dddd" === e + ? e.slice(1) + : e; + }) + .join("")), + this._longDateFormat[e]); + }), + (gn.invalidDate = function () { + return this._invalidDate; + }), + (gn.ordinal = function (e) { + return this._ordinal.replace("%d", e); + }), + (gn.preparse = mn), + (gn.postformat = mn), + (gn.relativeTime = function (e, t, n, i) { + var r = this._relativeTime[n]; + return T(r) ? r(e, t, n, i) : r.replace(/%d/i, e); + }), + (gn.pastFuture = function (e, t) { + var n = this._relativeTime[0 < e ? "future" : "past"]; + return T(n) ? n(t) : n.replace(/%s/i, t); + }), + (gn.set = function (e) { + var t, n; + for (n in e) + _(e, n) && (T((t = e[n])) ? (this[n] = t) : (this["_" + n] = t)); + (this._config = e), + (this._dayOfMonthOrdinalParseLenient = new RegExp( + (this._dayOfMonthOrdinalParse.source || this._ordinalParse.source) + + "|" + + /\d{1,2}/.source, + )); + }), + (gn.eras = function (e, t) { + for ( + var n, i = this._eras || ut("en")._eras, r = 0, a = i.length; + r < a; + ++r + ) { + switch (typeof i[r].since) { + case "string": + (n = b(i[r].since).startOf("day")), (i[r].since = n.valueOf()); + } + switch (typeof i[r].until) { + case "undefined": + i[r].until = 1 / 0; + break; + case "string": + (n = b(i[r].until).startOf("day").valueOf()), + (i[r].until = n.valueOf()); + } + } + return i; + }), + (gn.erasParse = function (e, t, n) { + var i, + r, + a, + o, + s, + l = this.eras(); + for (e = e.toUpperCase(), i = 0, r = l.length; i < r; ++i) + if ( + ((a = l[i].name.toUpperCase()), + (o = l[i].abbr.toUpperCase()), + (s = l[i].narrow.toUpperCase()), + n) + ) + switch (t) { + case "N": + case "NN": + case "NNN": + if (o === e) return l[i]; + break; + case "NNNN": + if (a === e) return l[i]; + break; + case "NNNNN": + if (s === e) return l[i]; + } + else if (0 <= [a, o, s].indexOf(e)) return l[i]; + }), + (gn.erasConvertYear = function (e, t) { + var n = e.since <= e.until ? 1 : -1; + return void 0 === t + ? b(e.since).year() + : b(e.since).year() + (t - e.offset) * n; + }), + (gn.erasAbbrRegex = function (e) { + return ( + _(this, "_erasAbbrRegex") || an.call(this), + e ? this._erasAbbrRegex : this._erasRegex + ); + }), + (gn.erasNameRegex = function (e) { + return ( + _(this, "_erasNameRegex") || an.call(this), + e ? this._erasNameRegex : this._erasRegex + ); + }), + (gn.erasNarrowRegex = function (e) { + return ( + _(this, "_erasNarrowRegex") || an.call(this), + e ? this._erasNarrowRegex : this._erasRegex + ); + }), + (gn.months = function (e, t) { + return e + ? c(this._months) + ? this._months[e.month()] + : this._months[ + (this._months.isFormat || Ne).test(t) ? "format" : "standalone" + ][e.month()] + : c(this._months) + ? this._months + : this._months.standalone; + }), + (gn.monthsShort = function (e, t) { + return e + ? c(this._monthsShort) + ? this._monthsShort[e.month()] + : this._monthsShort[Ne.test(t) ? "format" : "standalone"][e.month()] + : c(this._monthsShort) + ? this._monthsShort + : this._monthsShort.standalone; + }), + (gn.monthsParse = function (e, t, n) { + var i, r, a; + if (this._monthsParseExact) + return function (e, t, n) { + var i, + r, + a, + o = e.toLocaleLowerCase(); + if (!this._monthsParse) + for ( + this._monthsParse = [], + this._longMonthsParse = [], + this._shortMonthsParse = [], + i = 0; + i < 12; + ++i + ) + (a = v([2e3, i])), + (this._shortMonthsParse[i] = this.monthsShort( + a, + "", + ).toLocaleLowerCase()), + (this._longMonthsParse[i] = this.months( + a, + "", + ).toLocaleLowerCase()); + return n + ? "MMM" === t + ? -1 !== (r = ve.call(this._shortMonthsParse, o)) + ? r + : null + : -1 !== (r = ve.call(this._longMonthsParse, o)) + ? r + : null + : "MMM" === t + ? -1 !== (r = ve.call(this._shortMonthsParse, o)) || + -1 !== (r = ve.call(this._longMonthsParse, o)) + ? r + : null + : -1 !== (r = ve.call(this._longMonthsParse, o)) || + -1 !== (r = ve.call(this._shortMonthsParse, o)) + ? r + : null; + }.call(this, e, t, n); + for ( + this._monthsParse || + ((this._monthsParse = []), + (this._longMonthsParse = []), + (this._shortMonthsParse = [])), + i = 0; + i < 12; + i++ + ) { + if ( + ((r = v([2e3, i])), + n && + !this._longMonthsParse[i] && + ((this._longMonthsParse[i] = new RegExp( + "^" + this.months(r, "").replace(".", "") + "$", + "i", + )), + (this._shortMonthsParse[i] = new RegExp( + "^" + this.monthsShort(r, "").replace(".", "") + "$", + "i", + ))), + n || + this._monthsParse[i] || + ((a = "^" + this.months(r, "") + "|^" + this.monthsShort(r, "")), + (this._monthsParse[i] = new RegExp(a.replace(".", ""), "i"))), + n && "MMMM" === t && this._longMonthsParse[i].test(e)) + ) + return i; + if (n && "MMM" === t && this._shortMonthsParse[i].test(e)) return i; + if (!n && this._monthsParse[i].test(e)) return i; + } + }), + (gn.monthsRegex = function (e) { + return this._monthsParseExact + ? (_(this, "_monthsRegex") || Pe.call(this), + e ? this._monthsStrictRegex : this._monthsRegex) + : (_(this, "_monthsRegex") || (this._monthsRegex = Ae), + this._monthsStrictRegex && e + ? this._monthsStrictRegex + : this._monthsRegex); + }), + (gn.monthsShortRegex = function (e) { + return this._monthsParseExact + ? (_(this, "_monthsRegex") || Pe.call(this), + e ? this._monthsShortStrictRegex : this._monthsShortRegex) + : (_(this, "_monthsShortRegex") || (this._monthsShortRegex = Oe), + this._monthsShortStrictRegex && e + ? this._monthsShortStrictRegex + : this._monthsShortRegex); + }), + (gn.week = function (e) { + return Ve(e, this._week.dow, this._week.doy).week; + }), + (gn.firstDayOfYear = function () { + return this._week.doy; + }), + (gn.firstDayOfWeek = function () { + return this._week.dow; + }), + (gn.weekdays = function (e, t) { + var n = c(this._weekdays) + ? this._weekdays + : this._weekdays[ + e && !0 !== e && this._weekdays.isFormat.test(t) + ? "format" + : "standalone" + ]; + return !0 === e ? We(n, this._week.dow) : e ? n[e.day()] : n; + }), + (gn.weekdaysMin = function (e) { + return !0 === e + ? We(this._weekdaysMin, this._week.dow) + : e + ? this._weekdaysMin[e.day()] + : this._weekdaysMin; + }), + (gn.weekdaysShort = function (e) { + return !0 === e + ? We(this._weekdaysShort, this._week.dow) + : e + ? this._weekdaysShort[e.day()] + : this._weekdaysShort; + }), + (gn.weekdaysParse = function (e, t, n) { + var i, r, a; + if (this._weekdaysParseExact) + return function (e, t, n) { + var i, + r, + a, + o = e.toLocaleLowerCase(); + if (!this._weekdaysParse) + for ( + this._weekdaysParse = [], + this._shortWeekdaysParse = [], + this._minWeekdaysParse = [], + i = 0; + i < 7; + ++i + ) + (a = v([2e3, 1]).day(i)), + (this._minWeekdaysParse[i] = this.weekdaysMin( + a, + "", + ).toLocaleLowerCase()), + (this._shortWeekdaysParse[i] = this.weekdaysShort( + a, + "", + ).toLocaleLowerCase()), + (this._weekdaysParse[i] = this.weekdays( + a, + "", + ).toLocaleLowerCase()); + return n + ? "dddd" === t + ? -1 !== (r = ve.call(this._weekdaysParse, o)) + ? r + : null + : "ddd" === t + ? -1 !== (r = ve.call(this._shortWeekdaysParse, o)) + ? r + : null + : -1 !== (r = ve.call(this._minWeekdaysParse, o)) + ? r + : null + : "dddd" === t + ? -1 !== (r = ve.call(this._weekdaysParse, o)) || + -1 !== (r = ve.call(this._shortWeekdaysParse, o)) || + -1 !== (r = ve.call(this._minWeekdaysParse, o)) + ? r + : null + : "ddd" === t + ? -1 !== (r = ve.call(this._shortWeekdaysParse, o)) || + -1 !== (r = ve.call(this._weekdaysParse, o)) || + -1 !== (r = ve.call(this._minWeekdaysParse, o)) + ? r + : null + : -1 !== (r = ve.call(this._minWeekdaysParse, o)) || + -1 !== (r = ve.call(this._weekdaysParse, o)) || + -1 !== (r = ve.call(this._shortWeekdaysParse, o)) + ? r + : null; + }.call(this, e, t, n); + for ( + this._weekdaysParse || + ((this._weekdaysParse = []), + (this._minWeekdaysParse = []), + (this._shortWeekdaysParse = []), + (this._fullWeekdaysParse = [])), + i = 0; + i < 7; + i++ + ) { + if ( + ((r = v([2e3, 1]).day(i)), + n && + !this._fullWeekdaysParse[i] && + ((this._fullWeekdaysParse[i] = new RegExp( + "^" + this.weekdays(r, "").replace(".", "\\.?") + "$", + "i", + )), + (this._shortWeekdaysParse[i] = new RegExp( + "^" + this.weekdaysShort(r, "").replace(".", "\\.?") + "$", + "i", + )), + (this._minWeekdaysParse[i] = new RegExp( + "^" + this.weekdaysMin(r, "").replace(".", "\\.?") + "$", + "i", + ))), + this._weekdaysParse[i] || + ((a = + "^" + + this.weekdays(r, "") + + "|^" + + this.weekdaysShort(r, "") + + "|^" + + this.weekdaysMin(r, "")), + (this._weekdaysParse[i] = new RegExp(a.replace(".", ""), "i"))), + n && "dddd" === t && this._fullWeekdaysParse[i].test(e)) + ) + return i; + if (n && "ddd" === t && this._shortWeekdaysParse[i].test(e)) return i; + if (n && "dd" === t && this._minWeekdaysParse[i].test(e)) return i; + if (!n && this._weekdaysParse[i].test(e)) return i; + } + }), + (gn.weekdaysRegex = function (e) { + return this._weekdaysParseExact + ? (_(this, "_weekdaysRegex") || Je.call(this), + e ? this._weekdaysStrictRegex : this._weekdaysRegex) + : (_(this, "_weekdaysRegex") || (this._weekdaysRegex = ze), + this._weekdaysStrictRegex && e + ? this._weekdaysStrictRegex + : this._weekdaysRegex); + }), + (gn.weekdaysShortRegex = function (e) { + return this._weekdaysParseExact + ? (_(this, "_weekdaysRegex") || Je.call(this), + e ? this._weekdaysShortStrictRegex : this._weekdaysShortRegex) + : (_(this, "_weekdaysShortRegex") || (this._weekdaysShortRegex = Ge), + this._weekdaysShortStrictRegex && e + ? this._weekdaysShortStrictRegex + : this._weekdaysShortRegex); + }), + (gn.weekdaysMinRegex = function (e) { + return this._weekdaysParseExact + ? (_(this, "_weekdaysRegex") || Je.call(this), + e ? this._weekdaysMinStrictRegex : this._weekdaysMinRegex) + : (_(this, "_weekdaysMinRegex") || (this._weekdaysMinRegex = Qe), + this._weekdaysMinStrictRegex && e + ? this._weekdaysMinStrictRegex + : this._weekdaysMinRegex); + }), + (gn.isPM = function (e) { + return "p" === (e + "").toLowerCase().charAt(0); + }), + (gn.meridiem = function (e, t, n) { + return 11 < e ? (n ? "pm" : "PM") : n ? "am" : "AM"; + }), + st("en", { + eras: [ + { + since: "0001-01-01", + until: 1 / 0, + offset: 1, + name: "Anno Domini", + narrow: "AD", + abbr: "AD", + }, + { + since: "0000-12-31", + until: -1 / 0, + offset: 1, + name: "Before Christ", + narrow: "BC", + abbr: "BC", + }, + ], + dayOfMonthOrdinalParse: /\d{1,2}(th|st|nd|rd)/, + ordinal: function (e) { + var t = e % 10; + return ( + e + + (1 === B((e % 100) / 10) + ? "th" + : 1 == t + ? "st" + : 2 == t + ? "nd" + : 3 == t + ? "rd" + : "th") + ); + }, + }), + (b.lang = n("moment.lang is deprecated. Use moment.locale instead.", st)), + (b.langData = n( + "moment.langData is deprecated. Use moment.localeData instead.", + ut, + )); + var _n = Math.abs; + function wn(e, t, n, i) { + var r = Ut(t, n); + return ( + (e._milliseconds += i * r._milliseconds), + (e._days += i * r._days), + (e._months += i * r._months), + e._bubble() + ); + } + function xn(e) { + return e < 0 ? Math.floor(e) : Math.ceil(e); + } + function Dn(e) { + return (4800 * e) / 146097; + } + function kn(e) { + return (146097 * e) / 4800; + } + function Cn(e) { + return function () { + return this.as(e); + }; + } + var Tn = Cn("ms"), + Sn = Cn("s"), + En = Cn("m"), + Mn = Cn("h"), + Nn = Cn("d"), + On = Cn("w"), + An = Cn("M"), + jn = Cn("Q"), + In = Cn("y"); + function Pn(e) { + return function () { + return this.isValid() ? this._data[e] : NaN; + }; + } + var Ln = Pn("milliseconds"), + Fn = Pn("seconds"), + Rn = Pn("minutes"), + Hn = Pn("hours"), + Yn = Pn("days"), + Vn = Pn("months"), + Un = Pn("years"), + Wn = Math.round, + qn = { ss: 44, s: 45, m: 45, h: 22, d: 26, w: null, M: 11 }; + var Bn = Math.abs; + function $n(e) { + return (0 < e) - (e < 0) || +e; + } + function zn() { + if (!this.isValid()) return this.localeData().invalidDate(); + var e, + t, + n, + i, + r, + a, + o, + s, + l = Bn(this._milliseconds) / 1e3, + u = Bn(this._days), + c = Bn(this._months), + d = this.asSeconds(); + return d + ? ((t = q((e = q(l / 60)) / 60)), + (l %= 60), + (e %= 60), + (n = q(c / 12)), + (c %= 12), + (i = l ? l.toFixed(3).replace(/\.?0+$/, "") : ""), + (r = d < 0 ? "-" : ""), + (a = $n(this._months) !== $n(d) ? "-" : ""), + (o = $n(this._days) !== $n(d) ? "-" : ""), + (s = $n(this._milliseconds) !== $n(d) ? "-" : ""), + r + + "P" + + (n ? a + n + "Y" : "") + + (c ? a + c + "M" : "") + + (u ? o + u + "D" : "") + + (t || e || l ? "T" : "") + + (t ? s + t + "H" : "") + + (e ? s + e + "M" : "") + + (l ? s + i + "S" : "")) + : "P0D"; + } + var Gn = Ot.prototype; + return ( + (Gn.isValid = function () { + return this._isValid; + }), + (Gn.abs = function () { + var 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.months = _n(e.months)), + (e.years = _n(e.years)), + this + ); + }), + (Gn.add = function (e, t) { + return wn(this, e, t, 1); + }), + (Gn.subtract = function (e, t) { + return wn(this, e, t, -1); + }), + (Gn.as = function (e) { + if (!this.isValid()) return NaN; + var t, + n, + i = this._milliseconds; + if ("month" === (e = H(e)) || "quarter" === e || "year" === e) + switch ( + ((t = this._days + i / 864e5), (n = this._months + Dn(t)), e) + ) { + case "month": + return n; + case "quarter": + return n / 3; + case "year": + return n / 12; + } + else + switch (((t = this._days + Math.round(kn(this._months))), e)) { + case "week": + return t / 7 + i / 6048e5; + case "day": + return t + i / 864e5; + case "hour": + return 24 * t + i / 36e5; + case "minute": + return 1440 * t + i / 6e4; + case "second": + return 86400 * t + i / 1e3; + case "millisecond": + return Math.floor(864e5 * t) + i; + default: + throw new Error("Unknown unit " + e); + } + }), + (Gn.asMilliseconds = Tn), + (Gn.asSeconds = Sn), + (Gn.asMinutes = En), + (Gn.asHours = Mn), + (Gn.asDays = Nn), + (Gn.asWeeks = On), + (Gn.asMonths = An), + (Gn.asQuarters = jn), + (Gn.asYears = In), + (Gn.valueOf = function () { + return this.isValid() + ? this._milliseconds + + 864e5 * this._days + + (this._months % 12) * 2592e6 + + 31536e6 * B(this._months / 12) + : NaN; + }), + (Gn._bubble = function () { + var e, + t, + n, + i, + r, + a = this._milliseconds, + o = this._days, + s = this._months, + l = this._data; + return ( + (0 <= a && 0 <= o && 0 <= s) || + (a <= 0 && o <= 0 && s <= 0) || + ((a += 864e5 * xn(kn(s) + o)), (s = o = 0)), + (l.milliseconds = a % 1e3), + (e = q(a / 1e3)), + (l.seconds = e % 60), + (t = q(e / 60)), + (l.minutes = t % 60), + (n = q(t / 60)), + (l.hours = n % 24), + (s += r = q(Dn((o += q(n / 24))))), + (o -= xn(kn(r))), + (i = q(s / 12)), + (s %= 12), + (l.days = o), + (l.months = s), + (l.years = i), + this + ); + }), + (Gn.clone = function () { + return Ut(this); + }), + (Gn.get = function (e) { + return (e = H(e)), this.isValid() ? this[e + "s"]() : NaN; + }), + (Gn.milliseconds = Ln), + (Gn.seconds = Fn), + (Gn.minutes = Rn), + (Gn.hours = Hn), + (Gn.days = Yn), + (Gn.weeks = function () { + return q(this.days() / 7); + }), + (Gn.months = Vn), + (Gn.years = Un), + (Gn.humanize = function (e, t) { + if (!this.isValid()) return this.localeData().invalidDate(); + var n, + i, + r = !1, + a = qn; + return ( + "object" == typeof e && ((t = e), (e = !1)), + "boolean" == typeof e && (r = e), + "object" == typeof t && + ((a = Object.assign({}, qn, t)), + null != t.s && null == t.ss && (a.ss = t.s - 1)), + (n = this.localeData()), + (i = (function (e, t, n, i) { + var r = Ut(e).abs(), + a = Wn(r.as("s")), + o = Wn(r.as("m")), + s = Wn(r.as("h")), + l = Wn(r.as("d")), + u = Wn(r.as("M")), + c = Wn(r.as("w")), + d = Wn(r.as("y")), + h = + (a <= n.ss ? ["s", a] : a < n.s && ["ss", a]) || + (o <= 1 && ["m"]) || + (o < n.m && ["mm", o]) || + (s <= 1 && ["h"]) || + (s < n.h && ["hh", s]) || + (l <= 1 && ["d"]) || + (l < n.d && ["dd", l]); + return ( + null != n.w && + (h = h || (c <= 1 && ["w"]) || (c < n.w && ["ww", c])), + ((h = h || + (u <= 1 && ["M"]) || + (u < n.M && ["MM", u]) || + (d <= 1 && ["y"]) || ["yy", d])[2] = t), + (h[3] = 0 < +e), + (h[4] = i), + function (e, t, n, i, r) { + return r.relativeTime(t || 1, !!n, e, i); + }.apply(null, h) + ); + })(this, !r, a, n)), + r && (i = n.pastFuture(+this, i)), + n.postformat(i) + ); + }), + (Gn.toISOString = zn), + (Gn.toString = zn), + (Gn.toJSON = zn), + (Gn.locale = Zt), + (Gn.localeData = Kt), + (Gn.toIsoString = n( + "toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)", + zn, + )), + (Gn.lang = Xt), + I("X", 0, 0, "unix"), + I("x", 0, 0, "valueOf"), + he("x", le), + he("X", /[+-]?\d+(\.\d{1,3})?/), + me("X", function (e, t, n) { + n._d = new Date(1e3 * parseFloat(e)); + }), + me("x", function (e, t, n) { + n._d = new Date(B(e)); + }), + (b.version = "2.27.0"), + (e = Tt), + (b.fn = pn), + (b.min = function () { + return Mt("isBefore", [].slice.call(arguments, 0)); + }), + (b.max = function () { + return Mt("isAfter", [].slice.call(arguments, 0)); + }), + (b.now = function () { + return Date.now ? Date.now() : +new Date(); + }), + (b.utc = v), + (b.unix = function (e) { + return Tt(1e3 * e); + }), + (b.months = function (e, t) { + return yn(e, t, "months"); + }), + (b.isDate = p), + (b.locale = st), + (b.invalid = x), + (b.duration = Ut), + (b.isMoment = C), + (b.weekdays = function (e, t, n) { + return bn(e, t, n, "weekdays"); + }), + (b.parseZone = function () { + return Tt.apply(null, arguments).parseZone(); + }), + (b.localeData = ut), + (b.isDuration = At), + (b.monthsShort = function (e, t) { + return yn(e, t, "monthsShort"); + }), + (b.weekdaysMin = function (e, t, n) { + return bn(e, t, n, "weekdaysMin"); + }), + (b.defineLocale = lt), + (b.updateLocale = function (e, t) { + var n, i, r; + return ( + null != t + ? ((r = nt), + null != it[e] && null != it[e].parentLocale + ? it[e].set(S(it[e]._config, t)) + : (null != (i = ot(e)) && (r = i._config), + (t = S(r, t)), + null == i && (t.abbr = e), + ((n = new E(t)).parentLocale = it[e]), + (it[e] = n)), + st(e)) + : null != it[e] && + (null != it[e].parentLocale + ? ((it[e] = it[e].parentLocale), e === st() && st(e)) + : null != it[e] && delete it[e]), + it[e] + ); + }), + (b.locales = function () { + return i(it); + }), + (b.weekdaysShort = function (e, t, n) { + return bn(e, t, n, "weekdaysShort"); + }), + (b.normalizeUnits = H), + (b.relativeTimeRounding = function (e) { + return void 0 === e ? Wn : "function" == typeof e && ((Wn = e), !0); + }), + (b.relativeTimeThreshold = function (e, t) { + return ( + void 0 !== qn[e] && + (void 0 === t + ? qn[e] + : ((qn[e] = t), "s" === e && (qn.ss = t - 1), !0)) + ); + }), + (b.calendarFormat = function (e, t) { + var n = e.diff(t, "days", !0); + return n < -6 + ? "sameElse" + : n < -1 + ? "lastWeek" + : n < 0 + ? "lastDay" + : n < 1 + ? "sameDay" + : n < 2 + ? "nextDay" + : n < 7 + ? "nextWeek" + : "sameElse"; + }), + (b.prototype = pn), + (b.HTML5_FMT = { + DATETIME_LOCAL: "YYYY-MM-DDTHH:mm", + DATETIME_LOCAL_SECONDS: "YYYY-MM-DDTHH:mm:ss", + DATETIME_LOCAL_MS: "YYYY-MM-DDTHH:mm:ss.SSS", + DATE: "YYYY-MM-DD", + TIME: "HH:mm", + TIME_SECONDS: "HH:mm:ss", + TIME_MS: "HH:mm:ss.SSS", + WEEK: "GGGG-[W]WW", + MONTH: "YYYY-MM", + }), + b + ); + }), + "undefined" == typeof jQuery) +) + throw new Error( + "Tempus Dominus Bootstrap4's requires jQuery. jQuery must be included before Tempus Dominus Bootstrap4's JavaScript.", + ); +if ( + ((function () { + var e = jQuery.fn.jquery.split(" ")[0].split("."); + if ( + (e[0] < 2 && e[1] < 9) || + (1 === e[0] && 9 === e[1] && e[2] < 1) || + 4 <= e[0] + ) + throw new Error( + "Tempus Dominus Bootstrap4's requires at least jQuery v3.0.0 but less than v4.0.0", + ); + })(), + "undefined" == typeof moment) +) + throw new Error( + "Tempus Dominus Bootstrap4's requires moment.js. Moment.js must be included before Tempus Dominus Bootstrap4's JavaScript.", + ); +var version = moment.version.split("."); +if ((version[0] <= 2 && version[1] < 17) || 3 <= version[0]) + throw new Error( + "Tempus Dominus Bootstrap4's requires at least moment.js v2.17.0 but less than v3.0.0", + ); +!(function () { + var r = + "function" == typeof Symbol && "symbol" == typeof Symbol.iterator + ? function (e) { + return typeof e; + } + : function (e) { + return e && + "function" == typeof Symbol && + e.constructor === Symbol && + e !== Symbol.prototype + ? "symbol" + : typeof e; + }, + e = function (e, t, n) { + return t && i(e.prototype, t), n && i(e, n), e; + }; + function i(e, t) { + for (var n = 0; n < t.length; n++) { + var i = t[n]; + (i.enumerable = i.enumerable || !1), + (i.configurable = !0), + "value" in i && (i.writable = !0), + Object.defineProperty(e, i.key, i); + } + } + function a(e, t) { + if (!(e instanceof t)) + throw new TypeError("Cannot call a class as a function"); + } + var o, + n, + t, + s, + l, + u, + c, + d, + h, + f, + p, + m, + g, + v, + T = + ((o = jQuery), + (n = moment), + (u = { + DATA_TOGGLE: '[data-toggle="' + (s = t = "datetimepicker") + '"]', + }), + (c = { INPUT: t + "-input" }), + (d = { + CHANGE: "change" + (l = "." + s), + BLUR: "blur" + l, + KEYUP: "keyup" + l, + KEYDOWN: "keydown" + l, + FOCUS: "focus" + l, + CLICK_DATA_API: "click" + l + ".data-api", + UPDATE: "update" + l, + ERROR: "error" + l, + HIDE: "hide" + l, + SHOW: "show" + l, + }), + (h = [ + { CLASS_NAME: "days", NAV_FUNCTION: "M", NAV_STEP: 1 }, + { CLASS_NAME: "months", NAV_FUNCTION: "y", NAV_STEP: 1 }, + { CLASS_NAME: "years", NAV_FUNCTION: "y", NAV_STEP: 10 }, + { CLASS_NAME: "decades", NAV_FUNCTION: "y", NAV_STEP: 100 }, + ]), + (v = { + timeZone: "", + format: !(g = {}), + dayViewHeaderFormat: "MMMM YYYY", + extraFormats: !(m = {}), + stepping: 1, + minDate: !(p = ["times", "days", "months", "years", "decades"]), + maxDate: !(f = { + up: 38, + 38: "up", + down: 40, + 40: "down", + left: 37, + 37: "left", + right: 39, + 39: "right", + tab: 9, + 9: "tab", + escape: 27, + 27: "escape", + enter: 13, + 13: "enter", + pageUp: 33, + 33: "pageUp", + pageDown: 34, + 34: "pageDown", + shift: 16, + 16: "shift", + control: 17, + 17: "control", + space: 32, + 32: "space", + t: 84, + 84: "t", + delete: 46, + 46: "delete", + }), + useCurrent: !0, + collapse: !0, + locale: n.locale(), + defaultDate: !1, + disabledDates: !1, + enabledDates: !1, + icons: { + time: "fa fa-clock-o", + date: "fa fa-calendar", + up: "fa fa-arrow-up", + down: "fa fa-arrow-down", + previous: "fa fa-chevron-left", + next: "fa fa-chevron-right", + today: "fa fa-calendar-check-o", + clear: "fa fa-delete", + close: "fa fa-times", + }, + tooltips: { + today: "Go to today", + clear: "Clear selection", + close: "Close the picker", + selectMonth: "Select Month", + prevMonth: "Previous Month", + nextMonth: "Next Month", + selectYear: "Select Year", + prevYear: "Previous Year", + nextYear: "Next Year", + selectDecade: "Select Decade", + prevDecade: "Previous Decade", + nextDecade: "Next Decade", + prevCentury: "Previous Century", + nextCentury: "Next Century", + pickHour: "Pick Hour", + incrementHour: "Increment Hour", + decrementHour: "Decrement Hour", + pickMinute: "Pick Minute", + incrementMinute: "Increment Minute", + decrementMinute: "Decrement Minute", + pickSecond: "Pick Second", + incrementSecond: "Increment Second", + decrementSecond: "Decrement Second", + togglePeriod: "Toggle Period", + selectTime: "Select Time", + selectDate: "Select Date", + }, + useStrict: !1, + sideBySide: !1, + daysOfWeekDisabled: !1, + calendarWeeks: !1, + viewMode: "days", + toolbarPlacement: "default", + buttons: { showToday: !1, showClear: !1, showClose: !1 }, + widgetPositioning: { horizontal: "auto", vertical: "auto" }, + widgetParent: null, + ignoreReadonly: !1, + keepOpen: !1, + focusOnShow: !0, + inline: !1, + keepInvalid: !1, + keyBinds: { + up: function () { + if (!this.widget) return !1; + var e = this._dates[0] || this.getMoment(); + return ( + this.widget.find(".datepicker").is(":visible") + ? this.date(e.clone().subtract(7, "d")) + : this.date(e.clone().add(this.stepping(), "m")), + !0 + ); + }, + down: function () { + if (!this.widget) return this.show(), !1; + var e = this._dates[0] || this.getMoment(); + return ( + this.widget.find(".datepicker").is(":visible") + ? this.date(e.clone().add(7, "d")) + : this.date(e.clone().subtract(this.stepping(), "m")), + !0 + ); + }, + "control up": function () { + if (!this.widget) return !1; + var e = this._dates[0] || this.getMoment(); + return ( + this.widget.find(".datepicker").is(":visible") + ? this.date(e.clone().subtract(1, "y")) + : this.date(e.clone().add(1, "h")), + !0 + ); + }, + "control down": function () { + if (!this.widget) return !1; + var e = this._dates[0] || this.getMoment(); + return ( + this.widget.find(".datepicker").is(":visible") + ? this.date(e.clone().add(1, "y")) + : this.date(e.clone().subtract(1, "h")), + !0 + ); + }, + left: function () { + if (!this.widget) return !1; + var e = this._dates[0] || this.getMoment(); + return ( + this.widget.find(".datepicker").is(":visible") && + this.date(e.clone().subtract(1, "d")), + !0 + ); + }, + right: function () { + if (!this.widget) return !1; + var e = this._dates[0] || this.getMoment(); + return ( + this.widget.find(".datepicker").is(":visible") && + this.date(e.clone().add(1, "d")), + !0 + ); + }, + pageUp: function () { + if (!this.widget) return !1; + var e = this._dates[0] || this.getMoment(); + return ( + this.widget.find(".datepicker").is(":visible") && + this.date(e.clone().subtract(1, "M")), + !0 + ); + }, + pageDown: function () { + if (!this.widget) return !1; + var e = this._dates[0] || this.getMoment(); + return ( + this.widget.find(".datepicker").is(":visible") && + this.date(e.clone().add(1, "M")), + !0 + ); + }, + enter: function () { + return !!this.widget && (this.hide(), !0); + }, + escape: function () { + return !!this.widget && (this.hide(), !0); + }, + "control space": function () { + return ( + !!this.widget && + (this.widget.find(".timepicker").is(":visible") && + this.widget.find('.btn[data-action="togglePeriod"]').click(), + !0) + ); + }, + t: function () { + return !!this.widget && (this.date(this.getMoment()), !0); + }, + delete: function () { + return !!this.widget && (this.clear(), !0); + }, + }, + debug: !1, + allowInputToggle: !1, + disabledTimeIntervals: !1, + disabledHours: !1, + enabledHours: !1, + viewDate: !1, + allowMultidate: !1, + multidateSeparator: ",", + }), + (y.prototype._int = function () { + var e = this._element.data("target-input"); + this._element.is("input") + ? (this.input = this._element) + : void 0 !== e && + (this.input = "nearest" === e ? this._element.find("input") : o(e)), + (this._dates = []), + (this._dates[0] = this.getMoment()), + (this._viewDate = this.getMoment().clone()), + o.extend(!0, this._options, this._dataToOptions()), + this.options(this._options), + this._initFormatting(), + void 0 !== this.input && + this.input.is("input") && + 0 !== this.input.val().trim().length + ? this._setValue(this._parseInputDate(this.input.val().trim()), 0) + : this._options.defaultDate && + void 0 !== this.input && + void 0 === this.input.attr("placeholder") && + this._setValue(this._options.defaultDate, 0), + this._options.inline && this.show(); + }), + (y.prototype._update = function () { + this.widget && (this._fillDate(), this._fillTime()); + }), + (y.prototype._setValue = function (e, t) { + var n = this.unset ? null : this._dates[t], + i = ""; + if (!e) + return ( + this._options.allowMultidate && 1 !== this._dates.length + ? ((i = (i = this._element.data("date") + ",") + .replace(n.format(this.actualFormat) + ",", "") + .replace(",,", "") + .replace(/,\s*$/, "")), + this._dates.splice(t, 1), + this._datesFormatted.splice(t, 1)) + : ((this.unset = !0), + (this._dates = []), + (this._datesFormatted = [])), + void 0 !== this.input && + (this.input.val(i), this.input.trigger("input")), + this._element.data("date", i), + this._notifyEvent({ type: y.Event.CHANGE, date: !1, oldDate: n }), + void this._update() + ); + if ( + ((e = e.clone().locale(this._options.locale)), + this._hasTimeZone() && e.tz(this._options.timeZone), + 1 !== this._options.stepping && + e + .minutes( + Math.round(e.minutes() / this._options.stepping) * + this._options.stepping, + ) + .seconds(0), + this._isValid(e)) + ) { + if ( + ((this._dates[t] = e), + (this._datesFormatted[t] = e.format("YYYY-MM-DD")), + (this._viewDate = e.clone()), + this._options.allowMultidate && 1 < this._dates.length) + ) { + for (var r = 0; r < this._dates.length; r++) + i += + "" + + this._dates[r].format(this.actualFormat) + + this._options.multidateSeparator; + i = i.replace(/,\s*$/, ""); + } else i = this._dates[t].format(this.actualFormat); + void 0 !== this.input && + (this.input.val(i), this.input.trigger("input")), + this._element.data("date", i), + (this.unset = !1), + this._update(), + this._notifyEvent({ + type: y.Event.CHANGE, + date: this._dates[t].clone(), + oldDate: n, + }); + } else + this._options.keepInvalid + ? this._notifyEvent({ type: y.Event.CHANGE, date: e, oldDate: n }) + : void 0 !== this.input && + (this.input.val( + "" + + (this.unset ? "" : this._dates[t].format(this.actualFormat)), + ), + this.input.trigger("input")), + this._notifyEvent({ type: y.Event.ERROR, date: e, oldDate: n }); + }), + (y.prototype._change = function (e) { + var t = o(e.target).val().trim(), + n = t ? this._parseInputDate(t) : null; + return this._setValue(n), e.stopImmediatePropagation(), !1; + }), + (y.prototype._getOptions = function (e) { + return (e = o.extend(!0, {}, v, e)); + }), + (y.prototype._hasTimeZone = function () { + return ( + void 0 !== n.tz && + void 0 !== this._options.timeZone && + null !== this._options.timeZone && + "" !== this._options.timeZone + ); + }), + (y.prototype._isEnabled = function (e) { + if ("string" != typeof e || 1 < e.length) + throw new TypeError( + "isEnabled expects a single character string parameter", + ); + switch (e) { + case "y": + return -1 !== this.actualFormat.indexOf("Y"); + case "M": + return -1 !== this.actualFormat.indexOf("M"); + case "d": + return -1 !== this.actualFormat.toLowerCase().indexOf("d"); + case "h": + case "H": + return -1 !== this.actualFormat.toLowerCase().indexOf("h"); + case "m": + return -1 !== this.actualFormat.indexOf("m"); + case "s": + return -1 !== this.actualFormat.indexOf("s"); + case "a": + case "A": + return -1 !== this.actualFormat.toLowerCase().indexOf("a"); + default: + return !1; + } + }), + (y.prototype._hasTime = function () { + return ( + this._isEnabled("h") || this._isEnabled("m") || this._isEnabled("s") + ); + }), + (y.prototype._hasDate = function () { + return ( + this._isEnabled("y") || this._isEnabled("M") || this._isEnabled("d") + ); + }), + (y.prototype._dataToOptions = function () { + var n = this._element.data(), + i = {}; + return ( + n.dateOptions && + n.dateOptions instanceof Object && + (i = o.extend(!0, i, n.dateOptions)), + o.each(this._options, function (e) { + var t = "date" + e.charAt(0).toUpperCase() + e.slice(1); + void 0 !== n[t] ? (i[e] = n[t]) : delete i[e]; + }), + i + ); + }), + (y.prototype._notifyEvent = function (e) { + (e.type === y.Event.CHANGE && e.date && e.date.isSame(e.oldDate)) || + (!e.date && !e.oldDate) || + this._element.trigger(e); + }), + (y.prototype._viewUpdate = function (e) { + "y" === e && (e = "YYYY"), + this._notifyEvent({ + type: y.Event.UPDATE, + change: e, + viewDate: this._viewDate.clone(), + }); + }), + (y.prototype._showMode = function (e) { + this.widget && + (e && + (this.currentViewMode = Math.max( + this.MinViewModeNumber, + Math.min(3, this.currentViewMode + e), + )), + this.widget + .find(".datepicker > div") + .hide() + .filter(".datepicker-" + h[this.currentViewMode].CLASS_NAME) + .show()); + }), + (y.prototype._isInDisabledDates = function (e) { + return !0 === this._options.disabledDates[e.format("YYYY-MM-DD")]; + }), + (y.prototype._isInEnabledDates = function (e) { + return !0 === this._options.enabledDates[e.format("YYYY-MM-DD")]; + }), + (y.prototype._isInDisabledHours = function (e) { + return !0 === this._options.disabledHours[e.format("H")]; + }), + (y.prototype._isInEnabledHours = function (e) { + return !0 === this._options.enabledHours[e.format("H")]; + }), + (y.prototype._isValid = function (e, t) { + if (!e.isValid()) return !1; + if ( + this._options.disabledDates && + "d" === t && + this._isInDisabledDates(e) + ) + return !1; + if ( + this._options.enabledDates && + "d" === t && + !this._isInEnabledDates(e) + ) + return !1; + if (this._options.minDate && e.isBefore(this._options.minDate, t)) + return !1; + if (this._options.maxDate && e.isAfter(this._options.maxDate, t)) + return !1; + if ( + this._options.daysOfWeekDisabled && + "d" === t && + -1 !== this._options.daysOfWeekDisabled.indexOf(e.day()) + ) + return !1; + if ( + this._options.disabledHours && + ("h" === t || "m" === t || "s" === t) && + this._isInDisabledHours(e) + ) + return !1; + if ( + this._options.enabledHours && + ("h" === t || "m" === t || "s" === t) && + !this._isInEnabledHours(e) + ) + return !1; + if ( + this._options.disabledTimeIntervals && + ("h" === t || "m" === t || "s" === t) + ) { + var n = !1; + if ( + (o.each(this._options.disabledTimeIntervals, function () { + if (e.isBetween(this[0], this[1])) return !(n = !0); + }), + n) + ) + return !1; + } + return !0; + }), + (y.prototype._parseInputDate = function (e) { + return ( + void 0 === this._options.parseInputDate + ? n.isMoment(e) || (e = this.getMoment(e)) + : (e = this._options.parseInputDate(e)), + e + ); + }), + (y.prototype._keydown = function (e) { + var t = null, + n = void 0, + i = void 0, + r = void 0, + a = void 0, + o = [], + s = {}, + l = e.which; + for (n in ((m[l] = "p"), m)) + m.hasOwnProperty(n) && + "p" === m[n] && + (o.push(n), parseInt(n, 10) !== l && (s[n] = !0)); + for (n in this._options.keyBinds) + if ( + this._options.keyBinds.hasOwnProperty(n) && + "function" == typeof this._options.keyBinds[n] && + (r = n.split(" ")).length === o.length && + f[l] === r[r.length - 1] + ) { + for (a = !0, i = r.length - 2; 0 <= i; i--) + if (!(f[r[i]] in s)) { + a = !1; + break; + } + if (a) { + t = this._options.keyBinds[n]; + break; + } + } + t && t.call(this) && (e.stopPropagation(), e.preventDefault()); + }), + (y.prototype._keyup = function (e) { + (m[e.which] = "r"), + g[e.which] && + ((g[e.which] = !1), e.stopPropagation(), e.preventDefault()); + }), + (y.prototype._indexGivenDates = function (e) { + var t = {}, + n = this; + return ( + o.each(e, function () { + var e = n._parseInputDate(this); + e.isValid() && (t[e.format("YYYY-MM-DD")] = !0); + }), + !!Object.keys(t).length && t + ); + }), + (y.prototype._indexGivenHours = function (e) { + var t = {}; + return ( + o.each(e, function () { + t[this] = !0; + }), + !!Object.keys(t).length && t + ); + }), + (y.prototype._initFormatting = function () { + var e = this._options.format || "L LT", + t = this; + (this.actualFormat = e.replace( + /(\[[^\[]*])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g, + function (e) { + return t._dates[0].localeData().longDateFormat(e) || e; + }, + )), + (this.parseFormats = this._options.extraFormats + ? this._options.extraFormats.slice() + : []), + this.parseFormats.indexOf(e) < 0 && + this.parseFormats.indexOf(this.actualFormat) < 0 && + this.parseFormats.push(this.actualFormat), + (this.use24Hours = + this.actualFormat.toLowerCase().indexOf("a") < 1 && + this.actualFormat.replace(/\[.*?]/g, "").indexOf("h") < 1), + this._isEnabled("y") && (this.MinViewModeNumber = 2), + this._isEnabled("M") && (this.MinViewModeNumber = 1), + this._isEnabled("d") && (this.MinViewModeNumber = 0), + (this.currentViewMode = Math.max( + this.MinViewModeNumber, + this.currentViewMode, + )), + this.unset || this._setValue(this._dates[0], 0); + }), + (y.prototype._getLastPickedDate = function () { + return this._dates[this._getLastPickedDateIndex()]; + }), + (y.prototype._getLastPickedDateIndex = function () { + return this._dates.length - 1; + }), + (y.prototype.getMoment = function (e) { + var t = void 0; + return ( + (t = + null == e + ? n() + : this._hasTimeZone() + ? n.tz( + e, + this.parseFormats, + this._options.locale, + this._options.useStrict, + this._options.timeZone, + ) + : n( + e, + this.parseFormats, + this._options.locale, + this._options.useStrict, + )), + this._hasTimeZone() && t.tz(this._options.timeZone), + t + ); + }), + (y.prototype.toggle = function () { + return this.widget ? this.hide() : this.show(); + }), + (y.prototype.ignoreReadonly = function (e) { + if (0 === arguments.length) return this._options.ignoreReadonly; + if ("boolean" != typeof e) + throw new TypeError("ignoreReadonly () expects a boolean parameter"); + this._options.ignoreReadonly = e; + }), + (y.prototype.options = function (e) { + if (0 === arguments.length) return o.extend(!0, {}, this._options); + if (!(e instanceof Object)) + throw new TypeError( + "options() this.options parameter should be an object", + ); + o.extend(!0, this._options, e); + var n = this; + o.each(this._options, function (e, t) { + void 0 !== n[e] && n[e](t); + }); + }), + (y.prototype.date = function (e, t) { + if (((t = t || 0), 0 === arguments.length)) + return this.unset + ? null + : this._options.allowMultidate + ? this._dates.join(this._options.multidateSeparator) + : this._dates[t].clone(); + if ( + !( + null === e || + "string" == typeof e || + n.isMoment(e) || + e instanceof Date + ) + ) + throw new TypeError( + "date() parameter must be one of [null, string, moment or Date]", + ); + this._setValue(null === e ? null : this._parseInputDate(e), t); + }), + (y.prototype.format = function (e) { + if (0 === arguments.length) return this._options.format; + if ("string" != typeof e && ("boolean" != typeof e || !1 !== e)) + throw new TypeError( + "format() expects a string or boolean:false parameter " + e, + ); + (this._options.format = e), this.actualFormat && this._initFormatting(); + }), + (y.prototype.timeZone = function (e) { + if (0 === arguments.length) return this._options.timeZone; + if ("string" != typeof e) + throw new TypeError("newZone() expects a string parameter"); + this._options.timeZone = e; + }), + (y.prototype.dayViewHeaderFormat = function (e) { + if (0 === arguments.length) return this._options.dayViewHeaderFormat; + if ("string" != typeof e) + throw new TypeError( + "dayViewHeaderFormat() expects a string parameter", + ); + this._options.dayViewHeaderFormat = e; + }), + (y.prototype.extraFormats = function (e) { + if (0 === arguments.length) return this._options.extraFormats; + if (!1 !== e && !(e instanceof Array)) + throw new TypeError( + "extraFormats() expects an array or false parameter", + ); + (this._options.extraFormats = e), + this.parseFormats && this._initFormatting(); + }), + (y.prototype.disabledDates = function (e) { + if (0 === arguments.length) + return this._options.disabledDates + ? o.extend({}, this._options.disabledDates) + : this._options.disabledDates; + if (!e) return (this._options.disabledDates = !1), this._update(), !0; + if (!(e instanceof Array)) + throw new TypeError("disabledDates() expects an array parameter"); + (this._options.disabledDates = this._indexGivenDates(e)), + (this._options.enabledDates = !1), + this._update(); + }), + (y.prototype.enabledDates = function (e) { + if (0 === arguments.length) + return this._options.enabledDates + ? o.extend({}, this._options.enabledDates) + : this._options.enabledDates; + if (!e) return (this._options.enabledDates = !1), this._update(), !0; + if (!(e instanceof Array)) + throw new TypeError("enabledDates() expects an array parameter"); + (this._options.enabledDates = this._indexGivenDates(e)), + (this._options.disabledDates = !1), + this._update(); + }), + (y.prototype.daysOfWeekDisabled = function (e) { + if (0 === arguments.length) + return this._options.daysOfWeekDisabled.splice(0); + if ("boolean" == typeof e && !e) + return (this._options.daysOfWeekDisabled = !1), this._update(), !0; + if (!(e instanceof Array)) + throw new TypeError( + "daysOfWeekDisabled() expects an array parameter", + ); + if ( + ((this._options.daysOfWeekDisabled = e + .reduce(function (e, t) { + return ( + 6 < (t = parseInt(t, 10)) || + t < 0 || + isNaN(t) || + (-1 === e.indexOf(t) && e.push(t)), + e + ); + }, []) + .sort()), + this._options.useCurrent && !this._options.keepInvalid) + ) + for (var t = 0; t < this._dates.length; t++) { + for (var n = 0; !this._isValid(this._dates[t], "d");) { + if ((this._dates[t].add(1, "d"), 31 === n)) + throw "Tried 31 times to find a valid date"; + n++; + } + this._setValue(this._dates[t], t); + } + this._update(); + }), + (y.prototype.maxDate = function (e) { + if (0 === arguments.length) + return this._options.maxDate + ? this._options.maxDate.clone() + : this._options.maxDate; + if ("boolean" == typeof e && !1 === e) + return (this._options.maxDate = !1), this._update(), !0; + "string" == typeof e && + (("now" !== e && "moment" !== e) || (e = this.getMoment())); + var t = this._parseInputDate(e); + if (!t.isValid()) + throw new TypeError("maxDate() Could not parse date parameter: " + e); + if (this._options.minDate && t.isBefore(this._options.minDate)) + throw new TypeError( + "maxDate() date parameter is before this.options.minDate: " + + t.format(this.actualFormat), + ); + this._options.maxDate = t; + for (var n = 0; n < this._dates.length; n++) + this._options.useCurrent && + !this._options.keepInvalid && + this._dates[n].isAfter(e) && + this._setValue(this._options.maxDate, n); + this._viewDate.isAfter(t) && + (this._viewDate = t.clone().subtract(this._options.stepping, "m")), + this._update(); + }), + (y.prototype.minDate = function (e) { + if (0 === arguments.length) + return this._options.minDate + ? this._options.minDate.clone() + : this._options.minDate; + if ("boolean" == typeof e && !1 === e) + return (this._options.minDate = !1), this._update(), !0; + "string" == typeof e && + (("now" !== e && "moment" !== e) || (e = this.getMoment())); + var t = this._parseInputDate(e); + if (!t.isValid()) + throw new TypeError("minDate() Could not parse date parameter: " + e); + if (this._options.maxDate && t.isAfter(this._options.maxDate)) + throw new TypeError( + "minDate() date parameter is after this.options.maxDate: " + + t.format(this.actualFormat), + ); + this._options.minDate = t; + for (var n = 0; n < this._dates.length; n++) + this._options.useCurrent && + !this._options.keepInvalid && + this._dates[n].isBefore(e) && + this._setValue(this._options.minDate, n); + this._viewDate.isBefore(t) && + (this._viewDate = t.clone().add(this._options.stepping, "m")), + this._update(); + }), + (y.prototype.defaultDate = function (e) { + if (0 === arguments.length) + return this._options.defaultDate + ? this._options.defaultDate.clone() + : this._options.defaultDate; + if (!e) return !(this._options.defaultDate = !1); + "string" == typeof e && + (e = + "now" === e || "moment" === e + ? this.getMoment() + : this.getMoment(e)); + var t = this._parseInputDate(e); + if (!t.isValid()) + throw new TypeError( + "defaultDate() Could not parse date parameter: " + e, + ); + if (!this._isValid(t)) + throw new TypeError( + "defaultDate() date passed is invalid according to component setup validations", + ); + (this._options.defaultDate = t), + ((this._options.defaultDate && this._options.inline) || + (void 0 !== this.input && "" === this.input.val().trim())) && + this._setValue(this._options.defaultDate, 0); + }), + (y.prototype.locale = function (e) { + if (0 === arguments.length) return this._options.locale; + if (!n.localeData(e)) + throw new TypeError( + "locale() locale " + e + " is not loaded from moment locales!", + ); + this._options.locale = e; + for (var t = 0; t < this._dates.length; t++) + this._dates[t].locale(this._options.locale); + this._viewDate.locale(this._options.locale), + this.actualFormat && this._initFormatting(), + this.widget && (this.hide(), this.show()); + }), + (y.prototype.stepping = function (e) { + if (0 === arguments.length) return this._options.stepping; + (e = parseInt(e, 10)), + (isNaN(e) || e < 1) && (e = 1), + (this._options.stepping = e); + }), + (y.prototype.useCurrent = function (e) { + var t = ["year", "month", "day", "hour", "minute"]; + if (0 === arguments.length) return this._options.useCurrent; + if ("boolean" != typeof e && "string" != typeof e) + throw new TypeError( + "useCurrent() expects a boolean or string parameter", + ); + if ("string" == typeof e && -1 === t.indexOf(e.toLowerCase())) + throw new TypeError( + "useCurrent() expects a string parameter of " + t.join(", "), + ); + this._options.useCurrent = e; + }), + (y.prototype.collapse = function (e) { + if (0 === arguments.length) return this._options.collapse; + if ("boolean" != typeof e) + throw new TypeError("collapse() expects a boolean parameter"); + if (this._options.collapse === e) return !0; + (this._options.collapse = e), this.widget && (this.hide(), this.show()); + }), + (y.prototype.icons = function (e) { + if (0 === arguments.length) return o.extend({}, this._options.icons); + if (!(e instanceof Object)) + throw new TypeError("icons() expects parameter to be an Object"); + o.extend(this._options.icons, e), + this.widget && (this.hide(), this.show()); + }), + (y.prototype.tooltips = function (e) { + if (0 === arguments.length) return o.extend({}, this._options.tooltips); + if (!(e instanceof Object)) + throw new TypeError("tooltips() expects parameter to be an Object"); + o.extend(this._options.tooltips, e), + this.widget && (this.hide(), this.show()); + }), + (y.prototype.useStrict = function (e) { + if (0 === arguments.length) return this._options.useStrict; + if ("boolean" != typeof e) + throw new TypeError("useStrict() expects a boolean parameter"); + this._options.useStrict = e; + }), + (y.prototype.sideBySide = function (e) { + if (0 === arguments.length) return this._options.sideBySide; + if ("boolean" != typeof e) + throw new TypeError("sideBySide() expects a boolean parameter"); + (this._options.sideBySide = e), + this.widget && (this.hide(), this.show()); + }), + (y.prototype.viewMode = function (e) { + if (0 === arguments.length) return this._options.viewMode; + if ("string" != typeof e) + throw new TypeError("viewMode() expects a string parameter"); + if (-1 === y.ViewModes.indexOf(e)) + throw new TypeError( + "viewMode() parameter must be one of (" + + y.ViewModes.join(", ") + + ") value", + ); + (this._options.viewMode = e), + (this.currentViewMode = Math.max( + y.ViewModes.indexOf(e) - 1, + this.MinViewModeNumber, + )), + this._showMode(); + }), + (y.prototype.calendarWeeks = function (e) { + if (0 === arguments.length) return this._options.calendarWeeks; + if ("boolean" != typeof e) + throw new TypeError( + "calendarWeeks() expects parameter to be a boolean value", + ); + (this._options.calendarWeeks = e), this._update(); + }), + (y.prototype.buttons = function (e) { + if (0 === arguments.length) return o.extend({}, this._options.buttons); + if (!(e instanceof Object)) + throw new TypeError("buttons() expects parameter to be an Object"); + if ( + (o.extend(this._options.buttons, e), + "boolean" != typeof this._options.buttons.showToday) + ) + throw new TypeError("buttons.showToday expects a boolean parameter"); + if ("boolean" != typeof this._options.buttons.showClear) + throw new TypeError("buttons.showClear expects a boolean parameter"); + if ("boolean" != typeof this._options.buttons.showClose) + throw new TypeError("buttons.showClose expects a boolean parameter"); + this.widget && (this.hide(), this.show()); + }), + (y.prototype.keepOpen = function (e) { + if (0 === arguments.length) return this._options.keepOpen; + if ("boolean" != typeof e) + throw new TypeError("keepOpen() expects a boolean parameter"); + this._options.keepOpen = e; + }), + (y.prototype.focusOnShow = function (e) { + if (0 === arguments.length) return this._options.focusOnShow; + if ("boolean" != typeof e) + throw new TypeError("focusOnShow() expects a boolean parameter"); + this._options.focusOnShow = e; + }), + (y.prototype.inline = function (e) { + if (0 === arguments.length) return this._options.inline; + if ("boolean" != typeof e) + throw new TypeError("inline() expects a boolean parameter"); + this._options.inline = e; + }), + (y.prototype.clear = function () { + this._setValue(null); + }), + (y.prototype.keyBinds = function (e) { + if (0 === arguments.length) return this._options.keyBinds; + this._options.keyBinds = e; + }), + (y.prototype.debug = function (e) { + if ("boolean" != typeof e) + throw new TypeError("debug() expects a boolean parameter"); + this._options.debug = e; + }), + (y.prototype.allowInputToggle = function (e) { + if (0 === arguments.length) return this._options.allowInputToggle; + if ("boolean" != typeof e) + throw new TypeError("allowInputToggle() expects a boolean parameter"); + this._options.allowInputToggle = e; + }), + (y.prototype.keepInvalid = function (e) { + if (0 === arguments.length) return this._options.keepInvalid; + if ("boolean" != typeof e) + throw new TypeError("keepInvalid() expects a boolean parameter"); + this._options.keepInvalid = e; + }), + (y.prototype.datepickerInput = function (e) { + if (0 === arguments.length) return this._options.datepickerInput; + if ("string" != typeof e) + throw new TypeError("datepickerInput() expects a string parameter"); + this._options.datepickerInput = e; + }), + (y.prototype.parseInputDate = function (e) { + if (0 === arguments.length) return this._options.parseInputDate; + if ("function" != typeof e) + throw new TypeError("parseInputDate() should be as function"); + this._options.parseInputDate = e; + }), + (y.prototype.disabledTimeIntervals = function (e) { + if (0 === arguments.length) + return this._options.disabledTimeIntervals + ? o.extend({}, this._options.disabledTimeIntervals) + : this._options.disabledTimeIntervals; + if (!e) + return (this._options.disabledTimeIntervals = !1), this._update(), !0; + if (!(e instanceof Array)) + throw new TypeError( + "disabledTimeIntervals() expects an array parameter", + ); + (this._options.disabledTimeIntervals = e), this._update(); + }), + (y.prototype.disabledHours = function (e) { + if (0 === arguments.length) + return this._options.disabledHours + ? o.extend({}, this._options.disabledHours) + : this._options.disabledHours; + if (!e) return (this._options.disabledHours = !1), this._update(), !0; + if (!(e instanceof Array)) + throw new TypeError("disabledHours() expects an array parameter"); + if ( + ((this._options.disabledHours = this._indexGivenHours(e)), + (this._options.enabledHours = !1), + this._options.useCurrent && !this._options.keepInvalid) + ) + for (var t = 0; t < this._dates.length; t++) { + for (var n = 0; !this._isValid(this._dates[t], "h");) { + if ((this._dates[t].add(1, "h"), 24 === n)) + throw "Tried 24 times to find a valid date"; + n++; + } + this._setValue(this._dates[t], t); + } + this._update(); + }), + (y.prototype.enabledHours = function (e) { + if (0 === arguments.length) + return this._options.enabledHours + ? o.extend({}, this._options.enabledHours) + : this._options.enabledHours; + if (!e) return (this._options.enabledHours = !1), this._update(), !0; + if (!(e instanceof Array)) + throw new TypeError("enabledHours() expects an array parameter"); + if ( + ((this._options.enabledHours = this._indexGivenHours(e)), + (this._options.disabledHours = !1), + this._options.useCurrent && !this._options.keepInvalid) + ) + for (var t = 0; t < this._dates.length; t++) { + for (var n = 0; !this._isValid(this._dates[t], "h");) { + if ((this._dates[t].add(1, "h"), 24 === n)) + throw "Tried 24 times to find a valid date"; + n++; + } + this._setValue(this._dates[t], t); + } + this._update(); + }), + (y.prototype.viewDate = function (e) { + if (0 === arguments.length) return this._viewDate.clone(); + if (!e) + return ( + (this._viewDate = (this._dates[0] || this.getMoment()).clone()), !0 + ); + if (!("string" == typeof e || n.isMoment(e) || e instanceof Date)) + throw new TypeError( + "viewDate() parameter must be one of [string, moment or Date]", + ); + (this._viewDate = this._parseInputDate(e)), this._viewUpdate(); + }), + (y.prototype.allowMultidate = function (e) { + if ("boolean" != typeof e) + throw new TypeError("allowMultidate() expects a boolean parameter"); + this._options.allowMultidate = e; + }), + (y.prototype.multidateSeparator = function (e) { + if (0 === arguments.length) return this._options.multidateSeparator; + if ("string" != typeof e || 1 < e.length) + throw new TypeError( + "multidateSeparator expects a single character string parameter", + ); + this._options.multidateSeparator = e; + }), + e(y, null, [ + { + key: "NAME", + get: function () { + return t; + }, + }, + { + key: "DATA_KEY", + get: function () { + return s; + }, + }, + { + key: "EVENT_KEY", + get: function () { + return l; + }, + }, + { + key: "DATA_API_KEY", + get: function () { + return ".data-api"; + }, + }, + { + key: "DatePickerModes", + get: function () { + return h; + }, + }, + { + key: "ViewModes", + get: function () { + return p; + }, + }, + { + key: "Event", + get: function () { + return d; + }, + }, + { + key: "Selector", + get: function () { + return u; + }, + }, + { + key: "Default", + get: function () { + return v; + }, + set: function (e) { + v = e; + }, + }, + { + key: "ClassName", + get: function () { + return c; + }, + }, + ]), + y); + function y(e, t) { + a(this, y), + (this._options = this._getOptions(t)), + (this._element = e), + (this._dates = []), + (this._datesFormatted = []), + (this._viewDate = null), + (this.unset = !0), + (this.component = !1), + (this.widget = !1), + (this.use24Hours = null), + (this.actualFormat = null), + (this.parseFormats = null), + (this.currentViewMode = null), + (this.MinViewModeNumber = 0), + this._int(); + } + var S, b, _, w, x, D, k; + (S = jQuery), + (_ = S.fn[T.NAME]), + (w = ["top", "bottom", "auto"]), + (x = ["left", "right", "auto"]), + (D = ["default", "top", "bottom"]), + (function (e, t) { + if ("function" != typeof t && null !== t) + throw new TypeError( + "Super expression must either be null or a function, not " + typeof t, + ); + (e.prototype = Object.create(t && t.prototype, { + constructor: { + value: e, + enumerable: !1, + writable: !0, + configurable: !0, + }, + })), + t && + (Object.setPrototypeOf + ? Object.setPrototypeOf(e, t) + : (e.__proto__ = t)); + })(E, (b = T)), + (E.prototype._init = function () { + if (this._element.hasClass("input-group")) { + var e = this._element.find(".datepickerbutton"); + 0 === e.length + ? (this.component = this._element.find( + '[data-toggle="datetimepicker"]', + )) + : (this.component = e); + } + }), + (E.prototype._getDatePickerTemplate = function () { + var e = S("").append( + S("") + .append( + S("") + .addClass("prev") + .attr("data-action", "previous") + .append(S("").addClass(this._options.icons.previous)), + ) + .append( + S("") + .addClass("picker-switch") + .attr("data-action", "pickerSwitch") + .attr("colspan", this._options.calendarWeeks ? "6" : "5"), + ) + .append( + S("") + .addClass("next") + .attr("data-action", "next") + .append(S("").addClass(this._options.icons.next)), + ), + ), + t = S("").append( + S("").append( + S("").attr("colspan", this._options.calendarWeeks ? "8" : "7"), + ), + ); + return [ + S("
") + .addClass("datepicker-days") + .append( + S("") + .addClass("table table-sm") + .append(e) + .append(S("")), + ), + S("
") + .addClass("datepicker-months") + .append( + S("
") + .addClass("table-condensed") + .append(e.clone()) + .append(t.clone()), + ), + S("
") + .addClass("datepicker-years") + .append( + S("
") + .addClass("table-condensed") + .append(e.clone()) + .append(t.clone()), + ), + S("
") + .addClass("datepicker-decades") + .append( + S("
") + .addClass("table-condensed") + .append(e.clone()) + .append(t.clone()), + ), + ]; + }), + (E.prototype._getTimePickerMainTemplate = function () { + var e = S(""), + t = S(""), + n = S(""); + return ( + this._isEnabled("h") && + (e.append( + S("").append(S("").append(S("").append(S("
").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + title: this._options.tooltips.incrementHour, + }) + .addClass("btn") + .attr("data-action", "incrementHours") + .append(S("").addClass(this._options.icons.up)), + ), + ), + t.append( + S("").append( + S("") + .addClass("timepicker-hour") + .attr({ + "data-time-component": "hours", + title: this._options.tooltips.pickHour, + }) + .attr("data-action", "showHours"), + ), + ), + n.append( + S("").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + title: this._options.tooltips.decrementHour, + }) + .addClass("btn") + .attr("data-action", "decrementHours") + .append(S("").addClass(this._options.icons.down)), + ), + )), + this._isEnabled("m") && + (this._isEnabled("h") && + (e.append(S("").addClass("separator")), + t.append(S("").addClass("separator").html(":")), + n.append(S("").addClass("separator"))), + e.append( + S("").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + title: this._options.tooltips.incrementMinute, + }) + .addClass("btn") + .attr("data-action", "incrementMinutes") + .append(S("").addClass(this._options.icons.up)), + ), + ), + t.append( + S("").append( + S("") + .addClass("timepicker-minute") + .attr({ + "data-time-component": "minutes", + title: this._options.tooltips.pickMinute, + }) + .attr("data-action", "showMinutes"), + ), + ), + n.append( + S("").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + title: this._options.tooltips.decrementMinute, + }) + .addClass("btn") + .attr("data-action", "decrementMinutes") + .append(S("").addClass(this._options.icons.down)), + ), + )), + this._isEnabled("s") && + (this._isEnabled("m") && + (e.append(S("").addClass("separator")), + t.append(S("").addClass("separator").html(":")), + n.append(S("").addClass("separator"))), + e.append( + S("").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + title: this._options.tooltips.incrementSecond, + }) + .addClass("btn") + .attr("data-action", "incrementSeconds") + .append(S("").addClass(this._options.icons.up)), + ), + ), + t.append( + S("").append( + S("") + .addClass("timepicker-second") + .attr({ + "data-time-component": "seconds", + title: this._options.tooltips.pickSecond, + }) + .attr("data-action", "showSeconds"), + ), + ), + n.append( + S("").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + title: this._options.tooltips.decrementSecond, + }) + .addClass("btn") + .attr("data-action", "decrementSeconds") + .append(S("").addClass(this._options.icons.down)), + ), + )), + this.use24Hours || + (e.append(S("").addClass("separator")), + t.append( + S("").append( + S("").addClass("separator"))), + S("
") + .addClass("timepicker-picker") + .append(S("").addClass("table-condensed").append([e, t, n])) + ); + }), + (E.prototype._getTimePickerTemplate = function () { + var e = S("
") + .addClass("timepicker-hours") + .append(S("
").addClass("table-condensed")), + t = S("
") + .addClass("timepicker-minutes") + .append(S("
").addClass("table-condensed")), + n = S("
") + .addClass("timepicker-seconds") + .append(S("
").addClass("table-condensed")), + i = [this._getTimePickerMainTemplate()]; + return ( + this._isEnabled("h") && i.push(e), + this._isEnabled("m") && i.push(t), + this._isEnabled("s") && i.push(n), + i + ); + }), + (E.prototype._getToolbar = function () { + var e = []; + if ( + (this._options.buttons.showToday && + e.push( + S("
").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + "data-action": "today", + title: this._options.tooltips.today, + }) + .append(S("").addClass(this._options.icons.today)), + ), + ), + !this._options.sideBySide && this._hasDate() && this._hasTime()) + ) { + var t = void 0, + n = void 0; + (n = + "times" === this._options.viewMode + ? ((t = this._options.tooltips.selectDate), + this._options.icons.date) + : ((t = this._options.tooltips.selectTime), + this._options.icons.time)), + e.push( + S("").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + "data-action": "togglePicker", + title: t, + }) + .append(S("").addClass(n)), + ), + ); + } + return ( + this._options.buttons.showClear && + e.push( + S("").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + "data-action": "clear", + title: this._options.tooltips.clear, + }) + .append(S("").addClass(this._options.icons.clear)), + ), + ), + this._options.buttons.showClose && + e.push( + S("").append( + S("") + .attr({ + href: "#", + tabindex: "-1", + "data-action": "close", + title: this._options.tooltips.close, + }) + .append(S("").addClass(this._options.icons.close)), + ), + ), + 0 === e.length + ? "" + : S("") + .addClass("table-condensed") + .append(S("").append(S("").append(e))) + ); + }), + (E.prototype._getTemplate = function () { + var e = S("
").addClass( + "bootstrap-datetimepicker-widget dropdown-menu", + ), + t = S("
") + .addClass("datepicker") + .append(this._getDatePickerTemplate()), + n = S("
") + .addClass("timepicker") + .append(this._getTimePickerTemplate()), + i = S("
    ").addClass("list-unstyled"), + r = S("
  • ") + .addClass( + "picker-switch" + + (this._options.collapse ? " accordion-toggle" : ""), + ) + .append(this._getToolbar()); + return ( + this._options.inline && e.removeClass("dropdown-menu"), + this.use24Hours && e.addClass("usetwentyfour"), + this._isEnabled("s") && !this.use24Hours && e.addClass("wider"), + this._options.sideBySide && this._hasDate() && this._hasTime() + ? (e.addClass("timepicker-sbs"), + "top" === this._options.toolbarPlacement && e.append(r), + e.append( + S("
    ") + .addClass("row") + .append(t.addClass("col-md-6")) + .append(n.addClass("col-md-6")), + ), + ("bottom" !== this._options.toolbarPlacement && + "default" !== this._options.toolbarPlacement) || + e.append(r), + e) + : ("top" === this._options.toolbarPlacement && i.append(r), + this._hasDate() && + i.append( + S("
  • ") + .addClass( + this._options.collapse && this._hasTime() ? "collapse" : "", + ) + .addClass( + this._options.collapse && + this._hasTime() && + "times" === this._options.viewMode + ? "" + : "show", + ) + .append(t), + ), + "default" === this._options.toolbarPlacement && i.append(r), + this._hasTime() && + i.append( + S("
  • ") + .addClass( + this._options.collapse && this._hasDate() ? "collapse" : "", + ) + .addClass( + this._options.collapse && + this._hasDate() && + "times" === this._options.viewMode + ? "show" + : "", + ) + .append(n), + ), + "bottom" === this._options.toolbarPlacement && i.append(r), + e.append(i)) + ); + }), + (E.prototype._place = function (e) { + var t = (e && e.data && e.data.picker) || this, + n = t._options.widgetPositioning.vertical, + i = t._options.widgetPositioning.horizontal, + r = void 0, + a = ( + t.component && t.component.length ? t.component : t._element + ).position(), + o = ( + t.component && t.component.length ? t.component : t._element + ).offset(); + if (t._options.widgetParent) r = t._options.widgetParent.append(t.widget); + else if (t._element.is("input")) r = t._element.after(t.widget).parent(); + else { + if (t._options.inline) return void (r = t._element.append(t.widget)); + (r = t._element), t._element.children().first().after(t.widget); + } + if ( + ("auto" === n && + (n = + o.top + 1.5 * t.widget.height() >= + S(window).height() + S(window).scrollTop() && + t.widget.height() + t._element.outerHeight() < o.top + ? "top" + : "bottom"), + "auto" === i && + (i = + r.width() < o.left + t.widget.outerWidth() / 2 && + o.left + t.widget.outerWidth() > S(window).width() + ? "right" + : "left"), + "top" === n + ? t.widget.addClass("top").removeClass("bottom") + : t.widget.addClass("bottom").removeClass("top"), + "right" === i + ? t.widget.addClass("float-right") + : t.widget.removeClass("float-right"), + "relative" !== r.css("position") && + (r = r + .parents() + .filter(function () { + return "relative" === S(this).css("position"); + }) + .first()), + 0 === r.length) + ) + throw new Error( + "datetimepicker component should be placed within a relative positioned container", + ); + t.widget.css({ + top: "top" === n ? "auto" : a.top + t._element.outerHeight() + "px", + bottom: + "top" === n + ? r.outerHeight() - (r === t._element ? 0 : a.top) + "px" + : "auto", + left: "left" === i ? (r === t._element ? 0 : a.left) + "px" : "auto", + right: + "left" === i + ? "auto" + : r.outerWidth() - + t._element.outerWidth() - + (r === t._element ? 0 : a.left) + + "px", + }); + }), + (E.prototype._fillDow = function () { + var e = S("
"), + t = this._viewDate.clone().startOf("w").startOf("d"); + for ( + !0 === this._options.calendarWeeks && + e.append(S("")), + this._options.calendarWeeks && + r.append('"), + n.push(r)), + (a = ""), + i.isBefore(this._viewDate, "M") && (a += " old"), + i.isAfter(this._viewDate, "M") && (a += " new"), + this._options.allowMultidate) + ) { + var s = this._datesFormatted.indexOf(i.format("YYYY-MM-DD")); + -1 !== s && + i.isSame(this._datesFormatted[s], "d") && + !this.unset && + (a += " active"); + } else + i.isSame(this._getLastPickedDate(), "d") && + !this.unset && + (a += " active"); + this._isValid(i, "d") || (a += " disabled"), + i.isSame(this.getMoment(), "d") && (a += " today"), + (0 !== i.day() && 6 !== i.day()) || (a += " weekend"), + r.append( + '", + ), + i.add(1, "d"); + } + e.find("tbody").empty().append(n), + this._updateMonths(), + this._updateYears(), + this._updateDecades(); + } + }), + (E.prototype._fillHours = function () { + var e = this.widget.find(".timepicker-hours table"), + t = this._viewDate.clone().startOf("d"), + n = [], + i = S(""); + for ( + 11 < this._viewDate.hour() && !this.use24Hours && t.hour(12); + t.isSame(this._viewDate, "d") && + (this.use24Hours || + (this._viewDate.hour() < 12 && t.hour() < 12) || + 11 < this._viewDate.hour()); + + ) + t.hour() % 4 == 0 && ((i = S("")), n.push(i)), + i.append( + '", + ), + t.add(1, "h"); + e.empty().append(n); + }), + (E.prototype._fillMinutes = function () { + for ( + var e = this.widget.find(".timepicker-minutes table"), + t = this._viewDate.clone().startOf("h"), + n = [], + i = 1 === this._options.stepping ? 5 : this._options.stepping, + r = S(""); + this._viewDate.isSame(t, "h"); + + ) + t.minute() % (4 * i) == 0 && ((r = S("")), n.push(r)), + r.append( + '", + ), + t.add(i, "m"); + e.empty().append(n); + }), + (E.prototype._fillSeconds = function () { + for ( + var e = this.widget.find(".timepicker-seconds table"), + t = this._viewDate.clone().startOf("m"), + n = [], + i = S(""); + this._viewDate.isSame(t, "m"); + + ) + t.second() % 20 == 0 && ((i = S("")), n.push(i)), + i.append( + '", + ), + t.add(5, "s"); + e.empty().append(n); + }), + (E.prototype._fillTime = function () { + var e = void 0, + t = void 0, + n = this.widget.find(".timepicker span[data-time-component]"); + this.use24Hours || + ((e = this.widget.find(".timepicker [data-action=togglePeriod]")), + (t = this._getLastPickedDate() + .clone() + .add(12 <= this._getLastPickedDate().hours() ? -12 : 12, "h")), + e.text(this._getLastPickedDate().format("A")), + this._isValid(t, "h") + ? e.removeClass("disabled") + : e.addClass("disabled")), + n + .filter("[data-time-component=hours]") + .text( + this._getLastPickedDate().format(this.use24Hours ? "HH" : "hh"), + ), + n + .filter("[data-time-component=minutes]") + .text(this._getLastPickedDate().format("mm")), + n + .filter("[data-time-component=seconds]") + .text(this._getLastPickedDate().format("ss")), + this._fillHours(), + this._fillMinutes(), + this._fillSeconds(); + }), + (E.prototype._doAction = function (e, t) { + var n = this._getLastPickedDate(); + if (S(e.currentTarget).is(".disabled")) return !1; + switch ((t = t || S(e.currentTarget).data("action"))) { + case "next": + var i = T.DatePickerModes[this.currentViewMode].NAV_FUNCTION; + this._viewDate.add( + T.DatePickerModes[this.currentViewMode].NAV_STEP, + i, + ), + this._fillDate(), + this._viewUpdate(i); + break; + case "previous": + var r = T.DatePickerModes[this.currentViewMode].NAV_FUNCTION; + this._viewDate.subtract( + T.DatePickerModes[this.currentViewMode].NAV_STEP, + r, + ), + this._fillDate(), + this._viewUpdate(r); + break; + case "pickerSwitch": + this._showMode(1); + break; + case "selectMonth": + var a = S(e.target).closest("tbody").find("span").index(S(e.target)); + this._viewDate.month(a), + this.currentViewMode === this.MinViewModeNumber + ? (this._setValue( + n + .clone() + .year(this._viewDate.year()) + .month(this._viewDate.month()), + this._getLastPickedDateIndex(), + ), + this._options.inline || this.hide()) + : (this._showMode(-1), this._fillDate()), + this._viewUpdate("M"); + break; + case "selectYear": + var o = parseInt(S(e.target).text(), 10) || 0; + this._viewDate.year(o), + this.currentViewMode === this.MinViewModeNumber + ? (this._setValue( + n.clone().year(this._viewDate.year()), + this._getLastPickedDateIndex(), + ), + this._options.inline || this.hide()) + : (this._showMode(-1), this._fillDate()), + this._viewUpdate("YYYY"); + break; + case "selectDecade": + var s = parseInt(S(e.target).data("selection"), 10) || 0; + this._viewDate.year(s), + this.currentViewMode === this.MinViewModeNumber + ? (this._setValue( + n.clone().year(this._viewDate.year()), + this._getLastPickedDateIndex(), + ), + this._options.inline || this.hide()) + : (this._showMode(-1), this._fillDate()), + this._viewUpdate("YYYY"); + break; + case "selectDay": + var l = this._viewDate.clone(); + S(e.target).is(".old") && l.subtract(1, "M"), + S(e.target).is(".new") && l.add(1, "M"); + var u = l.date(parseInt(S(e.target).text(), 10)), + c = 0; + this._options.allowMultidate + ? -1 !== (c = this._datesFormatted.indexOf(u.format("YYYY-MM-DD"))) + ? this._setValue(null, c) + : this._setValue(u, this._getLastPickedDateIndex() + 1) + : this._setValue(u, this._getLastPickedDateIndex()), + this._hasTime() || + this._options.keepOpen || + this._options.inline || + this._options.allowMultidate || + this.hide(); + break; + case "incrementHours": + var d = n.clone().add(1, "h"); + this._isValid(d, "h") && + this._setValue(d, this._getLastPickedDateIndex()); + break; + case "incrementMinutes": + var h = n.clone().add(this._options.stepping, "m"); + this._isValid(h, "m") && + this._setValue(h, this._getLastPickedDateIndex()); + break; + case "incrementSeconds": + var f = n.clone().add(1, "s"); + this._isValid(f, "s") && + this._setValue(f, this._getLastPickedDateIndex()); + break; + case "decrementHours": + var p = n.clone().subtract(1, "h"); + this._isValid(p, "h") && + this._setValue(p, this._getLastPickedDateIndex()); + break; + case "decrementMinutes": + var m = n.clone().subtract(this._options.stepping, "m"); + this._isValid(m, "m") && + this._setValue(m, this._getLastPickedDateIndex()); + break; + case "decrementSeconds": + var g = n.clone().subtract(1, "s"); + this._isValid(g, "s") && + this._setValue(g, this._getLastPickedDateIndex()); + break; + case "togglePeriod": + this._setValue( + n.clone().add(12 <= n.hours() ? -12 : 12, "h"), + this._getLastPickedDateIndex(), + ); + break; + case "togglePicker": + var v = S(e.target), + y = v.closest("a"), + b = v.closest("ul"), + _ = b.find(".show"), + w = b.find(".collapse:not(.show)"), + x = v.is("span") ? v : v.find("span"), + D = void 0; + if (_ && _.length) { + if ((D = _.data("collapse")) && D.transitioning) return !0; + _.collapse + ? (_.collapse("hide"), w.collapse("show")) + : (_.removeClass("show"), w.addClass("show")), + x.toggleClass( + this._options.icons.time + " " + this._options.icons.date, + ), + x.hasClass(this._options.icons.date) + ? y.attr("title", this._options.tooltips.selectDate) + : y.attr("title", this._options.tooltips.selectTime); + } + break; + case "showPicker": + this.widget.find(".timepicker > div:not(.timepicker-picker)").hide(), + this.widget.find(".timepicker .timepicker-picker").show(); + break; + case "showHours": + this.widget.find(".timepicker .timepicker-picker").hide(), + this.widget.find(".timepicker .timepicker-hours").show(); + break; + case "showMinutes": + this.widget.find(".timepicker .timepicker-picker").hide(), + this.widget.find(".timepicker .timepicker-minutes").show(); + break; + case "showSeconds": + this.widget.find(".timepicker .timepicker-picker").hide(), + this.widget.find(".timepicker .timepicker-seconds").show(); + break; + case "selectHour": + var k = parseInt(S(e.target).text(), 10); + this.use24Hours || + (12 <= n.hours() ? 12 !== k && (k += 12) : 12 === k && (k = 0)), + this._setValue(n.clone().hours(k), this._getLastPickedDateIndex()), + this._isEnabled("a") || + this._isEnabled("m") || + this._options.keepOpen || + this._options.inline + ? this._doAction(e, "showPicker") + : this.hide(); + break; + case "selectMinute": + this._setValue( + n.clone().minutes(parseInt(S(e.target).text(), 10)), + this._getLastPickedDateIndex(), + ), + this._isEnabled("a") || + this._isEnabled("s") || + this._options.keepOpen || + this._options.inline + ? this._doAction(e, "showPicker") + : this.hide(); + break; + case "selectSecond": + this._setValue( + n.clone().seconds(parseInt(S(e.target).text(), 10)), + this._getLastPickedDateIndex(), + ), + this._isEnabled("a") || + this._options.keepOpen || + this._options.inline + ? this._doAction(e, "showPicker") + : this.hide(); + break; + case "clear": + this.clear(); + break; + case "close": + this.hide(); + break; + case "today": + var C = this.getMoment(); + this._isValid(C, "d") && + this._setValue(C, this._getLastPickedDateIndex()); + } + return !1; + }), + (E.prototype.hide = function () { + var t = !1; + this.widget && + (this.widget.find(".collapse").each(function () { + var e = S(this).data("collapse"); + return !e || !e.transitioning || !(t = !0); + }), + t || + (this.component && + this.component.hasClass("btn") && + this.component.toggleClass("active"), + this.widget.hide(), + S(window).off("resize", this._place()), + this.widget.off("click", "[data-action]"), + this.widget.off("mousedown", !1), + this.widget.remove(), + (this.widget = !1), + this._notifyEvent({ + type: T.Event.HIDE, + date: this._getLastPickedDate().clone(), + }), + void 0 !== this.input && this.input.blur(), + (this._viewDate = this._getLastPickedDate().clone()))); + }), + (E.prototype.show = function () { + var e = void 0, + t = { + year: function (e) { + return e.month(0).date(1).hours(0).seconds(0).minutes(0); + }, + month: function (e) { + return e.date(1).hours(0).seconds(0).minutes(0); + }, + day: function (e) { + return e.hours(0).seconds(0).minutes(0); + }, + hour: function (e) { + return e.seconds(0).minutes(0); + }, + minute: function (e) { + return e.seconds(0); + }, + }; + if (void 0 !== this.input) { + if ( + this.input.prop("disabled") || + (!this._options.ignoreReadonly && this.input.prop("readonly")) || + this.widget + ) + return; + void 0 !== this.input.val() && 0 !== this.input.val().trim().length + ? this._setValue(this._parseInputDate(this.input.val().trim()), 0) + : this.unset && + this._options.useCurrent && + ((e = this.getMoment()), + "string" == typeof this._options.useCurrent && + (e = t[this._options.useCurrent](e)), + this._setValue(e, 0)); + } else + this.unset && + this._options.useCurrent && + ((e = this.getMoment()), + "string" == typeof this._options.useCurrent && + (e = t[this._options.useCurrent](e)), + this._setValue(e, 0)); + (this.widget = this._getTemplate()), + this._fillDow(), + this._fillMonths(), + this.widget.find(".timepicker-hours").hide(), + this.widget.find(".timepicker-minutes").hide(), + this.widget.find(".timepicker-seconds").hide(), + this._update(), + this._showMode(), + S(window).on("resize", { picker: this }, this._place), + this.widget.on("click", "[data-action]", S.proxy(this._doAction, this)), + this.widget.on("mousedown", !1), + this.component && + this.component.hasClass("btn") && + this.component.toggleClass("active"), + this._place(), + this.widget.show(), + void 0 !== this.input && + this._options.focusOnShow && + !this.input.is(":focus") && + this.input.focus(), + this._notifyEvent({ type: T.Event.SHOW }); + }), + (E.prototype.destroy = function () { + this.hide(), + this._element.removeData(T.DATA_KEY), + this._element.removeData("date"); + }), + (E.prototype.disable = function () { + this.hide(), + this.component && + this.component.hasClass("btn") && + this.component.addClass("disabled"), + void 0 !== this.input && this.input.prop("disabled", !0); + }), + (E.prototype.enable = function () { + this.component && + this.component.hasClass("btn") && + this.component.removeClass("disabled"), + void 0 !== this.input && this.input.prop("disabled", !1); + }), + (E.prototype.toolbarPlacement = function (e) { + if (0 === arguments.length) return this._options.toolbarPlacement; + if ("string" != typeof e) + throw new TypeError("toolbarPlacement() expects a string parameter"); + if (-1 === D.indexOf(e)) + throw new TypeError( + "toolbarPlacement() parameter must be one of (" + + D.join(", ") + + ") value", + ); + (this._options.toolbarPlacement = e), + this.widget && (this.hide(), this.show()); + }), + (E.prototype.widgetPositioning = function (e) { + if (0 === arguments.length) + return S.extend({}, this._options.widgetPositioning); + if ("[object Object]" !== {}.toString.call(e)) + throw new TypeError("widgetPositioning() expects an object variable"); + if (e.horizontal) { + if ("string" != typeof e.horizontal) + throw new TypeError( + "widgetPositioning() horizontal variable must be a string", + ); + if ( + ((e.horizontal = e.horizontal.toLowerCase()), + -1 === x.indexOf(e.horizontal)) + ) + throw new TypeError( + "widgetPositioning() expects horizontal parameter to be one of (" + + x.join(", ") + + ")", + ); + this._options.widgetPositioning.horizontal = e.horizontal; + } + if (e.vertical) { + if ("string" != typeof e.vertical) + throw new TypeError( + "widgetPositioning() vertical variable must be a string", + ); + if ( + ((e.vertical = e.vertical.toLowerCase()), + -1 === w.indexOf(e.vertical)) + ) + throw new TypeError( + "widgetPositioning() expects vertical parameter to be one of (" + + w.join(", ") + + ")", + ); + this._options.widgetPositioning.vertical = e.vertical; + } + this._update(); + }), + (E.prototype.widgetParent = function (e) { + if (0 === arguments.length) return this._options.widgetParent; + if ( + ("string" == typeof e && (e = S(e)), + null !== e && "string" != typeof e && !(e instanceof S)) + ) + throw new TypeError( + "widgetParent() expects a string or a jQuery object parameter", + ); + (this._options.widgetParent = e), + this.widget && (this.hide(), this.show()); + }), + (E._jQueryHandleThis = function (e, t, n) { + var i = S(e).data(T.DATA_KEY); + if ( + ("object" === (void 0 === t ? "undefined" : r(t)) && + S.extend({}, T.Default, t), + i || ((i = new E(S(e), t)), S(e).data(T.DATA_KEY, i)), + "string" == typeof t) + ) { + if (void 0 === i[t]) throw new Error('No method named "' + t + '"'); + return void 0 === n ? i[t]() : i[t](n); + } + }), + (E._jQueryInterface = function (e, t) { + return 1 === this.length + ? E._jQueryHandleThis(this[0], e, t) + : this.each(function () { + E._jQueryHandleThis(this, e, t); + }); + }), + (k = E), + S(document) + .on(T.Event.CLICK_DATA_API, T.Selector.DATA_TOGGLE, function () { + var e = C(S(this)); + 0 !== e.length && k._jQueryInterface.call(e, "toggle"); + }) + .on(T.Event.CHANGE, "." + T.ClassName.INPUT, function (e) { + var t = C(S(this)); + 0 !== t.length && k._jQueryInterface.call(t, "_change", e); + }) + .on(T.Event.BLUR, "." + T.ClassName.INPUT, function (e) { + var t = C(S(this)), + n = t.data(T.DATA_KEY); + 0 !== t.length && + (n._options.debug || + window.debug || + k._jQueryInterface.call(t, "hide", e)); + }) + .on(T.Event.KEYDOWN, "." + T.ClassName.INPUT, function (e) { + var t = C(S(this)); + 0 !== t.length && k._jQueryInterface.call(t, "_keydown", e); + }) + .on(T.Event.KEYUP, "." + T.ClassName.INPUT, function (e) { + var t = C(S(this)); + 0 !== t.length && k._jQueryInterface.call(t, "_keyup", e); + }) + .on(T.Event.FOCUS, "." + T.ClassName.INPUT, function (e) { + var t = C(S(this)), + n = t.data(T.DATA_KEY); + 0 !== t.length && + n._options.allowInputToggle && + k._jQueryInterface.call(t, "show", e); + }), + (S.fn[T.NAME] = k._jQueryInterface), + (S.fn[T.NAME].Constructor = k), + (S.fn[T.NAME].noConflict = function () { + return (S.fn[T.NAME] = _), k._jQueryInterface; + }); + function C(e) { + var t = e.data("target"), + n = void 0; + return ( + t || ((t = e.attr("href") || ""), (t = /^#[a-z]/i.test(t) ? t : null)), + 0 === (n = S(t)).length || + n.data(T.DATA_KEY) || + S.extend({}, n.data(), S(this).data()), + n + ); + } + function E(e, t) { + a(this, E); + var n = (function (e, t) { + if (!e) + throw new ReferenceError( + "this hasn't been initialised - super() hasn't been called", + ); + return !t || ("object" != typeof t && "function" != typeof t) ? e : t; + })(this, b.call(this, e, t)); + return n._init(), n; + } +})(), + (function (e) { + "function" == typeof define && define.amd + ? define(["jquery"], e) + : e("object" == typeof exports ? require("jquery") : jQuery); + })(function (E, M) { + function N() { + return new Date(Date.UTC.apply(Date, arguments)); + } + function O() { + var e = new Date(); + return N(e.getFullYear(), e.getMonth(), e.getDate()); + } + function a(e, t) { + return ( + e.getUTCFullYear() === t.getUTCFullYear() && + e.getUTCMonth() === t.getUTCMonth() && + e.getUTCDate() === t.getUTCDate() + ); + } + function e(e, t) { + return function () { + return ( + t !== M && E.fn.datepicker.deprecated(t), + this[e].apply(this, arguments) + ); + }; + } + function w(e, t) { + E.data(e, "datepicker", this), + (this._events = []), + (this._secondaryEvents = []), + this._process_options(t), + (this.dates = new n()), + (this.viewDate = this.o.defaultViewDate), + (this.focusDate = null), + (this.element = E(e)), + (this.isInput = this.element.is("input")), + (this.inputField = this.isInput + ? this.element + : this.element.find("input")), + (this.component = + !!this.element.hasClass("date") && + this.element.find( + ".add-on, .input-group-addon, .input-group-append, .input-group-prepend, .btn", + )), + this.component && 0 === this.component.length && (this.component = !1), + (this.isInline = !this.component && this.element.is("div")), + (this.picker = E(j.template)), + this._check_template(this.o.templates.leftArrow) && + this.picker.find(".prev").html(this.o.templates.leftArrow), + this._check_template(this.o.templates.rightArrow) && + this.picker.find(".next").html(this.o.templates.rightArrow), + this._buildEvents(), + this._attachEvents(), + this.isInline + ? this.picker.addClass("datepicker-inline").appendTo(this.element) + : this.picker.addClass("datepicker-dropdown dropdown-menu"), + this.o.rtl && this.picker.addClass("datepicker-rtl"), + this.o.calendarWeeks && + this.picker + .find( + ".datepicker-days .datepicker-switch, thead .datepicker-title, tfoot .today, tfoot .clear", + ) + .attr("colspan", function (e, t) { + return Number(t) + 1; + }), + this._process_options({ + startDate: this._o.startDate, + endDate: this._o.endDate, + daysOfWeekDisabled: this.o.daysOfWeekDisabled, + daysOfWeekHighlighted: this.o.daysOfWeekHighlighted, + datesDisabled: this.o.datesDisabled, + }), + (this._allow_update = !1), + this.setViewMode(this.o.startView), + (this._allow_update = !0), + this.fillDow(), + this.fillMonths(), + this.update(), + this.isInline && this.show(); + } + var t, + n = + ((t = { + get: function (e) { + return this.slice(e)[0]; + }, + contains: function (e) { + for (var t = e && e.valueOf(), n = 0, i = this.length; n < i; n++) + if (0 <= this[n].valueOf() - t && this[n].valueOf() - t < 864e5) + return n; + return -1; + }, + remove: function (e) { + this.splice(e, 1); + }, + replace: function (e) { + e && + (E.isArray(e) || (e = [e]), + this.clear(), + this.push.apply(this, e)); + }, + clear: function () { + this.length = 0; + }, + copy: function () { + var e = new n(); + return e.replace(this), e; + }, + }), + function () { + var e = []; + return e.push.apply(e, arguments), E.extend(e, t), e; + }); + w.prototype = { + constructor: w, + _resolveViewName: function (n) { + return ( + E.each(j.viewModes, function (e, t) { + if (n === e || -1 !== E.inArray(n, t.names)) return (n = e), !1; + }), + n + ); + }, + _resolveDaysOfWeek: function (e) { + return E.isArray(e) || (e = e.split(/[,\s]*/)), E.map(e, Number); + }, + _check_template: function (e) { + try { + return ( + e !== M && + "" !== e && + ((e.match(/[<>]/g) || []).length <= 0 || 0 < E(e).length) + ); + } catch (e) { + return !1; + } + }, + _process_options: function (e) { + this._o = E.extend({}, this._o, e); + var t = (this.o = E.extend({}, this._o)), + n = t.language; + A[n] || ((n = n.split("-")[0]), A[n] || (n = c.language)), + (t.language = n), + (t.startView = this._resolveViewName(t.startView)), + (t.minViewMode = this._resolveViewName(t.minViewMode)), + (t.maxViewMode = this._resolveViewName(t.maxViewMode)), + (t.startView = Math.max( + this.o.minViewMode, + Math.min(this.o.maxViewMode, t.startView), + )), + !0 !== t.multidate && + ((t.multidate = Number(t.multidate) || !1), + !1 !== t.multidate && (t.multidate = Math.max(0, t.multidate))), + (t.multidateSeparator = String(t.multidateSeparator)), + (t.weekStart %= 7), + (t.weekEnd = (t.weekStart + 6) % 7); + var i = j.parseFormat(t.format); + t.startDate !== -1 / 0 && + (t.startDate + ? t.startDate instanceof Date + ? (t.startDate = this._local_to_utc(this._zero_time(t.startDate))) + : (t.startDate = j.parseDate( + t.startDate, + i, + t.language, + t.assumeNearbyYear, + )) + : (t.startDate = -1 / 0)), + t.endDate !== 1 / 0 && + (t.endDate + ? t.endDate instanceof Date + ? (t.endDate = this._local_to_utc(this._zero_time(t.endDate))) + : (t.endDate = j.parseDate( + t.endDate, + i, + t.language, + t.assumeNearbyYear, + )) + : (t.endDate = 1 / 0)), + (t.daysOfWeekDisabled = this._resolveDaysOfWeek( + t.daysOfWeekDisabled || [], + )), + (t.daysOfWeekHighlighted = this._resolveDaysOfWeek( + t.daysOfWeekHighlighted || [], + )), + (t.datesDisabled = t.datesDisabled || []), + E.isArray(t.datesDisabled) || + (t.datesDisabled = t.datesDisabled.split(",")), + (t.datesDisabled = E.map(t.datesDisabled, function (e) { + return j.parseDate(e, i, t.language, t.assumeNearbyYear); + })); + var r = String(t.orientation).toLowerCase().split(/\s+/g), + a = t.orientation.toLowerCase(); + if ( + ((r = E.grep(r, function (e) { + return /^auto|left|right|top|bottom$/.test(e); + })), + (t.orientation = { x: "auto", y: "auto" }), + a && "auto" !== a) + ) + if (1 === r.length) + switch (r[0]) { + case "top": + case "bottom": + t.orientation.y = r[0]; + break; + case "left": + case "right": + t.orientation.x = r[0]; + } + else + (a = E.grep(r, function (e) { + return /^left|right$/.test(e); + })), + (t.orientation.x = a[0] || "auto"), + (a = E.grep(r, function (e) { + return /^top|bottom$/.test(e); + })), + (t.orientation.y = a[0] || "auto"); + if ( + t.defaultViewDate instanceof Date || + "string" == typeof t.defaultViewDate + ) + t.defaultViewDate = j.parseDate( + t.defaultViewDate, + i, + t.language, + t.assumeNearbyYear, + ); + else if (t.defaultViewDate) { + var o = t.defaultViewDate.year || new Date().getFullYear(), + s = t.defaultViewDate.month || 0, + l = t.defaultViewDate.day || 1; + t.defaultViewDate = N(o, s, l); + } else t.defaultViewDate = O(); + }, + _applyEvents: function (e) { + for (var t, n, i, r = 0; r < e.length; r++) + (t = e[r][0]), + 2 === e[r].length + ? ((n = M), (i = e[r][1])) + : 3 === e[r].length && ((n = e[r][1]), (i = e[r][2])), + t.on(i, n); + }, + _unapplyEvents: function (e) { + for (var t, n, i, r = 0; r < e.length; r++) + (t = e[r][0]), + 2 === e[r].length + ? ((i = M), (n = e[r][1])) + : 3 === e[r].length && ((i = e[r][1]), (n = e[r][2])), + t.off(n, i); + }, + _buildEvents: function () { + var e = { + keyup: E.proxy(function (e) { + -1 === E.inArray(e.keyCode, [27, 37, 39, 38, 40, 32, 13, 9]) && + this.update(); + }, this), + keydown: E.proxy(this.keydown, this), + paste: E.proxy(this.paste, this), + }; + !0 === this.o.showOnFocus && (e.focus = E.proxy(this.show, this)), + this.isInput + ? (this._events = [[this.element, e]]) + : this.component && this.inputField.length + ? (this._events = [ + [this.inputField, e], + [this.component, { click: E.proxy(this.show, this) }], + ]) + : (this._events = [ + [ + this.element, + { + click: E.proxy(this.show, this), + keydown: E.proxy(this.keydown, this), + }, + ], + ]), + this._events.push( + [ + this.element, + "*", + { + blur: E.proxy(function (e) { + this._focused_from = e.target; + }, this), + }, + ], + [ + this.element, + { + blur: E.proxy(function (e) { + this._focused_from = e.target; + }, this), + }, + ], + ), + this.o.immediateUpdates && + this._events.push([ + this.element, + { + "changeYear changeMonth": E.proxy(function (e) { + this.update(e.date); + }, this), + }, + ]), + (this._secondaryEvents = [ + [this.picker, { click: E.proxy(this.click, this) }], + [ + this.picker, + ".prev, .next", + { click: E.proxy(this.navArrowsClick, this) }, + ], + [ + this.picker, + ".day:not(.disabled)", + { click: E.proxy(this.dayCellClick, this) }, + ], + [E(window), { resize: E.proxy(this.place, this) }], + [ + E(document), + { + "mousedown touchstart": E.proxy(function (e) { + this.element.is(e.target) || + this.element.find(e.target).length || + this.picker.is(e.target) || + this.picker.find(e.target).length || + this.isInline || + this.hide(); + }, this), + }, + ], + ]); + }, + _attachEvents: function () { + this._detachEvents(), this._applyEvents(this._events); + }, + _detachEvents: function () { + this._unapplyEvents(this._events); + }, + _attachSecondaryEvents: function () { + this._detachSecondaryEvents(), this._applyEvents(this._secondaryEvents); + }, + _detachSecondaryEvents: function () { + this._unapplyEvents(this._secondaryEvents); + }, + _trigger: function (e, t) { + var n = t || this.dates.get(-1), + i = this._utc_to_local(n); + this.element.trigger({ + type: e, + date: i, + viewMode: this.viewMode, + dates: E.map(this.dates, this._utc_to_local), + format: E.proxy(function (e, t) { + 0 === arguments.length + ? ((e = this.dates.length - 1), (t = this.o.format)) + : "string" == typeof e && ((t = e), (e = this.dates.length - 1)), + (t = t || this.o.format); + var n = this.dates.get(e); + return j.formatDate(n, t, this.o.language); + }, this), + }); + }, + show: function () { + if ( + !( + this.inputField.is(":disabled") || + (this.inputField.prop("readonly") && !1 === this.o.enableOnReadonly) + ) + ) + return ( + this.isInline || this.picker.appendTo(this.o.container), + this.place(), + this.picker.show(), + this._attachSecondaryEvents(), + this._trigger("show"), + (window.navigator.msMaxTouchPoints || "ontouchstart" in document) && + this.o.disableTouchKeyboard && + E(this.element).blur(), + this + ); + }, + hide: function () { + return ( + this.isInline || + !this.picker.is(":visible") || + ((this.focusDate = null), + this.picker.hide().detach(), + this._detachSecondaryEvents(), + this.setViewMode(this.o.startView), + this.o.forceParse && this.inputField.val() && this.setValue(), + this._trigger("hide")), + this + ); + }, + destroy: function () { + return ( + this.hide(), + this._detachEvents(), + this._detachSecondaryEvents(), + this.picker.remove(), + delete this.element.data().datepicker, + this.isInput || delete this.element.data().date, + this + ); + }, + paste: function (e) { + var t; + if ( + e.originalEvent.clipboardData && + e.originalEvent.clipboardData.types && + -1 !== E.inArray("text/plain", e.originalEvent.clipboardData.types) + ) + t = e.originalEvent.clipboardData.getData("text/plain"); + else { + if (!window.clipboardData) return; + t = window.clipboardData.getData("Text"); + } + this.setDate(t), this.update(), e.preventDefault(); + }, + _utc_to_local: function (e) { + if (!e) return e; + var t = new Date(e.getTime() + 6e4 * e.getTimezoneOffset()); + return ( + t.getTimezoneOffset() !== e.getTimezoneOffset() && + (t = new Date(e.getTime() + 6e4 * t.getTimezoneOffset())), + t + ); + }, + _local_to_utc: function (e) { + return e && new Date(e.getTime() - 6e4 * e.getTimezoneOffset()); + }, + _zero_time: function (e) { + return e && new Date(e.getFullYear(), e.getMonth(), e.getDate()); + }, + _zero_utc_time: function (e) { + return e && N(e.getUTCFullYear(), e.getUTCMonth(), e.getUTCDate()); + }, + getDates: function () { + return E.map(this.dates, this._utc_to_local); + }, + getUTCDates: function () { + return E.map(this.dates, function (e) { + return new Date(e); + }); + }, + getDate: function () { + return this._utc_to_local(this.getUTCDate()); + }, + getUTCDate: function () { + var e = this.dates.get(-1); + return e !== M ? new Date(e) : null; + }, + clearDates: function () { + this.inputField.val(""), + this.update(), + this._trigger("changeDate"), + this.o.autoclose && this.hide(); + }, + setDates: function () { + var e = E.isArray(arguments[0]) ? arguments[0] : arguments; + return ( + this.update.apply(this, e), + this._trigger("changeDate"), + this.setValue(), + this + ); + }, + setUTCDates: function () { + var e = E.isArray(arguments[0]) ? arguments[0] : arguments; + return this.setDates.apply(this, E.map(e, this._utc_to_local)), this; + }, + setDate: e("setDates"), + setUTCDate: e("setUTCDates"), + remove: e( + "destroy", + "Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead", + ), + setValue: function () { + var e = this.getFormattedDate(); + return this.inputField.val(e), this; + }, + getFormattedDate: function (t) { + t === M && (t = this.o.format); + var n = this.o.language; + return E.map(this.dates, function (e) { + return j.formatDate(e, t, n); + }).join(this.o.multidateSeparator); + }, + getStartDate: function () { + return this.o.startDate; + }, + setStartDate: function (e) { + return ( + this._process_options({ startDate: e }), + this.update(), + this.updateNavArrows(), + this + ); + }, + getEndDate: function () { + return this.o.endDate; + }, + setEndDate: function (e) { + return ( + this._process_options({ endDate: e }), + this.update(), + this.updateNavArrows(), + this + ); + }, + setDaysOfWeekDisabled: function (e) { + return ( + this._process_options({ daysOfWeekDisabled: e }), this.update(), this + ); + }, + setDaysOfWeekHighlighted: function (e) { + return ( + this._process_options({ daysOfWeekHighlighted: e }), + this.update(), + this + ); + }, + setDatesDisabled: function (e) { + return this._process_options({ datesDisabled: e }), this.update(), this; + }, + place: function () { + if (this.isInline) return this; + var e = this.picker.outerWidth(), + t = this.picker.outerHeight(), + n = E(this.o.container), + i = n.width(), + r = + "body" === this.o.container + ? E(document).scrollTop() + : n.scrollTop(), + a = n.offset(), + o = [0]; + this.element.parents().each(function () { + var e = E(this).css("z-index"); + "auto" !== e && 0 !== Number(e) && o.push(Number(e)); + }); + var s = Math.max.apply(Math, o) + this.o.zIndexOffset, + l = this.component + ? this.component.parent().offset() + : this.element.offset(), + u = this.component + ? this.component.outerHeight(!0) + : this.element.outerHeight(!1), + c = this.component + ? this.component.outerWidth(!0) + : this.element.outerWidth(!1), + d = l.left - a.left, + h = l.top - a.top; + "body" !== this.o.container && (h += r), + this.picker.removeClass( + "datepicker-orient-top datepicker-orient-bottom datepicker-orient-right datepicker-orient-left", + ), + "auto" !== this.o.orientation.x + ? (this.picker.addClass( + "datepicker-orient-" + this.o.orientation.x, + ), + "right" === this.o.orientation.x && (d -= e - c)) + : l.left < 0 + ? (this.picker.addClass("datepicker-orient-left"), + (d -= l.left - 10)) + : i < d + e + ? (this.picker.addClass("datepicker-orient-right"), + (d += c - e)) + : this.o.rtl + ? this.picker.addClass("datepicker-orient-right") + : this.picker.addClass("datepicker-orient-left"); + var f = this.o.orientation.y; + if ( + ("auto" === f && (f = -r + h - t < 0 ? "bottom" : "top"), + this.picker.addClass("datepicker-orient-" + f), + "top" === f + ? (h -= t + parseInt(this.picker.css("padding-top"))) + : (h += u), + this.o.rtl) + ) { + var p = i - (d + c); + this.picker.css({ top: h, right: p, zIndex: s }); + } else this.picker.css({ top: h, left: d, zIndex: s }); + return this; + }, + _allow_update: !0, + update: function () { + if (!this._allow_update) return this; + var e = this.dates.copy(), + n = [], + t = !1; + return ( + arguments.length + ? (E.each( + arguments, + E.proxy(function (e, t) { + t instanceof Date && (t = this._local_to_utc(t)), n.push(t); + }, this), + ), + (t = !0)) + : ((n = + (n = this.isInput + ? this.element.val() + : this.element.data("date") || this.inputField.val()) && + this.o.multidate + ? n.split(this.o.multidateSeparator) + : [n]), + delete this.element.data().date), + (n = E.map( + n, + E.proxy(function (e) { + return j.parseDate( + e, + this.o.format, + this.o.language, + this.o.assumeNearbyYear, + ); + }, this), + )), + (n = E.grep( + n, + E.proxy(function (e) { + return !this.dateWithinRange(e) || !e; + }, this), + !0, + )), + this.dates.replace(n), + this.o.updateViewDate && + (this.dates.length + ? (this.viewDate = new Date(this.dates.get(-1))) + : this.viewDate < this.o.startDate + ? (this.viewDate = new Date(this.o.startDate)) + : this.viewDate > this.o.endDate + ? (this.viewDate = new Date(this.o.endDate)) + : (this.viewDate = this.o.defaultViewDate)), + t + ? (this.setValue(), this.element.change()) + : this.dates.length && + String(e) !== String(this.dates) && + t && + (this._trigger("changeDate"), this.element.change()), + !this.dates.length && + e.length && + (this._trigger("clearDate"), this.element.change()), + this.fill(), + this + ); + }, + fillDow: function () { + if (this.o.showWeekDays) { + var e = this.o.weekStart, + t = ""; + for ( + this.o.calendarWeeks && (t += ''); + e < this.o.weekStart + 7; + + ) + (t += '"), this.picker.find(".datepicker-days thead").append(t); + } + }, + fillMonths: function () { + for ( + var e = this._utc_to_local(this.viewDate), t = "", n = 0; + n < 12; + n++ + ) + t += + '' + + A[this.o.language].monthsShort[n] + + ""; + this.picker.find(".datepicker-months td").html(t); + }, + setRange: function (e) { + e && e.length + ? (this.range = E.map(e, function (e) { + return e.valueOf(); + })) + : delete this.range, + this.fill(); + }, + getClassNames: function (e) { + var t = [], + n = this.viewDate.getUTCFullYear(), + i = this.viewDate.getUTCMonth(), + r = O(); + return ( + e.getUTCFullYear() < n || + (e.getUTCFullYear() === n && e.getUTCMonth() < i) + ? t.push("old") + : (e.getUTCFullYear() > n || + (e.getUTCFullYear() === n && e.getUTCMonth() > i)) && + t.push("new"), + this.focusDate && + e.valueOf() === this.focusDate.valueOf() && + t.push("focused"), + this.o.todayHighlight && a(e, r) && t.push("today"), + -1 !== this.dates.contains(e) && t.push("active"), + this.dateWithinRange(e) || t.push("disabled"), + this.dateIsDisabled(e) && t.push("disabled", "disabled-date"), + -1 !== E.inArray(e.getUTCDay(), this.o.daysOfWeekHighlighted) && + t.push("highlighted"), + this.range && + (e > this.range[0] && + e < this.range[this.range.length - 1] && + t.push("range"), + -1 !== E.inArray(e.valueOf(), this.range) && t.push("selected"), + e.valueOf() === this.range[0] && t.push("range-start"), + e.valueOf() === this.range[this.range.length - 1] && + t.push("range-end")), + t + ); + }, + _fill_yearsView: function (e, t, n, i, r, a, o) { + for ( + var s, + l, + u, + c = "", + d = n / 10, + h = this.picker.find(e), + f = Math.floor(i / n) * n, + p = f + 9 * d, + m = Math.floor(this.viewDate.getFullYear() / d) * d, + g = E.map(this.dates, function (e) { + return Math.floor(e.getUTCFullYear() / d) * d; + }), + v = f - d; + v <= p + d; + v += d + ) + (s = [t]), + (l = null), + v === f - d ? s.push("old") : v === p + d && s.push("new"), + -1 !== E.inArray(v, g) && s.push("active"), + (v < r || a < v) && s.push("disabled"), + v === m && s.push("focused"), + o !== E.noop && + ((u = o(new Date(v, 0, 1))) === M + ? (u = {}) + : "boolean" == typeof u + ? (u = { enabled: u }) + : "string" == typeof u && (u = { classes: u }), + !1 === u.enabled && s.push("disabled"), + u.classes && (s = s.concat(u.classes.split(/\s+/))), + u.tooltip && (l = u.tooltip)), + (c += + '" + + v + + ""); + h.find(".datepicker-switch").text(f + "-" + p), h.find("td").html(c); + }, + fill: function () { + var e, + t, + n = new Date(this.viewDate), + r = n.getUTCFullYear(), + i = n.getUTCMonth(), + a = + this.o.startDate !== -1 / 0 + ? this.o.startDate.getUTCFullYear() + : -1 / 0, + o = + this.o.startDate !== -1 / 0 + ? this.o.startDate.getUTCMonth() + : -1 / 0, + s = + this.o.endDate !== 1 / 0 ? this.o.endDate.getUTCFullYear() : 1 / 0, + l = this.o.endDate !== 1 / 0 ? this.o.endDate.getUTCMonth() : 1 / 0, + u = A[this.o.language].today || A.en.today || "", + c = A[this.o.language].clear || A.en.clear || "", + d = A[this.o.language].titleFormat || A.en.titleFormat, + h = O(), + f = + (!0 === this.o.todayBtn || "linked" === this.o.todayBtn) && + h >= this.o.startDate && + h <= this.o.endDate && + !this.weekOfDateIsDisabled(h); + if (!isNaN(r) && !isNaN(i)) { + this.picker + .find(".datepicker-days .datepicker-switch") + .text(j.formatDate(n, d, this.o.language)), + this.picker + .find("tfoot .today") + .text(u) + .css("display", f ? "table-cell" : "none"), + this.picker + .find("tfoot .clear") + .text(c) + .css("display", !0 === this.o.clearBtn ? "table-cell" : "none"), + this.picker + .find("thead .datepicker-title") + .text(this.o.title) + .css( + "display", + "string" == typeof this.o.title && "" !== this.o.title + ? "table-cell" + : "none", + ), + this.updateNavArrows(), + this.fillMonths(); + var p = N(r, i, 0), + m = p.getUTCDate(); + p.setUTCDate(m - ((p.getUTCDay() - this.o.weekStart + 7) % 7)); + var g = new Date(p); + p.getUTCFullYear() < 100 && g.setUTCFullYear(p.getUTCFullYear()), + g.setUTCDate(g.getUTCDate() + 42), + (g = g.valueOf()); + for (var v, y, b = []; p.valueOf() < g;) { + if ( + (v = p.getUTCDay()) === this.o.weekStart && + (b.push(""), this.o.calendarWeeks) + ) { + var _ = new Date(+p + ((this.o.weekStart - v - 7) % 7) * 864e5), + w = new Date(Number(_) + ((11 - _.getUTCDay()) % 7) * 864e5), + x = new Date( + Number((x = N(w.getUTCFullYear(), 0, 1))) + + ((11 - x.getUTCDay()) % 7) * 864e5, + ), + D = (w - x) / 864e5 / 7 + 1; + b.push('"); + } + (y = this.getClassNames(p)).push("day"); + var k = p.getUTCDate(); + this.o.beforeShowDay !== E.noop && + ((t = this.o.beforeShowDay(this._utc_to_local(p))) === M + ? (t = {}) + : "boolean" == typeof t + ? (t = { enabled: t }) + : "string" == typeof t && (t = { classes: t }), + !1 === t.enabled && y.push("disabled"), + t.classes && (y = y.concat(t.classes.split(/\s+/))), + t.tooltip && (e = t.tooltip), + t.content && (k = t.content)), + (y = E.isFunction(E.uniqueSort) ? E.uniqueSort(y) : E.unique(y)), + b.push( + '", + ), + (e = null), + v === this.o.weekEnd && b.push(""), + p.setUTCDate(p.getUTCDate() + 1); + } + this.picker.find(".datepicker-days tbody").html(b.join("")); + var C = + A[this.o.language].monthsTitle || A.en.monthsTitle || "Months", + T = this.picker + .find(".datepicker-months") + .find(".datepicker-switch") + .text(this.o.maxViewMode < 2 ? C : r) + .end() + .find("tbody span") + .removeClass("active"); + if ( + (E.each(this.dates, function (e, t) { + t.getUTCFullYear() === r && + T.eq(t.getUTCMonth()).addClass("active"); + }), + (r < a || s < r) && T.addClass("disabled"), + r === a && T.slice(0, o).addClass("disabled"), + r === s && T.slice(l + 1).addClass("disabled"), + this.o.beforeShowMonth !== E.noop) + ) { + var S = this; + E.each(T, function (e, t) { + var n = new Date(r, e, 1), + i = S.o.beforeShowMonth(n); + i === M + ? (i = {}) + : "boolean" == typeof i + ? (i = { enabled: i }) + : "string" == typeof i && (i = { classes: i }), + !1 !== i.enabled || + E(t).hasClass("disabled") || + E(t).addClass("disabled"), + i.classes && E(t).addClass(i.classes), + i.tooltip && E(t).prop("title", i.tooltip); + }); + } + this._fill_yearsView( + ".datepicker-years", + "year", + 10, + r, + a, + s, + this.o.beforeShowYear, + ), + this._fill_yearsView( + ".datepicker-decades", + "decade", + 100, + r, + a, + s, + this.o.beforeShowDecade, + ), + this._fill_yearsView( + ".datepicker-centuries", + "century", + 1e3, + r, + a, + s, + this.o.beforeShowCentury, + ); + } + }, + updateNavArrows: function () { + if (this._allow_update) { + var e, + t, + n = new Date(this.viewDate), + i = n.getUTCFullYear(), + r = n.getUTCMonth(), + a = + this.o.startDate !== -1 / 0 + ? this.o.startDate.getUTCFullYear() + : -1 / 0, + o = + this.o.startDate !== -1 / 0 + ? this.o.startDate.getUTCMonth() + : -1 / 0, + s = + this.o.endDate !== 1 / 0 + ? this.o.endDate.getUTCFullYear() + : 1 / 0, + l = this.o.endDate !== 1 / 0 ? this.o.endDate.getUTCMonth() : 1 / 0, + u = 1; + switch (this.viewMode) { + case 4: + u *= 10; + case 3: + u *= 10; + case 2: + u *= 10; + case 1: + (e = Math.floor(i / u) * u <= a), + (t = Math.floor(i / u) * u + u > s); + break; + case 0: + (e = i <= a && r <= o), (t = s <= i && l <= r); + } + this.picker.find(".prev").toggleClass("disabled", e), + this.picker.find(".next").toggleClass("disabled", t); + } + }, + click: function (e) { + var t, n, i; + e.preventDefault(), + e.stopPropagation(), + (t = E(e.target)).hasClass("datepicker-switch") && + this.viewMode !== this.o.maxViewMode && + this.setViewMode(this.viewMode + 1), + t.hasClass("today") && + !t.hasClass("day") && + (this.setViewMode(0), + this._setDate(O(), "linked" === this.o.todayBtn ? null : "view")), + t.hasClass("clear") && this.clearDates(), + t.hasClass("disabled") || + ((t.hasClass("month") || + t.hasClass("year") || + t.hasClass("decade") || + t.hasClass("century")) && + (this.viewDate.setUTCDate(1), + 1 === this.viewMode + ? ((i = t.parent().find("span").index(t)), + (n = this.viewDate.getUTCFullYear()), + this.viewDate.setUTCMonth(i)) + : ((i = 0), + (n = Number(t.text())), + this.viewDate.setUTCFullYear(n)), + this._trigger(j.viewModes[this.viewMode - 1].e, this.viewDate), + this.viewMode === this.o.minViewMode + ? this._setDate(N(n, i, 1)) + : (this.setViewMode(this.viewMode - 1), this.fill()))), + this.picker.is(":visible") && + this._focused_from && + this._focused_from.focus(), + delete this._focused_from; + }, + dayCellClick: function (e) { + var t = E(e.currentTarget).data("date"), + n = new Date(t); + this.o.updateViewDate && + (n.getUTCFullYear() !== this.viewDate.getUTCFullYear() && + this._trigger("changeYear", this.viewDate), + n.getUTCMonth() !== this.viewDate.getUTCMonth() && + this._trigger("changeMonth", this.viewDate)), + this._setDate(n); + }, + navArrowsClick: function (e) { + var t = E(e.currentTarget).hasClass("prev") ? -1 : 1; + 0 !== this.viewMode && (t *= 12 * j.viewModes[this.viewMode].navStep), + (this.viewDate = this.moveMonth(this.viewDate, t)), + this._trigger(j.viewModes[this.viewMode].e, this.viewDate), + this.fill(); + }, + _toggle_multidate: function (e) { + var t = this.dates.contains(e); + if ( + (e || this.dates.clear(), + -1 !== t + ? (!0 === this.o.multidate || + 1 < this.o.multidate || + this.o.toggleActive) && + this.dates.remove(t) + : (!1 === this.o.multidate && this.dates.clear(), + this.dates.push(e)), + "number" == typeof this.o.multidate) + ) + for (; this.dates.length > this.o.multidate;) this.dates.remove(0); + }, + _setDate: function (e, t) { + (t && "date" !== t) || this._toggle_multidate(e && new Date(e)), + ((!t && this.o.updateViewDate) || "view" === t) && + (this.viewDate = e && new Date(e)), + this.fill(), + this.setValue(), + (t && "view" === t) || this._trigger("changeDate"), + this.inputField.trigger("change"), + !this.o.autoclose || (t && "date" !== t) || this.hide(); + }, + moveDay: function (e, t) { + var n = new Date(e); + return n.setUTCDate(e.getUTCDate() + t), n; + }, + moveWeek: function (e, t) { + return this.moveDay(e, 7 * t); + }, + moveMonth: function (e, t) { + if ( + !(function (e) { + return e && !isNaN(e.getTime()); + })(e) + ) + return this.o.defaultViewDate; + if (!t) return e; + var n, + i, + r = new Date(e.valueOf()), + a = r.getUTCDate(), + o = r.getUTCMonth(), + s = Math.abs(t); + if (((t = 0 < t ? 1 : -1), 1 === s)) + (i = + -1 === t + ? function () { + return r.getUTCMonth() === o; + } + : function () { + return r.getUTCMonth() !== n; + }), + (n = o + t), + r.setUTCMonth(n), + (n = (n + 12) % 12); + else { + for (var l = 0; l < s; l++) r = this.moveMonth(r, t); + (n = r.getUTCMonth()), + r.setUTCDate(a), + (i = function () { + return n !== r.getUTCMonth(); + }); + } + for (; i();) r.setUTCDate(--a), r.setUTCMonth(n); + return r; + }, + moveYear: function (e, t) { + return this.moveMonth(e, 12 * t); + }, + moveAvailableDate: function (e, t, n) { + do { + if (((e = this[n](e, t)), !this.dateWithinRange(e))) return !1; + n = "moveDay"; + } while (this.dateIsDisabled(e)); + return e; + }, + weekOfDateIsDisabled: function (e) { + return -1 !== E.inArray(e.getUTCDay(), this.o.daysOfWeekDisabled); + }, + dateIsDisabled: function (t) { + return ( + this.weekOfDateIsDisabled(t) || + 0 < + E.grep(this.o.datesDisabled, function (e) { + return a(t, e); + }).length + ); + }, + dateWithinRange: function (e) { + return e >= this.o.startDate && e <= this.o.endDate; + }, + keydown: function (e) { + if (this.picker.is(":visible")) { + var t, + n, + i = !1, + r = this.focusDate || this.viewDate; + switch (e.keyCode) { + case 27: + this.focusDate + ? ((this.focusDate = null), + (this.viewDate = this.dates.get(-1) || this.viewDate), + this.fill()) + : this.hide(), + e.preventDefault(), + e.stopPropagation(); + break; + case 37: + case 38: + case 39: + case 40: + if ( + !this.o.keyboardNavigation || + 7 === this.o.daysOfWeekDisabled.length + ) + break; + (t = 37 === e.keyCode || 38 === e.keyCode ? -1 : 1), + 0 === this.viewMode + ? e.ctrlKey + ? (n = this.moveAvailableDate(r, t, "moveYear")) && + this._trigger("changeYear", this.viewDate) + : e.shiftKey + ? (n = this.moveAvailableDate(r, t, "moveMonth")) && + this._trigger("changeMonth", this.viewDate) + : 37 === e.keyCode || 39 === e.keyCode + ? (n = this.moveAvailableDate(r, t, "moveDay")) + : this.weekOfDateIsDisabled(r) || + (n = this.moveAvailableDate(r, t, "moveWeek")) + : 1 === this.viewMode + ? ((38 !== e.keyCode && 40 !== e.keyCode) || (t *= 4), + (n = this.moveAvailableDate(r, t, "moveMonth"))) + : 2 === this.viewMode && + ((38 !== e.keyCode && 40 !== e.keyCode) || (t *= 4), + (n = this.moveAvailableDate(r, t, "moveYear"))), + n && + ((this.focusDate = this.viewDate = n), + this.setValue(), + this.fill(), + e.preventDefault()); + break; + case 13: + if (!this.o.forceParse) break; + (r = this.focusDate || this.dates.get(-1) || this.viewDate), + this.o.keyboardNavigation && + (this._toggle_multidate(r), (i = !0)), + (this.focusDate = null), + (this.viewDate = this.dates.get(-1) || this.viewDate), + this.setValue(), + this.fill(), + this.picker.is(":visible") && + (e.preventDefault(), + e.stopPropagation(), + this.o.autoclose && this.hide()); + break; + case 9: + (this.focusDate = null), + (this.viewDate = this.dates.get(-1) || this.viewDate), + this.fill(), + this.hide(); + } + i && + (this.dates.length + ? this._trigger("changeDate") + : this._trigger("clearDate"), + this.inputField.trigger("change")); + } else + (40 !== e.keyCode && 27 !== e.keyCode) || + (this.show(), e.stopPropagation()); + }, + setViewMode: function (e) { + (this.viewMode = e), + this.picker + .children("div") + .hide() + .filter(".datepicker-" + j.viewModes[this.viewMode].clsName) + .show(), + this.updateNavArrows(), + this._trigger("changeViewMode", new Date(this.viewDate)); + }, + }; + function u(e, t) { + E.data(e, "datepicker", this), + (this.element = E(e)), + (this.inputs = E.map(t.inputs, function (e) { + return e.jquery ? e[0] : e; + })), + delete t.inputs, + (this.keepEmptyValues = t.keepEmptyValues), + delete t.keepEmptyValues, + r + .call(E(this.inputs), t) + .on("changeDate", E.proxy(this.dateUpdated, this)), + (this.pickers = E.map(this.inputs, function (e) { + return E.data(e, "datepicker"); + })), + this.updateDates(); + } + u.prototype = { + updateDates: function () { + (this.dates = E.map(this.pickers, function (e) { + return e.getUTCDate(); + })), + this.updateRanges(); + }, + updateRanges: function () { + var n = E.map(this.dates, function (e) { + return e.valueOf(); + }); + E.each(this.pickers, function (e, t) { + t.setRange(n); + }); + }, + clearDates: function () { + E.each(this.pickers, function (e, t) { + t.clearDates(); + }); + }, + dateUpdated: function (e) { + if (!this.updating) { + this.updating = !0; + var n = E.data(e.target, "datepicker"); + if (n !== M) { + var i = n.getUTCDate(), + r = this.keepEmptyValues, + t = E.inArray(e.target, this.inputs), + a = t - 1, + o = t + 1, + s = this.inputs.length; + if (-1 !== t) { + if ( + (E.each(this.pickers, function (e, t) { + t.getUTCDate() || (t !== n && r) || t.setUTCDate(i); + }), + i < this.dates[a]) + ) + for (; 0 <= a && i < this.dates[a];) + this.pickers[a--].setUTCDate(i); + else if (i > this.dates[o]) + for (; o < s && i > this.dates[o];) + this.pickers[o++].setUTCDate(i); + this.updateDates(), delete this.updating; + } + } + } + }, + destroy: function () { + E.map(this.pickers, function (e) { + e.destroy(); + }), + E(this.inputs).off("changeDate", this.dateUpdated), + delete this.element.data().datepicker; + }, + remove: e( + "destroy", + "Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead", + ), + }; + var i = E.fn.datepicker, + r = function (o) { + var s, + l = Array.apply(null, arguments); + if ( + (l.shift(), + this.each(function () { + var e = E(this), + t = e.data("datepicker"), + n = "object" == typeof o && o; + if (!t) { + var i = (function (e, t) { + function n(e, t) { + return t.toLowerCase(); + } + var i = E(e).data(), + r = {}, + a = new RegExp("^" + t.toLowerCase() + "([A-Z])"); + for (var o in ((t = new RegExp("^" + t.toLowerCase())), i)) + t.test(o) && (r[o.replace(a, n)] = i[o]); + return r; + })(this, "date"), + r = (function (e) { + var n = {}; + if (A[e] || ((e = e.split("-")[0]), A[e])) { + var i = A[e]; + return ( + E.each(d, function (e, t) { + t in i && (n[t] = i[t]); + }), + n + ); + } + })(E.extend({}, c, i, n).language), + a = E.extend({}, c, r, i, n); + (t = + e.hasClass("input-daterange") || a.inputs + ? (E.extend(a, { + inputs: a.inputs || e.find("input").toArray(), + }), + new u(this, a)) + : new w(this, a)), + e.data("datepicker", t); + } + "string" == typeof o && + "function" == typeof t[o] && + (s = t[o].apply(t, l)); + }), + s === M || s instanceof w || s instanceof u) + ) + return this; + if (1 < this.length) + throw new Error( + "Using only allowed for the collection of a single element (" + + o + + " function)", + ); + return s; + }; + E.fn.datepicker = r; + var c = (E.fn.datepicker.defaults = { + assumeNearbyYear: !1, + autoclose: !1, + beforeShowDay: E.noop, + beforeShowMonth: E.noop, + beforeShowYear: E.noop, + beforeShowDecade: E.noop, + beforeShowCentury: E.noop, + calendarWeeks: !1, + clearBtn: !1, + toggleActive: !1, + daysOfWeekDisabled: [], + daysOfWeekHighlighted: [], + datesDisabled: [], + endDate: 1 / 0, + forceParse: !0, + format: "mm/dd/yyyy", + keepEmptyValues: !1, + keyboardNavigation: !0, + language: "en", + minViewMode: 0, + maxViewMode: 4, + multidate: !1, + multidateSeparator: ",", + orientation: "auto", + rtl: !1, + startDate: -1 / 0, + startView: 0, + todayBtn: !1, + todayHighlight: !1, + updateViewDate: !0, + weekStart: 0, + disableTouchKeyboard: !1, + enableOnReadonly: !0, + showOnFocus: !0, + zIndexOffset: 10, + container: "body", + immediateUpdates: !1, + title: "", + templates: { leftArrow: "«", rightArrow: "»" }, + showWeekDays: !0, + }), + d = (E.fn.datepicker.locale_opts = ["format", "rtl", "weekStart"]); + E.fn.datepicker.Constructor = w; + var A = (E.fn.datepicker.dates = { + en: { + days: [ + "Sunday", + "Monday", + "Tuesday", + "Wednesday", + "Thursday", + "Friday", + "Saturday", + ], + daysShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], + daysMin: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], + months: [ + "January", + "February", + "March", + "April", + "May", + "June", + "July", + "August", + "September", + "October", + "November", + "December", + ], + monthsShort: [ + "Jan", + "Feb", + "Mar", + "Apr", + "May", + "Jun", + "Jul", + "Aug", + "Sep", + "Oct", + "Nov", + "Dec", + ], + today: "Today", + clear: "Clear", + titleFormat: "MM yyyy", + }, + }), + j = { + viewModes: [ + { names: ["days", "month"], clsName: "days", e: "changeMonth" }, + { + names: ["months", "year"], + clsName: "months", + e: "changeYear", + navStep: 1, + }, + { + names: ["years", "decade"], + clsName: "years", + e: "changeDecade", + navStep: 10, + }, + { + names: ["decades", "century"], + clsName: "decades", + e: "changeCentury", + navStep: 100, + }, + { + names: ["centuries", "millennium"], + clsName: "centuries", + e: "changeMillennium", + navStep: 1e3, + }, + ], + validParts: /dd?|DD?|mm?|MM?|yy(?:yy)?/g, + nonpunctuation: /[^ -\/:-@年月日\[-`{-~\t\n\r]+/g, + parseFormat: function (e) { + if ( + "function" == typeof e.toValue && + "function" == typeof e.toDisplay + ) + return e; + var t = e.replace(this.validParts, "\0").split("\0"), + n = e.match(this.validParts); + if (!t || !t.length || !n || 0 === n.length) + throw new Error("Invalid date format."); + return { separators: t, parts: n }; + }, + parseDate: function (e, t, n, i) { + function r() { + var e = this.slice(0, a[l].length), + t = a[l].slice(0, e.length); + return e.toLowerCase() === t.toLowerCase(); + } + if (!e) return M; + if (e instanceof Date) return e; + if (("string" == typeof t && (t = j.parseFormat(t)), t.toValue)) + return t.toValue(e, t, n); + var a, + o, + s, + l, + u, + c = { d: "moveDay", m: "moveMonth", w: "moveWeek", y: "moveYear" }, + d = { yesterday: "-1d", today: "+0d", tomorrow: "+1d" }; + if ( + (e in d && (e = d[e]), + /^[\-+]\d+[dmwy]([\s,]+[\-+]\d+[dmwy])*$/i.test(e)) + ) { + for ( + a = e.match(/([\-+]\d+)([dmwy])/gi), e = new Date(), l = 0; + l < a.length; + l++ + ) + (o = a[l].match(/([\-+]\d+)([dmwy])/i)), + (s = Number(o[1])), + (u = c[o[2].toLowerCase()]), + (e = w.prototype[u](e, s)); + return w.prototype._zero_utc_time(e); + } + a = (e && e.match(this.nonpunctuation)) || []; + var h, + f, + p = {}, + m = ["yyyy", "yy", "M", "MM", "m", "mm", "d", "dd"], + g = { + yyyy: function (e, t) { + return e.setUTCFullYear( + i + ? (function (e, t) { + return ( + !0 === t && (t = 10), + e < 100 && + (e += 2e3) > new Date().getFullYear() + t && + (e -= 100), + e + ); + })(t, i) + : t, + ); + }, + m: function (e, t) { + if (isNaN(e)) return e; + for (t -= 1; t < 0;) t += 12; + for (t %= 12, e.setUTCMonth(t); e.getUTCMonth() !== t;) + e.setUTCDate(e.getUTCDate() - 1); + return e; + }, + d: function (e, t) { + return e.setUTCDate(t); + }, + }; + (g.yy = g.yyyy), (g.M = g.MM = g.mm = g.m), (g.dd = g.d), (e = O()); + var v = t.parts.slice(); + if ( + (a.length !== v.length && + (v = E(v) + .filter(function (e, t) { + return -1 !== E.inArray(t, m); + }) + .toArray()), + a.length === v.length) + ) { + var y, b, _; + for (l = 0, y = v.length; l < y; l++) { + if (((h = parseInt(a[l], 10)), (o = v[l]), isNaN(h))) + switch (o) { + case "MM": + (f = E(A[n].months).filter(r)), + (h = E.inArray(f[0], A[n].months) + 1); + break; + case "M": + (f = E(A[n].monthsShort).filter(r)), + (h = E.inArray(f[0], A[n].monthsShort) + 1); + } + p[o] = h; + } + for (l = 0; l < m.length; l++) + (_ = m[l]) in p && + !isNaN(p[_]) && + ((b = new Date(e)), g[_](b, p[_]), isNaN(b) || (e = b)); + } + return e; + }, + formatDate: function (e, t, n) { + if (!e) return ""; + if (("string" == typeof t && (t = j.parseFormat(t)), t.toDisplay)) + return t.toDisplay(e, t, n); + var i = { + d: e.getUTCDate(), + D: A[n].daysShort[e.getUTCDay()], + DD: A[n].days[e.getUTCDay()], + m: e.getUTCMonth() + 1, + M: A[n].monthsShort[e.getUTCMonth()], + MM: A[n].months[e.getUTCMonth()], + yy: e.getUTCFullYear().toString().substring(2), + yyyy: e.getUTCFullYear(), + }; + (i.dd = (i.d < 10 ? "0" : "") + i.d), + (i.mm = (i.m < 10 ? "0" : "") + i.m), + (e = []); + for ( + var r = E.extend([], t.separators), a = 0, o = t.parts.length; + a <= o; + a++ + ) + r.length && e.push(r.shift()), e.push(i[t.parts[a]]); + return e.join(""); + }, + headTemplate: + '", + contTemplate: '', + footTemplate: + '', + }; + (j.template = + '
").addClass("cw").text("#")); + t.isBefore(this._viewDate.clone().endOf("w")); + + ) + e.append(S("").addClass("dow").text(t.format("dd"))), t.add(1, "d"); + this.widget.find(".datepicker-days thead").append(e); + }), + (E.prototype._fillMonths = function () { + for ( + var e = [], t = this._viewDate.clone().startOf("y").startOf("d"); + t.isSame(this._viewDate, "y"); + + ) + e.push( + S("") + .attr("data-action", "selectMonth") + .addClass("month") + .text(t.format("MMM")), + ), + t.add(1, "M"); + this.widget.find(".datepicker-months td").empty().append(e); + }), + (E.prototype._updateMonths = function () { + var e = this.widget.find(".datepicker-months"), + t = e.find("th"), + n = e.find("tbody").find("span"), + i = this; + t.eq(0).find("span").attr("title", this._options.tooltips.prevYear), + t.eq(1).attr("title", this._options.tooltips.selectYear), + t.eq(2).find("span").attr("title", this._options.tooltips.nextYear), + e.find(".disabled").removeClass("disabled"), + this._isValid(this._viewDate.clone().subtract(1, "y"), "y") || + t.eq(0).addClass("disabled"), + t.eq(1).text(this._viewDate.year()), + this._isValid(this._viewDate.clone().add(1, "y"), "y") || + t.eq(2).addClass("disabled"), + n.removeClass("active"), + this._getLastPickedDate().isSame(this._viewDate, "y") && + !this.unset && + n.eq(this._getLastPickedDate().month()).addClass("active"), + n.each(function (e) { + i._isValid(i._viewDate.clone().month(e), "M") || + S(this).addClass("disabled"); + }); + }), + (E.prototype._getStartEndYear = function (e, t) { + var n = e / 10, + i = Math.floor(t / e) * e; + return [i, i + 9 * n, Math.floor(t / n) * n]; + }), + (E.prototype._updateYears = function () { + var e = this.widget.find(".datepicker-years"), + t = e.find("th"), + n = this._getStartEndYear(10, this._viewDate.year()), + i = this._viewDate.clone().year(n[0]), + r = this._viewDate.clone().year(n[1]), + a = ""; + for ( + t.eq(0).find("span").attr("title", this._options.tooltips.prevDecade), + t.eq(1).attr("title", this._options.tooltips.selectDecade), + t.eq(2).find("span").attr("title", this._options.tooltips.nextDecade), + e.find(".disabled").removeClass("disabled"), + this._options.minDate && + this._options.minDate.isAfter(i, "y") && + t.eq(0).addClass("disabled"), + t.eq(1).text(i.year() + "-" + r.year()), + this._options.maxDate && + this._options.maxDate.isBefore(r, "y") && + t.eq(2).addClass("disabled"), + a += + '' + + (i.year() - 1) + + ""; + !i.isAfter(r, "y"); + + ) + (a += + '' + + i.year() + + ""), + i.add(1, "y"); + (a += + '' + + i.year() + + ""), + e.find("td").html(a); + }), + (E.prototype._updateDecades = function () { + var e = this.widget.find(".datepicker-decades"), + t = e.find("th"), + n = this._getStartEndYear(100, this._viewDate.year()), + i = this._viewDate.clone().year(n[0]), + r = this._viewDate.clone().year(n[1]), + a = !1, + o = !1, + s = void 0, + l = ""; + for ( + t.eq(0).find("span").attr("title", this._options.tooltips.prevCentury), + t + .eq(2) + .find("span") + .attr("title", this._options.tooltips.nextCentury), + e.find(".disabled").removeClass("disabled"), + (0 === i.year() || + (this._options.minDate && this._options.minDate.isAfter(i, "y"))) && + t.eq(0).addClass("disabled"), + t.eq(1).text(i.year() + "-" + r.year()), + this._options.maxDate && + this._options.maxDate.isBefore(r, "y") && + t.eq(2).addClass("disabled"), + i.year() - 10 < 0 + ? (l += " ") + : (l += + '' + + (i.year() - 10) + + ""); + !i.isAfter(r, "y"); + + ) + (s = i.year() + 11), + (a = + this._options.minDate && + this._options.minDate.isAfter(i, "y") && + this._options.minDate.year() <= s), + (o = + this._options.maxDate && + this._options.maxDate.isAfter(i, "y") && + this._options.maxDate.year() <= s), + (l += + '' + + i.year() + + ""), + i.add(10, "y"); + (l += + '' + + i.year() + + ""), + e.find("td").html(l); + }), + (E.prototype._fillDate = function () { + var e = this.widget.find(".datepicker-days"), + t = e.find("th"), + n = [], + i = void 0, + r = void 0, + a = void 0, + o = void 0; + if (this._hasDate()) { + for ( + t.eq(0).find("span").attr("title", this._options.tooltips.prevMonth), + t.eq(1).attr("title", this._options.tooltips.selectMonth), + t + .eq(2) + .find("span") + .attr("title", this._options.tooltips.nextMonth), + e.find(".disabled").removeClass("disabled"), + t + .eq(1) + .text(this._viewDate.format(this._options.dayViewHeaderFormat)), + this._isValid(this._viewDate.clone().subtract(1, "M"), "M") || + t.eq(0).addClass("disabled"), + this._isValid(this._viewDate.clone().add(1, "M"), "M") || + t.eq(2).addClass("disabled"), + i = this._viewDate.clone().startOf("M").startOf("w").startOf("d"), + o = 0; + o < 42; + o++ + ) { + if ( + (0 === i.weekday() && + ((r = S("
' + i.week() + "' + + i.date() + + "
' + + t.format(this.use24Hours ? "HH" : "hh") + + "
' + + t.format("mm") + + "
' + + t.format("ss") + + "
 "); + (t += "
' + D + "' + + k + + "
' + + c.templates.leftArrow + + '' + + c.templates.rightArrow + + "
' + + j.headTemplate + + "" + + j.footTemplate + + '
' + + j.headTemplate + + j.contTemplate + + j.footTemplate + + '
' + + j.headTemplate + + j.contTemplate + + j.footTemplate + + '
' + + j.headTemplate + + j.contTemplate + + j.footTemplate + + '
' + + j.headTemplate + + j.contTemplate + + j.footTemplate + + "
"), + (E.fn.datepicker.DPGlobal = j), + (E.fn.datepicker.noConflict = function () { + return (E.fn.datepicker = i), this; + }), + (E.fn.datepicker.version = "1.9.0"), + (E.fn.datepicker.deprecated = function (e) { + var t = window.console; + t && t.warn && t.warn("DEPRECATED: " + e); + }), + E(document).on( + "focus.datepicker.data-api click.datepicker.data-api", + '[data-provide="datepicker"]', + function (e) { + var t = E(this); + t.data("datepicker") || (e.preventDefault(), r.call(t, "show")); + }, + ), + E(function () { + r.call(E('[data-provide="datepicker-inline"]')); + }); + }), + (jQuery.fn.datepicker.dates.fa = { + days: [ + "یک‌شنبه", + "دوشنبه", + "سه‌شنبه", + "چهارشنبه", + "پنج‌شنبه", + "جمعه", + "شنبه", + "یک‌شنبه", + ], + daysShort: ["یک", "دو", "سه", "چهار", "پنج", "جمعه", "شنبه", "یک"], + daysMin: ["ی", "د", "س", "چ", "پ", "ج", "ش", "ی"], + months: [ + "ژانویه", + "فوریه", + "مارس", + "آوریل", + "مه", + "ژوئن", + "ژوئیه", + "اوت", + "سپتامبر", + "اکتبر", + "نوامبر", + "دسامبر", + ], + monthsShort: [ + "ژان", + "فور", + "مار", + "آور", + "مه", + "ژون", + "ژوی", + "اوت", + "سپت", + "اکت", + "نوا", + "دسا", + ], + today: "امروز", + clear: "پاک کن", + weekStart: 1, + format: "yyyy/mm/dd", + }), + (jQuery.fn.datepicker.dates.fr = { + days: [ + "dimanche", + "lundi", + "mardi", + "mercredi", + "jeudi", + "vendredi", + "samedi", + ], + daysShort: ["dim.", "lun.", "mar.", "mer.", "jeu.", "ven.", "sam."], + daysMin: ["d", "l", "ma", "me", "j", "v", "s"], + months: [ + "janvier", + "février", + "mars", + "avril", + "mai", + "juin", + "juillet", + "août", + "septembre", + "octobre", + "novembre", + "décembre", + ], + monthsShort: [ + "janv.", + "févr.", + "mars", + "avril", + "mai", + "juin", + "juil.", + "août", + "sept.", + "oct.", + "nov.", + "déc.", + ], + today: "Aujourd'hui", + monthsTitle: "Mois", + clear: "Effacer", + weekStart: 1, + format: "dd/mm/yyyy", + }), + (jQuery.fn.datepicker.dates.ru = { + days: [ + "Воскресенье", + "Понедельник", + "Вторник", + "Среда", + "Четверг", + "Пятница", + "Суббота", + ], + daysShort: ["Вск", "Пнд", "Втр", "Срд", "Чтв", "Птн", "Суб"], + daysMin: ["Вс", "Пн", "Вт", "Ср", "Чт", "Пт", "Сб"], + months: [ + "Январь", + "Февраль", + "Март", + "Апрель", + "Май", + "Июнь", + "Июль", + "Август", + "Сентябрь", + "Октябрь", + "Ноябрь", + "Декабрь", + ], + monthsShort: [ + "Янв", + "Фев", + "Мар", + "Апр", + "Май", + "Июн", + "Июл", + "Авг", + "Сен", + "Окт", + "Ноя", + "Дек", + ], + today: "Сегодня", + clear: "Очистить", + format: "dd.mm.yyyy", + weekStart: 1, + monthsTitle: "Месяцы", + }), + (jQuery.fn.datepicker.dates.sv = { + days: [ + "söndag", + "måndag", + "tisdag", + "onsdag", + "torsdag", + "fredag", + "lördag", + ], + daysShort: ["sön", "mån", "tis", "ons", "tor", "fre", "lör"], + daysMin: ["sö", "må", "ti", "on", "to", "fr", "lö"], + months: [ + "januari", + "februari", + "mars", + "april", + "maj", + "juni", + "juli", + "augusti", + "september", + "oktober", + "november", + "december", + ], + monthsShort: [ + "jan", + "feb", + "mar", + "apr", + "maj", + "jun", + "jul", + "aug", + "sep", + "okt", + "nov", + "dec", + ], + today: "Idag", + format: "yyyy-mm-dd", + weekStart: 1, + clear: "Rensa", + }), + (jQuery.fn.datepicker.dates["zh-CN"] = { + days: [ + "星期日", + "星期一", + "星期二", + "星期三", + "星期四", + "星期五", + "星期六", + ], + daysShort: ["周日", "周一", "周二", "周三", "周四", "周五", "周六"], + daysMin: ["日", "一", "二", "三", "四", "五", "六"], + months: [ + "一月", + "二月", + "三月", + "四月", + "五月", + "六月", + "七月", + "八月", + "九月", + "十月", + "十一月", + "十二月", + ], + monthsShort: [ + "1月", + "2月", + "3月", + "4月", + "5月", + "6月", + "7月", + "8月", + "9月", + "10月", + "11月", + "12月", + ], + today: "今天", + monthsTitle: "选择月份", + clear: "清除", + format: "yyyy-mm-dd", + titleFormat: "yyyy年mm月", + weekStart: 1, + }), + (jQuery.fn.datepicker.dates.es = { + days: [ + "Domingo", + "Lunes", + "Martes", + "Miércoles", + "Jueves", + "Viernes", + "Sábado", + ], + daysShort: ["Dom", "Lun", "Mar", "Mié", "Jue", "Vie", "Sáb"], + daysMin: ["Do", "Lu", "Ma", "Mi", "Ju", "Vi", "Sa"], + months: [ + "Enero", + "Febrero", + "Marzo", + "Abril", + "Mayo", + "Junio", + "Julio", + "Agosto", + "Septiembre", + "Octubre", + "Noviembre", + "Diciembre", + ], + monthsShort: [ + "Ene", + "Feb", + "Mar", + "Abr", + "May", + "Jun", + "Jul", + "Ago", + "Sep", + "Oct", + "Nov", + "Dic", + ], + today: "Hoy", + monthsTitle: "Meses", + clear: "Borrar", + weekStart: 1, + format: "dd/mm/yyyy", + }), + (jQuery.fn.datepicker.dates.de = { + days: [ + "Sonntag", + "Montag", + "Dienstag", + "Mittwoch", + "Donnerstag", + "Freitag", + "Samstag", + ], + daysShort: ["Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam"], + daysMin: ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"], + months: [ + "Januar", + "Februar", + "März", + "April", + "Mai", + "Juni", + "Juli", + "August", + "September", + "Oktober", + "November", + "Dezember", + ], + monthsShort: [ + "Jan", + "Feb", + "Mär", + "Apr", + "Mai", + "Jun", + "Jul", + "Aug", + "Sep", + "Okt", + "Nov", + "Dez", + ], + today: "Heute", + monthsTitle: "Monate", + clear: "Löschen", + weekStart: 1, + format: "dd.mm.yyyy", + }), + (jQuery.fn.datepicker.dates.da = { + days: [ + "Søndag", + "Mandag", + "Tirsdag", + "Onsdag", + "Torsdag", + "Fredag", + "Lørdag", + ], + daysShort: ["Søn", "Man", "Tir", "Ons", "Tor", "Fre", "Lør"], + daysMin: ["Sø", "Ma", "Ti", "On", "To", "Fr", "Lø"], + months: [ + "Januar", + "Februar", + "Marts", + "April", + "Maj", + "Juni", + "Juli", + "August", + "September", + "Oktober", + "November", + "December", + ], + monthsShort: [ + "Jan", + "Feb", + "Mar", + "Apr", + "Maj", + "Jun", + "Jul", + "Aug", + "Sep", + "Okt", + "Nov", + "Dec", + ], + today: "I Dag", + weekStart: 1, + clear: "Nulstil", + format: "dd/mm/yyyy", + monthsTitle: "Måneder", + }), + (jQuery.fn.datepicker.dates.pt = { + days: [ + "Domingo", + "Segunda", + "Terça", + "Quarta", + "Quinta", + "Sexta", + "Sábado", + ], + daysShort: ["Dom", "Seg", "Ter", "Qua", "Qui", "Sex", "Sáb"], + daysMin: ["Do", "Se", "Te", "Qu", "Qu", "Se", "Sa"], + months: [ + "Janeiro", + "Fevereiro", + "Março", + "Abril", + "Maio", + "Junho", + "Julho", + "Agosto", + "Setembro", + "Outubro", + "Novembro", + "Dezembro", + ], + monthsShort: [ + "Jan", + "Fev", + "Mar", + "Abr", + "Mai", + "Jun", + "Jul", + "Ago", + "Set", + "Out", + "Nov", + "Dez", + ], + today: "Hoje", + monthsTitle: "Meses", + clear: "Limpar", + format: "dd/mm/yyyy", + }); +var Menu = { + init: function () { + $(function () { + Menu.itemClick(); + }); + }, + itemClick: function () { + $(".menu-button").click(function (e) { + e.preventDefault(), + $(".menu-item").is(":visible") + ? $(".menu-item").css("display", "") + : $(".menu-item").show(); + }); + }, +}; +Menu.init(), + (ko.bindingHandlers.modal = { + init: function (e, t) { + $(e).modal({ show: !1 }); + var n = t(); + ko.isObservable(n) && + $(e).on("hidden.bs.modal", function () { + n(!1); + }); + }, + update: function (e, t) { + var n = t(); + ko.utils.unwrapObservable(n) ? $(e).modal("show") : $(e).modal("hide"); + }, + }), + ko.components.register("picker", { + viewModel: function (n) { + var i = this; + (this.textTerm = ko.observable("").extend({ rateLimit: 500 })), + (this.minSearchText = ko.observable(n.minSearchText || 2)), + (this.multipleSelect = ko.observable(n.multipleSelect || !1)), + (this.searchInputPlaceholder = ko.observable( + n.searchInputPlaceholder || + "Enter " + this.minSearchText() + " or more characters", + )), + (this.selectedItemsTitle = ko.observable( + n.selectedItemsTitle || "Selected: ", + )), + (this.searchResultTitle = ko.observable( + n.searchResultTitle || "Search result: ", + )), + (this.suggestedItemsTitle = ko.observable( + n.suggestedItemsTitle || "Suggested items: ", + )), + (this.noItemSelectedTitle = ko.observable( + n.noItemSelectedTitle || "No item/s selected", + )), + (this.showAllItemsTitle = ko.observable(n.showAllItemsTitle || "more")), + (this.allowSuggestedItems = ko.observable( + (n.allowSuggestedItems && n.url) || !1, + )), + (this.topSuggestedItems = ko.observable(n.topSuggestedItems || 5)), + (this.allowItemAlreadySelectedNotification = ko.observable( + n.allowItemAlreadySelectedNotification || !0, + )), + (this.itemAlreadySelectedTitle = ko.observable( + n.itemAlreadySelectedTitle || "item already selected", + )), + (this.searchResult = ko.observableArray([])), + (this.selectedResult = ko.observableArray(n.selectedItems || [])), + (this.suggestedResult = ko.observableArray([])), + (this.loading = ko.observable(!1)), + (this.isVisibleEditDialog = ko.observable(!1)), + (this.editedItem = ko.observable("")), + (this.editedItemOriginal = ko.observable("")); + var e = ko.toJSON(this.selectedResult); + !0 === this.multipleSelect() + ? 0 === this.selectedResult().length + ? $("#" + n.hiddenId).val("") + : $("#" + n.hiddenId).val(e) + : 0 === this.selectedResult().length + ? $("#" + n.hiddenId).val("") + : $("#" + n.hiddenId).val(this.selectedResult()[0]), + this.textTerm.subscribe(function (t) { + "" === t.trim() && i.searchResult([]), + "" !== t.trim() && + t.trim().length >= i.minSearchText() && + (n.url + ? (i.loading(!0), + $.get(n.url + "=" + t, function (e) { + -1 === e.$values.indexOf(t) && e.$values.push(t), + i.searchResult(e.$values), + i.loading(!1); + })) + : i.searchResult([t])); + }), + (this.notify = function (e) { + (toastr.options.closeButton = !0), + (toastr.options.preventDuplicates = !0), + toastr.info(e + " " + this.itemAlreadySelectedTitle()); + }), + (this.notifyError = function (e) { + (toastr.options.closeButton = !0), + (toastr.options.preventDuplicates = !0), + toastr.error(e); + }), + (this.add = function (e) { + (e = e.replace(/'/g, "").replace(/"/g, "")), + -1 < this.selectedResult.indexOf(e) + ? !0 === this.allowItemAlreadySelectedNotification() && + this.notify(e) + : !1 === this.multipleSelect() + ? (this.selectedResult([]), + this.selectedResult.push(e), + this.clear(), + this.sync()) + : !0 === this.multipleSelect() && + (this.selectedResult.push(e), this.clear(), this.sync()); + }), + (this.getSuggestedItems = function () { + !1 !== i.allowSuggestedItems() && + n.url && + (i.loading(!0), + $.get(n.url, { limit: i.topSuggestedItems() }, function (e) { + i.suggestedResult(e.$values), i.loading(!1); + })); + }), + (this.clear = function () { + this.textTerm(""), i.searchResult([]); + }), + (this.showEditDialog = function (e) { + i.isVisibleEditDialog(!0), i.editedItem(e), i.editedItemOriginal(e); + }), + (this.submitEditDialog = function () { + "" !== i.editedItem().trim() && + (i.checkIfItemExists( + i.editedItemOriginal().trim(), + i.editedItem().trim(), + ) + ? i.notifyError( + i.editedItem().trim() + " " + this.itemAlreadySelectedTitle(), + ) + : (i.update(i.editedItemOriginal().trim(), i.editedItem().trim()), + i.isVisibleEditDialog(!1))); + }), + (this.checkIfItemExists = function (e, t) { + return e.trim() !== t.trim() && -1 < this.selectedResult.indexOf(t); + }), + (this.update = function (e, t) { + for (var n = 0; n < i.selectedResult().length; n++) + if (i.selectedResult()[n] === e) { + (i.selectedResult()[n] = t), i.selectedResult.valueHasMutated(); + break; + } + i.sync(); + }), + (this.remove = function (e) { + this.selectedResult.remove(e), this.sync(); + }), + (this.showAll = function () { + n.url && + (i.loading(!0), + $.get("" + n.url, function (e) { + i.suggestedResult(e.$values), i.loading(!1); + })); + }), + (this.sync = function () { + var e = ko.toJSON(this.selectedResult); + !0 === this.multipleSelect() + ? 0 === this.selectedResult().length + ? $("#" + n.hiddenId).val("") + : $("#" + n.hiddenId).val(e) + : 0 === this.selectedResult().length + ? $("#" + n.hiddenId).val("") + : $("#" + n.hiddenId).val(this.selectedResult()[0]); + }), + i.getSuggestedItems(); + }, + template: + '

Loading..

', + }), + ko.applyBindings(), + Holder.addTheme("thumb", { bg: "#55595c", fg: "#eceeef", text: "Thumbnail" }); +var FormMvc = { + allowValidateHiddenField: function (e) { + e.data("validator").settings.ignore = ""; + }, + disableEnter: function (e) { + e.on("keyup keypress", function (e) { + if (13 === (e.keyCode || e.which)) return e.preventDefault(), !1; + }); + }, +}; +$(function () { + $(".single-select").removeAttr("multiple"), + $('[data-toggle="tooltip"]').tooltip(); +}); +var JSONTree = (function () { + var t = { + "&": "&", + "<": "<", + ">": ">", + '"': """, + "'": "'", + "/": "/", + }, + e = 0, + n = 0; + this.create = function (e, t) { + return (n += 1), p(s(e, 0, !1), { class: "jstValue" }); + }; + function a(e) { + return e.replace(/[&<>'"]/g, function (e) { + return t[e]; + }); + } + function o() { + return n + "_" + e++; + } + var s = function (e, t, n) { + if (null === e) return d(n ? t : 0); + switch (typeof e) { + case "boolean": + return c(e, n ? t : 0); + case "number": + return u(e, n ? t : 0); + case "string": + return l(e, n ? t : 0); + default: + return e instanceof Array ? r(e, t, n) : i(e, t, n); + } + }, + i = function (t, n, e) { + var i = o(), + r = Object.keys(t) + .map(function (e) { + return h(e, t[e], n + 1, !0); + }) + .join(f()), + a = [g("{", e ? n : 0, i), p(r, { id: i }), v("}", n)].join("\n"); + return p(a, {}); + }, + r = function (e, t, n) { + var i = o(), + r = e + .map(function (e) { + return s(e, t + 1, !0); + }) + .join(f()); + return [g("[", n ? t : 0, i), p(r, { id: i }), v("]", t)].join("\n"); + }, + l = function (e, t) { + var n = a(JSON.stringify(e)); + return p(y(n, t), { class: "jstStr" }); + }, + u = function (e, t) { + return p(y(e, t), { class: "jstNum" }); + }, + c = function (e, t) { + return p(y(e, t), { class: "jstBool" }); + }, + d = function (e) { + return p(y("null", e), { class: "jstNull" }); + }, + h = function (e, t, n) { + var i = y(a(JSON.stringify(e)) + ": ", n), + r = p(s(t, n, !1), {}); + return p(i + r, { class: "jstProperty" }); + }, + f = function () { + return p(",\n", { class: "jstComma" }); + }, + p = function (e, t) { + return m("span", t, e); + }, + m = function (e, t, n) { + return ( + "<" + + e + + Object.keys(t) + .map(function (e) { + return " " + e + '="' + t[e] + '"'; + }) + .join("") + + ">" + + n + + "" + ); + }, + g = function (e, t, n) { + return ( + p(y(e, t), { class: "jstBracket" }) + + p("", { class: "jstFold", onclick: "JSONTree.toggle('" + n + "')" }) + ); + }; + this.toggle = function (e) { + var t = document.getElementById(e), + n = t.parentNode, + i = t.previousElementSibling; + "" === t.className + ? ((t.className = "jstHiddenBlock"), + (n.className = "jstFolded"), + (i.className = "jstExpand")) + : ((t.className = ""), (n.className = ""), (i.className = "jstFold")); + }; + var v = function (e, t) { + return p(y(e, t), {}); + }, + y = function (e, t) { + return Array(2 * t + 1).join(" ") + e; + }; + return this; +})(); +$(function () { + $(".local-datetime").each(function () { + var e = $(this), + t = parseInt(e.attr("data-utc"), 10) || 0; + if (t) { + var n = moment.utc(t).local().format("DD MMM YYYY HH:mm"); + e.text(n); + } + }), + $('[data-toggle="tooltip"]').tooltip(); +}); +var errorLog = { + eventHandlers: function () { + $(".error-log-delete-button").click(function () { + return ( + $(".error-log-form").validate(), + $(".error-log-form").validate().form() + ? $("#deleteLogsModal").modal("show") + : $(this).submit(), + !1 + ); + }), + $(".row-error-detail>td").each(function () { + var t, + n = $(this).data("error-json"); + try { + t = JSONTree.create(JSON.parse(n)); + } catch (e) { + t = JSONTree.create(n); + } + $(this).html(t); + }), + $(".btn-error-detail").click(function (e) { + e.preventDefault(); + var t = $(this).data("error-id"); + return ( + $(".row-error-detail[data-error-id=" + t + "]").is(":visible") + ? $(".row-error-detail[data-error-id=" + t + "]").addClass("d-none") + : $(".row-error-detail[data-error-id=" + t + "]").removeClass( + "d-none", + ), + !1 + ); + }); + }, + init: function () { + $(function () { + errorLog.eventHandlers(); + }); + }, +}; +errorLog.init(); +var auditLog = { + createJsonTree: function (t) { + var n; + try { + n = JSONTree.create(JSON.parse(t)); + } catch (e) { + n = JSONTree.create(t); + } + return n; + }, + initJsonTrees: function () { + $(".json-tree").each(function () { + var e = $(this).data("json-tree"), + t = auditLog.createJsonTree(e); + $(this).html(t); + }); + }, + eventHandlers: function () { + $(".audit-subject-button").click(function () { + var e = $(this).data("subject-identifier"), + t = $(this).data("subject-name"), + n = $(this).data("subject-type"), + i = $(this).data("subject-additional-data"); + $(".modal-title").html(t + " - " + e + " - (" + n + ")"), + $(".audit-modal-value").html(auditLog.createJsonTree(i)), + $(".audit-modal").modal("show"); + }), + $(".audit-action-button").click(function () { + var e = $(this).data("action"), + t = $(this).data("action-title"); + $(".modal-title").html(t), + $(".audit-modal-value").html(auditLog.createJsonTree(e)), + $(".audit-modal").modal("show"); + }), + $(".audit-log-delete-button").click(function () { + return ( + $(".audit-log-form").validate(), + $(".audit-log-form").validate().form() + ? $("#deleteLogsModal").modal("show") + : $(this).submit(), + !1 + ); + }); + }, + init: function () { + $(function () { + auditLog.eventHandlers(), auditLog.initJsonTrees(); + }); + }, +}; +auditLog.init(), + $(function () { + var e = { + guid: function () { + return "ss-s-s-s-sss".replace(/s/g, e.s4); + }, + s4: function () { + return Math.floor(65536 * (1 + Math.random())) + .toString(16) + .substring(1); + }, + eventHandlers: function () { + $("#generate-guid-button").click(function () { + $("#secret-input").val(e.guid()); + }), + $(".secret-value-button").click(function () { + var e = $(this).data("secret-value"); + $(".modal-secret-value").html(e), $(".secret-modal").modal("show"); + }); + }, + init: function () { + e.eventHandlers(); + }, + }; + e.init(); + }), + $(function () { + var t = { + getCookie: function (e) { + for ( + var t = e + "=", n = document.cookie.split(";"), i = 0; + i < n.length; + i++ + ) { + for (var r = n[i]; " " === r.charAt(0);) r = r.substring(1); + if (0 === r.indexOf(t)) return r.substring(t.length, r.length); + } + return ""; + }, + getUiCultureFromAspNetCoreCultureCookie: function () { + var e = decodeURIComponent(this.getCookie(".AspNetCore.Culture")); + if (null === e || "" === e) return null; + for (var t = e.split("|"), n = 0; n < t.length; n++) + if (-1 !== t[n].indexOf("=")) { + var i = t[n].split("="); + if ("uic" === i[0]) return i[1]; + } + return null; + }, + getLanguage: function () { + var e = t.getUiCultureFromAspNetCoreCultureCookie() || "en"; + return "zh" === e && (e = "zh-CN"), e; + }, + initDatePickers: function () { + $(".datepicker").datepicker({ + autoclose: !0, + todayHighlight: !0, + language: t.getLanguage(), + }); + }, + }; + t.initDatePickers(); + }); diff --git a/src/IdentityServer4/src/Idsrv4.Admin.UI/wwwroot/dist/js/bundle.min.js b/src/IdentityServer4/src/Idsrv4.Admin.UI/wwwroot/dist/js/bundle.min.js index c296a78..8cd51b2 100644 --- a/src/IdentityServer4/src/Idsrv4.Admin.UI/wwwroot/dist/js/bundle.min.js +++ b/src/IdentityServer4/src/Idsrv4.Admin.UI/wwwroot/dist/js/bundle.min.js @@ -1 +1 @@ -if(function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(D,e){"use strict";function m(e){return null!=e&&e===e.window}var t=[],i=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},l=t.push,r=t.indexOf,n={},a=n.toString,v=n.hasOwnProperty,o=v.toString,u=o.call(Object),y={},b=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},k=D.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function _(e,t,n){var i,r,a=(n=n||k).createElement("script");if(a.text=e,t)for(i in c)(r=t[i]||t.getAttribute&&t.getAttribute(i))&&a.setAttribute(i,r);n.head.appendChild(a).parentNode.removeChild(a)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[a.call(e)]||"object":typeof e}var d="3.5.1",C=function(e,t){return new C.fn.init(e,t)};function h(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!b(e)&&!m(e)&&("array"===n||0===t||"number"==typeof t&&0>10|55296,1023&n|56320))}function r(){x()}var e,f,_,a,o,p,h,m,w,l,u,x,D,s,k,g,c,v,y,C="sizzle"+1*new Date,b=n.document,T=0,i=0,S=le(),E=le(),M=le(),N=le(),O=function(e,t){return e===t&&(u=!0),0},A={}.hasOwnProperty,t=[],j=t.pop,I=t.push,P=t.push,L=t.slice,F=function(e,t){for(var n=0,i=e.length;n+~]|"+H+")"+H+"*"),z=new RegExp(H+"|>"),G=new RegExp(U),Q=new RegExp("^"+Y+"$"),J={ID:new RegExp("^#("+Y+")"),CLASS:new RegExp("^\\.("+Y+")"),TAG:new RegExp("^("+Y+"|[*])"),ATTR:new RegExp("^"+V),PSEUDO:new RegExp("^"+U),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+H+"*(even|odd|(([+-]|)(\\d*)n|)"+H+"*(?:([+-]|)"+H+"*(\\d+)|))"+H+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+H+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+H+"*((?:-\\d)?\\d*)"+H+"*\\)|)(?=[^-]|$)","i")},Z=/HTML$/i,X=/^(?:input|select|textarea|button)$/i,K=/^h\d$/i,ee=/^[^{]+\{\s*\[native \w/,te=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ne=/[+~]/,ie=new RegExp("\\\\[\\da-fA-F]{1,6}"+H+"?|\\\\([^\\r\\n\\f])","g"),re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ae=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=_e(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{P.apply(t=L.call(b.childNodes),b.childNodes),t[b.childNodes.length].nodeType}catch(e){P={apply:t.length?function(e,t){I.apply(e,L.call(t))}:function(e,t){for(var n=e.length,i=0;e[n++]=t[i++];);e.length=n-1}}}function se(t,e,n,i){var r,a,o,s,l,u,c,d=e&&e.ownerDocument,h=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==h&&9!==h&&11!==h)return n;if(!i&&(x(e),e=e||D,k)){if(11!==h&&(l=te.exec(t)))if(r=l[1]){if(9===h){if(!(o=e.getElementById(r)))return n;if(o.id===r)return n.push(o),n}else if(d&&(o=d.getElementById(r))&&y(e,o)&&o.id===r)return n.push(o),n}else{if(l[2])return P.apply(n,e.getElementsByTagName(t)),n;if((r=l[3])&&f.getElementsByClassName&&e.getElementsByClassName)return P.apply(n,e.getElementsByClassName(r)),n}if(f.qsa&&!N[t+" "]&&(!g||!g.test(t))&&(1!==h||"object"!==e.nodeName.toLowerCase())){if(c=t,d=e,1===h&&(z.test(t)||$.test(t))){for((d=ne.test(t)&&ve(e.parentNode)||e)===e&&f.scope||((s=e.getAttribute("id"))?s=s.replace(re,ae):e.setAttribute("id",s=C)),a=(u=p(t)).length;a--;)u[a]=(s?"#"+s:":scope")+" "+be(u[a]);c=u.join(",")}try{return P.apply(n,d.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===C&&e.removeAttribute("id")}}}return m(t.replace(q,"$1"),e,n,i)}function le(){var i=[];return function e(t,n){return i.push(t+" ")>_.cacheLength&&delete e[i.shift()],e[t+" "]=n}}function ue(e){return e[C]=!0,e}function ce(e){var t=D.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function de(e,t){for(var n=e.split("|"),i=n.length;i--;)_.attrHandle[n[i]]=t}function he(e,t){var n=t&&e,i=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(i)return i;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function fe(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function pe(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function me(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&oe(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ge(o){return ue(function(a){return a=+a,ue(function(e,t){for(var n,i=o([],e.length,a),r=i.length;r--;)e[n=i[r]]&&(e[n]=!(t[n]=e[n]))})})}function ve(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in f=se.support={},o=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Z.test(t||n&&n.nodeName||"HTML")},x=se.setDocument=function(e){var t,n,i=e?e.ownerDocument||e:b;return i!=D&&9===i.nodeType&&i.documentElement&&(s=(D=i).documentElement,k=!o(D),b!=D&&(n=D.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",r,!1):n.attachEvent&&n.attachEvent("onunload",r)),f.scope=ce(function(e){return s.appendChild(e).appendChild(D.createElement("div")),void 0!==e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),f.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),f.getElementsByTagName=ce(function(e){return e.appendChild(D.createComment("")),!e.getElementsByTagName("*").length}),f.getElementsByClassName=ee.test(D.getElementsByClassName),f.getById=ce(function(e){return s.appendChild(e).id=C,!D.getElementsByName||!D.getElementsByName(C).length}),f.getById?(_.filter.ID=function(e){var t=e.replace(ie,d);return function(e){return e.getAttribute("id")===t}},_.find.ID=function(e,t){if(void 0!==t.getElementById&&k){var n=t.getElementById(e);return n?[n]:[]}}):(_.filter.ID=function(e){var n=e.replace(ie,d);return function(e){var t=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},_.find.ID=function(e,t){if(void 0!==t.getElementById&&k){var n,i,r,a=t.getElementById(e);if(a){if((n=a.getAttributeNode("id"))&&n.value===e)return[a];for(r=t.getElementsByName(e),i=0;a=r[i++];)if((n=a.getAttributeNode("id"))&&n.value===e)return[a]}return[]}}),_.find.TAG=f.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):f.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,i=[],r=0,a=t.getElementsByTagName(e);if("*"!==e)return a;for(;n=a[r++];)1===n.nodeType&&i.push(n);return i},_.find.CLASS=f.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&k)return t.getElementsByClassName(e)},c=[],g=[],(f.qsa=ee.test(D.querySelectorAll))&&(ce(function(e){var t;s.appendChild(e).innerHTML="
",e.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+H+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||g.push("\\["+H+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+C+"-]").length||g.push("~="),(t=D.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||g.push("\\["+H+"*name"+H+"*="+H+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||g.push(":checked"),e.querySelectorAll("a#"+C+"+*").length||g.push(".#.+[+~]"),e.querySelectorAll("\\\f"),g.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=D.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&g.push("name"+H+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&g.push(":enabled",":disabled"),s.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(f.matchesSelector=ee.test(v=s.matches||s.webkitMatchesSelector||s.mozMatchesSelector||s.oMatchesSelector||s.msMatchesSelector))&&ce(function(e){f.disconnectedMatch=v.call(e,"*"),v.call(e,"[s!='']:x"),c.push("!=",U)}),g=g.length&&new RegExp(g.join("|")),c=c.length&&new RegExp(c.join("|")),t=ee.test(s.compareDocumentPosition),y=t||ee.test(s.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,i=t&&t.parentNode;return e===i||!(!i||1!==i.nodeType||!(n.contains?n.contains(i):e.compareDocumentPosition&&16&e.compareDocumentPosition(i)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},O=t?function(e,t){if(e===t)return u=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!f.sortDetached&&t.compareDocumentPosition(e)===n?e==D||e.ownerDocument==b&&y(b,e)?-1:t==D||t.ownerDocument==b&&y(b,t)?1:l?F(l,e)-F(l,t):0:4&n?-1:1)}:function(e,t){if(e===t)return u=!0,0;var n,i=0,r=e.parentNode,a=t.parentNode,o=[e],s=[t];if(!r||!a)return e==D?-1:t==D?1:r?-1:a?1:l?F(l,e)-F(l,t):0;if(r===a)return he(e,t);for(n=e;n=n.parentNode;)o.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;o[i]===s[i];)i++;return i?he(o[i],s[i]):o[i]==b?-1:s[i]==b?1:0}),D},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(x(e),f.matchesSelector&&k&&!N[t+" "]&&(!c||!c.test(t))&&(!g||!g.test(t)))try{var n=v.call(e,t);if(n||f.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(ie,d),e[3]=(e[3]||e[4]||e[5]||"").replace(ie,d),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return J.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&G.test(n)&&(t=p(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(ie,d).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=S[e+" "];return t||(t=new RegExp("(^|"+H+")"+e+"("+H+"|$)"))&&S(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,i,r){return function(e){var t=se.attr(e,n);return null==t?"!="===i:!i||(t+="","="===i?t===r:"!="===i?t!==r:"^="===i?r&&0===t.indexOf(r):"*="===i?r&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function M(e,n,i){return b(n)?C.grep(e,function(e,t){return!!n.call(e,t,e)!==i}):n.nodeType?C.grep(e,function(e){return e===n!==i}):"string"!=typeof n?C.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(C.fn.init=function(e,t,n){var i,r;if(!e)return this;if(n=n||N,"string"!=typeof e)return e.nodeType?(this[0]=e,this.length=1,this):b(e)?void 0!==n.ready?n.ready(e):e(C):C.makeArray(e,this);if(!(i="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:O.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof C?t[0]:t,C.merge(this,C.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:k,!0)),E.test(i[1])&&C.isPlainObject(t))for(i in t)b(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(r=k.getElementById(i[2]))&&(this[0]=r,this.length=1),this}).prototype=C.fn,N=C(k);var A=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function I(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}C.fn.extend({has:function(e){var t=C(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,pe=/^$|^module$|\/(?:java|ecma)script/i;ce=k.createDocumentFragment().appendChild(k.createElement("div")),(de=k.createElement("input")).setAttribute("type","radio"),de.setAttribute("checked","checked"),de.setAttribute("name","t"),ce.appendChild(de),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var me={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ge(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&S(e,t)?C.merge([e],n):n}function ve(e,t){for(var n=0,i=e.length;n",""]);var ye=/<|&#?\w+;/;function be(e,t,n,i,r){for(var a,o,s,l,u,c,d=t.createDocumentFragment(),h=[],f=0,p=e.length;f\s*$/g;function Oe(e,t){return S(e,"table")&&S(11!==t.nodeType?t:t.firstChild,"tr")&&C(e).children("tbody")[0]||e}function Ae(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function je(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Ie(e,t){var n,i,r,a,o,s;if(1===t.nodeType){if(Q.hasData(e)&&(s=Q.get(e).events))for(r in Q.remove(t,"handle events"),s)for(n=0,i=s[r].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",r=function(e){i.remove(),r=null,e&&t("error"===e.type?404:200,e.type)}),k.head.appendChild(i[0])},abort:function(){r&&r()}}});var tn,nn=[],rn=/(=)\?(?=&|$)|\?\?/;C.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=nn.pop()||C.expando+"_"+jt.guid++;return this[e]=!0,e}}),C.ajaxPrefilter("json jsonp",function(e,t,n){var i,r,a,o=!1!==e.jsonp&&(rn.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&rn.test(e.data)&&"data");if(o||"jsonp"===e.dataTypes[0])return i=e.jsonpCallback=b(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,o?e[o]=e[o].replace(rn,"$1"+i):!1!==e.jsonp&&(e.url+=(It.test(e.url)?"&":"?")+e.jsonp+"="+i),e.converters["script json"]=function(){return a||C.error(i+" was not called"),a[0]},e.dataTypes[0]="json",r=D[i],D[i]=function(){a=arguments},n.always(function(){void 0===r?C(D).removeProp(i):D[i]=r,e[i]&&(e.jsonpCallback=t.jsonpCallback,nn.push(i)),a&&b(r)&&r(a[0]),a=r=void 0}),"script"}),y.createHTMLDocument=((tn=k.implementation.createHTMLDocument("").body).innerHTML="
",2===tn.childNodes.length),C.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((i=(t=k.implementation.createHTMLDocument("")).createElement("base")).href=k.location.href,t.head.appendChild(i)):t=k),a=!n&&[],(r=E.exec(e))?[t.createElement(r[1])]:(r=be([e],t,a),a&&a.length&&C(a).remove(),C.merge([],r.childNodes)));var i,r,a},C.fn.load=function(e,t,n){var i,r,a,o=this,s=e.indexOf(" ");return-1").append(C.parseHTML(e)).find(i):e)}).always(n&&function(e,t){o.each(function(){n.apply(this,a||[e.responseText,t,e])})}),this},C.expr.pseudos.animated=function(t){return C.grep(C.timers,function(e){return t===e.elem}).length},C.offset={setOffset:function(e,t,n){var i,r,a,o,s,l,u=C.css(e,"position"),c=C(e),d={};"static"===u&&(e.style.position="relative"),s=c.offset(),a=C.css(e,"top"),l=C.css(e,"left"),r=("absolute"===u||"fixed"===u)&&-1<(a+l).indexOf("auto")?(o=(i=c.position()).top,i.left):(o=parseFloat(a)||0,parseFloat(l)||0),b(t)&&(t=t.call(e,n,C.extend({},s))),null!=t.top&&(d.top=t.top-s.top+o),null!=t.left&&(d.left=t.left-s.left+r),"using"in t?t.using.call(e,d):("number"==typeof d.top&&(d.top+="px"),"number"==typeof d.left&&(d.left+="px"),c.css(d))}},C.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){C.offset.setOffset(this,t,e)});var e,n,i=this[0];return i?i.getClientRects().length?(e=i.getBoundingClientRect(),n=i.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,i=this[0],r={top:0,left:0};if("fixed"===C.css(i,"position"))t=i.getBoundingClientRect();else{for(t=this.offset(),n=i.ownerDocument,e=i.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===C.css(e,"position");)e=e.parentNode;e&&e!==i&&1===e.nodeType&&((r=C(e).offset()).top+=C.css(e,"borderTopWidth",!0),r.left+=C.css(e,"borderLeftWidth",!0))}return{top:t.top-r.top-C.css(i,"marginTop",!0),left:t.left-r.left-C.css(i,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===C.css(e,"position");)e=e.offsetParent;return e||ie})}}),C.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,r){var a="pageYOffset"===r;C.fn[t]=function(e){return U(this,function(e,t,n){var i;if(m(e)?i=e:9===e.nodeType&&(i=e.defaultView),void 0===n)return i?i[r]:e[t];i?i.scrollTo(a?i.pageXOffset:n,a?n:i.pageYOffset):e[t]=n},t,e,arguments.length)}}),C.each(["top","left"],function(e,n){C.cssHooks[n]=Xe(y.pixelPosition,function(e,t){if(t)return t=Ze(e,n),$e.test(t)?C(e).position()[n]+"px":t})}),C.each({Height:"height",Width:"width"},function(o,s){C.each({padding:"inner"+o,content:s,"":"outer"+o},function(i,a){C.fn[a]=function(e,t){var n=arguments.length&&(i||"boolean"!=typeof e),r=i||(!0===e||!0===t?"margin":"border");return U(this,function(e,t,n){var i;return m(e)?0===a.indexOf("outer")?e["inner"+o]:e.document.documentElement["client"+o]:9===e.nodeType?(i=e.documentElement,Math.max(e.body["scroll"+o],i["scroll"+o],e.body["offset"+o],i["offset"+o],i["client"+o])):void 0===n?C.css(e,t,r):C.style(e,t,n,r)},s,n?e:void 0,n)}})}),C.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){C.fn[t]=function(e){return this.on(t,e)}}),C.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,i){return this.on(t,e,n,i)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),C.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){C.fn[n]=function(e,t){return 0").attr("name",i.submitButton.name).val(c(i.submitButton).val()).appendTo(i.currentForm)),!(i.settings.submitHandler&&!i.settings.debug)||(t=i.settings.submitHandler.call(i,i.currentForm,n),e&&e.remove(),void 0!==t&&t)}return i.settings.debug&&n.preventDefault(),i.cancelSubmit?(i.cancelSubmit=!1,e()):i.form()?i.pendingRequest?!(i.formSubmitted=!0):e():(i.focusInvalid(),!1)})),i)}e&&e.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing.")},valid:function(){var e,t,n;return c(this[0]).is("form")?e=this.validate().form():(n=[],e=!0,t=c(this[0].form).validate(),this.each(function(){(e=t.element(this)&&e)||(n=n.concat(t.errorList))}),t.errorList=n),e},rules:function(e,t){var n,i,r,a,o,s,l=this[0],u=void 0!==this.attr("contenteditable")&&"false"!==this.attr("contenteditable");if(null!=l&&(!l.form&&u&&(l.form=this.closest("form")[0],l.name=this.attr("name")),null!=l.form)){if(e)switch(i=(n=c.data(l.form,"validator").settings).rules,r=c.validator.staticRules(l),e){case"add":c.extend(r,c.validator.normalizeRule(t)),delete r.messages,i[l.name]=r,t.messages&&(n.messages[l.name]=c.extend(n.messages[l.name],t.messages));break;case"remove":return t?(s={},c.each(t.split(/\s/),function(e,t){s[t]=r[t],delete r[t]}),s):(delete i[l.name],r)}return(a=c.validator.normalizeRules(c.extend({},c.validator.classRules(l),c.validator.attributeRules(l),c.validator.dataRules(l),c.validator.staticRules(l)),l)).required&&(o=a.required,delete a.required,a=c.extend({required:o},a)),a.remote&&(o=a.remote,delete a.remote,a=c.extend(a,{remote:o})),a}}});function n(e){return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}var i;c.extend(c.expr.pseudos||c.expr[":"],{blank:function(e){return!n(""+c(e).val())},filled:function(e){var t=c(e).val();return null!==t&&!!n(""+t)},unchecked:function(e){return!c(e).prop("checked")}}),c.validator=function(e,t){this.settings=c.extend(!0,{},c.validator.defaults,e),this.currentForm=t,this.init()},c.validator.format=function(n,e){return 1===arguments.length?function(){var e=c.makeArray(arguments);return e.unshift(n),c.validator.format.apply(this,e)}:(void 0===e||(2Warning: No message defined for "+e.name+""),i=/\$?\{(\d+)\}/g;return"function"==typeof n?n=n.call(this,t.parameters,e):i.test(n)&&(n=c.validator.format(n.replace(i,"{$1}"),t.parameters)),n},formatAndAdd:function(e,t){var n=this.defaultMessage(e,t);this.errorList.push({message:n,element:e,method:t.method}),this.errorMap[e.name]=n,this.submitted[e.name]=n},addWrapper:function(e){return this.settings.wrapper&&(e=e.add(e.parent(this.settings.wrapper))),e},defaultShowErrors:function(){var e,t,n;for(e=0;this.errorList[e];e++)n=this.errorList[e],this.settings.highlight&&this.settings.highlight.call(this,n.element,this.settings.errorClass,this.settings.validClass),this.showLabel(n.element,n.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(e=0;this.successList[e];e++)this.showLabel(this.successList[e]);if(this.settings.unhighlight)for(e=0,t=this.validElements();t[e];e++)this.settings.unhighlight.call(this,t[e],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return c(this.errorList).map(function(){return this.element})},showLabel:function(e,t){var n,i,r,a,o=this.errorsFor(e),s=this.idOrName(e),l=c(e).attr("aria-describedby");o.length?(o.removeClass(this.settings.validClass).addClass(this.settings.errorClass),o.html(t)):(n=o=c("<"+this.settings.errorElement+">").attr("id",s+"-error").addClass(this.settings.errorClass).html(t||""),this.settings.wrapper&&(n=o.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.length?this.labelContainer.append(n):this.settings.errorPlacement?this.settings.errorPlacement.call(this,n,c(e)):n.insertAfter(e),o.is("label")?o.attr("for",s):0===o.parents("label[for='"+this.escapeCssMeta(s)+"']").length&&(r=o.attr("id"),l?l.match(new RegExp("\\b"+this.escapeCssMeta(r)+"\\b"))||(l+=" "+r):l=r,c(e).attr("aria-describedby",l),(i=this.groups[e.name])&&(a=this,c.each(a.groups,function(e,t){t===i&&c("[name='"+a.escapeCssMeta(e)+"']",a.currentForm).attr("aria-describedby",o.attr("id"))})))),!t&&this.settings.success&&(o.text(""),"string"==typeof this.settings.success?o.addClass(this.settings.success):this.settings.success(o,e)),this.toShow=this.toShow.add(o)},errorsFor:function(e){var t=this.escapeCssMeta(this.idOrName(e)),n=c(e).attr("aria-describedby"),i="label[for='"+t+"'], label[for='"+t+"'] *";return n&&(i=i+", #"+this.escapeCssMeta(n).replace(/\s+/g,", #")),this.errors().filter(i)},escapeCssMeta:function(e){return e.replace(/([\\!"#$%&'()*+,./:;<=>?@\[\]^`{|}~])/g,"\\$1")},idOrName:function(e){return this.groups[e.name]||(this.checkable(e)?e.name:e.id||e.name)},validationTargetFor:function(e){return this.checkable(e)&&(e=this.findByName(e.name)),c(e).not(this.settings.ignore)[0]},checkable:function(e){return/radio|checkbox/i.test(e.type)},findByName:function(e){return c(this.currentForm).find("[name='"+this.escapeCssMeta(e)+"']")},getLength:function(e,t){switch(t.nodeName.toLowerCase()){case"select":return c("option:selected",t).length;case"input":if(this.checkable(t))return this.findByName(t.name).filter(":checked").length}return e.length},depend:function(e,t){return!this.dependTypes[typeof e]||this.dependTypes[typeof e](e,t)},dependTypes:{boolean:function(e){return e},string:function(e,t){return!!c(e,t.form).length},function:function(e,t){return e(t)}},optional:function(e){var t=this.elementValue(e);return!c.validator.methods.required.call(this,t,e)&&"dependency-mismatch"},startRequest:function(e){this.pending[e.name]||(this.pendingRequest++,c(e).addClass(this.settings.pendingClass),this.pending[e.name]=!0)},stopRequest:function(e,t){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[e.name],c(e).removeClass(this.settings.pendingClass),t&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(c(this.currentForm).submit(),this.submitButton&&c("input:hidden[name='"+this.submitButton.name+"']",this.currentForm).remove(),this.formSubmitted=!1):!t&&0===this.pendingRequest&&this.formSubmitted&&(c(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(e,t){return t="string"==typeof t&&t||"remote",c.data(e,"previousValue")||c.data(e,"previousValue",{old:null,valid:!0,message:this.defaultMessage(e,{method:t})})},destroy:function(){this.resetForm(),c(this.currentForm).off(".validate").removeData("validator").find(".validate-equalTo-blur").off(".validate-equalTo").removeClass("validate-equalTo-blur").find(".validate-lessThan-blur").off(".validate-lessThan").removeClass("validate-lessThan-blur").find(".validate-lessThanEqual-blur").off(".validate-lessThanEqual").removeClass("validate-lessThanEqual-blur").find(".validate-greaterThanEqual-blur").off(".validate-greaterThanEqual").removeClass("validate-greaterThanEqual-blur").find(".validate-greaterThan-blur").off(".validate-greaterThan").removeClass("validate-greaterThan-blur")}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(e,t){e.constructor===String?this.classRuleSettings[e]=t:c.extend(this.classRuleSettings,e)},classRules:function(e){var t={},n=c(e).attr("class");return n&&c.each(n.split(" "),function(){this in c.validator.classRuleSettings&&c.extend(t,c.validator.classRuleSettings[this])}),t},normalizeAttributeRule:function(e,t,n,i){/min|max|step/.test(n)&&(null===t||/number|range|text/.test(t))&&(i=Number(i),isNaN(i)&&(i=void 0)),i||0===i?e[n]=i:t===n&&"range"!==t&&(e[n]=!0)},attributeRules:function(e){var t,n,i={},r=c(e),a=e.getAttribute("type");for(t in c.validator.methods)n="required"===t?(""===(n=e.getAttribute(t))&&(n=!0),!!n):r.attr(t),this.normalizeAttributeRule(i,a,t,n);return i.maxlength&&/-1|2147483647|524288/.test(i.maxlength)&&delete i.maxlength,i},dataRules:function(e){var t,n,i={},r=c(e),a=e.getAttribute("type");for(t in c.validator.methods)""===(n=r.data("rule"+t.charAt(0).toUpperCase()+t.substring(1).toLowerCase()))&&(n=!0),this.normalizeAttributeRule(i,a,t,n);return i},staticRules:function(e){var t={},n=c.data(e.form,"validator");return n.settings.rules&&(t=c.validator.normalizeRule(n.settings.rules[e.name])||{}),t},normalizeRules:function(i,r){return c.each(i,function(e,t){if(!1!==t){if(t.param||t.depends){var n=!0;switch(typeof t.depends){case"string":n=!!c(t.depends,r.form).length;break;case"function":n=t.depends.call(r,r)}n?i[e]=void 0===t.param||t.param:(c.data(r.form,"validator").resetElements(c(r)),delete i[e])}}else delete i[e]}),c.each(i,function(e,t){i[e]="function"==typeof t&&"normalizer"!==e?t(r):t}),c.each(["minlength","maxlength"],function(){i[this]&&(i[this]=Number(i[this]))}),c.each(["rangelength","range"],function(){var e;i[this]&&(Array.isArray(i[this])?i[this]=[Number(i[this][0]),Number(i[this][1])]:"string"==typeof i[this]&&(e=i[this].replace(/[\[\]]/g,"").split(/[\s,]+/),i[this]=[Number(e[0]),Number(e[1])]))}),c.validator.autoCreateRanges&&(null!=i.min&&null!=i.max&&(i.range=[i.min,i.max],delete i.min,delete i.max),null!=i.minlength&&null!=i.maxlength&&(i.rangelength=[i.minlength,i.maxlength],delete i.minlength,delete i.maxlength)),i},normalizeRule:function(e){if("string"==typeof e){var t={};c.each(e.split(/\s/),function(){t[this]=!0}),e=t}return e},addMethod:function(e,t,n){c.validator.methods[e]=t,c.validator.messages[e]=void 0!==n?n:c.validator.messages[e],t.length<3&&c.validator.addClassRules(e,c.validator.normalizeRule(e))},methods:{required:function(e,t,n){if(!this.depend(n,t))return"dependency-mismatch";if("select"!==t.nodeName.toLowerCase())return this.checkable(t)?0=n[0]&&i<=n[1]},min:function(e,t,n){return this.optional(t)||n<=e},max:function(e,t,n){return this.optional(t)||e<=n},range:function(e,t,n){return this.optional(t)||e>=n[0]&&e<=n[1]},step:function(e,t,n){function i(e){var t=(""+e).match(/(?:\.(\d+))?$/);return t&&t[1]?t[1].length:0}function r(e){return Math.round(e*Math.pow(10,a))}var a,o=c(t).attr("type"),s="Step attribute on input type "+o+" is not supported.",l=new RegExp("\\b"+o+"\\b"),u=!0;if(o&&!l.test(["text","number","range"].join()))throw new Error(s);return a=i(n),(i(e)>a||r(e)%r(n)!=0)&&(u=!1),this.optional(t)||u},equalTo:function(e,t,n){var i=c(n);return this.settings.onfocusout&&i.not(".validate-equalTo-blur").length&&i.addClass("validate-equalTo-blur").on("blur.validate-equalTo",function(){c(t).valid()}),e===i.val()},remote:function(a,o,e,s){if(this.optional(o))return"dependency-mismatch";s="string"==typeof s&&s||"remote";var l,t,n,u=this.previousValue(o,s);return this.settings.messages[o.name]||(this.settings.messages[o.name]={}),u.originalMessage=u.originalMessage||this.settings.messages[o.name][s],this.settings.messages[o.name][s]=u.message,e="string"==typeof e&&{url:e}||e,n=c.param(c.extend({data:a},e.data)),u.old===n?u.valid:(u.old=n,(l=this).startRequest(o),(t={})[o.name]=a,c.ajax(c.extend(!0,{mode:"abort",port:"validate"+o.name,dataType:"json",data:t,context:l.currentForm,success:function(e){var t,n,i,r=!0===e||"true"===e;l.settings.messages[o.name][s]=u.originalMessage,r?(i=l.formSubmitted,l.resetInternals(),l.toHide=l.errorsFor(o),l.formSubmitted=i,l.successList.push(o),l.invalid[o.name]=!1,l.showErrors()):(t={},n=e||l.defaultMessage(o,{method:s,parameters:a}),t[o.name]=u.message=n,l.invalid[o.name]=!0,l.showErrors(t)),u.valid=r,l.stopRequest(o,r)}},e)),"pending")}}});var r,a={};return c.ajaxPrefilter?c.ajaxPrefilter(function(e,t,n){var i=e.port;"abort"===e.mode&&(a[i]&&a[i].abort(),a[i]=n)}):(r=c.ajax,c.ajax=function(e){var t=("mode"in e?e:c.ajaxSettings).mode,n=("port"in e?e:c.ajaxSettings).port;return"abort"===t?(a[n]&&a[n].abort(),a[n]=r.apply(this,arguments),a[n]):r.apply(this,arguments)}),c}),function(e){"function"==typeof define&&define.amd?define("jquery.validate.unobtrusive",["jquery-validation"],e):"object"==typeof module&&module.exports?module.exports=e(require("jquery-validation")):jQuery.validator.unobtrusive=e(jQuery)}(function(l){var e,o=l.validator,s="unobtrusiveValidation";function u(e,t,n){e.rules[t]=n,e.message&&(e.messages[t]=e.message)}function c(e){return e.replace(/([!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~])/g,"\\$1")}function d(e){return e.substr(0,e.lastIndexOf(".")+1)}function h(e,t){return 0===e.indexOf("*.")&&(e=e.replace("*.",t)),e}function f(e){var t=l(this),n="__jquery_unobtrusive_validation_form_reset";if(!t.data(n)){t.data(n,!0);try{t.data("validator").resetForm()}finally{t.removeData(n)}t.find(".validation-summary-errors").addClass("validation-summary-valid").removeClass("validation-summary-errors"),t.find(".field-validation-error").addClass("field-validation-valid").removeClass("field-validation-error").removeData("unobtrusiveContainer").find(">*").removeData("unobtrusiveContainer")}}function p(i){function e(e,t){var n=a[e];n&&l.isFunction(n)&&n.apply(i,t)}var t=l(i),n=t.data(s),r=l.proxy(f,i),a=o.unobtrusive.options||{};return n||(n={options:{errorClass:a.errorClass||"input-validation-error",errorElement:a.errorElement||"span",errorPlacement:function(){(function(e,t){var n=l(this).find("[data-valmsg-for='"+c(t[0].name)+"']"),i=n.attr("data-valmsg-replace"),r=i?!1!==l.parseJSON(i):null;n.removeClass("field-validation-valid").addClass("field-validation-error"),e.data("unobtrusiveContainer",n),r?(n.empty(),e.removeClass("input-validation-error").appendTo(n)):e.hide()}).apply(i,arguments),e("errorPlacement",arguments)},invalidHandler:function(){(function(e,t){var n=l(this).find("[data-valmsg-summary=true]"),i=n.find("ul");i&&i.length&&t.errorList.length&&(i.empty(),n.addClass("validation-summary-errors").removeClass("validation-summary-valid"),l.each(t.errorList,function(){l("
  • ").html(this.message).appendTo(i)}))}).apply(i,arguments),e("invalidHandler",arguments)},messages:{},rules:{},success:function(){(function(e){var t=e.data("unobtrusiveContainer");if(t){var n=t.attr("data-valmsg-replace"),i=n?l.parseJSON(n):null;t.addClass("field-validation-valid").removeClass("field-validation-error"),e.removeData("unobtrusiveContainer"),i&&t.empty()}}).apply(i,arguments),e("success",arguments)}},attachValidation:function(){t.off("reset."+s,r).on("reset."+s,r).validate(this.options)},validate:function(){return t.validate(),t.valid()}},t.data(s,n)),n}return o.unobtrusive={adapters:[],parseElement:function(i,e){var t,r,a,o=l(i),s=o.parents("form")[0];s&&((t=p(s)).options.rules[i.name]=r={},t.options.messages[i.name]=a={},l.each(this.adapters,function(){var e="data-val-"+this.name,t=o.attr(e),n={};void 0!==t&&(e+="-",l.each(this.params,function(){n[this]=o.attr(e+this)}),this.adapt({element:i,form:s,message:t,params:n,rules:r,messages:a}))}),l.extend(r,{__dummy__:!0}),e||t.attachValidation())},parse:function(e){var t=l(e),n=t.parents().addBack().filter("form").add(t.find("form")).has("[data-val=true]");t.find("[data-val=true]").each(function(){o.unobtrusive.parseElement(this,!0)}),n.each(function(){var e=p(this);e&&e.attachValidation()})}},(e=o.unobtrusive.adapters).add=function(e,t,n){return n||(n=t,t=[]),this.push({name:e,params:t,adapt:n}),this},e.addBool=function(t,n){return this.add(t,function(e){u(e,n||t,!0)})},e.addMinMax=function(e,i,r,a,t,n){return this.add(e,[t||"min",n||"max"],function(e){var t=e.params.min,n=e.params.max;t&&n?u(e,a,[t,n]):t?u(e,i,t):n&&u(e,r,n)})},e.addSingleVal=function(t,n,i){return this.add(t,[n||"val"],function(e){u(e,i||t,e.params[n])})},o.addMethod("__dummy__",function(e,t,n){return!0}),o.addMethod("regex",function(e,t,n){var i;return!!this.optional(t)||(i=new RegExp(n).exec(e))&&0===i.index&&i[0].length===e.length}),o.addMethod("nonalphamin",function(e,t,n){var i;return n&&(i=(i=e.match(/\W/g))&&i.length>=n),i}),o.methods.extension?(e.addSingleVal("accept","mimtype"),e.addSingleVal("extension","extension")):e.addSingleVal("extension","extension","accept"),e.addSingleVal("regex","pattern"),e.addBool("creditcard").addBool("date").addBool("digits").addBool("email").addBool("number").addBool("url"),e.addMinMax("length","minlength","maxlength","rangelength").addMinMax("range","min","max","range"),e.addMinMax("minlength","minlength").addMinMax("maxlength","minlength","maxlength"),e.add("equalto",["other"],function(e){var t=d(e.element.name),n=h(e.params.other,t);u(e,"equalTo",l(e.form).find(":input").filter("[name='"+c(n)+"']")[0])}),e.add("required",function(e){"INPUT"===e.element.tagName.toUpperCase()&&"CHECKBOX"===e.element.type.toUpperCase()||u(e,"required",!0)}),e.add("remote",["url","type","additionalfields"],function(i){var r={url:i.params.url,type:i.params.type||"GET",data:{}},a=d(i.element.name);l.each(function(e){return e.replace(/^\s+|\s+$/g,"").split(/\s*,\s*/g)}(i.params.additionalfields||i.element.name),function(e,t){var n=h(t,a);r.data[n]=function(){var e=l(i.form).find(":input").filter("[name='"+c(n)+"']");return e.is(":checkbox")?e.filter(":checked").val()||e.filter(":hidden").val()||"":e.is(":radio")?e.filter(":checked").val()||"":e.val()}}),u(i,"remote",r)}),e.add("password",["min","nonalphamin","regex"],function(e){e.params.min&&u(e,"minlength",e.params.min),e.params.nonalphamin&&u(e,"nonalphamin",e.params.nonalphamin),e.params.regex&&u(e,"regex",e.params.regex)}),e.add("fileextensions",["extensions"],function(e){u(e,"extension",e.params.extensions)}),l(function(){o.unobtrusive.parse(document)}),o.unobtrusive}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Popper=t()}(this,function(){"use strict";var n="undefined"!=typeof window&&"undefined"!=typeof document&&"undefined"!=typeof navigator,i=function(){for(var e=["Edge","Trident","Firefox"],t=0;t=i.clientWidth&&n>=i.clientHeight}),d=0l[e]&&!i.escapeWithReference&&(n=Math.min(c[t],l[e]-("right"===e?c.width:c.height))),D({},t,n)}};return u.forEach(function(e){var t=-1!==["left","top"].indexOf(e)?"primary":"secondary";c=k({},c,d[t](e))}),e.offsets.popper=c,e},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(e){var t=e.offsets,n=t.popper,i=t.reference,r=e.placement.split("-")[0],a=Math.floor,o=-1!==["top","bottom"].indexOf(r),s=o?"right":"bottom",l=o?"left":"top",u=o?"width":"height";return n[s]a(i[s])&&(e.offsets.popper[l]=a(i[s])),e}},arrow:{order:500,enabled:!0,fn:function(e,t){var n;if(!U(e.instance.modifiers,"arrow","keepTogether"))return e;var i=t.element;if("string"==typeof i){if(!(i=e.instance.popper.querySelector(i)))return e}else if(!e.instance.popper.contains(i))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),e;var r=e.placement.split("-")[0],a=e.offsets,o=a.popper,s=a.reference,l=-1!==["left","right"].indexOf(r),u=l?"height":"width",c=l?"Top":"Left",d=c.toLowerCase(),h=l?"left":"top",f=l?"bottom":"right",p=M(i)[u];s[f]-po[f]&&(e.offsets.popper[d]+=s[d]+p-o[f]),e.offsets.popper=C(e.offsets.popper);var m=s[d]+s[u]/2-p/2,g=_(e.instance.popper),v=parseFloat(g["margin"+c]),y=parseFloat(g["border"+c+"Width"]),b=m-e.offsets.popper[d]-v-y;return b=Math.max(Math.min(o[u]-p,b),0),e.arrowElement=i,e.offsets.arrow=(D(n={},d,Math.round(b)),D(n,h,""),n),e},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(m,g){if(I(m.instance.modifiers,"inner"))return m;if(m.flipped&&m.placement===m.originalPlacement)return m;var v=f(m.instance.popper,m.instance.reference,g.padding,g.boundariesElement,m.positionFixed),y=m.placement.split("-")[0],b=N(y),_=m.placement.split("-")[1]||"",w=[];switch(g.behavior){case $:w=[y,b];break;case z:w=B(y);break;case G:w=B(y,!0);break;default:w=g.behavior}return w.forEach(function(e,t){if(y!==e||w.length===t+1)return m;y=m.placement.split("-")[0],b=N(y);var n=m.offsets.popper,i=m.offsets.reference,r=Math.floor,a="left"===y&&r(n.right)>r(i.left)||"right"===y&&r(n.left)r(i.top)||"bottom"===y&&r(n.top)r(v.right),l=r(n.top)r(v.bottom),c="left"===y&&o||"right"===y&&s||"top"===y&&l||"bottom"===y&&u,d=-1!==["top","bottom"].indexOf(y),h=!!g.flipVariations&&(d&&"start"===_&&o||d&&"end"===_&&s||!d&&"start"===_&&l||!d&&"end"===_&&u),f=!!g.flipVariationsByContent&&(d&&"start"===_&&s||d&&"end"===_&&o||!d&&"start"===_&&u||!d&&"end"===_&&l),p=h||f;(a||c||p)&&(m.flipped=!0,(a||c)&&(y=w[t+1]),p&&(_=function(e){return"end"===e?"start":"start"===e?"end":e}(_)),m.placement=y+(_?"-"+_:""),m.offsets.popper=k({},m.offsets.popper,O(m.instance.popper,m.offsets.reference,m.placement)),m=j(m.instance.modifiers,m,"flip"))}),m},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,n=t.split("-")[0],i=e.offsets,r=i.popper,a=i.reference,o=-1!==["left","right"].indexOf(n),s=-1===["top","left"].indexOf(n);return r[o?"left":"top"]=a[n]-(s?r[o?"width":"height"]:0),e.placement=N(t),e.offsets.popper=C(r),e}},hide:{order:800,enabled:!0,fn:function(e){if(!U(e.instance.modifiers,"hide","preventOverflow"))return e;var t=e.offsets.reference,n=A(e.instance.modifiers,function(e){return"preventOverflow"===e.name}).boundaries;if(t.bottomn.right||t.top>n.bottom||t.rightthis._items.length-1||e<0))if(this._isSliding)p(this._element).one(M,function(){return t.to(e)});else{if(n===e)return this.pause(),void this.cycle();var i=ndocument.documentElement.clientHeight;!this._isBodyOverflowing&&e&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!e&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},e._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},e._checkScrollbar=function(){var e=document.body.getBoundingClientRect();this._isBodyOverflowing=Math.round(e.left+e.right)
    ',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:Ne,popperConfig:null},qe="show",Be={HIDE:"hide"+Le,HIDDEN:"hidden"+Le,SHOW:"show"+Le,SHOWN:"shown"+Le,INSERTED:"inserted"+Le,CLICK:"click"+Le,FOCUSIN:"focusin"+Le,FOCUSOUT:"focusout"+Le,MOUSEENTER:"mouseenter"+Le,MOUSELEAVE:"mouseleave"+Le},$e="fade",ze="show",Ge="hover",Qe="focus",Je=function(){function i(e,t){if(void 0===d)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=e,this.config=this._getConfig(t),this.tip=null,this._setListeners()}var e=i.prototype;return e.enable=function(){this._isEnabled=!0},e.disable=function(){this._isEnabled=!1},e.toggleEnabled=function(){this._isEnabled=!this._isEnabled},e.toggle=function(e){if(this._isEnabled)if(e){var t=this.constructor.DATA_KEY,n=p(e.currentTarget).data(t);n||(n=new this.constructor(e.currentTarget,this._getDelegateConfig()),p(e.currentTarget).data(t,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(p(this.getTipElement()).hasClass(ze))return void this._leave(null,this);this._enter(null,this)}},e.dispose=function(){clearTimeout(this._timeout),p.removeData(this.element,this.constructor.DATA_KEY),p(this.element).off(this.constructor.EVENT_KEY),p(this.element).closest(".modal").off("hide.bs.modal",this._hideModalHandler),this.tip&&p(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},e.show=function(){var t=this;if("none"===p(this.element).css("display"))throw new Error("Please use show on visible elements");var e=p.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){p(this.element).trigger(e);var n=m.findShadowRoot(this.element),i=p.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(e.isDefaultPrevented()||!i)return;var r=this.getTipElement(),a=m.getUID(this.constructor.NAME);r.setAttribute("id",a),this.element.setAttribute("aria-describedby",a),this.setContent(),this.config.animation&&p(r).addClass($e);var o="function"==typeof this.config.placement?this.config.placement.call(this,r,this.element):this.config.placement,s=this._getAttachment(o);this.addAttachmentClass(s);var l=this._getContainer();p(r).data(this.constructor.DATA_KEY,this),p.contains(this.element.ownerDocument.documentElement,this.tip)||p(r).appendTo(l),p(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new d(this.element,r,this._getPopperConfig(s)),p(r).addClass(ze),"ontouchstart"in document.documentElement&&p(document.body).children().on("mouseover",null,p.noop);var u=function(){t.config.animation&&t._fixTransition();var e=t._hoverState;t._hoverState=null,p(t.element).trigger(t.constructor.Event.SHOWN),"out"===e&&t._leave(null,t)};if(p(this.tip).hasClass($e)){var c=m.getTransitionDurationFromElement(this.tip);p(this.tip).one(m.TRANSITION_END,u).emulateTransitionEnd(c)}else u()}},e.hide=function(e){function t(){n._hoverState!==qe&&i.parentNode&&i.parentNode.removeChild(i),n._cleanTipClass(),n.element.removeAttribute("aria-describedby"),p(n.element).trigger(n.constructor.Event.HIDDEN),null!==n._popper&&n._popper.destroy(),e&&e()}var n=this,i=this.getTipElement(),r=p.Event(this.constructor.Event.HIDE);if(p(this.element).trigger(r),!r.isDefaultPrevented()){if(p(i).removeClass(ze),"ontouchstart"in document.documentElement&&p(document.body).children().off("mouseover",null,p.noop),this._activeTrigger.click=!1,this._activeTrigger[Qe]=!1,this._activeTrigger[Ge]=!1,p(this.tip).hasClass($e)){var a=m.getTransitionDurationFromElement(i);p(i).one(m.TRANSITION_END,t).emulateTransitionEnd(a)}else t();this._hoverState=""}},e.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},e.isWithContent=function(){return Boolean(this.getTitle())},e.addAttachmentClass=function(e){p(this.getTipElement()).addClass(Re+"-"+e)},e.getTipElement=function(){return this.tip=this.tip||p(this.config.template)[0],this.tip},e.setContent=function(){var e=this.getTipElement();this.setElementContent(p(e.querySelectorAll(".tooltip-inner")),this.getTitle()),p(e).removeClass($e+" "+ze)},e.setElementContent=function(e,t){"object"!=typeof t||!t.nodeType&&!t.jquery?this.config.html?(this.config.sanitize&&(t=je(t,this.config.whiteList,this.config.sanitizeFn)),e.html(t)):e.text(t):this.config.html?p(t).parent().is(e)||e.empty().append(t):e.text(p(t).text())},e.getTitle=function(){var e=this.element.getAttribute("data-original-title");return e=e||("function"==typeof this.config.title?this.config.title.call(this.element):this.config.title)},e._getPopperConfig=function(e){var t=this;return l(l({},{placement:e,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:".arrow"},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(e){e.originalPlacement!==e.placement&&t._handlePopperPlacementChange(e)},onUpdate:function(e){return t._handlePopperPlacementChange(e)}}),this.config.popperConfig)},e._getOffset=function(){var t=this,e={};return"function"==typeof this.config.offset?e.fn=function(e){return e.offsets=l(l({},e.offsets),t.config.offset(e.offsets,t.element)||{}),e}:e.offset=this.config.offset,e},e._getContainer=function(){return!1===this.config.container?document.body:m.isElement(this.config.container)?p(this.config.container):p(document).find(this.config.container)},e._getAttachment=function(e){return Ue[e.toUpperCase()]},e._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(e){if("click"===e)p(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(e){return i.toggle(e)});else if("manual"!==e){var t=e===Ge?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=e===Ge?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;p(i.element).on(t,i.config.selector,function(e){return i._enter(e)}).on(n,i.config.selector,function(e){return i._leave(e)})}}),this._hideModalHandler=function(){i.element&&i.hide()},p(this.element).closest(".modal").on("hide.bs.modal",this._hideModalHandler),this.config.selector?this.config=l(l({},this.config),{},{trigger:"manual",selector:""}):this._fixTitle()},e._fixTitle=function(){var e=typeof this.element.getAttribute("data-original-title");!this.element.getAttribute("title")&&"string"==e||(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},e._enter=function(e,t){var n=this.constructor.DATA_KEY;(t=t||p(e.currentTarget).data(n))||(t=new this.constructor(e.currentTarget,this._getDelegateConfig()),p(e.currentTarget).data(n,t)),e&&(t._activeTrigger["focusin"===e.type?Qe:Ge]=!0),p(t.getTipElement()).hasClass(ze)||t._hoverState===qe?t._hoverState=qe:(clearTimeout(t._timeout),t._hoverState=qe,t.config.delay&&t.config.delay.show?t._timeout=setTimeout(function(){t._hoverState===qe&&t.show()},t.config.delay.show):t.show())},e._leave=function(e,t){var n=this.constructor.DATA_KEY;(t=t||p(e.currentTarget).data(n))||(t=new this.constructor(e.currentTarget,this._getDelegateConfig()),p(e.currentTarget).data(n,t)),e&&(t._activeTrigger["focusout"===e.type?Qe:Ge]=!1),t._isWithActiveTrigger()||(clearTimeout(t._timeout),t._hoverState="out",t.config.delay&&t.config.delay.hide?t._timeout=setTimeout(function(){"out"===t._hoverState&&t.hide()},t.config.delay.hide):t.hide())},e._isWithActiveTrigger=function(){for(var e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1},e._getConfig=function(e){var t=p(this.element).data();return Object.keys(t).forEach(function(e){-1!==Ye.indexOf(e)&&delete t[e]}),"number"==typeof(e=l(l(l({},this.constructor.Default),t),"object"==typeof e&&e?e:{})).delay&&(e.delay={show:e.delay,hide:e.delay}),"number"==typeof e.title&&(e.title=e.title.toString()),"number"==typeof e.content&&(e.content=e.content.toString()),m.typeCheckConfig(Ie,e,this.constructor.DefaultType),e.sanitize&&(e.template=je(e.template,e.whiteList,e.sanitizeFn)),e},e._getDelegateConfig=function(){var e={};if(this.config)for(var t in this.config)this.constructor.Default[t]!==this.config[t]&&(e[t]=this.config[t]);return e},e._cleanTipClass=function(){var e=p(this.getTipElement()),t=e.attr("class").match(He);null!==t&&t.length&&e.removeClass(t.join(""))},e._handlePopperPlacementChange=function(e){this.tip=e.instance.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(e.placement))},e._fixTransition=function(){var e=this.getTipElement(),t=this.config.animation;null===e.getAttribute("x-placement")&&(p(e).removeClass($e),this.config.animation=!1,this.hide(),this.show(),this.config.animation=t)},i._jQueryInterface=function(n){return this.each(function(){var e=p(this).data(Pe),t="object"==typeof n&&n;if((e||!/dispose|hide/.test(n))&&(e||(e=new i(this,t),p(this).data(Pe,e)),"string"==typeof n)){if(void 0===e[n])throw new TypeError('No method named "'+n+'"');e[n]()}})},o(i,null,[{key:"VERSION",get:function(){return"4.5.0"}},{key:"Default",get:function(){return We}},{key:"NAME",get:function(){return Ie}},{key:"DATA_KEY",get:function(){return Pe}},{key:"Event",get:function(){return Be}},{key:"EVENT_KEY",get:function(){return Le}},{key:"DefaultType",get:function(){return Ve}}]),i}();p.fn[Ie]=Je._jQueryInterface,p.fn[Ie].Constructor=Je,p.fn[Ie].noConflict=function(){return p.fn[Ie]=Fe,Je._jQueryInterface};var Ze="popover",Xe="bs.popover",Ke="."+Xe,et=p.fn[Ze],tt="bs-popover",nt=new RegExp("(^|\\s)"+tt+"\\S+","g"),it=l(l({},Je.Default),{},{placement:"right",trigger:"click",content:"",template:''}),rt=l(l({},Je.DefaultType),{},{content:"(string|element|function)"}),at={HIDE:"hide"+Ke,HIDDEN:"hidden"+Ke,SHOW:"show"+Ke,SHOWN:"shown"+Ke,INSERTED:"inserted"+Ke,CLICK:"click"+Ke,FOCUSIN:"focusin"+Ke,FOCUSOUT:"focusout"+Ke,MOUSEENTER:"mouseenter"+Ke,MOUSELEAVE:"mouseleave"+Ke},ot=function(e){function i(){return e.apply(this,arguments)||this}!function(e,t){e.prototype=Object.create(t.prototype),(e.prototype.constructor=e).__proto__=t}(i,e);var t=i.prototype;return t.isWithContent=function(){return this.getTitle()||this._getContent()},t.addAttachmentClass=function(e){p(this.getTipElement()).addClass(tt+"-"+e)},t.getTipElement=function(){return this.tip=this.tip||p(this.config.template)[0],this.tip},t.setContent=function(){var e=p(this.getTipElement());this.setElementContent(e.find(".popover-header"),this.getTitle());var t=this._getContent();"function"==typeof t&&(t=t.call(this.element)),this.setElementContent(e.find(".popover-body"),t),e.removeClass("fade show")},t._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},t._cleanTipClass=function(){var e=p(this.getTipElement()),t=e.attr("class").match(nt);null!==t&&0=this._offsets[r]&&(void 0===this._offsets[r+1]||e li > .active",kt=function(){function i(e){this._element=e}var e=i.prototype;return e.show=function(){var n=this;if(!(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&p(this._element).hasClass(wt)||p(this._element).hasClass("disabled"))){var e,i,t=p(this._element).closest(".nav, .list-group")[0],r=m.getSelectorFromElement(this._element);if(t){var a="UL"===t.nodeName||"OL"===t.nodeName?Dt:xt;i=(i=p.makeArray(p(t).find(a)))[i.length-1]}var o=p.Event("hide.bs.tab",{relatedTarget:this._element}),s=p.Event("show.bs.tab",{relatedTarget:i});if(i&&p(i).trigger(o),p(this._element).trigger(s),!s.isDefaultPrevented()&&!o.isDefaultPrevented()){r&&(e=document.querySelector(r)),this._activate(this._element,t);var l=function(){var e=p.Event("hidden.bs.tab",{relatedTarget:n._element}),t=p.Event("shown.bs.tab",{relatedTarget:i});p(i).trigger(e),p(n._element).trigger(t)};e?this._activate(e,e.parentNode,l):l()}}},e.dispose=function(){p.removeData(this._element,bt),this._element=null},e._activate=function(e,t,n){function i(){return r._transitionComplete(e,a,n)}var r=this,a=(!t||"UL"!==t.nodeName&&"OL"!==t.nodeName?p(t).children(xt):p(t).find(Dt))[0],o=n&&a&&p(a).hasClass("fade");if(a&&o){var s=m.getTransitionDurationFromElement(a);p(a).removeClass("show").one(m.TRANSITION_END,i).emulateTransitionEnd(s)}else i()},e._transitionComplete=function(e,t,n){if(t){p(t).removeClass(wt);var i=p(t.parentNode).find("> .dropdown-menu .active")[0];i&&p(i).removeClass(wt),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!1)}if(p(e).addClass(wt),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!0),m.reflow(e),e.classList.contains("fade")&&e.classList.add("show"),e.parentNode&&p(e.parentNode).hasClass("dropdown-menu")){var r=p(e).closest(".dropdown")[0];if(r){var a=[].slice.call(r.querySelectorAll(".dropdown-toggle"));p(a).addClass(wt)}e.setAttribute("aria-expanded",!0)}n&&n()},i._jQueryInterface=function(n){return this.each(function(){var e=p(this),t=e.data(bt);if(t||(t=new i(this),e.data(bt,t)),"string"==typeof n){if(void 0===t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},o(i,null,[{key:"VERSION",get:function(){return"4.5.0"}}]),i}();p(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',function(e){e.preventDefault(),kt._jQueryInterface.call(p(this),"show")}),p.fn.tab=kt._jQueryInterface,p.fn.tab.Constructor=kt,p.fn.tab.noConflict=function(){return p.fn.tab=_t,kt._jQueryInterface};var Ct="toast",Tt="bs.toast",St="."+Tt,Et=p.fn[Ct],Mt="click.dismiss"+St,Nt="show",Ot="showing",At={animation:"boolean",autohide:"boolean",delay:"number"},jt={animation:!0,autohide:!0,delay:500},It=function(){function i(e,t){this._element=e,this._config=this._getConfig(t),this._timeout=null,this._setListeners()}var e=i.prototype;return e.show=function(){var e=this,t=p.Event("show.bs.toast");if(p(this._element).trigger(t),!t.isDefaultPrevented()){this._config.animation&&this._element.classList.add("fade");var n=function(){e._element.classList.remove(Ot),e._element.classList.add(Nt),p(e._element).trigger("shown.bs.toast"),e._config.autohide&&(e._timeout=setTimeout(function(){e.hide()},e._config.delay))};if(this._element.classList.remove("hide"),m.reflow(this._element),this._element.classList.add(Ot),this._config.animation){var i=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,n).emulateTransitionEnd(i)}else n()}},e.hide=function(){if(this._element.classList.contains(Nt)){var e=p.Event("hide.bs.toast");p(this._element).trigger(e),e.isDefaultPrevented()||this._close()}},e.dispose=function(){clearTimeout(this._timeout),this._timeout=null,this._element.classList.contains(Nt)&&this._element.classList.remove(Nt),p(this._element).off(Mt),p.removeData(this._element,Tt),this._element=null,this._config=null},e._getConfig=function(e){return e=l(l(l({},jt),p(this._element).data()),"object"==typeof e&&e?e:{}),m.typeCheckConfig(Ct,e,this.constructor.DefaultType),e},e._setListeners=function(){var e=this;p(this._element).on(Mt,'[data-dismiss="toast"]',function(){return e.hide()})},e._close=function(){function e(){t._element.classList.add("hide"),p(t._element).trigger("hidden.bs.toast")}var t=this;if(this._element.classList.remove(Nt),this._config.animation){var n=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},i._jQueryInterface=function(n){return this.each(function(){var e=p(this),t=e.data(Tt);if(t||(t=new i(this,"object"==typeof n&&n),e.data(Tt,t)),"string"==typeof n){if(void 0===t[n])throw new TypeError('No method named "'+n+'"');t[n](this)}})},o(i,null,[{key:"VERSION",get:function(){return"4.5.0"}},{key:"DefaultType",get:function(){return At}},{key:"Default",get:function(){return jt}}]),i}();p.fn[Ct]=It._jQueryInterface,p.fn[Ct].Constructor=It,p.fn[Ct].noConflict=function(){return p.fn[Ct]=Et,It._jQueryInterface},e.Alert=c,e.Button=_,e.Carousel=j,e.Collapse=q,e.Dropdown=le,e.Modal=Ee,e.Popover=ot,e.Scrollspy=yt,e.Tab=kt,e.Toast=It,e.Tooltip=Je,e.Util=m,Object.defineProperty(e,"__esModule",{value:!0})}),function(r){if(r.document){var e,c,t,n,i,a=r.document;a.querySelectorAll||(a.querySelectorAll=function(e){var t,n=a.createElement("style"),i=[];for(a.documentElement.firstChild.appendChild(n),a._qsa=[],n.styleSheet.cssText=e+"{x-qsa:expression(document._qsa && document._qsa.push(this))}",r.scrollBy(0,0),n.parentNode.removeChild(n);a._qsa.length;)(t=a._qsa.shift()).style.removeAttribute("x-qsa"),i.push(t);return a._qsa=null,i}),a.querySelector||(a.querySelector=function(e){var t=a.querySelectorAll(e);return t.length?t[0]:null}),a.getElementsByClassName||(a.getElementsByClassName=function(e){return e=String(e).replace(/^|\s+/g,"."),a.querySelectorAll(e)}),Object.keys||(Object.keys=function(e){if(e!==Object(e))throw TypeError("Object.keys called on non-object");var t,n=[];for(t in e)Object.prototype.hasOwnProperty.call(e,t)&&n.push(t);return n}),Array.prototype.forEach||(Array.prototype.forEach=function(e){if(null==this)throw TypeError();var t=Object(this),n=t.length>>>0;if("function"!=typeof e)throw TypeError();var i,r=arguments[1];for(i=0;i>16&255)),n.push(String.fromCharCode(i>>8&255)),n.push(String.fromCharCode(255&i)),i=r=0),t+=1;return 12===r?(i>>=4,n.push(String.fromCharCode(255&i))):18===r&&(i>>=2,n.push(String.fromCharCode(i>>8&255)),n.push(String.fromCharCode(255&i))),n.join("")},e.btoa=e.btoa||function(e){e=String(e);var t,n,i,r,a,o,s,l=0,u=[];if(/[^\x00-\xFF]/.test(e))throw Error("InvalidCharacterError");for(;l>2,a=(3&t)<<4|(n=e.charCodeAt(l++))>>4,o=(15&n)<<2|(i=e.charCodeAt(l++))>>6,s=63&i,l===e.length+2?s=o=64:l===e.length+1&&(s=64),u.push(c.charAt(r),c.charAt(a),c.charAt(o),c.charAt(s));return u.join("")},Object.prototype.hasOwnProperty||(Object.prototype.hasOwnProperty=function(e){var t=this.__proto__||this.constructor.prototype;return e in this&&(!(e in t)||t[e]!==this[e])}),function(){if("performance"in r==!1&&(r.performance={}),Date.now=Date.now||function(){return(new Date).getTime()},"now"in r.performance==!1){var e=Date.now();performance.timing&&performance.timing.navigationStart&&(e=performance.timing.navigationStart),r.performance.now=function(){return Date.now()-e}}}(),r.requestAnimationFrame||(r.webkitRequestAnimationFrame&&r.webkitCancelAnimationFrame?((i=r).requestAnimationFrame=function(e){return webkitRequestAnimationFrame(function(){e(i.performance.now())})},i.cancelAnimationFrame=i.webkitCancelAnimationFrame):r.mozRequestAnimationFrame&&r.mozCancelAnimationFrame?((n=r).requestAnimationFrame=function(e){return mozRequestAnimationFrame(function(){e(n.performance.now())})},n.cancelAnimationFrame=n.mozCancelAnimationFrame):((t=r).requestAnimationFrame=function(e){return t.setTimeout(e,1e3/60)},t.cancelAnimationFrame=t.clearTimeout))}}(this),function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Holder=t():e.Holder=t()}(this,function(){return r={},n.m=i=[function(e,t,n){e.exports=n(1)},function(s,e,O){(function(u){var e=O(2),h=O(3),C=O(6),g=O(7),v=O(8),y=O(9),T=O(10),t=O(11),c=O(12),d=O(15),m=g.extend,b=g.dimensionCheck,_=t.svg_ns,i={version:t.version,addTheme:function(e,t){return null!=e&&null!=t&&(S.settings.themes[e]=t),delete S.vars.cache.themeKeys,this},addImage:function(i,e){return y.getNodeArray(e).forEach(function(e){var t=y.newEl("img"),n={};n[S.setup.dataAttr]=i,y.setAttr(t,n),e.appendChild(t)}),this},setResizeUpdate:function(e,t){e.holderData&&(e.holderData.resizeUpdate=!!t,e.holderData.resizeUpdate&&x(e))},run:function(e){e=e||{};var c={},d=m(S.settings,e);S.vars.preempted=!0,S.vars.dataAttr=d.dataAttr||S.setup.dataAttr,c.renderer=d.renderer?d.renderer:S.setup.renderer,-1===S.setup.renderers.join(",").indexOf(c.renderer)&&(c.renderer=S.setup.supportsSVG?"svg":S.setup.supportsCanvas?"canvas":"html");var t=y.getNodeArray(d.images),n=y.getNodeArray(d.bgnodes),i=y.getNodeArray(d.stylenodes),r=y.getNodeArray(d.objects);return c.stylesheets=[],c.svgXMLStylesheet=!0,c.noFontFallback=!!d.noFontFallback,c.noBackgroundSize=!!d.noBackgroundSize,i.forEach(function(e){if(e.attributes.rel&&e.attributes.href&&"stylesheet"==e.attributes.rel.value){var t=e.attributes.href.value,n=y.newEl("a");n.href=t;var i=n.protocol+"//"+n.host+n.pathname+n.search;c.stylesheets.push(i)}}),n.forEach(function(e){if(u.getComputedStyle){var t=u.getComputedStyle(e,null).getPropertyValue("background-image"),n=e.getAttribute("data-background-src")||t,i=null,r=d.domain+"/",a=n.indexOf(r);if(0===a)i=n;else if(1===a&&"?"===n[0])i=n.slice(1);else{var o=n.substr(a).match(/([^\"]*)"?\)/);if(null!==o)i=o[1];else if(0===n.indexOf("url("))throw"Holder: unable to parse background URL: "+n}if(i){var s=l(i,d);s&&p({mode:"background",el:e,flags:s,engineSettings:c})}}}),r.forEach(function(e){var t={};try{t.data=e.getAttribute("data"),t.dataSrc=e.getAttribute(S.vars.dataAttr)}catch(e){}var n=null!=t.data&&0===t.data.indexOf(d.domain),i=null!=t.dataSrc&&0===t.dataSrc.indexOf(d.domain);n?f(d,c,t.data,e):i&&f(d,c,t.dataSrc,e)}),t.forEach(function(e){var t={};try{t.src=e.getAttribute("src"),t.dataSrc=e.getAttribute(S.vars.dataAttr),t.rendered=e.getAttribute("data-holder-rendered")}catch(e){}var n,i,r,a,o,s=null!=t.src,l=null!=t.dataSrc&&0===t.dataSrc.indexOf(d.domain),u=null!=t.rendered&&"true"==t.rendered;s?0===t.src.indexOf(d.domain)?f(d,c,t.src,e):l&&(u?f(d,c,t.dataSrc,e):(n=t.src,i=d,r=c,a=t.dataSrc,o=e,g.imageExists(n,function(e){e||f(i,r,a,o)}))):l&&f(d,c,t.dataSrc,e)}),this}},S={settings:{domain:"holder.js",images:"img",objects:"object",bgnodes:"body .holderjs",stylenodes:"head link.holderjs",themes:{gray:{bg:"#EEEEEE",fg:"#AAAAAA"},social:{bg:"#3a5a97",fg:"#FFFFFF"},industrial:{bg:"#434A52",fg:"#C2F200"},sky:{bg:"#0D8FDB",fg:"#FFFFFF"},vine:{bg:"#39DBAC",fg:"#1E292C"},lava:{bg:"#F8591A",fg:"#1C2846"}}},defaults:{size:10,units:"pt",scale:1/16}};function f(e,t,n,i){var r=l(n.substr(n.lastIndexOf(e.domain)),e);r&&p({mode:null,el:i,flags:r,engineSettings:t})}function l(e,t){var n={theme:m(S.settings.themes.gray,null),stylesheets:t.stylesheets,instanceOptions:t},i=e.indexOf("?"),r=[e];-1!==i&&(r=[e.slice(0,i),e.slice(i+1)]);var a=r[0].split("/");n.holderURL=e;var o=a[1],s=o.match(/([\d]+p?)x([\d]+p?)/);if(!s)return!1;if(n.fluid=-1!==o.indexOf("p"),n.dimensions={width:s[1].replace("p","%"),height:s[2].replace("p","%")},2===r.length){var l=h.parse(r[1]);if(g.truthy(l.ratio)){n.fluid=!0;var u=parseFloat(n.dimensions.width.replace("%","")),c=parseFloat(n.dimensions.height.replace("%",""));c=Math.floor(c/u*100),u=100,n.dimensions.width=u+"%",n.dimensions.height=c+"%"}if(n.auto=g.truthy(l.auto),l.bg&&(n.theme.bg=g.parseColor(l.bg)),l.fg&&(n.theme.fg=g.parseColor(l.fg)),l.bg&&!l.fg&&(n.autoFg=!0),l.theme&&n.instanceOptions.themes.hasOwnProperty(l.theme)&&(n.theme=m(n.instanceOptions.themes[l.theme],null)),l.text&&(n.text=l.text),l.textmode&&(n.textmode=l.textmode),l.size&&parseFloat(l.size)&&(n.size=parseFloat(l.size)),l.font&&(n.font=l.font),l.align&&(n.align=l.align),l.lineWrap&&(n.lineWrap=l.lineWrap),n.nowrap=g.truthy(l.nowrap),n.outline=g.truthy(l.outline),g.truthy(l.random)){S.vars.cache.themeKeys=S.vars.cache.themeKeys||Object.keys(n.instanceOptions.themes);var d=S.vars.cache.themeKeys[0|Math.random()*S.vars.cache.themeKeys.length];n.theme=m(n.instanceOptions.themes[d],null)}}return n}function p(e){var t=e.mode,n=e.el,i=e.flags,r=e.engineSettings,a=i.dimensions,o=i.theme,s=a.width+"x"+a.height;t=null==t?i.fluid?"fluid":"image":t;if(null!=i.text&&(o.text=i.text,"object"===n.nodeName.toLowerCase())){for(var l=o.text.split("\\n"),u=0;u=r||!0==k)&&(v(f,g,b,f.properties.leading),f.add(g),b=0,_+=f.properties.leading,w+=1,(g=new o.Group("line"+w)).y=_),!0!=k&&(m.moveTo(b,0),b+=p.spaceWidth+D.width,g.add(m))}if(v(f,g,b,f.properties.leading),f.add(g),"left"===e.align)f.moveTo(e.width-i,null,null);else if("right"===e.align){for(y in f.children)(g=f.children[y]).moveTo(e.width-g.width,null,null);f.moveTo(0-(e.width-i),null,null)}else{for(y in f.children)(g=f.children[y]).moveTo((f.width-g.width)/2,null,null);f.moveTo((e.width-f.width)/2,null,null)}f.moveTo(null,(e.height-f.height)/2,null),(e.height-f.height)/2<0&&f.moveTo(null,0,null)}else m=new o.Text(e.text),(g=new o.Group("line0")).add(m),f.add(g),"left"===e.align?f.moveTo(e.width-i,null,null):"right"===e.align?f.moveTo(0-(e.width-i),null,null):f.moveTo((e.width-p.boundingBox.width)/2,null,null),f.moveTo(null,(e.height-p.boundingBox.height)/2,null);return a}(o);function l(){var e=null;switch(a.renderer){case"canvas":e=d(s,t);break;case"svg":e=c(s,t);break;default:throw"Holder: invalid renderer: "+a.renderer}return e}if(null==(e=l()))throw"Holder: couldn't render placeholder";"background"==n?(i.style.backgroundImage="url("+e+")",a.noBackgroundSize||(i.style.backgroundSize=o.width+"px "+o.height+"px")):("img"===i.nodeName.toLowerCase()?y.setAttr(i,{src:e}):"object"===i.nodeName.toLowerCase()&&y.setAttr(i,{data:e,type:"image/svg+xml"}),a.reRender&&u.setTimeout(function(){var e=l();if(null==e)throw"Holder: couldn't render placeholder";"img"===i.nodeName.toLowerCase()?y.setAttr(i,{src:e}):"object"===i.nodeName.toLowerCase()&&y.setAttr(i,{data:e,type:"image/svg+xml"})},150)),y.setAttr(i,{"data-holder-rendered":!0})}function x(e){for(var t,n=0,i=(t=null==e||null==e.nodeType?S.vars.resizableImages:[e]).length;n","application/xml")},t.getNodeArray=function(e){var t=null;return"string"==typeof e?t=document.querySelectorAll(e):n.NodeList&&e instanceof n.NodeList?t=e:n.Node&&e instanceof n.Node?t=[e]:n.HTMLCollection&&e instanceof n.HTMLCollection?t=e:e instanceof Array?t=e:null===e&&(t=[]),t=Array.prototype.slice.call(t)}}).call(t,function(){return this}())},function(e,t){function o(e,t){"string"==typeof e&&("#"===(this.original=e).charAt(0)&&(e=e.slice(1)),/[^a-f0-9]+/i.test(e)||(3===e.length&&(e=e.replace(/./g,"$&$&")),6===e.length&&(this.alpha=1,t&&t.alpha&&(this.alpha=t.alpha),this.set(parseInt(e,16)))))}o.rgb2hex=function(e,t,n){return[e,t,n].map(function(e){var t=(0|e).toString(16);return e<16&&(t="0"+t),t}).join("")},o.hsl2rgb=function(e,t,n){var i=e/60,r=(1-Math.abs(2*n-1))*t,a=r*(1-Math.abs(parseInt(i)%2-1)),o=n-r/2,s=0,l=0,u=0;return 0<=i&&i<1?(s=r,l=a):1<=i&&i<2?(s=a,l=r):2<=i&&i<3?(l=r,u=a):3<=i&&i<4?(l=a,u=r):4<=i&&i<5?(s=a,u=r):5<=i&&i<6&&(s=r,u=a),s+=o,l+=o,u+=o,[s=parseInt(255*s),l=parseInt(255*l),u=parseInt(255*u)]},o.prototype.set=function(e){this.raw=e;var t=(16711680&this.raw)>>16,n=(65280&this.raw)>>8,i=255&this.raw,r=.2126*t+.7152*n+.0722*i,a=-.09991*t-.33609*n+.436*i,o=.615*t-.55861*n-.05639*i;return this.rgb={r:t,g:n,b:i},this.yuv={y:r,u:a,v:o},this},o.prototype.lighten=function(e){var t=255*(Math.min(1,Math.max(0,Math.abs(e)))*(e<0?-1:1))|0,n=Math.min(255,Math.max(0,this.rgb.r+t)),i=Math.min(255,Math.max(0,this.rgb.g+t)),r=Math.min(255,Math.max(0,this.rgb.b+t)),a=o.rgb2hex(n,i,r);return new o(a)},o.prototype.toHex=function(e){return(e?"#":"")+this.raw.toString(16)},o.prototype.lighterThan=function(e){return e instanceof o||(e=new o(e)),this.yuv.y>e.yuv.y},o.prototype.blendAlpha=function(e){e instanceof o||(e=new o(e));var t=e,n=t.alpha*t.rgb.r+(1-t.alpha)*this.rgb.r,i=t.alpha*t.rgb.g+(1-t.alpha)*this.rgb.g,r=t.alpha*t.rgb.b+(1-t.alpha)*this.rgb.b;return new o(o.rgb2hex(n,i,r))},e.exports=o},function(e,t){e.exports={version:"2.9.6",svg_ns:"http://www.w3.org/2000/svg"}},function(e,t,n){var y=n(13),b=n(8),i=n(11),_=n(7),w=i.svg_ns,x=function(e){var t=e.tag,n=e.content||"";return delete e.tag,delete e.content,[t,n,e]};e.exports=function(e,t){var n=t.engineSettings.stylesheets.map(function(e){return''}).join("\n"),i="holder_"+Number(new Date).toString(16),r=e.root,o=r.children.holderTextGroup,a="#"+i+" text { "+function(e){return _.cssProps({fill:e.fill,"font-weight":e.font.weight,"font-family":e.font.family+", monospace","font-size":e.font.size+e.font.units})}(o.properties)+" } ";o.y+=.8*o.textPositionData.boundingBox.height;var s=[];Object.keys(o.children).forEach(function(e){var a=o.children[e];Object.keys(a.children).forEach(function(e){var t=a.children[e],n=o.x+a.x+t.x,i=o.y+a.y+t.y,r=x({tag:"text",content:t.properties.text,x:n,y:i});s.push(r)})});var l=x({tag:"g",content:s}),u=null;if(r.children.holderBg.properties.outline){var c=r.children.holderBg.properties.outline;u=x({tag:"path",d:function(e,t,n){var i=n/2;return["M",i,i,"H",e-i,"V",t-i,"H",i,"V",0,"M",0,i,"L",e,t-i,"M",0,t-i,"L",e,i].join(" ")}(r.children.holderBg.width,r.children.holderBg.height,c.width),"stroke-width":c.width,stroke:c.fill,fill:"none"})}var d=function(e,t){return x({tag:t,width:e.width,height:e.height,fill:e.properties.fill})}(r.children.holderBg,"rect"),h=[];h.push(d),c&&h.push(u),h.push(l);var f=x({tag:"g",id:i,content:h}),p=x({tag:"style",content:a,type:"text/css"}),m=x({tag:"defs",content:p}),g=x({tag:"svg",content:[m,f],width:r.properties.width,height:r.properties.height,xmlns:w,viewBox:[0,0,r.properties.width,r.properties.height].join(" "),preserveAspectRatio:"none"}),v=y(g);return/\&(x)?#[0-9A-Fa-f]/.test(v[0])&&(v[0]=v[0].replace(/&#/gm,"&#")),v=n+v[0],b.svgStringToDataURI(v,"background"===t.mode)}},function(e,t,n){n(14);e.exports=function e(t,n,i){"use strict";var r,a,o,s,l,u,c,d,h,f,p,m,g=1,v=!0;function y(e,t){if(null!==t&&!1!==t&&void 0!==t)return"string"!=typeof t&&"object"!=typeof t?String(t):t}if(i=i||{},"string"==typeof t[0])t[0]=(l=t[0],u=l.match(/^[\w-]+/),c={tag:u?u[0]:"div",attr:{},children:[]},d=l.match(/#([\w-]+)/),h=l.match(/\$([\w-]+)/),f=l.match(/\.[\w-]+/g),d&&(c.attr.id=d[1],i[d[1]]=c),h&&(i[h[1]]=c),f&&(c.attr.class=f.join(" ").replace(/\./g,"")),l.match(/&$/g)&&(v=!1),c);else{if(!Array.isArray(t[0]))throw new Error("First element of array must be a string, or an array and not "+JSON.stringify(t[0]));g=0}for(;g/g,">"))),t[0].children.push(t[g]);else if("number"==typeof t[g])t[0].children.push(t[g]);else if(Array.isArray(t[g])){if(Array.isArray(t[g][0])){if(t[g].reverse().forEach(function(e){t.splice(g+1,0,e)}),0!==g)continue;g++}e(t[g],n,i),t[g][0]&&t[0].children.push(t[g][0])}else if("function"==typeof t[g])o=t[g];else{if("object"!=typeof t[g])throw new TypeError('"'+t[g]+'" is not allowed as a value.');for(a in t[g])t[g].hasOwnProperty(a)&&null!==t[g][a]&&!1!==t[g][a]&&("style"===a&&"object"==typeof t[g][a]?t[0].attr[a]=JSON.stringify(t[g][a],y).slice(2,-2).replace(/","/g,";").replace(/":"/g,":").replace(/\\"/g,"'"):t[0].attr[a]=t[g][a])}}if(!1!==t[0]){for(s in r="<"+t[0].tag,t[0].attr)t[0].attr.hasOwnProperty(s)&&(r+=" "+s+'="'+((m=t[0].attr[s])||0===m?String(m).replace(/&/g,"&").replace(/"/g,"""):"")+'"');r+=">",t[0].children.forEach(function(e){r+=e}),r+="",t[0]=r}return i[0]=t[0],o&&o(t[0]),i}},function(e,t){"use strict";var s=/["'&<>]/;e.exports=function(e){var t,n=""+e,i=s.exec(n);if(!i)return n;var r="",a=0,o=0;for(a=i.index;ae.length)&&e.substring(0,t.length)===t},vd:function(e,t){if(e===t)return!0;if(11===e.nodeType)return!1;if(t.contains)return t.contains(1!==e.nodeType?e.parentNode:e);if(t.compareDocumentPosition)return 16==(16&t.compareDocumentPosition(e));for(;e&&e!=t;)e=e.parentNode;return!!e},Sb:function(e){return E.a.vd(e,e.ownerDocument.documentElement)},kd:function(e){return!!E.a.Lb(e,E.a.Sb)},R:function(e){return e&&e.tagName&&e.tagName.toLowerCase()},Ac:function(e){return E.onError?function(){try{return e.apply(this,arguments)}catch(e){throw E.onError&&E.onError(e),e}}:e},setTimeout:function(e,t){return setTimeout(E.a.Ac(e),t)},Gc:function(e){setTimeout(function(){throw E.onError&&E.onError(e),e},0)},B:function(t,e,n){var i=E.a.Ac(n);if(n=u[e],E.options.useOnlyNativeEvents||n||!Wra)if(n||"function"!=typeof t.addEventListener){if(void 0===t.attachEvent)throw Error("Browser doesn't support addEventListener or attachEvent");function r(e){i.call(t,e)}var a="on"+e;t.attachEvent(a,r),E.a.K.za(t,function(){t.detachEvent(a,r)})}else t.addEventListener(e,i,!1);else l=l||("function"==typeof Wra(t).on?"on":"bind"),Wra(t)[l](e,i)},Fb:function(e,t){if(!e||!e.nodeType)throw Error("element must be a DOM node when calling triggerEvent");var n;if(n=!("input"!==E.a.R(e)||!e.type||"click"!=t.toLowerCase()||"checkbox"!=(n=e.type)&&"radio"!=n),E.options.useOnlyNativeEvents||!Wra||n)if("function"==typeof Ura.createEvent){if("function"!=typeof e.dispatchEvent)throw Error("The supplied element doesn't support dispatchEvent");(n=Ura.createEvent(s[t]||"HTMLEvents")).initEvent(t,!0,!0,Tra,0,0,0,0,0,!1,!1,!1,!1,0,e),e.dispatchEvent(n)}else if(n&&e.click)e.click();else{if(void 0===e.fireEvent)throw Error("Browser doesn't support triggering events");e.fireEvent("on"+t)}else Wra(e).trigger(t)},f:function(e){return E.O(e)?e():e},bc:function(e){return E.O(e)?e.v():e},Eb:function(t,e,n){var i;e&&("object"==typeof t.classList?(i=t.classList[n?"add":"remove"],E.a.D(e.match(h),function(e){i.call(t.classList,e)})):"string"==typeof t.className.baseVal?r(t.className,"baseVal",e,n):r(t,"className",e,n))},Bb:function(e,t){var n=E.a.f(t);null!==n&&n!==Sra||(n="");var i=E.h.firstChild(e);!i||3!=i.nodeType||E.h.nextSibling(i)?E.h.va(e,[e.ownerDocument.createTextNode(n)]):i.data=n,E.a.Ad(e)},Yc:function(e,t){if(e.name=t,c<=7)try{var n=e.name.replace(/[&<>'"]/g,function(e){return"&#"+e.charCodeAt(0)+";"});e.mergeAttributes(Ura.createElement(""),!1)}catch(e){}},Ad:function(e){9<=c&&(e=1==e.nodeType?e:e.parentNode).style&&(e.style.zoom=e.style.zoom)},wd:function(e){if(c){var t=e.style.width;e.style.width=0,e.style.width=t}},Pd:function(e,t){e=E.a.f(e),t=E.a.f(t);for(var n=[],i=e;i<=t;i++)n.push(i);return n},la:function(e){for(var t=[],n=0,i=e.length;n","
  • "],tbody:t,tfoot:t,tr:[2,"","
    "],td:c=[3,"","
    "],th:c,option:d=[1,""],optgroup:d},f=E.a.W<=8,E.a.ua=function(e,t){var n;if(Wra){if(Wra.parseHTML)n=Wra.parseHTML(e,t)||[];else if((n=Wra.clean([e],t))&&n[0]){for(var i=n[0];i.parentNode&&11!==i.parentNode.nodeType;)i=i.parentNode;i.parentNode&&i.parentNode.removeChild(i)}}else{(n=t)||(n=Ura),i=n.parentWindow||n.defaultView||Tra;var r,a=E.a.Db(e).toLowerCase(),o=n.createElement("div");for(a=(r=(a=a.match(/^(?:\x3c!--.*?--\x3e\s*?)*?<([a-z]+)[\s>]/))&&h[a[1]]||l)[0],r="ignored
    "+r[1]+e+r[2]+"
    ","function"==typeof i.innerShiv?o.appendChild(i.innerShiv(r)):(f&&n.body.appendChild(o),o.innerHTML=r,f&&o.parentNode.removeChild(o));a--;)o=o.lastChild;n=E.a.la(o.lastChild.childNodes)}return n},E.a.Md=function(e,t){var n=E.a.ua(e,t);return n.length&&n[0].parentElement||E.a.Yb(n)},E.a.fc=function(e,t){if(E.a.Tb(e),null!==(t=E.a.f(t))&&t!==Sra)if("string"!=typeof t&&(t=t.toString()),Wra)Wra(e).html(t);else for(var n=E.a.ua(t,e.ownerDocument),i=0;i]*))?)*\s+)data-bind\s*=\s*(["'])([\s\S]*?)\3/gi,he=/\x3c!--\s*ko\b\s*([\s\S]*?)\s*--\x3e/g,{xd:function(e,t,n){t.isTemplateRewritten(e,n)||t.rewriteTemplate(e,function(e){return E.kc.Ld(e,t)},n)},Ld:function(e,a){return e.replace(de,function(e,t,n,i,r){return ge(r,t,n,a)}).replace(he,function(e,t){return ge(t,"\x3c!-- ko --\x3e","#comment",a)})},md:function(i,r){return E.aa.Xb(function(e,t){var n=e.nextSibling;n&&n.nodeName.toLowerCase()===r&&E.ib(n,i,t)})}}),E.b("__tr_ambtns",E.kc.md),function(){E.C={},E.C.F=function(e){if(this.F=e){var t=E.a.R(e);this.ab="script"===t?1:"textarea"===t?2:"template"==t&&e.content&&11===e.content.nodeType?3:4}},E.C.F.prototype.text=function(){var e=1===this.ab?"text":2===this.ab?"value":"innerHTML";if(0==arguments.length)return this.F[e];var t=arguments[0];"innerHTML"==e?E.a.fc(this.F,t):this.F[e]=t};var t=E.a.g.Z()+"_";E.C.F.prototype.data=function(e){if(1===arguments.length)return E.a.g.get(this.F,t+e);E.a.g.set(this.F,t+e,arguments[1])};var r=E.a.g.Z();E.C.F.prototype.nodes=function(){var e=this.F;if(0==arguments.length){var t=E.a.g.get(e,r)||{},n=t.lb||(3===this.ab?e.content:4===this.ab?e:Sra);if(!n||t.jd){var i=this.text();i&&i!==t.bb&&(n=E.a.Md(i,e.ownerDocument),E.a.g.set(e,r,{lb:n,bb:i,jd:!0}))}return n}t=arguments[0],this.ab!==Sra&&this.text(""),E.a.g.set(e,r,{lb:t})},E.C.ia=function(e){this.F=e},E.C.ia.prototype=new E.C.F,E.C.ia.prototype.constructor=E.C.ia,E.C.ia.prototype.text=function(){if(0==arguments.length){var e=E.a.g.get(this.F,r)||{};return e.bb===Sra&&e.lb&&(e.bb=e.lb.innerHTML),e.bb}E.a.g.set(this.F,r,{bb:arguments[0]})},E.b("templateSources",E.C),E.b("templateSources.domElement",E.C.F),E.b("templateSources.anonymousTemplate",E.C.ia)}(),function(){function i(e,t,n){var i;for(t=E.h.nextSibling(t);e&&(i=e)!==t;)n(i,e=E.h.nextSibling(i))}function h(e,t){if(e.length){var r=e[0],a=e[e.length-1],n=r.parentNode,o=E.ga.instance,s=o.preprocessNode;if(s){if(i(r,a,function(e,t){var n=e.previousSibling,i=s.call(o,e);i&&(e===r&&(r=i[0]||t),e===a&&(a=i[i.length-1]||n))}),e.length=0,!r)return;r===a?e.push(r):(e.push(r,a),E.a.Ua(e,n))}i(r,a,function(e){1!==e.nodeType&&8!==e.nodeType||E.vc(t,e)}),i(r,a,function(e){1!==e.nodeType&&8!==e.nodeType||E.aa.cd(e,[t])}),E.a.Ua(e,n)}}function l(e){return e.nodeType?e:0"+t+"<\/script>")},0").attr("id",e.containerId).addClass(e.positionClass)).appendTo(g(e.target)),w}(e)),w}function i(e,t,n){var i=!(!n||!n.force)&&n.force;return!(!e||!i&&0!==g(":focus",e).length||(e[t.hideMethod]({duration:t.hideDuration,easing:t.hideEasing,complete:function(){_(e)}}),0))}function y(e){t&&t(e)}function r(t){var r=b(),e=t.iconClass||r.iconClass;if(void 0!==t.optionsOverride&&(r=g.extend(r,t.optionsOverride),e=t.optionsOverride.iconClass||e),!function(e,t){if(e.preventDuplicates){if(t.message===x)return!0;x=t.message}return!1}(r,t)){D++,w=v(r,!0);var a=null,o=g("
    "),n=g("
    "),i=g("
    "),s=g("
    "),l=g(r.closeHtml),u={intervalId:null,hideEta:null,maxHideTime:null},c={toastId:D,state:"visible",startTime:new Date,options:r,map:t};return t.iconClass&&o.addClass(r.toastClass).addClass(e),function(){if(t.title){var e=t.title;r.escapeHtml&&(e=d(t.title)),n.append(e).addClass(r.titleClass),o.append(n)}}(),function(){if(t.message){var e=t.message;r.escapeHtml&&(e=d(t.message)),i.append(e).addClass(r.messageClass),o.append(i)}}(),r.closeButton&&(l.addClass(r.closeClass).attr("role","button"),o.prepend(l)),r.progressBar&&(s.addClass(r.progressClass),o.prepend(s)),r.rtl&&o.addClass("rtl"),r.newestOnTop?w.prepend(o):w.append(o),function(){var e="";switch(t.iconClass){case"toast-success":case"toast-info":e="polite";break;default:e="assertive"}o.attr("aria-live",e)}(),o.hide(),o[r.showMethod]({duration:r.showDuration,easing:r.showEasing,complete:r.onShown}),0/g,">")}function h(e){var t=e&&!1!==r.closeMethod?r.closeMethod:r.hideMethod,n=e&&!1!==r.closeDuration?r.closeDuration:r.hideDuration,i=e&&!1!==r.closeEasing?r.closeEasing:r.hideEasing;if(!g(":focus",o).length||e)return clearTimeout(u.intervalId),o[t]({duration:n,easing:i,complete:function(){_(o),clearTimeout(a),r.onHidden&&"hidden"!==c.state&&r.onHidden(),c.state="hidden",c.endTime=new Date,y(c)}})}function f(){(0×',closeClass:"toast-close-button",newestOnTop:!0,preventDuplicates:!1,progressBar:!1,progressClass:"toast-progress",rtl:!1},e.options)}function _(e){w=w||v(),e.is(":visible")||(e.remove(),e=null,0===w.children().length&&(w.remove(),x=void 0))}var w,t,x,D,a,o,s,l,e}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";var e,r;function b(){return e.apply(null,arguments)}function c(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function d(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function _(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function s(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(_(e,t))return;return 1}function h(e){return void 0===e}function f(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function p(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function m(e,t){for(var n=[],i=0;i>>0,i=0;iLe(e)?(a=e+1,o-Le(e)):(a=e,o);return{year:a,dayOfYear:s}}function Ve(e,t,n){var i,r,a=He(e.year(),t,n),o=Math.floor((e.dayOfYear()-a-1)/7)+1;return o<1?i=o+Ue(r=e.year()-1,t,n):o>Ue(e.year(),t,n)?(i=o-Ue(e.year(),t,n),r=e.year()+1):(r=e.year(),i=o),{week:i,year:r}}function Ue(e,t,n){var i=He(e,t,n),r=He(e+1,t,n);return(Le(e)-i+r)/7}function We(e,t){return e.slice(t,7).concat(e.slice(0,t))}I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),R("week","w"),R("isoWeek","W"),U("week",5),U("isoWeek",5),he("w",te),he("ww",te,Z),he("W",te),he("WW",te,Z),ge(["w","ww","W","WW"],function(e,t,n,i){t[i.substr(0,1)]=B(e)}),I("d",0,"do","day"),I("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),I("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),I("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),R("day","d"),R("weekday","e"),R("isoWeekday","E"),U("day",11),U("weekday",11),U("isoWeekday",11),he("d",te),he("e",te),he("E",te),he("dd",function(e,t){return t.weekdaysMinRegex(e)}),he("ddd",function(e,t){return t.weekdaysShortRegex(e)}),he("dddd",function(e,t){return t.weekdaysRegex(e)}),ge(["dd","ddd","dddd"],function(e,t,n,i){var r=n._locale.weekdaysParse(e,i,n._strict);null!=r?t.d=r:w(n).invalidWeekday=e}),ge(["d","e","E"],function(e,t,n,i){t[i]=B(e)});var qe="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Be="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),$e="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),ze=de,Ge=de,Qe=de;function Je(){function e(e,t){return t.length-e.length}for(var t,n,i,r,a=[],o=[],s=[],l=[],u=0;u<7;u++)t=v([2e3,1]).day(u),n=fe(this.weekdaysMin(t,"")),i=fe(this.weekdaysShort(t,"")),r=fe(this.weekdays(t,"")),a.push(n),o.push(i),s.push(r),l.push(n),l.push(i),l.push(r);a.sort(e),o.sort(e),s.sort(e),l.sort(e),this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Ze(){return this.hours()%12||12}function Xe(e,t){I(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function Ke(e,t){return t._meridiemParse}I("H",["HH",2],0,"hour"),I("h",["hh",2],0,Ze),I("k",["kk",2],0,function(){return this.hours()||24}),I("hmm",0,0,function(){return""+Ze.apply(this)+M(this.minutes(),2)}),I("hmmss",0,0,function(){return""+Ze.apply(this)+M(this.minutes(),2)+M(this.seconds(),2)}),I("Hmm",0,0,function(){return""+this.hours()+M(this.minutes(),2)}),I("Hmmss",0,0,function(){return""+this.hours()+M(this.minutes(),2)+M(this.seconds(),2)}),Xe("a",!0),Xe("A",!1),R("hour","h"),U("hour",13),he("a",Ke),he("A",Ke),he("H",te),he("h",te),he("k",te),he("HH",te,Z),he("hh",te,Z),he("kk",te,Z),he("hmm",ne),he("hmmss",ie),he("Hmm",ne),he("Hmmss",ie),me(["H","HH"],we),me(["k","kk"],function(e,t,n){var i=B(e);t[we]=24===i?0:i}),me(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),me(["h","hh"],function(e,t,n){t[we]=B(e),w(n).bigHour=!0}),me("hmm",function(e,t,n){var i=e.length-2;t[we]=B(e.substr(0,i)),t[xe]=B(e.substr(i)),w(n).bigHour=!0}),me("hmmss",function(e,t,n){var i=e.length-4,r=e.length-2;t[we]=B(e.substr(0,i)),t[xe]=B(e.substr(i,2)),t[De]=B(e.substr(r)),w(n).bigHour=!0}),me("Hmm",function(e,t,n){var i=e.length-2;t[we]=B(e.substr(0,i)),t[xe]=B(e.substr(i))}),me("Hmmss",function(e,t,n){var i=e.length-4,r=e.length-2;t[we]=B(e.substr(0,i)),t[xe]=B(e.substr(i,2)),t[De]=B(e.substr(r))});var et,tt=$("Hours",!0),nt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{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"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,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",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Ee,monthsShort:Me,week:{dow:0,doy:6},weekdays:qe,weekdaysMin:$e,weekdaysShort:Be,meridiemParse:/[ap]\.?m?\.?/i},it={},rt={};function at(e){return e?e.toLowerCase().replace("_","-"):e}function ot(e){var t=null;if(void 0===it[e]&&"undefined"!=typeof module&&module&&module.exports)try{t=et._abbr,require("./locale/"+e),st(t)}catch(t){it[e]=null}return it[e]}function st(e,t){var n;return e&&((n=h(t)?ut(e):lt(e,t))?et=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),et._abbr}function lt(e,t){if(null===t)return delete it[e],null;var n,i=nt;if(t.abbr=e,null!=it[e])u("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),i=it[e]._config;else if(null!=t.parentLocale)if(null!=it[t.parentLocale])i=it[t.parentLocale]._config;else{if(null==(n=ot(t.parentLocale)))return rt[t.parentLocale]||(rt[t.parentLocale]=[]),rt[t.parentLocale].push({name:e,config:t}),null;i=n._config}return it[e]=new E(S(i,t)),rt[e]&&rt[e].forEach(function(e){lt(e.name,e.config)}),st(e),it[e]}function ut(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return et;if(!c(e)){if(t=ot(e))return t;e=[e]}return function(e){for(var t,n,i,r,a=0;a=t&&function(e,t){for(var n=Math.min(e.length,t.length),i=0;i=t-1)break;t--}a++}return et}(e)}function ct(e){var t,n=e._a;return n&&-2===w(e).overflow&&(t=n[be]<0||11Se(n[ye],n[be])?_e:n[we]<0||24Ue(c,f,p)?w(l)._overflowWeeks=!0:null!=g?w(l)._overflowWeekday=!0:(m=Ye(c,d,h,f,p),l._a[ye]=m.year,l._dayOfYear=m.dayOfYear)),null!=e._dayOfYear&&(a=wt(e._a[ye],i[ye]),(e._dayOfYear>Le(a)||0===e._dayOfYear)&&(w(e)._overflowDayOfYear=!0),n=Re(a,0,e._dayOfYear),e._a[be]=n.getUTCMonth(),e._a[_e]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=y[t]=i[t];for(;t<7;t++)e._a[t]=y[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[we]&&0===e._a[xe]&&0===e._a[De]&&0===e._a[ke]&&(e._nextDay=!0,e._a[we]=0),e._d=(e._useUTC?Re:function(e,t,n,i,r,a,o){var s;return e<100&&0<=e?(s=new Date(e+400,t,n,i,r,a,o),isFinite(s.getFullYear())&&s.setFullYear(e)):s=new Date(e,t,n,i,r,a,o),s}).apply(null,y),r=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[we]=24),e._w&&void 0!==e._w.d&&e._w.d!==r&&(w(e).weekdayMismatch=!0)}}function Dt(e){if(e._f!==b.ISO_8601)if(e._f!==b.RFC_2822){e._a=[],w(e).empty=!0;for(var t,n,i,r,a,o,s,l=""+e._i,u=l.length,c=0,d=L(e._f,e._locale).match(N)||[],h=0;hn.valueOf():n.valueOf()"}),pn.toJSON=function(){return this.isValid()?this.toISOString():null},pn.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},pn.unix=function(){return Math.floor(this.valueOf()/1e3)},pn.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},pn.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},pn.eraName=function(){for(var e,t=this.localeData().eras(),n=0,i=t.length;nthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},pn.isLocal=function(){return!!this.isValid()&&!this._isUTC},pn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},pn.isUtc=Ht,pn.isUTC=Ht,pn.zoneAbbr=function(){return this._isUTC?"UTC":""},pn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},pn.dates=n("dates accessor is deprecated. Use date instead.",ln),pn.months=n("months accessor is deprecated. Use month instead",Ie),pn.years=n("years accessor is deprecated. Use year instead",Fe),pn.zone=n("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}),pn.isDSTShifted=n("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!h(this._isDSTShifted))return this._isDSTShifted;var e,t={};return D(t,this),(t=kt(t))._a?(e=(t._isUTC?v:Tt)(t._a),this._isDSTShifted=this.isValid()&&0 div").hide().filter(".datepicker-"+h[this.currentViewMode].CLASS_NAME).show())},y.prototype._isInDisabledDates=function(e){return!0===this._options.disabledDates[e.format("YYYY-MM-DD")]},y.prototype._isInEnabledDates=function(e){return!0===this._options.enabledDates[e.format("YYYY-MM-DD")]},y.prototype._isInDisabledHours=function(e){return!0===this._options.disabledHours[e.format("H")]},y.prototype._isInEnabledHours=function(e){return!0===this._options.enabledHours[e.format("H")]},y.prototype._isValid=function(e,t){if(!e.isValid())return!1;if(this._options.disabledDates&&"d"===t&&this._isInDisabledDates(e))return!1;if(this._options.enabledDates&&"d"===t&&!this._isInEnabledDates(e))return!1;if(this._options.minDate&&e.isBefore(this._options.minDate,t))return!1;if(this._options.maxDate&&e.isAfter(this._options.maxDate,t))return!1;if(this._options.daysOfWeekDisabled&&"d"===t&&-1!==this._options.daysOfWeekDisabled.indexOf(e.day()))return!1;if(this._options.disabledHours&&("h"===t||"m"===t||"s"===t)&&this._isInDisabledHours(e))return!1;if(this._options.enabledHours&&("h"===t||"m"===t||"s"===t)&&!this._isInEnabledHours(e))return!1;if(this._options.disabledTimeIntervals&&("h"===t||"m"===t||"s"===t)){var n=!1;if(o.each(this._options.disabledTimeIntervals,function(){if(e.isBetween(this[0],this[1]))return!(n=!0)}),n)return!1}return!0},y.prototype._parseInputDate=function(e){return void 0===this._options.parseInputDate?n.isMoment(e)||(e=this.getMoment(e)):e=this._options.parseInputDate(e),e},y.prototype._keydown=function(e){var t=null,n=void 0,i=void 0,r=void 0,a=void 0,o=[],s={},l=e.which;for(n in m[l]="p",m)m.hasOwnProperty(n)&&"p"===m[n]&&(o.push(n),parseInt(n,10)!==l&&(s[n]=!0));for(n in this._options.keyBinds)if(this._options.keyBinds.hasOwnProperty(n)&&"function"==typeof this._options.keyBinds[n]&&(r=n.split(" ")).length===o.length&&f[l]===r[r.length-1]){for(a=!0,i=r.length-2;0<=i;i--)if(!(f[r[i]]in s)){a=!1;break}if(a){t=this._options.keyBinds[n];break}}t&&t.call(this)&&(e.stopPropagation(),e.preventDefault())},y.prototype._keyup=function(e){m[e.which]="r",g[e.which]&&(g[e.which]=!1,e.stopPropagation(),e.preventDefault())},y.prototype._indexGivenDates=function(e){var t={},n=this;return o.each(e,function(){var e=n._parseInputDate(this);e.isValid()&&(t[e.format("YYYY-MM-DD")]=!0)}),!!Object.keys(t).length&&t},y.prototype._indexGivenHours=function(e){var t={};return o.each(e,function(){t[this]=!0}),!!Object.keys(t).length&&t},y.prototype._initFormatting=function(){var e=this._options.format||"L LT",t=this;this.actualFormat=e.replace(/(\[[^\[]*])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,function(e){return t._dates[0].localeData().longDateFormat(e)||e}),this.parseFormats=this._options.extraFormats?this._options.extraFormats.slice():[],this.parseFormats.indexOf(e)<0&&this.parseFormats.indexOf(this.actualFormat)<0&&this.parseFormats.push(this.actualFormat),this.use24Hours=this.actualFormat.toLowerCase().indexOf("a")<1&&this.actualFormat.replace(/\[.*?]/g,"").indexOf("h")<1,this._isEnabled("y")&&(this.MinViewModeNumber=2),this._isEnabled("M")&&(this.MinViewModeNumber=1),this._isEnabled("d")&&(this.MinViewModeNumber=0),this.currentViewMode=Math.max(this.MinViewModeNumber,this.currentViewMode),this.unset||this._setValue(this._dates[0],0)},y.prototype._getLastPickedDate=function(){return this._dates[this._getLastPickedDateIndex()]},y.prototype._getLastPickedDateIndex=function(){return this._dates.length-1},y.prototype.getMoment=function(e){var t=void 0;return t=null==e?n():this._hasTimeZone()?n.tz(e,this.parseFormats,this._options.locale,this._options.useStrict,this._options.timeZone):n(e,this.parseFormats,this._options.locale,this._options.useStrict),this._hasTimeZone()&&t.tz(this._options.timeZone),t},y.prototype.toggle=function(){return this.widget?this.hide():this.show()},y.prototype.ignoreReadonly=function(e){if(0===arguments.length)return this._options.ignoreReadonly;if("boolean"!=typeof e)throw new TypeError("ignoreReadonly () expects a boolean parameter");this._options.ignoreReadonly=e},y.prototype.options=function(e){if(0===arguments.length)return o.extend(!0,{},this._options);if(!(e instanceof Object))throw new TypeError("options() this.options parameter should be an object");o.extend(!0,this._options,e);var n=this;o.each(this._options,function(e,t){void 0!==n[e]&&n[e](t)})},y.prototype.date=function(e,t){if(t=t||0,0===arguments.length)return this.unset?null:this._options.allowMultidate?this._dates.join(this._options.multidateSeparator):this._dates[t].clone();if(!(null===e||"string"==typeof e||n.isMoment(e)||e instanceof Date))throw new TypeError("date() parameter must be one of [null, string, moment or Date]");this._setValue(null===e?null:this._parseInputDate(e),t)},y.prototype.format=function(e){if(0===arguments.length)return this._options.format;if("string"!=typeof e&&("boolean"!=typeof e||!1!==e))throw new TypeError("format() expects a string or boolean:false parameter "+e);this._options.format=e,this.actualFormat&&this._initFormatting()},y.prototype.timeZone=function(e){if(0===arguments.length)return this._options.timeZone;if("string"!=typeof e)throw new TypeError("newZone() expects a string parameter");this._options.timeZone=e},y.prototype.dayViewHeaderFormat=function(e){if(0===arguments.length)return this._options.dayViewHeaderFormat;if("string"!=typeof e)throw new TypeError("dayViewHeaderFormat() expects a string parameter");this._options.dayViewHeaderFormat=e},y.prototype.extraFormats=function(e){if(0===arguments.length)return this._options.extraFormats;if(!1!==e&&!(e instanceof Array))throw new TypeError("extraFormats() expects an array or false parameter");this._options.extraFormats=e,this.parseFormats&&this._initFormatting()},y.prototype.disabledDates=function(e){if(0===arguments.length)return this._options.disabledDates?o.extend({},this._options.disabledDates):this._options.disabledDates;if(!e)return this._options.disabledDates=!1,this._update(),!0;if(!(e instanceof Array))throw new TypeError("disabledDates() expects an array parameter");this._options.disabledDates=this._indexGivenDates(e),this._options.enabledDates=!1,this._update()},y.prototype.enabledDates=function(e){if(0===arguments.length)return this._options.enabledDates?o.extend({},this._options.enabledDates):this._options.enabledDates;if(!e)return this._options.enabledDates=!1,this._update(),!0;if(!(e instanceof Array))throw new TypeError("enabledDates() expects an array parameter");this._options.enabledDates=this._indexGivenDates(e),this._options.disabledDates=!1,this._update()},y.prototype.daysOfWeekDisabled=function(e){if(0===arguments.length)return this._options.daysOfWeekDisabled.splice(0);if("boolean"==typeof e&&!e)return this._options.daysOfWeekDisabled=!1,this._update(),!0;if(!(e instanceof Array))throw new TypeError("daysOfWeekDisabled() expects an array parameter");if(this._options.daysOfWeekDisabled=e.reduce(function(e,t){return 6<(t=parseInt(t,10))||t<0||isNaN(t)||-1===e.indexOf(t)&&e.push(t),e},[]).sort(),this._options.useCurrent&&!this._options.keepInvalid)for(var t=0;t").append(S("
    ").addClass("prev").attr("data-action","previous").append(S("").addClass(this._options.icons.previous))).append(S("").addClass("picker-switch").attr("data-action","pickerSwitch").attr("colspan",this._options.calendarWeeks?"6":"5")).append(S("").addClass("next").attr("data-action","next").append(S("").addClass(this._options.icons.next)))),t=S("
    ").attr("colspan",this._options.calendarWeeks?"8":"7")));return[S("
    ").addClass("datepicker-days").append(S("").addClass("table table-sm").append(e).append(S(""))),S("
    ").addClass("datepicker-months").append(S("
    ").addClass("table-condensed").append(e.clone()).append(t.clone())),S("
    ").addClass("datepicker-years").append(S("
    ").addClass("table-condensed").append(e.clone()).append(t.clone())),S("
    ").addClass("datepicker-decades").append(S("
    ").addClass("table-condensed").append(e.clone()).append(t.clone()))]},E.prototype._getTimePickerMainTemplate=function(){var e=S(""),t=S(""),n=S("");return this._isEnabled("h")&&(e.append(S("").append(S("").append(S("").append(S("
    ").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.incrementHour}).addClass("btn").attr("data-action","incrementHours").append(S("").addClass(this._options.icons.up)))),t.append(S("").append(S("").addClass("timepicker-hour").attr({"data-time-component":"hours",title:this._options.tooltips.pickHour}).attr("data-action","showHours"))),n.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.decrementHour}).addClass("btn").attr("data-action","decrementHours").append(S("").addClass(this._options.icons.down))))),this._isEnabled("m")&&(this._isEnabled("h")&&(e.append(S("").addClass("separator")),t.append(S("").addClass("separator").html(":")),n.append(S("").addClass("separator"))),e.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.incrementMinute}).addClass("btn").attr("data-action","incrementMinutes").append(S("").addClass(this._options.icons.up)))),t.append(S("").append(S("").addClass("timepicker-minute").attr({"data-time-component":"minutes",title:this._options.tooltips.pickMinute}).attr("data-action","showMinutes"))),n.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.decrementMinute}).addClass("btn").attr("data-action","decrementMinutes").append(S("").addClass(this._options.icons.down))))),this._isEnabled("s")&&(this._isEnabled("m")&&(e.append(S("").addClass("separator")),t.append(S("").addClass("separator").html(":")),n.append(S("").addClass("separator"))),e.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.incrementSecond}).addClass("btn").attr("data-action","incrementSeconds").append(S("").addClass(this._options.icons.up)))),t.append(S("").append(S("").addClass("timepicker-second").attr({"data-time-component":"seconds",title:this._options.tooltips.pickSecond}).attr("data-action","showSeconds"))),n.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.decrementSecond}).addClass("btn").attr("data-action","decrementSeconds").append(S("").addClass(this._options.icons.down))))),this.use24Hours||(e.append(S("").addClass("separator")),t.append(S("").append(S("").addClass("separator"))),S("
    ").addClass("timepicker-picker").append(S("").addClass("table-condensed").append([e,t,n]))},E.prototype._getTimePickerTemplate=function(){var e=S("
    ").addClass("timepicker-hours").append(S("
    ").addClass("table-condensed")),t=S("
    ").addClass("timepicker-minutes").append(S("
    ").addClass("table-condensed")),n=S("
    ").addClass("timepicker-seconds").append(S("
    ").addClass("table-condensed")),i=[this._getTimePickerMainTemplate()];return this._isEnabled("h")&&i.push(e),this._isEnabled("m")&&i.push(t),this._isEnabled("s")&&i.push(n),i},E.prototype._getToolbar=function(){var e=[];if(this._options.buttons.showToday&&e.push(S("
    ").append(S("").attr({href:"#",tabindex:"-1","data-action":"today",title:this._options.tooltips.today}).append(S("").addClass(this._options.icons.today)))),!this._options.sideBySide&&this._hasDate()&&this._hasTime()){var t=void 0,n=void 0;n="times"===this._options.viewMode?(t=this._options.tooltips.selectDate,this._options.icons.date):(t=this._options.tooltips.selectTime,this._options.icons.time),e.push(S("").append(S("").attr({href:"#",tabindex:"-1","data-action":"togglePicker",title:t}).append(S("").addClass(n))))}return this._options.buttons.showClear&&e.push(S("").append(S("").attr({href:"#",tabindex:"-1","data-action":"clear",title:this._options.tooltips.clear}).append(S("").addClass(this._options.icons.clear)))),this._options.buttons.showClose&&e.push(S("").append(S("").attr({href:"#",tabindex:"-1","data-action":"close",title:this._options.tooltips.close}).append(S("").addClass(this._options.icons.close)))),0===e.length?"":S("").addClass("table-condensed").append(S("").append(S("").append(e)))},E.prototype._getTemplate=function(){var e=S("
    ").addClass("bootstrap-datetimepicker-widget dropdown-menu"),t=S("
    ").addClass("datepicker").append(this._getDatePickerTemplate()),n=S("
    ").addClass("timepicker").append(this._getTimePickerTemplate()),i=S("
      ").addClass("list-unstyled"),r=S("
    • ").addClass("picker-switch"+(this._options.collapse?" accordion-toggle":"")).append(this._getToolbar());return this._options.inline&&e.removeClass("dropdown-menu"),this.use24Hours&&e.addClass("usetwentyfour"),this._isEnabled("s")&&!this.use24Hours&&e.addClass("wider"),this._options.sideBySide&&this._hasDate()&&this._hasTime()?(e.addClass("timepicker-sbs"),"top"===this._options.toolbarPlacement&&e.append(r),e.append(S("
      ").addClass("row").append(t.addClass("col-md-6")).append(n.addClass("col-md-6"))),"bottom"!==this._options.toolbarPlacement&&"default"!==this._options.toolbarPlacement||e.append(r),e):("top"===this._options.toolbarPlacement&&i.append(r),this._hasDate()&&i.append(S("
    • ").addClass(this._options.collapse&&this._hasTime()?"collapse":"").addClass(this._options.collapse&&this._hasTime()&&"times"===this._options.viewMode?"":"show").append(t)),"default"===this._options.toolbarPlacement&&i.append(r),this._hasTime()&&i.append(S("
    • ").addClass(this._options.collapse&&this._hasDate()?"collapse":"").addClass(this._options.collapse&&this._hasDate()&&"times"===this._options.viewMode?"show":"").append(n)),"bottom"===this._options.toolbarPlacement&&i.append(r),e.append(i))},E.prototype._place=function(e){var t=e&&e.data&&e.data.picker||this,n=t._options.widgetPositioning.vertical,i=t._options.widgetPositioning.horizontal,r=void 0,a=(t.component&&t.component.length?t.component:t._element).position(),o=(t.component&&t.component.length?t.component:t._element).offset();if(t._options.widgetParent)r=t._options.widgetParent.append(t.widget);else if(t._element.is("input"))r=t._element.after(t.widget).parent();else{if(t._options.inline)return void(r=t._element.append(t.widget));r=t._element,t._element.children().first().after(t.widget)}if("auto"===n&&(n=o.top+1.5*t.widget.height()>=S(window).height()+S(window).scrollTop()&&t.widget.height()+t._element.outerHeight()S(window).width()?"right":"left"),"top"===n?t.widget.addClass("top").removeClass("bottom"):t.widget.addClass("bottom").removeClass("top"),"right"===i?t.widget.addClass("float-right"):t.widget.removeClass("float-right"),"relative"!==r.css("position")&&(r=r.parents().filter(function(){return"relative"===S(this).css("position")}).first()),0===r.length)throw new Error("datetimepicker component should be placed within a relative positioned container");t.widget.css({top:"top"===n?"auto":a.top+t._element.outerHeight()+"px",bottom:"top"===n?r.outerHeight()-(r===t._element?0:a.top)+"px":"auto",left:"left"===i?(r===t._element?0:a.left)+"px":"auto",right:"left"===i?"auto":r.outerWidth()-t._element.outerWidth()-(r===t._element?0:a.left)+"px"})},E.prototype._fillDow=function(){var e=S("
    "),t=this._viewDate.clone().startOf("w").startOf("d");for(!0===this._options.calendarWeeks&&e.append(S(""),this._options.calendarWeeks&&r.append('"),n.push(r)),a="",i.isBefore(this._viewDate,"M")&&(a+=" old"),i.isAfter(this._viewDate,"M")&&(a+=" new"),this._options.allowMultidate){var s=this._datesFormatted.indexOf(i.format("YYYY-MM-DD"));-1!==s&&i.isSame(this._datesFormatted[s],"d")&&!this.unset&&(a+=" active")}else i.isSame(this._getLastPickedDate(),"d")&&!this.unset&&(a+=" active");this._isValid(i,"d")||(a+=" disabled"),i.isSame(this.getMoment(),"d")&&(a+=" today"),0!==i.day()&&6!==i.day()||(a+=" weekend"),r.append('"),i.add(1,"d")}e.find("tbody").empty().append(n),this._updateMonths(),this._updateYears(),this._updateDecades()}},E.prototype._fillHours=function(){var e=this.widget.find(".timepicker-hours table"),t=this._viewDate.clone().startOf("d"),n=[],i=S("");for(11"),n.push(i)),i.append('"),t.add(1,"h");e.empty().append(n)},E.prototype._fillMinutes=function(){for(var e=this.widget.find(".timepicker-minutes table"),t=this._viewDate.clone().startOf("h"),n=[],i=1===this._options.stepping?5:this._options.stepping,r=S("");this._viewDate.isSame(t,"h");)t.minute()%(4*i)==0&&(r=S(""),n.push(r)),r.append('"),t.add(i,"m");e.empty().append(n)},E.prototype._fillSeconds=function(){for(var e=this.widget.find(".timepicker-seconds table"),t=this._viewDate.clone().startOf("m"),n=[],i=S("");this._viewDate.isSame(t,"m");)t.second()%20==0&&(i=S(""),n.push(i)),i.append('"),t.add(5,"s");e.empty().append(n)},E.prototype._fillTime=function(){var e=void 0,t=void 0,n=this.widget.find(".timepicker span[data-time-component]");this.use24Hours||(e=this.widget.find(".timepicker [data-action=togglePeriod]"),t=this._getLastPickedDate().clone().add(12<=this._getLastPickedDate().hours()?-12:12,"h"),e.text(this._getLastPickedDate().format("A")),this._isValid(t,"h")?e.removeClass("disabled"):e.addClass("disabled")),n.filter("[data-time-component=hours]").text(this._getLastPickedDate().format(this.use24Hours?"HH":"hh")),n.filter("[data-time-component=minutes]").text(this._getLastPickedDate().format("mm")),n.filter("[data-time-component=seconds]").text(this._getLastPickedDate().format("ss")),this._fillHours(),this._fillMinutes(),this._fillSeconds()},E.prototype._doAction=function(e,t){var n=this._getLastPickedDate();if(S(e.currentTarget).is(".disabled"))return!1;switch(t=t||S(e.currentTarget).data("action")){case"next":var i=T.DatePickerModes[this.currentViewMode].NAV_FUNCTION;this._viewDate.add(T.DatePickerModes[this.currentViewMode].NAV_STEP,i),this._fillDate(),this._viewUpdate(i);break;case"previous":var r=T.DatePickerModes[this.currentViewMode].NAV_FUNCTION;this._viewDate.subtract(T.DatePickerModes[this.currentViewMode].NAV_STEP,r),this._fillDate(),this._viewUpdate(r);break;case"pickerSwitch":this._showMode(1);break;case"selectMonth":var a=S(e.target).closest("tbody").find("span").index(S(e.target));this._viewDate.month(a),this.currentViewMode===this.MinViewModeNumber?(this._setValue(n.clone().year(this._viewDate.year()).month(this._viewDate.month()),this._getLastPickedDateIndex()),this._options.inline||this.hide()):(this._showMode(-1),this._fillDate()),this._viewUpdate("M");break;case"selectYear":var o=parseInt(S(e.target).text(),10)||0;this._viewDate.year(o),this.currentViewMode===this.MinViewModeNumber?(this._setValue(n.clone().year(this._viewDate.year()),this._getLastPickedDateIndex()),this._options.inline||this.hide()):(this._showMode(-1),this._fillDate()),this._viewUpdate("YYYY");break;case"selectDecade":var s=parseInt(S(e.target).data("selection"),10)||0;this._viewDate.year(s),this.currentViewMode===this.MinViewModeNumber?(this._setValue(n.clone().year(this._viewDate.year()),this._getLastPickedDateIndex()),this._options.inline||this.hide()):(this._showMode(-1),this._fillDate()),this._viewUpdate("YYYY");break;case"selectDay":var l=this._viewDate.clone();S(e.target).is(".old")&&l.subtract(1,"M"),S(e.target).is(".new")&&l.add(1,"M");var u=l.date(parseInt(S(e.target).text(),10)),c=0;this._options.allowMultidate?-1!==(c=this._datesFormatted.indexOf(u.format("YYYY-MM-DD")))?this._setValue(null,c):this._setValue(u,this._getLastPickedDateIndex()+1):this._setValue(u,this._getLastPickedDateIndex()),this._hasTime()||this._options.keepOpen||this._options.inline||this._options.allowMultidate||this.hide();break;case"incrementHours":var d=n.clone().add(1,"h");this._isValid(d,"h")&&this._setValue(d,this._getLastPickedDateIndex());break;case"incrementMinutes":var h=n.clone().add(this._options.stepping,"m");this._isValid(h,"m")&&this._setValue(h,this._getLastPickedDateIndex());break;case"incrementSeconds":var f=n.clone().add(1,"s");this._isValid(f,"s")&&this._setValue(f,this._getLastPickedDateIndex());break;case"decrementHours":var p=n.clone().subtract(1,"h");this._isValid(p,"h")&&this._setValue(p,this._getLastPickedDateIndex());break;case"decrementMinutes":var m=n.clone().subtract(this._options.stepping,"m");this._isValid(m,"m")&&this._setValue(m,this._getLastPickedDateIndex());break;case"decrementSeconds":var g=n.clone().subtract(1,"s");this._isValid(g,"s")&&this._setValue(g,this._getLastPickedDateIndex());break;case"togglePeriod":this._setValue(n.clone().add(12<=n.hours()?-12:12,"h"),this._getLastPickedDateIndex());break;case"togglePicker":var v=S(e.target),y=v.closest("a"),b=v.closest("ul"),_=b.find(".show"),w=b.find(".collapse:not(.show)"),x=v.is("span")?v:v.find("span"),D=void 0;if(_&&_.length){if((D=_.data("collapse"))&&D.transitioning)return!0;_.collapse?(_.collapse("hide"),w.collapse("show")):(_.removeClass("show"),w.addClass("show")),x.toggleClass(this._options.icons.time+" "+this._options.icons.date),x.hasClass(this._options.icons.date)?y.attr("title",this._options.tooltips.selectDate):y.attr("title",this._options.tooltips.selectTime)}break;case"showPicker":this.widget.find(".timepicker > div:not(.timepicker-picker)").hide(),this.widget.find(".timepicker .timepicker-picker").show();break;case"showHours":this.widget.find(".timepicker .timepicker-picker").hide(),this.widget.find(".timepicker .timepicker-hours").show();break;case"showMinutes":this.widget.find(".timepicker .timepicker-picker").hide(),this.widget.find(".timepicker .timepicker-minutes").show();break;case"showSeconds":this.widget.find(".timepicker .timepicker-picker").hide(),this.widget.find(".timepicker .timepicker-seconds").show();break;case"selectHour":var k=parseInt(S(e.target).text(),10);this.use24Hours||(12<=n.hours()?12!==k&&(k+=12):12===k&&(k=0)),this._setValue(n.clone().hours(k),this._getLastPickedDateIndex()),this._isEnabled("a")||this._isEnabled("m")||this._options.keepOpen||this._options.inline?this._doAction(e,"showPicker"):this.hide();break;case"selectMinute":this._setValue(n.clone().minutes(parseInt(S(e.target).text(),10)),this._getLastPickedDateIndex()),this._isEnabled("a")||this._isEnabled("s")||this._options.keepOpen||this._options.inline?this._doAction(e,"showPicker"):this.hide();break;case"selectSecond":this._setValue(n.clone().seconds(parseInt(S(e.target).text(),10)),this._getLastPickedDateIndex()),this._isEnabled("a")||this._options.keepOpen||this._options.inline?this._doAction(e,"showPicker"):this.hide();break;case"clear":this.clear();break;case"close":this.hide();break;case"today":var C=this.getMoment();this._isValid(C,"d")&&this._setValue(C,this._getLastPickedDateIndex())}return!1},E.prototype.hide=function(){var t=!1;this.widget&&(this.widget.find(".collapse").each(function(){var e=S(this).data("collapse");return!e||!e.transitioning||!(t=!0)}),t||(this.component&&this.component.hasClass("btn")&&this.component.toggleClass("active"),this.widget.hide(),S(window).off("resize",this._place()),this.widget.off("click","[data-action]"),this.widget.off("mousedown",!1),this.widget.remove(),this.widget=!1,this._notifyEvent({type:T.Event.HIDE,date:this._getLastPickedDate().clone()}),void 0!==this.input&&this.input.blur(),this._viewDate=this._getLastPickedDate().clone()))},E.prototype.show=function(){var e=void 0,t={year:function(e){return e.month(0).date(1).hours(0).seconds(0).minutes(0)},month:function(e){return e.date(1).hours(0).seconds(0).minutes(0)},day:function(e){return e.hours(0).seconds(0).minutes(0)},hour:function(e){return e.seconds(0).minutes(0)},minute:function(e){return e.seconds(0)}};if(void 0!==this.input){if(this.input.prop("disabled")||!this._options.ignoreReadonly&&this.input.prop("readonly")||this.widget)return;void 0!==this.input.val()&&0!==this.input.val().trim().length?this._setValue(this._parseInputDate(this.input.val().trim()),0):this.unset&&this._options.useCurrent&&(e=this.getMoment(),"string"==typeof this._options.useCurrent&&(e=t[this._options.useCurrent](e)),this._setValue(e,0))}else this.unset&&this._options.useCurrent&&(e=this.getMoment(),"string"==typeof this._options.useCurrent&&(e=t[this._options.useCurrent](e)),this._setValue(e,0));this.widget=this._getTemplate(),this._fillDow(),this._fillMonths(),this.widget.find(".timepicker-hours").hide(),this.widget.find(".timepicker-minutes").hide(),this.widget.find(".timepicker-seconds").hide(),this._update(),this._showMode(),S(window).on("resize",{picker:this},this._place),this.widget.on("click","[data-action]",S.proxy(this._doAction,this)),this.widget.on("mousedown",!1),this.component&&this.component.hasClass("btn")&&this.component.toggleClass("active"),this._place(),this.widget.show(),void 0!==this.input&&this._options.focusOnShow&&!this.input.is(":focus")&&this.input.focus(),this._notifyEvent({type:T.Event.SHOW})},E.prototype.destroy=function(){this.hide(),this._element.removeData(T.DATA_KEY),this._element.removeData("date")},E.prototype.disable=function(){this.hide(),this.component&&this.component.hasClass("btn")&&this.component.addClass("disabled"),void 0!==this.input&&this.input.prop("disabled",!0)},E.prototype.enable=function(){this.component&&this.component.hasClass("btn")&&this.component.removeClass("disabled"),void 0!==this.input&&this.input.prop("disabled",!1)},E.prototype.toolbarPlacement=function(e){if(0===arguments.length)return this._options.toolbarPlacement;if("string"!=typeof e)throw new TypeError("toolbarPlacement() expects a string parameter");if(-1===D.indexOf(e))throw new TypeError("toolbarPlacement() parameter must be one of ("+D.join(", ")+") value");this._options.toolbarPlacement=e,this.widget&&(this.hide(),this.show())},E.prototype.widgetPositioning=function(e){if(0===arguments.length)return S.extend({},this._options.widgetPositioning);if("[object Object]"!=={}.toString.call(e))throw new TypeError("widgetPositioning() expects an object variable");if(e.horizontal){if("string"!=typeof e.horizontal)throw new TypeError("widgetPositioning() horizontal variable must be a string");if(e.horizontal=e.horizontal.toLowerCase(),-1===x.indexOf(e.horizontal))throw new TypeError("widgetPositioning() expects horizontal parameter to be one of ("+x.join(", ")+")");this._options.widgetPositioning.horizontal=e.horizontal}if(e.vertical){if("string"!=typeof e.vertical)throw new TypeError("widgetPositioning() vertical variable must be a string");if(e.vertical=e.vertical.toLowerCase(),-1===w.indexOf(e.vertical))throw new TypeError("widgetPositioning() expects vertical parameter to be one of ("+w.join(", ")+")");this._options.widgetPositioning.vertical=e.vertical}this._update()},E.prototype.widgetParent=function(e){if(0===arguments.length)return this._options.widgetParent;if("string"==typeof e&&(e=S(e)),null!==e&&"string"!=typeof e&&!(e instanceof S))throw new TypeError("widgetParent() expects a string or a jQuery object parameter");this._options.widgetParent=e,this.widget&&(this.hide(),this.show())},E._jQueryHandleThis=function(e,t,n){var i=S(e).data(T.DATA_KEY);if("object"===(void 0===t?"undefined":r(t))&&S.extend({},T.Default,t),i||(i=new E(S(e),t),S(e).data(T.DATA_KEY,i)),"string"==typeof t){if(void 0===i[t])throw new Error('No method named "'+t+'"');return void 0===n?i[t]():i[t](n)}},E._jQueryInterface=function(e,t){return 1===this.length?E._jQueryHandleThis(this[0],e,t):this.each(function(){E._jQueryHandleThis(this,e,t)})},k=E,S(document).on(T.Event.CLICK_DATA_API,T.Selector.DATA_TOGGLE,function(){var e=C(S(this));0!==e.length&&k._jQueryInterface.call(e,"toggle")}).on(T.Event.CHANGE,"."+T.ClassName.INPUT,function(e){var t=C(S(this));0!==t.length&&k._jQueryInterface.call(t,"_change",e)}).on(T.Event.BLUR,"."+T.ClassName.INPUT,function(e){var t=C(S(this)),n=t.data(T.DATA_KEY);0!==t.length&&(n._options.debug||window.debug||k._jQueryInterface.call(t,"hide",e))}).on(T.Event.KEYDOWN,"."+T.ClassName.INPUT,function(e){var t=C(S(this));0!==t.length&&k._jQueryInterface.call(t,"_keydown",e)}).on(T.Event.KEYUP,"."+T.ClassName.INPUT,function(e){var t=C(S(this));0!==t.length&&k._jQueryInterface.call(t,"_keyup",e)}).on(T.Event.FOCUS,"."+T.ClassName.INPUT,function(e){var t=C(S(this)),n=t.data(T.DATA_KEY);0!==t.length&&n._options.allowInputToggle&&k._jQueryInterface.call(t,"show",e)}),S.fn[T.NAME]=k._jQueryInterface,S.fn[T.NAME].Constructor=k,S.fn[T.NAME].noConflict=function(){return S.fn[T.NAME]=_,k._jQueryInterface};function C(e){var t=e.data("target"),n=void 0;return t||(t=e.attr("href")||"",t=/^#[a-z]/i.test(t)?t:null),0===(n=S(t)).length||n.data(T.DATA_KEY)||S.extend({},n.data(),S(this).data()),n}function E(e,t){a(this,E);var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,b.call(this,e,t));return n._init(),n}}(),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e("object"==typeof exports?require("jquery"):jQuery)}(function(E,M){function N(){return new Date(Date.UTC.apply(Date,arguments))}function O(){var e=new Date;return N(e.getFullYear(),e.getMonth(),e.getDate())}function a(e,t){return e.getUTCFullYear()===t.getUTCFullYear()&&e.getUTCMonth()===t.getUTCMonth()&&e.getUTCDate()===t.getUTCDate()}function e(e,t){return function(){return t!==M&&E.fn.datepicker.deprecated(t),this[e].apply(this,arguments)}}function w(e,t){E.data(e,"datepicker",this),this._events=[],this._secondaryEvents=[],this._process_options(t),this.dates=new n,this.viewDate=this.o.defaultViewDate,this.focusDate=null,this.element=E(e),this.isInput=this.element.is("input"),this.inputField=this.isInput?this.element:this.element.find("input"),this.component=!!this.element.hasClass("date")&&this.element.find(".add-on, .input-group-addon, .input-group-append, .input-group-prepend, .btn"),this.component&&0===this.component.length&&(this.component=!1),this.isInline=!this.component&&this.element.is("div"),this.picker=E(j.template),this._check_template(this.o.templates.leftArrow)&&this.picker.find(".prev").html(this.o.templates.leftArrow),this._check_template(this.o.templates.rightArrow)&&this.picker.find(".next").html(this.o.templates.rightArrow),this._buildEvents(),this._attachEvents(),this.isInline?this.picker.addClass("datepicker-inline").appendTo(this.element):this.picker.addClass("datepicker-dropdown dropdown-menu"),this.o.rtl&&this.picker.addClass("datepicker-rtl"),this.o.calendarWeeks&&this.picker.find(".datepicker-days .datepicker-switch, thead .datepicker-title, tfoot .today, tfoot .clear").attr("colspan",function(e,t){return Number(t)+1}),this._process_options({startDate:this._o.startDate,endDate:this._o.endDate,daysOfWeekDisabled:this.o.daysOfWeekDisabled,daysOfWeekHighlighted:this.o.daysOfWeekHighlighted,datesDisabled:this.o.datesDisabled}),this._allow_update=!1,this.setViewMode(this.o.startView),this._allow_update=!0,this.fillDow(),this.fillMonths(),this.update(),this.isInline&&this.show()}var t,n=(t={get:function(e){return this.slice(e)[0]},contains:function(e){for(var t=e&&e.valueOf(),n=0,i=this.length;n]/g)||[]).length<=0||0this.o.endDate?this.viewDate=new Date(this.o.endDate):this.viewDate=this.o.defaultViewDate),t?(this.setValue(),this.element.change()):this.dates.length&&String(e)!==String(this.dates)&&t&&(this._trigger("changeDate"),this.element.change()),!this.dates.length&&e.length&&(this._trigger("clearDate"),this.element.change()),this.fill(),this},fillDow:function(){if(this.o.showWeekDays){var e=this.o.weekStart,t="";for(this.o.calendarWeeks&&(t+='');e";t+="",this.picker.find(".datepicker-days thead").append(t)}},fillMonths:function(){for(var e=this._utc_to_local(this.viewDate),t="",n=0;n<12;n++)t+=''+A[this.o.language].monthsShort[n]+"";this.picker.find(".datepicker-months td").html(t)},setRange:function(e){e&&e.length?this.range=E.map(e,function(e){return e.valueOf()}):delete this.range,this.fill()},getClassNames:function(e){var t=[],n=this.viewDate.getUTCFullYear(),i=this.viewDate.getUTCMonth(),r=O();return e.getUTCFullYear()n||e.getUTCFullYear()===n&&e.getUTCMonth()>i)&&t.push("new"),this.focusDate&&e.valueOf()===this.focusDate.valueOf()&&t.push("focused"),this.o.todayHighlight&&a(e,r)&&t.push("today"),-1!==this.dates.contains(e)&&t.push("active"),this.dateWithinRange(e)||t.push("disabled"),this.dateIsDisabled(e)&&t.push("disabled","disabled-date"),-1!==E.inArray(e.getUTCDay(),this.o.daysOfWeekHighlighted)&&t.push("highlighted"),this.range&&(e>this.range[0]&&e"+v+"";h.find(".datepicker-switch").text(f+"-"+p),h.find("td").html(c)},fill:function(){var e,t,n=new Date(this.viewDate),r=n.getUTCFullYear(),i=n.getUTCMonth(),a=this.o.startDate!==-1/0?this.o.startDate.getUTCFullYear():-1/0,o=this.o.startDate!==-1/0?this.o.startDate.getUTCMonth():-1/0,s=this.o.endDate!==1/0?this.o.endDate.getUTCFullYear():1/0,l=this.o.endDate!==1/0?this.o.endDate.getUTCMonth():1/0,u=A[this.o.language].today||A.en.today||"",c=A[this.o.language].clear||A.en.clear||"",d=A[this.o.language].titleFormat||A.en.titleFormat,h=O(),f=(!0===this.o.todayBtn||"linked"===this.o.todayBtn)&&h>=this.o.startDate&&h<=this.o.endDate&&!this.weekOfDateIsDisabled(h);if(!isNaN(r)&&!isNaN(i)){this.picker.find(".datepicker-days .datepicker-switch").text(j.formatDate(n,d,this.o.language)),this.picker.find("tfoot .today").text(u).css("display",f?"table-cell":"none"),this.picker.find("tfoot .clear").text(c).css("display",!0===this.o.clearBtn?"table-cell":"none"),this.picker.find("thead .datepicker-title").text(this.o.title).css("display","string"==typeof this.o.title&&""!==this.o.title?"table-cell":"none"),this.updateNavArrows(),this.fillMonths();var p=N(r,i,0),m=p.getUTCDate();p.setUTCDate(m-(p.getUTCDay()-this.o.weekStart+7)%7);var g=new Date(p);p.getUTCFullYear()<100&&g.setUTCFullYear(p.getUTCFullYear()),g.setUTCDate(g.getUTCDate()+42),g=g.valueOf();for(var v,y,b=[];p.valueOf()"),this.o.calendarWeeks)){var _=new Date(+p+(this.o.weekStart-v-7)%7*864e5),w=new Date(Number(_)+(11-_.getUTCDay())%7*864e5),x=new Date(Number(x=N(w.getUTCFullYear(),0,1))+(11-x.getUTCDay())%7*864e5),D=(w-x)/864e5/7+1;b.push('")}(y=this.getClassNames(p)).push("day");var k=p.getUTCDate();this.o.beforeShowDay!==E.noop&&((t=this.o.beforeShowDay(this._utc_to_local(p)))===M?t={}:"boolean"==typeof t?t={enabled:t}:"string"==typeof t&&(t={classes:t}),!1===t.enabled&&y.push("disabled"),t.classes&&(y=y.concat(t.classes.split(/\s+/))),t.tooltip&&(e=t.tooltip),t.content&&(k=t.content)),y=E.isFunction(E.uniqueSort)?E.uniqueSort(y):E.unique(y),b.push('"),e=null,v===this.o.weekEnd&&b.push(""),p.setUTCDate(p.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").html(b.join(""));var C=A[this.o.language].monthsTitle||A.en.monthsTitle||"Months",T=this.picker.find(".datepicker-months").find(".datepicker-switch").text(this.o.maxViewMode<2?C:r).end().find("tbody span").removeClass("active");if(E.each(this.dates,function(e,t){t.getUTCFullYear()===r&&T.eq(t.getUTCMonth()).addClass("active")}),(rs;break;case 0:e=i<=a&&r<=o,t=s<=i&&l<=r}this.picker.find(".prev").toggleClass("disabled",e),this.picker.find(".next").toggleClass("disabled",t)}},click:function(e){var t,n,i;e.preventDefault(),e.stopPropagation(),(t=E(e.target)).hasClass("datepicker-switch")&&this.viewMode!==this.o.maxViewMode&&this.setViewMode(this.viewMode+1),t.hasClass("today")&&!t.hasClass("day")&&(this.setViewMode(0),this._setDate(O(),"linked"===this.o.todayBtn?null:"view")),t.hasClass("clear")&&this.clearDates(),t.hasClass("disabled")||(t.hasClass("month")||t.hasClass("year")||t.hasClass("decade")||t.hasClass("century"))&&(this.viewDate.setUTCDate(1),1===this.viewMode?(i=t.parent().find("span").index(t),n=this.viewDate.getUTCFullYear(),this.viewDate.setUTCMonth(i)):(i=0,n=Number(t.text()),this.viewDate.setUTCFullYear(n)),this._trigger(j.viewModes[this.viewMode-1].e,this.viewDate),this.viewMode===this.o.minViewMode?this._setDate(N(n,i,1)):(this.setViewMode(this.viewMode-1),this.fill())),this.picker.is(":visible")&&this._focused_from&&this._focused_from.focus(),delete this._focused_from},dayCellClick:function(e){var t=E(e.currentTarget).data("date"),n=new Date(t);this.o.updateViewDate&&(n.getUTCFullYear()!==this.viewDate.getUTCFullYear()&&this._trigger("changeYear",this.viewDate),n.getUTCMonth()!==this.viewDate.getUTCMonth()&&this._trigger("changeMonth",this.viewDate)),this._setDate(n)},navArrowsClick:function(e){var t=E(e.currentTarget).hasClass("prev")?-1:1;0!==this.viewMode&&(t*=12*j.viewModes[this.viewMode].navStep),this.viewDate=this.moveMonth(this.viewDate,t),this._trigger(j.viewModes[this.viewMode].e,this.viewDate),this.fill()},_toggle_multidate:function(e){var t=this.dates.contains(e);if(e||this.dates.clear(),-1!==t?(!0===this.o.multidate||1this.o.multidate;)this.dates.remove(0)},_setDate:function(e,t){t&&"date"!==t||this._toggle_multidate(e&&new Date(e)),(!t&&this.o.updateViewDate||"view"===t)&&(this.viewDate=e&&new Date(e)),this.fill(),this.setValue(),t&&"view"===t||this._trigger("changeDate"),this.inputField.trigger("change"),!this.o.autoclose||t&&"date"!==t||this.hide()},moveDay:function(e,t){var n=new Date(e);return n.setUTCDate(e.getUTCDate()+t),n},moveWeek:function(e,t){return this.moveDay(e,7*t)},moveMonth:function(e,t){if(!function(e){return e&&!isNaN(e.getTime())}(e))return this.o.defaultViewDate;if(!t)return e;var n,i,r=new Date(e.valueOf()),a=r.getUTCDate(),o=r.getUTCMonth(),s=Math.abs(t);if(t=0=this.o.startDate&&e<=this.o.endDate},keydown:function(e){if(this.picker.is(":visible")){var t,n,i=!1,r=this.focusDate||this.viewDate;switch(e.keyCode){case 27:this.focusDate?(this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill()):this.hide(),e.preventDefault(),e.stopPropagation();break;case 37:case 38:case 39:case 40:if(!this.o.keyboardNavigation||7===this.o.daysOfWeekDisabled.length)break;t=37===e.keyCode||38===e.keyCode?-1:1,0===this.viewMode?e.ctrlKey?(n=this.moveAvailableDate(r,t,"moveYear"))&&this._trigger("changeYear",this.viewDate):e.shiftKey?(n=this.moveAvailableDate(r,t,"moveMonth"))&&this._trigger("changeMonth",this.viewDate):37===e.keyCode||39===e.keyCode?n=this.moveAvailableDate(r,t,"moveDay"):this.weekOfDateIsDisabled(r)||(n=this.moveAvailableDate(r,t,"moveWeek")):1===this.viewMode?(38!==e.keyCode&&40!==e.keyCode||(t*=4),n=this.moveAvailableDate(r,t,"moveMonth")):2===this.viewMode&&(38!==e.keyCode&&40!==e.keyCode||(t*=4),n=this.moveAvailableDate(r,t,"moveYear")),n&&(this.focusDate=this.viewDate=n,this.setValue(),this.fill(),e.preventDefault());break;case 13:if(!this.o.forceParse)break;r=this.focusDate||this.dates.get(-1)||this.viewDate,this.o.keyboardNavigation&&(this._toggle_multidate(r),i=!0),this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.setValue(),this.fill(),this.picker.is(":visible")&&(e.preventDefault(),e.stopPropagation(),this.o.autoclose&&this.hide());break;case 9:this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill(),this.hide()}i&&(this.dates.length?this._trigger("changeDate"):this._trigger("clearDate"),this.inputField.trigger("change"))}else 40!==e.keyCode&&27!==e.keyCode||(this.show(),e.stopPropagation())},setViewMode:function(e){this.viewMode=e,this.picker.children("div").hide().filter(".datepicker-"+j.viewModes[this.viewMode].clsName).show(),this.updateNavArrows(),this._trigger("changeViewMode",new Date(this.viewDate))}};function u(e,t){E.data(e,"datepicker",this),this.element=E(e),this.inputs=E.map(t.inputs,function(e){return e.jquery?e[0]:e}),delete t.inputs,this.keepEmptyValues=t.keepEmptyValues,delete t.keepEmptyValues,r.call(E(this.inputs),t).on("changeDate",E.proxy(this.dateUpdated,this)),this.pickers=E.map(this.inputs,function(e){return E.data(e,"datepicker")}),this.updateDates()}u.prototype={updateDates:function(){this.dates=E.map(this.pickers,function(e){return e.getUTCDate()}),this.updateRanges()},updateRanges:function(){var n=E.map(this.dates,function(e){return e.valueOf()});E.each(this.pickers,function(e,t){t.setRange(n)})},clearDates:function(){E.each(this.pickers,function(e,t){t.clearDates()})},dateUpdated:function(e){if(!this.updating){this.updating=!0;var n=E.data(e.target,"datepicker");if(n!==M){var i=n.getUTCDate(),r=this.keepEmptyValues,t=E.inArray(e.target,this.inputs),a=t-1,o=t+1,s=this.inputs.length;if(-1!==t){if(E.each(this.pickers,function(e,t){t.getUTCDate()||t!==n&&r||t.setUTCDate(i)}),ithis.dates[o])for(;othis.dates[o];)this.pickers[o++].setUTCDate(i);this.updateDates(),delete this.updating}}}},destroy:function(){E.map(this.pickers,function(e){e.destroy()}),E(this.inputs).off("changeDate",this.dateUpdated),delete this.element.data().datepicker},remove:e("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead")};var i=E.fn.datepicker,r=function(o){var s,l=Array.apply(null,arguments);if(l.shift(),this.each(function(){var e=E(this),t=e.data("datepicker"),n="object"==typeof o&&o;if(!t){var i=function(e,t){function n(e,t){return t.toLowerCase()}var i=E(e).data(),r={},a=new RegExp("^"+t.toLowerCase()+"([A-Z])");for(var o in t=new RegExp("^"+t.toLowerCase()),i)t.test(o)&&(r[o.replace(a,n)]=i[o]);return r}(this,"date"),r=function(e){var n={};if(A[e]||(e=e.split("-")[0],A[e])){var i=A[e];return E.each(d,function(e,t){t in i&&(n[t]=i[t])}),n}}(E.extend({},c,i,n).language),a=E.extend({},c,r,i,n);t=e.hasClass("input-daterange")||a.inputs?(E.extend(a,{inputs:a.inputs||e.find("input").toArray()}),new u(this,a)):new w(this,a),e.data("datepicker",t)}"string"==typeof o&&"function"==typeof t[o]&&(s=t[o].apply(t,l))}),s===M||s instanceof w||s instanceof u)return this;if(1(new Date).getFullYear()+t&&(e-=100),e}(t,i):t)},m:function(e,t){if(isNaN(e))return e;for(t-=1;t<0;)t+=12;for(t%=12,e.setUTCMonth(t);e.getUTCMonth()!==t;)e.setUTCDate(e.getUTCDate()-1);return e},d:function(e,t){return e.setUTCDate(t)}};g.yy=g.yyyy,g.M=g.MM=g.mm=g.m,g.dd=g.d,e=O();var v=t.parts.slice();if(a.length!==v.length&&(v=E(v).filter(function(e,t){return-1!==E.inArray(t,m)}).toArray()),a.length===v.length){var y,b,_;for(l=0,y=v.length;l",contTemplate:'',footTemplate:''};j.template='
    ").addClass("cw").text("#"));t.isBefore(this._viewDate.clone().endOf("w"));)e.append(S("").addClass("dow").text(t.format("dd"))),t.add(1,"d");this.widget.find(".datepicker-days thead").append(e)},E.prototype._fillMonths=function(){for(var e=[],t=this._viewDate.clone().startOf("y").startOf("d");t.isSame(this._viewDate,"y");)e.push(S("").attr("data-action","selectMonth").addClass("month").text(t.format("MMM"))),t.add(1,"M");this.widget.find(".datepicker-months td").empty().append(e)},E.prototype._updateMonths=function(){var e=this.widget.find(".datepicker-months"),t=e.find("th"),n=e.find("tbody").find("span"),i=this;t.eq(0).find("span").attr("title",this._options.tooltips.prevYear),t.eq(1).attr("title",this._options.tooltips.selectYear),t.eq(2).find("span").attr("title",this._options.tooltips.nextYear),e.find(".disabled").removeClass("disabled"),this._isValid(this._viewDate.clone().subtract(1,"y"),"y")||t.eq(0).addClass("disabled"),t.eq(1).text(this._viewDate.year()),this._isValid(this._viewDate.clone().add(1,"y"),"y")||t.eq(2).addClass("disabled"),n.removeClass("active"),this._getLastPickedDate().isSame(this._viewDate,"y")&&!this.unset&&n.eq(this._getLastPickedDate().month()).addClass("active"),n.each(function(e){i._isValid(i._viewDate.clone().month(e),"M")||S(this).addClass("disabled")})},E.prototype._getStartEndYear=function(e,t){var n=e/10,i=Math.floor(t/e)*e;return[i,i+9*n,Math.floor(t/n)*n]},E.prototype._updateYears=function(){var e=this.widget.find(".datepicker-years"),t=e.find("th"),n=this._getStartEndYear(10,this._viewDate.year()),i=this._viewDate.clone().year(n[0]),r=this._viewDate.clone().year(n[1]),a="";for(t.eq(0).find("span").attr("title",this._options.tooltips.prevDecade),t.eq(1).attr("title",this._options.tooltips.selectDecade),t.eq(2).find("span").attr("title",this._options.tooltips.nextDecade),e.find(".disabled").removeClass("disabled"),this._options.minDate&&this._options.minDate.isAfter(i,"y")&&t.eq(0).addClass("disabled"),t.eq(1).text(i.year()+"-"+r.year()),this._options.maxDate&&this._options.maxDate.isBefore(r,"y")&&t.eq(2).addClass("disabled"),a+=''+(i.year()-1)+"";!i.isAfter(r,"y");)a+=''+i.year()+"",i.add(1,"y");a+=''+i.year()+"",e.find("td").html(a)},E.prototype._updateDecades=function(){var e=this.widget.find(".datepicker-decades"),t=e.find("th"),n=this._getStartEndYear(100,this._viewDate.year()),i=this._viewDate.clone().year(n[0]),r=this._viewDate.clone().year(n[1]),a=!1,o=!1,s=void 0,l="";for(t.eq(0).find("span").attr("title",this._options.tooltips.prevCentury),t.eq(2).find("span").attr("title",this._options.tooltips.nextCentury),e.find(".disabled").removeClass("disabled"),(0===i.year()||this._options.minDate&&this._options.minDate.isAfter(i,"y"))&&t.eq(0).addClass("disabled"),t.eq(1).text(i.year()+"-"+r.year()),this._options.maxDate&&this._options.maxDate.isBefore(r,"y")&&t.eq(2).addClass("disabled"),i.year()-10<0?l+=" ":l+=''+(i.year()-10)+"";!i.isAfter(r,"y");)s=i.year()+11,a=this._options.minDate&&this._options.minDate.isAfter(i,"y")&&this._options.minDate.year()<=s,o=this._options.maxDate&&this._options.maxDate.isAfter(i,"y")&&this._options.maxDate.year()<=s,l+=''+i.year()+"",i.add(10,"y");l+=''+i.year()+"",e.find("td").html(l)},E.prototype._fillDate=function(){var e=this.widget.find(".datepicker-days"),t=e.find("th"),n=[],i=void 0,r=void 0,a=void 0,o=void 0;if(this._hasDate()){for(t.eq(0).find("span").attr("title",this._options.tooltips.prevMonth),t.eq(1).attr("title",this._options.tooltips.selectMonth),t.eq(2).find("span").attr("title",this._options.tooltips.nextMonth),e.find(".disabled").removeClass("disabled"),t.eq(1).text(this._viewDate.format(this._options.dayViewHeaderFormat)),this._isValid(this._viewDate.clone().subtract(1,"M"),"M")||t.eq(0).addClass("disabled"),this._isValid(this._viewDate.clone().add(1,"M"),"M")||t.eq(2).addClass("disabled"),i=this._viewDate.clone().startOf("M").startOf("w").startOf("d"),o=0;o<42;o++){if(0===i.weekday()&&(r=S("
    '+i.week()+"'+i.date()+"
    '+t.format(this.use24Hours?"HH":"hh")+"
    '+t.format("mm")+"
    '+t.format("ss")+"
     
    '+D+"'+k+"
    '+c.templates.leftArrow+''+c.templates.rightArrow+"
    '+j.headTemplate+""+j.footTemplate+'
    '+j.headTemplate+j.contTemplate+j.footTemplate+'
    '+j.headTemplate+j.contTemplate+j.footTemplate+'
    '+j.headTemplate+j.contTemplate+j.footTemplate+'
    '+j.headTemplate+j.contTemplate+j.footTemplate+"
    ",E.fn.datepicker.DPGlobal=j,E.fn.datepicker.noConflict=function(){return E.fn.datepicker=i,this},E.fn.datepicker.version="1.9.0",E.fn.datepicker.deprecated=function(e){var t=window.console;t&&t.warn&&t.warn("DEPRECATED: "+e)},E(document).on("focus.datepicker.data-api click.datepicker.data-api",'[data-provide="datepicker"]',function(e){var t=E(this);t.data("datepicker")||(e.preventDefault(),r.call(t,"show"))}),E(function(){r.call(E('[data-provide="datepicker-inline"]'))})}),jQuery.fn.datepicker.dates.fa={days:["یک‌شنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنج‌شنبه","جمعه","شنبه","یک‌شنبه"],daysShort:["یک","دو","سه","چهار","پنج","جمعه","شنبه","یک"],daysMin:["ی","د","س","چ","پ","ج","ش","ی"],months:["ژانویه","فوریه","مارس","آوریل","مه","ژوئن","ژوئیه","اوت","سپتامبر","اکتبر","نوامبر","دسامبر"],monthsShort:["ژان","فور","مار","آور","مه","ژون","ژوی","اوت","سپت","اکت","نوا","دسا"],today:"امروز",clear:"پاک کن",weekStart:1,format:"yyyy/mm/dd"},jQuery.fn.datepicker.dates.fr={days:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],daysShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],daysMin:["d","l","ma","me","j","v","s"],months:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthsShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],today:"Aujourd'hui",monthsTitle:"Mois",clear:"Effacer",weekStart:1,format:"dd/mm/yyyy"},jQuery.fn.datepicker.dates.ru={days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],daysShort:["Вск","Пнд","Втр","Срд","Чтв","Птн","Суб"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",clear:"Очистить",format:"dd.mm.yyyy",weekStart:1,monthsTitle:"Месяцы"},jQuery.fn.datepicker.dates.sv={days:["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],daysShort:["sön","mån","tis","ons","tor","fre","lör"],daysMin:["sö","må","ti","on","to","fr","lö"],months:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],monthsShort:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],today:"Idag",format:"yyyy-mm-dd",weekStart:1,clear:"Rensa"},jQuery.fn.datepicker.dates["zh-CN"]={days:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],daysShort:["周日","周一","周二","周三","周四","周五","周六"],daysMin:["日","一","二","三","四","五","六"],months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthsShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],today:"今天",monthsTitle:"选择月份",clear:"清除",format:"yyyy-mm-dd",titleFormat:"yyyy年mm月",weekStart:1},jQuery.fn.datepicker.dates.es={days:["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado"],daysShort:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"],daysMin:["Do","Lu","Ma","Mi","Ju","Vi","Sa"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],monthsShort:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],today:"Hoy",monthsTitle:"Meses",clear:"Borrar",weekStart:1,format:"dd/mm/yyyy"},jQuery.fn.datepicker.dates.de={days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],daysShort:["Son","Mon","Die","Mit","Don","Fre","Sam"],daysMin:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthsShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],today:"Heute",monthsTitle:"Monate",clear:"Löschen",weekStart:1,format:"dd.mm.yyyy"},jQuery.fn.datepicker.dates.da={days:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],daysShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],daysMin:["Sø","Ma","Ti","On","To","Fr","Lø"],months:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"I Dag",weekStart:1,clear:"Nulstil",format:"dd/mm/yyyy",monthsTitle:"Måneder"},jQuery.fn.datepicker.dates.pt={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],today:"Hoje",monthsTitle:"Meses",clear:"Limpar",format:"dd/mm/yyyy"};var Menu={init:function(){$(function(){Menu.itemClick()})},itemClick:function(){$(".menu-button").click(function(e){e.preventDefault(),$(".menu-item").is(":visible")?$(".menu-item").css("display",""):$(".menu-item").show()})}};Menu.init(),ko.bindingHandlers.modal={init:function(e,t){$(e).modal({show:!1});var n=t();ko.isObservable(n)&&$(e).on("hidden.bs.modal",function(){n(!1)})},update:function(e,t){var n=t();ko.utils.unwrapObservable(n)?$(e).modal("show"):$(e).modal("hide")}},ko.components.register("picker",{viewModel:function(n){var i=this;this.textTerm=ko.observable("").extend({rateLimit:500}),this.minSearchText=ko.observable(n.minSearchText||2),this.multipleSelect=ko.observable(n.multipleSelect||!1),this.searchInputPlaceholder=ko.observable(n.searchInputPlaceholder||"Enter "+this.minSearchText()+" or more characters"),this.selectedItemsTitle=ko.observable(n.selectedItemsTitle||"Selected: "),this.searchResultTitle=ko.observable(n.searchResultTitle||"Search result: "),this.suggestedItemsTitle=ko.observable(n.suggestedItemsTitle||"Suggested items: "),this.noItemSelectedTitle=ko.observable(n.noItemSelectedTitle||"No item/s selected"),this.showAllItemsTitle=ko.observable(n.showAllItemsTitle||"more"),this.allowSuggestedItems=ko.observable(n.allowSuggestedItems&&n.url||!1),this.topSuggestedItems=ko.observable(n.topSuggestedItems||5),this.allowItemAlreadySelectedNotification=ko.observable(n.allowItemAlreadySelectedNotification||!0),this.itemAlreadySelectedTitle=ko.observable(n.itemAlreadySelectedTitle||"item already selected"),this.searchResult=ko.observableArray([]),this.selectedResult=ko.observableArray(n.selectedItems||[]),this.suggestedResult=ko.observableArray([]),this.loading=ko.observable(!1),this.isVisibleEditDialog=ko.observable(!1),this.editedItem=ko.observable(""),this.editedItemOriginal=ko.observable("");var e=ko.toJSON(this.selectedResult);!0===this.multipleSelect()?0===this.selectedResult().length?$("#"+n.hiddenId).val(""):$("#"+n.hiddenId).val(e):0===this.selectedResult().length?$("#"+n.hiddenId).val(""):$("#"+n.hiddenId).val(this.selectedResult()[0]),this.textTerm.subscribe(function(t){""===t.trim()&&i.searchResult([]),""!==t.trim()&&t.trim().length>=i.minSearchText()&&(n.url?(i.loading(!0),$.get(n.url+"="+t,function(e){-1===e.indexOf(t)&&e.push(t),i.searchResult(e),i.loading(!1)})):i.searchResult([t]))}),this.notify=function(e){toastr.options.closeButton=!0,toastr.options.preventDuplicates=!0,toastr.info(e+" "+this.itemAlreadySelectedTitle())},this.notifyError=function(e){toastr.options.closeButton=!0,toastr.options.preventDuplicates=!0,toastr.error(e)},this.add=function(e){e=e.replace(/'/g,"").replace(/"/g,""),-1

    Loading..

    \x3c!-- ko foreach: suggestedResult --\x3e\x3c!-- /ko --\x3e
    '}),ko.applyBindings(),Holder.addTheme("thumb",{bg:"#55595c",fg:"#eceeef",text:"Thumbnail"});var FormMvc={allowValidateHiddenField:function(e){e.data("validator").settings.ignore=""},disableEnter:function(e){e.on("keyup keypress",function(e){if(13===(e.keyCode||e.which))return e.preventDefault(),!1})}};$(function(){$(".single-select").removeAttr("multiple"),$('[data-toggle="tooltip"]').tooltip()});var JSONTree=function(){var t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},e=0,n=0;this.create=function(e,t){return n+=1,p(s(e,0,!1),{class:"jstValue"})};function a(e){return e.replace(/[&<>'"]/g,function(e){return t[e]})}function o(){return n+"_"+e++}var s=function(e,t,n){if(null===e)return d(n?t:0);switch(typeof e){case"boolean":return c(e,n?t:0);case"number":return u(e,n?t:0);case"string":return l(e,n?t:0);default:return e instanceof Array?r(e,t,n):i(e,t,n)}},i=function(t,n,e){var i=o(),r=Object.keys(t).map(function(e){return h(e,t[e],n+1,!0)}).join(f()),a=[g("{",e?n:0,i),p(r,{id:i}),v("}",n)].join("\n");return p(a,{})},r=function(e,t,n){var i=o(),r=e.map(function(e){return s(e,t+1,!0)}).join(f());return[g("[",n?t:0,i),p(r,{id:i}),v("]",t)].join("\n")},l=function(e,t){var n=a(JSON.stringify(e));return p(y(n,t),{class:"jstStr"})},u=function(e,t){return p(y(e,t),{class:"jstNum"})},c=function(e,t){return p(y(e,t),{class:"jstBool"})},d=function(e){return p(y("null",e),{class:"jstNull"})},h=function(e,t,n){var i=y(a(JSON.stringify(e))+": ",n),r=p(s(t,n,!1),{});return p(i+r,{class:"jstProperty"})},f=function(){return p(",\n",{class:"jstComma"})},p=function(e,t){return m("span",t,e)},m=function(e,t,n){return"<"+e+Object.keys(t).map(function(e){return" "+e+'="'+t[e]+'"'}).join("")+">"+n+""},g=function(e,t,n){return p(y(e,t),{class:"jstBracket"})+p("",{class:"jstFold",onclick:"JSONTree.toggle('"+n+"')"})};this.toggle=function(e){var t=document.getElementById(e),n=t.parentNode,i=t.previousElementSibling;""===t.className?(t.className="jstHiddenBlock",n.className="jstFolded",i.className="jstExpand"):(t.className="",n.className="",i.className="jstFold")};var v=function(e,t){return p(y(e,t),{})},y=function(e,t){return Array(2*t+1).join(" ")+e};return this}();$(function(){$(".local-datetime").each(function(){var e=$(this),t=parseInt(e.attr("data-utc"),10)||0;if(t){var n=moment.utc(t).local().format("DD MMM YYYY HH:mm");e.text(n)}}),$('[data-toggle="tooltip"]').tooltip()});var errorLog={eventHandlers:function(){$(".error-log-delete-button").click(function(){return $(".error-log-form").validate(),$(".error-log-form").validate().form()?$("#deleteLogsModal").modal("show"):$(this).submit(),!1}),$(".row-error-detail>td").each(function(){var t,n=$(this).data("error-json");try{t=JSONTree.create(JSON.parse(n))}catch(e){t=JSONTree.create(n)}$(this).html(t)}),$(".btn-error-detail").click(function(e){e.preventDefault();var t=$(this).data("error-id");return $(".row-error-detail[data-error-id="+t+"]").is(":visible")?$(".row-error-detail[data-error-id="+t+"]").addClass("d-none"):$(".row-error-detail[data-error-id="+t+"]").removeClass("d-none"),!1})},init:function(){$(function(){errorLog.eventHandlers()})}};errorLog.init();var auditLog={createJsonTree:function(t){var n;try{n=JSONTree.create(JSON.parse(t))}catch(e){n=JSONTree.create(t)}return n},initJsonTrees:function(){$(".json-tree").each(function(){var e=$(this).data("json-tree"),t=auditLog.createJsonTree(e);$(this).html(t)})},eventHandlers:function(){$(".audit-subject-button").click(function(){var e=$(this).data("subject-identifier"),t=$(this).data("subject-name"),n=$(this).data("subject-type"),i=$(this).data("subject-additional-data");$(".modal-title").html(t+" - "+e+" - ("+n+")"),$(".audit-modal-value").html(auditLog.createJsonTree(i)),$(".audit-modal").modal("show")}),$(".audit-action-button").click(function(){var e=$(this).data("action"),t=$(this).data("action-title");$(".modal-title").html(t),$(".audit-modal-value").html(auditLog.createJsonTree(e)),$(".audit-modal").modal("show")}),$(".audit-log-delete-button").click(function(){return $(".audit-log-form").validate(),$(".audit-log-form").validate().form()?$("#deleteLogsModal").modal("show"):$(this).submit(),!1})},init:function(){$(function(){auditLog.eventHandlers(),auditLog.initJsonTrees()})}};auditLog.init(),$(function(){var e={guid:function(){return"ss-s-s-s-sss".replace(/s/g,e.s4)},s4:function(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)},eventHandlers:function(){$("#generate-guid-button").click(function(){$("#secret-input").val(e.guid())}),$(".secret-value-button").click(function(){var e=$(this).data("secret-value");$(".modal-secret-value").html(e),$(".secret-modal").modal("show")})},init:function(){e.eventHandlers()}};e.init()}),$(function(){var t={getCookie:function(e){for(var t=e+"=",n=document.cookie.split(";"),i=0;i>10|55296,1023&n|56320))}function r(){x()}var e,f,_,a,o,p,h,m,w,l,u,x,D,s,k,g,c,v,y,C="sizzle"+1*new Date,b=n.document,T=0,i=0,S=le(),E=le(),M=le(),N=le(),O=function(e,t){return e===t&&(u=!0),0},A={}.hasOwnProperty,t=[],j=t.pop,I=t.push,P=t.push,L=t.slice,F=function(e,t){for(var n=0,i=e.length;n+~]|"+H+")"+H+"*"),z=new RegExp(H+"|>"),G=new RegExp(U),Q=new RegExp("^"+Y+"$"),J={ID:new RegExp("^#("+Y+")"),CLASS:new RegExp("^\\.("+Y+")"),TAG:new RegExp("^("+Y+"|[*])"),ATTR:new RegExp("^"+V),PSEUDO:new RegExp("^"+U),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+H+"*(even|odd|(([+-]|)(\\d*)n|)"+H+"*(?:([+-]|)"+H+"*(\\d+)|))"+H+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+H+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+H+"*((?:-\\d)?\\d*)"+H+"*\\)|)(?=[^-]|$)","i")},Z=/HTML$/i,X=/^(?:input|select|textarea|button)$/i,K=/^h\d$/i,ee=/^[^{]+\{\s*\[native \w/,te=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ne=/[+~]/,ie=new RegExp("\\\\[\\da-fA-F]{1,6}"+H+"?|\\\\([^\\r\\n\\f])","g"),re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ae=function(e,t){return t?"\0"===e?"�":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=_e(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{P.apply(t=L.call(b.childNodes),b.childNodes),t[b.childNodes.length].nodeType}catch(e){P={apply:t.length?function(e,t){I.apply(e,L.call(t))}:function(e,t){for(var n=e.length,i=0;e[n++]=t[i++];);e.length=n-1}}}function se(t,e,n,i){var r,a,o,s,l,u,c,d=e&&e.ownerDocument,h=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==h&&9!==h&&11!==h)return n;if(!i&&(x(e),e=e||D,k)){if(11!==h&&(l=te.exec(t)))if(r=l[1]){if(9===h){if(!(o=e.getElementById(r)))return n;if(o.id===r)return n.push(o),n}else if(d&&(o=d.getElementById(r))&&y(e,o)&&o.id===r)return n.push(o),n}else{if(l[2])return P.apply(n,e.getElementsByTagName(t)),n;if((r=l[3])&&f.getElementsByClassName&&e.getElementsByClassName)return P.apply(n,e.getElementsByClassName(r)),n}if(f.qsa&&!N[t+" "]&&(!g||!g.test(t))&&(1!==h||"object"!==e.nodeName.toLowerCase())){if(c=t,d=e,1===h&&(z.test(t)||$.test(t))){for((d=ne.test(t)&&ve(e.parentNode)||e)===e&&f.scope||((s=e.getAttribute("id"))?s=s.replace(re,ae):e.setAttribute("id",s=C)),a=(u=p(t)).length;a--;)u[a]=(s?"#"+s:":scope")+" "+be(u[a]);c=u.join(",")}try{return P.apply(n,d.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===C&&e.removeAttribute("id")}}}return m(t.replace(q,"$1"),e,n,i)}function le(){var i=[];return function e(t,n){return i.push(t+" ")>_.cacheLength&&delete e[i.shift()],e[t+" "]=n}}function ue(e){return e[C]=!0,e}function ce(e){var t=D.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function de(e,t){for(var n=e.split("|"),i=n.length;i--;)_.attrHandle[n[i]]=t}function he(e,t){var n=t&&e,i=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(i)return i;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function fe(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function pe(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function me(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&oe(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ge(o){return ue(function(a){return a=+a,ue(function(e,t){for(var n,i=o([],e.length,a),r=i.length;r--;)e[n=i[r]]&&(e[n]=!(t[n]=e[n]))})})}function ve(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in f=se.support={},o=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Z.test(t||n&&n.nodeName||"HTML")},x=se.setDocument=function(e){var t,n,i=e?e.ownerDocument||e:b;return i!=D&&9===i.nodeType&&i.documentElement&&(s=(D=i).documentElement,k=!o(D),b!=D&&(n=D.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",r,!1):n.attachEvent&&n.attachEvent("onunload",r)),f.scope=ce(function(e){return s.appendChild(e).appendChild(D.createElement("div")),void 0!==e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),f.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),f.getElementsByTagName=ce(function(e){return e.appendChild(D.createComment("")),!e.getElementsByTagName("*").length}),f.getElementsByClassName=ee.test(D.getElementsByClassName),f.getById=ce(function(e){return s.appendChild(e).id=C,!D.getElementsByName||!D.getElementsByName(C).length}),f.getById?(_.filter.ID=function(e){var t=e.replace(ie,d);return function(e){return e.getAttribute("id")===t}},_.find.ID=function(e,t){if(void 0!==t.getElementById&&k){var n=t.getElementById(e);return n?[n]:[]}}):(_.filter.ID=function(e){var n=e.replace(ie,d);return function(e){var t=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},_.find.ID=function(e,t){if(void 0!==t.getElementById&&k){var n,i,r,a=t.getElementById(e);if(a){if((n=a.getAttributeNode("id"))&&n.value===e)return[a];for(r=t.getElementsByName(e),i=0;a=r[i++];)if((n=a.getAttributeNode("id"))&&n.value===e)return[a]}return[]}}),_.find.TAG=f.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):f.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,i=[],r=0,a=t.getElementsByTagName(e);if("*"!==e)return a;for(;n=a[r++];)1===n.nodeType&&i.push(n);return i},_.find.CLASS=f.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&k)return t.getElementsByClassName(e)},c=[],g=[],(f.qsa=ee.test(D.querySelectorAll))&&(ce(function(e){var t;s.appendChild(e).innerHTML="
    ",e.querySelectorAll("[msallowcapture^='']").length&&g.push("[*^$]="+H+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||g.push("\\["+H+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+C+"-]").length||g.push("~="),(t=D.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||g.push("\\["+H+"*name"+H+"*="+H+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||g.push(":checked"),e.querySelectorAll("a#"+C+"+*").length||g.push(".#.+[+~]"),e.querySelectorAll("\\\f"),g.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=D.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&g.push("name"+H+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&g.push(":enabled",":disabled"),s.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&g.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),g.push(",.*:")})),(f.matchesSelector=ee.test(v=s.matches||s.webkitMatchesSelector||s.mozMatchesSelector||s.oMatchesSelector||s.msMatchesSelector))&&ce(function(e){f.disconnectedMatch=v.call(e,"*"),v.call(e,"[s!='']:x"),c.push("!=",U)}),g=g.length&&new RegExp(g.join("|")),c=c.length&&new RegExp(c.join("|")),t=ee.test(s.compareDocumentPosition),y=t||ee.test(s.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,i=t&&t.parentNode;return e===i||!(!i||1!==i.nodeType||!(n.contains?n.contains(i):e.compareDocumentPosition&&16&e.compareDocumentPosition(i)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},O=t?function(e,t){if(e===t)return u=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!f.sortDetached&&t.compareDocumentPosition(e)===n?e==D||e.ownerDocument==b&&y(b,e)?-1:t==D||t.ownerDocument==b&&y(b,t)?1:l?F(l,e)-F(l,t):0:4&n?-1:1)}:function(e,t){if(e===t)return u=!0,0;var n,i=0,r=e.parentNode,a=t.parentNode,o=[e],s=[t];if(!r||!a)return e==D?-1:t==D?1:r?-1:a?1:l?F(l,e)-F(l,t):0;if(r===a)return he(e,t);for(n=e;n=n.parentNode;)o.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;o[i]===s[i];)i++;return i?he(o[i],s[i]):o[i]==b?-1:s[i]==b?1:0}),D},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(x(e),f.matchesSelector&&k&&!N[t+" "]&&(!c||!c.test(t))&&(!g||!g.test(t)))try{var n=v.call(e,t);if(n||f.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(ie,d),e[3]=(e[3]||e[4]||e[5]||"").replace(ie,d),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return J.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&G.test(n)&&(t=p(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(ie,d).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=S[e+" "];return t||(t=new RegExp("(^|"+H+")"+e+"("+H+"|$)"))&&S(e,function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,i,r){return function(e){var t=se.attr(e,n);return null==t?"!="===i:!i||(t+="","="===i?t===r:"!="===i?t!==r:"^="===i?r&&0===t.indexOf(r):"*="===i?r&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function M(e,n,i){return b(n)?C.grep(e,function(e,t){return!!n.call(e,t,e)!==i}):n.nodeType?C.grep(e,function(e){return e===n!==i}):"string"!=typeof n?C.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(C.fn.init=function(e,t,n){var i,r;if(!e)return this;if(n=n||N,"string"!=typeof e)return e.nodeType?(this[0]=e,this.length=1,this):b(e)?void 0!==n.ready?n.ready(e):e(C):C.makeArray(e,this);if(!(i="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:O.exec(e))||!i[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(i[1]){if(t=t instanceof C?t[0]:t,C.merge(this,C.parseHTML(i[1],t&&t.nodeType?t.ownerDocument||t:k,!0)),E.test(i[1])&&C.isPlainObject(t))for(i in t)b(this[i])?this[i](t[i]):this.attr(i,t[i]);return this}return(r=k.getElementById(i[2]))&&(this[0]=r,this.length=1),this}).prototype=C.fn,N=C(k);var A=/^(?:parents|prev(?:Until|All))/,j={children:!0,contents:!0,next:!0,prev:!0};function I(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}C.fn.extend({has:function(e){var t=C(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,pe=/^$|^module$|\/(?:java|ecma)script/i;ce=k.createDocumentFragment().appendChild(k.createElement("div")),(de=k.createElement("input")).setAttribute("type","radio"),de.setAttribute("checked","checked"),de.setAttribute("name","t"),ce.appendChild(de),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var me={thead:[1,"","
    "],col:[2,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],_default:[0,"",""]};function ge(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&S(e,t)?C.merge([e],n):n}function ve(e,t){for(var n=0,i=e.length;n",""]);var ye=/<|&#?\w+;/;function be(e,t,n,i,r){for(var a,o,s,l,u,c,d=t.createDocumentFragment(),h=[],f=0,p=e.length;f\s*$/g;function Oe(e,t){return S(e,"table")&&S(11!==t.nodeType?t:t.firstChild,"tr")&&C(e).children("tbody")[0]||e}function Ae(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function je(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Ie(e,t){var n,i,r,a,o,s;if(1===t.nodeType){if(Q.hasData(e)&&(s=Q.get(e).events))for(r in Q.remove(t,"handle events"),s)for(n=0,i=s[r].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",r=function(e){i.remove(),r=null,e&&t("error"===e.type?404:200,e.type)}),k.head.appendChild(i[0])},abort:function(){r&&r()}}});var tn,nn=[],rn=/(=)\?(?=&|$)|\?\?/;C.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=nn.pop()||C.expando+"_"+jt.guid++;return this[e]=!0,e}}),C.ajaxPrefilter("json jsonp",function(e,t,n){var i,r,a,o=!1!==e.jsonp&&(rn.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&rn.test(e.data)&&"data");if(o||"jsonp"===e.dataTypes[0])return i=e.jsonpCallback=b(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,o?e[o]=e[o].replace(rn,"$1"+i):!1!==e.jsonp&&(e.url+=(It.test(e.url)?"&":"?")+e.jsonp+"="+i),e.converters["script json"]=function(){return a||C.error(i+" was not called"),a[0]},e.dataTypes[0]="json",r=D[i],D[i]=function(){a=arguments},n.always(function(){void 0===r?C(D).removeProp(i):D[i]=r,e[i]&&(e.jsonpCallback=t.jsonpCallback,nn.push(i)),a&&b(r)&&r(a[0]),a=r=void 0}),"script"}),y.createHTMLDocument=((tn=k.implementation.createHTMLDocument("").body).innerHTML="
    ",2===tn.childNodes.length),C.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((i=(t=k.implementation.createHTMLDocument("")).createElement("base")).href=k.location.href,t.head.appendChild(i)):t=k),a=!n&&[],(r=E.exec(e))?[t.createElement(r[1])]:(r=be([e],t,a),a&&a.length&&C(a).remove(),C.merge([],r.childNodes)));var i,r,a},C.fn.load=function(e,t,n){var i,r,a,o=this,s=e.indexOf(" ");return-1").append(C.parseHTML(e)).find(i):e)}).always(n&&function(e,t){o.each(function(){n.apply(this,a||[e.responseText,t,e])})}),this},C.expr.pseudos.animated=function(t){return C.grep(C.timers,function(e){return t===e.elem}).length},C.offset={setOffset:function(e,t,n){var i,r,a,o,s,l,u=C.css(e,"position"),c=C(e),d={};"static"===u&&(e.style.position="relative"),s=c.offset(),a=C.css(e,"top"),l=C.css(e,"left"),r=("absolute"===u||"fixed"===u)&&-1<(a+l).indexOf("auto")?(o=(i=c.position()).top,i.left):(o=parseFloat(a)||0,parseFloat(l)||0),b(t)&&(t=t.call(e,n,C.extend({},s))),null!=t.top&&(d.top=t.top-s.top+o),null!=t.left&&(d.left=t.left-s.left+r),"using"in t?t.using.call(e,d):("number"==typeof d.top&&(d.top+="px"),"number"==typeof d.left&&(d.left+="px"),c.css(d))}},C.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){C.offset.setOffset(this,t,e)});var e,n,i=this[0];return i?i.getClientRects().length?(e=i.getBoundingClientRect(),n=i.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,i=this[0],r={top:0,left:0};if("fixed"===C.css(i,"position"))t=i.getBoundingClientRect();else{for(t=this.offset(),n=i.ownerDocument,e=i.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&"static"===C.css(e,"position");)e=e.parentNode;e&&e!==i&&1===e.nodeType&&((r=C(e).offset()).top+=C.css(e,"borderTopWidth",!0),r.left+=C.css(e,"borderLeftWidth",!0))}return{top:t.top-r.top-C.css(i,"marginTop",!0),left:t.left-r.left-C.css(i,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&"static"===C.css(e,"position");)e=e.offsetParent;return e||ie})}}),C.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,r){var a="pageYOffset"===r;C.fn[t]=function(e){return U(this,function(e,t,n){var i;if(m(e)?i=e:9===e.nodeType&&(i=e.defaultView),void 0===n)return i?i[r]:e[t];i?i.scrollTo(a?i.pageXOffset:n,a?n:i.pageYOffset):e[t]=n},t,e,arguments.length)}}),C.each(["top","left"],function(e,n){C.cssHooks[n]=Xe(y.pixelPosition,function(e,t){if(t)return t=Ze(e,n),$e.test(t)?C(e).position()[n]+"px":t})}),C.each({Height:"height",Width:"width"},function(o,s){C.each({padding:"inner"+o,content:s,"":"outer"+o},function(i,a){C.fn[a]=function(e,t){var n=arguments.length&&(i||"boolean"!=typeof e),r=i||(!0===e||!0===t?"margin":"border");return U(this,function(e,t,n){var i;return m(e)?0===a.indexOf("outer")?e["inner"+o]:e.document.documentElement["client"+o]:9===e.nodeType?(i=e.documentElement,Math.max(e.body["scroll"+o],i["scroll"+o],e.body["offset"+o],i["offset"+o],i["client"+o])):void 0===n?C.css(e,t,r):C.style(e,t,n,r)},s,n?e:void 0,n)}})}),C.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){C.fn[t]=function(e){return this.on(t,e)}}),C.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,i){return this.on(t,e,n,i)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),C.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){C.fn[n]=function(e,t){return 0").attr("name",i.submitButton.name).val(c(i.submitButton).val()).appendTo(i.currentForm)),!(i.settings.submitHandler&&!i.settings.debug)||(t=i.settings.submitHandler.call(i,i.currentForm,n),e&&e.remove(),void 0!==t&&t)}return i.settings.debug&&n.preventDefault(),i.cancelSubmit?(i.cancelSubmit=!1,e()):i.form()?i.pendingRequest?!(i.formSubmitted=!0):e():(i.focusInvalid(),!1)})),i)}e&&e.debug&&window.console&&console.warn("Nothing selected, can't validate, returning nothing.")},valid:function(){var e,t,n;return c(this[0]).is("form")?e=this.validate().form():(n=[],e=!0,t=c(this[0].form).validate(),this.each(function(){(e=t.element(this)&&e)||(n=n.concat(t.errorList))}),t.errorList=n),e},rules:function(e,t){var n,i,r,a,o,s,l=this[0],u=void 0!==this.attr("contenteditable")&&"false"!==this.attr("contenteditable");if(null!=l&&(!l.form&&u&&(l.form=this.closest("form")[0],l.name=this.attr("name")),null!=l.form)){if(e)switch(i=(n=c.data(l.form,"validator").settings).rules,r=c.validator.staticRules(l),e){case"add":c.extend(r,c.validator.normalizeRule(t)),delete r.messages,i[l.name]=r,t.messages&&(n.messages[l.name]=c.extend(n.messages[l.name],t.messages));break;case"remove":return t?(s={},c.each(t.split(/\s/),function(e,t){s[t]=r[t],delete r[t]}),s):(delete i[l.name],r)}return(a=c.validator.normalizeRules(c.extend({},c.validator.classRules(l),c.validator.attributeRules(l),c.validator.dataRules(l),c.validator.staticRules(l)),l)).required&&(o=a.required,delete a.required,a=c.extend({required:o},a)),a.remote&&(o=a.remote,delete a.remote,a=c.extend(a,{remote:o})),a}}});function n(e){return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}var i;c.extend(c.expr.pseudos||c.expr[":"],{blank:function(e){return!n(""+c(e).val())},filled:function(e){var t=c(e).val();return null!==t&&!!n(""+t)},unchecked:function(e){return!c(e).prop("checked")}}),c.validator=function(e,t){this.settings=c.extend(!0,{},c.validator.defaults,e),this.currentForm=t,this.init()},c.validator.format=function(n,e){return 1===arguments.length?function(){var e=c.makeArray(arguments);return e.unshift(n),c.validator.format.apply(this,e)}:(void 0===e||(2Warning: No message defined for "+e.name+""),i=/\$?\{(\d+)\}/g;return"function"==typeof n?n=n.call(this,t.parameters,e):i.test(n)&&(n=c.validator.format(n.replace(i,"{$1}"),t.parameters)),n},formatAndAdd:function(e,t){var n=this.defaultMessage(e,t);this.errorList.push({message:n,element:e,method:t.method}),this.errorMap[e.name]=n,this.submitted[e.name]=n},addWrapper:function(e){return this.settings.wrapper&&(e=e.add(e.parent(this.settings.wrapper))),e},defaultShowErrors:function(){var e,t,n;for(e=0;this.errorList[e];e++)n=this.errorList[e],this.settings.highlight&&this.settings.highlight.call(this,n.element,this.settings.errorClass,this.settings.validClass),this.showLabel(n.element,n.message);if(this.errorList.length&&(this.toShow=this.toShow.add(this.containers)),this.settings.success)for(e=0;this.successList[e];e++)this.showLabel(this.successList[e]);if(this.settings.unhighlight)for(e=0,t=this.validElements();t[e];e++)this.settings.unhighlight.call(this,t[e],this.settings.errorClass,this.settings.validClass);this.toHide=this.toHide.not(this.toShow),this.hideErrors(),this.addWrapper(this.toShow).show()},validElements:function(){return this.currentElements.not(this.invalidElements())},invalidElements:function(){return c(this.errorList).map(function(){return this.element})},showLabel:function(e,t){var n,i,r,a,o=this.errorsFor(e),s=this.idOrName(e),l=c(e).attr("aria-describedby");o.length?(o.removeClass(this.settings.validClass).addClass(this.settings.errorClass),o.html(t)):(n=o=c("<"+this.settings.errorElement+">").attr("id",s+"-error").addClass(this.settings.errorClass).html(t||""),this.settings.wrapper&&(n=o.hide().show().wrap("<"+this.settings.wrapper+"/>").parent()),this.labelContainer.length?this.labelContainer.append(n):this.settings.errorPlacement?this.settings.errorPlacement.call(this,n,c(e)):n.insertAfter(e),o.is("label")?o.attr("for",s):0===o.parents("label[for='"+this.escapeCssMeta(s)+"']").length&&(r=o.attr("id"),l?l.match(new RegExp("\\b"+this.escapeCssMeta(r)+"\\b"))||(l+=" "+r):l=r,c(e).attr("aria-describedby",l),(i=this.groups[e.name])&&(a=this,c.each(a.groups,function(e,t){t===i&&c("[name='"+a.escapeCssMeta(e)+"']",a.currentForm).attr("aria-describedby",o.attr("id"))})))),!t&&this.settings.success&&(o.text(""),"string"==typeof this.settings.success?o.addClass(this.settings.success):this.settings.success(o,e)),this.toShow=this.toShow.add(o)},errorsFor:function(e){var t=this.escapeCssMeta(this.idOrName(e)),n=c(e).attr("aria-describedby"),i="label[for='"+t+"'], label[for='"+t+"'] *";return n&&(i=i+", #"+this.escapeCssMeta(n).replace(/\s+/g,", #")),this.errors().filter(i)},escapeCssMeta:function(e){return e.replace(/([\\!"#$%&'()*+,./:;<=>?@\[\]^`{|}~])/g,"\\$1")},idOrName:function(e){return this.groups[e.name]||(this.checkable(e)?e.name:e.id||e.name)},validationTargetFor:function(e){return this.checkable(e)&&(e=this.findByName(e.name)),c(e).not(this.settings.ignore)[0]},checkable:function(e){return/radio|checkbox/i.test(e.type)},findByName:function(e){return c(this.currentForm).find("[name='"+this.escapeCssMeta(e)+"']")},getLength:function(e,t){switch(t.nodeName.toLowerCase()){case"select":return c("option:selected",t).length;case"input":if(this.checkable(t))return this.findByName(t.name).filter(":checked").length}return e.length},depend:function(e,t){return!this.dependTypes[typeof e]||this.dependTypes[typeof e](e,t)},dependTypes:{boolean:function(e){return e},string:function(e,t){return!!c(e,t.form).length},function:function(e,t){return e(t)}},optional:function(e){var t=this.elementValue(e);return!c.validator.methods.required.call(this,t,e)&&"dependency-mismatch"},startRequest:function(e){this.pending[e.name]||(this.pendingRequest++,c(e).addClass(this.settings.pendingClass),this.pending[e.name]=!0)},stopRequest:function(e,t){this.pendingRequest--,this.pendingRequest<0&&(this.pendingRequest=0),delete this.pending[e.name],c(e).removeClass(this.settings.pendingClass),t&&0===this.pendingRequest&&this.formSubmitted&&this.form()?(c(this.currentForm).submit(),this.submitButton&&c("input:hidden[name='"+this.submitButton.name+"']",this.currentForm).remove(),this.formSubmitted=!1):!t&&0===this.pendingRequest&&this.formSubmitted&&(c(this.currentForm).triggerHandler("invalid-form",[this]),this.formSubmitted=!1)},previousValue:function(e,t){return t="string"==typeof t&&t||"remote",c.data(e,"previousValue")||c.data(e,"previousValue",{old:null,valid:!0,message:this.defaultMessage(e,{method:t})})},destroy:function(){this.resetForm(),c(this.currentForm).off(".validate").removeData("validator").find(".validate-equalTo-blur").off(".validate-equalTo").removeClass("validate-equalTo-blur").find(".validate-lessThan-blur").off(".validate-lessThan").removeClass("validate-lessThan-blur").find(".validate-lessThanEqual-blur").off(".validate-lessThanEqual").removeClass("validate-lessThanEqual-blur").find(".validate-greaterThanEqual-blur").off(".validate-greaterThanEqual").removeClass("validate-greaterThanEqual-blur").find(".validate-greaterThan-blur").off(".validate-greaterThan").removeClass("validate-greaterThan-blur")}},classRuleSettings:{required:{required:!0},email:{email:!0},url:{url:!0},date:{date:!0},dateISO:{dateISO:!0},number:{number:!0},digits:{digits:!0},creditcard:{creditcard:!0}},addClassRules:function(e,t){e.constructor===String?this.classRuleSettings[e]=t:c.extend(this.classRuleSettings,e)},classRules:function(e){var t={},n=c(e).attr("class");return n&&c.each(n.split(" "),function(){this in c.validator.classRuleSettings&&c.extend(t,c.validator.classRuleSettings[this])}),t},normalizeAttributeRule:function(e,t,n,i){/min|max|step/.test(n)&&(null===t||/number|range|text/.test(t))&&(i=Number(i),isNaN(i)&&(i=void 0)),i||0===i?e[n]=i:t===n&&"range"!==t&&(e[n]=!0)},attributeRules:function(e){var t,n,i={},r=c(e),a=e.getAttribute("type");for(t in c.validator.methods)n="required"===t?(""===(n=e.getAttribute(t))&&(n=!0),!!n):r.attr(t),this.normalizeAttributeRule(i,a,t,n);return i.maxlength&&/-1|2147483647|524288/.test(i.maxlength)&&delete i.maxlength,i},dataRules:function(e){var t,n,i={},r=c(e),a=e.getAttribute("type");for(t in c.validator.methods)""===(n=r.data("rule"+t.charAt(0).toUpperCase()+t.substring(1).toLowerCase()))&&(n=!0),this.normalizeAttributeRule(i,a,t,n);return i},staticRules:function(e){var t={},n=c.data(e.form,"validator");return n.settings.rules&&(t=c.validator.normalizeRule(n.settings.rules[e.name])||{}),t},normalizeRules:function(i,r){return c.each(i,function(e,t){if(!1!==t){if(t.param||t.depends){var n=!0;switch(typeof t.depends){case"string":n=!!c(t.depends,r.form).length;break;case"function":n=t.depends.call(r,r)}n?i[e]=void 0===t.param||t.param:(c.data(r.form,"validator").resetElements(c(r)),delete i[e])}}else delete i[e]}),c.each(i,function(e,t){i[e]="function"==typeof t&&"normalizer"!==e?t(r):t}),c.each(["minlength","maxlength"],function(){i[this]&&(i[this]=Number(i[this]))}),c.each(["rangelength","range"],function(){var e;i[this]&&(Array.isArray(i[this])?i[this]=[Number(i[this][0]),Number(i[this][1])]:"string"==typeof i[this]&&(e=i[this].replace(/[\[\]]/g,"").split(/[\s,]+/),i[this]=[Number(e[0]),Number(e[1])]))}),c.validator.autoCreateRanges&&(null!=i.min&&null!=i.max&&(i.range=[i.min,i.max],delete i.min,delete i.max),null!=i.minlength&&null!=i.maxlength&&(i.rangelength=[i.minlength,i.maxlength],delete i.minlength,delete i.maxlength)),i},normalizeRule:function(e){if("string"==typeof e){var t={};c.each(e.split(/\s/),function(){t[this]=!0}),e=t}return e},addMethod:function(e,t,n){c.validator.methods[e]=t,c.validator.messages[e]=void 0!==n?n:c.validator.messages[e],t.length<3&&c.validator.addClassRules(e,c.validator.normalizeRule(e))},methods:{required:function(e,t,n){if(!this.depend(n,t))return"dependency-mismatch";if("select"!==t.nodeName.toLowerCase())return this.checkable(t)?0=n[0]&&i<=n[1]},min:function(e,t,n){return this.optional(t)||n<=e},max:function(e,t,n){return this.optional(t)||e<=n},range:function(e,t,n){return this.optional(t)||e>=n[0]&&e<=n[1]},step:function(e,t,n){function i(e){var t=(""+e).match(/(?:\.(\d+))?$/);return t&&t[1]?t[1].length:0}function r(e){return Math.round(e*Math.pow(10,a))}var a,o=c(t).attr("type"),s="Step attribute on input type "+o+" is not supported.",l=new RegExp("\\b"+o+"\\b"),u=!0;if(o&&!l.test(["text","number","range"].join()))throw new Error(s);return a=i(n),(i(e)>a||r(e)%r(n)!=0)&&(u=!1),this.optional(t)||u},equalTo:function(e,t,n){var i=c(n);return this.settings.onfocusout&&i.not(".validate-equalTo-blur").length&&i.addClass("validate-equalTo-blur").on("blur.validate-equalTo",function(){c(t).valid()}),e===i.val()},remote:function(a,o,e,s){if(this.optional(o))return"dependency-mismatch";s="string"==typeof s&&s||"remote";var l,t,n,u=this.previousValue(o,s);return this.settings.messages[o.name]||(this.settings.messages[o.name]={}),u.originalMessage=u.originalMessage||this.settings.messages[o.name][s],this.settings.messages[o.name][s]=u.message,e="string"==typeof e&&{url:e}||e,n=c.param(c.extend({data:a},e.data)),u.old===n?u.valid:(u.old=n,(l=this).startRequest(o),(t={})[o.name]=a,c.ajax(c.extend(!0,{mode:"abort",port:"validate"+o.name,dataType:"json",data:t,context:l.currentForm,success:function(e){var t,n,i,r=!0===e||"true"===e;l.settings.messages[o.name][s]=u.originalMessage,r?(i=l.formSubmitted,l.resetInternals(),l.toHide=l.errorsFor(o),l.formSubmitted=i,l.successList.push(o),l.invalid[o.name]=!1,l.showErrors()):(t={},n=e||l.defaultMessage(o,{method:s,parameters:a}),t[o.name]=u.message=n,l.invalid[o.name]=!0,l.showErrors(t)),u.valid=r,l.stopRequest(o,r)}},e)),"pending")}}});var r,a={};return c.ajaxPrefilter?c.ajaxPrefilter(function(e,t,n){var i=e.port;"abort"===e.mode&&(a[i]&&a[i].abort(),a[i]=n)}):(r=c.ajax,c.ajax=function(e){var t=("mode"in e?e:c.ajaxSettings).mode,n=("port"in e?e:c.ajaxSettings).port;return"abort"===t?(a[n]&&a[n].abort(),a[n]=r.apply(this,arguments),a[n]):r.apply(this,arguments)}),c}),function(e){"function"==typeof define&&define.amd?define("jquery.validate.unobtrusive",["jquery-validation"],e):"object"==typeof module&&module.exports?module.exports=e(require("jquery-validation")):jQuery.validator.unobtrusive=e(jQuery)}(function(l){var e,o=l.validator,s="unobtrusiveValidation";function u(e,t,n){e.rules[t]=n,e.message&&(e.messages[t]=e.message)}function c(e){return e.replace(/([!"#$%&'()*+,./:;<=>?@\[\\\]^`{|}~])/g,"\\$1")}function d(e){return e.substr(0,e.lastIndexOf(".")+1)}function h(e,t){return 0===e.indexOf("*.")&&(e=e.replace("*.",t)),e}function f(e){var t=l(this),n="__jquery_unobtrusive_validation_form_reset";if(!t.data(n)){t.data(n,!0);try{t.data("validator").resetForm()}finally{t.removeData(n)}t.find(".validation-summary-errors").addClass("validation-summary-valid").removeClass("validation-summary-errors"),t.find(".field-validation-error").addClass("field-validation-valid").removeClass("field-validation-error").removeData("unobtrusiveContainer").find(">*").removeData("unobtrusiveContainer")}}function p(i){function e(e,t){var n=a[e];n&&l.isFunction(n)&&n.apply(i,t)}var t=l(i),n=t.data(s),r=l.proxy(f,i),a=o.unobtrusive.options||{};return n||(n={options:{errorClass:a.errorClass||"input-validation-error",errorElement:a.errorElement||"span",errorPlacement:function(){(function(e,t){var n=l(this).find("[data-valmsg-for='"+c(t[0].name)+"']"),i=n.attr("data-valmsg-replace"),r=i?!1!==l.parseJSON(i):null;n.removeClass("field-validation-valid").addClass("field-validation-error"),e.data("unobtrusiveContainer",n),r?(n.empty(),e.removeClass("input-validation-error").appendTo(n)):e.hide()}).apply(i,arguments),e("errorPlacement",arguments)},invalidHandler:function(){(function(e,t){var n=l(this).find("[data-valmsg-summary=true]"),i=n.find("ul");i&&i.length&&t.errorList.length&&(i.empty(),n.addClass("validation-summary-errors").removeClass("validation-summary-valid"),l.each(t.errorList,function(){l("
  • ").html(this.message).appendTo(i)}))}).apply(i,arguments),e("invalidHandler",arguments)},messages:{},rules:{},success:function(){(function(e){var t=e.data("unobtrusiveContainer");if(t){var n=t.attr("data-valmsg-replace"),i=n?l.parseJSON(n):null;t.addClass("field-validation-valid").removeClass("field-validation-error"),e.removeData("unobtrusiveContainer"),i&&t.empty()}}).apply(i,arguments),e("success",arguments)}},attachValidation:function(){t.off("reset."+s,r).on("reset."+s,r).validate(this.options)},validate:function(){return t.validate(),t.valid()}},t.data(s,n)),n}return o.unobtrusive={adapters:[],parseElement:function(i,e){var t,r,a,o=l(i),s=o.parents("form")[0];s&&((t=p(s)).options.rules[i.name]=r={},t.options.messages[i.name]=a={},l.each(this.adapters,function(){var e="data-val-"+this.name,t=o.attr(e),n={};void 0!==t&&(e+="-",l.each(this.params,function(){n[this]=o.attr(e+this)}),this.adapt({element:i,form:s,message:t,params:n,rules:r,messages:a}))}),l.extend(r,{__dummy__:!0}),e||t.attachValidation())},parse:function(e){var t=l(e),n=t.parents().addBack().filter("form").add(t.find("form")).has("[data-val=true]");t.find("[data-val=true]").each(function(){o.unobtrusive.parseElement(this,!0)}),n.each(function(){var e=p(this);e&&e.attachValidation()})}},(e=o.unobtrusive.adapters).add=function(e,t,n){return n||(n=t,t=[]),this.push({name:e,params:t,adapt:n}),this},e.addBool=function(t,n){return this.add(t,function(e){u(e,n||t,!0)})},e.addMinMax=function(e,i,r,a,t,n){return this.add(e,[t||"min",n||"max"],function(e){var t=e.params.min,n=e.params.max;t&&n?u(e,a,[t,n]):t?u(e,i,t):n&&u(e,r,n)})},e.addSingleVal=function(t,n,i){return this.add(t,[n||"val"],function(e){u(e,i||t,e.params[n])})},o.addMethod("__dummy__",function(e,t,n){return!0}),o.addMethod("regex",function(e,t,n){var i;return!!this.optional(t)||(i=new RegExp(n).exec(e))&&0===i.index&&i[0].length===e.length}),o.addMethod("nonalphamin",function(e,t,n){var i;return n&&(i=(i=e.match(/\W/g))&&i.length>=n),i}),o.methods.extension?(e.addSingleVal("accept","mimtype"),e.addSingleVal("extension","extension")):e.addSingleVal("extension","extension","accept"),e.addSingleVal("regex","pattern"),e.addBool("creditcard").addBool("date").addBool("digits").addBool("email").addBool("number").addBool("url"),e.addMinMax("length","minlength","maxlength","rangelength").addMinMax("range","min","max","range"),e.addMinMax("minlength","minlength").addMinMax("maxlength","minlength","maxlength"),e.add("equalto",["other"],function(e){var t=d(e.element.name),n=h(e.params.other,t);u(e,"equalTo",l(e.form).find(":input").filter("[name='"+c(n)+"']")[0])}),e.add("required",function(e){"INPUT"===e.element.tagName.toUpperCase()&&"CHECKBOX"===e.element.type.toUpperCase()||u(e,"required",!0)}),e.add("remote",["url","type","additionalfields"],function(i){var r={url:i.params.url,type:i.params.type||"GET",data:{}},a=d(i.element.name);l.each(function(e){return e.replace(/^\s+|\s+$/g,"").split(/\s*,\s*/g)}(i.params.additionalfields||i.element.name),function(e,t){var n=h(t,a);r.data[n]=function(){var e=l(i.form).find(":input").filter("[name='"+c(n)+"']");return e.is(":checkbox")?e.filter(":checked").val()||e.filter(":hidden").val()||"":e.is(":radio")?e.filter(":checked").val()||"":e.val()}}),u(i,"remote",r)}),e.add("password",["min","nonalphamin","regex"],function(e){e.params.min&&u(e,"minlength",e.params.min),e.params.nonalphamin&&u(e,"nonalphamin",e.params.nonalphamin),e.params.regex&&u(e,"regex",e.params.regex)}),e.add("fileextensions",["extensions"],function(e){u(e,"extension",e.params.extensions)}),l(function(){o.unobtrusive.parse(document)}),o.unobtrusive}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Popper=t()}(this,function(){"use strict";var n="undefined"!=typeof window&&"undefined"!=typeof document&&"undefined"!=typeof navigator,i=function(){for(var e=["Edge","Trident","Firefox"],t=0;t=i.clientWidth&&n>=i.clientHeight}),d=0l[e]&&!i.escapeWithReference&&(n=Math.min(c[t],l[e]-("right"===e?c.width:c.height))),D({},t,n)}};return u.forEach(function(e){var t=-1!==["left","top"].indexOf(e)?"primary":"secondary";c=k({},c,d[t](e))}),e.offsets.popper=c,e},priority:["left","right","top","bottom"],padding:5,boundariesElement:"scrollParent"},keepTogether:{order:400,enabled:!0,fn:function(e){var t=e.offsets,n=t.popper,i=t.reference,r=e.placement.split("-")[0],a=Math.floor,o=-1!==["top","bottom"].indexOf(r),s=o?"right":"bottom",l=o?"left":"top",u=o?"width":"height";return n[s]a(i[s])&&(e.offsets.popper[l]=a(i[s])),e}},arrow:{order:500,enabled:!0,fn:function(e,t){var n;if(!U(e.instance.modifiers,"arrow","keepTogether"))return e;var i=t.element;if("string"==typeof i){if(!(i=e.instance.popper.querySelector(i)))return e}else if(!e.instance.popper.contains(i))return console.warn("WARNING: `arrow.element` must be child of its popper element!"),e;var r=e.placement.split("-")[0],a=e.offsets,o=a.popper,s=a.reference,l=-1!==["left","right"].indexOf(r),u=l?"height":"width",c=l?"Top":"Left",d=c.toLowerCase(),h=l?"left":"top",f=l?"bottom":"right",p=M(i)[u];s[f]-po[f]&&(e.offsets.popper[d]+=s[d]+p-o[f]),e.offsets.popper=C(e.offsets.popper);var m=s[d]+s[u]/2-p/2,g=_(e.instance.popper),v=parseFloat(g["margin"+c]),y=parseFloat(g["border"+c+"Width"]),b=m-e.offsets.popper[d]-v-y;return b=Math.max(Math.min(o[u]-p,b),0),e.arrowElement=i,e.offsets.arrow=(D(n={},d,Math.round(b)),D(n,h,""),n),e},element:"[x-arrow]"},flip:{order:600,enabled:!0,fn:function(m,g){if(I(m.instance.modifiers,"inner"))return m;if(m.flipped&&m.placement===m.originalPlacement)return m;var v=f(m.instance.popper,m.instance.reference,g.padding,g.boundariesElement,m.positionFixed),y=m.placement.split("-")[0],b=N(y),_=m.placement.split("-")[1]||"",w=[];switch(g.behavior){case $:w=[y,b];break;case z:w=B(y);break;case G:w=B(y,!0);break;default:w=g.behavior}return w.forEach(function(e,t){if(y!==e||w.length===t+1)return m;y=m.placement.split("-")[0],b=N(y);var n=m.offsets.popper,i=m.offsets.reference,r=Math.floor,a="left"===y&&r(n.right)>r(i.left)||"right"===y&&r(n.left)r(i.top)||"bottom"===y&&r(n.top)r(v.right),l=r(n.top)r(v.bottom),c="left"===y&&o||"right"===y&&s||"top"===y&&l||"bottom"===y&&u,d=-1!==["top","bottom"].indexOf(y),h=!!g.flipVariations&&(d&&"start"===_&&o||d&&"end"===_&&s||!d&&"start"===_&&l||!d&&"end"===_&&u),f=!!g.flipVariationsByContent&&(d&&"start"===_&&s||d&&"end"===_&&o||!d&&"start"===_&&u||!d&&"end"===_&&l),p=h||f;(a||c||p)&&(m.flipped=!0,(a||c)&&(y=w[t+1]),p&&(_=function(e){return"end"===e?"start":"start"===e?"end":e}(_)),m.placement=y+(_?"-"+_:""),m.offsets.popper=k({},m.offsets.popper,O(m.instance.popper,m.offsets.reference,m.placement)),m=j(m.instance.modifiers,m,"flip"))}),m},behavior:"flip",padding:5,boundariesElement:"viewport",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(e){var t=e.placement,n=t.split("-")[0],i=e.offsets,r=i.popper,a=i.reference,o=-1!==["left","right"].indexOf(n),s=-1===["top","left"].indexOf(n);return r[o?"left":"top"]=a[n]-(s?r[o?"width":"height"]:0),e.placement=N(t),e.offsets.popper=C(r),e}},hide:{order:800,enabled:!0,fn:function(e){if(!U(e.instance.modifiers,"hide","preventOverflow"))return e;var t=e.offsets.reference,n=A(e.instance.modifiers,function(e){return"preventOverflow"===e.name}).boundaries;if(t.bottomn.right||t.top>n.bottom||t.rightthis._items.length-1||e<0))if(this._isSliding)p(this._element).one(M,function(){return t.to(e)});else{if(n===e)return this.pause(),void this.cycle();var i=ndocument.documentElement.clientHeight;!this._isBodyOverflowing&&e&&(this._element.style.paddingLeft=this._scrollbarWidth+"px"),this._isBodyOverflowing&&!e&&(this._element.style.paddingRight=this._scrollbarWidth+"px")},e._resetAdjustments=function(){this._element.style.paddingLeft="",this._element.style.paddingRight=""},e._checkScrollbar=function(){var e=document.body.getBoundingClientRect();this._isBodyOverflowing=Math.round(e.left+e.right)
    ',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:0,container:!1,fallbackPlacement:"flip",boundary:"scrollParent",sanitize:!0,sanitizeFn:null,whiteList:Ne,popperConfig:null},qe="show",Be={HIDE:"hide"+Le,HIDDEN:"hidden"+Le,SHOW:"show"+Le,SHOWN:"shown"+Le,INSERTED:"inserted"+Le,CLICK:"click"+Le,FOCUSIN:"focusin"+Le,FOCUSOUT:"focusout"+Le,MOUSEENTER:"mouseenter"+Le,MOUSELEAVE:"mouseleave"+Le},$e="fade",ze="show",Ge="hover",Qe="focus",Je=function(){function i(e,t){if(void 0===d)throw new TypeError("Bootstrap's tooltips require Popper.js (https://popper.js.org/)");this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this.element=e,this.config=this._getConfig(t),this.tip=null,this._setListeners()}var e=i.prototype;return e.enable=function(){this._isEnabled=!0},e.disable=function(){this._isEnabled=!1},e.toggleEnabled=function(){this._isEnabled=!this._isEnabled},e.toggle=function(e){if(this._isEnabled)if(e){var t=this.constructor.DATA_KEY,n=p(e.currentTarget).data(t);n||(n=new this.constructor(e.currentTarget,this._getDelegateConfig()),p(e.currentTarget).data(t,n)),n._activeTrigger.click=!n._activeTrigger.click,n._isWithActiveTrigger()?n._enter(null,n):n._leave(null,n)}else{if(p(this.getTipElement()).hasClass(ze))return void this._leave(null,this);this._enter(null,this)}},e.dispose=function(){clearTimeout(this._timeout),p.removeData(this.element,this.constructor.DATA_KEY),p(this.element).off(this.constructor.EVENT_KEY),p(this.element).closest(".modal").off("hide.bs.modal",this._hideModalHandler),this.tip&&p(this.tip).remove(),this._isEnabled=null,this._timeout=null,this._hoverState=null,this._activeTrigger=null,this._popper&&this._popper.destroy(),this._popper=null,this.element=null,this.config=null,this.tip=null},e.show=function(){var t=this;if("none"===p(this.element).css("display"))throw new Error("Please use show on visible elements");var e=p.Event(this.constructor.Event.SHOW);if(this.isWithContent()&&this._isEnabled){p(this.element).trigger(e);var n=m.findShadowRoot(this.element),i=p.contains(null!==n?n:this.element.ownerDocument.documentElement,this.element);if(e.isDefaultPrevented()||!i)return;var r=this.getTipElement(),a=m.getUID(this.constructor.NAME);r.setAttribute("id",a),this.element.setAttribute("aria-describedby",a),this.setContent(),this.config.animation&&p(r).addClass($e);var o="function"==typeof this.config.placement?this.config.placement.call(this,r,this.element):this.config.placement,s=this._getAttachment(o);this.addAttachmentClass(s);var l=this._getContainer();p(r).data(this.constructor.DATA_KEY,this),p.contains(this.element.ownerDocument.documentElement,this.tip)||p(r).appendTo(l),p(this.element).trigger(this.constructor.Event.INSERTED),this._popper=new d(this.element,r,this._getPopperConfig(s)),p(r).addClass(ze),"ontouchstart"in document.documentElement&&p(document.body).children().on("mouseover",null,p.noop);var u=function(){t.config.animation&&t._fixTransition();var e=t._hoverState;t._hoverState=null,p(t.element).trigger(t.constructor.Event.SHOWN),"out"===e&&t._leave(null,t)};if(p(this.tip).hasClass($e)){var c=m.getTransitionDurationFromElement(this.tip);p(this.tip).one(m.TRANSITION_END,u).emulateTransitionEnd(c)}else u()}},e.hide=function(e){function t(){n._hoverState!==qe&&i.parentNode&&i.parentNode.removeChild(i),n._cleanTipClass(),n.element.removeAttribute("aria-describedby"),p(n.element).trigger(n.constructor.Event.HIDDEN),null!==n._popper&&n._popper.destroy(),e&&e()}var n=this,i=this.getTipElement(),r=p.Event(this.constructor.Event.HIDE);if(p(this.element).trigger(r),!r.isDefaultPrevented()){if(p(i).removeClass(ze),"ontouchstart"in document.documentElement&&p(document.body).children().off("mouseover",null,p.noop),this._activeTrigger.click=!1,this._activeTrigger[Qe]=!1,this._activeTrigger[Ge]=!1,p(this.tip).hasClass($e)){var a=m.getTransitionDurationFromElement(i);p(i).one(m.TRANSITION_END,t).emulateTransitionEnd(a)}else t();this._hoverState=""}},e.update=function(){null!==this._popper&&this._popper.scheduleUpdate()},e.isWithContent=function(){return Boolean(this.getTitle())},e.addAttachmentClass=function(e){p(this.getTipElement()).addClass(Re+"-"+e)},e.getTipElement=function(){return this.tip=this.tip||p(this.config.template)[0],this.tip},e.setContent=function(){var e=this.getTipElement();this.setElementContent(p(e.querySelectorAll(".tooltip-inner")),this.getTitle()),p(e).removeClass($e+" "+ze)},e.setElementContent=function(e,t){"object"!=typeof t||!t.nodeType&&!t.jquery?this.config.html?(this.config.sanitize&&(t=je(t,this.config.whiteList,this.config.sanitizeFn)),e.html(t)):e.text(t):this.config.html?p(t).parent().is(e)||e.empty().append(t):e.text(p(t).text())},e.getTitle=function(){var e=this.element.getAttribute("data-original-title");return e=e||("function"==typeof this.config.title?this.config.title.call(this.element):this.config.title)},e._getPopperConfig=function(e){var t=this;return l(l({},{placement:e,modifiers:{offset:this._getOffset(),flip:{behavior:this.config.fallbackPlacement},arrow:{element:".arrow"},preventOverflow:{boundariesElement:this.config.boundary}},onCreate:function(e){e.originalPlacement!==e.placement&&t._handlePopperPlacementChange(e)},onUpdate:function(e){return t._handlePopperPlacementChange(e)}}),this.config.popperConfig)},e._getOffset=function(){var t=this,e={};return"function"==typeof this.config.offset?e.fn=function(e){return e.offsets=l(l({},e.offsets),t.config.offset(e.offsets,t.element)||{}),e}:e.offset=this.config.offset,e},e._getContainer=function(){return!1===this.config.container?document.body:m.isElement(this.config.container)?p(this.config.container):p(document).find(this.config.container)},e._getAttachment=function(e){return Ue[e.toUpperCase()]},e._setListeners=function(){var i=this;this.config.trigger.split(" ").forEach(function(e){if("click"===e)p(i.element).on(i.constructor.Event.CLICK,i.config.selector,function(e){return i.toggle(e)});else if("manual"!==e){var t=e===Ge?i.constructor.Event.MOUSEENTER:i.constructor.Event.FOCUSIN,n=e===Ge?i.constructor.Event.MOUSELEAVE:i.constructor.Event.FOCUSOUT;p(i.element).on(t,i.config.selector,function(e){return i._enter(e)}).on(n,i.config.selector,function(e){return i._leave(e)})}}),this._hideModalHandler=function(){i.element&&i.hide()},p(this.element).closest(".modal").on("hide.bs.modal",this._hideModalHandler),this.config.selector?this.config=l(l({},this.config),{},{trigger:"manual",selector:""}):this._fixTitle()},e._fixTitle=function(){var e=typeof this.element.getAttribute("data-original-title");!this.element.getAttribute("title")&&"string"==e||(this.element.setAttribute("data-original-title",this.element.getAttribute("title")||""),this.element.setAttribute("title",""))},e._enter=function(e,t){var n=this.constructor.DATA_KEY;(t=t||p(e.currentTarget).data(n))||(t=new this.constructor(e.currentTarget,this._getDelegateConfig()),p(e.currentTarget).data(n,t)),e&&(t._activeTrigger["focusin"===e.type?Qe:Ge]=!0),p(t.getTipElement()).hasClass(ze)||t._hoverState===qe?t._hoverState=qe:(clearTimeout(t._timeout),t._hoverState=qe,t.config.delay&&t.config.delay.show?t._timeout=setTimeout(function(){t._hoverState===qe&&t.show()},t.config.delay.show):t.show())},e._leave=function(e,t){var n=this.constructor.DATA_KEY;(t=t||p(e.currentTarget).data(n))||(t=new this.constructor(e.currentTarget,this._getDelegateConfig()),p(e.currentTarget).data(n,t)),e&&(t._activeTrigger["focusout"===e.type?Qe:Ge]=!1),t._isWithActiveTrigger()||(clearTimeout(t._timeout),t._hoverState="out",t.config.delay&&t.config.delay.hide?t._timeout=setTimeout(function(){"out"===t._hoverState&&t.hide()},t.config.delay.hide):t.hide())},e._isWithActiveTrigger=function(){for(var e in this._activeTrigger)if(this._activeTrigger[e])return!0;return!1},e._getConfig=function(e){var t=p(this.element).data();return Object.keys(t).forEach(function(e){-1!==Ye.indexOf(e)&&delete t[e]}),"number"==typeof(e=l(l(l({},this.constructor.Default),t),"object"==typeof e&&e?e:{})).delay&&(e.delay={show:e.delay,hide:e.delay}),"number"==typeof e.title&&(e.title=e.title.toString()),"number"==typeof e.content&&(e.content=e.content.toString()),m.typeCheckConfig(Ie,e,this.constructor.DefaultType),e.sanitize&&(e.template=je(e.template,e.whiteList,e.sanitizeFn)),e},e._getDelegateConfig=function(){var e={};if(this.config)for(var t in this.config)this.constructor.Default[t]!==this.config[t]&&(e[t]=this.config[t]);return e},e._cleanTipClass=function(){var e=p(this.getTipElement()),t=e.attr("class").match(He);null!==t&&t.length&&e.removeClass(t.join(""))},e._handlePopperPlacementChange=function(e){this.tip=e.instance.popper,this._cleanTipClass(),this.addAttachmentClass(this._getAttachment(e.placement))},e._fixTransition=function(){var e=this.getTipElement(),t=this.config.animation;null===e.getAttribute("x-placement")&&(p(e).removeClass($e),this.config.animation=!1,this.hide(),this.show(),this.config.animation=t)},i._jQueryInterface=function(n){return this.each(function(){var e=p(this).data(Pe),t="object"==typeof n&&n;if((e||!/dispose|hide/.test(n))&&(e||(e=new i(this,t),p(this).data(Pe,e)),"string"==typeof n)){if(void 0===e[n])throw new TypeError('No method named "'+n+'"');e[n]()}})},o(i,null,[{key:"VERSION",get:function(){return"4.5.0"}},{key:"Default",get:function(){return We}},{key:"NAME",get:function(){return Ie}},{key:"DATA_KEY",get:function(){return Pe}},{key:"Event",get:function(){return Be}},{key:"EVENT_KEY",get:function(){return Le}},{key:"DefaultType",get:function(){return Ve}}]),i}();p.fn[Ie]=Je._jQueryInterface,p.fn[Ie].Constructor=Je,p.fn[Ie].noConflict=function(){return p.fn[Ie]=Fe,Je._jQueryInterface};var Ze="popover",Xe="bs.popover",Ke="."+Xe,et=p.fn[Ze],tt="bs-popover",nt=new RegExp("(^|\\s)"+tt+"\\S+","g"),it=l(l({},Je.Default),{},{placement:"right",trigger:"click",content:"",template:''}),rt=l(l({},Je.DefaultType),{},{content:"(string|element|function)"}),at={HIDE:"hide"+Ke,HIDDEN:"hidden"+Ke,SHOW:"show"+Ke,SHOWN:"shown"+Ke,INSERTED:"inserted"+Ke,CLICK:"click"+Ke,FOCUSIN:"focusin"+Ke,FOCUSOUT:"focusout"+Ke,MOUSEENTER:"mouseenter"+Ke,MOUSELEAVE:"mouseleave"+Ke},ot=function(e){function i(){return e.apply(this,arguments)||this}!function(e,t){e.prototype=Object.create(t.prototype),(e.prototype.constructor=e).__proto__=t}(i,e);var t=i.prototype;return t.isWithContent=function(){return this.getTitle()||this._getContent()},t.addAttachmentClass=function(e){p(this.getTipElement()).addClass(tt+"-"+e)},t.getTipElement=function(){return this.tip=this.tip||p(this.config.template)[0],this.tip},t.setContent=function(){var e=p(this.getTipElement());this.setElementContent(e.find(".popover-header"),this.getTitle());var t=this._getContent();"function"==typeof t&&(t=t.call(this.element)),this.setElementContent(e.find(".popover-body"),t),e.removeClass("fade show")},t._getContent=function(){return this.element.getAttribute("data-content")||this.config.content},t._cleanTipClass=function(){var e=p(this.getTipElement()),t=e.attr("class").match(nt);null!==t&&0=this._offsets[r]&&(void 0===this._offsets[r+1]||e li > .active",kt=function(){function i(e){this._element=e}var e=i.prototype;return e.show=function(){var n=this;if(!(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&p(this._element).hasClass(wt)||p(this._element).hasClass("disabled"))){var e,i,t=p(this._element).closest(".nav, .list-group")[0],r=m.getSelectorFromElement(this._element);if(t){var a="UL"===t.nodeName||"OL"===t.nodeName?Dt:xt;i=(i=p.makeArray(p(t).find(a)))[i.length-1]}var o=p.Event("hide.bs.tab",{relatedTarget:this._element}),s=p.Event("show.bs.tab",{relatedTarget:i});if(i&&p(i).trigger(o),p(this._element).trigger(s),!s.isDefaultPrevented()&&!o.isDefaultPrevented()){r&&(e=document.querySelector(r)),this._activate(this._element,t);var l=function(){var e=p.Event("hidden.bs.tab",{relatedTarget:n._element}),t=p.Event("shown.bs.tab",{relatedTarget:i});p(i).trigger(e),p(n._element).trigger(t)};e?this._activate(e,e.parentNode,l):l()}}},e.dispose=function(){p.removeData(this._element,bt),this._element=null},e._activate=function(e,t,n){function i(){return r._transitionComplete(e,a,n)}var r=this,a=(!t||"UL"!==t.nodeName&&"OL"!==t.nodeName?p(t).children(xt):p(t).find(Dt))[0],o=n&&a&&p(a).hasClass("fade");if(a&&o){var s=m.getTransitionDurationFromElement(a);p(a).removeClass("show").one(m.TRANSITION_END,i).emulateTransitionEnd(s)}else i()},e._transitionComplete=function(e,t,n){if(t){p(t).removeClass(wt);var i=p(t.parentNode).find("> .dropdown-menu .active")[0];i&&p(i).removeClass(wt),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!1)}if(p(e).addClass(wt),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!0),m.reflow(e),e.classList.contains("fade")&&e.classList.add("show"),e.parentNode&&p(e.parentNode).hasClass("dropdown-menu")){var r=p(e).closest(".dropdown")[0];if(r){var a=[].slice.call(r.querySelectorAll(".dropdown-toggle"));p(a).addClass(wt)}e.setAttribute("aria-expanded",!0)}n&&n()},i._jQueryInterface=function(n){return this.each(function(){var e=p(this),t=e.data(bt);if(t||(t=new i(this),e.data(bt,t)),"string"==typeof n){if(void 0===t[n])throw new TypeError('No method named "'+n+'"');t[n]()}})},o(i,null,[{key:"VERSION",get:function(){return"4.5.0"}}]),i}();p(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',function(e){e.preventDefault(),kt._jQueryInterface.call(p(this),"show")}),p.fn.tab=kt._jQueryInterface,p.fn.tab.Constructor=kt,p.fn.tab.noConflict=function(){return p.fn.tab=_t,kt._jQueryInterface};var Ct="toast",Tt="bs.toast",St="."+Tt,Et=p.fn[Ct],Mt="click.dismiss"+St,Nt="show",Ot="showing",At={animation:"boolean",autohide:"boolean",delay:"number"},jt={animation:!0,autohide:!0,delay:500},It=function(){function i(e,t){this._element=e,this._config=this._getConfig(t),this._timeout=null,this._setListeners()}var e=i.prototype;return e.show=function(){var e=this,t=p.Event("show.bs.toast");if(p(this._element).trigger(t),!t.isDefaultPrevented()){this._config.animation&&this._element.classList.add("fade");var n=function(){e._element.classList.remove(Ot),e._element.classList.add(Nt),p(e._element).trigger("shown.bs.toast"),e._config.autohide&&(e._timeout=setTimeout(function(){e.hide()},e._config.delay))};if(this._element.classList.remove("hide"),m.reflow(this._element),this._element.classList.add(Ot),this._config.animation){var i=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,n).emulateTransitionEnd(i)}else n()}},e.hide=function(){if(this._element.classList.contains(Nt)){var e=p.Event("hide.bs.toast");p(this._element).trigger(e),e.isDefaultPrevented()||this._close()}},e.dispose=function(){clearTimeout(this._timeout),this._timeout=null,this._element.classList.contains(Nt)&&this._element.classList.remove(Nt),p(this._element).off(Mt),p.removeData(this._element,Tt),this._element=null,this._config=null},e._getConfig=function(e){return e=l(l(l({},jt),p(this._element).data()),"object"==typeof e&&e?e:{}),m.typeCheckConfig(Ct,e,this.constructor.DefaultType),e},e._setListeners=function(){var e=this;p(this._element).on(Mt,'[data-dismiss="toast"]',function(){return e.hide()})},e._close=function(){function e(){t._element.classList.add("hide"),p(t._element).trigger("hidden.bs.toast")}var t=this;if(this._element.classList.remove(Nt),this._config.animation){var n=m.getTransitionDurationFromElement(this._element);p(this._element).one(m.TRANSITION_END,e).emulateTransitionEnd(n)}else e()},i._jQueryInterface=function(n){return this.each(function(){var e=p(this),t=e.data(Tt);if(t||(t=new i(this,"object"==typeof n&&n),e.data(Tt,t)),"string"==typeof n){if(void 0===t[n])throw new TypeError('No method named "'+n+'"');t[n](this)}})},o(i,null,[{key:"VERSION",get:function(){return"4.5.0"}},{key:"DefaultType",get:function(){return At}},{key:"Default",get:function(){return jt}}]),i}();p.fn[Ct]=It._jQueryInterface,p.fn[Ct].Constructor=It,p.fn[Ct].noConflict=function(){return p.fn[Ct]=Et,It._jQueryInterface},e.Alert=c,e.Button=_,e.Carousel=j,e.Collapse=q,e.Dropdown=le,e.Modal=Ee,e.Popover=ot,e.Scrollspy=yt,e.Tab=kt,e.Toast=It,e.Tooltip=Je,e.Util=m,Object.defineProperty(e,"__esModule",{value:!0})}),function(r){if(r.document){var e,c,t,n,i,a=r.document;a.querySelectorAll||(a.querySelectorAll=function(e){var t,n=a.createElement("style"),i=[];for(a.documentElement.firstChild.appendChild(n),a._qsa=[],n.styleSheet.cssText=e+"{x-qsa:expression(document._qsa && document._qsa.push(this))}",r.scrollBy(0,0),n.parentNode.removeChild(n);a._qsa.length;)(t=a._qsa.shift()).style.removeAttribute("x-qsa"),i.push(t);return a._qsa=null,i}),a.querySelector||(a.querySelector=function(e){var t=a.querySelectorAll(e);return t.length?t[0]:null}),a.getElementsByClassName||(a.getElementsByClassName=function(e){return e=String(e).replace(/^|\s+/g,"."),a.querySelectorAll(e)}),Object.keys||(Object.keys=function(e){if(e!==Object(e))throw TypeError("Object.keys called on non-object");var t,n=[];for(t in e)Object.prototype.hasOwnProperty.call(e,t)&&n.push(t);return n}),Array.prototype.forEach||(Array.prototype.forEach=function(e){if(null==this)throw TypeError();var t=Object(this),n=t.length>>>0;if("function"!=typeof e)throw TypeError();var i,r=arguments[1];for(i=0;i>16&255)),n.push(String.fromCharCode(i>>8&255)),n.push(String.fromCharCode(255&i)),i=r=0),t+=1;return 12===r?(i>>=4,n.push(String.fromCharCode(255&i))):18===r&&(i>>=2,n.push(String.fromCharCode(i>>8&255)),n.push(String.fromCharCode(255&i))),n.join("")},e.btoa=e.btoa||function(e){e=String(e);var t,n,i,r,a,o,s,l=0,u=[];if(/[^\x00-\xFF]/.test(e))throw Error("InvalidCharacterError");for(;l>2,a=(3&t)<<4|(n=e.charCodeAt(l++))>>4,o=(15&n)<<2|(i=e.charCodeAt(l++))>>6,s=63&i,l===e.length+2?s=o=64:l===e.length+1&&(s=64),u.push(c.charAt(r),c.charAt(a),c.charAt(o),c.charAt(s));return u.join("")},Object.prototype.hasOwnProperty||(Object.prototype.hasOwnProperty=function(e){var t=this.__proto__||this.constructor.prototype;return e in this&&(!(e in t)||t[e]!==this[e])}),function(){if("performance"in r==!1&&(r.performance={}),Date.now=Date.now||function(){return(new Date).getTime()},"now"in r.performance==!1){var e=Date.now();performance.timing&&performance.timing.navigationStart&&(e=performance.timing.navigationStart),r.performance.now=function(){return Date.now()-e}}}(),r.requestAnimationFrame||(r.webkitRequestAnimationFrame&&r.webkitCancelAnimationFrame?((i=r).requestAnimationFrame=function(e){return webkitRequestAnimationFrame(function(){e(i.performance.now())})},i.cancelAnimationFrame=i.webkitCancelAnimationFrame):r.mozRequestAnimationFrame&&r.mozCancelAnimationFrame?((n=r).requestAnimationFrame=function(e){return mozRequestAnimationFrame(function(){e(n.performance.now())})},n.cancelAnimationFrame=n.mozCancelAnimationFrame):((t=r).requestAnimationFrame=function(e){return t.setTimeout(e,1e3/60)},t.cancelAnimationFrame=t.clearTimeout))}}(this),function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Holder=t():e.Holder=t()}(this,function(){return r={},n.m=i=[function(e,t,n){e.exports=n(1)},function(s,e,O){(function(u){var e=O(2),h=O(3),C=O(6),g=O(7),v=O(8),y=O(9),T=O(10),t=O(11),c=O(12),d=O(15),m=g.extend,b=g.dimensionCheck,_=t.svg_ns,i={version:t.version,addTheme:function(e,t){return null!=e&&null!=t&&(S.settings.themes[e]=t),delete S.vars.cache.themeKeys,this},addImage:function(i,e){return y.getNodeArray(e).forEach(function(e){var t=y.newEl("img"),n={};n[S.setup.dataAttr]=i,y.setAttr(t,n),e.appendChild(t)}),this},setResizeUpdate:function(e,t){e.holderData&&(e.holderData.resizeUpdate=!!t,e.holderData.resizeUpdate&&x(e))},run:function(e){e=e||{};var c={},d=m(S.settings,e);S.vars.preempted=!0,S.vars.dataAttr=d.dataAttr||S.setup.dataAttr,c.renderer=d.renderer?d.renderer:S.setup.renderer,-1===S.setup.renderers.join(",").indexOf(c.renderer)&&(c.renderer=S.setup.supportsSVG?"svg":S.setup.supportsCanvas?"canvas":"html");var t=y.getNodeArray(d.images),n=y.getNodeArray(d.bgnodes),i=y.getNodeArray(d.stylenodes),r=y.getNodeArray(d.objects);return c.stylesheets=[],c.svgXMLStylesheet=!0,c.noFontFallback=!!d.noFontFallback,c.noBackgroundSize=!!d.noBackgroundSize,i.forEach(function(e){if(e.attributes.rel&&e.attributes.href&&"stylesheet"==e.attributes.rel.value){var t=e.attributes.href.value,n=y.newEl("a");n.href=t;var i=n.protocol+"//"+n.host+n.pathname+n.search;c.stylesheets.push(i)}}),n.forEach(function(e){if(u.getComputedStyle){var t=u.getComputedStyle(e,null).getPropertyValue("background-image"),n=e.getAttribute("data-background-src")||t,i=null,r=d.domain+"/",a=n.indexOf(r);if(0===a)i=n;else if(1===a&&"?"===n[0])i=n.slice(1);else{var o=n.substr(a).match(/([^\"]*)"?\)/);if(null!==o)i=o[1];else if(0===n.indexOf("url("))throw"Holder: unable to parse background URL: "+n}if(i){var s=l(i,d);s&&p({mode:"background",el:e,flags:s,engineSettings:c})}}}),r.forEach(function(e){var t={};try{t.data=e.getAttribute("data"),t.dataSrc=e.getAttribute(S.vars.dataAttr)}catch(e){}var n=null!=t.data&&0===t.data.indexOf(d.domain),i=null!=t.dataSrc&&0===t.dataSrc.indexOf(d.domain);n?f(d,c,t.data,e):i&&f(d,c,t.dataSrc,e)}),t.forEach(function(e){var t={};try{t.src=e.getAttribute("src"),t.dataSrc=e.getAttribute(S.vars.dataAttr),t.rendered=e.getAttribute("data-holder-rendered")}catch(e){}var n,i,r,a,o,s=null!=t.src,l=null!=t.dataSrc&&0===t.dataSrc.indexOf(d.domain),u=null!=t.rendered&&"true"==t.rendered;s?0===t.src.indexOf(d.domain)?f(d,c,t.src,e):l&&(u?f(d,c,t.dataSrc,e):(n=t.src,i=d,r=c,a=t.dataSrc,o=e,g.imageExists(n,function(e){e||f(i,r,a,o)}))):l&&f(d,c,t.dataSrc,e)}),this}},S={settings:{domain:"holder.js",images:"img",objects:"object",bgnodes:"body .holderjs",stylenodes:"head link.holderjs",themes:{gray:{bg:"#EEEEEE",fg:"#AAAAAA"},social:{bg:"#3a5a97",fg:"#FFFFFF"},industrial:{bg:"#434A52",fg:"#C2F200"},sky:{bg:"#0D8FDB",fg:"#FFFFFF"},vine:{bg:"#39DBAC",fg:"#1E292C"},lava:{bg:"#F8591A",fg:"#1C2846"}}},defaults:{size:10,units:"pt",scale:1/16}};function f(e,t,n,i){var r=l(n.substr(n.lastIndexOf(e.domain)),e);r&&p({mode:null,el:i,flags:r,engineSettings:t})}function l(e,t){var n={theme:m(S.settings.themes.gray,null),stylesheets:t.stylesheets,instanceOptions:t},i=e.indexOf("?"),r=[e];-1!==i&&(r=[e.slice(0,i),e.slice(i+1)]);var a=r[0].split("/");n.holderURL=e;var o=a[1],s=o.match(/([\d]+p?)x([\d]+p?)/);if(!s)return!1;if(n.fluid=-1!==o.indexOf("p"),n.dimensions={width:s[1].replace("p","%"),height:s[2].replace("p","%")},2===r.length){var l=h.parse(r[1]);if(g.truthy(l.ratio)){n.fluid=!0;var u=parseFloat(n.dimensions.width.replace("%","")),c=parseFloat(n.dimensions.height.replace("%",""));c=Math.floor(c/u*100),u=100,n.dimensions.width=u+"%",n.dimensions.height=c+"%"}if(n.auto=g.truthy(l.auto),l.bg&&(n.theme.bg=g.parseColor(l.bg)),l.fg&&(n.theme.fg=g.parseColor(l.fg)),l.bg&&!l.fg&&(n.autoFg=!0),l.theme&&n.instanceOptions.themes.hasOwnProperty(l.theme)&&(n.theme=m(n.instanceOptions.themes[l.theme],null)),l.text&&(n.text=l.text),l.textmode&&(n.textmode=l.textmode),l.size&&parseFloat(l.size)&&(n.size=parseFloat(l.size)),l.font&&(n.font=l.font),l.align&&(n.align=l.align),l.lineWrap&&(n.lineWrap=l.lineWrap),n.nowrap=g.truthy(l.nowrap),n.outline=g.truthy(l.outline),g.truthy(l.random)){S.vars.cache.themeKeys=S.vars.cache.themeKeys||Object.keys(n.instanceOptions.themes);var d=S.vars.cache.themeKeys[0|Math.random()*S.vars.cache.themeKeys.length];n.theme=m(n.instanceOptions.themes[d],null)}}return n}function p(e){var t=e.mode,n=e.el,i=e.flags,r=e.engineSettings,a=i.dimensions,o=i.theme,s=a.width+"x"+a.height;t=null==t?i.fluid?"fluid":"image":t;if(null!=i.text&&(o.text=i.text,"object"===n.nodeName.toLowerCase())){for(var l=o.text.split("\\n"),u=0;u=r||!0==k)&&(v(f,g,b,f.properties.leading),f.add(g),b=0,_+=f.properties.leading,w+=1,(g=new o.Group("line"+w)).y=_),!0!=k&&(m.moveTo(b,0),b+=p.spaceWidth+D.width,g.add(m))}if(v(f,g,b,f.properties.leading),f.add(g),"left"===e.align)f.moveTo(e.width-i,null,null);else if("right"===e.align){for(y in f.children)(g=f.children[y]).moveTo(e.width-g.width,null,null);f.moveTo(0-(e.width-i),null,null)}else{for(y in f.children)(g=f.children[y]).moveTo((f.width-g.width)/2,null,null);f.moveTo((e.width-f.width)/2,null,null)}f.moveTo(null,(e.height-f.height)/2,null),(e.height-f.height)/2<0&&f.moveTo(null,0,null)}else m=new o.Text(e.text),(g=new o.Group("line0")).add(m),f.add(g),"left"===e.align?f.moveTo(e.width-i,null,null):"right"===e.align?f.moveTo(0-(e.width-i),null,null):f.moveTo((e.width-p.boundingBox.width)/2,null,null),f.moveTo(null,(e.height-p.boundingBox.height)/2,null);return a}(o);function l(){var e=null;switch(a.renderer){case"canvas":e=d(s,t);break;case"svg":e=c(s,t);break;default:throw"Holder: invalid renderer: "+a.renderer}return e}if(null==(e=l()))throw"Holder: couldn't render placeholder";"background"==n?(i.style.backgroundImage="url("+e+")",a.noBackgroundSize||(i.style.backgroundSize=o.width+"px "+o.height+"px")):("img"===i.nodeName.toLowerCase()?y.setAttr(i,{src:e}):"object"===i.nodeName.toLowerCase()&&y.setAttr(i,{data:e,type:"image/svg+xml"}),a.reRender&&u.setTimeout(function(){var e=l();if(null==e)throw"Holder: couldn't render placeholder";"img"===i.nodeName.toLowerCase()?y.setAttr(i,{src:e}):"object"===i.nodeName.toLowerCase()&&y.setAttr(i,{data:e,type:"image/svg+xml"})},150)),y.setAttr(i,{"data-holder-rendered":!0})}function x(e){for(var t,n=0,i=(t=null==e||null==e.nodeType?S.vars.resizableImages:[e]).length;n","application/xml")},t.getNodeArray=function(e){var t=null;return"string"==typeof e?t=document.querySelectorAll(e):n.NodeList&&e instanceof n.NodeList?t=e:n.Node&&e instanceof n.Node?t=[e]:n.HTMLCollection&&e instanceof n.HTMLCollection?t=e:e instanceof Array?t=e:null===e&&(t=[]),t=Array.prototype.slice.call(t)}}).call(t,function(){return this}())},function(e,t){function o(e,t){"string"==typeof e&&("#"===(this.original=e).charAt(0)&&(e=e.slice(1)),/[^a-f0-9]+/i.test(e)||(3===e.length&&(e=e.replace(/./g,"$&$&")),6===e.length&&(this.alpha=1,t&&t.alpha&&(this.alpha=t.alpha),this.set(parseInt(e,16)))))}o.rgb2hex=function(e,t,n){return[e,t,n].map(function(e){var t=(0|e).toString(16);return e<16&&(t="0"+t),t}).join("")},o.hsl2rgb=function(e,t,n){var i=e/60,r=(1-Math.abs(2*n-1))*t,a=r*(1-Math.abs(parseInt(i)%2-1)),o=n-r/2,s=0,l=0,u=0;return 0<=i&&i<1?(s=r,l=a):1<=i&&i<2?(s=a,l=r):2<=i&&i<3?(l=r,u=a):3<=i&&i<4?(l=a,u=r):4<=i&&i<5?(s=a,u=r):5<=i&&i<6&&(s=r,u=a),s+=o,l+=o,u+=o,[s=parseInt(255*s),l=parseInt(255*l),u=parseInt(255*u)]},o.prototype.set=function(e){this.raw=e;var t=(16711680&this.raw)>>16,n=(65280&this.raw)>>8,i=255&this.raw,r=.2126*t+.7152*n+.0722*i,a=-.09991*t-.33609*n+.436*i,o=.615*t-.55861*n-.05639*i;return this.rgb={r:t,g:n,b:i},this.yuv={y:r,u:a,v:o},this},o.prototype.lighten=function(e){var t=255*(Math.min(1,Math.max(0,Math.abs(e)))*(e<0?-1:1))|0,n=Math.min(255,Math.max(0,this.rgb.r+t)),i=Math.min(255,Math.max(0,this.rgb.g+t)),r=Math.min(255,Math.max(0,this.rgb.b+t)),a=o.rgb2hex(n,i,r);return new o(a)},o.prototype.toHex=function(e){return(e?"#":"")+this.raw.toString(16)},o.prototype.lighterThan=function(e){return e instanceof o||(e=new o(e)),this.yuv.y>e.yuv.y},o.prototype.blendAlpha=function(e){e instanceof o||(e=new o(e));var t=e,n=t.alpha*t.rgb.r+(1-t.alpha)*this.rgb.r,i=t.alpha*t.rgb.g+(1-t.alpha)*this.rgb.g,r=t.alpha*t.rgb.b+(1-t.alpha)*this.rgb.b;return new o(o.rgb2hex(n,i,r))},e.exports=o},function(e,t){e.exports={version:"2.9.6",svg_ns:"http://www.w3.org/2000/svg"}},function(e,t,n){var y=n(13),b=n(8),i=n(11),_=n(7),w=i.svg_ns,x=function(e){var t=e.tag,n=e.content||"";return delete e.tag,delete e.content,[t,n,e]};e.exports=function(e,t){var n=t.engineSettings.stylesheets.map(function(e){return''}).join("\n"),i="holder_"+Number(new Date).toString(16),r=e.root,o=r.children.holderTextGroup,a="#"+i+" text { "+function(e){return _.cssProps({fill:e.fill,"font-weight":e.font.weight,"font-family":e.font.family+", monospace","font-size":e.font.size+e.font.units})}(o.properties)+" } ";o.y+=.8*o.textPositionData.boundingBox.height;var s=[];Object.keys(o.children).forEach(function(e){var a=o.children[e];Object.keys(a.children).forEach(function(e){var t=a.children[e],n=o.x+a.x+t.x,i=o.y+a.y+t.y,r=x({tag:"text",content:t.properties.text,x:n,y:i});s.push(r)})});var l=x({tag:"g",content:s}),u=null;if(r.children.holderBg.properties.outline){var c=r.children.holderBg.properties.outline;u=x({tag:"path",d:function(e,t,n){var i=n/2;return["M",i,i,"H",e-i,"V",t-i,"H",i,"V",0,"M",0,i,"L",e,t-i,"M",0,t-i,"L",e,i].join(" ")}(r.children.holderBg.width,r.children.holderBg.height,c.width),"stroke-width":c.width,stroke:c.fill,fill:"none"})}var d=function(e,t){return x({tag:t,width:e.width,height:e.height,fill:e.properties.fill})}(r.children.holderBg,"rect"),h=[];h.push(d),c&&h.push(u),h.push(l);var f=x({tag:"g",id:i,content:h}),p=x({tag:"style",content:a,type:"text/css"}),m=x({tag:"defs",content:p}),g=x({tag:"svg",content:[m,f],width:r.properties.width,height:r.properties.height,xmlns:w,viewBox:[0,0,r.properties.width,r.properties.height].join(" "),preserveAspectRatio:"none"}),v=y(g);return/\&(x)?#[0-9A-Fa-f]/.test(v[0])&&(v[0]=v[0].replace(/&#/gm,"&#")),v=n+v[0],b.svgStringToDataURI(v,"background"===t.mode)}},function(e,t,n){n(14);e.exports=function e(t,n,i){"use strict";var r,a,o,s,l,u,c,d,h,f,p,m,g=1,v=!0;function y(e,t){if(null!==t&&!1!==t&&void 0!==t)return"string"!=typeof t&&"object"!=typeof t?String(t):t}if(i=i||{},"string"==typeof t[0])t[0]=(l=t[0],u=l.match(/^[\w-]+/),c={tag:u?u[0]:"div",attr:{},children:[]},d=l.match(/#([\w-]+)/),h=l.match(/\$([\w-]+)/),f=l.match(/\.[\w-]+/g),d&&(c.attr.id=d[1],i[d[1]]=c),h&&(i[h[1]]=c),f&&(c.attr.class=f.join(" ").replace(/\./g,"")),l.match(/&$/g)&&(v=!1),c);else{if(!Array.isArray(t[0]))throw new Error("First element of array must be a string, or an array and not "+JSON.stringify(t[0]));g=0}for(;g/g,">"))),t[0].children.push(t[g]);else if("number"==typeof t[g])t[0].children.push(t[g]);else if(Array.isArray(t[g])){if(Array.isArray(t[g][0])){if(t[g].reverse().forEach(function(e){t.splice(g+1,0,e)}),0!==g)continue;g++}e(t[g],n,i),t[g][0]&&t[0].children.push(t[g][0])}else if("function"==typeof t[g])o=t[g];else{if("object"!=typeof t[g])throw new TypeError('"'+t[g]+'" is not allowed as a value.');for(a in t[g])t[g].hasOwnProperty(a)&&null!==t[g][a]&&!1!==t[g][a]&&("style"===a&&"object"==typeof t[g][a]?t[0].attr[a]=JSON.stringify(t[g][a],y).slice(2,-2).replace(/","/g,";").replace(/":"/g,":").replace(/\\"/g,"'"):t[0].attr[a]=t[g][a])}}if(!1!==t[0]){for(s in r="<"+t[0].tag,t[0].attr)t[0].attr.hasOwnProperty(s)&&(r+=" "+s+'="'+((m=t[0].attr[s])||0===m?String(m).replace(/&/g,"&").replace(/"/g,"""):"")+'"');r+=">",t[0].children.forEach(function(e){r+=e}),r+="",t[0]=r}return i[0]=t[0],o&&o(t[0]),i}},function(e,t){"use strict";var s=/["'&<>]/;e.exports=function(e){var t,n=""+e,i=s.exec(n);if(!i)return n;var r="",a=0,o=0;for(a=i.index;ae.length)&&e.substring(0,t.length)===t},vd:function(e,t){if(e===t)return!0;if(11===e.nodeType)return!1;if(t.contains)return t.contains(1!==e.nodeType?e.parentNode:e);if(t.compareDocumentPosition)return 16==(16&t.compareDocumentPosition(e));for(;e&&e!=t;)e=e.parentNode;return!!e},Sb:function(e){return E.a.vd(e,e.ownerDocument.documentElement)},kd:function(e){return!!E.a.Lb(e,E.a.Sb)},R:function(e){return e&&e.tagName&&e.tagName.toLowerCase()},Ac:function(e){return E.onError?function(){try{return e.apply(this,arguments)}catch(e){throw E.onError&&E.onError(e),e}}:e},setTimeout:function(e,t){return setTimeout(E.a.Ac(e),t)},Gc:function(e){setTimeout(function(){throw E.onError&&E.onError(e),e},0)},B:function(t,e,n){var i=E.a.Ac(n);if(n=u[e],E.options.useOnlyNativeEvents||n||!Wra)if(n||"function"!=typeof t.addEventListener){if(void 0===t.attachEvent)throw Error("Browser doesn't support addEventListener or attachEvent");function r(e){i.call(t,e)}var a="on"+e;t.attachEvent(a,r),E.a.K.za(t,function(){t.detachEvent(a,r)})}else t.addEventListener(e,i,!1);else l=l||("function"==typeof Wra(t).on?"on":"bind"),Wra(t)[l](e,i)},Fb:function(e,t){if(!e||!e.nodeType)throw Error("element must be a DOM node when calling triggerEvent");var n;if(n=!("input"!==E.a.R(e)||!e.type||"click"!=t.toLowerCase()||"checkbox"!=(n=e.type)&&"radio"!=n),E.options.useOnlyNativeEvents||!Wra||n)if("function"==typeof Ura.createEvent){if("function"!=typeof e.dispatchEvent)throw Error("The supplied element doesn't support dispatchEvent");(n=Ura.createEvent(s[t]||"HTMLEvents")).initEvent(t,!0,!0,Tra,0,0,0,0,0,!1,!1,!1,!1,0,e),e.dispatchEvent(n)}else if(n&&e.click)e.click();else{if(void 0===e.fireEvent)throw Error("Browser doesn't support triggering events");e.fireEvent("on"+t)}else Wra(e).trigger(t)},f:function(e){return E.O(e)?e():e},bc:function(e){return E.O(e)?e.v():e},Eb:function(t,e,n){var i;e&&("object"==typeof t.classList?(i=t.classList[n?"add":"remove"],E.a.D(e.match(h),function(e){i.call(t.classList,e)})):"string"==typeof t.className.baseVal?r(t.className,"baseVal",e,n):r(t,"className",e,n))},Bb:function(e,t){var n=E.a.f(t);null!==n&&n!==Sra||(n="");var i=E.h.firstChild(e);!i||3!=i.nodeType||E.h.nextSibling(i)?E.h.va(e,[e.ownerDocument.createTextNode(n)]):i.data=n,E.a.Ad(e)},Yc:function(e,t){if(e.name=t,c<=7)try{var n=e.name.replace(/[&<>'"]/g,function(e){return"&#"+e.charCodeAt(0)+";"});e.mergeAttributes(Ura.createElement(""),!1)}catch(e){}},Ad:function(e){9<=c&&(e=1==e.nodeType?e:e.parentNode).style&&(e.style.zoom=e.style.zoom)},wd:function(e){if(c){var t=e.style.width;e.style.width=0,e.style.width=t}},Pd:function(e,t){e=E.a.f(e),t=E.a.f(t);for(var n=[],i=e;i<=t;i++)n.push(i);return n},la:function(e){for(var t=[],n=0,i=e.length;n","
  • "],tbody:t,tfoot:t,tr:[2,"","
    "],td:c=[3,"","
    "],th:c,option:d=[1,""],optgroup:d},f=E.a.W<=8,E.a.ua=function(e,t){var n;if(Wra){if(Wra.parseHTML)n=Wra.parseHTML(e,t)||[];else if((n=Wra.clean([e],t))&&n[0]){for(var i=n[0];i.parentNode&&11!==i.parentNode.nodeType;)i=i.parentNode;i.parentNode&&i.parentNode.removeChild(i)}}else{(n=t)||(n=Ura),i=n.parentWindow||n.defaultView||Tra;var r,a=E.a.Db(e).toLowerCase(),o=n.createElement("div");for(a=(r=(a=a.match(/^(?:\x3c!--.*?--\x3e\s*?)*?<([a-z]+)[\s>]/))&&h[a[1]]||l)[0],r="ignored
    "+r[1]+e+r[2]+"
    ","function"==typeof i.innerShiv?o.appendChild(i.innerShiv(r)):(f&&n.body.appendChild(o),o.innerHTML=r,f&&o.parentNode.removeChild(o));a--;)o=o.lastChild;n=E.a.la(o.lastChild.childNodes)}return n},E.a.Md=function(e,t){var n=E.a.ua(e,t);return n.length&&n[0].parentElement||E.a.Yb(n)},E.a.fc=function(e,t){if(E.a.Tb(e),null!==(t=E.a.f(t))&&t!==Sra)if("string"!=typeof t&&(t=t.toString()),Wra)Wra(e).html(t);else for(var n=E.a.ua(t,e.ownerDocument),i=0;i]*))?)*\s+)data-bind\s*=\s*(["'])([\s\S]*?)\3/gi,he=/\x3c!--\s*ko\b\s*([\s\S]*?)\s*--\x3e/g,{xd:function(e,t,n){t.isTemplateRewritten(e,n)||t.rewriteTemplate(e,function(e){return E.kc.Ld(e,t)},n)},Ld:function(e,a){return e.replace(de,function(e,t,n,i,r){return ge(r,t,n,a)}).replace(he,function(e,t){return ge(t,"\x3c!-- ko --\x3e","#comment",a)})},md:function(i,r){return E.aa.Xb(function(e,t){var n=e.nextSibling;n&&n.nodeName.toLowerCase()===r&&E.ib(n,i,t)})}}),E.b("__tr_ambtns",E.kc.md),function(){E.C={},E.C.F=function(e){if(this.F=e){var t=E.a.R(e);this.ab="script"===t?1:"textarea"===t?2:"template"==t&&e.content&&11===e.content.nodeType?3:4}},E.C.F.prototype.text=function(){var e=1===this.ab?"text":2===this.ab?"value":"innerHTML";if(0==arguments.length)return this.F[e];var t=arguments[0];"innerHTML"==e?E.a.fc(this.F,t):this.F[e]=t};var t=E.a.g.Z()+"_";E.C.F.prototype.data=function(e){if(1===arguments.length)return E.a.g.get(this.F,t+e);E.a.g.set(this.F,t+e,arguments[1])};var r=E.a.g.Z();E.C.F.prototype.nodes=function(){var e=this.F;if(0==arguments.length){var t=E.a.g.get(e,r)||{},n=t.lb||(3===this.ab?e.content:4===this.ab?e:Sra);if(!n||t.jd){var i=this.text();i&&i!==t.bb&&(n=E.a.Md(i,e.ownerDocument),E.a.g.set(e,r,{lb:n,bb:i,jd:!0}))}return n}t=arguments[0],this.ab!==Sra&&this.text(""),E.a.g.set(e,r,{lb:t})},E.C.ia=function(e){this.F=e},E.C.ia.prototype=new E.C.F,E.C.ia.prototype.constructor=E.C.ia,E.C.ia.prototype.text=function(){if(0==arguments.length){var e=E.a.g.get(this.F,r)||{};return e.bb===Sra&&e.lb&&(e.bb=e.lb.innerHTML),e.bb}E.a.g.set(this.F,r,{bb:arguments[0]})},E.b("templateSources",E.C),E.b("templateSources.domElement",E.C.F),E.b("templateSources.anonymousTemplate",E.C.ia)}(),function(){function i(e,t,n){var i;for(t=E.h.nextSibling(t);e&&(i=e)!==t;)n(i,e=E.h.nextSibling(i))}function h(e,t){if(e.length){var r=e[0],a=e[e.length-1],n=r.parentNode,o=E.ga.instance,s=o.preprocessNode;if(s){if(i(r,a,function(e,t){var n=e.previousSibling,i=s.call(o,e);i&&(e===r&&(r=i[0]||t),e===a&&(a=i[i.length-1]||n))}),e.length=0,!r)return;r===a?e.push(r):(e.push(r,a),E.a.Ua(e,n))}i(r,a,function(e){1!==e.nodeType&&8!==e.nodeType||E.vc(t,e)}),i(r,a,function(e){1!==e.nodeType&&8!==e.nodeType||E.aa.cd(e,[t])}),E.a.Ua(e,n)}}function l(e){return e.nodeType?e:0"+t+"<\/script>")},0").attr("id",e.containerId).addClass(e.positionClass)).appendTo(g(e.target)),w}(e)),w}function i(e,t,n){var i=!(!n||!n.force)&&n.force;return!(!e||!i&&0!==g(":focus",e).length||(e[t.hideMethod]({duration:t.hideDuration,easing:t.hideEasing,complete:function(){_(e)}}),0))}function y(e){t&&t(e)}function r(t){var r=b(),e=t.iconClass||r.iconClass;if(void 0!==t.optionsOverride&&(r=g.extend(r,t.optionsOverride),e=t.optionsOverride.iconClass||e),!function(e,t){if(e.preventDuplicates){if(t.message===x)return!0;x=t.message}return!1}(r,t)){D++,w=v(r,!0);var a=null,o=g("
    "),n=g("
    "),i=g("
    "),s=g("
    "),l=g(r.closeHtml),u={intervalId:null,hideEta:null,maxHideTime:null},c={toastId:D,state:"visible",startTime:new Date,options:r,map:t};return t.iconClass&&o.addClass(r.toastClass).addClass(e),function(){if(t.title){var e=t.title;r.escapeHtml&&(e=d(t.title)),n.append(e).addClass(r.titleClass),o.append(n)}}(),function(){if(t.message){var e=t.message;r.escapeHtml&&(e=d(t.message)),i.append(e).addClass(r.messageClass),o.append(i)}}(),r.closeButton&&(l.addClass(r.closeClass).attr("role","button"),o.prepend(l)),r.progressBar&&(s.addClass(r.progressClass),o.prepend(s)),r.rtl&&o.addClass("rtl"),r.newestOnTop?w.prepend(o):w.append(o),function(){var e="";switch(t.iconClass){case"toast-success":case"toast-info":e="polite";break;default:e="assertive"}o.attr("aria-live",e)}(),o.hide(),o[r.showMethod]({duration:r.showDuration,easing:r.showEasing,complete:r.onShown}),0/g,">")}function h(e){var t=e&&!1!==r.closeMethod?r.closeMethod:r.hideMethod,n=e&&!1!==r.closeDuration?r.closeDuration:r.hideDuration,i=e&&!1!==r.closeEasing?r.closeEasing:r.hideEasing;if(!g(":focus",o).length||e)return clearTimeout(u.intervalId),o[t]({duration:n,easing:i,complete:function(){_(o),clearTimeout(a),r.onHidden&&"hidden"!==c.state&&r.onHidden(),c.state="hidden",c.endTime=new Date,y(c)}})}function f(){(0×',closeClass:"toast-close-button",newestOnTop:!0,preventDuplicates:!1,progressBar:!1,progressClass:"toast-progress",rtl:!1},e.options)}function _(e){w=w||v(),e.is(":visible")||(e.remove(),e=null,0===w.children().length&&(w.remove(),x=void 0))}var w,t,x,D,a,o,s,l,e}),function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.moment=t()}(this,function(){"use strict";var e,r;function b(){return e.apply(null,arguments)}function c(e){return e instanceof Array||"[object Array]"===Object.prototype.toString.call(e)}function d(e){return null!=e&&"[object Object]"===Object.prototype.toString.call(e)}function _(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function s(e){if(Object.getOwnPropertyNames)return 0===Object.getOwnPropertyNames(e).length;var t;for(t in e)if(_(e,t))return;return 1}function h(e){return void 0===e}function f(e){return"number"==typeof e||"[object Number]"===Object.prototype.toString.call(e)}function p(e){return e instanceof Date||"[object Date]"===Object.prototype.toString.call(e)}function m(e,t){for(var n=[],i=0;i>>0,i=0;iLe(e)?(a=e+1,o-Le(e)):(a=e,o);return{year:a,dayOfYear:s}}function Ve(e,t,n){var i,r,a=He(e.year(),t,n),o=Math.floor((e.dayOfYear()-a-1)/7)+1;return o<1?i=o+Ue(r=e.year()-1,t,n):o>Ue(e.year(),t,n)?(i=o-Ue(e.year(),t,n),r=e.year()+1):(r=e.year(),i=o),{week:i,year:r}}function Ue(e,t,n){var i=He(e,t,n),r=He(e+1,t,n);return(Le(e)-i+r)/7}function We(e,t){return e.slice(t,7).concat(e.slice(0,t))}I("w",["ww",2],"wo","week"),I("W",["WW",2],"Wo","isoWeek"),R("week","w"),R("isoWeek","W"),U("week",5),U("isoWeek",5),he("w",te),he("ww",te,Z),he("W",te),he("WW",te,Z),ge(["w","ww","W","WW"],function(e,t,n,i){t[i.substr(0,1)]=B(e)}),I("d",0,"do","day"),I("dd",0,0,function(e){return this.localeData().weekdaysMin(this,e)}),I("ddd",0,0,function(e){return this.localeData().weekdaysShort(this,e)}),I("dddd",0,0,function(e){return this.localeData().weekdays(this,e)}),I("e",0,0,"weekday"),I("E",0,0,"isoWeekday"),R("day","d"),R("weekday","e"),R("isoWeekday","E"),U("day",11),U("weekday",11),U("isoWeekday",11),he("d",te),he("e",te),he("E",te),he("dd",function(e,t){return t.weekdaysMinRegex(e)}),he("ddd",function(e,t){return t.weekdaysShortRegex(e)}),he("dddd",function(e,t){return t.weekdaysRegex(e)}),ge(["dd","ddd","dddd"],function(e,t,n,i){var r=n._locale.weekdaysParse(e,i,n._strict);null!=r?t.d=r:w(n).invalidWeekday=e}),ge(["d","e","E"],function(e,t,n,i){t[i]=B(e)});var qe="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),Be="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),$e="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),ze=de,Ge=de,Qe=de;function Je(){function e(e,t){return t.length-e.length}for(var t,n,i,r,a=[],o=[],s=[],l=[],u=0;u<7;u++)t=v([2e3,1]).day(u),n=fe(this.weekdaysMin(t,"")),i=fe(this.weekdaysShort(t,"")),r=fe(this.weekdays(t,"")),a.push(n),o.push(i),s.push(r),l.push(n),l.push(i),l.push(r);a.sort(e),o.sort(e),s.sort(e),l.sort(e),this._weekdaysRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+s.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+a.join("|")+")","i")}function Ze(){return this.hours()%12||12}function Xe(e,t){I(e,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),t)})}function Ke(e,t){return t._meridiemParse}I("H",["HH",2],0,"hour"),I("h",["hh",2],0,Ze),I("k",["kk",2],0,function(){return this.hours()||24}),I("hmm",0,0,function(){return""+Ze.apply(this)+M(this.minutes(),2)}),I("hmmss",0,0,function(){return""+Ze.apply(this)+M(this.minutes(),2)+M(this.seconds(),2)}),I("Hmm",0,0,function(){return""+this.hours()+M(this.minutes(),2)}),I("Hmmss",0,0,function(){return""+this.hours()+M(this.minutes(),2)+M(this.seconds(),2)}),Xe("a",!0),Xe("A",!1),R("hour","h"),U("hour",13),he("a",Ke),he("A",Ke),he("H",te),he("h",te),he("k",te),he("HH",te,Z),he("hh",te,Z),he("kk",te,Z),he("hmm",ne),he("hmmss",ie),he("Hmm",ne),he("Hmmss",ie),me(["H","HH"],we),me(["k","kk"],function(e,t,n){var i=B(e);t[we]=24===i?0:i}),me(["a","A"],function(e,t,n){n._isPm=n._locale.isPM(e),n._meridiem=e}),me(["h","hh"],function(e,t,n){t[we]=B(e),w(n).bigHour=!0}),me("hmm",function(e,t,n){var i=e.length-2;t[we]=B(e.substr(0,i)),t[xe]=B(e.substr(i)),w(n).bigHour=!0}),me("hmmss",function(e,t,n){var i=e.length-4,r=e.length-2;t[we]=B(e.substr(0,i)),t[xe]=B(e.substr(i,2)),t[De]=B(e.substr(r)),w(n).bigHour=!0}),me("Hmm",function(e,t,n){var i=e.length-2;t[we]=B(e.substr(0,i)),t[xe]=B(e.substr(i))}),me("Hmmss",function(e,t,n){var i=e.length-4,r=e.length-2;t[we]=B(e.substr(0,i)),t[xe]=B(e.substr(i,2)),t[De]=B(e.substr(r))});var et,tt=$("Hours",!0),nt={calendar:{sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"},longDateFormat:{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"},invalidDate:"Invalid date",ordinal:"%d",dayOfMonthOrdinalParse:/\d{1,2}/,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",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"},months:Ee,monthsShort:Me,week:{dow:0,doy:6},weekdays:qe,weekdaysMin:$e,weekdaysShort:Be,meridiemParse:/[ap]\.?m?\.?/i},it={},rt={};function at(e){return e?e.toLowerCase().replace("_","-"):e}function ot(e){var t=null;if(void 0===it[e]&&"undefined"!=typeof module&&module&&module.exports)try{t=et._abbr,require("./locale/"+e),st(t)}catch(t){it[e]=null}return it[e]}function st(e,t){var n;return e&&((n=h(t)?ut(e):lt(e,t))?et=n:"undefined"!=typeof console&&console.warn&&console.warn("Locale "+e+" not found. Did you forget to load it?")),et._abbr}function lt(e,t){if(null===t)return delete it[e],null;var n,i=nt;if(t.abbr=e,null!=it[e])u("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),i=it[e]._config;else if(null!=t.parentLocale)if(null!=it[t.parentLocale])i=it[t.parentLocale]._config;else{if(null==(n=ot(t.parentLocale)))return rt[t.parentLocale]||(rt[t.parentLocale]=[]),rt[t.parentLocale].push({name:e,config:t}),null;i=n._config}return it[e]=new E(S(i,t)),rt[e]&&rt[e].forEach(function(e){lt(e.name,e.config)}),st(e),it[e]}function ut(e){var t;if(e&&e._locale&&e._locale._abbr&&(e=e._locale._abbr),!e)return et;if(!c(e)){if(t=ot(e))return t;e=[e]}return function(e){for(var t,n,i,r,a=0;a=t&&function(e,t){for(var n=Math.min(e.length,t.length),i=0;i=t-1)break;t--}a++}return et}(e)}function ct(e){var t,n=e._a;return n&&-2===w(e).overflow&&(t=n[be]<0||11Se(n[ye],n[be])?_e:n[we]<0||24Ue(c,f,p)?w(l)._overflowWeeks=!0:null!=g?w(l)._overflowWeekday=!0:(m=Ye(c,d,h,f,p),l._a[ye]=m.year,l._dayOfYear=m.dayOfYear)),null!=e._dayOfYear&&(a=wt(e._a[ye],i[ye]),(e._dayOfYear>Le(a)||0===e._dayOfYear)&&(w(e)._overflowDayOfYear=!0),n=Re(a,0,e._dayOfYear),e._a[be]=n.getUTCMonth(),e._a[_e]=n.getUTCDate()),t=0;t<3&&null==e._a[t];++t)e._a[t]=y[t]=i[t];for(;t<7;t++)e._a[t]=y[t]=null==e._a[t]?2===t?1:0:e._a[t];24===e._a[we]&&0===e._a[xe]&&0===e._a[De]&&0===e._a[ke]&&(e._nextDay=!0,e._a[we]=0),e._d=(e._useUTC?Re:function(e,t,n,i,r,a,o){var s;return e<100&&0<=e?(s=new Date(e+400,t,n,i,r,a,o),isFinite(s.getFullYear())&&s.setFullYear(e)):s=new Date(e,t,n,i,r,a,o),s}).apply(null,y),r=e._useUTC?e._d.getUTCDay():e._d.getDay(),null!=e._tzm&&e._d.setUTCMinutes(e._d.getUTCMinutes()-e._tzm),e._nextDay&&(e._a[we]=24),e._w&&void 0!==e._w.d&&e._w.d!==r&&(w(e).weekdayMismatch=!0)}}function Dt(e){if(e._f!==b.ISO_8601)if(e._f!==b.RFC_2822){e._a=[],w(e).empty=!0;for(var t,n,i,r,a,o,s,l=""+e._i,u=l.length,c=0,d=L(e._f,e._locale).match(N)||[],h=0;hn.valueOf():n.valueOf()"}),pn.toJSON=function(){return this.isValid()?this.toISOString():null},pn.toString=function(){return this.clone().locale("en").format("ddd MMM DD YYYY HH:mm:ss [GMT]ZZ")},pn.unix=function(){return Math.floor(this.valueOf()/1e3)},pn.valueOf=function(){return this._d.valueOf()-6e4*(this._offset||0)},pn.creationData=function(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}},pn.eraName=function(){for(var e,t=this.localeData().eras(),n=0,i=t.length;nthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()},pn.isLocal=function(){return!!this.isValid()&&!this._isUTC},pn.isUtcOffset=function(){return!!this.isValid()&&this._isUTC},pn.isUtc=Ht,pn.isUTC=Ht,pn.zoneAbbr=function(){return this._isUTC?"UTC":""},pn.zoneName=function(){return this._isUTC?"Coordinated Universal Time":""},pn.dates=n("dates accessor is deprecated. Use date instead.",ln),pn.months=n("months accessor is deprecated. Use month instead",Ie),pn.years=n("years accessor is deprecated. Use year instead",Fe),pn.zone=n("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",function(e,t){return null!=e?("string"!=typeof e&&(e=-e),this.utcOffset(e,t),this):-this.utcOffset()}),pn.isDSTShifted=n("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",function(){if(!h(this._isDSTShifted))return this._isDSTShifted;var e,t={};return D(t,this),(t=kt(t))._a?(e=(t._isUTC?v:Tt)(t._a),this._isDSTShifted=this.isValid()&&0 div").hide().filter(".datepicker-"+h[this.currentViewMode].CLASS_NAME).show())},y.prototype._isInDisabledDates=function(e){return!0===this._options.disabledDates[e.format("YYYY-MM-DD")]},y.prototype._isInEnabledDates=function(e){return!0===this._options.enabledDates[e.format("YYYY-MM-DD")]},y.prototype._isInDisabledHours=function(e){return!0===this._options.disabledHours[e.format("H")]},y.prototype._isInEnabledHours=function(e){return!0===this._options.enabledHours[e.format("H")]},y.prototype._isValid=function(e,t){if(!e.isValid())return!1;if(this._options.disabledDates&&"d"===t&&this._isInDisabledDates(e))return!1;if(this._options.enabledDates&&"d"===t&&!this._isInEnabledDates(e))return!1;if(this._options.minDate&&e.isBefore(this._options.minDate,t))return!1;if(this._options.maxDate&&e.isAfter(this._options.maxDate,t))return!1;if(this._options.daysOfWeekDisabled&&"d"===t&&-1!==this._options.daysOfWeekDisabled.indexOf(e.day()))return!1;if(this._options.disabledHours&&("h"===t||"m"===t||"s"===t)&&this._isInDisabledHours(e))return!1;if(this._options.enabledHours&&("h"===t||"m"===t||"s"===t)&&!this._isInEnabledHours(e))return!1;if(this._options.disabledTimeIntervals&&("h"===t||"m"===t||"s"===t)){var n=!1;if(o.each(this._options.disabledTimeIntervals,function(){if(e.isBetween(this[0],this[1]))return!(n=!0)}),n)return!1}return!0},y.prototype._parseInputDate=function(e){return void 0===this._options.parseInputDate?n.isMoment(e)||(e=this.getMoment(e)):e=this._options.parseInputDate(e),e},y.prototype._keydown=function(e){var t=null,n=void 0,i=void 0,r=void 0,a=void 0,o=[],s={},l=e.which;for(n in m[l]="p",m)m.hasOwnProperty(n)&&"p"===m[n]&&(o.push(n),parseInt(n,10)!==l&&(s[n]=!0));for(n in this._options.keyBinds)if(this._options.keyBinds.hasOwnProperty(n)&&"function"==typeof this._options.keyBinds[n]&&(r=n.split(" ")).length===o.length&&f[l]===r[r.length-1]){for(a=!0,i=r.length-2;0<=i;i--)if(!(f[r[i]]in s)){a=!1;break}if(a){t=this._options.keyBinds[n];break}}t&&t.call(this)&&(e.stopPropagation(),e.preventDefault())},y.prototype._keyup=function(e){m[e.which]="r",g[e.which]&&(g[e.which]=!1,e.stopPropagation(),e.preventDefault())},y.prototype._indexGivenDates=function(e){var t={},n=this;return o.each(e,function(){var e=n._parseInputDate(this);e.isValid()&&(t[e.format("YYYY-MM-DD")]=!0)}),!!Object.keys(t).length&&t},y.prototype._indexGivenHours=function(e){var t={};return o.each(e,function(){t[this]=!0}),!!Object.keys(t).length&&t},y.prototype._initFormatting=function(){var e=this._options.format||"L LT",t=this;this.actualFormat=e.replace(/(\[[^\[]*])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,function(e){return t._dates[0].localeData().longDateFormat(e)||e}),this.parseFormats=this._options.extraFormats?this._options.extraFormats.slice():[],this.parseFormats.indexOf(e)<0&&this.parseFormats.indexOf(this.actualFormat)<0&&this.parseFormats.push(this.actualFormat),this.use24Hours=this.actualFormat.toLowerCase().indexOf("a")<1&&this.actualFormat.replace(/\[.*?]/g,"").indexOf("h")<1,this._isEnabled("y")&&(this.MinViewModeNumber=2),this._isEnabled("M")&&(this.MinViewModeNumber=1),this._isEnabled("d")&&(this.MinViewModeNumber=0),this.currentViewMode=Math.max(this.MinViewModeNumber,this.currentViewMode),this.unset||this._setValue(this._dates[0],0)},y.prototype._getLastPickedDate=function(){return this._dates[this._getLastPickedDateIndex()]},y.prototype._getLastPickedDateIndex=function(){return this._dates.length-1},y.prototype.getMoment=function(e){var t=void 0;return t=null==e?n():this._hasTimeZone()?n.tz(e,this.parseFormats,this._options.locale,this._options.useStrict,this._options.timeZone):n(e,this.parseFormats,this._options.locale,this._options.useStrict),this._hasTimeZone()&&t.tz(this._options.timeZone),t},y.prototype.toggle=function(){return this.widget?this.hide():this.show()},y.prototype.ignoreReadonly=function(e){if(0===arguments.length)return this._options.ignoreReadonly;if("boolean"!=typeof e)throw new TypeError("ignoreReadonly () expects a boolean parameter");this._options.ignoreReadonly=e},y.prototype.options=function(e){if(0===arguments.length)return o.extend(!0,{},this._options);if(!(e instanceof Object))throw new TypeError("options() this.options parameter should be an object");o.extend(!0,this._options,e);var n=this;o.each(this._options,function(e,t){void 0!==n[e]&&n[e](t)})},y.prototype.date=function(e,t){if(t=t||0,0===arguments.length)return this.unset?null:this._options.allowMultidate?this._dates.join(this._options.multidateSeparator):this._dates[t].clone();if(!(null===e||"string"==typeof e||n.isMoment(e)||e instanceof Date))throw new TypeError("date() parameter must be one of [null, string, moment or Date]");this._setValue(null===e?null:this._parseInputDate(e),t)},y.prototype.format=function(e){if(0===arguments.length)return this._options.format;if("string"!=typeof e&&("boolean"!=typeof e||!1!==e))throw new TypeError("format() expects a string or boolean:false parameter "+e);this._options.format=e,this.actualFormat&&this._initFormatting()},y.prototype.timeZone=function(e){if(0===arguments.length)return this._options.timeZone;if("string"!=typeof e)throw new TypeError("newZone() expects a string parameter");this._options.timeZone=e},y.prototype.dayViewHeaderFormat=function(e){if(0===arguments.length)return this._options.dayViewHeaderFormat;if("string"!=typeof e)throw new TypeError("dayViewHeaderFormat() expects a string parameter");this._options.dayViewHeaderFormat=e},y.prototype.extraFormats=function(e){if(0===arguments.length)return this._options.extraFormats;if(!1!==e&&!(e instanceof Array))throw new TypeError("extraFormats() expects an array or false parameter");this._options.extraFormats=e,this.parseFormats&&this._initFormatting()},y.prototype.disabledDates=function(e){if(0===arguments.length)return this._options.disabledDates?o.extend({},this._options.disabledDates):this._options.disabledDates;if(!e)return this._options.disabledDates=!1,this._update(),!0;if(!(e instanceof Array))throw new TypeError("disabledDates() expects an array parameter");this._options.disabledDates=this._indexGivenDates(e),this._options.enabledDates=!1,this._update()},y.prototype.enabledDates=function(e){if(0===arguments.length)return this._options.enabledDates?o.extend({},this._options.enabledDates):this._options.enabledDates;if(!e)return this._options.enabledDates=!1,this._update(),!0;if(!(e instanceof Array))throw new TypeError("enabledDates() expects an array parameter");this._options.enabledDates=this._indexGivenDates(e),this._options.disabledDates=!1,this._update()},y.prototype.daysOfWeekDisabled=function(e){if(0===arguments.length)return this._options.daysOfWeekDisabled.splice(0);if("boolean"==typeof e&&!e)return this._options.daysOfWeekDisabled=!1,this._update(),!0;if(!(e instanceof Array))throw new TypeError("daysOfWeekDisabled() expects an array parameter");if(this._options.daysOfWeekDisabled=e.reduce(function(e,t){return 6<(t=parseInt(t,10))||t<0||isNaN(t)||-1===e.indexOf(t)&&e.push(t),e},[]).sort(),this._options.useCurrent&&!this._options.keepInvalid)for(var t=0;t").append(S("
    ").addClass("prev").attr("data-action","previous").append(S("").addClass(this._options.icons.previous))).append(S("").addClass("picker-switch").attr("data-action","pickerSwitch").attr("colspan",this._options.calendarWeeks?"6":"5")).append(S("").addClass("next").attr("data-action","next").append(S("").addClass(this._options.icons.next)))),t=S("
    ").attr("colspan",this._options.calendarWeeks?"8":"7")));return[S("
    ").addClass("datepicker-days").append(S("").addClass("table table-sm").append(e).append(S(""))),S("
    ").addClass("datepicker-months").append(S("
    ").addClass("table-condensed").append(e.clone()).append(t.clone())),S("
    ").addClass("datepicker-years").append(S("
    ").addClass("table-condensed").append(e.clone()).append(t.clone())),S("
    ").addClass("datepicker-decades").append(S("
    ").addClass("table-condensed").append(e.clone()).append(t.clone()))]},E.prototype._getTimePickerMainTemplate=function(){var e=S(""),t=S(""),n=S("");return this._isEnabled("h")&&(e.append(S("
    ").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.incrementHour}).addClass("btn").attr("data-action","incrementHours").append(S("").addClass(this._options.icons.up)))),t.append(S("").append(S("").addClass("timepicker-hour").attr({"data-time-component":"hours",title:this._options.tooltips.pickHour}).attr("data-action","showHours"))),n.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.decrementHour}).addClass("btn").attr("data-action","decrementHours").append(S("").addClass(this._options.icons.down))))),this._isEnabled("m")&&(this._isEnabled("h")&&(e.append(S("").addClass("separator")),t.append(S("").addClass("separator").html(":")),n.append(S("").addClass("separator"))),e.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.incrementMinute}).addClass("btn").attr("data-action","incrementMinutes").append(S("").addClass(this._options.icons.up)))),t.append(S("").append(S("").addClass("timepicker-minute").attr({"data-time-component":"minutes",title:this._options.tooltips.pickMinute}).attr("data-action","showMinutes"))),n.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.decrementMinute}).addClass("btn").attr("data-action","decrementMinutes").append(S("").addClass(this._options.icons.down))))),this._isEnabled("s")&&(this._isEnabled("m")&&(e.append(S("").addClass("separator")),t.append(S("").addClass("separator").html(":")),n.append(S("").addClass("separator"))),e.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.incrementSecond}).addClass("btn").attr("data-action","incrementSeconds").append(S("").addClass(this._options.icons.up)))),t.append(S("").append(S("").addClass("timepicker-second").attr({"data-time-component":"seconds",title:this._options.tooltips.pickSecond}).attr("data-action","showSeconds"))),n.append(S("").append(S("").attr({href:"#",tabindex:"-1",title:this._options.tooltips.decrementSecond}).addClass("btn").attr("data-action","decrementSeconds").append(S("").addClass(this._options.icons.down))))),this.use24Hours||(e.append(S("").addClass("separator")),t.append(S("").append(S("").addClass("separator"))),S("
    ").addClass("timepicker-picker").append(S("").addClass("table-condensed").append([e,t,n]))},E.prototype._getTimePickerTemplate=function(){var e=S("
    ").addClass("timepicker-hours").append(S("
    ").addClass("table-condensed")),t=S("
    ").addClass("timepicker-minutes").append(S("
    ").addClass("table-condensed")),n=S("
    ").addClass("timepicker-seconds").append(S("
    ").addClass("table-condensed")),i=[this._getTimePickerMainTemplate()];return this._isEnabled("h")&&i.push(e),this._isEnabled("m")&&i.push(t),this._isEnabled("s")&&i.push(n),i},E.prototype._getToolbar=function(){var e=[];if(this._options.buttons.showToday&&e.push(S("
    ").append(S("").attr({href:"#",tabindex:"-1","data-action":"today",title:this._options.tooltips.today}).append(S("").addClass(this._options.icons.today)))),!this._options.sideBySide&&this._hasDate()&&this._hasTime()){var t=void 0,n=void 0;n="times"===this._options.viewMode?(t=this._options.tooltips.selectDate,this._options.icons.date):(t=this._options.tooltips.selectTime,this._options.icons.time),e.push(S("").append(S("").attr({href:"#",tabindex:"-1","data-action":"togglePicker",title:t}).append(S("").addClass(n))))}return this._options.buttons.showClear&&e.push(S("").append(S("").attr({href:"#",tabindex:"-1","data-action":"clear",title:this._options.tooltips.clear}).append(S("").addClass(this._options.icons.clear)))),this._options.buttons.showClose&&e.push(S("").append(S("").attr({href:"#",tabindex:"-1","data-action":"close",title:this._options.tooltips.close}).append(S("").addClass(this._options.icons.close)))),0===e.length?"":S("").addClass("table-condensed").append(S("").append(S("").append(e)))},E.prototype._getTemplate=function(){var e=S("
    ").addClass("bootstrap-datetimepicker-widget dropdown-menu"),t=S("
    ").addClass("datepicker").append(this._getDatePickerTemplate()),n=S("
    ").addClass("timepicker").append(this._getTimePickerTemplate()),i=S("
      ").addClass("list-unstyled"),r=S("
    • ").addClass("picker-switch"+(this._options.collapse?" accordion-toggle":"")).append(this._getToolbar());return this._options.inline&&e.removeClass("dropdown-menu"),this.use24Hours&&e.addClass("usetwentyfour"),this._isEnabled("s")&&!this.use24Hours&&e.addClass("wider"),this._options.sideBySide&&this._hasDate()&&this._hasTime()?(e.addClass("timepicker-sbs"),"top"===this._options.toolbarPlacement&&e.append(r),e.append(S("
      ").addClass("row").append(t.addClass("col-md-6")).append(n.addClass("col-md-6"))),"bottom"!==this._options.toolbarPlacement&&"default"!==this._options.toolbarPlacement||e.append(r),e):("top"===this._options.toolbarPlacement&&i.append(r),this._hasDate()&&i.append(S("
    • ").addClass(this._options.collapse&&this._hasTime()?"collapse":"").addClass(this._options.collapse&&this._hasTime()&&"times"===this._options.viewMode?"":"show").append(t)),"default"===this._options.toolbarPlacement&&i.append(r),this._hasTime()&&i.append(S("
    • ").addClass(this._options.collapse&&this._hasDate()?"collapse":"").addClass(this._options.collapse&&this._hasDate()&&"times"===this._options.viewMode?"show":"").append(n)),"bottom"===this._options.toolbarPlacement&&i.append(r),e.append(i))},E.prototype._place=function(e){var t=e&&e.data&&e.data.picker||this,n=t._options.widgetPositioning.vertical,i=t._options.widgetPositioning.horizontal,r=void 0,a=(t.component&&t.component.length?t.component:t._element).position(),o=(t.component&&t.component.length?t.component:t._element).offset();if(t._options.widgetParent)r=t._options.widgetParent.append(t.widget);else if(t._element.is("input"))r=t._element.after(t.widget).parent();else{if(t._options.inline)return void(r=t._element.append(t.widget));r=t._element,t._element.children().first().after(t.widget)}if("auto"===n&&(n=o.top+1.5*t.widget.height()>=S(window).height()+S(window).scrollTop()&&t.widget.height()+t._element.outerHeight()S(window).width()?"right":"left"),"top"===n?t.widget.addClass("top").removeClass("bottom"):t.widget.addClass("bottom").removeClass("top"),"right"===i?t.widget.addClass("float-right"):t.widget.removeClass("float-right"),"relative"!==r.css("position")&&(r=r.parents().filter(function(){return"relative"===S(this).css("position")}).first()),0===r.length)throw new Error("datetimepicker component should be placed within a relative positioned container");t.widget.css({top:"top"===n?"auto":a.top+t._element.outerHeight()+"px",bottom:"top"===n?r.outerHeight()-(r===t._element?0:a.top)+"px":"auto",left:"left"===i?(r===t._element?0:a.left)+"px":"auto",right:"left"===i?"auto":r.outerWidth()-t._element.outerWidth()-(r===t._element?0:a.left)+"px"})},E.prototype._fillDow=function(){var e=S("
    "),t=this._viewDate.clone().startOf("w").startOf("d");for(!0===this._options.calendarWeeks&&e.append(S(""),this._options.calendarWeeks&&r.append('"),n.push(r)),a="",i.isBefore(this._viewDate,"M")&&(a+=" old"),i.isAfter(this._viewDate,"M")&&(a+=" new"),this._options.allowMultidate){var s=this._datesFormatted.indexOf(i.format("YYYY-MM-DD"));-1!==s&&i.isSame(this._datesFormatted[s],"d")&&!this.unset&&(a+=" active")}else i.isSame(this._getLastPickedDate(),"d")&&!this.unset&&(a+=" active");this._isValid(i,"d")||(a+=" disabled"),i.isSame(this.getMoment(),"d")&&(a+=" today"),0!==i.day()&&6!==i.day()||(a+=" weekend"),r.append('"),i.add(1,"d")}e.find("tbody").empty().append(n),this._updateMonths(),this._updateYears(),this._updateDecades()}},E.prototype._fillHours=function(){var e=this.widget.find(".timepicker-hours table"),t=this._viewDate.clone().startOf("d"),n=[],i=S("");for(11"),n.push(i)),i.append('"),t.add(1,"h");e.empty().append(n)},E.prototype._fillMinutes=function(){for(var e=this.widget.find(".timepicker-minutes table"),t=this._viewDate.clone().startOf("h"),n=[],i=1===this._options.stepping?5:this._options.stepping,r=S("");this._viewDate.isSame(t,"h");)t.minute()%(4*i)==0&&(r=S(""),n.push(r)),r.append('"),t.add(i,"m");e.empty().append(n)},E.prototype._fillSeconds=function(){for(var e=this.widget.find(".timepicker-seconds table"),t=this._viewDate.clone().startOf("m"),n=[],i=S("");this._viewDate.isSame(t,"m");)t.second()%20==0&&(i=S(""),n.push(i)),i.append('"),t.add(5,"s");e.empty().append(n)},E.prototype._fillTime=function(){var e=void 0,t=void 0,n=this.widget.find(".timepicker span[data-time-component]");this.use24Hours||(e=this.widget.find(".timepicker [data-action=togglePeriod]"),t=this._getLastPickedDate().clone().add(12<=this._getLastPickedDate().hours()?-12:12,"h"),e.text(this._getLastPickedDate().format("A")),this._isValid(t,"h")?e.removeClass("disabled"):e.addClass("disabled")),n.filter("[data-time-component=hours]").text(this._getLastPickedDate().format(this.use24Hours?"HH":"hh")),n.filter("[data-time-component=minutes]").text(this._getLastPickedDate().format("mm")),n.filter("[data-time-component=seconds]").text(this._getLastPickedDate().format("ss")),this._fillHours(),this._fillMinutes(),this._fillSeconds()},E.prototype._doAction=function(e,t){var n=this._getLastPickedDate();if(S(e.currentTarget).is(".disabled"))return!1;switch(t=t||S(e.currentTarget).data("action")){case"next":var i=T.DatePickerModes[this.currentViewMode].NAV_FUNCTION;this._viewDate.add(T.DatePickerModes[this.currentViewMode].NAV_STEP,i),this._fillDate(),this._viewUpdate(i);break;case"previous":var r=T.DatePickerModes[this.currentViewMode].NAV_FUNCTION;this._viewDate.subtract(T.DatePickerModes[this.currentViewMode].NAV_STEP,r),this._fillDate(),this._viewUpdate(r);break;case"pickerSwitch":this._showMode(1);break;case"selectMonth":var a=S(e.target).closest("tbody").find("span").index(S(e.target));this._viewDate.month(a),this.currentViewMode===this.MinViewModeNumber?(this._setValue(n.clone().year(this._viewDate.year()).month(this._viewDate.month()),this._getLastPickedDateIndex()),this._options.inline||this.hide()):(this._showMode(-1),this._fillDate()),this._viewUpdate("M");break;case"selectYear":var o=parseInt(S(e.target).text(),10)||0;this._viewDate.year(o),this.currentViewMode===this.MinViewModeNumber?(this._setValue(n.clone().year(this._viewDate.year()),this._getLastPickedDateIndex()),this._options.inline||this.hide()):(this._showMode(-1),this._fillDate()),this._viewUpdate("YYYY");break;case"selectDecade":var s=parseInt(S(e.target).data("selection"),10)||0;this._viewDate.year(s),this.currentViewMode===this.MinViewModeNumber?(this._setValue(n.clone().year(this._viewDate.year()),this._getLastPickedDateIndex()),this._options.inline||this.hide()):(this._showMode(-1),this._fillDate()),this._viewUpdate("YYYY");break;case"selectDay":var l=this._viewDate.clone();S(e.target).is(".old")&&l.subtract(1,"M"),S(e.target).is(".new")&&l.add(1,"M");var u=l.date(parseInt(S(e.target).text(),10)),c=0;this._options.allowMultidate?-1!==(c=this._datesFormatted.indexOf(u.format("YYYY-MM-DD")))?this._setValue(null,c):this._setValue(u,this._getLastPickedDateIndex()+1):this._setValue(u,this._getLastPickedDateIndex()),this._hasTime()||this._options.keepOpen||this._options.inline||this._options.allowMultidate||this.hide();break;case"incrementHours":var d=n.clone().add(1,"h");this._isValid(d,"h")&&this._setValue(d,this._getLastPickedDateIndex());break;case"incrementMinutes":var h=n.clone().add(this._options.stepping,"m");this._isValid(h,"m")&&this._setValue(h,this._getLastPickedDateIndex());break;case"incrementSeconds":var f=n.clone().add(1,"s");this._isValid(f,"s")&&this._setValue(f,this._getLastPickedDateIndex());break;case"decrementHours":var p=n.clone().subtract(1,"h");this._isValid(p,"h")&&this._setValue(p,this._getLastPickedDateIndex());break;case"decrementMinutes":var m=n.clone().subtract(this._options.stepping,"m");this._isValid(m,"m")&&this._setValue(m,this._getLastPickedDateIndex());break;case"decrementSeconds":var g=n.clone().subtract(1,"s");this._isValid(g,"s")&&this._setValue(g,this._getLastPickedDateIndex());break;case"togglePeriod":this._setValue(n.clone().add(12<=n.hours()?-12:12,"h"),this._getLastPickedDateIndex());break;case"togglePicker":var v=S(e.target),y=v.closest("a"),b=v.closest("ul"),_=b.find(".show"),w=b.find(".collapse:not(.show)"),x=v.is("span")?v:v.find("span"),D=void 0;if(_&&_.length){if((D=_.data("collapse"))&&D.transitioning)return!0;_.collapse?(_.collapse("hide"),w.collapse("show")):(_.removeClass("show"),w.addClass("show")),x.toggleClass(this._options.icons.time+" "+this._options.icons.date),x.hasClass(this._options.icons.date)?y.attr("title",this._options.tooltips.selectDate):y.attr("title",this._options.tooltips.selectTime)}break;case"showPicker":this.widget.find(".timepicker > div:not(.timepicker-picker)").hide(),this.widget.find(".timepicker .timepicker-picker").show();break;case"showHours":this.widget.find(".timepicker .timepicker-picker").hide(),this.widget.find(".timepicker .timepicker-hours").show();break;case"showMinutes":this.widget.find(".timepicker .timepicker-picker").hide(),this.widget.find(".timepicker .timepicker-minutes").show();break;case"showSeconds":this.widget.find(".timepicker .timepicker-picker").hide(),this.widget.find(".timepicker .timepicker-seconds").show();break;case"selectHour":var k=parseInt(S(e.target).text(),10);this.use24Hours||(12<=n.hours()?12!==k&&(k+=12):12===k&&(k=0)),this._setValue(n.clone().hours(k),this._getLastPickedDateIndex()),this._isEnabled("a")||this._isEnabled("m")||this._options.keepOpen||this._options.inline?this._doAction(e,"showPicker"):this.hide();break;case"selectMinute":this._setValue(n.clone().minutes(parseInt(S(e.target).text(),10)),this._getLastPickedDateIndex()),this._isEnabled("a")||this._isEnabled("s")||this._options.keepOpen||this._options.inline?this._doAction(e,"showPicker"):this.hide();break;case"selectSecond":this._setValue(n.clone().seconds(parseInt(S(e.target).text(),10)),this._getLastPickedDateIndex()),this._isEnabled("a")||this._options.keepOpen||this._options.inline?this._doAction(e,"showPicker"):this.hide();break;case"clear":this.clear();break;case"close":this.hide();break;case"today":var C=this.getMoment();this._isValid(C,"d")&&this._setValue(C,this._getLastPickedDateIndex())}return!1},E.prototype.hide=function(){var t=!1;this.widget&&(this.widget.find(".collapse").each(function(){var e=S(this).data("collapse");return!e||!e.transitioning||!(t=!0)}),t||(this.component&&this.component.hasClass("btn")&&this.component.toggleClass("active"),this.widget.hide(),S(window).off("resize",this._place()),this.widget.off("click","[data-action]"),this.widget.off("mousedown",!1),this.widget.remove(),this.widget=!1,this._notifyEvent({type:T.Event.HIDE,date:this._getLastPickedDate().clone()}),void 0!==this.input&&this.input.blur(),this._viewDate=this._getLastPickedDate().clone()))},E.prototype.show=function(){var e=void 0,t={year:function(e){return e.month(0).date(1).hours(0).seconds(0).minutes(0)},month:function(e){return e.date(1).hours(0).seconds(0).minutes(0)},day:function(e){return e.hours(0).seconds(0).minutes(0)},hour:function(e){return e.seconds(0).minutes(0)},minute:function(e){return e.seconds(0)}};if(void 0!==this.input){if(this.input.prop("disabled")||!this._options.ignoreReadonly&&this.input.prop("readonly")||this.widget)return;void 0!==this.input.val()&&0!==this.input.val().trim().length?this._setValue(this._parseInputDate(this.input.val().trim()),0):this.unset&&this._options.useCurrent&&(e=this.getMoment(),"string"==typeof this._options.useCurrent&&(e=t[this._options.useCurrent](e)),this._setValue(e,0))}else this.unset&&this._options.useCurrent&&(e=this.getMoment(),"string"==typeof this._options.useCurrent&&(e=t[this._options.useCurrent](e)),this._setValue(e,0));this.widget=this._getTemplate(),this._fillDow(),this._fillMonths(),this.widget.find(".timepicker-hours").hide(),this.widget.find(".timepicker-minutes").hide(),this.widget.find(".timepicker-seconds").hide(),this._update(),this._showMode(),S(window).on("resize",{picker:this},this._place),this.widget.on("click","[data-action]",S.proxy(this._doAction,this)),this.widget.on("mousedown",!1),this.component&&this.component.hasClass("btn")&&this.component.toggleClass("active"),this._place(),this.widget.show(),void 0!==this.input&&this._options.focusOnShow&&!this.input.is(":focus")&&this.input.focus(),this._notifyEvent({type:T.Event.SHOW})},E.prototype.destroy=function(){this.hide(),this._element.removeData(T.DATA_KEY),this._element.removeData("date")},E.prototype.disable=function(){this.hide(),this.component&&this.component.hasClass("btn")&&this.component.addClass("disabled"),void 0!==this.input&&this.input.prop("disabled",!0)},E.prototype.enable=function(){this.component&&this.component.hasClass("btn")&&this.component.removeClass("disabled"),void 0!==this.input&&this.input.prop("disabled",!1)},E.prototype.toolbarPlacement=function(e){if(0===arguments.length)return this._options.toolbarPlacement;if("string"!=typeof e)throw new TypeError("toolbarPlacement() expects a string parameter");if(-1===D.indexOf(e))throw new TypeError("toolbarPlacement() parameter must be one of ("+D.join(", ")+") value");this._options.toolbarPlacement=e,this.widget&&(this.hide(),this.show())},E.prototype.widgetPositioning=function(e){if(0===arguments.length)return S.extend({},this._options.widgetPositioning);if("[object Object]"!=={}.toString.call(e))throw new TypeError("widgetPositioning() expects an object variable");if(e.horizontal){if("string"!=typeof e.horizontal)throw new TypeError("widgetPositioning() horizontal variable must be a string");if(e.horizontal=e.horizontal.toLowerCase(),-1===x.indexOf(e.horizontal))throw new TypeError("widgetPositioning() expects horizontal parameter to be one of ("+x.join(", ")+")");this._options.widgetPositioning.horizontal=e.horizontal}if(e.vertical){if("string"!=typeof e.vertical)throw new TypeError("widgetPositioning() vertical variable must be a string");if(e.vertical=e.vertical.toLowerCase(),-1===w.indexOf(e.vertical))throw new TypeError("widgetPositioning() expects vertical parameter to be one of ("+w.join(", ")+")");this._options.widgetPositioning.vertical=e.vertical}this._update()},E.prototype.widgetParent=function(e){if(0===arguments.length)return this._options.widgetParent;if("string"==typeof e&&(e=S(e)),null!==e&&"string"!=typeof e&&!(e instanceof S))throw new TypeError("widgetParent() expects a string or a jQuery object parameter");this._options.widgetParent=e,this.widget&&(this.hide(),this.show())},E._jQueryHandleThis=function(e,t,n){var i=S(e).data(T.DATA_KEY);if("object"===(void 0===t?"undefined":r(t))&&S.extend({},T.Default,t),i||(i=new E(S(e),t),S(e).data(T.DATA_KEY,i)),"string"==typeof t){if(void 0===i[t])throw new Error('No method named "'+t+'"');return void 0===n?i[t]():i[t](n)}},E._jQueryInterface=function(e,t){return 1===this.length?E._jQueryHandleThis(this[0],e,t):this.each(function(){E._jQueryHandleThis(this,e,t)})},k=E,S(document).on(T.Event.CLICK_DATA_API,T.Selector.DATA_TOGGLE,function(){var e=C(S(this));0!==e.length&&k._jQueryInterface.call(e,"toggle")}).on(T.Event.CHANGE,"."+T.ClassName.INPUT,function(e){var t=C(S(this));0!==t.length&&k._jQueryInterface.call(t,"_change",e)}).on(T.Event.BLUR,"."+T.ClassName.INPUT,function(e){var t=C(S(this)),n=t.data(T.DATA_KEY);0!==t.length&&(n._options.debug||window.debug||k._jQueryInterface.call(t,"hide",e))}).on(T.Event.KEYDOWN,"."+T.ClassName.INPUT,function(e){var t=C(S(this));0!==t.length&&k._jQueryInterface.call(t,"_keydown",e)}).on(T.Event.KEYUP,"."+T.ClassName.INPUT,function(e){var t=C(S(this));0!==t.length&&k._jQueryInterface.call(t,"_keyup",e)}).on(T.Event.FOCUS,"."+T.ClassName.INPUT,function(e){var t=C(S(this)),n=t.data(T.DATA_KEY);0!==t.length&&n._options.allowInputToggle&&k._jQueryInterface.call(t,"show",e)}),S.fn[T.NAME]=k._jQueryInterface,S.fn[T.NAME].Constructor=k,S.fn[T.NAME].noConflict=function(){return S.fn[T.NAME]=_,k._jQueryInterface};function C(e){var t=e.data("target"),n=void 0;return t||(t=e.attr("href")||"",t=/^#[a-z]/i.test(t)?t:null),0===(n=S(t)).length||n.data(T.DATA_KEY)||S.extend({},n.data(),S(this).data()),n}function E(e,t){a(this,E);var n=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}(this,b.call(this,e,t));return n._init(),n}}(),function(e){"function"==typeof define&&define.amd?define(["jquery"],e):e("object"==typeof exports?require("jquery"):jQuery)}(function(E,M){function N(){return new Date(Date.UTC.apply(Date,arguments))}function O(){var e=new Date;return N(e.getFullYear(),e.getMonth(),e.getDate())}function a(e,t){return e.getUTCFullYear()===t.getUTCFullYear()&&e.getUTCMonth()===t.getUTCMonth()&&e.getUTCDate()===t.getUTCDate()}function e(e,t){return function(){return t!==M&&E.fn.datepicker.deprecated(t),this[e].apply(this,arguments)}}function w(e,t){E.data(e,"datepicker",this),this._events=[],this._secondaryEvents=[],this._process_options(t),this.dates=new n,this.viewDate=this.o.defaultViewDate,this.focusDate=null,this.element=E(e),this.isInput=this.element.is("input"),this.inputField=this.isInput?this.element:this.element.find("input"),this.component=!!this.element.hasClass("date")&&this.element.find(".add-on, .input-group-addon, .input-group-append, .input-group-prepend, .btn"),this.component&&0===this.component.length&&(this.component=!1),this.isInline=!this.component&&this.element.is("div"),this.picker=E(j.template),this._check_template(this.o.templates.leftArrow)&&this.picker.find(".prev").html(this.o.templates.leftArrow),this._check_template(this.o.templates.rightArrow)&&this.picker.find(".next").html(this.o.templates.rightArrow),this._buildEvents(),this._attachEvents(),this.isInline?this.picker.addClass("datepicker-inline").appendTo(this.element):this.picker.addClass("datepicker-dropdown dropdown-menu"),this.o.rtl&&this.picker.addClass("datepicker-rtl"),this.o.calendarWeeks&&this.picker.find(".datepicker-days .datepicker-switch, thead .datepicker-title, tfoot .today, tfoot .clear").attr("colspan",function(e,t){return Number(t)+1}),this._process_options({startDate:this._o.startDate,endDate:this._o.endDate,daysOfWeekDisabled:this.o.daysOfWeekDisabled,daysOfWeekHighlighted:this.o.daysOfWeekHighlighted,datesDisabled:this.o.datesDisabled}),this._allow_update=!1,this.setViewMode(this.o.startView),this._allow_update=!0,this.fillDow(),this.fillMonths(),this.update(),this.isInline&&this.show()}var t,n=(t={get:function(e){return this.slice(e)[0]},contains:function(e){for(var t=e&&e.valueOf(),n=0,i=this.length;n]/g)||[]).length<=0||0this.o.endDate?this.viewDate=new Date(this.o.endDate):this.viewDate=this.o.defaultViewDate),t?(this.setValue(),this.element.change()):this.dates.length&&String(e)!==String(this.dates)&&t&&(this._trigger("changeDate"),this.element.change()),!this.dates.length&&e.length&&(this._trigger("clearDate"),this.element.change()),this.fill(),this},fillDow:function(){if(this.o.showWeekDays){var e=this.o.weekStart,t="";for(this.o.calendarWeeks&&(t+='');e";t+="",this.picker.find(".datepicker-days thead").append(t)}},fillMonths:function(){for(var e=this._utc_to_local(this.viewDate),t="",n=0;n<12;n++)t+=''+A[this.o.language].monthsShort[n]+"";this.picker.find(".datepicker-months td").html(t)},setRange:function(e){e&&e.length?this.range=E.map(e,function(e){return e.valueOf()}):delete this.range,this.fill()},getClassNames:function(e){var t=[],n=this.viewDate.getUTCFullYear(),i=this.viewDate.getUTCMonth(),r=O();return e.getUTCFullYear()n||e.getUTCFullYear()===n&&e.getUTCMonth()>i)&&t.push("new"),this.focusDate&&e.valueOf()===this.focusDate.valueOf()&&t.push("focused"),this.o.todayHighlight&&a(e,r)&&t.push("today"),-1!==this.dates.contains(e)&&t.push("active"),this.dateWithinRange(e)||t.push("disabled"),this.dateIsDisabled(e)&&t.push("disabled","disabled-date"),-1!==E.inArray(e.getUTCDay(),this.o.daysOfWeekHighlighted)&&t.push("highlighted"),this.range&&(e>this.range[0]&&e"+v+"";h.find(".datepicker-switch").text(f+"-"+p),h.find("td").html(c)},fill:function(){var e,t,n=new Date(this.viewDate),r=n.getUTCFullYear(),i=n.getUTCMonth(),a=this.o.startDate!==-1/0?this.o.startDate.getUTCFullYear():-1/0,o=this.o.startDate!==-1/0?this.o.startDate.getUTCMonth():-1/0,s=this.o.endDate!==1/0?this.o.endDate.getUTCFullYear():1/0,l=this.o.endDate!==1/0?this.o.endDate.getUTCMonth():1/0,u=A[this.o.language].today||A.en.today||"",c=A[this.o.language].clear||A.en.clear||"",d=A[this.o.language].titleFormat||A.en.titleFormat,h=O(),f=(!0===this.o.todayBtn||"linked"===this.o.todayBtn)&&h>=this.o.startDate&&h<=this.o.endDate&&!this.weekOfDateIsDisabled(h);if(!isNaN(r)&&!isNaN(i)){this.picker.find(".datepicker-days .datepicker-switch").text(j.formatDate(n,d,this.o.language)),this.picker.find("tfoot .today").text(u).css("display",f?"table-cell":"none"),this.picker.find("tfoot .clear").text(c).css("display",!0===this.o.clearBtn?"table-cell":"none"),this.picker.find("thead .datepicker-title").text(this.o.title).css("display","string"==typeof this.o.title&&""!==this.o.title?"table-cell":"none"),this.updateNavArrows(),this.fillMonths();var p=N(r,i,0),m=p.getUTCDate();p.setUTCDate(m-(p.getUTCDay()-this.o.weekStart+7)%7);var g=new Date(p);p.getUTCFullYear()<100&&g.setUTCFullYear(p.getUTCFullYear()),g.setUTCDate(g.getUTCDate()+42),g=g.valueOf();for(var v,y,b=[];p.valueOf()"),this.o.calendarWeeks)){var _=new Date(+p+(this.o.weekStart-v-7)%7*864e5),w=new Date(Number(_)+(11-_.getUTCDay())%7*864e5),x=new Date(Number(x=N(w.getUTCFullYear(),0,1))+(11-x.getUTCDay())%7*864e5),D=(w-x)/864e5/7+1;b.push('")}(y=this.getClassNames(p)).push("day");var k=p.getUTCDate();this.o.beforeShowDay!==E.noop&&((t=this.o.beforeShowDay(this._utc_to_local(p)))===M?t={}:"boolean"==typeof t?t={enabled:t}:"string"==typeof t&&(t={classes:t}),!1===t.enabled&&y.push("disabled"),t.classes&&(y=y.concat(t.classes.split(/\s+/))),t.tooltip&&(e=t.tooltip),t.content&&(k=t.content)),y=E.isFunction(E.uniqueSort)?E.uniqueSort(y):E.unique(y),b.push('"),e=null,v===this.o.weekEnd&&b.push(""),p.setUTCDate(p.getUTCDate()+1)}this.picker.find(".datepicker-days tbody").html(b.join(""));var C=A[this.o.language].monthsTitle||A.en.monthsTitle||"Months",T=this.picker.find(".datepicker-months").find(".datepicker-switch").text(this.o.maxViewMode<2?C:r).end().find("tbody span").removeClass("active");if(E.each(this.dates,function(e,t){t.getUTCFullYear()===r&&T.eq(t.getUTCMonth()).addClass("active")}),(rs;break;case 0:e=i<=a&&r<=o,t=s<=i&&l<=r}this.picker.find(".prev").toggleClass("disabled",e),this.picker.find(".next").toggleClass("disabled",t)}},click:function(e){var t,n,i;e.preventDefault(),e.stopPropagation(),(t=E(e.target)).hasClass("datepicker-switch")&&this.viewMode!==this.o.maxViewMode&&this.setViewMode(this.viewMode+1),t.hasClass("today")&&!t.hasClass("day")&&(this.setViewMode(0),this._setDate(O(),"linked"===this.o.todayBtn?null:"view")),t.hasClass("clear")&&this.clearDates(),t.hasClass("disabled")||(t.hasClass("month")||t.hasClass("year")||t.hasClass("decade")||t.hasClass("century"))&&(this.viewDate.setUTCDate(1),1===this.viewMode?(i=t.parent().find("span").index(t),n=this.viewDate.getUTCFullYear(),this.viewDate.setUTCMonth(i)):(i=0,n=Number(t.text()),this.viewDate.setUTCFullYear(n)),this._trigger(j.viewModes[this.viewMode-1].e,this.viewDate),this.viewMode===this.o.minViewMode?this._setDate(N(n,i,1)):(this.setViewMode(this.viewMode-1),this.fill())),this.picker.is(":visible")&&this._focused_from&&this._focused_from.focus(),delete this._focused_from},dayCellClick:function(e){var t=E(e.currentTarget).data("date"),n=new Date(t);this.o.updateViewDate&&(n.getUTCFullYear()!==this.viewDate.getUTCFullYear()&&this._trigger("changeYear",this.viewDate),n.getUTCMonth()!==this.viewDate.getUTCMonth()&&this._trigger("changeMonth",this.viewDate)),this._setDate(n)},navArrowsClick:function(e){var t=E(e.currentTarget).hasClass("prev")?-1:1;0!==this.viewMode&&(t*=12*j.viewModes[this.viewMode].navStep),this.viewDate=this.moveMonth(this.viewDate,t),this._trigger(j.viewModes[this.viewMode].e,this.viewDate),this.fill()},_toggle_multidate:function(e){var t=this.dates.contains(e);if(e||this.dates.clear(),-1!==t?(!0===this.o.multidate||1this.o.multidate;)this.dates.remove(0)},_setDate:function(e,t){t&&"date"!==t||this._toggle_multidate(e&&new Date(e)),(!t&&this.o.updateViewDate||"view"===t)&&(this.viewDate=e&&new Date(e)),this.fill(),this.setValue(),t&&"view"===t||this._trigger("changeDate"),this.inputField.trigger("change"),!this.o.autoclose||t&&"date"!==t||this.hide()},moveDay:function(e,t){var n=new Date(e);return n.setUTCDate(e.getUTCDate()+t),n},moveWeek:function(e,t){return this.moveDay(e,7*t)},moveMonth:function(e,t){if(!function(e){return e&&!isNaN(e.getTime())}(e))return this.o.defaultViewDate;if(!t)return e;var n,i,r=new Date(e.valueOf()),a=r.getUTCDate(),o=r.getUTCMonth(),s=Math.abs(t);if(t=0=this.o.startDate&&e<=this.o.endDate},keydown:function(e){if(this.picker.is(":visible")){var t,n,i=!1,r=this.focusDate||this.viewDate;switch(e.keyCode){case 27:this.focusDate?(this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill()):this.hide(),e.preventDefault(),e.stopPropagation();break;case 37:case 38:case 39:case 40:if(!this.o.keyboardNavigation||7===this.o.daysOfWeekDisabled.length)break;t=37===e.keyCode||38===e.keyCode?-1:1,0===this.viewMode?e.ctrlKey?(n=this.moveAvailableDate(r,t,"moveYear"))&&this._trigger("changeYear",this.viewDate):e.shiftKey?(n=this.moveAvailableDate(r,t,"moveMonth"))&&this._trigger("changeMonth",this.viewDate):37===e.keyCode||39===e.keyCode?n=this.moveAvailableDate(r,t,"moveDay"):this.weekOfDateIsDisabled(r)||(n=this.moveAvailableDate(r,t,"moveWeek")):1===this.viewMode?(38!==e.keyCode&&40!==e.keyCode||(t*=4),n=this.moveAvailableDate(r,t,"moveMonth")):2===this.viewMode&&(38!==e.keyCode&&40!==e.keyCode||(t*=4),n=this.moveAvailableDate(r,t,"moveYear")),n&&(this.focusDate=this.viewDate=n,this.setValue(),this.fill(),e.preventDefault());break;case 13:if(!this.o.forceParse)break;r=this.focusDate||this.dates.get(-1)||this.viewDate,this.o.keyboardNavigation&&(this._toggle_multidate(r),i=!0),this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.setValue(),this.fill(),this.picker.is(":visible")&&(e.preventDefault(),e.stopPropagation(),this.o.autoclose&&this.hide());break;case 9:this.focusDate=null,this.viewDate=this.dates.get(-1)||this.viewDate,this.fill(),this.hide()}i&&(this.dates.length?this._trigger("changeDate"):this._trigger("clearDate"),this.inputField.trigger("change"))}else 40!==e.keyCode&&27!==e.keyCode||(this.show(),e.stopPropagation())},setViewMode:function(e){this.viewMode=e,this.picker.children("div").hide().filter(".datepicker-"+j.viewModes[this.viewMode].clsName).show(),this.updateNavArrows(),this._trigger("changeViewMode",new Date(this.viewDate))}};function u(e,t){E.data(e,"datepicker",this),this.element=E(e),this.inputs=E.map(t.inputs,function(e){return e.jquery?e[0]:e}),delete t.inputs,this.keepEmptyValues=t.keepEmptyValues,delete t.keepEmptyValues,r.call(E(this.inputs),t).on("changeDate",E.proxy(this.dateUpdated,this)),this.pickers=E.map(this.inputs,function(e){return E.data(e,"datepicker")}),this.updateDates()}u.prototype={updateDates:function(){this.dates=E.map(this.pickers,function(e){return e.getUTCDate()}),this.updateRanges()},updateRanges:function(){var n=E.map(this.dates,function(e){return e.valueOf()});E.each(this.pickers,function(e,t){t.setRange(n)})},clearDates:function(){E.each(this.pickers,function(e,t){t.clearDates()})},dateUpdated:function(e){if(!this.updating){this.updating=!0;var n=E.data(e.target,"datepicker");if(n!==M){var i=n.getUTCDate(),r=this.keepEmptyValues,t=E.inArray(e.target,this.inputs),a=t-1,o=t+1,s=this.inputs.length;if(-1!==t){if(E.each(this.pickers,function(e,t){t.getUTCDate()||t!==n&&r||t.setUTCDate(i)}),ithis.dates[o])for(;othis.dates[o];)this.pickers[o++].setUTCDate(i);this.updateDates(),delete this.updating}}}},destroy:function(){E.map(this.pickers,function(e){e.destroy()}),E(this.inputs).off("changeDate",this.dateUpdated),delete this.element.data().datepicker},remove:e("destroy","Method `remove` is deprecated and will be removed in version 2.0. Use `destroy` instead")};var i=E.fn.datepicker,r=function(o){var s,l=Array.apply(null,arguments);if(l.shift(),this.each(function(){var e=E(this),t=e.data("datepicker"),n="object"==typeof o&&o;if(!t){var i=function(e,t){function n(e,t){return t.toLowerCase()}var i=E(e).data(),r={},a=new RegExp("^"+t.toLowerCase()+"([A-Z])");for(var o in t=new RegExp("^"+t.toLowerCase()),i)t.test(o)&&(r[o.replace(a,n)]=i[o]);return r}(this,"date"),r=function(e){var n={};if(A[e]||(e=e.split("-")[0],A[e])){var i=A[e];return E.each(d,function(e,t){t in i&&(n[t]=i[t])}),n}}(E.extend({},c,i,n).language),a=E.extend({},c,r,i,n);t=e.hasClass("input-daterange")||a.inputs?(E.extend(a,{inputs:a.inputs||e.find("input").toArray()}),new u(this,a)):new w(this,a),e.data("datepicker",t)}"string"==typeof o&&"function"==typeof t[o]&&(s=t[o].apply(t,l))}),s===M||s instanceof w||s instanceof u)return this;if(1(new Date).getFullYear()+t&&(e-=100),e}(t,i):t)},m:function(e,t){if(isNaN(e))return e;for(t-=1;t<0;)t+=12;for(t%=12,e.setUTCMonth(t);e.getUTCMonth()!==t;)e.setUTCDate(e.getUTCDate()-1);return e},d:function(e,t){return e.setUTCDate(t)}};g.yy=g.yyyy,g.M=g.MM=g.mm=g.m,g.dd=g.d,e=O();var v=t.parts.slice();if(a.length!==v.length&&(v=E(v).filter(function(e,t){return-1!==E.inArray(t,m)}).toArray()),a.length===v.length){var y,b,_;for(l=0,y=v.length;l",contTemplate:'',footTemplate:''};j.template='
    ").addClass("cw").text("#"));t.isBefore(this._viewDate.clone().endOf("w"));)e.append(S("").addClass("dow").text(t.format("dd"))),t.add(1,"d");this.widget.find(".datepicker-days thead").append(e)},E.prototype._fillMonths=function(){for(var e=[],t=this._viewDate.clone().startOf("y").startOf("d");t.isSame(this._viewDate,"y");)e.push(S("").attr("data-action","selectMonth").addClass("month").text(t.format("MMM"))),t.add(1,"M");this.widget.find(".datepicker-months td").empty().append(e)},E.prototype._updateMonths=function(){var e=this.widget.find(".datepicker-months"),t=e.find("th"),n=e.find("tbody").find("span"),i=this;t.eq(0).find("span").attr("title",this._options.tooltips.prevYear),t.eq(1).attr("title",this._options.tooltips.selectYear),t.eq(2).find("span").attr("title",this._options.tooltips.nextYear),e.find(".disabled").removeClass("disabled"),this._isValid(this._viewDate.clone().subtract(1,"y"),"y")||t.eq(0).addClass("disabled"),t.eq(1).text(this._viewDate.year()),this._isValid(this._viewDate.clone().add(1,"y"),"y")||t.eq(2).addClass("disabled"),n.removeClass("active"),this._getLastPickedDate().isSame(this._viewDate,"y")&&!this.unset&&n.eq(this._getLastPickedDate().month()).addClass("active"),n.each(function(e){i._isValid(i._viewDate.clone().month(e),"M")||S(this).addClass("disabled")})},E.prototype._getStartEndYear=function(e,t){var n=e/10,i=Math.floor(t/e)*e;return[i,i+9*n,Math.floor(t/n)*n]},E.prototype._updateYears=function(){var e=this.widget.find(".datepicker-years"),t=e.find("th"),n=this._getStartEndYear(10,this._viewDate.year()),i=this._viewDate.clone().year(n[0]),r=this._viewDate.clone().year(n[1]),a="";for(t.eq(0).find("span").attr("title",this._options.tooltips.prevDecade),t.eq(1).attr("title",this._options.tooltips.selectDecade),t.eq(2).find("span").attr("title",this._options.tooltips.nextDecade),e.find(".disabled").removeClass("disabled"),this._options.minDate&&this._options.minDate.isAfter(i,"y")&&t.eq(0).addClass("disabled"),t.eq(1).text(i.year()+"-"+r.year()),this._options.maxDate&&this._options.maxDate.isBefore(r,"y")&&t.eq(2).addClass("disabled"),a+=''+(i.year()-1)+"";!i.isAfter(r,"y");)a+=''+i.year()+"",i.add(1,"y");a+=''+i.year()+"",e.find("td").html(a)},E.prototype._updateDecades=function(){var e=this.widget.find(".datepicker-decades"),t=e.find("th"),n=this._getStartEndYear(100,this._viewDate.year()),i=this._viewDate.clone().year(n[0]),r=this._viewDate.clone().year(n[1]),a=!1,o=!1,s=void 0,l="";for(t.eq(0).find("span").attr("title",this._options.tooltips.prevCentury),t.eq(2).find("span").attr("title",this._options.tooltips.nextCentury),e.find(".disabled").removeClass("disabled"),(0===i.year()||this._options.minDate&&this._options.minDate.isAfter(i,"y"))&&t.eq(0).addClass("disabled"),t.eq(1).text(i.year()+"-"+r.year()),this._options.maxDate&&this._options.maxDate.isBefore(r,"y")&&t.eq(2).addClass("disabled"),i.year()-10<0?l+=" ":l+=''+(i.year()-10)+"";!i.isAfter(r,"y");)s=i.year()+11,a=this._options.minDate&&this._options.minDate.isAfter(i,"y")&&this._options.minDate.year()<=s,o=this._options.maxDate&&this._options.maxDate.isAfter(i,"y")&&this._options.maxDate.year()<=s,l+=''+i.year()+"",i.add(10,"y");l+=''+i.year()+"",e.find("td").html(l)},E.prototype._fillDate=function(){var e=this.widget.find(".datepicker-days"),t=e.find("th"),n=[],i=void 0,r=void 0,a=void 0,o=void 0;if(this._hasDate()){for(t.eq(0).find("span").attr("title",this._options.tooltips.prevMonth),t.eq(1).attr("title",this._options.tooltips.selectMonth),t.eq(2).find("span").attr("title",this._options.tooltips.nextMonth),e.find(".disabled").removeClass("disabled"),t.eq(1).text(this._viewDate.format(this._options.dayViewHeaderFormat)),this._isValid(this._viewDate.clone().subtract(1,"M"),"M")||t.eq(0).addClass("disabled"),this._isValid(this._viewDate.clone().add(1,"M"),"M")||t.eq(2).addClass("disabled"),i=this._viewDate.clone().startOf("M").startOf("w").startOf("d"),o=0;o<42;o++){if(0===i.weekday()&&(r=S("
    '+i.week()+"'+i.date()+"
    '+t.format(this.use24Hours?"HH":"hh")+"
    '+t.format("mm")+"
    '+t.format("ss")+"
     
    '+D+"'+k+"
    '+c.templates.leftArrow+''+c.templates.rightArrow+"
    '+j.headTemplate+""+j.footTemplate+'
    '+j.headTemplate+j.contTemplate+j.footTemplate+'
    '+j.headTemplate+j.contTemplate+j.footTemplate+'
    '+j.headTemplate+j.contTemplate+j.footTemplate+'
    '+j.headTemplate+j.contTemplate+j.footTemplate+"
    ",E.fn.datepicker.DPGlobal=j,E.fn.datepicker.noConflict=function(){return E.fn.datepicker=i,this},E.fn.datepicker.version="1.9.0",E.fn.datepicker.deprecated=function(e){var t=window.console;t&&t.warn&&t.warn("DEPRECATED: "+e)},E(document).on("focus.datepicker.data-api click.datepicker.data-api",'[data-provide="datepicker"]',function(e){var t=E(this);t.data("datepicker")||(e.preventDefault(),r.call(t,"show"))}),E(function(){r.call(E('[data-provide="datepicker-inline"]'))})}),jQuery.fn.datepicker.dates.fa={days:["یک‌شنبه","دوشنبه","سه‌شنبه","چهارشنبه","پنج‌شنبه","جمعه","شنبه","یک‌شنبه"],daysShort:["یک","دو","سه","چهار","پنج","جمعه","شنبه","یک"],daysMin:["ی","د","س","چ","پ","ج","ش","ی"],months:["ژانویه","فوریه","مارس","آوریل","مه","ژوئن","ژوئیه","اوت","سپتامبر","اکتبر","نوامبر","دسامبر"],monthsShort:["ژان","فور","مار","آور","مه","ژون","ژوی","اوت","سپت","اکت","نوا","دسا"],today:"امروز",clear:"پاک کن",weekStart:1,format:"yyyy/mm/dd"},jQuery.fn.datepicker.dates.fr={days:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],daysShort:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],daysMin:["d","l","ma","me","j","v","s"],months:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],monthsShort:["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],today:"Aujourd'hui",monthsTitle:"Mois",clear:"Effacer",weekStart:1,format:"dd/mm/yyyy"},jQuery.fn.datepicker.dates.ru={days:["Воскресенье","Понедельник","Вторник","Среда","Четверг","Пятница","Суббота"],daysShort:["Вск","Пнд","Втр","Срд","Чтв","Птн","Суб"],daysMin:["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],months:["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь"],monthsShort:["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек"],today:"Сегодня",clear:"Очистить",format:"dd.mm.yyyy",weekStart:1,monthsTitle:"Месяцы"},jQuery.fn.datepicker.dates.sv={days:["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],daysShort:["sön","mån","tis","ons","tor","fre","lör"],daysMin:["sö","må","ti","on","to","fr","lö"],months:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],monthsShort:["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec"],today:"Idag",format:"yyyy-mm-dd",weekStart:1,clear:"Rensa"},jQuery.fn.datepicker.dates["zh-CN"]={days:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],daysShort:["周日","周一","周二","周三","周四","周五","周六"],daysMin:["日","一","二","三","四","五","六"],months:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthsShort:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],today:"今天",monthsTitle:"选择月份",clear:"清除",format:"yyyy-mm-dd",titleFormat:"yyyy年mm月",weekStart:1},jQuery.fn.datepicker.dates.es={days:["Domingo","Lunes","Martes","Miércoles","Jueves","Viernes","Sábado"],daysShort:["Dom","Lun","Mar","Mié","Jue","Vie","Sáb"],daysMin:["Do","Lu","Ma","Mi","Ju","Vi","Sa"],months:["Enero","Febrero","Marzo","Abril","Mayo","Junio","Julio","Agosto","Septiembre","Octubre","Noviembre","Diciembre"],monthsShort:["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],today:"Hoy",monthsTitle:"Meses",clear:"Borrar",weekStart:1,format:"dd/mm/yyyy"},jQuery.fn.datepicker.dates.de={days:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],daysShort:["Son","Mon","Die","Mit","Don","Fre","Sam"],daysMin:["So","Mo","Di","Mi","Do","Fr","Sa"],months:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],monthsShort:["Jan","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez"],today:"Heute",monthsTitle:"Monate",clear:"Löschen",weekStart:1,format:"dd.mm.yyyy"},jQuery.fn.datepicker.dates.da={days:["Søndag","Mandag","Tirsdag","Onsdag","Torsdag","Fredag","Lørdag"],daysShort:["Søn","Man","Tir","Ons","Tor","Fre","Lør"],daysMin:["Sø","Ma","Ti","On","To","Fr","Lø"],months:["Januar","Februar","Marts","April","Maj","Juni","Juli","August","September","Oktober","November","December"],monthsShort:["Jan","Feb","Mar","Apr","Maj","Jun","Jul","Aug","Sep","Okt","Nov","Dec"],today:"I Dag",weekStart:1,clear:"Nulstil",format:"dd/mm/yyyy",monthsTitle:"Måneder"},jQuery.fn.datepicker.dates.pt={days:["Domingo","Segunda","Terça","Quarta","Quinta","Sexta","Sábado"],daysShort:["Dom","Seg","Ter","Qua","Qui","Sex","Sáb"],daysMin:["Do","Se","Te","Qu","Qu","Se","Sa"],months:["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro"],monthsShort:["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez"],today:"Hoje",monthsTitle:"Meses",clear:"Limpar",format:"dd/mm/yyyy"};var Menu={init:function(){$(function(){Menu.itemClick()})},itemClick:function(){$(".menu-button").click(function(e){e.preventDefault(),$(".menu-item").is(":visible")?$(".menu-item").css("display",""):$(".menu-item").show()})}};Menu.init(),ko.bindingHandlers.modal={init:function(e,t){$(e).modal({show:!1});var n=t();ko.isObservable(n)&&$(e).on("hidden.bs.modal",function(){n(!1)})},update:function(e,t){var n=t();ko.utils.unwrapObservable(n)?$(e).modal("show"):$(e).modal("hide")}},ko.components.register("picker",{viewModel:function(n){var i=this;this.textTerm=ko.observable("").extend({rateLimit:500}),this.minSearchText=ko.observable(n.minSearchText||2),this.multipleSelect=ko.observable(n.multipleSelect||!1),this.searchInputPlaceholder=ko.observable(n.searchInputPlaceholder||"Enter "+this.minSearchText()+" or more characters"),this.selectedItemsTitle=ko.observable(n.selectedItemsTitle||"Selected: "),this.searchResultTitle=ko.observable(n.searchResultTitle||"Search result: "),this.suggestedItemsTitle=ko.observable(n.suggestedItemsTitle||"Suggested items: "),this.noItemSelectedTitle=ko.observable(n.noItemSelectedTitle||"No item/s selected"),this.showAllItemsTitle=ko.observable(n.showAllItemsTitle||"more"),this.allowSuggestedItems=ko.observable(n.allowSuggestedItems&&n.url||!1),this.topSuggestedItems=ko.observable(n.topSuggestedItems||5),this.allowItemAlreadySelectedNotification=ko.observable(n.allowItemAlreadySelectedNotification||!0),this.itemAlreadySelectedTitle=ko.observable(n.itemAlreadySelectedTitle||"item already selected"),this.searchResult=ko.observableArray([]),this.selectedResult=ko.observableArray(n.selectedItems||[]),this.suggestedResult=ko.observableArray([]),this.loading=ko.observable(!1),this.isVisibleEditDialog=ko.observable(!1),this.editedItem=ko.observable(""),this.editedItemOriginal=ko.observable("");var e=ko.toJSON(this.selectedResult);!0===this.multipleSelect()?0===this.selectedResult().length?$("#"+n.hiddenId).val(""):$("#"+n.hiddenId).val(e):0===this.selectedResult().length?$("#"+n.hiddenId).val(""):$("#"+n.hiddenId).val(this.selectedResult()[0]),this.textTerm.subscribe(function(t){""===t.trim()&&i.searchResult([]),""!==t.trim()&&t.trim().length>=i.minSearchText()&&(n.url?(i.loading(!0),$.get(n.url+"="+t,function(e){-1===e.$values.indexOf(t)&&e.$values.push(t),i.searchResult(e.$values),i.loading(!1)})):i.searchResult([t]))}),this.notify=function(e){toastr.options.closeButton=!0,toastr.options.preventDuplicates=!0,toastr.info(e+" "+this.itemAlreadySelectedTitle())},this.notifyError=function(e){toastr.options.closeButton=!0,toastr.options.preventDuplicates=!0,toastr.error(e)},this.add=function(e){e=e.replace(/'/g,"").replace(/"/g,""),-1

    Loading..

    \x3c!-- ko foreach: suggestedResult --\x3e\x3c!-- /ko --\x3e
    '}),ko.applyBindings(),Holder.addTheme("thumb",{bg:"#55595c",fg:"#eceeef",text:"Thumbnail"});var FormMvc={allowValidateHiddenField:function(e){e.data("validator").settings.ignore=""},disableEnter:function(e){e.on("keyup keypress",function(e){if(13===(e.keyCode||e.which))return e.preventDefault(),!1})}};$(function(){$(".single-select").removeAttr("multiple"),$('[data-toggle="tooltip"]').tooltip()});var JSONTree=function(){var t={"&":"&","<":"<",">":">",'"':""","'":"'","/":"/"},e=0,n=0;this.create=function(e,t){return n+=1,p(s(e,0,!1),{class:"jstValue"})};function a(e){return e.replace(/[&<>'"]/g,function(e){return t[e]})}function o(){return n+"_"+e++}var s=function(e,t,n){if(null===e)return d(n?t:0);switch(typeof e){case"boolean":return c(e,n?t:0);case"number":return u(e,n?t:0);case"string":return l(e,n?t:0);default:return e instanceof Array?r(e,t,n):i(e,t,n)}},i=function(t,n,e){var i=o(),r=Object.keys(t).map(function(e){return h(e,t[e],n+1,!0)}).join(f()),a=[g("{",e?n:0,i),p(r,{id:i}),v("}",n)].join("\n");return p(a,{})},r=function(e,t,n){var i=o(),r=e.map(function(e){return s(e,t+1,!0)}).join(f());return[g("[",n?t:0,i),p(r,{id:i}),v("]",t)].join("\n")},l=function(e,t){var n=a(JSON.stringify(e));return p(y(n,t),{class:"jstStr"})},u=function(e,t){return p(y(e,t),{class:"jstNum"})},c=function(e,t){return p(y(e,t),{class:"jstBool"})},d=function(e){return p(y("null",e),{class:"jstNull"})},h=function(e,t,n){var i=y(a(JSON.stringify(e))+": ",n),r=p(s(t,n,!1),{});return p(i+r,{class:"jstProperty"})},f=function(){return p(",\n",{class:"jstComma"})},p=function(e,t){return m("span",t,e)},m=function(e,t,n){return"<"+e+Object.keys(t).map(function(e){return" "+e+'="'+t[e]+'"'}).join("")+">"+n+""},g=function(e,t,n){return p(y(e,t),{class:"jstBracket"})+p("",{class:"jstFold",onclick:"JSONTree.toggle('"+n+"')"})};this.toggle=function(e){var t=document.getElementById(e),n=t.parentNode,i=t.previousElementSibling;""===t.className?(t.className="jstHiddenBlock",n.className="jstFolded",i.className="jstExpand"):(t.className="",n.className="",i.className="jstFold")};var v=function(e,t){return p(y(e,t),{})},y=function(e,t){return Array(2*t+1).join(" ")+e};return this}();$(function(){$(".local-datetime").each(function(){var e=$(this),t=parseInt(e.attr("data-utc"),10)||0;if(t){var n=moment.utc(t).local().format("DD MMM YYYY HH:mm");e.text(n)}}),$('[data-toggle="tooltip"]').tooltip()});var errorLog={eventHandlers:function(){$(".error-log-delete-button").click(function(){return $(".error-log-form").validate(),$(".error-log-form").validate().form()?$("#deleteLogsModal").modal("show"):$(this).submit(),!1}),$(".row-error-detail>td").each(function(){var t,n=$(this).data("error-json");try{t=JSONTree.create(JSON.parse(n))}catch(e){t=JSONTree.create(n)}$(this).html(t)}),$(".btn-error-detail").click(function(e){e.preventDefault();var t=$(this).data("error-id");return $(".row-error-detail[data-error-id="+t+"]").is(":visible")?$(".row-error-detail[data-error-id="+t+"]").addClass("d-none"):$(".row-error-detail[data-error-id="+t+"]").removeClass("d-none"),!1})},init:function(){$(function(){errorLog.eventHandlers()})}};errorLog.init();var auditLog={createJsonTree:function(t){var n;try{n=JSONTree.create(JSON.parse(t))}catch(e){n=JSONTree.create(t)}return n},initJsonTrees:function(){$(".json-tree").each(function(){var e=$(this).data("json-tree"),t=auditLog.createJsonTree(e);$(this).html(t)})},eventHandlers:function(){$(".audit-subject-button").click(function(){var e=$(this).data("subject-identifier"),t=$(this).data("subject-name"),n=$(this).data("subject-type"),i=$(this).data("subject-additional-data");$(".modal-title").html(t+" - "+e+" - ("+n+")"),$(".audit-modal-value").html(auditLog.createJsonTree(i)),$(".audit-modal").modal("show")}),$(".audit-action-button").click(function(){var e=$(this).data("action"),t=$(this).data("action-title");$(".modal-title").html(t),$(".audit-modal-value").html(auditLog.createJsonTree(e)),$(".audit-modal").modal("show")}),$(".audit-log-delete-button").click(function(){return $(".audit-log-form").validate(),$(".audit-log-form").validate().form()?$("#deleteLogsModal").modal("show"):$(this).submit(),!1})},init:function(){$(function(){auditLog.eventHandlers(),auditLog.initJsonTrees()})}};auditLog.init(),$(function(){var e={guid:function(){return"ss-s-s-s-sss".replace(/s/g,e.s4)},s4:function(){return Math.floor(65536*(1+Math.random())).toString(16).substring(1)},eventHandlers:function(){$("#generate-guid-button").click(function(){$("#secret-input").val(e.guid())}),$(".secret-value-button").click(function(){var e=$(this).data("secret-value");$(".modal-secret-value").html(e),$(".secret-modal").modal("show")})},init:function(){e.eventHandlers()}};e.init()}),$(function(){var t={getCookie:function(e){for(var t=e+"=",n=document.cookie.split(";"),i=0;i SystemClusters => Constants.SystemApps.Select(x => new ClusterConfig() { ClusterId = x.ClusterId, + LoadBalancingPolicy = LoadBalancingPolicies.PowerOfTwoChoices, Destinations = new Dictionary(StringComparer.OrdinalIgnoreCase) { - { "destination1", new DestinationConfig() { Address = string.Concat("http://", x.AppId) } }, - { "destination2", new DestinationConfig() { Address = string.Concat("http://localhost:", x.ResourceHttpPort) } }, + { "destination1", new DestinationConfig() { Address = string.Concat("https://localhost:", x.AppHttpsPort) } }, + { "destination2", new DestinationConfig() { Address = string.Concat("http://", x.AppId) } }, + { "destination3", new DestinationConfig() { Address = string.Concat("http://localhost:", x.ResourceHttpPort) } }, } }); diff --git a/src/Services/Ordering/Presentation/Ordering.Api/Properties/launchSettings.json b/src/Services/Ordering/Presentation/Ordering.Api/Properties/launchSettings.json index 07e7afb..bc0a7ac 100644 --- a/src/Services/Ordering/Presentation/Ordering.Api/Properties/launchSettings.json +++ b/src/Services/Ordering/Presentation/Ordering.Api/Properties/launchSettings.json @@ -7,7 +7,7 @@ "ASPNETCORE_ENVIRONMENT": "Development" }, "dotnetRunMessages": true, - "applicationUrl": "https://localhost:7046" + "applicationUrl": "https://localhost:5510" } } } \ No newline at end of file -- Gitee